[nanoleaf] add LONG_PRESSED tap detection (#13865)

* [nanoleaf] add LONG_PRESSED tap detection

Signed-off-by: Stefan Höhn <stefan.hoehn@nfon.com>
pull/13856/head
stefan-hoehn 2022-12-07 05:49:04 +01:00 committed by GitHub
parent 35f416da9a
commit 4c93125723
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 5 deletions

View File

@ -156,10 +156,10 @@ The controller bridge has the following channels:
A lightpanel thing has the following channels:
| Channel | Type | Description | Read Only |
|---------------------|-----------|----------------------------------------------------------------------------------------------------------|-----------|
| color | Color | Color of the individual light panel | No |
| tap | Trigger | [Canvas / Shapes Only] Sends events of gestures. SHORT_PRESSED and DOUBLE_PRESSED events are supported. | Yes |
| Channel | Type | Description | Read Only |
|---------------------|-----------|-----------------------------------------------------------------------------------------------------------------------|-----------|
| color | Color | Color of the individual light panel | No |
| tap | Trigger | [Canvas / Shapes Only] Sends events of gestures. SHORT_PRESSED, LONG_PRESSED and DOUBLE_PRESSED events are supported. | Yes |
The color channels support full color control with hue, saturation and brightness values.
For example, brightness of *all* panels at once can be controlled by defining a dimmer item for the color channel of the *controller thing*.

View File

@ -270,7 +270,7 @@ public class NanoleafPanelHandler extends BaseThingHandler {
/**
* Apply the gesture to the panel
*
* @param gesture Only 0=single tap and 1=double tap are supported
* @param gesture Only 0=single tap, 1=double tap and 6=long press are supported
*/
public void updatePanelGesture(int gesture) {
switch (gesture) {
@ -280,6 +280,9 @@ public class NanoleafPanelHandler extends BaseThingHandler {
case 1:
triggerChannel(CHANNEL_PANEL_TAP, CommonTriggerEvents.DOUBLE_PRESSED);
break;
case 6:
triggerChannel(CHANNEL_PANEL_TAP, CommonTriggerEvents.LONG_PRESSED);
break;
}
}