Subject: bug#12218: 24.2.50; vc-ediff: Pressing `n' moves focus away from ediff control panel

From: martin rudalics <[email-masked]>
Date: Sat, 06 Oct 2012 10:14:10 +0200

> 0. IMPORTANT: REMOVE all customizations and start with emacs -Q
 > 1. C-x C-f lisp/register.el
 > 2. C-x C-w register-1.el
 > 3. Make some changes here and there in register-1.el
 > 4. M-x ediff-files RET register.el RET register-1.el
 > 5. Enusre that the control panel pops-up in a separate frame.
 > 6. Keep pressing `n'
 > 7. The focus NEVER LEAVES the control panel on my machine.
 >
 > Summary: M-x vc-ediff RET is buggy while M-x ediff-files RET is NOT
 > buggy.

`vc-ediff' ends up calling `ediff-setup' just like `ediff-files'.  So
we'd have to find something that happens before these two calls that
affects the behavior of `ediff-next-difference'.  Maybe in an assignment
to one of ediff's hooks.  If you trace the calls to `ediff-setup' can
you see any differences?

 > Given the above experiment/result do you still think that window manager
 > is at play here.  My "gut" feeling says that vc-ediff is "forgetting"
 > some stuff.  (Remember vc-ediff is fairly a new arrival)

No.  What I meant was that the window manager might be at play when
comparing the behavior on your machine and mine or when comparing a
multiframe with a one-frame setup.

 > If multiple-frames is problematic (on some machines) shouldn't the
 > default be modified to be just plain.

If more people complained, this would probably happen.  But IIUC ediff
is not very popular and largely unmaintained.

 > But, in that case, people like me, who are used to seeing the control
 > panel float to top-right, will complain that the defaults are changed
 > :-).

Likely.  I've been told on this list that my one-frame setup for ediff
is non-standard and any problems it causes "won't be a problem for most
users" ;-)

martin