From ae101d1b88118f4f98fafbe639f3ce8ef0a1a4ad Mon Sep 17 00:00:00 2001 From: Christophe Vila Date: Sat, 4 Jul 2026 11:24:29 +0200 Subject: [PATCH] feat: swipe to score/undo, tap to set server / new match Co-Authored-By: Claude Opus 4.8 (1M context) --- source/garmin-padelDelegate.mc | 29 ++++++++++++++++++++++++++--- source/garmin-padelMenuDelegate.mc | 19 ------------------- 2 files changed, 26 insertions(+), 22 deletions(-) delete mode 100644 source/garmin-padelMenuDelegate.mc diff --git a/source/garmin-padelDelegate.mc b/source/garmin-padelDelegate.mc index 68e488c..43735c0 100644 --- a/source/garmin-padelDelegate.mc +++ b/source/garmin-padelDelegate.mc @@ -3,13 +3,36 @@ import Toybox.WatchUi; class garmin_padelDelegate extends WatchUi.BehaviorDelegate { - function initialize() { + public function initialize() { BehaviorDelegate.initialize(); } - function onMenu() as Boolean { - WatchUi.pushView(new Rez.Menus.MainMenu(), new garmin_padelMenuDelegate(), WatchUi.SLIDE_UP); + public function onSwipe(swipeEvent as WatchUi.SwipeEvent) as Boolean { + var m = getApp().getMatch(); + var dir = swipeEvent.getDirection(); + if (dir == WatchUi.SWIPE_UP) { + m.pointTo(US); + } else if (dir == WatchUi.SWIPE_DOWN) { + m.pointTo(THEM); + } else if (dir == WatchUi.SWIPE_LEFT) { + m.undo(); + } else { + return false; + } + WatchUi.requestUpdate(); return true; } + public function onTap(clickEvent as WatchUi.ClickEvent) as Boolean { + var m = getApp().getMatch(); + if (m.isMatchOver()) { + getApp().resetMatch(); + } else if (m.canSetServer()) { + m.toggleStartingServer(); + } else { + return false; + } + WatchUi.requestUpdate(); + return true; + } } \ No newline at end of file diff --git a/source/garmin-padelMenuDelegate.mc b/source/garmin-padelMenuDelegate.mc deleted file mode 100644 index 931d197..0000000 --- a/source/garmin-padelMenuDelegate.mc +++ /dev/null @@ -1,19 +0,0 @@ -import Toybox.Lang; -import Toybox.System; -import Toybox.WatchUi; - -class garmin_padelMenuDelegate extends WatchUi.MenuInputDelegate { - - function initialize() { - MenuInputDelegate.initialize(); - } - - function onMenuItem(item as Symbol) as Void { - if (item == :item_1) { - System.println("item 1"); - } else if (item == :item_2) { - System.println("item 2"); - } - } - -} \ No newline at end of file