This switching Folio and Halcyon to define their settings as a
containment config so that it fits in with the other containment
options.
This removes the convoluted maze of nested settings windows due to
wrapping the containment settings with a custom settings window around
it.
This converts many of the animation durations to Kirigami units so that
they can be controlled system wide. It also speeds up several of the
animation durations (ex. in folio) from 800ms to 400ms to improve the
feel and responsiveness of the shell.
Fixes typos in various source comments.
Found via `codespell -S "*.po,*.svg,*.pgm,*.xml,./po,*.desktop,*.json,*.actions" -L aline,aparent,childs,distroname,indexin,indx,logicaly,lokal,nd,splitted,te`
Apparently i18n doesn't support string literals with single quotes as
parameters. Fix occurrences of this and add a CI check to ensure this
won't happen in the future.
This commit drops halcyon's search widget in favour of using the same
widget as folio to share code. This also brings over its keyboard
navigation features.
This commit adds support for using the generic app name when the "X-KDE-PlasmaMobile-UseGenericName" .desktop key is set.
This allows us to have applications that we consider "system apps" to have a generic name, without needing to change the "Name" tag itself when used in other desktop environments (ex. Plasma Desktop).
This merge request expands upon the folio and halcyon background blur effects, making the folio background blur include the backgrounds of folder icons, the favorites bar, and wallpaper selector, and for halcyon, it now includes the folder icons, app library, search, and wallpaper selector. To accomplish this, a mask layer plugin was created to easily attach to these elements. This way, we can use a `OpacityMask` to cut out from the existing blur layer, thus hopefully keeping the performance cost low. And with my limited testing, it does at least seems to run about the same on my oneplus 6t, though it is not really a low end device, so I can not fairly judge the impact for something slower (eg. PinePhone). To be on the safe side, a third option was also added to the folio settings, allowing for the ability to toggle back to the old functionality if needed.




This MR does several things as a followup to
https://invent.kde.org/plasma/plasma-mobile/-/merge_requests/748:
- Use the word "lock" instead of "sleep" since we are locking the
device, not putting it to sleep
- Simplify usage by using existing MouseAreas instead of including our
own for this feature (I encountered several focus captures in folio that prevented the
SwipeArea from getting events)
Add a settings page to halcyon, which allows for toggling whether the
wallpaper is blurred and double tapping on the homescreen to lock the
device. This also does a bit of refactoring for folio and halcyon to
share the same wallpaper blurring item.
BUG: 486554
In Qt6 a bunch of weird behavior started happening with handlers which broke a bunch of things only in touch.
Remove the HoverHandler here which apparently wasn't used for anything, and causes any MouseArea to stop sending clicked and pressAndHold signals. DragHandler also appears to have stopped working with touch (for the folder close swipe gesture), but that involves far more rewriting to replace...
Currently you need to go from Settings -> "Switch between homescreens and more wallpaper options" to access the advanced wallpaper settings. Add a button directly into the wallpaper selector for this.
Contributes to #317
This refactor changes WindowMaximizedTracker from being a Singleton, and allows for it to be created in a way such that screens can be filtered out.
This fixes external screens from having their homescreen "zoom out" when an app is maximized on another screen.
Fixes an oversight: people are going to upgrade from 5 to 6, some will
have 3rd party plasmoids from the store that will still be for plasma5.
We want a different error message when we know the plasmoid is "old" In
Palsma4 times we used to have for the pure JavaScript plasmoids an api
version key that could be used for things like that.
This makes it a bit more future proof for any future api change there
will be
CCBUG:474456
This (partially) reverts commit 127bbdf653.
Only incorrect changes from Kirigami.Units.largeSpacing to
Kirigami.Units.gridUnit are reverted. Only Plasma.Units were buggy.