So reproduzieren Sie in Awesome WM v3.5.2 bis 3.5.5 (bis jetzt):
- Installieren Sie OpenJDK oder Oracle Java 7 . Dieser Fehler wurde bei beiden beobachtet.
- Starten Sie eine neue Awesome WM-Sitzung mit der Standardkonfiguration .
- Starten Sie entweder jEdit oder PyCharm . Dieser Fehler wurde bei beiden beobachtet.
- Bewegen Sie den Mauszeiger und beobachten Sie, wie er sich ändert, je nachdem, ob Sie mit dem Mauszeiger über Code, Projektdateien oder Menüs fahren. Dies sollte normal funktionieren.
- Klicken Sie kurz auf das Menü Datei , rufen Sie eines der Untermenüs auf und beobachten Sie, wie der Eintrag direkt unter dem Mauszeiger ständig fokussiert ist.
- Drücken Sie wiederholt Mod4+, Spacebis das schwebende Layout aktiviert ist (die Anwendung wird fast im Vollbildmodus angezeigt), oder öffnen Sie eine andere Anwendung im selben Tag.
An diesem Punkt würde ich erwarten, dass sich die Maus so verhält wie bei "normalen" Anwendungen. Stattdessen beobachte ich Folgendes:
- Beim Klicken und Navigieren in Menüs mit der Maus werden der Mauszeiger und das fokussierte Menüelement vertikal voneinander versetzt und haben scheinbar dieselbe Pixelanzahl wie die Höhe der Statusleiste.
- Wenn Sie wie zuvor über verschiedene Elemente fahren, wird das Cursorsymbol so eingestellt, als befände sich der Mauszeiger oben auf dem Bildschirm. Wenn Sie beispielsweise über die oberste Textzeile fahren, wird kein Textcursor angezeigt.
Es ist, als ob etwas nicht erkennt, dass sich die Fensterkoordinaten geändert haben.
Ein ähnlicher, aber viel ärgerlicher Fehler tritt auf, wenn Sie eine andere Anwendung im selben Tag öffnen - das Verhalten der Maus ist so, als hätte sich das Fenster überhaupt nicht bewegt.
Wenn Sie ein anderes Tag umschalten, bei dem bereits eine Anwendung geöffnet ist, wird der "virtuelle Maus-Desktop" in den oberen linken Bereich des Hauptbildschirms verschoben .
Da diese Fehler sowohl in OpenJDK als auch in Oracle Java mit verschiedenen Java-Anwendungen beobachtet wurden, ist es sehr wahrscheinlich, dass der Fehler in Awesome WM vorliegt.
Verwandte Frage , Artikel . Ich versuchte , die _JAVA_AWT_WM_NONREPARENTING
und wmname
Fixes, aber nicht gehen.
Antworten:
Nach meiner Erfahrung müssen Sie der Quelle spezielle Definitionen für den Fenstermanager hinzufügen.
Das ist mir vor ein paar Jahren im
marco
Fenstermanager des MATE-Desktops passiert . Die 'Korrektur' bestand darin, marco so zu tun, als sei er das übergeordnete Projekt, Metacity, und die in JDK integrierten Korrekturen für Metacity zu verwenden.von
src/core/display.c
:Dieser Fix riecht nach dem, was mit dem User-Agent-String in der Welt der Webbrowser passiert ist, aber er hat bei mir funktioniert.
Darüber hinaus erwähnt das Arch-Wiki Awesome WM in dem Abschnitt über das Imitieren anderer Fenstermanager, in dem es Folgendes empfiehlt
wmname
:https://wiki.archlinux.org/index.php/Java#Impersonate_another_window_manager
quelle
Dies scheint ein bekannter Java-Fehler unter Linux zu sein: https://netbeans.org/bugzilla/show_bug.cgi?id=227754
Unter der oben angegebenen URL finden Sie eine Problemumgehung für NetBeans IDE. Die Problemumgehung für die von mir verwendete Java-App besteht darin, die Java-App NICHT durch Drücken der Maximierungsschaltfläche zu maximieren, sondern die Fenstergröße manuell auf die von Ihnen bevorzugte Größe zu ändern. Bitte teilen Sie Informationen, wenn diese Ihnen helfen, danke!
quelle
DESKTOP_SESSION
funktioniert nicht. Versuchte mit mehreren der vorgeschlagenen Werte.