Commit Graph

831 Commits

Author SHA1 Message Date
Rowan Lewis
f182d441d1 Allow the Copy trait to do the work for us. 2018-03-18 00:29:52 +01:00
Rowan Lewis
e14f215793 Allow cleanup to be blocking on startup and remove cleanup from automatic content refreshes. 2018-03-17 23:50:59 +01:00
Rowan Lewis
34536f4e21 Set dark theme at application startup based on settings. 2018-03-17 23:46:37 +01:00
Rowan Lewis
afdedc7575 Use crono types instead of unsigned integers for time periods. 2018-03-17 01:10:10 +01:00
Rowan Lewis
69a7a9b180 Renamed the 'auto-refresh' settings to 'refresh-interval' so that they represent the internal behaviour better. 2018-03-16 23:31:12 +01:00
Rowan Lewis
a7540583d6 Connect settings for auto refresh and cleanup. 2018-03-16 23:23:06 +01:00
Jordan Petridis
a253d7ebf5 Merge branch 'feature/gsettings-schema' into 'master'
Added initial settings schema.

See merge request alatiera/Hammond!22
2018-03-16 20:05:19 +00:00
Rowan Lewis
3886402f8e Spelling correction. 2018-03-16 20:45:40 +01:00
Rowan Lewis
97e402b980 Added initial settings schema. 2018-03-16 20:38:37 +01:00
Jordan Petridis
93e15af209
Compress gresource ui files. 2018-03-16 21:29:54 +02:00
Jordan Petridis
9f3a5a13b3
EpisodeWidget: Some RefCell are not really necessary. 2018-03-16 20:11:17 +02:00
Jordan Petridis
3a0fb4bdec
Upgrade dependancies. 2018-03-14 04:07:44 +02:00
Jordan Petridis
8a460930c6
Update changelog. 2018-03-14 01:10:02 +02:00
Jordan Petridis
a11c4c9bd2
InAppNotification: Twek the margins around the text label. 2018-03-14 00:43:17 +02:00
Jordan Petridis
d4b98b5cb2
I hate everything that has to do with centering stuff. 2018-03-14 00:40:29 +02:00
Jordan Petridis
fdf3908494
This reverts cc052eb450
Turns out debian stable meson package is kinda old.
2018-03-13 07:23:43 +02:00
Jordan Petridis
cc052eb450
gitlabci: use meson to test the build instead of cargo. 2018-03-13 07:03:31 +02:00
Jordan Petridis
4535c3005d Merge branch 'state-machines-experiements' into 'master'
EpisodeWidget as a state machine

See merge request alatiera/Hammond!18
2018-03-13 04:52:40 +00:00
Jordan Petridis
030fed6d12
EpisodeWidget: Just in case there was a deadlock. 2018-03-13 04:57:11 +02:00
Jordan Petridis
fc9579cd51
EpisodeWidget: Replace some Mutexs with RefCells.
The state machines are not send and the code is sequnecial.
We only need `&mut machine` refference to pass to `take_mut::take`
to change the state of the machine. In 2/3 cases we can even use
`.get_mut()` method and even avoid the dynamic borrow checks at
runtime. For the `TitleMachine` The only thing that will hold
a refference to it after initialization will be the play_button
callback. So it's justifiable to use `RefCell` insetead of a `Mutex`.
2018-03-13 04:44:06 +02:00
Jordan Petridis
74712b5410
EpisodeWidget: Remove unnecessary Arcs.
`DateMachine` and `DurationMachine` are only mutated during initialization
and thus do not need shared ownership.
`TitleMachine` is only mutated during initialization and after that only
the callback will keep holding a referrence to it. The `EpisodeWidget`s
get dropped after initialization. So it's justifiable to use `Rc<Mutex<T>>`
instead of `Arc`.
2018-03-13 03:47:46 +02:00
Jordan Petridis
05628a2529
Update changelog. 2018-03-12 22:32:52 +02:00
Jordan Petridis
1bdd2f2f5b
Merge branch 'master' into state-machines-experiements 2018-03-12 22:10:14 +02:00
Jordan Petridis
3af6e103aa Merge branch '49-itunes-to-rss-resolver' into 'master'
Resolve "Itunes to RSS resolver."

Closes #49

See merge request alatiera/Hammond!20
2018-03-12 19:52:51 +00:00
Jordan Petridis
3dcc20ae86
Update changelog. 2018-03-12 21:14:12 +02:00
Jordan Petridis
8a18630ae5
Initial integration of the itunes resolver with the Add button. 2018-03-12 20:49:02 +02:00
Jordan Petridis
b87c331b12
Make the itunes_resolver functions inlined. 2018-03-12 07:28:09 +02:00
Jordan Petridis
9da2414e8b
Initial implementation of an itunes_to_rss url resolver. #49 2018-03-12 06:48:05 +02:00
Jordan Petridis
285291b2ed
Ignore tests that need access to the host system. 2018-03-12 03:35:07 +02:00
Jordan Petridis
dbbb4e589e
InAppNotification: Fix autohiding after the callback is executed. 2018-03-09 20:24:28 +02:00
Jordan Petridis
064879c4ce
InAppNotification: Remove reduntant Overlay. 2018-03-09 19:46:46 +02:00
Jordan Petridis
8614922213
InAppNotification: Change box margins. 2018-03-09 19:36:43 +02:00
Jordan Petridis
745ea0ca10
Flatpak: Add dconf permissions.
Required also in order to run the gtk+ inspecor.
2018-03-09 17:14:49 +02:00
Jordan Petridis
99bc80c15b
ShowWidget: Add a 6px margin to the settings popup. 2018-03-09 17:04:11 +02:00
Jordan Petridis
3423d854e1
ShowWidget: Change the mark_all notif wording. 2018-03-09 16:43:13 +02:00
Jordan Petridis
483fd090f1
InAppNotification: Add close button. 2018-03-09 15:25:53 +02:00
Jordan Petridis
82988b6011
Implement in-app notifications as App wide actions.
At first I tried creating custom InAppNotifications and send
them to the main loop to be added. That does not work sicne gtk
widgets are not thread safe. For now we can try having Action messages
that create them on demand. As oppose to create first then pass them.
2018-03-09 14:53:13 +02:00
Jordan Petridis
d1821163c2
Factor out the In-app notification into something generic. 2018-03-09 01:21:54 +02:00
Jordan Petridis
7de118adeb
Minor style changes. 2018-03-08 23:14:48 +02:00
Jordan Petridis
abe7215bc0 Merge branch '47-mark-all-played' into 'master'
Resolve "Mark all episodes of a Show Feed as played."

Closes #47

See merge request alatiera/Hammond!19
2018-03-08 20:57:04 +00:00
Jordan Petridis
7b064e63b9
ShowWidget: Fix undo notif. 2018-03-08 16:21:42 +02:00
Jordan Petridis
f6890c709f
ShowWidget: Instantly dim episode titles when mark_all is clicked.
This is would have been way prettier, easier and safer if we could
have custom widgets. But till then I am not sure how to do it better.
2018-03-07 23:04:02 +02:00
Jordan Petridis
e4814dbfbc
ShowWidget: Initial prototype of an undo notification. 2018-03-07 16:37:10 +02:00
Jordan Petridis
8261b32c99
Update changelog. 2018-03-05 22:07:18 +02:00
Jordan Petridis
9a73520b25
dbquerries: Add a unit test for update_none_to_played_now func. 2018-03-05 21:40:11 +02:00
Jordan Petridis
10db4f7210
ShowWidget: Initial implementation of a menu popup.
Re implement mark_all_episodes_as_watched functionality too.
2018-03-05 20:14:06 +02:00
Jordan Petridis
94f6fdcbe7
Clippy. 2018-03-03 18:52:38 +02:00
Jordan Petridis
bb467b7aba
Rustfmt. 2018-03-03 16:45:37 +02:00
Jordan Petridis
3da503cdea
Use prebuilt image for the rustfmt CI check. 2018-02-26 17:49:20 +02:00
Jordan Petridis
b062f0a19f
EpisodeWidget Machine: Remove unused From impls. 2018-02-22 13:16:33 +00:00