Manage Dashboard Dynamic Dropdown

Hi all,

I've created a dynamic dropdown which gets ~7 updates per second.
Because of the high refresh rate with additions/subtraction of options in the dropdown, it is difficult to scroll and use in realtime.

I would like to be able to pause the UI dropdown when opened (first click to open/see options list, second click to select an option).

I have an idea for pausing the UI dropdown though it requires some way to know when the first click is made.

Does anyone know if getting a message on first click is possible?

Other strategies using additional UI components are known, but keeping application as simply as possible is the priority.

Simplified photo of first and second clicks on UI dropdown
Dropdown Forum

Best Regards

I have no idea how this could possibly work. You need to stop updating it to select something. If during that the list changes behind the scenes (eg an option goes away) - how would the user know. This seems very odd to me.

Hello,

I hope the image shows the intended logic in very basic, loosely defined terms.

In terms of user losing options... The whole dropdown options list will update whenever a change occurs. This could be adding of a new option, or update to existing one. Removal of items is something that can only happen by user UI interaction, and items are scheduled to be removed on next message so that's not a concern ("Remove Inactive Triggers" is a button, and a Switch Node also exists to basically auto-button-push).

Newer messages will carry the updates of previous messages.

In short, I have a system that provides many messages in real time which made the UI Dropdown near impossible to use. The sought after solution is to temporarily pause the dropdown only when a user is searching through the options as this is thought to be the simplist end-user solution while maintaining a high refreshrate when not changing Dashboard nodes.

My DuckTape solution so far is to limit the rate of msg.option to UI dropdown and drop intermediary messages.

Can you please help determine if there is a better compromise to dropdown usability, end-user simplicity and maintain high dropdown refreashrate?

I made an example flow which more or less shows the state of Dropdown UI with the many updates and no ducktape fixes.

[{"id":"b20a695b.ad36e8","type":"tab","label":"Flow 1","disabled":false,"info":""},{"id":"58708037.6eea3","type":"inject","z":"b20a695b.ad36e8","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":".008","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":220,"y":200,"wires":[["ab6ee87.bc0d118"]]},{"id":"ab6ee87.bc0d118","type":"join","z":"b20a695b.ad36e8","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"","count":"20","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":390,"y":200,"wires":[["e245c24d.671ee"]]},{"id":"6ce6f32f.b1c0bc","type":"ui_dropdown","z":"b20a695b.ad36e8","name":"","label":"","tooltip":"","place":"Select option","group":"b055fa85.83d6e","order":0,"width":0,"height":0,"passthru":true,"multiple":false,"options":[{"label":"","value":"","type":"str"}],"payload":"","topic":"topic","topicType":"msg","x":680,"y":200,"wires":[[]]},{"id":"e245c24d.671ee","type":"function","z":"b20a695b.ad36e8","name":"","func":"msg.options = msg.payload;\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":540,"y":200,"wires":[["6ce6f32f.b1c0bc"]]},{"id":"b055fa85.83d6e","type":"ui_group","name":"Default","tab":"8f03e639.85956","order":1,"disp":true,"width":"6","collapse":false},{"id":"8f03e639.85956","type":"ui_tab","name":"Home","icon":"dashboard","disabled":false,"hidden":false}]

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.