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
Rely on QQC2 styles instead of internal themes #108
Conversation
Looks amazing |
This is mostly working pretty well now. However, there is a couple of issues with specific styles, particularly with the Breezez style running under X11, as either it or Kirigami (or kiconthemes) seems to prefer the icon theme as named in Xsettings rather than what is specified by the keyboard with So I'm not sure this is yet "ready" to merge. I'm not sure if there's any similar issue under Wayland either. |
We could start to use the Milestones feature for releases, then merge this and immediately open an issue about the icon themes and assign that milestone so the issue must be fixed before the next release |
Well, I want to make another release, before merging this in any case. And I don't think the icons issue can be fixed on our side anyway, without providing our own set of icons we use everywhere, instead of using named icons from the theme. |
On Plasma Desktop, this needs to use |
Another problem is that the custom mouse handling on top of the ToolButton in CharKey means that the ToolButton doesn't properly change state which means there's no clear pressed state for the key. |
This doesn't seem to be the case for me. Running with |
I'm not sure there's anything we can do about that, though. There doesn't seem to be any way to propagate events from a |
8a569ac
to
22e9a94
Compare
I think it's time to get this in as well. I've been testing it a bit again on my PinePhone Pro, and it's working pretty great there. I seem to only have the icon coloring issue when running under GNOME on X11, which resulted in my attempts at resolving it via https://invent.kde.org/frameworks/kirigami/-/merge_requests/511 in kirigami. If some could test this on Plasma Desktop as well, especially on both Wayland and X11, that would be very appreciated. |
8629c10
to
aae00d0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we find issues with that change we still can fix it. But it is a good change in general.
Use a hard coded value for border color where it should be shown, which is already the same color used in all existing themes. Also set the border width to 1 pixel for all borders.
Ensure we get the background from the qqc2 style in use by using a Page component as the main surface for the Keyboard.
This simplifies the keys a bit by moving the icon properties into CharKey from ActionKey, and removing the color properties, using an ToolButton to show icons on keys that use them. In addition, this also makes the keyboard look a bit more modern.
These were the only two icon themes used by the internal themes, so we need to still use them as appropriate, since qqc2 styles themselves don't provide the icons used. Other themes also don't provide the icons we need yet. Ideally, we should just provide all the icons we need ourselves, in a neutral style, so that we don't need to rely on any such themes, but some qqc2 styles which use the default QQuickIconLayout implementation don't always render icons loaded from a qrc resource.
Some keys have annotations that are quite difficult to discern in some situations, so make the label for the annotation a little larger to more easily read them in those cases.
See #159 as the issue is due to Plasma style not working automatically for applications that don't use QGuiApplication. |
…ove kscreenlocker override back to plasma-mobile (MR 4882) A bunch of override files in postmarketos-base-ui-plasma seem to have come from the plasma-mobile ui package, which probably shouldn't be on desktop and bigscreen. With Plasma 6, a lot of the overrides are now no longer necessary for Plasma Mobile. Situation with each file: - 000-gschema.override - This likely was for changing maliit themes and GTK title bar layout for Plasma Mobile, maliit theming was dropped (maliit/keyboard#108), and title bar layout is now handled within Plasma Mobile - kdeglobals - This was for setting the look-and-feel on Plasma Mobile and default browser, it's now handled within Plasma Mobile envmanager - kwinrc - These were settings for disabling window decorations and setting the vkbd to maliit, which is now handled in Plasma Mobile envmanager - kscreenlockerrc - This is to autolock the screen after login (tinydm autologs in), the file was for Plasma Mobile, I don't think we want it for Desktop since SDDM is used there
This is the set of changes necessary to have the keyboard styled entirely by the used QQC2 style rather than internal themes.