On Wed, Oct 4, 2017 at 2:59 PM, Alan Third <alan@idiocy.org> wrote:

It looks like there’s maybe a neater way to get the current frame
under the mouse...

    Lisp_Object frame = Qnil;
    NSWindow *w = [NSApp windowWithWindowNumber:
                         [NSWindow windowNumberAtPoint:[NSEvent mouseLocation]
                           belowWindowWithWindowNumber:0]];
    if (w != nil)
      XSETFRAME (frame, ((EmacsView *)[w delegate])->emacsframe);


The ​mouseDown​ function (called by the various mouseUp functions) uses `emacsframe' to set the appropriate frame.
How does the above modify emacsframe?  Doesn't XSETFRAME just set the value of the local `frame'?

Bob