-
-
Notifications
You must be signed in to change notification settings - Fork 696
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New widget type: double-button with visible state #1013
Comments
@denilsonsa Check out the PR I have open. The only thing I think I don't have that you have suggested here is a 3-button widget, though I have already created a media player widget that would cover your previous/playpause/next use case. |
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. |
I would suggest a more generic approach to widgets, rather than hard wiring individual designs. |
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. |
Thanks to the latest update with websockets support and instant status update, this kind of feature, or even more simple ideas like #402 would make even more sense. 😄 |
Is your feature request related to a problem? Please describe.
I want to be able to do some actions very quickly:
The current way to do those actions is:
Describe the solution you'd like
If you notice, most actions have a duality: turn on/off, change the volume up/down, dim the light darker/lighter, make the white balance colder/warmer, roll the blinds up/down...
Thus, I propose a new widget type that contains two buttons, and an optional visible state. Look at this ASCII Art mockup with a few examples (slightly broken because unicode/emoji characters are not the same width as other characters):
The widget can have either two or three interactive areas:
light.turn_on
).Bonus idea: I know some widgets have scrolling support (e.g. the calendar widget from your phone calendar). Thus, it's possible to detect up/down swipes in a widget. Then, instead of just tapping (which is a binary action), we could have some analog-ish interaction. The user could swipe up/down and then the amount of brightness/volume changed would be proportional to the length of the swipe. This could be implemented by repeatedly calling the up/down services for each "Y" amount of finger movement. In other words, it would behave similarly as an incremental encoder.
Describe alternatives you've considered, if any
My alternative, so far, is to have many widgets. Look at this screenshot:
And the same widgets, after I rotate my device to landscape orientation:
There are four button widgets, plus one template widget in the middle. Five widgets in total. Their paddings were removed (a feature of the Nova Launcher), and they were resized to the minimum "usable" size. There are many issues with my current solution:
Additional context
Somewhat related issues:
Further refactoring idea
If we take a step back, this widget that I'm suggesting is a superset of the current widgets. Thus, we could imagine a future where we have only one very flexible widget type, and that type contains multiple pieces:
So, this new flexible widget idea would be one widget to rule them all. Or almost. And I understand it takes quite some work to make it usable (specially building the UI, I know UIs are surprisingly time-consuming to build).
The text was updated successfully, but these errors were encountered: