Subject: bug#67694: 30.0.50; tool-bar

From: Konrad Podczeck <[email-masked]>
Date: Thu, 7 Dec 2023 16:44:15 +0100

In nsterm.m, deleting the lines of code

#ifdef NS_IMPL_COCOA
if (! send_appdefined)
  {
  /* OS X 10.10.1 swallows the AppDefined event we are sending ourselves
       in certain situations (rapid incoming events).
       So check if we have one, if not add one.  */
    NSEvent *appev = [NSApp nextEventMatchingMask:NSEventMaskApplicationDefined
                                        untilDate:[NSDate distantPast]
                                           inMode:NSDefaultRunLoopMode
                                          dequeue:NO];
    if (! appev) send_appdefined = YES;
  }
#endif

as done in commit 6acb3c5b05a7b9fb32a5336e1bb740f527571ae9 on 23-09-11, seems to be incompatible with macos Sonoma or Monterey. In both versions, and with both an M1 processor and an Intel one, I got the following problem, with these lines of code removed. I have pdf-tools installed, and via the code in windows.el, I have both the pdf output and some latex source code to appear in their own frames. I also have a managed to have a tool-bar in the frame showing the pdf-outout, with an icon for going from one page to the next. Now if I repeatedly click with the mouse on this icon very fast, then, after 3 to 5 clicks, the whole emacs.app begins to hang. This is not so with the above lines of code still present in nsterm.m.

Koinrad