widget gallery and compositor test bench
feat: resolve page navigation through input.kdl's cce-test-interface domain
page_1/page_2/page_3 (ctrl+1/2/3).
Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01PXSsCppeDFmSRRM5NAug5a
src/main.rs | 29 ++++++++++++++---------------
1 file changed, 14 insertions(+), 15 deletions(-)
diff --git a/src/main.rs b/src/main.rs
index 6005209..7ad3fcf 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -2431,21 +2431,20 @@ full screen background.",
if event.state == ElementState::Pressed {
let mut page_nav = false;
let mut selected = 0;
- if event.ctrl {
- match &event.logical_key {
- Key::Character(c) if c == "1" => {
- selected = 0;
- page_nav = true;
- }
- Key::Character(c) if c == "2" => {
- selected = 1;
- page_nav = true;
- }
- Key::Character(c) if c == "3" => {
- selected = 2;
- page_nav = true;
- }
- _ => {}
+ {
+ // input.kdl `cce-test-interface` domain
+ let m = |name: &str, default: &str| {
+ cce_ui::widget::match_key_shortcut(event, &cce_ui::input::app_chord(name, default))
+ };
+ if m("page_1", "ctrl+1") {
+ selected = 0;
+ page_nav = true;
+ } else if m("page_2", "ctrl+2") {
+ selected = 1;
+ page_nav = true;
+ } else if m("page_3", "ctrl+3") {
+ selected = 2;
+ page_nav = true;
}
}
if page_nav && !self.is_child {