某些应用程序(例如 Chrome 和 Firefox)具有自己的可拖动标题栏,并且没有系统边框看起来更加美观。
然而,这似乎是有代价的。无论您是通过应用程序启用此功能还是使用 Plasma 自己的 (KWin) 设置,您打开的下一个窗口都会出现在所有活动中。
禁用此功能并重新使用系统边界,新的程序实例将再次遵守活动。
我注意到有一个设置可以选择程序打开哪个活动,但唯一的选项是“所有活动”和一个活动列表[始终打开](没有“当前活动”选项,这必须是默认的、未选中的设置..这不起作用)。
有没有办法让它正常工作?
也许可以使用键盘快捷键将当前窗口锁定到当前活动(就像有快捷键可以将窗口移动到另一个桌面一样)?
或者可以使用调用程序的小脚本为可执行文件设置别名,但使用 dbus 或其他东西手动将其放入活动中?
答案1
好的,所以我有一个有效的解决方法。与其使用快捷方式设置当前活动(这似乎没有脚本就不可能实现),为什么不让 Plasma 像添加边框时那样处理该问题,并设置一个快捷方式来删除边框?
在应用程序中(在本例中为 chrome)准备像往常一样无边框显示;
right click area next to tabs
→ 取消选中Use system title bar and borders
这会让 chrome 拥有自己的关闭、最小化、最大化按钮。告诉plasma忽略这个设置;
Alt-F3
应用程序中(或在步骤 1 之前单击左上角的图标) →More Actions
→Special Window Settings
→Appearance & Fixes
→No titlebar and frame
→Apply Initially
→No
→Okay
这使得等离子将新窗口锁定到当前活动。- 添加手动删除边框的快捷方式;
System Settings
→Shortcuts
→Global Shortcuts
→KWin
→Hide Window Border
→Custom
(我用过 ❖-)
现在,每当我打开 chrome 窗口时,我只需点击❖-,边框就会消失,并且它会保留在我打开它的活动中。