implement tab title update

This commit is contained in:
yggverse 2024-10-11 05:21:04 +03:00
parent 06cfd72c62
commit 0c2658825e
3 changed files with 17 additions and 0 deletions

View File

@ -155,7 +155,16 @@ impl Tab {
pub fn update(&self) {
if let Some(id) = self.widget.current_page_keyword() {
if let Some(item) = self.index.borrow().get(&id) {
// Update item components
item.update();
// Update tab title
let title = match item.page_meta_title() {
Some(value) => value,
None => GString::new(),
};
item.gobject().set_title(title.as_str());
}
}
}

View File

@ -187,6 +187,10 @@ impl Item {
self.id.clone()
}
pub fn page_meta_title(&self) -> Option<GString> {
self.page.meta_title()
}
pub fn gobject(&self) -> &TabPage {
&self.widget.gobject()
}

View File

@ -463,6 +463,10 @@ impl Page {
}
// Getters
pub fn meta_title(&self) -> Option<GString> {
self.meta.borrow().title.clone()
}
pub fn gobject(&self) -> &Box {
&self.widget.gobject()
}