summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/vc/ediff-util.el7
2 files changed, 12 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 77432c00670..172af2f4efd 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,11 @@
2013-02-13 Juri Linkov <juri@jurta.org>
+ * vc/ediff-util.el (ediff-recenter): Use `select-frame-set-input-focus'
+ to select `ediff-control-frame' and set input focus correctly on Xfce.
+ (Bug#12218)
+
+2013-02-13 Juri Linkov <juri@jurta.org>
+
* image-mode.el (image-mode-map):
* doc-view.el (doc-view-mode-map):
* vc/ediff-util.el (ediff-setup-keymap):
diff --git a/lisp/vc/ediff-util.el b/lisp/vc/ediff-util.el
index 3fcfcff9a74..fd53aabd33c 100644
--- a/lisp/vc/ediff-util.el
+++ b/lisp/vc/ediff-util.el
@@ -787,7 +787,12 @@ Reestablish the default three-window display."
(frame-live-p ediff-control-frame)
(not ediff-use-long-help-message)
(not (ediff-frame-iconified-p ediff-control-frame)))
- (raise-frame ediff-control-frame))
+ (if (fboundp 'select-frame-set-input-focus)
+ (select-frame-set-input-focus ediff-control-frame)
+ (raise-frame ediff-control-frame)
+ (select-frame ediff-control-frame)
+ (if (fboundp 'focus-frame)
+ (focus-frame ediff-control-frame))))
;; Redisplay whatever buffers are showing, if there is a selected difference
(let ((control-frame ediff-control-frame)