Commit graph

439 commits

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