Merge branch '27-episodesview' into '27-episodesview'
[ui] add custom style and [fix] draw List separators with css See merge request alatiera/Hammond!9
This commit is contained in:
commit
5234ecb2a7
7
hammond-gtk/resources/gtk/style.css
Normal file
7
hammond-gtk/resources/gtk/style.css
Normal file
@ -0,0 +1,7 @@
|
||||
row {
|
||||
border-bottom: solid 1px rgba(0,0,0, 0.1);
|
||||
}
|
||||
|
||||
row:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
@ -9,5 +9,6 @@
|
||||
<file preprocess="xml-stripblanks">gtk/shows_view.ui</file>
|
||||
<file preprocess="xml-stripblanks">gtk/shows_child.ui</file>
|
||||
<file preprocess="xml-stripblanks">gtk/headerbar.ui</file>
|
||||
<file compressed="true">gtk/style.css</file>
|
||||
</gresource>
|
||||
</gresources>
|
||||
|
||||
@ -64,6 +64,10 @@ fn build_ui(app: >k::Application) {
|
||||
menu.append("Update feeds", "app.update");
|
||||
app.set_app_menu(&menu);
|
||||
|
||||
// Add custom style
|
||||
let provider = gtk::CssProvider::new();
|
||||
gtk::CssProvider::load_from_resource(&provider, "/org/gnome/hammond/gtk/style.css");
|
||||
gtk::StyleContext::add_provider_for_screen(&gdk::Screen::get_default().unwrap(), &provider, 600);
|
||||
// Get the main window
|
||||
let window = gtk::ApplicationWindow::new(app);
|
||||
window.set_default_size(1024, 576);
|
||||
|
||||
@ -76,35 +76,25 @@ impl EpisodesView {
|
||||
|
||||
episodes.into_iter().for_each(|mut ep| {
|
||||
let viewep = EpisodesViewWidget::new(&mut ep);
|
||||
let sep = gtk::Separator::new(gtk::Orientation::Vertical);
|
||||
sep.set_sensitive(false);
|
||||
sep.set_can_focus(false);
|
||||
|
||||
let t = split(&now_utc, i64::from(ep.epoch()));
|
||||
match t {
|
||||
ListSplit::Today => {
|
||||
view.today_list.add(&viewep.container);
|
||||
view.today_list.add(&sep)
|
||||
}
|
||||
ListSplit::Yday => {
|
||||
view.yday_list.add(&viewep.container);
|
||||
view.yday_list.add(&sep)
|
||||
}
|
||||
ListSplit::Week => {
|
||||
view.week_list.add(&viewep.container);
|
||||
view.week_list.add(&sep)
|
||||
}
|
||||
ListSplit::Month => {
|
||||
view.month_list.add(&viewep.container);
|
||||
view.month_list.add(&sep)
|
||||
}
|
||||
ListSplit::Rest => {
|
||||
view.rest_list.add(&viewep.container);
|
||||
view.rest_list.add(&sep)
|
||||
}
|
||||
}
|
||||
|
||||
sep.show()
|
||||
});
|
||||
|
||||
if view.today_list.get_children().is_empty() {
|
||||
|
||||
@ -305,13 +305,6 @@ pub fn episodes_listbox(pd: &Podcast) -> Result<gtk::ListBox> {
|
||||
episodes.into_iter().for_each(|mut ep| {
|
||||
let widget = EpisodeWidget::new(&mut ep);
|
||||
list.add(&widget.container);
|
||||
|
||||
let sep = gtk::Separator::new(gtk::Orientation::Vertical);
|
||||
sep.set_sensitive(false);
|
||||
sep.set_can_focus(false);
|
||||
|
||||
list.add(&sep);
|
||||
sep.show()
|
||||
});
|
||||
|
||||
list.set_vexpand(false);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user