all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* macOS fullscreen crashes
@ 2018-11-30 11:04 Alan Third
  2018-12-01 11:21 ` Charles A. Roelli
  0 siblings, 1 reply; 9+ messages in thread
From: Alan Third @ 2018-11-30 11:04 UTC (permalink / raw)
  To: emacs-devel

[-- Attachment #1: Type: text/plain, Size: 716 bytes --]

We still occasionally receive bug reports about crashes on macOS
10.12+ caused by macOS turning fullscreen windows into ‘tabbed’
windows. I’ve also seen it discussed in a few places round the web.

We currently have a compile‐time check to include code that fixes this
on 10.12+, and it can be over‐ridden if Emacs is being built on an
older version of macOS but is expected to run on 10.12+, however it is
clearly not doing the job.

I propose for Emacs 26.2 (and the master branch) that we remove the
compile‐time check and just use a run‐time check. This will result in
a compiler warning on macOS 10.11 and below, but will prevent crashes
everywhere.

Any thoughts?

Patch attached.
-- 
Alan Third

[-- Attachment #2: 0001-Remove-macOS-version-checks-for-tabbed-frames-bug-33.patch --]
[-- Type: text/plain, Size: 1525 bytes --]

From 4df81ee31f0f2cf9ca4f906d753cf7dd134cf64d Mon Sep 17 00:00:00 2001
From: Alan Third <alan@idiocy.org>
Date: Fri, 30 Nov 2018 10:50:44 +0000
Subject: [PATCH] Remove macOS version checks for tabbed frames (bug#33118)

* src/nsterm.m ([EmacsView initFrameFromEmacs:]) [NS_IMPL_COCOA]:
Remove compile-time version checks.
---
 src/nsterm.m | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/nsterm.m b/src/nsterm.m
index 948dd1da2e..7a751b3868 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -7397,14 +7397,16 @@ - (instancetype) initFrameFromEmacs: (struct frame *)f
   [NSApp registerServicesMenuSendTypes: ns_send_types
                            returnTypes: [NSArray array]];
 
+#if defined (NS_IMPL_COCOA)
   /* macOS Sierra automatically enables tabbed windows.  We can't
      allow this to be enabled until it's available on a Free system.
-     Currently it only happens by accident and is buggy anyway. */
-#if defined (NS_IMPL_COCOA) \
-  && MAC_OS_X_VERSION_MAX_ALLOWED >= 101200
-#if MAC_OS_X_VERSION_MIN_REQUIRED < 101200
+     Currently it only happens by accident and is buggy anyway.
+
+     This will cause a build warning on older versions of macOS, but
+     limiting it to just 10.12+ has resulted in a number of crash
+     reports where Emacs was built on an older version of macOS than
+     it's being used on.  */
   if ([win respondsToSelector: @selector(setTabbingMode:)])
-#endif
     [win setTabbingMode: NSWindowTabbingModeDisallowed];
 #endif
 
-- 
2.19.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-12-01 19:02 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-30 11:04 macOS fullscreen crashes Alan Third
2018-12-01 11:21 ` Charles A. Roelli
2018-12-01 13:18   ` Alan Third
2018-12-01 14:45     ` Charles A. Roelli
2018-12-01 16:09       ` Alan Third
2018-12-01 16:50         ` Eli Zaretskii
2018-12-01 17:13           ` Alan Third
2018-12-01 17:46             ` Eli Zaretskii
2018-12-01 19:02               ` Alan Third

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.