Game launcher (wip), wgui refactor
[skip ci]
This commit is contained in:
@@ -26,21 +26,16 @@ enum Task {
|
||||
}
|
||||
|
||||
struct State {
|
||||
launcher: Option<(PopupHandle, views::app_launcher::View)>,
|
||||
view_launcher: Option<(PopupHandle, views::app_launcher::View)>,
|
||||
}
|
||||
|
||||
pub struct TabApps {
|
||||
#[allow(dead_code)]
|
||||
pub parser_state: ParserState,
|
||||
parser_state: ParserState,
|
||||
|
||||
#[allow(dead_code)]
|
||||
state: Rc<RefCell<State>>,
|
||||
|
||||
#[allow(dead_code)]
|
||||
entries: Vec<DesktopEntry>,
|
||||
#[allow(dead_code)]
|
||||
app_list: AppList,
|
||||
|
||||
tasks: Tasks<Task>,
|
||||
}
|
||||
|
||||
@@ -54,11 +49,11 @@ impl Tab for TabApps {
|
||||
|
||||
for task in self.tasks.drain() {
|
||||
match task {
|
||||
Task::CloseLauncher => state.launcher = None,
|
||||
Task::CloseLauncher => state.view_launcher = None,
|
||||
}
|
||||
}
|
||||
|
||||
if let Some((_, launcher)) = &mut state.launcher {
|
||||
if let Some((_, launcher)) = &mut state.view_launcher {
|
||||
launcher.update(&mut frontend.layout, &mut frontend.interface)?;
|
||||
}
|
||||
Ok(())
|
||||
@@ -105,7 +100,7 @@ fn on_app_click(
|
||||
on_launched,
|
||||
})?;
|
||||
|
||||
state.borrow_mut().launcher = Some((data.handle, view));
|
||||
state.borrow_mut().view_launcher = Some((data.handle, view));
|
||||
Ok(())
|
||||
})
|
||||
},
|
||||
@@ -129,7 +124,7 @@ impl TabApps {
|
||||
let globals = frontend.layout.state.globals.clone();
|
||||
|
||||
let tasks = Tasks::new();
|
||||
let state = Rc::new(RefCell::new(State { launcher: None }));
|
||||
let state = Rc::new(RefCell::new(State { view_launcher: None }));
|
||||
|
||||
let mut parser_state = wgui::parser::parse_from_assets(doc_params, &mut frontend.layout, parent_id)?;
|
||||
let app_list_parent = parser_state.fetch_widget(&frontend.layout.state, "app_list_parent")?;
|
||||
|
||||
@@ -23,10 +23,7 @@ impl Tab for TabGames {
|
||||
}
|
||||
|
||||
fn update(&mut self, frontend: &mut Frontend) -> anyhow::Result<()> {
|
||||
self
|
||||
.view_game_list
|
||||
.update(&mut frontend.layout, &mut frontend.executor)?;
|
||||
|
||||
self.view_game_list.update(&mut frontend.layout, &frontend.executor)?;
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
@@ -46,6 +43,7 @@ impl TabGames {
|
||||
let game_list_parent = state.get_widget_id("game_list_parent")?;
|
||||
|
||||
let view_game_list = game_list::View::new(game_list::Params {
|
||||
executor: frontend.executor.clone(),
|
||||
frontend_tasks: frontend.tasks.clone(),
|
||||
globals: frontend.layout.state.globals.clone(),
|
||||
layout: &mut frontend.layout,
|
||||
|
||||
@@ -40,7 +40,7 @@ fn configure_label_hello(common: &mut CallbackDataCommon, label_hello: Widget, s
|
||||
common.i18n().translate("HELLO").to_string()
|
||||
};
|
||||
|
||||
let mut label_hello = label_hello.get_as_mut::<WidgetLabel>().unwrap();
|
||||
let mut label_hello = label_hello.get_as::<WidgetLabel>().unwrap();
|
||||
label_hello.set_text(common, Translation::from_raw_text(&translated));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user