diff options
author | Chris Feng <chris.w.feng@gmail.com> | 2017-05-07T10·40+0800 |
---|---|---|
committer | Chris Feng <chris.w.feng@gmail.com> | 2017-05-07T10·40+0800 |
commit | 267ebd7f559cab0b864e0a31515d04c09a9f38e7 (patch) | |
tree | e240ed8cc0333fbf63cf6ed33b45532b4e41813c /exwm-floating.el | |
parent | 2b7449ea425df236471496cd96f061d70f3ba15a (diff) |
Force repositioning floating Emacs frames
* exwm-floating.el (exwm-floating--set-floating): Ditto.
Diffstat (limited to 'exwm-floating.el')
-rw-r--r-- | exwm-floating.el | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/exwm-floating.el b/exwm-floating.el index 2d1bf177838a..ea68cb500b8b 100644 --- a/exwm-floating.el +++ b/exwm-floating.el @@ -266,14 +266,15 @@ context of the corresponding buffer.") ;; FIXME: Strangely, the Emacs frame can move itself at this point ;; when there are left/top struts set. Force resetting its ;; position seems working, but it'd better to figure out why. - (when exwm-workspace--struts - (xcb:+request exwm--connection - (make-instance 'xcb:ConfigureWindow - :window outer-id - :value-mask (logior xcb:ConfigWindow:X - xcb:ConfigWindow:Y) - :x 0 :y 0)) - (xcb:flush exwm--connection))) + ;; FIXME: This also happens in another case (#220) where the cause is + ;; still unclear. + (xcb:+request exwm--connection + (make-instance 'xcb:ConfigureWindow + :window outer-id + :value-mask (logior xcb:ConfigWindow:X + xcb:ConfigWindow:Y) + :x 0 :y 0)) + (xcb:flush exwm--connection)) (with-current-buffer (exwm--id->buffer id) (run-hooks 'exwm-floating-setup-hook)) ;; Redraw the frame. |