Jordan Petridis
4d2b64e79d
h-gtk: Remember the vertical allingment of the ShowsView.
2018-05-13 22:47:56 +03:00
Jordan Petridis
d47bbd6131
Remove explicit and not needed inline calls.
...
This code is not performance critical and the compiler will already
inline whatever it thinks it might benefit it.
2018-05-13 22:08:25 +03:00
Jordan Petridis
b5dbfb1a86
PopulatedStack: Allow for more control over the stack transitions.
...
When you just update/replace the widget there is no need for an animation
to occur. Thus why animations where broken before. This commit is not ideal
as it makes it the responsibility of the caller to declare valid(UX wise)
transitions.
2018-05-04 11:32:50 +03:00
Jordan Petridis
c96b39d597
Fix all the clippy warnings!
2018-04-30 14:13:54 +03:00
Jordan Petridis
ed94d34589
h-gtk: Rename the stasckswitcher field in the Headerbar.
2018-04-27 11:41:39 +03:00
Jordan Petridis
dc5ff9d809
h-gtk: Take into account the ignored_shows when detemening if podcast table is empty.
...
If you've had one show and pressed unsub, instead of going to
an empty view, it would stay to populated since it the db records
where still there.
2018-04-27 11:21:32 +03:00
Jordan Petridis
72a6832571
h-gtk: Rename HomeView and ShowView parent modules.
2018-04-25 20:57:05 +03:00
Jordan Petridis
3d160fc35c
h-gtk: Restructure the stacks structure.
...
This commit reimplements support for the empty view in the ShowStack.
The current structure is the following:
* A Content stack which holds the HomeStack and the ShowStack.
It's what is used in the headerbar StackSwitcher.
* The HomeStack is composed of the HomeView and an EmptyView.
* The ShowStack is composed of the PopulatedStack and an EmptyView.
* The PopulatedStack is composed of the ShowsView and the ShowWidget
currently. An AboutEpisode widget is planned to be added here also.
2018-04-25 19:23:02 +03:00
Jordan Petridis
734f85a517
Fix logic typo.
2018-04-24 15:34:52 +03:00
Jordan Petridis
a56a80db88
ShowWidget: Keep track of the podcast it was created from.
...
Since ShowStack now keeps a refference to ShowWidget we no
longer need to encode it in the widget name.
2018-04-24 15:25:34 +03:00
Jordan Petridis
c4ed90dd5a
ShowStack: Refactor to make stack restructure easier.
...
This removes the empty widget from the ShowStack. The plan is
to have a ShowsView which will be the parent of ShowStack and
an Empty Widget. Then make ShowStack have only valid populated
states of ShowsPopulate, ShowWidget and AboutEpisodeWidget later.
2018-04-24 13:12:27 +03:00
Jordan Petridis
f173b326a4
Contnet: Minor renaming following 75af3c7f2b
2018-04-24 12:28:29 +03:00
Jordan Petridis
5e302290de
HomeStack: Minor refactor to wrap gtk::Stack actions.
...
For now the methods are private and migth not be neccesarry,
but it will be much easier to manipulate the stack from outside
with this API if it's needed and the methods are made public.
2018-04-24 09:59:29 +03:00
Jordan Petridis
75af3c7f2b
h-gtk: Rename EpisodeStack to HomeStack.
2018-04-24 09:31:56 +03:00
Jordan Petridis
d7aec6fdfb
h-gtk: Move vies inside the widgets module.
...
EpisodeView was renamed to HomeView. More renaming will follow.
2018-04-23 15:57:46 +03:00
Jordan Petridis
e560cce879
h-gtk: Further refactor of the ShowStack.
2018-04-21 08:01:34 +03:00
Jordan Petridis
6406c3af13
h-gtk: Refactor part of the ShowStack.
2018-04-21 07:40:42 +03:00
Jordan Petridis
173d2d3a3a
h-gtk: Refactor EpisodesStack.
2018-04-20 17:23:07 +03:00
Jordan Petridis
3b5831f317
ShowsView: Do not block while loading ShowChilds.
2018-04-19 07:51:48 +03:00
Jordan Petridis
df417fa619
h-gtk: Use Rc instead of Arc wherever possible.
...
As logn we are not doing anything funny to bypass the borrow-checker,
we should not be able to touch gtk wigets from other threads anyway.
2018-04-19 06:34:02 +03:00
Jordan Petridis
509bbe25d2
EpisodeView: Retain the scrollbar valignment.
2018-04-19 06:12:08 +03:00
Jordan Petridis
f49012ab51
EpisodeView: Reduce boilderplate.
2018-04-19 05:40:07 +03:00
Jordan Petridis
0e4430bae4
EpisodeView: Initial refactor to make loading non-blocking.
2018-04-19 02:52:58 +03:00
Jordan Petridis
54641fc3c5
ShowWidget: Try to retain scrollbar adjustment.
2018-04-17 06:00:06 +03:00
Jordan Petridis
bc6eeec663
Replace if Let Err(_) with .map_err().ok() patterns.
...
I dislike the indentation and the noise if let adds.
2018-04-16 04:03:44 +03:00
Jordan Petridis
87421ce74d
Cargo fmt
2018-04-13 04:35:50 +03:00
Jordan Petridis
ae25dd65bf
Cargo clippy and fmt.
2018-02-19 09:58:47 +00:00
Jordan Petridis
07c1a9a0e9
Fix private field visibility of stacks.
2018-02-07 07:11:40 +02:00
Jordan Petridis
67af85e347
Hammond-gtk: Use Atomic Refference counting to reduce cloning of Podcast.
2018-02-07 06:28:16 +02:00
Jordan Petridis
df02054b29
Hammond-gtk: Change the privacy of the widgets module.
2018-02-07 05:47:58 +02:00
Jordan Petridis
0cdd48ac1e
Hammond-gtk: Change the privacy of the views module.
2018-02-07 05:37:07 +02:00
Jordan Petridis
bdda596806
Hammond-gtk: Inital split of content.rs into stacks module.
2018-02-07 05:33:29 +02:00