我正在运行 Ubuntu 20.04.5。最近,我的所有系统托盘应用程序图标(例如 Dropbox、Discord)都消失了,重新启动也无济于事。当我从终端运行 Dropbox 或 Discord 时,它们的输出都包含以下错误(以及许多其他输出):
libappindicator-WARNING **: 17:17:54.679: Unable to connect to the Notification Watcher: GDBus.Error:org.gnome.gjs.JSError.ValueError: domain.replaceAll is not a function
类似地,当我从终端运行 OBS 或 Talon(听写软件)时,我收到相关错误:
QDBusTrayIcon encountered a D-Bus error: QDBusError("org.gnome.gjs.JSError.ValueError", "domain.replaceAll is not a function")
这些程序在其他方面都运行正常,但我真的希望托盘图标能恢复,因为有些功能只能从那里访问。我搜索了这些错误,但没有找到任何有用的信息。
可能触发此问题的原因:软件更新程序最近更新了一些软件,但我没有注意更新了什么。另外,我最近才安装了 Talon。两者都是在托盘图标消失前不久。我还使用名为 Icon Hider 的 GNOME 扩展/调整来隐藏一些系统托盘图标,但我已经使用了几个月,没有出现任何问题。启用和禁用扩展也未能解决问题。
有谁知道这可能是什么原因造成的或者我该如何解决它?
答案1
这似乎在这里已修复:
您可以通过更改此行(约 470)来手动应用此修复程序~/.local/share/gnome-shell/extensions/[email protected]/util.js
Logger._domain = domain.replaceAll(' ', '-');
到
Logger._domain = domain.replaceAll ? domain.replaceAll(' ', '-')
: domain.split(' ').join('-');
在 X11 下,您可能需要重新启动 GNOME Shell(Alt+F2、r、⏎)。在 Wayland 下,您需要注销并重新登录。
这样做可以解决我的问题,直到新版本发布。
答案2
同一版本 20.4.5 LTS,同一问题
几周前更新后,我的所有托盘应用程序图标都消失了。
我没有使用 Talon 或扩展程序“Icon Hider”
这是我在使用剪贴板管理器“diodon”时看到的错误:
(diodon:3931): libappindicator-警告**:15:08:25.977:无法连接到通知观察器:GDBus.Error:org.gnome.gjs.JSError.ValueError:domain.replaceAll 不是函数
答案3
我在 Zorin OS Core 16.2(Ubuntu 20.04)中遇到了类似的问题,并分两步解决。首先,通过终端安装 gnome-shell-extension-appindicator(sudo apt install gnome-shell-extension-appindicator)。最后,安装扩展 AppIndicator 和 3v1n0 提供的 KStatusNotifierItem 支持(AppIndicator 和 KStatusNotifierItem 支持 - GNOME Shell 扩展)。 参考:如何使用托盘图标。就是这样。如果您还想将任何程序最小化到系统托盘,您可以安装名为 Kdocker 的程序(但仍需要执行前面提到的 2 个步骤)。