burger menu + fix crash after removing set
This commit is contained in:
@@ -163,6 +163,15 @@
|
||||
</Button>
|
||||
</template>
|
||||
|
||||
<blueprint name="menu_burger">
|
||||
<context_menu >
|
||||
<cell translation="BAR.ADD_MIRROR" _press="::NewMirror" />
|
||||
<cell translation="BAR.EDIT_MODE_TOGGLE" _press="::EditToggle" />
|
||||
<cell translation="BAR.ADD_NEW_SET" _press="::AddSet" />
|
||||
<cell translation="BAR.DELETE_CURRENT_SET" _press="::DeleteSet" />
|
||||
</context_menu>
|
||||
</blueprint>
|
||||
|
||||
<template name="Set">
|
||||
<Button macro="button_style" id="set_${idx}" _press="::SetSwitch ${idx}" tooltip="WATCH.SWITCH_TO_SET" tooltip_side="bottom">
|
||||
<sprite width="38" height="38" color="~text_color" src_builtin="watch/set2.svg" />
|
||||
@@ -194,6 +203,12 @@
|
||||
</div>
|
||||
</div>
|
||||
<div id="tray_root" flex_direction="row" gap="10">
|
||||
<Button macro="button_style" _press="::ContextMenuOpen menu_burger">
|
||||
<sprite width="38" height="38" color="~text_color" src_builtin="keyboard/burger.svg" />
|
||||
</Button>
|
||||
|
||||
<VerticalSeparator />
|
||||
|
||||
<div id="sets_root" flex_direction="row" gap="6">
|
||||
<Set idx="0" display="1" />
|
||||
<Set idx="1" display="2" />
|
||||
|
||||
1
wlx-overlay-s/src/assets/keyboard/burger.svg
Symbolic link
1
wlx-overlay-s/src/assets/keyboard/burger.svg
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../../dash-frontend/assets/dashboard/burger.svg
|
||||
@@ -1,10 +1,11 @@
|
||||
{
|
||||
"ANCHOR": {
|
||||
"CENTER": "Zentrum"
|
||||
},
|
||||
"BAR": {
|
||||
"ADD_MIRROR": "Neuen Spiegel-Overlay hinzufügen"
|
||||
},
|
||||
"WATCH": {
|
||||
"MIRROR": "Neuen Spiegel-Overlay hinzufügen",
|
||||
"CLEANUP_MIRRORS": "Spiegel entfernen,\ndie derzeit nicht sichtbar sind",
|
||||
"RECENTER": "Spielbereich neu zentrieren",
|
||||
"FIX_FLOOR": "Bodenhöhe korrigieren",
|
||||
"EDIT_MODE_EXPLANATION": "Overlays können nun einzeln verschoben und angepasst werden.\nOverlays für den aktuellen Satz umschalten:",
|
||||
|
||||
@@ -3,6 +3,10 @@
|
||||
"CENTER": "Center"
|
||||
},
|
||||
"BAR": {
|
||||
"ADD_MIRROR": "Add a new mirror overlay",
|
||||
"EDIT_MODE_TOGGLE": "Toggle edit mode",
|
||||
"ADD_NEW_SET": "Add new set",
|
||||
"DELETE_CURRENT_SET": "Delete current set",
|
||||
"TOGGLE_VISIBILITY": "Toggle visibility",
|
||||
"RESET_POSITION": "Reset position",
|
||||
"RELOAD_FROM_DISK": "Reload XML from disk",
|
||||
@@ -12,12 +16,6 @@
|
||||
},
|
||||
"DEFAULT": "Default",
|
||||
"DISABLED": "Disabled",
|
||||
"OVERLAY_TOOLTIP": {
|
||||
"SCREEN": "Screen {}",
|
||||
"MIRROR": "Mirror {}",
|
||||
"PANEL": "Panel {}",
|
||||
"APP": "{}"
|
||||
},
|
||||
"EDIT_MODE": {
|
||||
"ADJUST_CURVATURE": "Adjust curvature",
|
||||
"ALPHA_BLEND_MODE": "Alpha blend mode",
|
||||
@@ -75,6 +73,8 @@
|
||||
"TOAST": {
|
||||
"DEFAULT_TITLE": "Notification",
|
||||
"ERROR": "Error",
|
||||
"CANNOT_ADD_SET": "Cannot add set!",
|
||||
"MAXIMUM_SETS_REACHED": "Maximum number of sets reached.",
|
||||
"CANNOT_REMOVE_SET": "Cannot remove set!",
|
||||
"NO_SET_SELECTED": "No set is selected.",
|
||||
"LAST_EXISTING_SET": "This is the last existing set.",
|
||||
@@ -91,7 +91,6 @@
|
||||
"EDIT_MODE_EXPLANATION": "Overlays can now be moved and tuned individually.\nControl which overlays are visible on this set:",
|
||||
"FIX_FLOOR": "Fix floor level",
|
||||
"LONG_PRESS_TO_DELETE_SET": "Hold to delete",
|
||||
"MIRROR": "Add a new mirror overlay",
|
||||
"RECENTER": "Recenter playspace",
|
||||
"SWITCH_TO_SET": "Switch to set",
|
||||
"TOGGLE_FOR_CURRENT_SET": "Toggle for current set"
|
||||
|
||||
@@ -2,9 +2,10 @@
|
||||
"ANCHOR": {
|
||||
"CENTER": "Centro"
|
||||
},
|
||||
"BAR": {
|
||||
"ADD_MIRROR": "Agregar una nueva superposición de espejo"
|
||||
},
|
||||
"WATCH": {
|
||||
"MIRROR": "Agregar una nueva superposición de espejo",
|
||||
"CLEANUP_MIRRORS": "Eliminar espejos que no están actualmente visibles",
|
||||
"RECENTER": "Recentrar el área de juego",
|
||||
"FIX_FLOOR": "Ajustar la altura del piso",
|
||||
"EDIT_MODE_EXPLANATION": "Ahora las superposiciones se pueden mover y ajustar individualmente.\nAlternar superposiciones para el conjunto actual:",
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
{
|
||||
"ANCHOR": {
|
||||
"CENTER": "センター"
|
||||
},
|
||||
"BAR": {
|
||||
"ADD_MIRROR": "新しいミラーを追加"
|
||||
},
|
||||
"WATCH": {
|
||||
"MIRROR": "新しいミラーオーバーレイを追加",
|
||||
"CLEANUP_MIRRORS": "現在表示されていないミラーを削除",
|
||||
"RECENTER": "プレイスペースをリセンター",
|
||||
"FIX_FLOOR": "床の高さを修正",
|
||||
"EDIT_MODE_EXPLANATION": "オーバーレイは個別に移動および調整できます。\n現在のセットのオーバーレイを切り替え:",
|
||||
@@ -82,4 +83,4 @@
|
||||
"FIXING_FLOOR": "5秒後にフロアを固定します...",
|
||||
"ONE_CONTROLLER_ON_FLOOR": "コントローラーを床に置いてください!"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
{
|
||||
"ANCHOR": {
|
||||
"CENTER": "Centrum"
|
||||
},
|
||||
"BAR": {
|
||||
"ADD_MIRROR": "Dodaj nowy widok lustrzany"
|
||||
},
|
||||
"WATCH": {
|
||||
"MIRROR": "Dodaj nowy widok lustrzany",
|
||||
"CLEANUP_MIRRORS": "Usuń widoki lustrzane, które\nnie są obecnie widoczne",
|
||||
"RECENTER": "Wyśrodkuj przestrzeń gry",
|
||||
"FIX_FLOOR": "Napraw wysokość podłogi",
|
||||
"EDIT_MODE_EXPLANATION": "Nakładki można teraz przesuwać i dostosowywać indywidualnie.\nPrzełącz nakładki dla bieżącego zestawu:",
|
||||
@@ -82,4 +83,4 @@
|
||||
"FIXING_FLOOR": "Naprawianie podłogi za 5 sekund...",
|
||||
"ONE_CONTROLLER_ON_FLOOR": "Umieść jeden kontroler na podłodze!"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -234,8 +234,23 @@ where
|
||||
}
|
||||
}
|
||||
OverlayTask::AddSet => {
|
||||
let new_idx = self.sets.len();
|
||||
if new_idx >= MAX_OVERLAY_SETS {
|
||||
Toast::new(
|
||||
ToastTopic::System,
|
||||
"TOAST.CANNOT_ADD_SET".into(),
|
||||
"TOAST.MAXIMUM_SETS_REACHED".into(),
|
||||
)
|
||||
.with_timeout(5.)
|
||||
.with_sound(true)
|
||||
.submit(app);
|
||||
return Ok(());
|
||||
}
|
||||
self.sets.push(OverlayWindowSet::default());
|
||||
self.switch_to_set(app, Some(new_idx), false);
|
||||
self.overlays[self.keyboard_id].config.activate(app);
|
||||
self.sets_changed(app);
|
||||
self.visible_overlays_changed(app)?;
|
||||
}
|
||||
OverlayTask::DeleteActiveSet => {
|
||||
let Some(set) = self.current_set else {
|
||||
@@ -264,6 +279,7 @@ where
|
||||
|
||||
self.switch_to_set(app, None, false);
|
||||
self.sets.remove(set);
|
||||
self.restore_set = 0;
|
||||
self.sets_changed(app);
|
||||
}
|
||||
OverlayTask::SettingsChanged => {
|
||||
|
||||
Reference in New Issue
Block a user