mirror of
https://gitlab.com/gabmus/envision.git
synced 2025-04-21 03:54:49 +00:00
feat: use adw navigation split view instead of overlay split view
This commit is contained in:
parent
7266f0b2f0
commit
71c8451833
3 changed files with 7 additions and 21 deletions
|
@ -74,7 +74,7 @@ pub struct App {
|
|||
#[tracker::do_not_track]
|
||||
debug_view: Controller<DebugView>,
|
||||
#[tracker::do_not_track]
|
||||
split_view: Option<adw::OverlaySplitView>,
|
||||
split_view: Option<adw::NavigationSplitView>,
|
||||
#[tracker::do_not_track]
|
||||
about_dialog: Controller<AboutDialog>,
|
||||
#[tracker::do_not_track]
|
||||
|
@ -276,17 +276,13 @@ impl SimpleComponent for App {
|
|||
set_hexpand: true,
|
||||
set_vexpand: true,
|
||||
#[name = "split_view"]
|
||||
adw::OverlaySplitView {
|
||||
adw::NavigationSplitView {
|
||||
set_hexpand: true,
|
||||
set_vexpand: true,
|
||||
set_content: Some(model.main_view.widget()),
|
||||
set_sidebar: Some(model.debug_view.widget()),
|
||||
set_sidebar_position: gtk::PackType::End,
|
||||
set_show_sidebar: model.config.debug_view_enabled,
|
||||
set_sidebar_width_fraction: 1.0,
|
||||
// stupid way to make sidebar hexpand
|
||||
set_max_sidebar_width: 999999.9,
|
||||
set_pin_sidebar: true,
|
||||
set_sidebar: Some(&adw::NavigationPage::new(model.main_view.widget(), APP_NAME)),
|
||||
set_content: Some(&adw::NavigationPage::new(model.debug_view.widget(), "Debug View")),
|
||||
set_show_content: false,
|
||||
set_collapsed: !model.config.debug_view_enabled,
|
||||
}
|
||||
},
|
||||
connect_close_request[sender] => move |win| {
|
||||
|
@ -384,7 +380,7 @@ impl SimpleComponent for App {
|
|||
self.set_enable_debug_view(val);
|
||||
self.config.debug_view_enabled = val;
|
||||
self.config.save();
|
||||
self.split_view.clone().unwrap().set_show_sidebar(val);
|
||||
self.split_view.clone().unwrap().set_collapsed(!val);
|
||||
self.main_view
|
||||
.sender()
|
||||
.emit(MainViewMsg::EnableDebugViewChanged(val));
|
||||
|
|
|
@ -66,10 +66,6 @@ impl SimpleComponent for DebugView {
|
|||
set_hexpand: true,
|
||||
set_vexpand: false,
|
||||
add_css_class: "flat",
|
||||
#[wrap(Some)]
|
||||
set_title_widget: title_label = &adw::WindowTitle {
|
||||
set_title: "Debug View",
|
||||
},
|
||||
pack_end: search_toggle = >k::ToggleButton {
|
||||
set_icon_name: "edit-find-symbolic",
|
||||
set_tooltip_text: Some("Filter Log"),
|
||||
|
|
|
@ -140,16 +140,10 @@ impl SimpleComponent for MainView {
|
|||
add_top_bar: top_bar = &adw::HeaderBar {
|
||||
set_hexpand: true,
|
||||
set_vexpand: false,
|
||||
#[wrap(Some)]
|
||||
set_title_widget: title_label = &adw::WindowTitle {
|
||||
set_title: APP_NAME,
|
||||
},
|
||||
pack_end: menu_btn = >k::MenuButton {
|
||||
set_icon_name: "open-menu-symbolic",
|
||||
set_menu_model: Some(&app_menu),
|
||||
},
|
||||
#[track = "model.changed(Self::enable_debug_view())"]
|
||||
set_show_end_title_buttons: !model.enable_debug_view,
|
||||
},
|
||||
#[wrap(Some)]
|
||||
set_content: content = >k::ScrolledWindow {
|
||||
|
|
Loading…
Add table
Reference in a new issue