about summary refs log tree commit diff
path: root/exwm-workspace.el
diff options
context:
space:
mode:
authorChris Feng <chris.w.feng@gmail.com>2016-09-23T10·41+0800
committerChris Feng <chris.w.feng@gmail.com>2016-09-23T10·41+0800
commit6be75083c2adeb54882061e82597fab4cdf2a4f4 (patch)
tree74293125fc05cdf53ac7202f490f01d003ae760b /exwm-workspace.el
parent2597f74c7fb9ad290a45c89d0025bebcf739a976 (diff)
Use X window borders
; This commit replaces the internal borders of Emacs frames with X
; window borders.  This should make the flickering issue of floating X
; windows less serious.

* exwm-floating.el (exwm-floating--border-pixel)
(exwm-floating--border-colormap): New variables for storing border pixel
and its colormap.
(exwm-floating--set-floating): Do not set the internal border (and
background color) of floating frames; do not take
`exwm-floating-border-width' into account when calculating geometries;
set the border of floating X window containers.
(exwm-floating--unset-floating): No need to restore the position of X
windows any more; hide the border of floating X window containers.
(exwm-floating--init): Initialize the border pixel.
* exwm-layout.el (exwm-layout-set-fullscreen)
(exwm-layout-unset-fullscreen): Show/Hide container border respectively.
* exwm-manage.el (exwm-manage--manage-window): Set the border pixel and
colormap of X window containers.
* exwm-workspace.el (exwm-workspace-move-window): Do not set the
internal border and background color of floating frames.
* exwm.el (exwm--on-ClientMessage): Simplify the code for calculating
_NET_REQUEST_FRAME_EXTENTS.
Diffstat (limited to 'exwm-workspace.el')
-rw-r--r--exwm-workspace.el6
1 files changed, 0 insertions, 6 deletions
diff --git a/exwm-workspace.el b/exwm-workspace.el
index 24a59f9fab07..9034c1133701 100644
--- a/exwm-workspace.el
+++ b/exwm-workspace.el
@@ -636,9 +636,6 @@ INDEX must not exceed the current number of workspaces."
                        :window id
                        :data (exwm-workspace--position exwm--frame)))))
 
-(defvar exwm-floating-border-width)
-(defvar exwm-floating-border-color)
-
 (declare-function exwm-layout--show "exwm-layout.el" (id &optional window))
 (declare-function exwm-layout--hide "exwm-layout.el" (id))
 (declare-function exwm-layout--refresh "exwm-layout.el")
@@ -691,9 +688,6 @@ INDEX must not exceed the current number of workspaces."
                                   (get-buffer "*scratch*")))
                           (make-frame
                            `((minibuffer . ,(minibuffer-window frame))
-                             (background-color . ,exwm-floating-border-color)
-                             (internal-border-width
-                              . ,exwm-floating-border-width)
                              (left . 10000)
                              (top . 10000)
                              (width . ,window-min-width)