use tuple for actions

This commit is contained in:
yggverse 2024-11-14 16:24:48 +02:00
parent fc2baf7845
commit 1b6f45152a
2 changed files with 9 additions and 15 deletions

View File

@ -24,8 +24,7 @@ use std::{cell::RefCell, collections::HashMap, rc::Rc};
// Main
pub struct Tab {
profile: Rc<Profile>,
browser_action: Rc<BrowserAction>,
window_action: Rc<WindowAction>,
actions: (Rc<BrowserAction>, Rc<WindowAction>),
index: Rc<RefCell<HashMap<GString, Rc<Item>>>>,
widget: Rc<Widget>,
}
@ -100,8 +99,7 @@ impl Tab {
// Return activated `Self`
Self {
profile,
browser_action: action.0,
window_action: action.1,
actions: (action.0, action.1),
index,
widget,
}
@ -121,9 +119,9 @@ impl Tab {
let item = Rc::new(Item::new(
self.widget.gobject(),
self.profile.clone(),
self.browser_action.clone(),
self.window_action.clone(),
// Options tuple
// Actions
(self.actions.0.clone(), self.actions.1.clone()),
// Options
(
position,
request,
@ -294,7 +292,7 @@ impl Tab {
transaction,
&record.id,
self.profile.clone(),
(self.browser_action.clone(), self.window_action.clone()),
(self.actions.0.clone(), self.actions.1.clone()),
) {
Ok(items) => {
for item in items {

View File

@ -34,10 +34,7 @@ impl Item {
pub fn new(
tab_view: &TabView,
profile: Rc<Profile>,
// Actions
browser_action: Rc<BrowserAction>,
window_action: Rc<WindowAction>,
// Options tuple @TODO struct?
actions: (Rc<BrowserAction>, Rc<WindowAction>),
options: (Position, Option<String>, bool, bool, bool, bool),
) -> Self {
// Get item options from tuple
@ -53,7 +50,7 @@ impl Item {
let page = Rc::new(Page::new(
id.clone(),
profile,
(browser_action, window_action, action.clone()),
(actions.0, actions.1, action.clone()),
));
let widget = Rc::new(Widget::new(
@ -154,8 +151,7 @@ impl Item {
tab_view,
profile.clone(),
// Actions
action.0.clone(),
action.1.clone(),
(action.0.clone(), action.1.clone()),
// Options tuple
(
Position::End,