Merge branch 'main' into rename-service-to-action

Signed-off-by: Joseph Abbey <me@josephabbey.dev>
This commit is contained in:
Joseph Abbey
2025-11-01 21:23:08 +00:00
committed by GitHub
10 changed files with 66 additions and 23 deletions

View File

@@ -24,10 +24,13 @@ class HomeAssistantConfirmation extends WatchUi.Confirmation {
//! Class Constructor
//
function initialize() {
WatchUi.Confirmation.initialize(WatchUi.loadResource($.Rez.Strings.Confirm) as Lang.String);
function initialize(message as Lang.String?) {
if (message == null) {
WatchUi.Confirmation.initialize(WatchUi.loadResource($.Rez.Strings.Confirm) as Lang.String);
} else {
WatchUi.Confirmation.initialize(message);
}
}
}
//! Delegate to respond to the confirmation request.

View File

@@ -23,7 +23,7 @@ using Toybox.Graphics;
class HomeAssistantNumericMenuItem extends HomeAssistantMenuItem {
private var mHomeAssistantService as HomeAssistantService?;
private var mAction as Lang.String?;
private var mConfirm as Lang.Boolean;
private var mConfirm as Lang.Boolean or Lang.String or Null;
private var mExit as Lang.Boolean;
private var mPin as Lang.Boolean;
private var mData as Lang.Dictionary?;
@@ -128,7 +128,12 @@ class HomeAssistantNumericMenuItem extends HomeAssistantMenuItem {
WatchUi.SLIDE_LEFT
);
} else {
var view = new HomeAssistantConfirmation();
var view;
if (mConfirm instanceof Lang.String) {
view = new HomeAssistantConfirmation(mConfirm as Lang.String?);
} else {
view = new HomeAssistantConfirmation(null);
}
WatchUi.pushView(
view,
new HomeAssistantConfirmationDelegate({

View File

@@ -22,7 +22,7 @@ using Toybox.Graphics;
class HomeAssistantTapMenuItem extends HomeAssistantMenuItem {
private var mHomeAssistantService as HomeAssistantService;
private var mAction as Lang.String?;
private var mConfirm as Lang.Boolean;
private var mConfirm as Lang.Boolean or Lang.String or Null;
private var mExit as Lang.Boolean;
private var mPin as Lang.Boolean;
private var mData as Lang.Dictionary?;
@@ -95,8 +95,7 @@ class HomeAssistantTapMenuItem extends HomeAssistantMenuItem {
if ((! System.getDeviceSettings().phoneConnected ||
! System.getDeviceSettings().connectionAvailable) &&
Settings.getWifiLteExecutionEnabled()) {
var dialogMsg = WatchUi.loadResource($.Rez.Strings.WifiLtePrompt) as Lang.String;
var dialog = new WatchUi.Confirmation(dialogMsg);
var dialog = new WatchUi.Confirmation(WatchUi.loadResource($.Rez.Strings.WifiLtePrompt) as Lang.String);
WatchUi.pushView(
dialog,
new WifiLteExecutionConfirmDelegate({
@@ -108,7 +107,12 @@ class HomeAssistantTapMenuItem extends HomeAssistantMenuItem {
WatchUi.SLIDE_LEFT
);
} else {
var view = new HomeAssistantConfirmation();
var view;
if (mConfirm instanceof Lang.String) {
view = new HomeAssistantConfirmation(mConfirm as Lang.String?);
} else {
view = new HomeAssistantConfirmation(null);
}
WatchUi.pushView(
view,
new HomeAssistantConfirmationDelegate({

View File

@@ -25,7 +25,7 @@ class HomeAssistantToggleMenuItem extends WatchUi.ToggleMenuItem {
private var mData as Lang.Dictionary;
private var mTemplate as Lang.String?;
private var mExit as Lang.Boolean;
private var mConfirm as Lang.Boolean;
private var mConfirm as Lang.Boolean or Lang.String or Null;
private var mPin as Lang.Boolean;
private var mHasVibrate as Lang.Boolean = false;
@@ -324,7 +324,12 @@ class HomeAssistantToggleMenuItem extends WatchUi.ToggleMenuItem {
Settings.getWifiLteExecutionEnabled()) {
wifiPrompt(b);
} else {
var confirmationView = new HomeAssistantConfirmation();
var confirmationView;
if (mConfirm instanceof Lang.String) {
confirmationView = new HomeAssistantConfirmation(mConfirm as Lang.String?);
} else {
confirmationView = new HomeAssistantConfirmation(null);
}
WatchUi.pushView(
confirmationView,
new HomeAssistantConfirmationDelegate({

View File

@@ -48,7 +48,7 @@ class HomeAssistantView extends WatchUi.Menu2 {
var entity = items[i].get("entity") as Lang.String?;
var tap_action = items[i].get("tap_action") as Lang.Dictionary?;
var action = items[i].get("service") as Lang.String?; // Deprecated schema
var confirm = false as Lang.Boolean?;
var confirm = false as Lang.Boolean or Lang.String or Null;
var pin = false as Lang.Boolean?;
var data = null as Lang.Dictionary?;
var enabled = true as Lang.Boolean?;