From fa094d0cb0f79693ad04ecba3b766611757fa651 Mon Sep 17 00:00:00 2001 From: Nyra Date: Mon, 28 Sep 2026 02:44:13 +0000 Subject: [PATCH 1/3] Roku page: volume keys, and the arrows in the keyboard's blue The remote page's playback row becomes the volume row: Rewind/Play/Forward are gone from res/xml/roku.xml and its three slots hold Volume Up, Volume Down and Volume Mute. The page keeps six rows and the same heights, and the full-width 'Keyboard' return key still ends it. Volume is three new events (ROKU_VOLUP/ROKU_VOLDOWN/ROKU_VOLMUTE) appended to KeyValue.Event, wired through the same RokuRemote.press() path the rest of the page uses - one case group in Keyboard2.handle_event_key, three cases in RokuRemote.ecpKey() - and mapped to the ECP names Harley's own web remote posts: VolumeUp, VolumeDown, VolumeMute. No new endpoint, no second code path, and the threading, timeouts, fail-soft and lit-state behaviour are untouched. roku_rewind / roku_play / roku_forward keep their handling in KeyValue.java, RokuRemote.java and Keyboard2.java, deliberately: nothing references them now, so putting the playback row back is a one-line XML change and not a rebuild. The four D-pad arrows are drawn in the theme's new colorRokuArrow (#00E5FF, the same cyan the space bar's io-stall line and the DeepSeek off-peak indicator already use). They are event keys and every event key carries FLAG_SECONDARY, which dimmed them to secondaryLabelColor - a muted pink on the Orchid theme that reads as 'disabled' on the one page where they are the main controls. Keyboard2View.labelColor() matches them by EVENT (ROKU_UP/DOWN/LEFT/RIGHT, guarded by getKind()), never by glyph: 0xE005-0xE008 are ordinary arrow glyphs that other pages and the default layouts also use and they must not change. A press still takes the pressed colour, and RokuRemote.isLit() still overrides for the sent acknowledgement. The volume keys are not direction keys and keep their normal colour. No auxiliary keys, no corner labels, no badge or badge-brightness change. --- res/values/themes.xml | 7 +++++++ res/xml/roku.xml | 6 +++--- srcs/juloo.keyboard2/KeyValue.java | 8 ++++++++ srcs/juloo.keyboard2/Keyboard2.java | 1 + srcs/juloo.keyboard2/Keyboard2View.java | 25 +++++++++++++++++++++++++ srcs/juloo.keyboard2/RokuRemote.java | 5 +++++ srcs/juloo.keyboard2/Theme.java | 3 +++ 7 files changed, 52 insertions(+), 3 deletions(-) diff --git a/res/values/themes.xml b/res/values/themes.xml index b336ffb..49928d7 100644 --- a/res/values/themes.xml +++ b/res/values/themes.xml @@ -15,6 +15,12 @@ + + @@ -61,6 +67,7 @@ 1px ?attr/colorKeyboard ?attr/keyBorderRadius + #00E5FF