https://bugs.kde.org/show_bug.cgi?id=200776

--- Comment #17 from Arek Guzinski <ker...@ag.de1.cc> ---
Ok... so i looked at the code, played around and realized 2 things:

The bad:
I don't think this problem can be fixed in krdc alone. 
The solution Sektor van Skijlen proposed is how I'd try to solve it - but this
can't be done because embedding another X application blocks most focus events
from krdc.
Possible workarounds: 
  a) having kwin (or a kwinscript) notify krdc if the window changes via dbus.
     Contra: would depend on using a window manager that can do that - AFAIK
this means kwin or xmonad.
  b) Monitoring xfreerdp for messages that hint at a focus change.
     Contra: might need modifiyng freerdp.
  c) Fixing whatever causes the lost focus events (possibly Qt - more likely X.
And there is no way I'm touching Xorg code!)

Has anyone tested this on wayland? if so: whats the situation there?

The good:
the above isn't really necessary, as freerdp has already (mostly) fixed this :)
In my tests with the current version from git (2.0.0-dev4) keys are almost
always properly released. Beeing a development version, of course, it has some
quirks (like sometimes randomly grabbing all keys until you press right ctrl).
But I found using it more pleasant than having to deal with unreleased keys.

In short: workaround = upgrade to current freerdp from git.

If anyone really can't use the git version I might be persuaded to implement
a). Otherwise I'll consider it "almost resolved upstream". (is this enough to
change status to resolved ?)

also: @Christoph Feck thanks for the links :). However this wasn't enough, as
krdc would still load both versions of the plugin - and always use the wrong
one :/.
I worked around it by placing these 2 lines at the start of
MainWindow::loadAllPlugins()
    const QString badpath =
QString::fromUtf8("/usr/lib/x86_64-linux-gnu/qt5/plugins");
    QCoreApplication::removeLibraryPath(badpath);

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to