Commit graph

473 commits

Author SHA1 Message Date
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