Jordan Petridis
35009e2574
Added an auto-updater that runs each hour.
2017-12-17 13:44:00 +02:00
Jordan Petridis
75fe0f8ff5
Use Default trait for creating Widget's that don't need arguments.
2017-12-17 13:08:51 +02:00
Jordan Petridis
440badf1eb
ShowWidget: Strip html tags from the description.
2017-12-16 20:45:15 +02:00
Jordan Petridis
f7af05a650
EpisodeWidget: Dim/Grey out widget if episode is played.
2017-12-16 20:30:25 +02:00
Jordan Petridis
aca35c0513
ShowWidget: Improve? description handling.
2017-12-16 19:20:40 +02:00
Jordan Petridis
f8ae2dcffe
Update rustfmt.toml and remove rustfmt warnings.
2017-12-16 18:22:35 +02:00
Jordan Petridis
0653460fb2
EpisodeWidget: prevent title label overflow.
...
Set label's maximu character width to prevent it and elipsize instead.
2017-12-16 14:58:16 +02:00
Jordan Petridis
dbe08f7deb
EpisodeListBox: Improve the separator workaround.
2017-12-16 14:17:27 +02:00
Jordan Petridis
5989f4f541
ShowWidget: Set widget width to 600.
2017-12-15 21:15:20 +02:00
Jordan Petridis
4375c7f4ce
EpisodeWidget: Added a separator in each widget.
...
This is a work around since list_box_set_header_func is not yet
available in the gtk-rs bindings.
2017-12-15 21:06:57 +02:00
Jordan Petridis
3c90e98d43
ShowWidget: Make settings button a GtkMenuButton.
2017-12-15 21:06:43 +02:00
Jordan Petridis
b1af25e4c0
ShowWidget: Wire the website button to open podcast homepage.
2017-12-15 21:06:16 +02:00
Jordan Petridis
6614818418
Use Gtk::Frame to limit ShowWidget's size.
2017-12-15 19:55:13 +02:00
Jordan Petridis
c74153f56a
Initial implementation of the new ShowWidget.
2017-12-15 18:42:49 +02:00
Jordan Petridis
4b0a6ea0f7
Add Show title in the Headerbar when switching to ShowWidget.
2017-12-15 13:45:08 +02:00
Jordan Petridis
6284c8828b
Merge branch 'episode_widget_redisgn' into 'master'
...
Episode widget redisgn
See merge request alatiera/Hammond!5
2017-12-15 11:30:15 +00:00
Jordan Petridis
0c1e759a45
Dim out secondary label of EpisodeWidget.
2017-12-15 12:27:30 +02:00
Jordan Petridis
0ac78fcff1
Added date label into EpisodeWidget.
2017-12-14 18:03:37 +02:00
Jordan Petridis
e3b540170a
Add file size indication based on rss item length.
2017-12-14 15:32:21 +02:00
Jordan Petridis
a7208b0c61
Set EpisodeWidget button valignment to center instead of fill.
2017-12-14 14:46:41 +02:00
Jordan Petridis
9d07ba24b8
HeaderBar Refactor.
...
Removed the Headerbar stack.
Removed the ShowTitle.
Fixed StackSwitcher centering.
Set the Headerbar button valignment to center instead of fill.
2017-12-14 14:27:51 +02:00
Jordan Petridis
afdb79b712
Set the progress bar into activity mode.
2017-12-14 13:38:18 +02:00
Jordan Petridis
8fe6b526a5
Add a new Diesel Model for the EpisodeWidget.
2017-12-14 12:01:35 +02:00
Jordan Petridis
ebbebf7735
Initial implementation of the new EpisodeWidget.
2017-12-14 10:57:29 +02:00
Jordan Petridis
fe136c8dbe
use user-trash-symbolic instead of edit-delete-symbolic icon.
2017-12-14 08:42:52 +02:00
Jordan Petridis
f0de6bfb1b
Use symbolic icons instead.
2017-12-13 17:58:55 +02:00
Jordan Petridis
d74aa9c625
Wire Headerbar back button and change initialiazation order.
2017-12-13 16:36:40 +02:00
Jordan Petridis
0bb0035f3c
Rework of the Headerbar.
...
Added a stack to switch between a normal and a BackButton view.
Also added a centered stack switcher and removed the Home button.
Backbutton is not wired yet.
2017-12-13 13:53:15 +02:00
Jordan Petridis
0a52f87f3a
Rename glade files.
2017-12-13 12:21:34 +02:00
Jordan Petridis
82a59d80dd
Update README.md and CONTRIBUTING.md
2017-12-13 11:53:56 +02:00
Jordan Petridis
5defb5867a
Move and rename stuff.
2017-12-13 11:35:17 +02:00
Jordan Petridis
01310ee7fa
Working non-state machine stack implementation.
...
Removed the stack state-machines. It was confusing trying to both
implement statemachines and re-design the stack architecture at the same time.
2017-12-12 16:01:19 +02:00
Jordan Petridis
211b36dfa3
Fix showmachine updating.
2017-12-11 16:14:43 +02:00
Jordan Petridis
ddb195db3c
Wired up refresh button.
2017-12-11 13:51:16 +02:00
Jordan Petridis
fa33138d66
Start switching to the new stack architecture.
2017-12-11 11:53:29 +02:00
Jordan Petridis
ad7f5013f3
Extend ShowsMachine functionality.
2017-12-11 11:15:54 +02:00
Jordan Petridis
e9b6e26f08
yet another attempt at implementing a stack state machine.
2017-12-10 23:23:09 +02:00
Jordan Petridis
2461dca94d
Remove home button.
2017-12-10 19:15:32 +02:00
Jordan Petridis
e127941d8a
Initial stackswitcher addition into the headerbar.
2017-12-10 09:53:05 +02:00
Jordan Petridis
bc57c33491
Change episode table schema.
2017-12-09 17:38:46 +02:00
Jordan Petridis
b528c48e3b
Run rustfmt.
2017-12-09 05:57:16 +02:00
Jordan Petridis
5b19274e6a
Ignore the stack state machine until TryInto trait is stabilized.
2017-12-08 10:00:21 +02:00
Jordan Petridis
48e61c6377
Added small a utility that eats extra whitespace.
2017-12-07 18:31:45 +02:00
Jordan Petridis
1266c6e971
Switch to a Generic Struct instead of an Enum.
2017-12-07 15:24:15 +02:00
Jordan Petridis
41b0a36b81
Implement Into ContentState types.
2017-12-07 11:14:12 +02:00
Jordan Petridis
6801d0b1d1
Move replace_*view functions inot Content methods.
2017-12-07 10:51:16 +02:00
Jordan Petridis
973212254c
My code is horrible, don't look at it.
2017-12-07 09:43:47 +02:00
Jordan Petridis
2b2f44b10e
Attempt n42 of implementing a StateMachine.
2017-12-07 08:50:20 +02:00
Jordan Petridis
9431fb827f
Bug fix.
2017-12-07 08:42:36 +02:00
Jordan Petridis
d7af108833
WIP markup to html parser func.
2017-12-07 06:41:10 +02:00
Jordan Petridis
c07d240532
Sanitize html during feed parsing.
2017-12-07 06:38:31 +02:00
Jordan Petridis
276169e43d
Minor cleanup of nested match/if let statements into using and_then().
2017-12-04 14:32:16 +02:00
Jordan Petridis
8bd48a09a6
Groupd stack manipulation functions into content module.
2017-12-02 08:58:28 +02:00
Jordan Petridis
74a1aae168
Upgraded diesel to 0.99 and switched from the git master into crated.io.
...
Also did a cargo upgrade of all the dependancies.
Notable upgrades are r2d2, lazystatic 1.0, loggerv 0.6 and rss 1.2
2017-12-02 01:39:28 +02:00
Jordan Petridis
8d63db047a
Temporary removed unused Content.fields.
2017-12-01 07:30:28 +02:00
Jordan Petridis
0359e9dd35
Convert EpisodeWidget into a Composed struct.
2017-12-01 07:13:41 +02:00
Jordan Petridis
91ac2c6445
Minor cleanups.
2017-12-01 06:40:32 +02:00
Jordan Petridis
2d4acc3ba3
Tweaked stack transition effects.
2017-12-01 06:21:48 +02:00
Jordan Petridis
fb6fc68d23
Fix empty view.
2017-12-01 06:00:06 +02:00
Jordan Petridis
3fca086d14
Renamed stack children.
2017-12-01 05:32:47 +02:00
Jordan Petridis
dcc541d832
Added a PodcastChild struct and groupd some flowbox_child methods.
2017-12-01 04:22:26 +02:00
Jordan Petridis
300fc3467d
Remove more stuff.
2017-12-01 03:50:23 +02:00
Jordan Petridis
326ee75cd8
Remove old implementation.
2017-12-01 02:57:55 +02:00
Jordan Petridis
b4b2f24c77
Use content struct instead of plain stack.
2017-12-01 01:30:19 +02:00
Jordan Petridis
5414dbdb37
Wire and use the new Header struct instead.
2017-12-01 01:20:49 +02:00
Jordan Petridis
dd0034327b
Add Content Struct.
2017-12-01 01:12:25 +02:00
Jordan Petridis
774e5b38a0
Add EmptyView Struct.
2017-12-01 01:03:10 +02:00
Jordan Petridis
f1f4d10fe3
Add PopulatedView struct.
2017-12-01 01:00:07 +02:00
Jordan Petridis
84c918bbd5
Fix bug where the played button will always be shown by setting default state to not visible.
2017-11-30 21:39:21 +02:00
Jordan Petridis
94879b4256
Move get_pixbuf_from_path into hammond_gtk/src/utils.rs module.
2017-11-30 21:38:21 +02:00
Jordan Petridis
bf240a00f4
Make a PodcastWidget Struct type.
2017-11-30 21:19:03 +02:00
Jordan Petridis
b32e35c574
Rename podcasts_view module.
2017-11-30 21:10:05 +02:00
Jordan Petridis
1fbcfa47ac
Refactor Headerbar into a Wrapped struct type.
2017-11-30 21:02:26 +02:00
Jordan Petridis
13751e3708
Tweak gresource initialization.
2017-11-28 10:27:43 +02:00
Jordan Petridis
c92e40e3cf
Run download cleaner on startup. Closes #3 .
2017-11-28 10:23:19 +02:00
Jordan Petridis
3707b70b41
Document Episode Model.
2017-11-28 08:25:04 +02:00
Jordan Petridis
d81f9c6ad7
Fixed stable unit tests.
2017-11-28 04:42:15 +02:00
Jordan Petridis
9e03aaae27
Upgrade gtk-rs crates.
2017-11-26 21:25:46 +02:00
Jordan Petridis
866904a687
Use generic IntoIterator instead of &[foo] slices.
2017-11-26 07:03:21 +02:00
Jordan Petridis
faab32ba17
Fix podcast flowbox_child title label.
2017-11-25 02:00:37 +02:00
Jordan Petridis
62da8bbb52
Use source_id as the unique identifieble field for the podcast table.
2017-11-25 01:56:10 +02:00
Jordan Petridis
4a195eb1b7
Moved set_played_now into a method of the Episode model.
2017-11-24 19:48:20 +02:00
Jordan Petridis
aa7c493e81
hammond-data/src/feed.rs api changes.
2017-11-23 18:48:41 +02:00
Jordan Petridis
6098f0f54a
Banner fix? Closes #14 .
2017-11-22 10:44:32 +02:00
Jordan Petridis
31328355b1
Methods renaming, Api changes.
2017-11-22 06:25:34 +02:00
Jordan Petridis
9bc6df2cba
Made Disel NewModels private.
2017-11-22 05:50:25 +02:00
Jordan Petridis
7be0b5bbf8
Added a url cleanr. Closes #4 .
2017-11-20 22:06:29 +02:00
Jordan Petridis
0ce4107be4
Revert back to using an Arc<Mutex<Connection>> instead of the pool.
2017-11-20 18:09:53 +02:00
Jordan Petridis
ce29602431
I hate everything.
2017-11-20 16:57:27 +02:00
Jordan Petridis
e07683c046
partially-fixed the tests and benchmarks.
2017-11-20 01:08:34 +02:00
Jordan Petridis
5ad52fa4b2
Refactored to remove from Database refferences.
2017-11-19 23:32:37 +02:00
Jordan Petridis
052988a2b1
Update dependancies.
2017-11-19 18:14:56 +02:00
Jordan Petridis
a6dbf65575
Move stuff from hammond_data/src/lib.rs into utils.
2017-11-18 20:55:19 +02:00
Jordan Petridis
5c84b77434
Converted iter_mut into into_iter wherever possible.
2017-11-18 19:23:25 +02:00
Jordan Petridis
494761beaf
Removed id function from diesel models.
...
It's automaticly declared upon derive identifiable,
And there's no need to overwrite it.
2017-11-18 15:23:40 +02:00
Jordan Petridis
6894f33895
Renamed hammond-data/src/index_feeds.rs module into feed.rs.
2017-11-18 14:32:58 +02:00
Jordan Petridis
450643371c
Renamed index_feeds and fetch_feeds functions.
2017-11-18 14:24:52 +02:00
Jordan Petridis
1ec4370c7b
Moved Database type-alias into hammond-data/src/lib.rs.
2017-11-17 21:37:55 +02:00
Jordan Petridis
8eca46871d
Moved insert_return functions into methods of insertable models.
2017-11-17 18:10:29 +02:00
Jordan Petridis
54a0f17588
Initial draft of hammond-data/src/index_feed.rs API redesign.
2017-11-17 13:26:39 +02:00
Jordan Petridis
3c6176b1c0
Renamed hammond-data/src/dbcheckup.rs into utils.rs
2017-11-16 23:32:40 +02:00
Jordan Petridis
cfb876e006
Split hammond-data/models into sub modules.
2017-11-15 17:42:22 +02:00
Jordan Petridis
8b4701f1a1
Renamed Gresource path in order to be less confusing.
2017-11-15 14:55:26 +02:00
Jordan Petridis
03637903c6
Update dependancies.
2017-11-14 13:06:09 +02:00
Jordan Petridis
e3f0263dc0
Added appdata.xml and moved .desktop into hammond-gtk/resources.
2017-11-13 17:34:16 +02:00
Jordan Petridis
b042205a3b
Flatpak Runtime crash fix.
...
The application was trying to register a name different than the one
declared in the flatpak manifest.
Changin the name to org.gnome.Hammond like on manifest should fix it.
2017-11-13 15:06:56 +02:00
Jordan Petridis
b82e4c8932
Home button tweak.
2017-11-10 16:25:40 +02:00
Jordan Petridis
f2476cde65
Refactored empty view logic.
2017-11-10 16:15:53 +02:00
Jordan Petridis
1fbacad8b9
Updated rayon.
2017-11-10 11:42:11 +02:00
Jordan Petridis
07c1395c29
Cleanup of downloader module.
2017-11-09 17:47:38 +02:00
Jordan Petridis
8c5cdf75a7
Cleaned up a bit the downloader moduel and added some unit tests.
2017-11-08 20:22:07 +02:00
Jordan Petridis
4e6ed416ee
Disabled http refers.
2017-11-07 10:28:04 +02:00
Jordan Petridis
8d17d30c82
Completed #6 , switch to gresource instead of include_str! macro.
2017-11-06 17:17:55 +02:00
Jordan Petridis
944156d6fe
#6 Switched to using the safe api for GResource.
2017-11-06 14:56:59 +02:00
Jordan Petridis
79d9f62da5
Draft of implementation using gresources safe api.
2017-11-06 14:35:50 +02:00
Jordan Petridis
80ae1b0c88
Accidently included .gresource file into the git repo. Added gitignore rule.
2017-11-06 12:27:53 +02:00
Jordan Petridis
60a3b39339
Initial implementation of #6 Gresource support.
2017-11-06 12:19:10 +02:00
Jordan Petridis
36271afcdd
Error types cleanup.
2017-11-05 15:36:54 +02:00
Jordan Petridis
7b5bca2162
Partial cleanup of dbqueries.
2017-11-05 14:56:24 +02:00
Jordan Petridis
27c73e3d30
Flowbox polish.
2017-11-05 11:36:41 +02:00
Jordan Petridis
0e2d8ffd37
Removed the grid from the podcasts_view.
2017-11-05 10:59:56 +02:00
Jordan Petridis
ed0bbfe1ba
Flobox bug fix, connect_child_activated was connected only on the initial flowobx.
2017-11-04 21:40:22 +02:00
Jordan Petridis
e2d1466073
Changed the transition type of the stack.
2017-11-04 18:46:43 +02:00
Jordan Petridis
b0369974da
Restructe of podcast_widget and podcasts_view modules.
2017-11-04 18:40:54 +02:00
Jordan Petridis
a31dc069de
Fixed #1 . Though it's an ugly hack for now.
2017-11-04 17:57:50 +02:00
Jordan Petridis
456134ab41
Hide mark_played bttn after play button is pressed.
2017-11-04 16:36:45 +02:00
Jordan Petridis
ab5802cca7
Implemented updater_on_startup and refresh_feed sleep.
2017-11-04 14:40:36 +02:00
Jordan Petridis
a9dec8dbe8
Refactored refresh_feed.
2017-11-04 13:56:23 +02:00
Jordan Petridis
7a1b272d9e
Removed code duplication and combined refresh_feed and refresh_db.
2017-11-04 13:36:25 +02:00
Jordan Petridis
7e8f39119d
Moved banner.png from assets into hammond-gtk/gtk
2017-11-04 11:28:10 +02:00
Jordan Petridis
72ac709cda
Removed the multiple declarations of the clone macro.
2017-11-03 17:42:48 +02:00
Jordan Petridis
81af6765f1
Minor Podcast widget improvment.
2017-11-03 10:07:30 +02:00
Jordan Petridis
02ae6b4aef
Changed the flowbox cover and banners size to 256x256 px.
2017-11-03 09:28:44 +02:00
Jordan Petridis
79fb8c2290
Minor home button change.
2017-11-02 17:29:53 +02:00
Jordan Petridis
422e3fc638
Crappy and ugly prototype of an episode banner prototype.
2017-11-02 13:25:35 +02:00
Jordan Petridis
300fe86dc5
Refactored create_flowbox_child constructor to use Podcast struct instead of raw strings/pixbuf.
2017-11-02 10:10:02 +02:00
Jordan Petridis
4da1ee8f10
Update TODO.md.
2017-11-02 08:33:02 +02:00
Jordan Petridis
fc761a963d
Replaced description labels with TextViews.
2017-11-01 17:36:47 +02:00
Jordan Petridis
0e6b6b2cce
Update dependancies.
2017-11-01 10:54:36 +02:00
Jordan Petridis
893218346d
unwrap handling.
2017-10-31 13:08:53 +02:00
Jordan Petridis
401c13eee7
Refactored podcast_widget constructor.
2017-10-31 12:25:15 +02:00
Jordan Petridis
faf4a4bce0
Renamed watched field in the episode table of the database to played.
2017-10-30 14:13:36 +02:00
Jordan Petridis
25344aa613
Applied clippy suggestions.
2017-10-30 13:15:44 +02:00
Jordan Petridis
ac80ab04d4
Added the ability to mark episodes of a Podcast as watched/played.
2017-10-30 13:02:35 +02:00
Jordan Petridis
9c032a7f17
On download completion also show the delete button for the episode widget.
2017-10-28 09:08:18 +03:00
Jordan Petridis
1cdae2b8b0
Temporary exposed download cleaner into the gui.
2017-10-28 08:51:59 +03:00
Jordan Petridis
eb8fdb2edb
Implemented a downloaded/watched cleaner.
2017-10-28 06:57:32 +03:00
Jordan Petridis
e6ceb86201
Completed functionality of the delete buttons.
2017-10-27 04:31:39 +03:00
Jordan Petridis
0137e1e49b
Implemented Partial feed deletion.
...
Cleans up the db but it leaves behind the downloaded content atm.
2017-10-26 15:02:44 +03:00
Jordan Petridis
674b233805
Wired and implemented the functionality for episde delete button.
2017-10-26 14:00:33 +03:00