始终隐藏应用程序的窗口

始终隐藏应用程序的窗口

我正在使用 selenium webdriver 在我的 Web 应用程序的 Firefox 中运行自动测试,虽然一切运行正常,但是 Firefox 在运行时弹出所有内容,这有点烦人。

有没有办法可以让我始终默认隐藏 Firefox?或者每次打开时都将其最小化?

我真正想要的是它总是在默认工作区中打开。我正在使用 Ubuntu Tweak,所以我有 16 x 16 个工作区。我可以让 Firefox 总是在某个工作区中打开吗?

答案1

以下脚本允许您选择一个窗口,并在脚本运行时使该窗口最小化。它仅支持一个窗口,因此如果您打开应用程序的新窗口 - 该窗口不会受到影响。

您可以像这样轻松运行它:

python keep_minimized.py

脚本启动时,鼠标光标将变成十字形。选择要保持最小化的窗口。现在,每次该窗口获得焦点(无论是通过启动器单击还是 Atl+Tab),它都会最小化。

您可以从这里或从github要点

from gi.repository import GdkX11,Gdk
import subprocess
import time

def run_sh(cmd):
    # run shell commands
    p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
    out = p.stdout.read().strip()
    return out 

def get_window_xid():
    for item in run_sh("xwininfo -int").split("\n"):
        if "Window id" in item:
           return item.split()[3]

user_selection = get_window_xid()
screen =  Gdk.Screen.get_default()
while True :
    time.sleep(0.25)
    active_window = screen.get_active_window()
    if int(active_window.get_xid()) == int(user_selection):
        active_window.iconify()

答案2

我今天也遇到了同样的问题

解决方案:

  1. sudo apt-get install compizconfig-settings-manager(如果尚未安装 CCSM)
  2. 进入 dash 并启动 compizconfig
  3. 单击左侧窗格中的“窗口管理”
  4. 激活应用程序切换器

当 CCSM 要求您停用以前的切换器快捷方式时,只需同意即可。

现在你可以运行 selenium 服务器切换到另一个窗口:Super+S

相关内容