diff options
author | Chris Feng <chris.w.feng@gmail.com> | 2018-02-19T14·40+0800 |
---|---|---|
committer | Chris Feng <chris.w.feng@gmail.com> | 2018-02-19T14·40+0800 |
commit | 5c5729c0d4832a870a928d6d7cc2f990a7e8f649 (patch) | |
tree | fdba54b6a488e4dccd2fdabec866ccbfde30b816 /exwm-layout.el | |
parent | b8ce20b4f3eac1228aef58b83a72a87ccdb819d0 (diff) |
Fix various issues with multi-monitor support
* exwm-workspace.el (exwm-workspace-switch): Do not hide X windows when switching to a workspace on another output; update the timestamp (last switched to) of a workspace frame. (exwm-workspace-move-window): Do not hide an X window when moving it to an active workspace on another output. * exwm-floating.el (exwm-floating--set-floating): * exwm-layout.el (exwm-layout-set-fullscreen): * exwm-manage.el (exwm-manage--manage-window) (exwm-manage--on-ConfigureRequest): * exwm-systemtray.el (exwm-systemtray--refresh) (exwm-systemtray--init): Correct coordinate calculations. * exwm-workspace.el (exwm-workspace--current-width): Removed since no longer used.
Diffstat (limited to 'exwm-layout.el')
-rw-r--r-- | exwm-layout.el | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/exwm-layout.el b/exwm-layout.el index 3f624ad7fe4d..5a01f900323d 100644 --- a/exwm-layout.el +++ b/exwm-layout.el @@ -49,8 +49,6 @@ (declare-function exwm-input-release-keyboard "exwm-input.el") (declare-function exwm-workspace--client-p "exwm-workspace.el" (&optional frame)) -(declare-function exwm-workspace--current-height "exwm-workspace.el") -(declare-function exwm-workspace--current-width "exwm-workspace.el") (declare-function exwm-workspace--minibuffer-own-frame-p "exwm-workspace.el") (declare-function exwm-workspace--workspace-p "exwm-workspace.el" (workspace)) @@ -137,11 +135,8 @@ (cl-return-from 'exwm-layout-set-fullscreen)) (with-current-buffer (if id (exwm--id->buffer id) (window-buffer)) ;; Expand the X window to fill the whole screen. - ;; Rationale: Floating X windows may not be positioned at (0, 0) - ;; due to the extra border. - (exwm--set-geometry exwm--id 0 0 - (exwm-workspace--current-width) - (exwm-workspace--current-height)) + (with-slots (x y width height) (exwm-workspace--get-geometry exwm--frame) + (exwm--set-geometry exwm--id x y width height)) ;; Raise the X window. (xcb:+request exwm--connection (make-instance 'xcb:ConfigureWindow |