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
Small widget has only one button #136
Comments
That's odd. That widget is what the app calls the "tiny" widget, which was designed solely to be an edge case for landscape or exceptionally small screens. How many tiles have you configured Auxio's widget with, and how many tiles did you configure Oto Music's widget with? I could possibly narrow it down from there further. |
Also, Oto may not be the right comparison here to use. Most music apps (like Oto) use multiple widgets for different sizing configurations. This is not ideal, because as soon as you resize a widget beyond it's intended sizing, it looks terrible. Auxio tries to leverage new android APIs to cram all those widget sizings into a single adaptive widget, but there are a lot of edge-cases where that breaks down (mostly because the widget API was designed for phones in 2011 and is basically unusable for modern apps). Can you try this new APK? Rename it from ZIP. I tried to rework it to have more buttons, like the Oto one you showed. No guarantees this works to your liking. If I trigger this layout on my phone (using the launcher in landscape mode), it ends up squishing the buttons. |
Sigh, exactly what I thought would happen :( @KraXen72, Would you be okay if I removed the title and artist from the widget, like the other short widgets? This is really the only way to resolve the button size issue. As for the button contrast, none of the other widgets really use that, so it would feel a bit inconsistent. I don't think I'll add that. |
Here's another debug APK with an alternative widget design. Can you confirm that it works well? |
also, app color scheme doesent apply to the widget, the widget is always dynamic color scheme. i tried restarting both app and launcher to no avail |
Okay @KraXen72, this is a lot to unpack.
I think this issue is solved enough to be resolved now. I'm quite sorry I could not implement everything you wanted, but again, the widget API is terribly designed and I can't believe that they haven't replaced it yet with something better. |
I don't think I can do that. The padding is there in the first place because of the widget's rounded corners. If I were to reduce it, the widget may start clipping with the rounded corners. As a result, I simply cannot ensure that there is enough space in all situations and that the buttons will not be crushed. This is the same reason why some of the other types of widgets only show an album cover, there just isn't enough space in all cases. |
Also, since I have no way to trigger your specific widget sizing, I can't add an in-between widget with more information. |
you could test it on niagara launcher, but i understand if that's too much work. however, i still find the current widget state quite unsatisfactory. |
I have no idea if Niagara Launcher is using the new Android 12 widget sizing mechanism or not. If they aren't, then Auxio backports the responsive behavior in an inferior way. To elaborate further, I can't just tell Android "use this widget if it's 2x1 cells". I have to separate them into "size buckets" of precise dimensions, in which I have to balance:
As a result, I just separate widget layouts into vague forms that may not have desirable amount of information (such as just a cover) so that they work across the whole sizing range that Android will use the layout in. It doesn't have to be this way. For example, iOS widgets just give the app a canvas to draw on and it's dimensions. The app then lays out and draws their own views. That would be far easier to work with since I can measure exact dimensions and add/remove/move elements at will. I can't believe android widgets don't do the same. |
|
Okay, I've tried out Niagara Launcher. I now somewhat understand where you're coming from. The way Niagara allows you to resize widgets really is unlike the rest of Android though. Most launchers use a grid, while Niagara allows precise resizing. I can't think of a way I can feasibly rework Auxio widgets to accommodate this unorthodox launcher model while still working well on the vast majority of grid-based launchers. I am extremely sorry about this, but I will be keeping the current widget layouts and locking this discussion. There is simply no way I can improve this. My only choices are either more controls and less metadata, or more metadata and less controls. Any other in-between solution is highly inconsistent or mangles the layout. |
Still, I have to ask @KraXen72. Out of the two unsatisfactory widget options, which would you end up preferring? One with more metadata, or one with more controls? |
im not sure exactly what both of those include, so let me give each thing on the widget an importance: (1 must have, 0 optional): song title - 1 if you think this is unfeasible, just let me know which xml is the small widget im using and I'll try to impelemt it and submit a pull request.i am new to android dev but i have done some ui stuff, i would be glad to try my hand at it if it means i could have this really important feature. |
honestly I'd rather have more widgets than whatever is now. |
Oh. So what you actually want is a text-based widget layout, basically. This explains a lot. Auxio's widget is primarily designed around cover art since it's the most useful at-a-glance information for most. I originally planned several widget styles, but then decided against it, as something like a text-only widget simply was not responsive enough to create the best UX. I've spent countless hours tweaking the existing widgets, and I've settled on this setup simply because it seems to work great for the vast majority of users, at the cost of users with more esoteric preferences. If you really want to update the widget layouts to your liking, the layout XMLs are here under the files named I'd also would be unlikely to accept a PR changing them for the many reasons I've stated above. If you desire, you can maintain a fork with your widget layouts, and just periodically update the app from the upstream project. This way, you can have the layouts you desire, while most Auxio users continue to have the widget less prone to breakages and other responsiveness issues. Now, if someone with a more common use-case makes an issue also complaining about the one-button widget layout, I will actually re-consider the current setup and try to add a new layout with more buttons. But for now, I will be keeping the original one-button layout. Similarly, if another comes along and requests something akin to the youtube music widget (or some other new widget style that Auxio does not cover), I might change my mind on several widget types and implement your type of widget. |
okay thanks. would you merge a fully new text-style widget? of course, you'd review and comment the code etc, so I won't be merging garbage. ill try to base it off of the small widget and register it as a separate widget in the os. |
I will only merge new widget styles if there is sufficient demand. Since you are really the only one that I am aware of who desires text-only widgets, I don't feel comfortable merging something that might cause indirection or unexpected UX issues. This is why I brought it up previously that if other people ask for new widget styles, I'll reconsider merging text-only (or other) widget types. |
alright. well to close this off:
|
Sorry for necroing, but I've been toying with some new micro widget layouts so that I can improve the state of the thin widgets on launchers like yours. Once again I'm sacrificing title/artist info for more controls, but I think it's much more aesthetically pleasing than prior. I thought you might want to see this and answer if this is a improvement or not. Note that these are not final at all. I can't even implement them right now due to an annoying bug with widgets that limits me to only 5 layouts at most. |
Ah, no issue. I'll take that into consideration. Note that your current widget layout would not change if I added this, just the really thin layout that only has a play/pause button right now. |
Describe the feature you want to implement:
small widget only has one button:
. this is pretty limiting.
i think atleast a forward and back buttons would fit, like in the notification:
Is your feature request related to a problem? Please describe:
small widget is annoying to use
Do other music players handle this? If so, how?
Oto music(sorry for big screenshot):
Why do you think this will improve everyone's usage of Auxio?
ease of use/ux
Due Diligence:
The text was updated successfully, but these errors were encountered: