You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
prioritize custom action entity field for unified remote call target, add enter and delete default keys to all platforms that support them, add mousepad info to README
- Keyboard and search dialog actions for most platforms.
34
35
-[Template](#a-note-on-templating) support for almost all fields using nunjucks.
35
36
- Toggleable haptics.
36
-
- Remappable touchpad with [multi-touch](#touchpad-actions) gesture support.
37
+
- Remappable touchpad and mousepad with [multi-touch](#touchpad-actions) gesture support.
37
38
- Remappable slider with vertical orientation support.
38
39
- User configurable remote [layout](#layout).
39
40
- Icons and labels for all elements.
@@ -64,10 +65,15 @@ This card supports several media platforms with default key and source lists. Fo
64
65
|[Roku](https://www.home-assistant.io/integrations/roku/)| Default keys | Default sources and slider | Remote for keyboard, media player for search (provide one for keyboard ID and the others in their fields) |
65
66
|[LG webOS](https://www.home-assistant.io/integrations/webostv/)| NA | Default keys, sources, and slider | Media Player |
66
67
|[Kodi](https://www.home-assistant.io/integrations/kodi/)| NA | Default keys, sources, and slider | Media player |
68
+
|[Unified Remote](https://github.com/DaviPtrs/hass-unified-remote)| NA (see below) | NA (see below) | NA (see below) |
67
69
|[Apple TV](https://www.home-assistant.io/integrations/apple_tv)| Default keys | Default sources and slider | NA |
68
70
|[Samsung TV](https://www.home-assistant.io/integrations/samsungtv/)| Default keys | Default sources (requires the [SamsungTV Smart Component custom integration](https://github.com/ollo69/ha-samsungtv-smart)) and slider | NA |
69
71
|[Jellyfin](https://www.home-assistant.io/integrations/jellyfin/)| Default keys | Play/Pause and slider | NA |
70
72
73
+
### Unified Remote Setup
74
+
75
+
Unlike most platforms, Unified Remote relies entirely on [a custom integration](https://github.com/DaviPtrs/hass-unified-remote). This custom integration does not create any entities, but does provide us with the action `unified_remote.call`, which can be used to call any Unified Remote API. It requires that you install the integration and setup your computer hosts [as described here in its README](https://github.com/DaviPtrs/hass-unified-remote?tab=readme-ov-file#home-assistant). You can then use the host name or IP address in the remote and keyboard ID fields in the configuration UI (make sure it does not autofill with an actual entity, you may have to fix it with the code editor).
76
+
71
77
## Action Timings
72
78
73
79
Double tap and hold actions have user adjustable timings to change how they are triggered. These values can be set globally in the general tab or for each custom action.
@@ -171,11 +177,12 @@ The remote layout is defined using a series of nested arrays. The lowest level o
171
177
- search
172
178
```
173
179
174
-
The default keys and sources lists for your selected platform are displayed below the layout code editor. If you have configured any custom actions, they will be displayed above this. You can use this as reference as you create your remote, or drag and drop entries from these lists to the editor. The default keys list also includes the default touchpad and slider, along with some special elements for button pads and layouts. Not all special elements are available for all platforms.
180
+
The default keys and sources lists for your selected platform are displayed below the layout code editor. If you have configured any custom actions, they will be displayed above this. You can use this as reference as you create your remote, or drag and drop entries from these lists to the editor. The default keys list also includes the default touchpad, mousepad, and slider, along with some special elements for button pads and layouts. Not all special elements are available for all platforms.
| touchpad | touchpad | A touchpad for navigation. |
185
+
| mousepad | mousepad | A mousepad for mouse movement and scrolling. **NOTE**: Mousepad support is dependent on the platform support mouse control via its Home Assistant integration. |
179
186
| slider | slider | A slider that controls the volume of the entity defined by `media_player_id`. **NOTE**: Volume slider support is dependent on the media player supporting the `media_player.volume_set` action. |
180
187
| volume_buttons | button rows | Shorthand to generate a set of volume down, volume mute, and volume up buttons in a row or column. |
181
188
| navigation_buttons | button rows | Shorthand to generate a set of up, down, left, right, and center buttons across three rows within a column. |
@@ -223,11 +230,11 @@ Sliders have some additional general options. They have a range `Min` and `Max`
223
230
224
231
Sliders will wait one second before updating their internal values from Home Assistant to prevent it from bouncing between the old and new values. This time can be changed by setting `Update after action delay`, which defaults to 1000ms
225
232
226
-
### Touchpad Tabs
233
+
### Touchpad and Mousepad Tabs
227
234
228
235
<img src="https://raw.githubusercontent.com/Nerwyn/android-tv-card/main/assets/editor_actions_general_options_touchpad.png" alt="editor actions general options touchpad" width="600"/>
229
236
230
-
Touchpads have five tabs at the top of their actions page for each direction and it's center. Only the center tab has general options as these apply to the entire touchpad remote element. Each direction and center have their own options for appearance and interactions as described below.
237
+
Touchpads and mousepads have five tabs at the top of their actions page for each direction and it's center. Only the center tab has general options as these apply to the entire touchpad remote element. Each direction and center have their own options for appearance and interactions (touchpad only) as described below.
231
238
232
239
## Appearance
233
240
@@ -270,9 +277,9 @@ Sliders have an additional `Vertical` toggle which rotates it 90 degrees to make
270
277
}
271
278
```
272
279
273
-
### Multiple Icons and Labels for Touchpads
280
+
### Multiple Icons and Labels for Touchpads and Mousepads
274
281
275
-
Touchpads can have a separate icon and label for the center and each direction. You can also style each of these icons and labels independently using their own `CSS Styles` fields. General touchpad styles such as those for `toucharea` like touchpad height should go in the center tab styles.
282
+
Touchpads and mousepads can have a separate icon and label for the center and each direction. You can also style each of these icons and labels independently using their own `CSS Styles` fields. General touchpad and mousepad styles such as those for `toucharea` (mousepad also uses this element name) like height should go in the center tab styles.
276
283
277
284
### A Note on Templating
278
285
@@ -282,7 +289,7 @@ You can include the current value of a remote element and it's units by using th
282
289
283
290
## Interactions
284
291
285
-
There are three traditional ways to trigger an action - tap, double tap, and hold. Buttons and touchpad center support all three, touchpad swipes only support tap and hold actions, and sliders only support tap actions. Defining a double tap action that is not `none` introduces a 200ms delay to single tap actions.
292
+
There are three traditional ways to trigger an action - tap, double tap, and hold. Buttons, touch/mousepad center support all three, touchpad (not mousepad) swipes only support tap and hold actions, and sliders only support tap actions. Defining a double tap action that is not `none` introduces a 200ms delay to single tap actions.
@@ -341,6 +348,14 @@ The touchpad's center acts like a button, with support for the same actions. The
341
348
342
349
Touchpads also support multi-touch mode, which fires alternate actions when more than one finger is used with it. This mode is disabled by default but can be enabled by setting a touchpad's multi-touch actions to something other than `Nothing`. Multi-touch mode supports center tap, double tap, and hold actions, and direction swipe and hold actions.
343
350
351
+
### Mousepad Actions
352
+
353
+
TODO config UI and image
354
+
355
+
Similar to the touchpad, the mousepad's center acts like a button with support for tap, double tap, and hold actions, but it does not support momentary mode. The center also supports multi-touch mode. This mode is enabled by default.
356
+
357
+
Instead of seprate direction actions, mousepads support a mouse action. This action is called whenever movement is detected on the mousepad, and is meant to be used with mouse movement actions like Unified Remote's `Core.Input MoveBy`. The mouse X and Y movement can be added to actions using templates using `deltaX` and `deltaY`. The mouse action can also be used in multi-touch mode.
358
+
344
359
### Keyboard, Textbox, and Search
345
360
346
361
This card supports sending text to the following platforms:
@@ -349,9 +364,11 @@ This card supports sending text to the following platforms:
349
364
- Sony BRAVIA
350
365
- Fire TV
351
366
- Roku
367
+
- LG webOS
352
368
- Kodi
369
+
- Unified Remote (PC, Mac, Linux)
353
370
354
-
If the user defined general platform is listed above, then any action set to a keyboard action (that has autofill enabled) will inherit it. Otherwise it will default to `Android TV`. Keyboard support for more platforms can be added if there is a way to do so through their Home Assistant (or possibly community made) integrations.
371
+
If the user defined general platform is listed above, then any action set to a keyboard action (that has autofill enabled) will inherit it. Otherwise it will default to `Android TV`. Keyboard support for more platforms can be added if there is a way to do so through their Home Assistant (or community made) integrations.
355
372
356
373
When you use any keyboard action, a dialog will open that can be typed into.
357
374
@@ -381,6 +398,8 @@ Send text to your supported media platform in bulk using the action or default b
381
398
382
399
#### Search - Global Search
383
400
401
+
Not supported by the platforms LG webOS or Unified Remote.
402
+
384
403
Send a global search query to your media platform using the action or default button `search`. Like the bulk entry method, the dialog will not send any information until you tap the search button. This method cannot be used to enter text into currently visible text fields.
0 commit comments