about summary refs log tree commit diff
path: root/exwm-layout.el
diff options
context:
space:
mode:
authorChris Feng <chris.w.feng@gmail.com>2016-08-01T11·53+0800
committerChris Feng <chris.w.feng@gmail.com>2016-08-01T11·53+0800
commitf04b041cae5b119355737a9272c683ea8a791d7b (patch)
tree935e384f31be909cfc2f7bcd630b46d60b2192a1 /exwm-layout.el
parente7ff9a9f90f0356a9ab8a9ca3857df03deeb1696 (diff)
Fix emacsclient issues
* exwm-workspace.el (exwm-workspace--client-p): New function for testing
emacsclient frames.
(exwm-workspace--update-minibuffer-height)
(exwm-workspace--on-minibuffer-setup)
(exwm-workspace--on-minibuffer-exit, exwm-workspace--on-echo-area-dirty)
(exwm-workspace--on-echo-area-clear):
* exwm-input.el (exwm-input--on-buffer-list-update)
(exwm-input--on-minibuffer-setup):
* exwm-layout.el (exwm-layout--on-minibuffer-setup)
(exwm-layout--on-echo-area-change):
Use it.

* exwm-workspace.el (exwm-workspace--add-frame-as-workspace): Always
clear the 'client' frame parameter.
(exwm-workspace--init): Fix a typo.
Diffstat (limited to 'exwm-layout.el')
-rw-r--r--exwm-layout.el8
1 files changed, 5 insertions, 3 deletions
diff --git a/exwm-layout.el b/exwm-layout.el
index 905a1e3c99dd..ee97849e03e7 100644
--- a/exwm-layout.el
+++ b/exwm-layout.el
@@ -375,9 +375,12 @@ selected by `other-buffer'."
       (exwm-layout--set-client-list-stacking)
       (xcb:flush exwm--connection))))
 
+(declare-function exwm-workspace--client-p "exwm-workspace.el"
+                  (&optional frame))
+
 (defun exwm-layout--on-minibuffer-setup ()
   "Refresh layout when minibuffer grows."
-  (when (frame-parameter nil 'exwm-outer-id)
+  (unless (exwm-workspace--client-p)
     (run-with-idle-timer 0.01 nil         ;FIXME
                          (lambda ()
                            (when (< 1 (window-height (minibuffer-window)))
@@ -386,8 +389,7 @@ selected by `other-buffer'."
 (defun exwm-layout--on-echo-area-change (&optional dirty)
   "Run when message arrives or in `echo-area-clear-hook' to refresh layout."
   (when (and (current-message)
-             ;; Exclude non-graphical frames.
-             (frame-parameter nil 'exwm-outer-id)
+             (not (exwm-workspace--client-p))
              (or (cl-position ?\n (current-message))
                  (> (length (current-message))
                     (frame-width exwm-workspace--current))))