如何禁用“窗口无响应”对话框

如何禁用“窗口无响应”对话框

在调试 UI 程序时,我经常看到“等待或强制退出”对话框。

这非常烦人,因为这个对话框基本上阻止了一切。整个图形系统不再可用,直到我选择其中一个选项。

我想完全禁用此功能或至少可以选择忽略该窗口。

答案1

在 mutter ≥ 3.35.92 版本中,您可以设置用于检查窗口是否仍处于活动状态的超时时间。这对于通过高延迟的 ssh 进行 X-forwarding 也很有用。例如,您可以使用以下命令将超时时间设置为 60 秒(60000 毫秒):

gsettings set org.gnome.mutter check-alive-timeout 60000

答案2

这是一个已知问题。请参阅在 gdb 中调试时,“程序”没有响应

从其他错误报告来看调试程序时不断显示 <something> 无响应窗口,这似乎是相关的,该问题似乎已在gnome-shell3.28.4 版本中修复。

跑步apt-cache policy gnome-shell 了解您安装的版本

如果您使用的是旧版本,请尝试通过运行以下命令升级您的 Ubuntu18:

sudo apt update
sudo apt dist-upgrade

但是,对于 gdb 调试来说,这个问题仍然存在。

作为替代方案,延迟“窗口无响应”对话框可能是一个很好的解决方案。如何增加无响应程序的等待时间?与此相关,但我找不到有关如何执行此操作的详细信息。

答案3

如果无法更新和修补或不方便,则有一个更简单的解决方法。

  • 在 HOME 文件夹中创建一个同名的包装脚本zenity。(检查 $PATH,了解确切~/.../bin位置)。
  • 通过检查参数,过滤掉带有mutter-dialog特定参数的调用。
  • 将所有其他调用传递给原始 zenity( /usr/bin/zenity $@)

参考:RH 错误:预链接/编译/加载时,令人厌烦的 zenity“强制退出”或“等待”弹出窗口

答案4

gsettings set org.gnome.mutter check-alive-timeout 60000我尝试运行Vaelus 的回答。没用。我之前dconf检查过这个check-alive-timeout值,它仍然是默认的 5000。

所以我手动将该值更改dconf为 60000。这次它成功了。

所以:

  • 打开dconf(你可以用命令打开它dconf-editor
  • 选择org菜单,然后在其中选择gnome,然后选择mutter
  • 将值更改check-time-out60000,表示等待 60000 毫秒,直到弹出强制退出或等待窗口。

相关内容