Fix coordinates calculations concerning workspaces
* exwm-floating.el (exwm-floating--set-floating) (exwm-floating--do-moveresize): * exwm-manage.el (exwm-manage--manage-window): Use the computed workareas rather than RandR output geometries.
This commit is contained in:
parent
6e0b944c2d
commit
767abdf9e6
2 changed files with 20 additions and 22 deletions
|
|
@ -170,15 +170,15 @@ corresponding buffer.")
|
|||
exwm-window-type)
|
||||
(memq xcb:Atom:_NET_WM_WINDOW_TYPE_DOCK
|
||||
exwm-window-type))
|
||||
(let ((frame-geometry (frame-parameter exwm-workspace--current
|
||||
'exwm-geometry))
|
||||
(workspace (frame-parameter exwm-workspace--current
|
||||
'exwm-workspace)))
|
||||
(when (and frame-geometry
|
||||
(/= x 0)
|
||||
(let ((workspace (frame-parameter exwm-workspace--current
|
||||
'exwm-workspace))
|
||||
workarea)
|
||||
(when (and (/= x 0)
|
||||
(/= y 0))
|
||||
(setq x (- x (slot-value frame-geometry 'x))
|
||||
y (- y (slot-value frame-geometry 'y))))
|
||||
(setq workarea (elt exwm-workspace--workareas
|
||||
exwm-workspace-current-index)
|
||||
x (- x (aref workarea 0))
|
||||
y (- y (aref workarea 1))))
|
||||
(xcb:+request exwm--connection
|
||||
(make-instance 'xcb:ReparentWindow
|
||||
:window id
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue