2013-07-17 105 views
1

我张贴这对yad list,显然启用隐形的顶部(没有人甚至认为它 - 通常情况下,该列表是非常敏感。),所以我我想我会看到你们中的任何人是否有一些想法。它可能适用于任何使用任何gui弹出式实用程序(如对话框,xdialog或zenity)的KDE桌面的bash脚本。获取GUI对话框弹出窗口(从bash)的停留在其他窗口

一般来说,我喜欢yad。它吹走了精神,开发人员通常会在那里回答问题并修复/增强内容。

本质上,我有一组脚本使用弹出gui对话框与用户进行交互。

,直到你点击鼠标其他地方的KDE桌面上同时显示弹出式窗口之一,它的伟大工程。

一旦你这样做,所有后续的对话框“出现”一切的背后,通常是除了在任务栏看不见的,必须从那里可以手动选择变得可见/活动/再次聚焦。

有没有办法解决这个问题?我认为这是一个桌面,而不是一个问题。

谢谢,

乔 的kubuntu精确的64位(KDE 4.8.5)


duplex我打印系统,写在bash,做多次调用从一个内(可能是嵌套到连日来)脚本。它很好,但有一个主要问题。

如果用户点击鼠标的任何地方连日来对话外,而脚本运行,并与连日来显示的东西,所有的后续连日来对话显示一切的后面,基本上是不可见的。

脚本仍然显示在任务管理器,所以这些对话可以通过一个被带回的前景之一,但它确实违反直觉的和讨厌。

我认为这是KDE的“功能”,而不是yad中的错误。 有什么方法可以修复/防止这种情况发生?我试图在对话框中加入--on-top,但它没有帮助。

当我运行该脚本(这可能需要一段时间,或者我可能需要做别的事情,而一个对话框等待输入),我不能因为怕有此问题发生的做别的。我可以切换到另一个桌面,但这是狡猾的,因为下一个对话框(但只有那个)可能会弹出并丢弃所有内容。 我使用kubuntu精确的ppa上的最新yad。

+0

你应该在stackoverflow上提出这个问题 - 它不是Ubuntu特有的。 – January

+0

您是否尝试过使用KDE窗口行为设置?你可以设置一个KDE窗口规则来保持一个窗口或一组窗口高于其他窗口。 – 2013-07-18 14:57:12

+0

@January我会很开心,有人在那里移动它。如果我只是做它,它不会交叉张贴吗? – Joe

回答

2

窗口的堆叠顺序由KDE窗口管理器控制。当UI应用程序(如yad)创建一个窗口时,它可以向WM传递首选属性,如“总是在最前面”。当这不出于某种原因,你可以尝试调用命令行实用程序,例如wmctrl指示的WM提高现有窗口:

wmctrl -a "Yad" 
+0

感谢您回复旧的题!我有两个相互关联的测试脚本:http://dl.dropbox.com/u/54584985/script1和 http://dl.dropbox.com/u/54584985/script2我一直在尝试一些你所建议的变体没有运气。如果你没有安装yad,那么其他一些对话框可能会做同样的事情。如果你或其他人能看到我做错了什么,我将不胜感激。亚德得到了更新,窗户现在保持在最高点,但仍然失去了重点。 – Joe

+0

我在GNOME/Metacity的Solaris上尝试过'wmctrl -a '。它按预期工作,包括获得键盘焦点。您可以用'wmctrl -l'列出活动的窗口名称。 –

0

谢谢!我与gedit自定义外部工具(sh脚本)混杂在一起的zenity对话框有相同的问题。增加了wmctrl -a "CVS commit" cmd固定它。