mirror of
https://github.com/YGGverse/Yoda.git
synced 2026-04-01 17:15:28 +00:00
define actions in arc container
This commit is contained in:
parent
7c78396328
commit
9a3ad366af
10 changed files with 138 additions and 77 deletions
|
|
@ -30,29 +30,32 @@ impl Browser {
|
|||
default_height: i32,
|
||||
) -> Browser {
|
||||
// Init window actions
|
||||
let action_debug = SimpleAction::new("debug", None);
|
||||
let action_quit = SimpleAction::new("quit", None);
|
||||
let action_update = SimpleAction::new("update", None);
|
||||
let action_debug = Arc::new(SimpleAction::new("debug", None));
|
||||
let action_quit = Arc::new(SimpleAction::new("quit", None));
|
||||
let action_update = Arc::new(SimpleAction::new("update", None));
|
||||
|
||||
let action_tab_append = SimpleAction::new("tab_append", None);
|
||||
let action_tab_close = SimpleAction::new("tab_close", None);
|
||||
let action_tab_close_all = SimpleAction::new("tab_close_all", None);
|
||||
let action_tab_page_reload = SimpleAction::new("tab_page_reload", None);
|
||||
let action_tab_pin = SimpleAction::new("tab_pin", None);
|
||||
let action_tab_append = Arc::new(SimpleAction::new("tab_append", None));
|
||||
let action_tab_close = Arc::new(SimpleAction::new("tab_close", None));
|
||||
let action_tab_close_all = Arc::new(SimpleAction::new("tab_close_all", None));
|
||||
let action_tab_page_reload = Arc::new(SimpleAction::new("tab_page_reload", None));
|
||||
let action_tab_pin = Arc::new(SimpleAction::new("tab_pin", None));
|
||||
|
||||
// Init components
|
||||
// let db = db::Browser::new(connection);
|
||||
let header = Arc::new(Header::new(
|
||||
&action_debug,
|
||||
&action_quit,
|
||||
&action_tab_append,
|
||||
&action_tab_close,
|
||||
&action_tab_close_all,
|
||||
&action_tab_page_reload,
|
||||
&action_tab_pin,
|
||||
action_debug.clone(),
|
||||
action_quit.clone(),
|
||||
action_tab_append.clone(),
|
||||
action_tab_close.clone(),
|
||||
action_tab_close_all.clone(),
|
||||
action_tab_page_reload.clone(),
|
||||
action_tab_pin.clone(),
|
||||
));
|
||||
|
||||
let main = Arc::new(Main::new(&action_tab_page_reload, &action_update));
|
||||
let main = Arc::new(Main::new(
|
||||
action_tab_page_reload.clone(),
|
||||
action_update.clone(),
|
||||
));
|
||||
|
||||
// Init widget
|
||||
let widget = ApplicationWindow::builder()
|
||||
|
|
@ -63,15 +66,15 @@ impl Browser {
|
|||
.child(main.widget())
|
||||
.build();
|
||||
|
||||
widget.add_action(&action_debug);
|
||||
widget.add_action(&action_quit);
|
||||
widget.add_action(&action_update);
|
||||
widget.add_action(action_debug.as_ref());
|
||||
widget.add_action(action_quit.as_ref());
|
||||
widget.add_action(action_update.as_ref());
|
||||
|
||||
widget.add_action(&action_tab_append);
|
||||
widget.add_action(&action_tab_close);
|
||||
widget.add_action(&action_tab_close_all);
|
||||
widget.add_action(&action_tab_page_reload);
|
||||
widget.add_action(&action_tab_pin);
|
||||
widget.add_action(action_tab_append.as_ref());
|
||||
widget.add_action(action_tab_close.as_ref());
|
||||
widget.add_action(action_tab_close_all.as_ref());
|
||||
widget.add_action(action_tab_page_reload.as_ref());
|
||||
widget.add_action(action_tab_pin.as_ref());
|
||||
|
||||
// Init events
|
||||
action_debug.connect_activate({
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue