【问题标题】:How to let XMonad treat a window as dock?如何让 XMonad 将窗口视为停靠栏?
【发布时间】:2018-07-20 20:54:43
【问题描述】:

我的目的是将某个 vim 窗口作为停靠栏(停留在所有屏幕上,固定位置,不受 XMonad 布局影响等)。所以我使用xprop 将窗口设置为停靠类型。但 XMonad 似乎并不尊重它。我还应该做什么?

xprop 命令:

$ xprop -id 0x2400001 -f _NET_WM_WINDOW_TYPE 32a -set _NET_WM_WINDOW_TYPE _NET_WM_WINDOW_TYPE_DOCK
$ xprop -id 0x2400001 | grep TYPE                                                                    
_NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_DOCK

【问题讨论】:

  • 您是否尝试过在将窗口设置为停靠栏后重新启动 XMonad?你的配置中有avoidStruts 吗?
  • @ChrisStryczynski,但我不想在每次制作码头时都重新启动 XMonad。是的,我有避免Struts。像 taffybar 这样的 Dock 应用运行良好。
  • 嗯,但是如果您在窗口上设置该属性然后重新启动 xmonad,它会起作用吗?这只会有助于识别任何问题 - 可能在发生之后(设置停靠窗口)需要运行一些东西。
  • @ChrisStryczynski,说得好。试过了,没有任何改变。

标签: xmonad


【解决方案1】:

https://askubuntu.com/a/732058/585364

你还需要设置一个strut属性:xprop -f _NET_WM_STRUT 32c -set _NET_WM_STRUT 0,300,0,0

您可能还需要将窗口“移动”到该位置。

这确实需要在我测试时重新启动 xmonad 才能生效。

【讨论】:

  • 设置支柱时避免工作。我可以将窗口移动到那个“间隙”中。但是该窗口的行为并不像一个停靠栏,而是在所有工作区之间共享。
  • 通过gtk3做了一个简单的dock。似乎唯一的 X 属性差异是 _NET_WM_DESKTOP。停靠窗口应该消失了。但是现在,我无法摆脱它以获得正常的窗口。 xprop 设置/删除不起作用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多