如何设置焦点跟随鼠标?
有没有办法在Unity中设置“焦点跟随鼠标”行为?
13.04及更高版本(GUI)
可以使用unity-tweak-tool设置后续对焦设置
12.10及更高版本(命令行)
以下控制后续焦点
gsettings set org.gnome.desktop.wm.preferences focus-mode 'sloppy'
要么
gsettings set org.gnome.desktop.wm.preferences focus-mode 'mouse'
使用值'click'
重置为标准焦点控制。
注意: 'sloppy'
和'mouse'
之间的区别在本答案的底部描述。
此外,您还有以下选项,在设置时,会自动提升窗口以获得焦点:
gsettings set org.gnome.desktop.wm.preferences auto-raise true
您可以控制此自动提升function的延迟(以毫秒为单位):
gsettings set org.gnome.desktop.wm.preferences auto-raise-delay 500
您可以更改raise-on-click
以控制顶部的窗口:
gsettings set org.gnome.desktop.wm.preferences raise-on-click false
12.04
12.04的两种方法如下:
方法1
使用gconf-editor
并将显示的焦点模式值更改为mouse或sloppy
(见下面的注释)
如果没有安装gconf-editor
那么可以通过terminal命令安装:
sudo apt-get install gconf-editor
此外,您还有以下键,在设置时,会自动将窗口设置为焦点 – auto-raise
。
您可以通过更改键值auto-raise-delay
来控制此自动提升function的延迟(以毫秒为单位)
方法2
使用gnome-tweak-tool
将窗口焦点模式更改为鼠标或马虎
(见下面的注释)
“老鼠”vs“马虎”
焦点模式“草率”似乎更好地允许Alt + TAB覆盖焦点。
“鼠标”表示如果鼠标不在窗口中,则无论您以其他方式选择了什么,都不会选择窗口。
窗口对焦模式指示如何激活窗口。 它有三个可能的值; “click”表示必须单击窗口以便聚焦它们,“sloppy”表示当鼠标进入窗口时窗口被聚焦,“鼠标”表示当鼠标进入窗口时窗口被聚焦而当鼠标离开窗口时未聚焦。
控制顶部的窗口
以下窗口选项控制其他窗口(或“顶部”)的窗口。 它与输入焦点的窗口略有不同。 以下描述有助于解释。
提高上点击
一些使用焦点跟随鼠标的用户不喜欢与之交互的窗口到达顶部,除非他们明确地点击窗口的平铺栏。 在使用多个窗口时,这可以提供更精细的控制,但对大多数用户来说可能会令人沮丧。
自动加薪
一些使用焦点跟随鼠标的用户,比如让光标所在的窗口自动升到顶部。 这使窗口全视图,没有其他窗口遮挡它。
自动加注延迟
触发自动提升行为之前等待的时间长度。
这可以通过CompizConfig设置管理器完成。 我已经在11.10,12.04和12.10测试了它,并且Elder Geek在14.04成功测试了它。 和16.04
选择“焦点和提升行为选项卡”,然后取消选中“单击以进行聚焦”。 确保选中“自动提升”。
如果未安装CompizConfig设置管理器(也称为“CCSM”),则可以从软件中心或命令行执行此操作:
sudo apt-get install compizconfig-settings-manager
然后,您可以从命令行以ccsm
启动它,或者从带有“compiz”或“ccsm”的启动器启动它,
以下是运行ccsm的一些一般注意事项:ccsm 的一些问题是什么?
虽然您可以使用gconf-editor或gnome-tweak-tool来执行此操作,但默认情况下不会安装它们。 我也发现了(来自http://blog.bodhizazen.com/linux/gnome-3-focus-follows-mouse的intarwebs):
gconftool-2 --type string --set /apps/metacity/general/focus_mode mouse gconftool-2 --type boolean --set /apps/metacity/general/auto_raise true gconftool-2 --type integer --set /apps/metacity/general/auto_raise_delay 600
就个人而言,我不喜欢auto_raisefunction,所以我将第二个选项设置为“false”,并且没有设置auto_raise_delay选项。
但请注意,这最终会“破坏”统一菜单栏(UMB)(当您将正在使用的项目鼠标移到另一个项目上时,统一菜单栏现在可以反映您现在hover的任何内容)。
两个解决方法:
- 在访问UMB之前将窗口移动到屏幕顶部
- 按F10键,这将使UMB在焦点窗口中保持打开状态,以便您进行交互
最近测试精确
更多编辑:我在引号中加上“中断” – 是的,它并没有真正破坏 ,但它打破了IMO UMB的意图 ,或者至少使其具有挑战性,正如Reese在评论中正确指出的那样。 国际海事组织,这是“打破简单的可用性,但有一个恼人的解决方法。” 虽然由于Linux专注于提供非常强大的多任务处理(这往往导致“混乱”的桌面),但似乎UMB减少了多任务处理,或者多任务处理削弱了UMB的能力。 我将把这作为练习留给读者来决定……
另一种启用焦点跟随鼠标的方法在最近的12.10安装中为我工作。 目前12.10中存在一个错误 (以及针对该链接的nealmcb的特殊喊叫),这会导致ccsm或gsettings在注销或重新启动时恢复。 我尝试了几种不同的方法来欺骗这个bug,但最终在这篇关于使用Unsettings的post上取得了成功。
如果该页面迁移,该过程可归结为:
sudo add-apt-repository ppa:diesch/testing sudo apt-get update sudo apt-get install unsettings
启动取消设置,转到Windows选项卡,然后关闭Click to Focus 。 我重新启动以使其“接受”,但可能只需要注销并重新登录。
为了将来参考,听起来很快就会出现这个错误修复,因此CCSM或gsettings的常规方法应该恢复正常工作。