答案1
我遇到了这个问题并且无意中修复了它:
- 我进入“设置/外观”并启用了“自动隐藏 Dock”切换,因为这个 Dock 问题让我太困扰了
- 然后我通过将窗口大小从大调整到小,然后再调整回最大来测试该功能的工作原理
- 我发现自动隐藏不适合我,所以我禁用了该功能,然后发现问题已解决。
答案2
实际上,自动隐藏停靠或切换面板模式,或另一个选项 - 将面板位置从左到右再向后更改,这些都是有效的,但不是永久的(至少在我的情况下)。
我找到了解决方案,即创建在启动时运行脚本的服务。此脚本用于监视屏幕锁定/解锁。当屏幕被锁定时,它会启用自动隐藏选项。当屏幕被解锁时,它会禁用自动隐藏,从而调整所有窗口的大小。为什么要自动隐藏 - 我发现它比上面提到的其他两个选项效果更好。
- 创建脚本文件:
# i.e ~/.local/script/screen_watcher.sh
#!/bin/bash
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | \
( while true
do read X
if echo $X | grep "boolean false" &> /dev/null; then
sleep 0.5
gsettings set org.gnome.shell.extensions.dash-to-dock dock-fixed 'true'
elif echo $X | grep "boolean true" &> /dev/null; then
gsettings set org.gnome.shell.extensions.dash-to-dock dock-fixed 'false'
fi
done )
- 允许执行
sudo chmod +x ~/.local/script/screen_watcher.sh
- 创建服务实体文件(我为用户创建)
/home/<user_name>/.config/systemd/user/screen_watcher.service
[Unit]
Description=Screen watcher script service
After=default.target
[Service]
Type=idle
ExecStart=/home/<user_name>/.local/script/screen_watcher.sh
[Install]
WantedBy=default.target
- 启用服务。(请注意,必须以用户身份而不是 root 身份执行此操作)
systemctl --user enable screen_watcher && systemctl --user start screen_watcher
- 检查服务是否已启动并正在运行
systemctl --user status screen_watcher.service
希望这能有所帮助,直到恼人的重叠行为得到解决。