Project

General

Profile

Open eCard unter Plasma nicht nutzbar

Added by Frank Noack over 7 years ago

Hallo

Seit der Einführung von Plasma lässt sich open eCard unter KDE nicht mehr nutzen, da xembed für die Darstellung des Icon im Systray nicht mehr unterstützt wird. Dies betrifft auch andere Java basierte Programme. Da sich open eCard nach dem Start sofort iconifiziert im Systray ablegt kann es dort mangels Unterstützung nicht bedient werden. Das Icon wird zwar dargestellt es sind aber keine Kontextmenüs verfügbar. Ist diesbezüglich Abhilfe in Sicht?

Danke Frank


Replies (10)

RE: Open eCard unter Plasma nicht nutzbar - Added by Tobias Wich over 7 years ago

Das Problem liegt in der SystemTray.isSupported() Implementierung. Diese liefert bei Plasma true zurück, obwohl das für xembed nicht zutrifft. Würde die Erkennung hier korrekt arbeiten, dann würde die App als normale Applikation mit einem Frame gestartet.

Mit Plasma 5 ist die xembed Spezifikation anscheinend wieder in Plasma implementiert worden, deshalb würde ich sagen abwarten und hoffen, dass die Distributionen zügig updaten.
Siehe "Restored Legacy Icons in System Tray Support" in https://www.kde.org/announcements/plasma-5.5.0.php.

RE: Open eCard unter Plasma nicht nutzbar - Added by Frank Noack over 7 years ago

Ich bin unter Gentoo aktuell auf Plasma 5.7.4, also vollständig aktuell und es funktioniert nicht. Das heißt, ja das Icon liegt dort, aber es ist "tot".

RE: Open eCard unter Plasma nicht nutzbar - Added by Tobias Wich over 7 years ago

Möglicherweise fehlt diese Funktionalität per default und muss erst mit entsprechenden use-flags angeschaltet werden.
https://wiki.gentoo.org/wiki/KDE/Plasma_5_upgrade#Missing_systray_icons

RE: Open eCard unter Plasma nicht nutzbar - Added by Tobias Wich over 7 years ago

Also der Fall ist jetzt klar. Der xembed fix ist vorhanden, deswegen wird das Symbol angezeigt.
Allerdings ist die Implementierung fehlerhaft wie in folgenden Issues (es gibt noch mehr dazu) dokumentiert ist.

https://bugs.kde.org/show_bug.cgi?id=362941
https://bugs.kde.org/show_bug.cgi?id=355504
https://bugs.kde.org/show_bug.cgi?id=340447
https://bugs.kde.org/show_bug.cgi?id=358328
https://bugs.kde.org/show_bug.cgi?id=356500

Solange sich da nichts tut wird das icon auch nicht mehr funktionstüchtig werden.
Eine Implementierung mit libappindicator würde native Bindings mit JNI oder JNA nach sich ziehen. Das ist im Moment keine Option.

Wie heute Früh bereits gesagt müsste man den Frame benutzen. Soweit ich das erkennen kann würde dafür die Umgebungsvariable KDE_SESSION_VERSION=5 taugen.

RE: Open eCard unter Plasma nicht nutzbar - Added by Frank Noack over 7 years ago

Danke für den Patch. Leider konnte ich ihn noch nicht testen, da ich vom patchen null Ahnung habe. Also nicht null, aber ich weiß nicht wirklich was ich patchen soll. :-/

RE: Open eCard unter Plasma nicht nutzbar - Added by Tobias Wich over 7 years ago

Ein update ist über den JNLP verfügbar.

RE: Open eCard unter Plasma nicht nutzbar - Added by Torsten Brodbeck over 7 years ago

Erfolgreich unter KDE 5.5.5 ohne jegliche Anpassungen getestet.

Die "Open eCard App" kommt nun als Frame hoch und lässt sich wieder verwenden.

RE: Open eCard unter Plasma nicht nutzbar - Added by Frank Noack over 7 years ago

Läuft auch bei unter mir unter Gentoo jetzt. Hab noch Probleme mit dem Tunnel und bekomme die Transportpin nicht ersetzt, aber das ist ja ein anderes Thema.

RE: Open eCard unter Plasma nicht nutzbar - Added by Johannes Kehrer over 5 years ago

Hallo,
Ich habe KDE 5 unter OpenSuse Tumbelweed.
Eigentlich schaut es aus, als ob ich genau dieses Problem habe, das hier oben beschrieben wird.
Also, ich sehe nur das Open eCard logo und keinerlei Menus oder sonstwas wird angezeigt.

Allerdings sollte das Problem ja behoben sein.

Kann es auch noch andere Ursachen haben?

Sollte ich mal das Oracle Java statt IcedTea ausprobieren?

Ich habe mal die Konsolenausgabe angehängt, die ich bei einer Session bekomme.
Ganz oben, wird die Environmentvariable KDE_SESSION_VERSION=5 gesetzt, hilft aber nichts.

    (1-10/10)