Browse Source

activate tab on construct

master
yggverse 2 months ago
parent
commit
1293da7955
  1. 1
      src/app/browser/window.rs
  2. 35
      src/app/browser/window/tab.rs

1
src/app/browser/window.rs

@ -70,7 +70,6 @@ impl Window {
action_tab_page_navigation_reload, action_tab_page_navigation_reload,
action_update, action_update,
); );
tab.activate(tab.clone());
// GTK // GTK
let widget = Arc::new(Widget::new(header.gobject(), tab.gobject())); let widget = Arc::new(Widget::new(header.gobject(), tab.gobject()));

35
src/app/browser/window/tab.rs

@ -45,7 +45,22 @@ impl Tab {
// Init widget // Init widget
let widget = Arc::new(Widget::new()); let widget = Arc::new(Widget::new());
// Return non activated struct // Init events
widget.gobject().connect_close_page(move |_, tab_page| {
/* @TODO
// Cleanup HashMap index
let id = tab_page.widget_name();
// Check for required value as raw access to gobject @TODO
if id.is_empty() {
panic!("Undefined tab index!")
}
tab.index.borrow_mut().remove(&id); */
Propagation::Proceed
});
// Return activated struct
Arc::new(Self { Arc::new(Self {
// Define action links // Define action links
action_tab_page_navigation_base, action_tab_page_navigation_base,
@ -61,24 +76,6 @@ impl Tab {
} }
// Actions // Actions
pub fn activate(&self, tab: Arc<Self>) {
self.widget
.gobject()
.connect_close_page(move |_, tab_page| {
/* @TODO
// Cleanup HashMap index
let id = tab_page.widget_name();
// Check for required value as raw access to gobject @TODO
if id.is_empty() {
panic!("Undefined tab index!")
}
tab.index.borrow_mut().remove(&id); */
Propagation::Proceed
});
}
pub fn append( pub fn append(
&self, &self,
page_navigation_request_text: Option<GString>, page_navigation_request_text: Option<GString>,

Loading…
Cancel
Save