Flat is better than nested. Those non-graphical components don't need to
be buried deep inside visual hierarchy tree. For example, for me it was
confusing to find the device label item after Battery, Connectivity and
VirtualMonitor only to realize some time later that those were not
actual visual indicators.
BUG: 485829
## Summary
Currently, the plugin just fails silently if the local device is missing the `krfb` package or if the remote device misses an `vnc://` protocol/scheme handler. You click the button and nothing happens.
One issue is, that the plugin is considered `virtualmonitor.available` in the `DeviceDelegate.qml`, even if the check for `krfb-virtualmonitor` fails and no dbus-path is provided. I investigated the behavior a bit, but ignored it in the end as this MR benefits from being shown for device constellations that _could_ provide this feature.
A warning is shown with brief instructions, how to get the plugin working correctly.
- Check if krfb-virtualmonitor is available locally
- Check default scheme handler for vnc:// on device (Linux)
- Show warnings / reasons, if no connection could be established
## Test Plan
Regarding if the devices have mentioned packages installed, we should see different behaviors.
If the remote device has no VNC client, it can not connect to out server. _A warning should be shown._
If the local device hasn't the `krfb-virtualmonitor` available, the remote device couldn't connect. _A warning should be shown._
If both problems are present, _both warnings should be shown._
If none of these are present, no warning should be shown and we should try to establish a connection.
The connection attempts failed? _A warning should be shown._
Currently the plasmoid is still written for KF5/Plasma 5, and in addition
it also still uses PlasmaComponents2 stuff, which has been removed in
KF6/Plasma 6. So, this is an attempt to port the plasmoid so that it works
in Plasma 6.
BUG: 476389
As discussed in Matrix and BUG: 474121 this plugin is confusing (because
it doesn't actually take a photo, it just launches the camera on your
phone) and its use case can be covered by taking a photo and sharing it,
which only requires a couple extra clicks.
Continues the work started in !396 by rebasing it onto latest master and
making the "send clipboard" button from the plasmoid invisible when
automatic syncing is enabled.
I didn't find a way to do the same in kdeconnect-indicator and
kdeconnect-app (why do we have 3 UIs???), so in those we always show the
option for now.
Add the necessary bits for XDG activation to work
Move the code for launching the settings from the daemon to the respective processes so that we don't need to pass activation tokens over another process boundary
Visually a new scrollbar is now displayed and in terms of behavior
changes the scrolling is now consistent with the other plasmoid.
![image](/uploads/76d7c4e73636be11a78c4e9be22a8027/image.png)
## Summary
Use a pretty, granular icon for battery and connectivity status instead of whacking it into the device name.
## Test Plan
It looks so nice!
![image](/uploads/7e64d1339507e1dae90ee70c02327aa6/image.png)
Tested all provided icon states by hacking Battery.qml and Connectivity.qml to provide different values.
We have a few places that open the KCM, with different arguments.
Centralize the implementation in one place.
This makes it easier to switch to invoking systemsettings5 in the future (once https://invent.kde.org/plasma/systemsettings/-/merge_requests/11 is in).
It also makes sure the relevant device is selected when clicking on a pairing notification.
The function is exposed to DBus for the Plasmoid and potential third-party users.
CCBUG: 425660
Instead of having the DBus stuff in a separate class expose the plugin class itself like we do for the other plugins.
Replace the method-based API with properties.
Change the path to <device>/battery for consistency with other plugins
Summary:
This patch makes the "devilces unavailable" page follow the general style used in other
similar views throughout Plasma and other KDE software. It also improves the wording
of various buttons and headers to make them more context-sensitive and thus more relevant
to what the user needs to do to solve the problem.
Test Plan:
{F8149680}
{F8149679}
Reviewers:
#VDG, #kde-connect
Subscribers:
Summary:
Change the three dotted menu to use PlasmaComponents ContextMenu.
This prevents menu from staying open on other system tray's applets.
Wayland still has that issue, happens in other menus too.
BUG: 415142
And change menu icon into a hamburger menu.
Test Plan:
Before:
Open the menu, and then open an other applet. Menu will stay open on
the left. Even if change windows and open the system tray, will still
be there.
After:
Use X11. By clicking, for example volume applet, menu will minimize.
Will need to click again to open the applet.
If you already have kdeconnect on your phone, the call to action to install
it doesn't make sense.
This doesn't add a string because it reuses one that was already in the
plasmoid