mirror of https://github.com/wayvr-org/wayvr.git
monado tab order switch
This commit is contained in:
parent
5407e53700
commit
b1e09910a2
|
|
@ -2,8 +2,8 @@
|
||||||
<elements>
|
<elements>
|
||||||
<div gap="4">
|
<div gap="4">
|
||||||
<Tabs id="tabs">
|
<Tabs id="tabs">
|
||||||
<Tab name="general_settings" translation="GENERAL_SETTINGS" sprite_src_builtin="dashboard/settings.svg" />
|
|
||||||
<Tab name="process_list" translation="PROCESS_LIST" sprite_src_builtin="dashboard/cpu.svg" />
|
<Tab name="process_list" translation="PROCESS_LIST" sprite_src_builtin="dashboard/cpu.svg" />
|
||||||
|
<Tab name="general_settings" translation="GENERAL_SETTINGS" sprite_src_builtin="dashboard/settings.svg" />
|
||||||
<Tab name="debug_timings" translation="DEBUG_INFO" sprite_src_builtin="dashboard/not_a_bug.svg" />
|
<Tab name="debug_timings" translation="DEBUG_INFO" sprite_src_builtin="dashboard/not_a_bug.svg" />
|
||||||
</Tabs>
|
</Tabs>
|
||||||
<div gap="4" id="content" width="100%">
|
<div gap="4" id="content" width="100%">
|
||||||
|
|
|
||||||
|
|
@ -28,16 +28,16 @@ use crate::{
|
||||||
|
|
||||||
#[derive(Clone)]
|
#[derive(Clone)]
|
||||||
enum TabNameEnum {
|
enum TabNameEnum {
|
||||||
GeneralSettings,
|
|
||||||
ProcessList,
|
ProcessList,
|
||||||
|
GeneralSettings,
|
||||||
DebugTimings,
|
DebugTimings,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl TabNameEnum {
|
impl TabNameEnum {
|
||||||
fn from_string(s: &str) -> Option<Self> {
|
fn from_string(s: &str) -> Option<Self> {
|
||||||
match s {
|
match s {
|
||||||
"general_settings" => Some(TabNameEnum::GeneralSettings),
|
|
||||||
"process_list" => Some(TabNameEnum::ProcessList),
|
"process_list" => Some(TabNameEnum::ProcessList),
|
||||||
|
"general_settings" => Some(TabNameEnum::GeneralSettings),
|
||||||
"debug_timings" => Some(TabNameEnum::DebugTimings),
|
"debug_timings" => Some(TabNameEnum::DebugTimings),
|
||||||
_ => None,
|
_ => None,
|
||||||
}
|
}
|
||||||
|
|
@ -126,8 +126,8 @@ struct SubtabDebugTimings {
|
||||||
#[allow(clippy::large_enum_variant)]
|
#[allow(clippy::large_enum_variant)]
|
||||||
enum Subtab {
|
enum Subtab {
|
||||||
Empty,
|
Empty,
|
||||||
GeneralSettings(SubtabGeneralSettings),
|
|
||||||
ProcessList(SubtabProcessList),
|
ProcessList(SubtabProcessList),
|
||||||
|
GeneralSettings(SubtabGeneralSettings),
|
||||||
DebugTimings(SubtabDebugTimings),
|
DebugTimings(SubtabDebugTimings),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -184,6 +184,10 @@ impl<T> Tab<T> for TabMonado<T> {
|
||||||
Task::SetTab(tab) => {
|
Task::SetTab(tab) => {
|
||||||
frontend.layout.remove_children(self.id_content);
|
frontend.layout.remove_children(self.id_content);
|
||||||
match tab {
|
match tab {
|
||||||
|
TabNameEnum::ProcessList => {
|
||||||
|
self.tasks.push(Task::ProcessListRefresh);
|
||||||
|
self.subtab = Subtab::ProcessList(SubtabProcessList::new(self.id_content, frontend)?)
|
||||||
|
}
|
||||||
TabNameEnum::GeneralSettings => {
|
TabNameEnum::GeneralSettings => {
|
||||||
self.subtab = Subtab::GeneralSettings(SubtabGeneralSettings::new(
|
self.subtab = Subtab::GeneralSettings(SubtabGeneralSettings::new(
|
||||||
self.id_content,
|
self.id_content,
|
||||||
|
|
@ -192,10 +196,6 @@ impl<T> Tab<T> for TabMonado<T> {
|
||||||
&self.tasks,
|
&self.tasks,
|
||||||
)?)
|
)?)
|
||||||
}
|
}
|
||||||
TabNameEnum::ProcessList => {
|
|
||||||
self.tasks.push(Task::ProcessListRefresh);
|
|
||||||
self.subtab = Subtab::ProcessList(SubtabProcessList::new(self.id_content, frontend)?)
|
|
||||||
}
|
|
||||||
TabNameEnum::DebugTimings => {
|
TabNameEnum::DebugTimings => {
|
||||||
self.subtab = Subtab::DebugTimings(SubtabDebugTimings::new(self.id_content, frontend, &self.tasks)?)
|
self.subtab = Subtab::DebugTimings(SubtabDebugTimings::new(self.id_content, frontend, &self.tasks)?)
|
||||||
}
|
}
|
||||||
|
|
@ -206,7 +206,6 @@ impl<T> Tab<T> for TabMonado<T> {
|
||||||
|
|
||||||
match &mut self.subtab {
|
match &mut self.subtab {
|
||||||
Subtab::Empty => {}
|
Subtab::Empty => {}
|
||||||
Subtab::GeneralSettings(_) => {}
|
|
||||||
Subtab::ProcessList(_) => {
|
Subtab::ProcessList(_) => {
|
||||||
// every few seconds
|
// every few seconds
|
||||||
if let Subtab::ProcessList(_) = &self.subtab
|
if let Subtab::ProcessList(_) = &self.subtab
|
||||||
|
|
@ -215,6 +214,7 @@ impl<T> Tab<T> for TabMonado<T> {
|
||||||
self.tasks.push(Task::ProcessListRefresh);
|
self.tasks.push(Task::ProcessListRefresh);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Subtab::GeneralSettings(_) => {}
|
||||||
Subtab::DebugTimings(timings) => {
|
Subtab::DebugTimings(timings) => {
|
||||||
timings.update(&self.tasks, data, frontend)?;
|
timings.update(&self.tasks, data, frontend)?;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue