Commit graph

642 commits

Author SHA1 Message Date
Florian RICHER
a6a16507c3 quicksettings: Fix brightness slider
Status:

- Tested on my OP6 with PostmarketOS edge. (Pmbootstrap build + sideload)

Fix issue https://invent.kde.org/teams/plasma-mobile/issues/-/issues/306
2024-09-29 22:24:58 +00:00
Marco Mattiolo
ac91c9fe11 Drop semicolon after Q_UNUSED() for consistency through the repo 2024-09-28 06:31:00 +00:00
Marco Mattiolo
4371c95194 Flag unused parameters with Q_UNUSED() 2024-09-28 06:31:00 +00:00
Micah Stanley
90ae13e5b6 Polished the media controls expanded view animation. 2024-08-01 21:26:18 +00:00
Devin Lin
3adcd1d51c swipearea: Add support for touchpad
This adds support for touchpad scrolling in various shell components, such as the lockscreen, homescreen and action drawer.

Currently TODO because it appears to be very buggy when there is a control underneath that also accepts touchpad input (ex. flickable). The touchpad scroll start appears to get called by Qt, but not the end event, so I am unable to "let go" of the flick. Not sure if it's a wayland issue.

This also appears to not work in the nested KWin session, not sure if it's because of libinput or something
2024-08-01 01:53:52 +00:00
Micah Stanley
e0dd65fa26 Notifications and Media Control Design Adjustments
Adjusted the colors of the notifications and media controls to help them fit in better together.

![Screenshot_20240729_045620](/uploads/4190227795db932ebead005c67510b45/Screenshot_20240729_045620.png)

![Screenshot_20240729_045637](/uploads/feb63760194ccc671d80c4279ab7b526/Screenshot_20240729_045637.png)
2024-08-01 01:18:33 +00:00
Micah Stanley
d42d36129d widgets/mediacontrols: Fix usage in action drawer and height animation
Fixes an issue where if the media controls were active and the action drawer was flicked opened, sometimes it would not fully open.

Changes include:
1. Media controls will now no longer animate its height if `implicitHeight` is 0
2. The action drawer animation code was reworked to allow its height to change dynamically.
2024-07-31 14:16:13 +00:00
Devin Lin
20efd102f3 actioncenter: Ensure window gets raised over status bar
Potential fix for #358, haven't yet verified on device
2024-07-29 21:08:54 +00:00
Devin Lin
8f79654989 widgets/notifications: Remove accidental dependency on being an applet
Followup to https://invent.kde.org/plasma/plasma-mobile/-/merge_requests/558 and removes the dependency on being an applet, as it causes the notifications to break on the lockscreen
2024-07-28 14:54:14 -04:00
Devin Lin
8ca80841d2 actiondrawer: Share quick settings model between landscape and portrait
Don't recreate the quick settings model when switching between landscape
and portrait. This should improve the performance of screen rotation.
2024-07-27 11:02:48 -04:00
Devin Lin
1702354d3f Use Kirigami.Units.cornerRadius in most radius values
This takes the place of using smallSpacing for the most part.
2024-07-27 00:02:05 -04:00
Devin Lin
eb9509ce68 Remove trailing whitespace 2024-07-26 23:47:44 -04:00
Devin Lin
5d84e6e47d widgets/notifications: Cleanup, fix some visual issues, and add jobs
Note: There was a lot of whitespace that my IDE is now removing.

Fixes job notifications not being dismissable (#208), and imports an
implementation from workspace for the progress bar and actions.

Fixes notification contents not being clipped when being dragged
(https://invent.kde.org/teams/plasma-mobile/issues/-/issues/287)

Also fixes notification text being spread over multiple lines
unnecessarily
(https://invent.kde.org/teams/plasma-mobile/issues/-/issues/302).
2024-07-26 23:21:14 -04:00
Florian RICHER
b1d75495e2 widgets/mediacontrols: Add expanded mode to change song position
![Enregistrement_d_écran_20240725_000229](/uploads/ffd7a7edf2b079627913d033857ce3fe/Enregistrement_d_écran_20240725_000229.webm)
2024-07-26 01:22:04 +00:00
Devin Lin
7f011e92ed quicksettings: Use standard corner radius 2024-07-15 18:45:33 -04:00
Devin Lin
0a09d935ac layout-templates: Split out status bar and navigation panel to separate templates
This makes it more modular, and we can use the template in the mobileshellsettings code.
2024-07-15 17:07:26 -04:00
Devin Lin
5207c06a12 startupfeedback: Fix multi-screen behaviour
Fix the model screen filtering not working properly, and account for case when opened window is already active.
2024-07-15 20:53:42 +00:00
Devin Lin
2d2b7407a6 startupfeedback: Change to be window based and controlled by a model
This makes the startup feedback more robust, by having instances be controlled by a model which can listen to window changes. Being window based also allows for the close button and gestures to work properly with it, since it will show up in the task switcher as well.

Fixes:
* https://invent.kde.org/plasma/plasma-mobile/-/issues/357
* https://invent.kde.org/plasma/plasma-mobile/-/issues/338
* https://invent.kde.org/plasma/plasma-mobile/-/issues/335 (dark themes now tint the background color)
* https://invent.kde.org/plasma/plasma-mobile/-/issues/330
* https://invent.kde.org/plasma/plasma-mobile/-/issues/30
2024-07-13 16:30:07 +00:00
Devin Lin
41de61ef4c quicksettingsplugin: Fix improper model implementation 2024-07-11 23:48:32 -04:00
Devin Lin
0ce95a604a homescreens/folio: Halve the needed swipe distance for swipe detection
SwipeArea requires 10px to differentiate between taps and swipes. HomeScreenState uses a further 10px to differentiate between vertical and horizontal swipes. This MR combines the swipe detection together so that we only need 10px rather than 20px for gesture detection.
2024-07-08 21:51:18 +00:00
Devin Lin
56ca0db5c6 homescreen: Add button to wallpaper selector to go to advanced settings
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.
2024-07-05 02:53:26 +00:00
Devin Lin
90e65ea031 lockscreen: Reset state when screen is off
Wipe a partially entered password, and the open state of the lockscreen when the screen is off.
Addresses https://invent.kde.org/plasma/plasma-mobile/-/issues/110
2024-07-03 18:06:24 +00:00
Devin Lin
29f014ad04 homescreen: Don't animate after unlock
KWin appears to freeze frames prior to locking, and so this animation looks very glitchy and jittery. It also causes problems if apps are already activated. Remove it for now so that it's smoother.
2024-07-03 17:54:00 +00:00
Devin Lin
29f387bb57 shellsettingsplugin: Never affect panels when not in Plasma Mobile
If the navigation bar setting is triggered, it can affect the Desktop session as well. Add a check to only change Plasma panels in Plasma Mobile.
2024-07-03 17:47:56 +00:00
Devin Lin
2f64036a4f quicksettingsplugin: Load quicksettings QML async
Resolves https://invent.kde.org/plasma/plasma-mobile/-/issues/379

This loads the quicksettings packages asynchronously. It also adds support for listening to model changes properly (row add/remove/move events) rather than have it reset every time a change is done.
2024-07-03 14:55:55 +00:00
Mr. Athozus
49a3579c55 Use marquee label for quicksettings titles 2024-06-29 20:35:42 +00:00
Devin Lin
acde5b389d lockscreen: Dynamically load status bar and action drawer as needed for performance
Currently the lockscreen takes 5 seconds to load for me on the OnePlus 6. This MR moves the quicksettings and status bar to only load once the initial lockscreen has loaded (to avoid blocking it). This brings it down the initial load to 1 second for me.
2024-06-29 20:29:06 +00:00
Mr. Athozus
8f9db42e8f Add setting for showing date in status bar
As the title said.

Requested in plasma-mobile/plasma-settings#17

I marked it as a draft because there is a small regression which removes vertical alignment of right icons.
2024-06-28 02:05:42 +00: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
3d90cee0c1 volumeosd: Fix missing import 2024-06-24 20:07:40 -04:00
Florian RICHER
3c81efa21c statusbar: Fix volume indicator not being visible
https://invent.kde.org/plasma/plasma-mobile/-/issues/375

Inspired by https://invent.kde.org/plasma/plasma-pa/-/blob/master/applet/contents/ui/main.qml
2024-06-24 23:43:43 +00:00
Devin Lin
e2e6590222 startupfeedback: Add support for multiple screens
Addresses https://invent.kde.org/plasma/plasma-mobile/-/issues/175
2024-06-23 16:48:32 +00:00
Micah Stanley
600fd05900 actiondrawer: Added the Over-Scroll Effect to all Portrait Mode Quick Settings States
Brought the over-scroll effect found in the pinned quick settings panel to all the portrait mode quick settings states.
This helps improve the user experience while also bringing more consistency when pulling down the panel.

![over-scroll](/uploads/a8531b6fb51fde6fc7dc9c9647945899/over-scroll.gif)
2024-06-22 04:50:09 +00:00
Marius P
17e92e72fc Proofreading 2024-06-17 00:02:08 +03:00
Nicolas Fella
628d248be2 Add QML module dependency 2024-06-09 22:56:32 +02:00
F_Chao Fengchao
4e1e9e8a9f Set translation domain for quicksetting plugins 2024-06-06 11:03:58 +08:00
Mr. Athozus
a889968e25 Use activated icon in status bar when Bluetooth is connected 2024-05-04 22:05:59 +00:00
Mr. Athozus
5b1f00d4ca
Load WirelessStatus in Internet indicator 2024-05-03 19:58:36 +02:00
Mr. Athozus
f6e34a4f84
Show hotspot and strength when it is activated 2024-04-27 21:48:46 +02:00
Devin Lin
e7877a6d7a navigationpanel: Remove feature that moves it to the right when the screen height is small
This feature continuously causes issues, and I don't really have time to keep looking at it again and again.

https://invent.kde.org/plasma/plasma-mobile/-/issues/321
2024-03-26 20:53:56 -04:00
Devin Lin
9a81cab748 volumeosd: Remove control binding, as it's done in plasma-pa now
See https://invent.kde.org/plasma/plasma-mobile/-/issues/337
2024-03-23 01:24:37 +00:00
Devin Lin
b496110aa3 volumeosd: Properly bind volume keys
Partially addresses https://invent.kde.org/plasma/plasma-mobile/-/issues/328

Apparently in in Qt 6 the "shortcut" property in QAction no longer maps properly to the given Qt key??

Qt.Key_VolumeUp/Qt.Key_VolumeDown -> no key

Then I tried putting in Qt.Key_A which mapped to Qt.Key_Ctrl + Qt.Key_Q... Using the `shortcuts` property made it work properly here.

This will be obsolete with Plasma 6.1 https://invent.kde.org/plasma/plasma-pa/-/merge_requests/221
2024-03-19 21:56:48 -04:00
Devin Lin
264197b7c6 components/mobileshell: Don't tie MarqueeLabel durations to kirigami duration lengths
Otherwise setting the animation speed will affect the MarqueeLabel speed, which will look very glitched if it's fast.
2024-03-16 11:53:25 -04:00
Devin Lin
348428035d widgets/mediacontrols: Fix base model reference 2024-03-11 00:56:11 -04:00
Devin Lin
408cd364f8 widgets/mediacontrols: Ensure multiplexer does not show
Fixes https://invent.kde.org/plasma/plasma-mobile/-/issues/261

Filter out the first element, since it's always the multiplexer (which duplicates existing sources).
2024-03-09 00:49:35 -05:00
Devin Lin
7ec8d5f54a widgets/mediacontrols: Fix uncentered icon in buttons
Use QQC2 components instead of PC3 components, now that theming works properly
2024-03-09 00:48:49 -05:00
Devin Lin
a66d07f3ff taskswitcher: Fix navigation panel position when in landscape mode
It used to get confused when in landscape mode, but the navigation panel is on the bottom of the screen.
2024-03-08 21:00:23 -05:00
Fushan Wen
f3f66a5d07 quicksettings: port BrightnessItem away from dataengine 2024-03-03 16:15:01 +00:00
Devin Lin
601dde21ab Fix low inertia scrolling with shell flickables
See https://invent.kde.org/teams/plasma-mobile/issues/-/issues/273
2024-02-25 17:53:58 -05:00
Luis Büchi
646be07c6c potential fix for gesture-only mode not working
call reconfigure in mobiletaskswitcher constructor to make it set the touch border.
this fixes the gesture-only mode in my setup, though one oddity remains: it only starts working after using the action drawer once - that may be an issue with my dev setup though.
2024-02-19 04:03:58 +00:00
Alexander Lohnau
907363c594 Remove Qt module includes 2024-02-16 13:38:23 +01:00
Alexander Lohnau
40dfc53486 Remove unused slot params 2024-02-16 13:37:26 +01:00
Devin Lin
aea30553b1 kcms/mobiledata: Clarify behavior when networkmanager wwanEnabled is off
In NetworkManager, there is a global "wwanEnabled" setting. We do not typically deal with this because toggling it off shuts off cellular in ModemManager (the mobile data toggle just disconnects the connection instead).

Here we ensure that we address the case when "wwanEnabled" is off, and ensure that it's on when mobile data is toggled on. Also remove a check in the SIM page that seemed to depend on it.
2024-02-13 19:49:38 +00:00
Devin Lin
037f24833c kcms/mobileshell: Remove gesture only navigation option for now
The KWin gesture currently does not work at all, so turning off the navigation panel makes it so the user cannot navigate.

See https://invent.kde.org/plasma/plasma-mobile/-/issues/300
2024-01-22 15:13:21 +00:00
Fushan Wen
d375914a8c StatusBar: remove excessive space 2024-01-22 10:52:02 +00:00
Fushan Wen
843977059b StatusBar: port away from statusnotifieritem dataengine
Task: https://phabricator.kde.org/T13319
2024-01-22 10:52:02 +00:00
Devin Lin
1dbd1505dc shell: Move wallpaper selector to homescreens directly 2024-01-02 03:32:15 +00:00
Devin Lin
77e59801d0 wallpaperimageplugin: Add plugin to allow for wallpaper editing in the shell 2024-01-02 03:32:15 +00:00
Mr. Athozus
0615412ae2
Add hotspot in quicksettings list 2023-12-25 12:52:50 +01:00
Nicolas Fella
0f99a3c8c1 Adapt to plasma-framework targets being renamed 2023-11-23 23:42:47 +01:00
Jonathan Esk-Riddell
67af6f35a6 use renamed kwayland 2023-11-23 18:54:43 +00:00
Devin Lin
4b99637427 startupfeedback: Iron out animation 2023-11-22 22:31:23 -08:00
Devin Lin
76177166cf navigationpanel: Have it on the bottom if the screen height is large enough 2023-11-22 20:48:22 -08:00
Devin Lin
e0768d64c0 startupfeedback: Handle case where same icon is used for opening 2023-11-18 18:27:43 -08:00
Devin Lin
4dddf9a46c startupfeedback: Ensure that old colours don't get shown when launching app 2023-11-18 10:11:57 -08:00
Devin Lin
b01f7fa6ab mobileshell/homescreen: Smoothen animation from lockscreen 2023-11-15 23:19:32 -08:00
Devin Lin
2e83a910a3 homescreens/folio: Clear krunner when closed 2023-11-15 23:11:03 -08:00
Devin Lin
a7ac976263 startupfeedback: Improve animation behaviour with activated apps 2023-11-15 22:33:44 -08:00
Devin Lin
871bee83c0 homescreens/folio: Use MultiEffect for blur and blur behind task switcher 2023-11-15 22:33:44 -08:00
Devin Lin
83ce339cda components/hapticsplugin: Introduce direct haptics API for hfd-service
Fixes https://invent.kde.org/plasma/plasma-mobile/-/issues/270

Introduce a direct haptics API for now for shell usage, and port to it. Also remove the vibration intensity setting as that didn't do anything.
2023-11-15 08:13:25 -08:00
Devin Lin
3e727945a0 mobileshell/widgets: Reference correct units 2023-11-12 23:05:03 -08:00
ivan tkachenko
22f7d490ba
Revert "Port away from PlasmaCore and PlasmaExtras to Kirigami"
This (partially) reverts commit 127bbdf653.

Only incorrect changes from Kirigami.Units.largeSpacing to
Kirigami.Units.gridUnit are reverted. Only Plasma.Units were buggy.
2023-11-08 21:16:19 +03:00
Devin Lin
a96c948120 mobileshell: Remove explicit check for navigationPanelEnabled when determining homescreen margins
Gesture mode now removes the plasmoid entirely, so this check is unnecessary
2023-11-05 14:42:34 -08:00
Devin Lin
f5cdb9a380 navigationpanel: Add setting to always have keyboard toggle shown 2023-11-05 12:14:37 -08:00
Yari Polla
4f45654af6 Port mobileshell plugins to ecm_add_qml_module 2023-11-02 11:08:17 +00:00
Devin Lin
3673c20d52 kcms/mobileshell: Remove unused task switcher previews option 2023-10-22 12:32:30 -07: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
Yari Polla
184b663903 dataproviders: declare SignalStrengthInfo as singleton 2023-10-21 11:32:41 +02:00
Yari Polla
3ca9dab083 dataproviders: declare BluetoothInfo as Singleton 2023-10-21 11:32:41 +02:00
Yari Polla
72657628b6 dataproviders: declare BatteryInfo as singleton 2023-10-21 11:32:41 +02:00
Yari Polla
73e020e448 dataproviders: declare AudioInfo as singleton 2023-10-21 11:32:41 +02:00
Devin Lin
ae0dc228a8 navigationpanel: Delete panel when in gesture-only mode 2023-10-20 22:46:31 -07:00
Yari Polla
e6ddb4f3c4 volumeosd: fix maximum volume behaviour 2023-10-20 11:53:58 +02:00
Luis Büchi
19de084968 fix NotificationItem to not override a final property
makes it work with the newest version of Kirigami https://invent.kde.org/frameworks/kirigami/-/merge_requests/1293
Inspired by https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/3409

On my machine this makes a fully fresh built plasma-mobile & all its dependencies work again
2023-10-20 01:14:26 +00:00
Alexander Lohnau
a4a14ca162 Do not store KPluginMetaData as pointer
This is unneeded, because KPluginMetaData is a QSharedData object
2023-10-17 05:14:04 +00:00
Yari Polla
5013c1704e components/baseitem: remove useless children push 2023-10-15 18:03:40 +00:00
Nicolas Fella
81af72f8cb Adapt to KService::property API change 2023-10-04 19:47:18 +02:00
Devin Lin
427077fa78 swipearea: Fix release when not in swipe 2023-10-03 22:47:08 -07:00
Devin Lin
552ab53b49 components: Add SwipeArea filter modes 2023-09-30 10:06:41 -07:00
Devin Lin
911d41e5ce actiondrawer: Port from Flickable to SwipeArea 2023-09-29 22:57:24 -07:00
Devin Lin
2d37ef0771 components: Introduce SwipeArea component 2023-09-29 22:56:49 -07:00
Devin Lin
58faa0362c statusbar: Fix polish loop 2023-09-28 20:41:18 -07:00
Devin Lin
f0bd410f41 widgets/notifications: Fix import 2023-09-26 23:06:24 -07:00
Devin Lin
ae8a278ab6 widgets/mediacontrols: Port to kmpris 2023-09-26 22:41:52 -07:00
Devin Lin
ee803b400a volumeosd: Port to new sort role field name 2023-09-26 21:35:42 -07:00
Devin Lin
7e012fc49a porting: Port away from PlasmaCore colors 2023-09-26 21:21:06 -07:00
Devin Lin
27e63a167d porting: Finish ksvg port 2023-09-26 21:18:39 -07:00
Devin Lin
b0aa4db836 widgets/notifications: Fix notificationmanager import 2023-09-26 21:08:49 -07:00
Nicolas Fella
a75c95237e Remove import versions from networkmanager imports 2023-09-24 20:47:29 +00:00
Carl Schwan
d8f3146de5
initialstart: Port to FormCard 2023-09-21 21:02:47 +02:00
Marco Martin
69dc189941 Make PlasmoidItem accessible from HomeScreen
it needs availableScreenRect which can be provided only from
PlasmoidITem
2023-09-20 14:41:40 +02:00
Marco Martin
d719f407dd Port away from using colorGroup property directly in svg items
SvgItem and FrameSvgItem automatically follow the colorSet of
Kirigami.Theme and to set a custom one the usual inherit api is used

https://invent.kde.org/frameworks/ksvg/-/merge_requests/22 removes those properties
2023-09-05 16:18:47 +00:00
Nate Graham
cc50aee72d Remove versioning from PlasmaCore module imports
It's unneeded in Qt6 and can cause subtle issues.
2023-09-05 09:34:49 -06:00
Marco Martin
908029d4a6 Port to KSortFilterProxyModel
port away from the PlasmaCore version

see https://invent.kde.org/frameworks/plasma-framework/-/issues/19
2023-08-29 14:30:12 +00:00
Nicolas Fella
7f79d7b86f Adapt to KNotificationJobUiDelegate moving to KJobWidgets 2023-08-21 22:00:23 +00:00
Marco Martin
42cccf8e7f port to Kirigami.Icon
Part of https://invent.kde.org/plasma/plasma-workspace/-/issues/82

PlasmaCore.IconItem will be removed; now only the kirigami icon
should be used.
2023-08-18 09:08:07 +00:00
Devin Lin
2801ad2d8e actiondrawer: Use proper units and adjust sizing 2023-07-24 22:46:50 -04:00
Devin Lin
1963340d4f Switch some uses of IconItem to Kirigami.Icon, and fix some theme porting 2023-07-24 22:24:23 -04: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
Alexey Andreyev
2275e2d7dd port QML to KSvg
Search and replace all the occurrences of Svg/FrameSvgItem/SvgItem
to their new implementation from KSvg.
Changes only namespace, API is the same

See also:
https://invent.kde.org/frameworks/ksvg/-/issues/1
2023-07-10 02:04:42 +03:00
Devin Lin
8a577f9a57 homescreens: Update API usage to match changes for Plasmoid & Containment 2023-06-12 19:58:17 -04:00
Devin Lin
14f3f07316 Convert more uses of QtGraphicalEffects to MultiEffect 2023-05-13 11:15:57 -04:00
Devin Lin
dffa0a9581 components: Port to MultiEffect 2023-05-12 22:07:48 -04:00
Devin Lin
12b9f1df9f components: Add TextDropShadow
Introduce shadow component that uses MultiEffect from Qt 6.5
2023-05-12 19:43:24 -04:00
Devin Lin
3f74522241 statusbar: Fix loading
Seems Qt 6.5 has some behaviour changes regarding required properties, which prevented the status bar from loading.

Fixes https://invent.kde.org/teams/plasma-mobile/issues/-/issues/231
2023-05-12 19:05:00 -04:00
Alexander Lohnau
194b26c8a2 Port to new org.kde.coreaddons QML module
org.kde.kcoreaddons is part of KDeclarative and will be removed in the future
2023-05-07 14:47:22 +02:00
Devin Lin
2603f461e6 homescreens/halcyon: Fix list highlight within folder 2023-04-19 22:18:05 -07:00
Devin Lin
f2777c016f startupfeedback: Remove debug message 2023-04-06 19:37:06 -07:00
Devin Lin
5c0fd57600 initialstart: Add first login experience
Adds an experience for users on first login, allowing some basic configuration.

This is separate from a first start wizard, which would run as a separate user with elevated permissions, and include options that an installer would have.
2023-04-01 07:09:57 +00:00
Devin Lin
763803528d windowplugin: Ensure that show desktop mode is taken into account 2023-03-31 22:20:56 -07:00
Devin Lin
372626b786 taskswitcher: Restore status bar and navigation panel 2023-03-31 22:10:02 -07:00
Devin Lin
3e1e1e7d22 envmanager: Extract kded settings management to separate app, add window decoration customization 2023-03-29 19:41:10 -07:00
Devin Lin
fc5b968534 quicksettings: Add docked/convergence quick setting 2023-03-29 19:41:10 -07:00
Devin Lin
fe8537c618 kwin/convergentwindows: Update to latest KWin changes, and remove KWin maximize mode
Disabled per-screen window decorations for now, since it seems KWin removed the screen property: 83c38b0907
2023-03-26 11:48:37 -07:00
Devin Lin
33771b4afd homescreen: Fix zoom animation behaviour with windows 2023-03-26 11:22:14 -07:00
Devin Lin
e16bdea17e mobileshellstate: Make sure DBus calls are async 2023-03-26 10:18:06 -07:00
Devin Lin
cadc5db962 mobileshellstate: Make lockscreen state DBus calls async 2023-03-26 10:03:11 -07:00
Devin Lin
32af510193 actiondrawer: Revert flickable change
Reverts the flickable change from 238d8a78cf, it seems to cause the animation to reset when dragging from pinned -> full size.
2023-03-25 23:45:48 -07:00
Devin Lin
083481d971 taskswitcher: Expose visible state to DBus and hookup to homescreen anim 2023-03-24 23:29:40 -07:00
Devin Lin
5f93d0198e homescreen: Activate animation after screen unlock 2023-03-24 21:27:52 -07:00
Yari Polla
238d8a78cf components/mobileshell: resize flickables 2023-03-21 12:03:05 +01:00
Yari Polla
afd8f59b89 milou: make possible to use keyboard and fix scrolling 2023-03-20 17:12:19 +01:00
Yari Polla
2da1bb150f components/gridview: simplify component 2023-03-20 15:12:55 +01:00
Yari Polla
31eeaee2cd widgets/krunner: make scrollable 2023-03-20 14:26:55 +01:00
Devin Lin
4bdacff13c taskswitcher: Account for shell panels in app preview
change
2023-03-19 22:17:44 -07:00
Devin Lin
0e4b1da9a1 volumeosd: Extract out singleton so that it's only loaded once in plasmashell 2023-03-19 21:10:49 -07:00
Devin Lin
f25840bfc2 mobileshellstate: Move to DBus API instead of trying to use shared QML context
This also allows us to trigger behaviour from other processes that import mobileshell
2023-03-19 18:32:52 -07:00
Devin Lin
3f309067ef widgets/krunner: Restore milou 2023-03-19 17:06:16 +00:00
Devin Lin
6160280b0c mobileshell: Dynamically load in heavy dependencies for singletons 2023-03-18 22:43:59 -07:00
Devin Lin
2d1610aaa2 mobileshell: Add constants singleton to reduce dependency on mobileshellstate 2023-03-18 22:06:48 -07:00
Devin Lin
95d1ec87b1 actiondrawer: Smoothen the brightness slider so that it doesn't jump when sending events 2023-03-18 20:05:44 -07:00
Devin Lin
b0d45d8409 statusbar: Cleanup and fix audio indicator not showing 2023-03-18 19:52:35 -07:00
Devin Lin
1449ea7b4e homescreen: Port to use shared WindowPlugin for zoom anim 2023-03-18 19:34:35 -07:00
Devin Lin
76b3c4ec4d mobileshell: Remove unused displaysmodel 2023-03-18 19:34:35 -07:00
Devin Lin
0c2f215a3f startupfeedback: Restore trigger from Plasma 2023-03-18 19:01:48 -07:00
Devin Lin
b1e0d41505 Add reuse header 2023-03-18 18:54:41 -07: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
Devin Lin
2653e2d816 actiondrawer: Fix typo 2023-03-18 17:32:19 -07:00
Devin Lin
9560d784a8 startupfeedback: Refactor so that fade in effect can be used for startupnotifier 2023-03-18 17:31:13 -07:00
Devin Lin
79e99a9cfe shellsettingsplugin: Extract out from mobileshell component 2023-03-18 12:28:28 -07:00
Devin Lin
9e8838834b taskpanel: Cleanup remnants of old task switcher 2023-03-18 00:02:01 -07:00
Devin Lin
462d99b83f quicksettings: Extract out from mobileshell into separate plugin 2023-03-16 19:44:36 -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
8d311ed97b windowplugin: Fix remaining references to old plugin 2023-03-15 08:20:15 -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
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
e21354bf63 quicksettings: add ability to enable/disable qs 2023-03-14 04:56:38 +00:00
Yari Polla
99d01f2d2a components/GridView: reset highlight when dragging 2023-03-14 00:18:18 +00:00
Yari Polla
8c31f51ee6 components/GridView: implement highlight component 2023-03-14 00:18:18 +00:00
Yari Polla
b7ae754def popupmenu: add license 2023-03-13 12:20:25 +00:00
Yari Polla
0640adc271 components/popupmenu: avoid showing maximised 2023-03-13 12:20:25 +00:00
Yari Polla
a2f6c51665 mobileshell/components: implement popup menu 2023-03-13 12:20:25 +00:00
Yari Polla
91bec04d9d use IntervalAlignment from P5Support 2023-03-09 16:45:30 +01:00
Yari Polla
44f6d5e6d8 port one remaining datamodel to P5Support 2023-03-09 16:09:24 +01:00
Marco Martin
acd8605a4f Port dataengine usage to plasma5support
DataEngines are deprecated and are being splitted in a (temporary lived)
compat library called plasma5support
2023-03-08 14:26:36 +01:00
Yari Polla
b866f6b70e use new PointerDevice names 2023-03-06 22:32:37 +01:00
Yari Polla
8b5ec57d0b explicitly declare signal handlers params 2023-03-06 14:09:54 +01:00
Yari Polla
2cf0d35f0c Update file ActionDrawerOpenSurface.qml 2023-03-06 11:49:25 +00:00
Devin Lin
f7d51d851a mobileshell: Remove nonexistent function call 2023-03-05 22:08:14 -08:00
Devin Lin
f65a7a1025 Disable QtFeedback 2023-03-05 12:53:09 -08:00
Devin Lin
97d549c34c homescreens/folio: Port to plugin architecture 2023-03-05 09:39:44 -08:00
Devin Lin
60b8dc0eea quicksettings: Fix not loading (Add KPackageStructure tag to meta) 2023-03-05 09:39:44 -08:00
Devin Lin
3bd81a68dd widgets/krunner: Disable for now 2023-03-05 09:39:44 -08:00
Devin Lin
ebb49d89a3 osd/audio: Port to ItemDelegate 2023-03-05 09:39:44 -08:00
Devin Lin
f0c756214a Port QtGraphicalEffects 2023-03-03 06:01:23 +00:00
Devin Lin
1dbb1c78f6 Port to Qt6/KF6 2023-03-03 06:01:23 +00:00
Yari Polla
c07aa84f63 quicksettings: fix PaginateModel 2023-03-01 01:38:09 +01:00
Devin Lin
d2b5416513 kded: Add startup settings manager
This adds a new component that manages Plasma Mobile specific configuration on every session startup. It also restores configuration when logged into a desktop session. 

This allows us to remove https://invent.kde.org/plasma-mobile/plasma-phone-settings, as well as configuration that was set in the look and feel. This also gives us an easy way to control configuration upgrade paths, and in the future, add ways for the configuration to easily be reset for debugging purposes.
2023-02-23 16:43:38 +00:00
Devin Lin
f913039b63 components: Remove splash screen close button support, due to crashing problems 2023-02-14 23:07:38 -08:00
David Redondo
750d5581ef Revert "Show all headers in qtc6"
There was no consensus for this in Plasma.
This reverts commit c79ca828f3.
2023-01-24 08:51:18 +01:00
Laurent Montel
c79ca828f3 Show all headers in qtc6 2023-01-22 18:30:45 +00:00
Devin Lin
6b843da34b Ensure all packages have translations enabled 2022-12-19 12:39:51 -05:00
Laurent Montel
ea2ccc4e4d Remove duplicate headers between cpp/h files 2022-12-19 13:29:20 +01:00
Devin Lin
c873dffce8 homescreen: Fix bottom margin in gesture mode 2022-12-10 22:05:25 -05:00
Devin Lin
1c82b58c11 actiondrawer: Load async 2022-12-10 21:40:33 -05:00
Devin Lin
ee4ba6815a homescreen: Fix binding loops caused by plasmoid changing dimensions 2022-12-10 21:40:21 -05:00
Devin Lin
389ba43b16 quicksettings: Fix count property not being updated
Causes the ActionDrawer to have incorrect information when layouting.
2022-12-10 21:20:22 -05: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
c4472ca39a Revert "taskswitcher: Improve performance of task preview loading"
This reverts commit 1ae83644c8.
2022-12-08 21:35:29 -05:00
Devin Lin
1ae83644c8 taskswitcher: Improve performance of task preview loading 2022-12-08 21:24:33 -05:00
Devin Lin
6314aaf4ae actiondrawer: Use simpler and more performant widescreen panel logic without clipping 2022-12-06 19:01:42 -05:00
Devin Lin
79798d57e7 actiondrawer: Introduce fix for black text even when opacity is 0 2022-12-05 11:12:45 -05:00
Devin Lin
79fe77eaea actiondrawer: Use Expo animations for pane movement 2022-12-04 12:09:00 -05:00
Nicolas Fella
a0fe7284ee Add missing KPackage link 2022-11-28 13:10:21 +01:00
Devin Lin
146bccc57f actiondrawer: Fix call to non-existent property 2022-11-24 12:04:11 -05:00
Devin Lin
08e8435603 quicksettings: Remove location quicksettings
It doesn't have any functionality, and we don't have a path forward right now for determining how to toggle GPS hardware
2022-11-23 19:48:53 -05:00
Devin Lin
f4877406e3 shell: Update to new usage of FormComboBoxDelegate 2022-11-18 17:37:07 -05:00
Devin Lin
1d86723398 mobileshell: Fix haptics path 2022-11-12 11:15:36 -05:00
Devin Lin
df65a0e0f2 mobileshell: Remove compile time QtFeedback dependency, and make it optional 2022-11-12 11:15:36 -05:00
Devin Lin
c6802da477 mobileshellstate: Ensure default value for notificationsWidget 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
Devin Lin
f85df674f1 quicksettings: Limit to 5 rows maximum on one page
Any more than that, and it gets disorienting for long phones.
2022-11-11 21:29:05 -05:00
Devin Lin
f4b15f922f components: Fix MarqueeLabel behaviour with new line characters 2022-10-27 20:09:46 -04:00
Devin Lin
06de6e416e statusbar: Don't use fractional font sizes 2022-10-27 20:01:16 -04:00
Devin Lin
ca671e1992 mmplugin: Cleanup signals 2022-10-23 15:33:47 -04:00
Devin Lin
a219c59a1f dataproviders: Fix mobile provider label 2022-10-23 15:16:46 -04:00
Devin Lin
bca3fb3626 mmplugin: Ensure variables are reset properly 2022-10-23 13:45:29 -04:00
Devin Lin
867dc32df2 mmplugin: Flesh out update signals and behaviour 2022-10-23 12:12:40 -04: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
Volker Krause
b5e5debad3 Port away from deprecated KIO::JobUiDelegate API 2022-10-14 13:30:00 +00:00
Devin Lin
10dcf8b17a components/mobileshell: Ensure app pids are cleared 2022-10-12 19:30:18 -04:00
Devin Lin
f3a4913147 widgets/mediacontrols: Add ability to activate source app on tap 2022-10-12 18:10:08 -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
Devin Lin
0c6f1a6649 navigationpanel: Fix incorrect property name reference 2022-10-01 22:43:32 +02:00
Yari Polla
838826b4fd homescreens: also close the search widget with Meta key 2022-09-27 16:01:09 +00:00
Devin Lin
ff51677daa quicksettings: Fix scrollview indicators 2022-09-24 17:34:57 -04:00
Devin Lin
31cb248a8a mmplugin: Add support for checking if a SIM is missing 2022-09-12 16:36:19 -04:00
Devin Lin
c6feac9ce0 taskpanel: Remove keyboard button setting, only show when unsupported 2022-09-12 08:12:24 -04:00
Devin Lin
5899830917 actiondrawer: Swap default keyboard toggle and do not disturb locations 2022-09-11 20:26:16 -04:00
Devin Lin
2aaf5fca98 navigationpanel: Add force keyboard toggle, and add setting 2022-09-11 21:45:12 +00:00
Devin Lin
a2170b4b3c mmplugin: Fix apn added request being true when no sim is inserted 2022-09-11 17:43:54 -04:00
Devin Lin
e9dad0651c quicksettings/donotdisturb: Fix incorrect package format 2022-09-10 13:56:01 -04:00
Devin Lin
1830b9dd2a quicksettings/donotdisturb: Move do not disturb button to quick setting 2022-09-10 12:41:08 -04:00
Devin Lin
83790daccd quicksettings/mobiledata: Add warning if APN is not configured 2022-09-09 23:37:15 -04:00
Devin Lin
58afb6be1b statusbar: Don't show SignalStrengthIndicator if mobile data is being used
Fixes https://invent.kde.org/plasma/plasma-mobile/-/issues/142
2022-08-14 11:42:11 -04:00
Devin Lin
0bc1607893 statusbar: Rename WifiIndicator to InternetIndicator, and consolidate 2022-08-14 11:34:46 -04:00
Devin Lin
30312c4e7a taskswitcher: Bold clear button text 2022-07-22 20:17:02 -04:00
Yari Polla
7f78cc4ff6 taskswitcher: implement close all button
Hi, this implements a close all button for the task switcher.

Regarding the double check (`Clear All` -> `Are you sure?`), as far as I know, no system has such a feature for this kind of operation, at the moment, so take it as a proposal.
2022-07-21 15:13:42 +00:00
Yari Polla
b8bdcdd825 widgets/krunner: add ability to close the widget with a tap on an empty area 2022-07-13 21:17:44 +00:00
Devin Lin
620fd8a433 quicksettings: Fix row count calculation 2022-07-10 23:18:34 -04:00
Devin Lin
fbc644fced mobileshell: Implement base flickable with higher maximum swipe speed 2022-07-08 21:59:55 -04:00
Aleix Pol
169cfc6354 QuickSettings: Make it possible for them not to be available
Makes it possible to QuickSettings components to only get listed if it
makes sense on the specific system.
2022-07-07 14:09:24 +00:00
Devin Lin
b7f1a5b379 homescreens/halcyon: Add drag and drop reordering of favourites 2022-06-29 00:22:42 -04:00
Devin Lin
4f3b9a1fae homescreens/halcyon: Fix gridview alignment, rename file to be more descriptive 2022-06-28 13:43:55 -04:00
Devin Lin
02bcf78742 homescreens/halcyon: Use ExtendedAbstractButton 2022-06-28 13:26:36 -04:00
Devin Lin
ba597e1de2 homescreens/halcyon: Turn off layer, and use handlers for grid delegates 2022-06-28 12:31:18 -04:00
Devin Lin
3a0a744051 quicksettings: Fix brightness slider alignment, and forced row count 2022-06-27 23:47:51 -04:00
Devin Lin
c4806c6fb5 navigationpanel: Cap width of buttons at 80% of panel 2022-06-27 21:47:15 -04:00
Devin Lin
e18d5f73ed osd/volume: Don't use padding in SwipeListItem to fix warnings 2022-06-27 17:29:34 -04:00
Devin Lin
5519abd82c navigationpanel: Properly cap width for wide screens 2022-06-27 17:28:41 -04:00
Devin Lin
eff9d3df9a homescreen: Don't play zoom animation when going between maximized window states 2022-06-27 16:53:40 -04:00
Devin Lin
d9fd104e08 lockscreen: Fix margins of notifications and centering 2022-06-25 14:38:47 -04:00
Devin Lin
0a76701af5 widgets/notifications: Use smaller button text, and adjust sizing
Fixes an issue where the ListView was sometimes not tall enough to hold the content despite the list not overflowing.

Also adjusts button text to be smaller.
2022-06-25 14:37:56 -04:00
Yari Polla
d8399e88be toppanel/notifications: add clean all and do not disturb
Hi, this MR adds "clear all" and "do not disturb" buttons to `NotificationsWidget`.

Few other corrections have been made:
 - Transitions should now work correctly, plus they can be disabled via `MobileShell.MobileShellSettings.animationsEnabled`;
 - Loaders are now asynchronous;
 - List items have now their own margins, in order to not clip their shadows.\

It only remains to implement a context menu to set do not disturb mode for a given period of time. I think it's a secondary feature on which we can work later, but in case tell me what to do.

Unfortunately I can't test the lockscreen on a phone at the moment, and I cannot take a performance test as well. It would be great if someone tested all these things, otherwise I'll provide as soon as possible.

Closes: https://invent.kde.org/plasma/plasma-mobile/-/issues/134
2022-06-25 12:35:15 -04:00
Devin Lin
74285d9261 mmplugin: Check for nullptr 2022-06-23 19:45:47 -04:00
Aleix Pol
7b163661d5 PipeWireThumbnail, Record: Wayland handling doesn't belong in KPipeWire 2022-06-23 11:25:08 +02:00
Devin Lin
0deef11ba7 components: Attempt to fix some cyclic dependencies 2022-06-22 11:48:46 -04:00