Commit Graph

61 Commits

Author SHA1 Message Date
Jordan Petridis
81b1ec810c
Apply clippy suggestions. 2018-01-07 08:36:02 +02:00
Jordan Petridis
e290ae223e
Pixbuf cache: use rwlock where possible. 2018-01-07 07:49:16 +02:00
Jordan Petridis
29837ad39a
Default to using Arc instead of Rc with composite structs of GtkWidgets. 2018-01-04 17:05:05 +02:00
Jordan Petridis
f873278a96
hammond_gtk: Move the gtk callback to an Application channel action. 2018-01-04 16:16:34 +02:00
Jordan Petridis
f30c645596
hammond_gtk: Refactor refresh_feed func to use the Application channel. 2018-01-04 16:05:42 +02:00
Jordan Petridis
ce08d49107
Headerbar: Added update indication. 2017-12-29 22:58:20 +02:00
Jordan Petridis
fdd63afdfe
hammond-gtk: Create Application wide actions. 2017-12-29 16:05:10 +02:00
Jordan Petridis
ca06a16bd9
Closes #2. Kudo to @jwykeham for the fix!. 2017-12-29 02:45:02 +02:00
Jordan Petridis
55b6fccefd
Make it explicit to run some tests. 2017-12-28 23:46:09 +02:00
Jordan Petridis
bfb74c4dba
hammond-data: Index_loop does not wait for GET request to finish now. 2017-12-26 18:18:48 +02:00
Jordan Petridis
e7185d2cd3
Visual tweaks, and other minor stuff.
Added margins bottom margins on EpisodesView and ShowWidget.
Added some comment's to the code.
Silenced needless_pass_by_value clippy warning.
Updated TODO.md.
2017-12-23 16:56:03 +02:00
Jordan Petridis
e416bca963
Implemented a pixbuf cache mechanism.
Since gdk_pixbuf::Pixbuf is refference counted and every episode,
use the cover of the Podcast Feed/Show, We can only create a Pixbuf
cover per show and pass around the Rc pointer.

GObjects do not implement Send trait, so SendCell is a way around that.
Also lazy_static requires Sync trait, so that's what the mutexes are.
2017-12-21 17:36:07 +02:00
Jordan Petridis
2e06205eda
Define a new Diesel Model for PodcastCover querries.
Define new Diesel Model and impl From<Podcast> trait,
Change the signature of downloader::cache_image function,
Change and merge hammond-gtk::utils::get_pixbuf_from_path functions.
2017-12-20 18:19:31 +02:00
Jordan Petridis
914cad72f5
EpisodesView: Custom Diesel model not really necessary. 2017-12-19 20:45:40 +02:00
Jordan Petridis
895591f628
EpisodesView: Use show cover image. 2017-12-19 13:19:38 +02:00
Jordan Petridis
35009e2574
Added an auto-updater that runs each hour. 2017-12-17 13:44:00 +02:00
Jordan Petridis
c74153f56a
Initial implementation of the new ShowWidget. 2017-12-15 18:42:49 +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
ddb195db3c
Wired up refresh button. 2017-12-11 13:51:16 +02:00
Jordan Petridis
d7af108833
WIP markup to html parser func. 2017-12-07 06:41:10 +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
91ac2c6445
Minor cleanups. 2017-12-01 06:40:32 +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
b32e35c574
Rename podcasts_view module. 2017-11-30 21:10:05 +02:00
Jordan Petridis
866904a687
Use generic IntoIterator instead of &[foo] slices. 2017-11-26 07:03:21 +02:00
Jordan Petridis
9bc6df2cba
Made Disel NewModels private. 2017-11-22 05:50:25 +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
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
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
54a0f17588
Initial draft of hammond-data/src/index_feed.rs API redesign. 2017-11-17 13:26:39 +02:00
Jordan Petridis
4e6ed416ee
Disabled http refers. 2017-11-07 10:28:04 +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
72ac709cda
Removed the multiple declarations of the clone macro. 2017-11-03 17:42:48 +02:00
Jordan Petridis
8a313c145b
Made a type allias for Arc<Mutex<SqliteConnection>. 2017-10-23 12:29:04 +03:00
Jordan Petridis
0e5d976514
Database optimizations. 2017-10-23 10:47:54 +03:00
Jordan Petridis
9beea21a4f
Code cleanup.
Converted rest of .clone() s on ref pointer to use the macro instead.
Stopped ignoring clippy clone_on_ref_pointer warnings since there shouldn't
be any, anymore.
2017-10-23 07:37:07 +03:00
Jordan Petridis
539a5eae2f
Implemented the recommended clone macro from gtk-rs docs. 2017-10-23 07:09:23 +03:00
Jordan Petridis
02cce8b915
I hate Arcs and Rcs. 2017-10-22 05:15:41 +03:00
Jordan Petridis
6ffacaa6d8
Final2, I swear, when dealing with Arc/rc always use references. 2017-10-22 04:51:34 +03:00
Jordan Petridis
cbe50c9163
OK OK, neat trick, clone on &A/RC<T> gives back A/RC<T>. 2017-10-22 04:32:03 +03:00
Jordan Petridis
28a10ac462
Async update refinements, Stack transition refinements. 2017-10-21 23:27:53 +03:00
Jordan Petridis
2077215491
Changed arguments Arc<T> to bepassed by value, clone on arc just copies the refference anyway. 2017-10-21 22:53:04 +03:00
Jordan Petridis
7b0a8f0e25
Added a probably terrible way to update podcast_view async. 2017-10-21 22:34:20 +03:00
Jordan Petridis
f58ad6bd8c
applied some clippy suggestions. 2017-10-21 21:24:19 +03:00