Commit graph

35 commits

Author SHA1 Message Date
Micah Stanley
d4eaf693c6 Folio/Halcyon: Expand Background Blur Effect using a MaskLayer
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.

![Screenshot_20250613_135521](/uploads/d5aa81d6589b61fbba675e4a6e621b55/Screenshot_20250613_135521.png)
![Screenshot_20250613_135536](/uploads/bd726459a131f736e2711ced3fe90d4f/Screenshot_20250613_135536.png)
![Screenshot_20250613_135505](/uploads/c603627b4e65d4b956a1e0b6463d28f3/Screenshot_20250613_135505.png)
![Screenshot_20250627_093729](/uploads/e5f1ad672361c2b9bae23e57905336eb/Screenshot_20250627_093729.png)
2025-06-27 14:27:30 -04:00
Devin Lin
d4f1c78d61 doubletaptolock: Simplify, and use "lock" instead of "sleep"
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)
2025-06-27 00:14:26 -04:00
Devin Lin
1d3ceb5801 homescreens/halcyon: Add settings page
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.
2025-06-26 18:57:12 -04:00
Devin Lin
5c53f9b6d2 windowplugin: Add per-screen support for WindowMaximizedTracker
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.
2024-06-26 00:44:31 +00:00
Devin Lin
1dbd1505dc shell: Move wallpaper selector to homescreens directly 2024-01-02 03:32:15 +00:00
Devin Lin
580afdfc9c folio: Rewrite
fix landscape favourites bar drag and drop, and cleanup folder

fix drawer scrolling

add settings
2023-10-22 04:08:28 +00:00
Devin Lin
cf333bb784 homescreen: Fix opening configuration dialog 2023-09-27 22:38:54 -07:00
Alexey Andreyev
127bbdf653 Port away from PlasmaCore and PlasmaExtras to Kirigami
See also:

https://pointieststick.com/2023/06/14/call-to-action-easy-porting-opportunity-in-plasma/
2023-07-25 01:13:52 +00:00
Devin Lin
da6e17f3f4 windowplugin: Use standardized way to know whether a window is showing and maximized 2023-03-18 18:48:49 -07:00
Yari Polla
f647e12f25 homescreens/halcyon: avoid double direction dragging 2023-03-17 16:33:10 +01:00
Devin Lin
bd8de03230 homescreens/halcyon: Fix focus child connection 2023-03-16 23:41:19 -07:00
Devin Lin
158af43fd4 audio: Refactor applet and extract singleton to MobileShellState
The eventual goal is to have as few singletons with state as possible in the mobileshell component when it is imported into components such as the lockscreen.

This doesn't fully accomplish it, but moves the audio provider singleton to MobileShellState, which will eventually need to be prevented from importing into non plasmashell processes.

This also disables the sound feedback when changing volume, since it can be a source of lag when showing the applet.
2023-03-16 07:21:01 +00:00
Devin Lin
eb03fe8c94 taskswitcher: Port to kwin effect 2023-03-13 22:07:32 -07:00
Yari Polla
f87c7c5526 homescreens/halcyon: switch page when trying to move out of the grids 2023-03-14 05:02:46 +00:00
Yari Polla
c3882691bc homescreens/Halcyon: trigger children using signals instead of focus property 2023-03-14 00:18:18 +00:00
Yari Polla
a414563c02 homescreens/halcyon: implement keyboard arrow navigation 2023-03-14 00:18:18 +00:00
Devin Lin
3ede60a091 Rename containments 2023-03-05 09:39:44 -08:00
Devin Lin
1823cff3f3 homescreens/halcyon: Fix configure screen showing up in task switcher 2023-02-11 10:30:27 -08:00
Devin Lin
bdcbe4d6f7 mobileshellstate: Heavily refactor to remove global shell margins to fix window binding loops
Having a global set margins and orientation (that were calculated from the panel containment) caused a lot of issues with the way bindings were evaluated across panels, and with high coupling.

Now use properties from within containments to determine shell margins instead, which removes the dependency on other containments for measurements. This allows us to get rid of TaskPanelControls as well!

Fixes: https://invent.kde.org/teams/plasma-mobile/issues/-/issues/198
2022-12-10 21:05:13 -05:00
Devin Lin
7d3bf39750 mobileshell: Refactor and extract state to mobileshellstate plugin
This avoids mixing plasmashell state with our MobileShell component library (which really shouldn't have state at all).
2022-11-12 11:15:36 -05:00
Devin Lin
39c8008d72 homescreens/halcyon: Fix horizontal scrollbar being shown on app list 2022-11-07 17:54:00 -05:00
Devin Lin
2de1a7a0e4 homescreens/halcyon: Fix app list margins resizing not working during screen rotation 2022-09-05 16:09:50 -04:00
Devin Lin
e0828cb272 homescreens/halcyon: Remove glitchy looking scrollbar 2022-09-01 22:34:50 -04:00
Devin Lin
92d9295995 homescreens/halcyon: Don't have hovered state 2022-07-12 21:02:04 -04:00
Devin Lin
cb71a7779f homescreens/halcyon: Properly implement home button trigger animations 2022-07-11 22:39:33 -04:00
Devin Lin
564c3f9e81 homescreens/halcyon: Add initial folders implementation 2022-06-30 00:40:22 -04:00
Devin Lin
824a9f33ed homescreens/halcyon: Two column layout, and refactor 2022-06-28 00:43:40 -04:00
Devin Lin
1919a39d81 shell: Load wallpaper selector only when necessary 2022-06-25 12:43:11 -04:00
Devin Lin
4f5427cd3e homescreens/halcyon: Ensure gridview header is draggable, and add scrollbar 2022-06-24 15:31:46 -04:00
Devin Lin
946e9dfc62 homescreens/halcyon: Allow full screen to be draggable 2022-06-23 18:14:12 -04:00
Devin Lin
108daf50db homescreens/halcyon: Fix overshoot 2022-06-23 17:02:32 -04:00
Devin Lin
213faea679 homescreens/halcyon: Add search widget open gesture 2022-06-23 16:39:55 -04:00
Devin Lin
d158549525 homescreens/halcyon: Fix wallpaper menu not being opened in certain tap areas 2022-06-20 23:23:11 -04:00
Devin Lin
ef45546127 homescreens/halcyon: Port to new model 2022-06-18 15:42:47 -04:00
Devin Lin
a173cf9b9d homescreens/halcyon: Add new homescreen 2022-06-08 18:09:35 -04:00