-
-
Notifications
You must be signed in to change notification settings - Fork 114
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
Migrate Holo themes to same style as Material #110
Comments
@Helium314 Today, I worked on the Holo theme. Which version would be better knowing that the version is grayer than version 2? |
I also worked on this a little, and it looks like it's going to be more tricky than expected.
My attempt for solving this was using a layer drawable, and setting colors separately to all layers. This allows to always have the dark/bright lines look good. I did not work on transparency, but I think a workable approach would be choosing an alpha value dependent on key and background colors. How is your approach working out? Is it possible to reproduce the original theme with any of those two? |
What we know, and what you've also discovered, is that:
My approach:
|
I looked at this in more detail, and I think it would be simplest to just keep the normal key drawables, and have some white one (or maybe slightly tranparent) for functional keys (to used for action key as well). And the background grey-to-black can be replaced by a white-to-grey GradientDrawable (or ninepatch, doesn't really matter). |
I've enabled the "Adjust theme colors" option when the User-defined (holo) theme is selected, but can you confirm that the color system is currently fully adjusted? If yes, my tests show that if we keep the normal key drawables, when we define a color for the key background, this color blends in a little with the color of the keyboard background. |
That's because the holo keys are partially transparent. So what I will do:
|
I was thinking the same thing. Are you well advanced on this subject or can I continue testing? |
I'm currently adjusting colors, other things should be ok. |
I had a feeling you'd already worked on that. I'll take a look when you do a commit officially or in a separate branch. |
It's now commited. The holo theme is now in an acceptable state, but has quite a bunch of (mostly minor) issues, often not issues by themselves but only if we aim for an exact match with original theme:
Some of these, like darker popups, are probably fine, some others should be fixed before the next release. |
Like I said, I couldn't have done it better 😅 My feedback
That's not currently the case (but you've probably noticed).
I completely agree.
I'm taking care of it today.
Are you sure? On my phone, the keys are identical to those on the keyboard view.
I agree.
Are there any plans to add it? I don't think it's necessary.
I'll do some tests and if they're conclusive, we'll be able to delete several files...
On my phone it's slowdowns I've noticed instead when you scroll through the emojis. I'm replying to you with my phone and that's currently the case. |
I didn't bother with this, removing the old holo themes was the start for re-doing the appearance settings anyway.
The currently created gradient drawable looks a little different than the original, but I think it's ok and barely noticeable unless you compare them directly.
In material that pin has always been blue I think, so there it's fine.
Yes, that's why I put it in the list of issues.
Yes, you're right
Currently not. I'll mention it in the release notes, so anyone missing the theme can complain. If there are more users than expected, I may work on it.
This is weird. I find nothing slower than normal on my ancient phone. |
I definitely agree that the whte drawables are the best here. The suggestion strip issue should be fixed now in a757b00, it was caused by me not finding the correct place to apply the color filter / state list previously. |
#132 created where you'll find drawables 100% white.
Yesterday I couldn't find the solution. This is much better! |
Thanks a lot for your help! |
Don't thank me, it was a real pleasure to do it! There's still the color of the navigation bar to correct, perhaps? It doesn't match the color of the bottom of the keyboard. And maybe, when the keyboard is in one-handed mode, we could have the background with a gradient color? (Just the band where the arrows are). I also tried to see if it looks nice, but I couldn't |
Oh, I hadn't noticed this. The wrapper view for one-handed mode is adjusted, navBar will follow soon. |
Unfortunately, it doesn't keep the color in memory when switching between left and right. Watch videoOnehanded_mode.mp4
Thanks in advance for taking care of the navigation bar. |
This is fixed now, also some regression of suggestion strip for material no-border theme. I added a holo no-border theme (still has some small issues to be fixed before release), and noticed that the key popup drawables are too dark ( |
Sorry for the late reply, but I'm back to my real job.
It's really beautiful! I love it so much ! About the key popup drawables which are too dark, I've modified the files and you'll find the drawables 50% whiter, 75% whiter and 100% white in the attached archive below. Don't hesitate to let me know if you'd like an intermediate value. Note: after 75%, you can hardly see the difference in hue between the top and bottom of the key popup. |
It wasn't even half a day, and you're not obliged to do anything here. So thanks for still working on this!
I agree. From the screenshots I think the 50% whiter are good, I'll test it on my phone with 50% and 75% (and a bunch of different background colors)
Honestly I was surprised how good it looks... |
As long as I have the time, and as long as what needs to be done is within my capabilities, I'll be able to continue 😉
My feeling is that the colors stand out better on the 75%. I'll let you decide, as I never activate this option anyway.
Speaking of which, the slowdowns are due to the fact that on my personal build I have a total of 23 themes. And these slowdowns appear when I change theme and/or style 4 or 5 times in a row. |
Then I would gladly take some 60 or 65% whiter variant (whichever you want, I think the difference will be quite small).
This is strange. I'll have a look whether I can reproduce it, maybe I find the cause of this. |
You have both: |
Honestly, you did a great job. The themes are really great. Then, on my Android 13 tablet, for Material style, the emoji category background has a bug. See my screenshot: This bug is not present on my phone with Android 10. Also, I don't know if you've noticed but the back button no longer works in all the application's settings menus (I tested on Android 10 and 13). It seems to me that you're going to publish a release so it may avoid the creation of a new issue immediately after if you know where it's coming from. Finally, I'd like to do a PR to add the last translations before the new release; it's too late for me to do it now but tomorrow is OK. Of course, it doesn't matter if the new release comes out before my PR. Once again, good work on the themes. Thanks. |
Avtually I don't have any plans for colors, other than an "accent follows system" setting, and a system colored theme (or maybe one for day, one for night) for API 31+. The system themes should probably be default if available.
Oh great, it took me quite a while to get rid of this really weird thing, but apparently things work different once again on Android 13.
Thanks, I never even tried this until now, because top left corner is the most atrocious position for a back button, even on a small phone like mine. Though on a tablet it might be ok. Should be easy to fix.
You're welcome to do so. Btw do you have some additions to the day/night colors? I tried to consider your comments in #107, and with the new settings it should be more clear. I'm open for changes though. |
I'll try to make the changes tomorrow; I'll have a lot more time. About the back button, thank you. I was sure it was a quick fix.
Sincerely, nothing more to suggest. Now, it's impossible for users not to know the colors of the variant they're modifying. |
Good idea, done. |
Maybe the emoji strip issue is also related to this. |
I think I've found a solution: you'll find the details in this commit: 5c0f8f7. To sum up, in this commit 43626b0 you define a new scale for emoji category icons for Material style to make them more homogeneous and because Holo-style icons are bigger. The only thing I don't understand is why it's only my tablet that's affected. I don't think it depends on the Android version. Finally, if you look closely, for the Holo style, the emoji icon for the recent category is smaller than the others. I've also corrected this in my commit. |
While testing, I discovered another bug that only affects the Holo style. To reproduce it:
You'll see that the keyboard background at the bottom has changed color. Maybe it's linked to #47. Watch videoSVID_20230909_020959_1.mp4 |
I also scaled down the material icons to match the original size. With 5c0f8f7 the icons are considerably bigger in material theme, which does not align well with the size of other icons in material theme. That's the main issue I've been trying to solve with the scale. And thanks for the larger holo recents icon, I'll use it.
It might also be the vendor. Some vendors do considerable changes to Android code, which sometimes results in different behavior (e.g. Xiaomi / MIUI, see also #12 for an extreme example).
Not again... it took me quite a while to get rid of this for emoji / clipboard switching without rotating. I thing it's because somewhere the background is not set properly, which only shows when reloading the view. |
As you wish, but you know it's not a mistake to use the same icons for the 2 styles. Even if they're bigger for the Material style than before, in my opinion, it's not visually disturbing.
You're welcome 👍 |
commit got rid of many (almost) duplicate files, but introduced visual glitches on some Android versions see #110 (comment)
Yes, but I would really like to keep the size without breaking things for some Android versions.
It works for me, but I fear it might have the same weird issue with the background.
How bad is it when |
I understand.
If I use your drawable and remove these lines, everything works perfectly on my tablet (and on my phone too). // Lines removed
if (categoryId != 0 && colors.getThemeStyle().equals(KeyboardTheme.THEME_STYLE_MATERIAL)) {
iconView.setScaleX(0.75f);
iconView.setScaleY(0.75f);
In my personal opinion, the default value (28%p) was the best. My feeling is that emojis are less sticky and the emoji keyboard is airier. |
Oh finally!
I'm still considering to go to 29% or 28.5%... but that's rather low priority for me. |
I know; that's why I ask nothing about this subject 😉 In any case, thank you for all your work on this Holo theme. It really looks great! 👍 |
Currently Holo themes are still using the old theming system instead of the new one with easily adjustable colors. The user-defined Holo theme is just applying color filters on top of this, but with a dark base theme this doesn't work well.
For simplicity and flexibility the Holo themes should use the same style as Material themes, meaning a single (nearly) white layout in resources, which is adjusted by color filters.
This shouldn't be hard, but it's a lot of work as it requires adjusting lots of 9-patch drawables, or replacing them with vector or shape drawables or similar.
The text was updated successfully, but these errors were encountered: