10

Java 程序的 swing-UI 不能与awesome-wm完美配合。awesome 是 UNIX 的窗口管理器,它会自动调整程序窗口的大小,而 Swing-UI 不能正确识别这些调整大小。我不在乎 awesome 或 Java 是否有罪,我想知道我是否可以以某种方式更改我的 Java 程序,它们是否可以与 awesome 一起工作。这样我的程序的用户即使在使用异国情调的窗口管理器时也能获得正确的体验。

4

3 回答 3

51

最简单的解决方法 -从suckless 获取wmname并使用它将窗口管理器的名称设置为LG3D:

wmname LG3D

98%的时间这将解决问题。

于 2009-11-09T14:59:01.757 回答
9

从 awesome 的手册页:

BUGS
   Of course there´s no bug in awesome. But there may be unexpected behaviours.

   Java applications which use the XToolkit/XAWT backend may draw grey windows only. The XToolkit/XAWT backend breaks ICCCM-compliance
   in recent JDK 1.5 and early JDK 1.6 versions, because it assumes a reparenting window manager. As a workaround you can use JDK 1.4
   (which doesn´t contain the XToolkit/XAWT backend) or you can set the following environment variable (to use the older Motif backend
   instead): AWT_TOOLKIT=MToolkit
于 2009-04-06T15:23:06.587 回答
3

可能会发现这与使用 Compiz 和 Java(至少在 Ubuntu 上)遇到的问题类似,但我猜。

对此(取自此处)的解决方法是将以下环境变量添加到您的程序中:

AWT_TOOLKIT="MToolkit"
于 2009-04-06T13:05:55.763 回答