fix(phone-connect): zh-Hans locale, aliasMap, box padding, volume, config data loss, interval, dead settings, slider, UI issues (#199)
* fix(phone-connect): zh-Hans locale, switcher aliasMap, box padding - Rename zh_hans -> zh-Hans (plugin.toml value, en.json key) and add the missing translations/zh-Hans.json. The zh_hans tag does not match BCP 47, so the framework's materialize step dropped the Chinese translation file and t() returned raw dot keys in the UI. - Add missing aliasMap definition in switcher() so the multi-device panel no longer errors on aliasMap[id]. Fixes #176. - Replace ui.box({padding=...}) with ui.row({padding=...}); box does not support the padding prop, causing ui-tree warnings on open. Supersedes #190 (which covers only the aliasMap fix). * fix(phone-connect): volume quoting, config data loss, interval, dead settings, slider, UI issues 1. media_set_volume: shellQuote the <int32> variant arg (was unquoted, shell treated < as redirect; same fix as media_seek). 2. onConfigChanged: track last-applied custom_image/device_alias values so unrelated config edits (e.g. language switch) no longer wipe a device's image/alias. Seed trackers at init so reload is safe too. 3. state_update_interval=0: return 3600000ms + guard in update() to skip auto-refresh, matching the '0 disables' description. 4. Remove 4 dead settings (show_ongoing_media, show_device_placeholder, scan_subdirectories, max_recent_images) declared but never read, plus orphan recent_images translation keys. 5. Media slider: freeze value during drag via per-device dragState so the 1s service refresh doesn't yank the slider back. Also fixes onDragEnd seeking to a stale seekPos. 6. Minor: runCli reports cli_failed not no_backend; browse uses runAsync not runInTerminal; charging color priority over low-battery; device name falls back to d.name; fix comment mismatches. * chore: bump version to 0.1.1 * fix: use lowercase zh-hans translation key to pass CI validation CI rejects uppercase in translation keys (zh-Hans). The translation key and label_key are now lowercase zh-hans, while the file name stays zh-Hans.json (required by the framework's materialize step) and the select value stays zh-Hans (used to build the file path).
This commit is contained in:
@@ -12,7 +12,7 @@
|
||||
|
||||
id = "icefish/phone-connect"
|
||||
name = "Phone Connect"
|
||||
version = "0.1.0"
|
||||
version = "0.1.1"
|
||||
plugin_api = 16
|
||||
author = "icefish"
|
||||
license = "MIT"
|
||||
@@ -66,7 +66,7 @@ description_key = "settings.language.description"
|
||||
default = "en"
|
||||
options = [
|
||||
{ value = "en", label_key = "settings.language.en" },
|
||||
{ value = "zh_hans", label_key = "settings.language.zh_hans" },
|
||||
{ value = "zh-Hans", label_key = "settings.language.zh-hans" },
|
||||
]
|
||||
|
||||
[[setting]]
|
||||
@@ -76,36 +76,6 @@ label_key = "settings.enable_clipboard_action.label"
|
||||
description_key = "settings.enable_clipboard_action.description"
|
||||
default = true
|
||||
|
||||
[[setting]]
|
||||
key = "show_ongoing_media"
|
||||
type = "bool"
|
||||
label_key = "settings.show_ongoing_media.label"
|
||||
description_key = "settings.show_ongoing_media.description"
|
||||
default = true
|
||||
|
||||
[[setting]]
|
||||
key = "show_device_placeholder"
|
||||
type = "bool"
|
||||
label_key = "settings.show_device_placeholder.label"
|
||||
description_key = "settings.show_device_placeholder.description"
|
||||
default = true
|
||||
|
||||
[[setting]]
|
||||
key = "scan_subdirectories"
|
||||
type = "bool"
|
||||
label_key = "settings.scan_subdirectories.label"
|
||||
description_key = "settings.scan_subdirectories.description"
|
||||
default = false
|
||||
|
||||
[[setting]]
|
||||
key = "max_recent_images"
|
||||
type = "int"
|
||||
label_key = "settings.max_recent_images.label"
|
||||
description_key = "settings.max_recent_images.description"
|
||||
default = 4
|
||||
min = 1
|
||||
max = 12
|
||||
|
||||
[[setting]]
|
||||
key = "panel_placement"
|
||||
type = "select"
|
||||
@@ -130,10 +100,10 @@ entry = "service.luau"
|
||||
id = "bar"
|
||||
entry = "widget.luau"
|
||||
|
||||
# Right-click opens the details panel via onRightClick in the script
|
||||
# (noctalia.togglePanel). We deliberately do not bind [widget.actions] here:
|
||||
# the panel-toggle action grammar for opening a *plugin* panel by id is not
|
||||
# documented, so we drive it from the script instead.
|
||||
# Right-click opens settings via onRightClick in the script
|
||||
# (noctalia.openSettings). Left-click toggles the details panel. We deliberately
|
||||
# do not bind [widget.actions] here: the panel-toggle action grammar for opening
|
||||
# a *plugin* panel by id is not documented, so we drive it from the script instead.
|
||||
|
||||
[[shortcut]]
|
||||
id = "tile"
|
||||
|
||||
Reference in New Issue
Block a user