SchildiChat / SchildiChat-android

Matrix client / Element Android fork
https://schildi.chat/android/
Apache License 2.0
385 stars 49 forks source link

Material Design 3 (Material You) support #137

Open ThatOneCalculator opened 1 year ago

ThatOneCalculator commented 1 year ago

Upgrading to Material Design 3 might help the app feel a bit more modern and stand out even more from Element.

SpiritCroc commented 1 year ago

I agree that this would make the app feel more native for recent Android versions. However, last time I tried out Android 12, I hated the design and downgraded to Android 11. So I'd prefer it to be a user-configurable setting (probably best just as another theme selection in our current theme picker), and don't count on me to implement it.

ThatOneCalculator commented 1 year ago

Fair enough. I feel like when done right Material You can look really nice, but then again I'm a sucker for uniform design.

ThatOneCalculator commented 1 year ago

The problem with making it a theme is it'd require a redesign of the bottom/top bar, buttons, etc

SpiritCroc commented 1 year ago

Yeah, uniform design is nice. I was just thinking to myself some minutes ago that I might be able to really like Material You, if I would find the time to tweak it ROM-side to make everything look like Material Design 1.0 again.

I don't see the redesign issue, isn't that controlled by themes either way? At least for system components it should be. Are there any Schildi-specific UI elements that one would need to change?

SpiritCroc commented 1 year ago

Relevant resource: https://material.io/blog/migrating-material-3

But well, I'm already doing more investigation than I wanted for not wanting to implement this myself, so I'll stop thinking about it for now :eyes:

yavko commented 1 year ago

Would love and switch to SchildiChat if this was supported!

anoosa1 commented 1 year ago

What about the material you icons atleast?

SpiritCroc commented 1 year ago

What about the material you icons atleast?

Also open for contributions - but should resemble our default icon. We have SVGs in https://github.com/SchildiChat/schildichat-meta if anybody wants to have a try

NathanC commented 1 year ago

@SpiritCroc I took a stab at it. I'm not a graphic designer by any stretch, but I'm happy with how it turned out—it would be great to have a themed icon, for consistency with most of my apps (especially the ones I choose to keep on my homescreen, like SchildiChat).

The svg can be found here ic_launcher_monochrome_sc

I had a bit of trouble building SchildiChat, so I just inserted this as <monochrome> within anydpi-v26 within my own app (note: you need to set it in both the normal and round xmls) and deployed it next to SchildiChat's existing icon on my homescreen:

example_themed_sc_icon


I played around with a few designs. I think you either need to make the shell filled and the feet/horns outlined, or vice versa, and I think this looks better—more like a turtle, and more balanced.

I played around with the overall sizing to try and get it within the recommended safe area for adaptive/themeable icons, and ended up compressing it vertically a bit, otherwise it was either too small overall or portions were too close to the border (see the general sizing of other themed icons I have in the screenshot).

I went through a lot of iterations with the internal spacing between the shell portions and stroke width for the foot/horn, and I think wider strokes looks better.

Let me know if you want me to make any changes :)

yavko commented 1 year ago

Shouldn't this be as a PR?

NathanC commented 1 year ago

Probably, yeah, just wanted to get initial feedback from this thread. I'll open a PR in a day or two.

yavko commented 1 year ago

👍

SpiritCroc commented 1 year ago

@NathanC thanks, I like it! I'd be interested in seeing the variant with the shell outlined and the feet filled in a screenshot - for a short moment, I thought the feet looked like glasses in your current design.

I doubt we'd need to set it as round icon for SchildiChat, since we currently do not have any specific round icon set, which it would need to override. I figured that the amount of people requiring a round icon but not being able to generate one using adaptive icons is probably quite small (only users of Google's Android 7.1, I think?), so I considered it not worth the effort to maintain.