From: Alan Third <alan@idiocy.org>
To: "Paul W. Rankin" <pwr@bydasein.com>
Cc: emacs-devel@gnu.org
Subject: Re: src/nsterm.m: fix window tabbing on macOS
Date: Mon, 10 May 2021 20:53:52 +0100 [thread overview]
Message-ID: <YJmPUEkImBChplXE@idiocy.org> (raw)
In-Reply-To: <03FB7137-A02D-4B94-AF1F-8B7E84DEF5DB@bydasein.com>
On Sat, May 08, 2021 at 10:27:13PM +1000, Paul W. Rankin wrote:
> > On 8 May 2021, at 9:21 pm, Alan Third <alan@idiocy.org> wrote:
> > > src/nsterm.m: use NSWindowTabbingModeAutomatic to respect user choice.
> > > Tabbed window managers are now widely available for free systems.
> >
> > For the record the tabbing being enabled here is not Emacs's own
> > tabbing, it's a macOS method of combining multiple OS windows into
> > one. Emacs's tabbing has still to be implemented on the NS port (I've
> > no interest as I think tabbed windows are an abomination that should
> > be burnt on sight, but would happily let someone else implement it).
>
> I think all the more reason not to hobble the macOS window manager! But yes
> it should be noted that tabs here are in the context of window management
> (i.e. Emacs frames) not tab-bar-mode. A Linux counterpart would be
> https://tools.suckless.org/tabbed/
I reckon this is probably OK, but I'll leave it a bit longer to see if
anyone else has an opinion.
> > Paul, is this still the absolute disaster it was when it first
> > appeared where some random Emacs frames would get combined but not
> > others, not to mention the crashes? Also there was no "user choice" as
> > I recall, it just happened without any warning or input from the user,
> > at random.
> >
> > Is it actually stable and usable now?
>
> I've been building Emacs with this change applied for several years now
> across a few different macOS versions and I've never experienced a crash or
> unexpected behaviour. But it depends on what you might be doing that I'm
> not; can you provide a step-by-step?
IIRC, it would just crash pretty much at random, and without much
prompting, so you'd likely know if it was still a problem.
Most likely the fullscreen crash fixes from a couple of years ago
solved it.
> The user choice I refer to resides in the odd place of System Preferences >
> Dock > Prefer tabs when opening documents: [Always | In Full Screen Only |
> Manually]. The behaviour I've experienced with each of these is:
>
> - Always: invoking `make-new-frame' will always create a frame in a new tab
> - In Full Screen Only: invoking `make-new-frame' will create a frame in a
> new tab only when `(frame-parameter nil 'fullscreen)' is non-nil
> - Manually: `make-new-frame' will never create new tabs
That location really doesn't much sense! Certainly explains why I've
never seen it before. :)
This is really my lastremaining concern, that it's such an obscure
setting that we'll get a lot of bug reports about Emacs-doing-tabs
when-I-don't-want-it-to. I'm not sure there's a good solution to that
other than perhaps putting a note in the NS port documentation (which
afaict nobody ever reads anyway).
BTW, is there an advantage to explicitly enabling the default setting
over just removing the code that disables it?
--
Alan Third
next prev parent reply other threads:[~2021-05-10 19:53 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-08 9:26 src/nsterm.m: fix window tabbing on macOS Paul W. Rankin via Emacs development discussions.
2021-05-08 11:21 ` Alan Third
2021-05-08 12:27 ` Paul W. Rankin via Emacs development discussions.
2021-05-08 12:35 ` Paul W. Rankin via Emacs development discussions.
2021-05-10 19:53 ` Alan Third [this message]
2021-05-11 5:45 ` Paul W. Rankin via Emacs development discussions.
2021-05-11 19:20 ` chad
2021-05-12 9:47 ` Paul W. Rankin via Emacs development discussions.
2021-05-12 21:23 ` Alan Third
2021-05-13 5:46 ` Paul W. Rankin via Emacs development discussions.
2021-05-13 21:05 ` Alan Third
2021-05-16 9:16 ` Paul W. Rankin via Emacs development discussions.
2021-05-26 19:56 ` Alan Third
2021-05-27 11:06 ` Andrii Kolomoiets
2021-05-28 8:26 ` martin rudalics
2021-05-28 8:28 ` Paul W. Rankin via Emacs development discussions.
2021-05-28 8:36 ` martin rudalics
2021-05-28 8:54 ` Alan Third
2021-06-06 4:09 ` Paul W. Rankin via Emacs development discussions.
2021-06-06 7:43 ` martin rudalics
2021-05-28 9:07 ` Andrii Kolomoiets
2021-05-28 9:21 ` martin rudalics
2021-05-28 9:37 ` Paul W. Rankin via Emacs development discussions.
2021-05-28 9:51 ` martin rudalics
2021-05-28 14:33 ` Paul W. Rankin via Emacs development discussions.
2021-05-28 20:52 ` Andrii Kolomoiets
2021-06-05 20:58 ` Alan Third
2021-06-06 4:01 ` Paul W. Rankin via Emacs development discussions.
2021-06-06 6:14 ` Eli Zaretskii
2021-06-06 6:48 ` Paul W. Rankin via Emacs development discussions.
2021-06-06 9:13 ` Alan Third
[not found] ` <8CCF969D-32AF-4542-8838-21DF4AA45523@yasufuku.dev>
2021-06-06 11:36 ` Alan Third
2021-06-06 12:19 ` Paul W. Rankin via Emacs development discussions.
2021-06-06 18:56 ` Alan Third
2021-06-07 0:27 ` Paul W. Rankin via Emacs development discussions.
2021-06-07 22:13 ` Alan Third
2021-06-08 7:32 ` Paul W. Rankin via Emacs development discussions.
2021-06-08 8:59 ` Eli Zaretskii
2021-06-09 8:35 ` martin rudalics
2021-06-09 8:48 ` Alan Third
2021-06-09 12:20 ` martin rudalics
2021-06-09 12:29 ` Alan Third
[not found] <65f1-60bcfd80-157-23301c40@168015757>
2021-06-07 0:11 ` Paul W. Rankin via Emacs development discussions.
2021-06-07 21:57 ` Alan Third
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YJmPUEkImBChplXE@idiocy.org \
--to=alan@idiocy.org \
--cc=emacs-devel@gnu.org \
--cc=pwr@bydasein.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).