From 76ced38ae43a9192ed97ca35dd1cc83c62b2a073 Mon Sep 17 00:00:00 2001 From: Chris Feng Date: Thu, 21 Jul 2016 12:51:37 +0800 Subject: 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. --- exwm-layout.el | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'exwm-layout.el') diff --git a/exwm-layout.el b/exwm-layout.el index 667e2faecaa0..905a1e3c99dd 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." -- cgit 1.4.1