- Posted on
Fri Nov 29, 2013 2:53 pm
-
kennybroh
offline
-
- Posts: 531
- Joined: Dec 13, 2009
- Location: Baltimore
I know I've asked about this before and was told this was somewhere on the enhancement list, but I continue to think that one of the few significant shortcomings in the Indigo Touch/web user interface is the absence of the ability to input data or make selections from lists. I was reminded of this again when I implemented the Sonos plugin.
I have a number of Pandora channels and as far as I can tell the only way to select one of them from within Indigo is to hard code an action for each channel. That would be incredibly cumbersome, especially since i have a number of zone players and it appears that I would either have to set up separate actions for each channel for each player, or write code to pick up the specific player and then select the channel. If the UI allowed user text entry or selections from lists, I could manage my entire Sonos system from a single control page if I wanted-- select the player, either enter the name of an artist or song, or select the channel from a list. Also, a text entry field would be an easy and useful way to use the Sonos system to make announcements.
Those are just a couple of examples, but they graphically illustrate the problem and the benefit. Text entry and list selection is so ubiquitous in virtually every other iPhone app and on every other web page it's obviously not a technical UI issue, so I don't understand why it has been such a low priority. Is there some unusual issue with the way data is handled in Indigo that makes this that much of a problem? The Indigo environment itself loads many of the lists for defining devices, actions, etc., so the data is obviously readily available to the server, and I have no doubt third-party developers could dramatically expand the functionality of their plug-ins with this capability.
From my simplistic point of view this would not require any structural change to the current design paradigm for control pages. If the choice for "Display" were device state or variable value, an "Allow user entry" check-box would be enabled for "As text" in addition to the font selections. If no client action were specified it would simply be a text entry field, or if "Select from list" was the client action additional choices would be available to specify the source of the list to display when that object is clicked. If it were a list from a plug in you'd select the plugin and list, if it were a range, you'd specify the upper and lower range, if it were a custom list you could specify the entries, and if you enhanced variables to hold multiple values it could be a variable. If the "Allow user entry" check-box were not checked the user would be limited to the choices in the list; otherwise they could enter a value or select one from the list. Finally, a server action could set the new value or do other things with it.
I'm sure you've thought of all of this and this is just what occurs to me as something easily incorporated into what exists today. I'm sure you will implement it properly, so you can ignore all of my suggestions, but I really hope it is something you will do soon.
Thanks for a great product; I'd just like to see it get even better.