帮酷LOGO
0 0 评论
  • 显示原文与译文双语对照的内容
文章标签:桌面  Window  Unity  GTK  启动器  显示  DES  运行  


问题:

我想制作一个固定到桌面的Gtk.Window,它像桌面小部件一样。 我已经发现我可以通过设置 self.set_type_hint(Gdk.WindowTypeHint.DESKTOP) 它使它低于 Windows,不动,不敏感显示桌面统一插件。 但是,如果单击小部件外面的桌面区域,窗口将隐藏在桌面后面,我无法返回( 我必须杀死这个程序)。

什么是最好的处理方法? 我还发现了一个窗口,如果我设置skip_taskbar提示并停用一个设置,我还是不会弄乱。

找到忽略显示桌面,但是仍然无法跳过启动栏。 桌面窗口提示适用于这一点,但上面提到的缺点。 我还在。desktop文件中设置了 WM_CLASS,但Unity似乎忽略了。


回答 1:

Figured。你需要将类型提示设置为 Gdk.WindowTypeHint.DOCK,然后也设置 skip_taskbar_hint 或者 skip_pager_hint

这个窗口可以工作,但即使使用 skiptaskbar,窗口仍然可以显示为启动栏中的icon。 我需要一个更好的方法。

EDIT2 ! 这个问题来自于与我试图制作桌面小部件的程序相同的栏中的其他启动器。 要区分自身,你需要在程序中设置窗口的WMClass,以及在它的。desktop启动器内:

在代码中:


Gtk.Window.set_wmclass(WMname,WMclass)



在。desktop启动程序中:


StartupWMClass=WMname




回答 2:

我有一个运行的应用程序完全按照你的意愿运行: 它是桌面模式下的 rainlendar2. XwinInfo输出:






xwininfo: Window id: 0x1200086"rainlendar2"



 Window manager hints:


 Client accepts input or input focus: Yes


 Initial state is Normal State


 Displayed on all desktops


 Window type:


 Dock


 Window state:


 Skip Pager


 Skip Taskbar


 Below


 Sticky




这是如何转换为 gtk+/gdk标志的。 但似乎粘性起了作用。




文章标签:Window  DES  显示  桌面  Unity  运行  启动器  GTK  

Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语