Subject: bug#25057: closed (Re: bug#25057: Ediff 2.81.5 of July 4, 2013; control panel frame location and focus broken)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 22 Aug 2017 15:48:02 +0000

Your bug report

#25057: Ediff 2.81.5 of July 4, 2013; control panel frame location and focus broken

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
25057: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=25057
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#25057: Ediff 2.81.5 of July 4, 2013; control panel frame location and focus broken
From: [email-masked] (Charles A. Roelli)
To: [email-masked] (Charles A. Roelli)
Cc: [email-masked], [email-masked], [email-masked]
Date: Tue, 22 Aug 2017 17:47:22 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

This is fixed in the next release (26.1), so I'm closing this bug.

See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25818, and:

  commit 6e0cac4896f70b28b2a608fd63bc88b0253313bf
  Date:   Thu Apr 27 20:44:09 2017 +0200

  Constrain non-child frames to screen area in OS X

  * src/nsterm.m (constrainFrameRect:toScreen:): Constrain non-child
  frames in OS X, if they would otherwise go offscreen.

  Fixes: debbugs:25818

Subject: Ediff 2.81.5 of July 4, 2013; control panel frame location and focus broken
From: aaron peterson <[email-masked]>
To: [email-masked], [email-masked]
Date: Mon, 28 Nov 2016 23:46:22 -0800
List-Id: <debbugs-submit.debbugs.gnu.org>

To: [email-masked], [email-masked]
Subject: Ediff 2.81.5 of July 4, 2013; control panel frame location
and focus broken
From: Aaron Peterson <[email-masked]>
X-Reporter-Void-Vars-Found: ediff-patch-program ediff-patch-options
--text follows this line--

Congratulations!  You may have unearthed a bug in Ediff!

Please make a concise and accurate summary of what happened
and mail it to the address above.
-----------------------------------------------------------

Invoking "ediff-buffers" starts ediff with no visible control panel, in
either multiframe or plain.  There is a frame, but it is not visible.
It can be minimized with (iconify-frame), and it is then visible in the
dock, even showing the ediff help menu in the icon.

No visible control frame makes it difficult to switch *back* to ediff.
Using (other-frame) the frame remains invisible but can get focus, as
you can use ediff commands.

You can also get back to ediff by selecting the frame directly from the
Buffers menu or picking the ediff session from the registry.  But only by
creating a new frame and switching to the ediff control panel buffer
manually do you get a visible control panel.

However you get back to ediff, there is still a focus problem.  The
first command - like "n" or "p" often moves focus back to one of the two
buffers being diffed.  It can be reproduced with keyboard or mouse
actions - it appears to be every other time the control frame is
selected, say via mouse click or one of the above mechanisms, the next
action will lose focus.  I found a "workaround": get focus on the
control frame and toggle help "?".  Then you can safely execute other
actions without losing focus.

Thank you for your work!
-Aaron

Emacs  : GNU Emacs 25.1.1 (x86_64-apple-darwin13.4.0, NS
appkit-1265.21 Version 10.9.5 (Build 13F1911))
 of 2016-09-20
Package: Ediff 2.81.5 of July 4, 2013

current state:
==============
(setq
 ediff-diff-program "diff"
 ediff-diff-options ""
 ediff-diff3-program "diff3"
 ediff-diff3-options ""
 ediff-shell "sh"
 ediff-use-faces t
 ediff-auto-refine 'on
 ediff-highlighting-style 'face
 ediff-buffer-A #<buffer 1st-scuba-dive.json>
 ediff-buffer-B #<buffer 1st-scuba-broke.json>
 ediff-control-buffer #<buffer *Ediff Control Panel*>
 ediff-forward-word-function 'ediff-forward-word
 ediff-control-frame #<frame Ediff 0x102d7a708>
 ediff-control-frame-parameters '((name . "Ediff") (minibuffer)
                                  (user-position . t) (vertical-scroll-bars)
                                  (scrollbar-width . 0) (scrollbar-height . 0)
                                  (menu-bar-lines . 0) (tool-bar-lines . 0)
                                  (left-fringe . 0) (right-fringe . 0)
                                  (auto-lower) (auto-raise . t) (visibility)
                                  (width . 1) (height . 1) (top . 1601)
                                  (left . 6561))
 ediff-control-frame-position-function 'ediff-make-frame-position
 ediff-prefer-iconified-control-frame nil
 ediff-window-setup-function 'ediff-setup-windows-multiframe
 ediff-split-window-function 'split-window-horizontally
 ediff-job-name 'ediff-buffers
 ediff-word-mode nil
 buffer-name "*Ediff Control Panel*"
 ediff-device-type 'ns
 )