窗口管理器破坏了 Firefox

窗口管理器破坏了 Firefox

我的笔记本电脑上运行着 Ubuntu 22.04。我喜欢使用 Firefox。它默认以 snap 包的形式安装。我在我的设置中使用了一台额外的显示器,其分辨率与笔记本电脑的显示屏相同。

当我在最大化窗口中使用 Firefox 时,窗口会在某个时间点中断。中断的意思是,将鼠标悬停在链接、文本编辑器、菜单项或其他任何内容上都不会导致光标的可见响应(但也不会出现工具提示)。就好像所有东西上方都有一个不可见的窗格。单击会立即生效,浏览器也会做出适当的反应。所有这些也适用于窗口本身的按钮(菜单栏、关闭、最大化……)。

尝试拖动窗口时,起初它似乎卡住了,但拖动得足够远会导致窗口“分离”/“未最大化”。我现在可以像往常一样拖动它,但窗口本身将保持其原始“间距/分辨率”。请看图片。

拖放浏览器窗口

将单个或多个选项卡拖拽到新的或未损坏的窗口即可,并且窗口正常。

使用两个显示器时,这个问题似乎出现得更快,但使用一个显示器时也会出现这个问题。一段时间后,非最大化窗口也会发生这种情况。这仅适用于 Firefox 中的窗口。

我不确定这是 Firefox 的问题还是 GNOME 的问题。

答案1

我在 Arch Linux 系统上通过 Flatpak 安装 Firefox 时遇到了同样的问题。我能够通过将 Firefox 配置为在 Wayland 而不是 XWayland 上本地运行来解决这个问题。

诊断问题

首先,让我们确定 Firefox 是否在 XWayland 下运行:

  1. 打开 Firefox,在地址栏中输入about:support并按 Enter。
  2. 向下滚动直到找到“窗口协议”部分。
  3. 如果显示xwayland,则表示您正在 XWayland 上运行 Firefox。另一方面,如果显示wayland,则表示您正在 Wayland 上本机运行它。

Flatpak 用户的解决方案

虽然我使用的是 Flatpak 版本的 Firefox(而不是您的 Snap 版本),但根本原因可能相似。以下是我使用 Flatpak 版本解决此问题的方法:

  1. 我安装并打开了“Flatseal”应用程序——Flatpak 应用程序的权限管理器。
  2. 在 Flatseal 内部,我找到了 Firefox 应用程序设置。
  3. 我禁用了 Firefox 的 X11 支持。

Flatseal 配置选项的屏幕截图。

进行此更改并重新启动 Firefox 后, 中的“Window Protocol”选项about:support显示wayland,确认 Firefox 现在已在 Wayland 上本地运行。此外,所述问题也消失了。

注意:如果您使用的是 Firefox 的 Snap 版本,则可能需要搜索类似的设置或方法。

答案2

我有完全相同的症状,但我使用的是 snap firefox,所以@Jeroen 的解决方案对我来说不起作用。

但是我发现你也可以使用 env 变量启用本机 wayland 支持(适用于我的 snap firefox)

$ MOZ_ENABLE_WAYLAND=1 火狐

相关内容