我刚刚从 18.04 升级到 20.04,我的 Dock 图标出现了问题。问题是 Dock 无法自行更新。
- 如果我打开一个应用程序,它不会显示。
- 如果我关闭应用程序,它不会消失
- 如果我从一个虚拟桌面切换到另一个虚拟桌面(自 16.04 以来我就有了独立的虚拟桌面),我将继续看到前一个虚拟桌面的图标(显示桌面上打开了多少个窗口的小点会更新)。
更新 Dock 的唯一方法是通过 Tweaks 更改图标主题外观,但每次我打开或关闭应用程序或每次从一个虚拟桌面切换到另一个虚拟桌面时,我都必须更改它。
在其他一些帖子中,他们说将主题设置为默认主题时问题得到解决,但没有一个主题对我有用。
这可能是什么?我该如何修复它?
谢谢你!
这是该问题的视频。
请注意,我很久以前就激活了隔离工作区设置,gsettings set org.gnome.shell.extensions.dash-to-dock isolate-workspaces true
请注意,每当我在调整时更改图标主题时,停靠栏都会更新图标。在 0:54 的某个时刻,停靠栏会自动更新,但这种情况偶尔会发生,并不总是按应有的方式发生。
https://drive.google.com/file/d/1DHJlnF-W_J6PRp6SZNl8AxNd1EbmTRFz/view?usp=sharing
(我想为错别字道歉,英语不是我的母语,而且我当时很着急,刚才我看了才注意到)
答案1
我遇到了完全相同的问题,因此我进行了调查。
根本原因是 JS 错误:(可在 中看到)。/usr/share/gnome-shell/extensions/[email protected]/dash.js
JS ERROR: TypeError: firstIcon is undefined
journalctl /usr/bin/gnome-shell -f
我现场编辑了该文件以确保这确实是问题所在,并替换了:
let firstIcon = firstButton.icon;
// Enforce the current icon size during the size request
firstIcon.setIconSize(this.iconSize);
和
let firstIcon = firstButton.icon;
// Enforce the current icon size during the size request
if (firstIcon) {
firstIcon.setIconSize(this.iconSize);
}
firstIcon
确保如果未定义,则不会停止执行。然后我使用Alt+ F2then重新加载了 gnome shell r,瞧,问题消失了!
我还没有调查为什么一firstIcon
开始为空。因此,我不知道我是否已经纠正了这个问题,或者只是它的一个症状,所以我不确定这是否应该变成 PR 或只是记录错误报告。
答案2
环境:ubuntu 20,wayland。
我的 Dock 栏显示错误的图标,但桌面显示正确的图标。
尝试过
sudo update-icon-caches /usr/share/icons/*
好像沒有效果。
@pernpas 在评论中提到的链接解决了我的麻烦:
https://askubuntu.com/a/1230850/413480
sudo apt install --reinstall gnome-control-center
答案3
dconf 重置-f /org/gnome/shell/extensions/dash-to-dock/
是重置 dock 行为并让其在 Ubuntu 上次升级后工作的最快方法。