Commit graph

20 commits

Author SHA1 Message Date
Micah Stanley
eba6074161 notifications: Implement popup notifications
This merge request implements a more mobile optimized solution for popup notification.
- 

The current controls are:
- Swipe up to move the notification to the notification center.
- Swipe left/right to dismiss the notification entirely.
- If multiple popup notifications are grouped together, tap on the bottom area to view them in a expanded view.

What still needs to be done:
- ~~For notification without a default action, tapping on them should probably open up the associated app.~~ Note: I think I will add this in a separate merge request as it probably should be the case regardless if the notification is a popup
- ~~Swiping down on a notification currently does nothing. Maybe we should map this to a notification action?~~ Note: I have some ideas I will try later, though for now, I will leave this action blank
- ~~The expanded view of notifications should be able to be dismissed by swiping up/down on the top/bottom of the list.~~ Note: Added
- Investigate further into how to remove the current desktop popup notifications.
- ~~Code clean up.~~ Note: The code is at least a bit better

Single popup notification:

![notification_1](/uploads/63d12be6da1dd2676de17940dcadbdfa/notification_1.gif)

Multiple popup notifications:

![notification_2](/uploads/907a14b772f66f46040c28342f4dcf02/notification_2.gif)

Multiple popup notifications in the expanded view:

![notification_3](/uploads/9a7cd09a6bb8a0f7ee70e5bcf7c29c6b/notification_3.gif)

Any feedback would be greatly appreciated.
2024-11-07 16:13:06 +00:00
Micah Stanley
681d1683f5 VolumeOSD: Improve design, and prevent touch events from being taken from outside the osd
Fixes: https://invent.kde.org/plasma/plasma-mobile/-/issues/274

Any feedback on these changes would be much appreciated.

![Screenshot_20241024_093458-1](/uploads/7b4f89ace1a53c559737d1c05d591329/Screenshot_20241024_093458-1.png)
![Screenshot_20241023_070919](/uploads/c7b9a8de7c9bba2de01d734408e02b2b/Screenshot_20241023_070919.png)

Change Log:
- NanoShell FullScreenOverlay was changed to a LayerShellQt Window to keep it on the top layer and to prevent the popup from obsorbing all touch inputs.
- New animations were added to the volume popup.
- User can now change the volume by touching and dragging on the popup
- The mute button on the popup was fixed
- Mute buttons were added next to the volume sliders in the AudioApplet page
- Volume icons now dynamically update to the volume level
- Visual design adjustments
2024-10-25 15:52:49 +00:00
Alexander Lohnau
40dfc53486 Remove unused slot params 2024-02-16 13:37:26 +01:00
Yari Polla
4f45654af6 Port mobileshell plugins to ecm_add_qml_module 2023-11-02 11:08:17 +00:00
Devin Lin
6160280b0c mobileshell: Dynamically load in heavy dependencies for singletons 2023-03-18 22:43:59 -07:00
Devin Lin
462d99b83f quicksettings: Extract out from mobileshell into separate plugin 2023-03-16 19:44:36 -07:00
Devin Lin
0775c56153 windowplugin: Extract out windowutil from mobileshell to separate plugin
This allows us in the future to use mobileshell without having the WindowUtil singleton loaded (which does a bunch of wayland calls that aren't necessary for most applications).
2023-03-15 15:12:23 +00:00
Devin Lin
f913039b63 components: Remove splash screen close button support, due to crashing problems 2023-02-14 23:07:38 -08:00
Devin Lin
df65a0e0f2 mobileshell: Remove compile time QtFeedback dependency, and make it optional 2022-11-12 11:15:36 -05:00
Devin Lin
7aaa6f4cd2 mobileshell: Use pointer for haptics 2022-11-12 11:15:36 -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
Willyanto Willyanto
37fc15f3ad Perform initialization in initialization list
Fix Minor - Variable is assigned in constructor body. Consider performing
initialization in initialization list. (CWE-398)
2022-10-14 17:39:08 +00:00
Devin Lin
10dcf8b17a components/mobileshell: Ensure app pids are cleared 2022-10-12 19:30:18 -04:00
Devin Lin
7385ca9dca components/mobileshell: Add mechanism to keep track of and stop launched apps 2022-10-12 17:00:21 -04:00
Devin Lin
8c885bc699 quicksettings/record: Move record functions out of shellutil 2022-10-12 12:00:12 -04:00
Aleix Pol
ecd1515217 Add a Record QuickSetting
Allows to record the current output conveniently from the drop-down.
2022-05-30 00:07:52 +00:00
Devin Lin
3969973e51 mobileshell: Refactor and collapse stackBefore and stackAfter into ShellUtil 2022-04-07 10:52:12 -04:00
Devin Lin
210042a6bf libmobileshell: Move back to QML plugin
Move from a C++ library + QML plugin to a QML plugin only for simplicity, since the homescreen switching architecture will be done from Plasma, and so use of the shell library only needs to be from QML.
2022-03-21 10:00:09 -04:00
Devin Lin
cf7e48e65c components/mobileshell: Move to libmobileshell library 2022-03-16 23:20:51 -04:00
Devin Lin
6653ad6e54 panel: Refactor panel and implement blue ocean mockups 2021-12-22 23:29:00 +00:00