Browse Source

activate history buttons

master
yggverse 2 months ago
parent
commit
3f5b4f9dfa
  1. 31
      src/browser/main/tab/page/navigation/history/back.rs
  2. 30
      src/browser/main/tab/page/navigation/history/forward.rs

31
src/browser/main/tab/page/navigation/history/back.rs

@ -1,19 +1,38 @@
use gtk::{gio::SimpleAction, Button}; use gtk::{
gio::SimpleAction,
prelude::{ActionExt, ButtonExt},
Button,
};
use std::sync::Arc; use std::sync::Arc;
pub struct Back { pub struct Back {
action_tab_page_navigation_history_back: Arc<SimpleAction>,
widget: Button, widget: Button,
} }
impl Back { impl Back {
// Construct // Construct
pub fn new(action_tab_page_navigation_history_back: Arc<SimpleAction>) -> Self { pub fn new(action_tab_page_navigation_history_back: Arc<SimpleAction>) -> Self {
// Init widget
let widget = Button::builder()
.icon_name("go-previous-symbolic")
.tooltip_text("Back")
.sensitive(false)
.build();
// Init events
widget.connect_clicked({
let action_tab_page_navigation_history_back =
action_tab_page_navigation_history_back.clone();
move |_| {
action_tab_page_navigation_history_back.activate(None);
}
});
// Return activated struct
Self { Self {
widget: Button::builder() action_tab_page_navigation_history_back,
.icon_name("go-previous-symbolic") widget,
.tooltip_text("Back")
.sensitive(false)
.build(),
} }
} }

30
src/browser/main/tab/page/navigation/history/forward.rs

@ -1,19 +1,37 @@
use gtk::{gio::SimpleAction, Button}; use gtk::{
prelude::{ActionExt, ButtonExt},
{gio::SimpleAction, Button},
};
use std::sync::Arc; use std::sync::Arc;
pub struct Forward { pub struct Forward {
action_tab_page_navigation_history_forward: Arc<SimpleAction>,
widget: Button, widget: Button,
} }
impl Forward { impl Forward {
// Construct // Construct
pub fn new(action_tab_page_navigation_history_forward: Arc<SimpleAction>) -> Self { pub fn new(action_tab_page_navigation_history_forward: Arc<SimpleAction>) -> Self {
// Init widget
let widget = Button::builder()
.icon_name("go-next-symbolic")
.tooltip_text("Forward")
.sensitive(false)
.build();
// Init events
widget.connect_clicked({
let action_tab_page_navigation_history_forward =
action_tab_page_navigation_history_forward.clone();
move |_| {
action_tab_page_navigation_history_forward.activate(None);
}
});
// Return activated struct
Self { Self {
widget: Button::builder() action_tab_page_navigation_history_forward,
.icon_name("go-next-symbolic") widget,
.tooltip_text("Forward")
.sensitive(false)
.build(),
} }
} }

Loading…
Cancel
Save