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-07-21T04·51+0800
committerChris Feng <chris.w.feng@gmail.com>2016-07-21T04·51+0800
commit76ced38ae43a9192ed97ca35dd1cc83c62b2a073 (patch)
treee6f6edcf0a765f3dfcf3ada4f06a2f7036d76f0e /exwm-layout.el
parent0c114d97b78f806ebe2904c8f55f573fd7c879e7 (diff)
Fix input focus issues revealed by recent commits
* exwm-input.el (exwm-input--update-focus-window)
(exwm-input--on-buffer-list-update, exwm-input--update-focus-interval)
(exwm-input--update-focus-lock, exwm-input--update-focus-defer-timer)
(exwm-input--update-focus-timer, exwm-input--update-focus-defer)
(defun exwm-input--update-focus): Rework the input focus update
mechanism, mainly to overcome the input focus update contention.

* exwm-input.el (defun exwm-input--update-focus): Use `select-window'
instead of `exwm-workspace-switch'; calling the latter is too expensive.

* exwm-layout.el (exwm-layout--on-minibuffer-setup): Drop a unnecessary
line.

* exwm-workspace.el (exwm-workspace-switch): Set input focus to the new
workspace frame.
Diffstat (limited to 'exwm-layout.el')
-rw-r--r--exwm-layout.el4
1 files changed, 1 insertions, 3 deletions
diff --git a/exwm-layout.el b/exwm-layout.el
index 667e2faeca..905a1e3c99 100644
--- a/exwm-layout.el
+++ b/exwm-layout.el
@@ -381,9 +381,7 @@ selected by `other-buffer'."
     (run-with-idle-timer 0.01 nil         ;FIXME
                          (lambda ()
                            (when (< 1 (window-height (minibuffer-window)))
-                             (exwm-layout--refresh))))
-    ;; Set input focus on the Emacs frame
-    (x-focus-frame (window-frame (minibuffer-selected-window)))))
+                             (exwm-layout--refresh))))))
 
 (defun exwm-layout--on-echo-area-change (&optional dirty)
   "Run when message arrives or in `echo-area-clear-hook' to refresh layout."