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