bring back ToggleDashboard keybind support
This commit is contained in:
@@ -259,7 +259,10 @@ pub fn openvr_run(show_by_default: bool, headless: bool) -> Result<(), BackendEr
|
||||
.pointers
|
||||
.iter()
|
||||
.any(|p| p.now.toggle_dashboard && !p.before.toggle_dashboard)
|
||||
{ /* TODO */ }
|
||||
{
|
||||
app.tasks
|
||||
.enqueue(TaskType::Overlay(OverlayTask::ToggleDashboard));
|
||||
}
|
||||
|
||||
overlays
|
||||
.values_mut()
|
||||
|
||||
@@ -300,7 +300,10 @@ pub fn openxr_run(show_by_default: bool, headless: bool) -> Result<(), BackendEr
|
||||
.pointers
|
||||
.iter()
|
||||
.any(|p| p.now.toggle_dashboard && !p.before.toggle_dashboard)
|
||||
{ /* TODO */ }
|
||||
{
|
||||
app.tasks
|
||||
.enqueue(TaskType::Overlay(OverlayTask::ToggleDashboard));
|
||||
}
|
||||
|
||||
watch_fade(&mut app, overlays.mut_by_id(watch_id).unwrap()); // want panic
|
||||
if let Some(ref mut space_mover) = playspace {
|
||||
|
||||
@@ -85,6 +85,7 @@ pub enum OverlayTask {
|
||||
SoftToggleOverlay(OverlaySelector),
|
||||
DeleteActiveSet,
|
||||
ToggleEditMode,
|
||||
ToggleDashboard,
|
||||
ShowHide,
|
||||
CleanupMirrors,
|
||||
Modify(OverlaySelector, Box<ModifyOverlayTask>),
|
||||
|
||||
@@ -238,16 +238,8 @@ pub(super) fn setup_custom_button<S: 'static>(
|
||||
return Ok(EventResult::Pass);
|
||||
}
|
||||
|
||||
app.tasks.enqueue(TaskType::Overlay(OverlayTask::Modify(
|
||||
OverlaySelector::Name(DASH_NAME.into()),
|
||||
Box::new(move |app, owc| {
|
||||
if owc.active_state.is_none() {
|
||||
owc.activate(app);
|
||||
} else {
|
||||
owc.deactivate();
|
||||
}
|
||||
}),
|
||||
)));
|
||||
app.tasks
|
||||
.enqueue(TaskType::Overlay(OverlayTask::ToggleDashboard));
|
||||
Ok(EventResult::Consumed)
|
||||
}),
|
||||
"::SetToggle" => {
|
||||
|
||||
@@ -21,7 +21,7 @@ use crate::{
|
||||
overlays::{
|
||||
anchor::{create_anchor, create_grab_help},
|
||||
custom::create_custom,
|
||||
dashboard::create_dash_frontend,
|
||||
dashboard::{DASH_NAME, create_dash_frontend},
|
||||
edit::EditWrapperManager,
|
||||
keyboard::create_keyboard,
|
||||
screen::create_screens,
|
||||
@@ -201,17 +201,28 @@ where
|
||||
OverlayTask::ToggleEditMode => {
|
||||
self.set_edit_mode(!self.edit_mode, app)?;
|
||||
}
|
||||
OverlayTask::ToggleDashboard => {
|
||||
if let Some(overlay) =
|
||||
self.mut_by_selector(&OverlaySelector::Name(DASH_NAME.into()))
|
||||
{
|
||||
if overlay.config.active_state.is_none() {
|
||||
overlay.config.activate(app);
|
||||
} else {
|
||||
overlay.config.deactivate();
|
||||
}
|
||||
}
|
||||
}
|
||||
OverlayTask::AddSet => {
|
||||
self.sets.push(OverlayWindowSet::default());
|
||||
let len = self.sets.len();
|
||||
for id in [self.watch_id, self.keyboard_id] {
|
||||
self.mut_by_id(id).map(|o| {
|
||||
if let Some(o) = self.mut_by_id(id) {
|
||||
let _ = o
|
||||
.config
|
||||
.backend
|
||||
.notify(app, OverlayEventData::NumSetsChanged(len))
|
||||
.log_err("Could not notify NumSetsChanged");
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
OverlayTask::DeleteActiveSet => {
|
||||
@@ -243,13 +254,13 @@ where
|
||||
self.sets.remove(set);
|
||||
let len = self.sets.len();
|
||||
for id in [self.watch_id, self.keyboard_id] {
|
||||
self.mut_by_id(id).map(|o| {
|
||||
if let Some(o) = self.mut_by_id(id) {
|
||||
let _ = o
|
||||
.config
|
||||
.backend
|
||||
.notify(app, OverlayEventData::NumSetsChanged(len))
|
||||
.log_err("Could not notify NumSetsChanged");
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
OverlayTask::CleanupMirrors => {
|
||||
|
||||
Reference in New Issue
Block a user