| Summary: | "Virtual Display" button doesn't work, if krfb / krdc are not installed | ||
|---|---|---|---|
| Product: | [Applications] kdeconnect | Reporter: | Fabian Arndt <fabian.arndt> |
| Component: | plasmoid | Assignee: | Fabian Arndt <fabian.arndt> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | svengrewe |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Fedora RPMs | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/network/kdeconnect-kde/-/commit/b24d6298027fa0b94c61f2c27ecf955a5123d3fc | Version Fixed/Implemented In: | |
| Sentry Crash Report: | |||
|
Description
Fabian Arndt
2024-04-20 02:30:18 UTC
I'm not sure if this is considered a bug, or a feature request. I consider a silent failing button as a bug. I can confirm this bug. I didn't even know what to do as user because there was no hint from the system. KDE Neon doesn't even come pre-installed with krfb/krdc. I mean the virtual display feature doesn't work too but that's another issue. I'm working on it, in some capacity. I've implemented the necessary checks in the plugin already and I will try to gray out the button, if krfb isn't installed or krdc on the paired device. I'm not sure yet, how to communicate a failure.. and if I will actually implement it, but my change could prevent a lot of issues first hand. I failed to trigger the bot, here is my MR: https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/670 Git commit b24d6298027fa0b94c61f2c27ecf955a5123d3fc by Aleix Pol Gonzalez, on behalf of Fabian Arndt. Committed on 30/05/2024 at 23:13. Pushed by apol into branch 'master'. virtualmonitor: implemented capabilities check ## 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._ M +0 -1 declarativeplugin/qml/PluginChecker.qml M +29 -7 plasmoid/package/contents/ui/DeviceDelegate.qml M +4 -0 plugins/virtualmonitor/kdeconnect_virtualmonitor.json M +61 -1 plugins/virtualmonitor/virtualmonitorplugin.cpp M +25 -0 plugins/virtualmonitor/virtualmonitorplugin.h https://invent.kde.org/network/kdeconnect-kde/-/commit/b24d6298027fa0b94c61f2c27ecf955a5123d3fc |