unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Should this package be included into the NS port?
@ 2018-05-15  5:19 George Plymale II
  2018-05-15 18:25 ` Stefan Monnier
                   ` (3 more replies)
  0 siblings, 4 replies; 60+ messages in thread
From: George Plymale II @ 2018-05-15  5:19 UTC (permalink / raw)
  To: emacs-devel

Hi all,

I recently submitted a couple of patches to the Emacs Mac Port by
Mitsuharu Yamamoto. The pull request can be seen here:
https://bitbucket.org/mituharu/emacs-mac/pull-requests/2/add-multi-tty-support-to-be-on-par-with/diff

These patches were basically the continuation of this thread that I
started back in January:
https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00373.html

Yet, there is a problem with all this which is mentioned in Alan Third's
message on that thread:

> [...] if you do this on the NS port:

>      Open GUI instance
>      start server
>      run ‘emacsclient -t’ in the terminal
>      close GUI frame

> You can’t open a new GUI frame, even though the GUI instance with the
> server is still running. You can see it in the dock, and access the
> menus, but I can’t find any way to create a new frame.

( https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00430.html )

The same issue occurs with my patches to the Mac Port and it seems to be
a problem with macOS's dock. Fortunately, there is an Elisp package by
Ryan C. Thompson which addresses this problem:
https://github.com/DarwinAwardWinner/osx-pseudo-daemon

This package implements a "pseudo-daemon" which is described as such:

> If you've ever tried to use Emacs in daemon mode on Mac OS, you might
> have noticed that after you close the last graphical Emacs client
> frame, the Emacs dock icon and menu bar become non-functional until
> you create a new graphical frame. This package implements nearly
> identical behavior to daemon mode using a simple hack: whenever the
> last graphical frame is closed, a new hidden frame is created. The
> next time Emacs is activated, the hidden frame is revealed. The result
> is essentially the same as using daemon mode, but without the
> drawbacks.

I actually have been using this package constantly for a couple of years
now and it is a very reliable hack which basically solves this issue. I
asked Yamamoto in my above pull request whether he would want to include
this package in the Mac Port in order to solve the issue (re)introduced
by my patches, and he suggested that I present it to the Emacs upstream
first. In his words:

> How about proposing inclusion of osx-pseudo-daemon upstream (for the
> NS port, of course)? I'd like to avoid enabling premature/unstable
> multi-tty with GUI as well as diverging from upstream for easier
> maintenance.

So here I am :)

Ryan C. Thompson's package is licensed under the GPLv3 so I suppose that
it could be included into the NS port if he signs the copyright
paperwork. It may also need a bit more firming-up before heading into
the mainline, but I think it's pretty solid as-is.

Thoughts?

Thanks,
- George Plymale II



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

end of thread, other threads:[~2018-06-03  2:25 UTC | newest]

Thread overview: 60+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-15  5:19 Should this package be included into the NS port? George Plymale II
2018-05-15 18:25 ` Stefan Monnier
2018-05-15 18:36   ` Alan Third
2018-05-16  2:48     ` George Plymale II
2018-05-18 19:36       ` Alan Third
2018-05-18 21:21         ` George Plymale II
2018-05-19  4:57           ` Nick Helm
2018-05-19 15:49             ` George Plymale II
2018-05-23  5:22               ` Nick Helm
2018-05-23 19:29                 ` George Plymale II
2018-05-19  9:50           ` Alan Third
2018-05-19 16:06             ` George Plymale II
2018-05-19 18:33             ` Stefan Monnier
2018-05-22  1:42               ` George Plymale II
2018-05-22  1:48                 ` Van L
2018-05-22 19:04                   ` Alan Third
2018-05-23  2:30                     ` Off Topic (was: Should this package be included into the NS port?) Van L
2018-05-23 20:43                       ` Alan Third
2018-05-24  1:27                         ` emacs-26.1-rc1: ./configure (was: Off Topic) Van L
2018-05-24  8:55                           ` emacs-26.1-rc1: ./configure Robert Pluim
2018-05-24 10:51                             ` Van L
2018-05-24 11:51                               ` Robert Pluim
2018-05-24 11:57                                 ` Van L
2018-05-24 23:47                               ` Van L
2018-05-22 19:15                 ` Should this package be included into the NS port? Alan Third
2018-05-22 20:09                   ` George Plymale II
2018-05-19  4:42         ` Nick Helm
2018-05-19 10:33           ` Alan Third
2018-05-19 11:51             ` Philipp Stephani
2018-05-19 16:52             ` George Plymale II
2018-05-23  4:55             ` Nick Helm
2018-05-23  5:11             ` Nick Helm
2018-05-23 15:26               ` Eli Zaretskii
2018-05-23 16:37                 ` Stefan Monnier
2018-05-23 17:23                   ` Eli Zaretskii
2018-05-23 21:21                 ` Alan Third
2018-05-24 16:37                   ` Eli Zaretskii
2018-05-24 17:46                     ` Philipp Stephani
2018-05-24 17:51                       ` Philipp Stephani
2018-05-24 18:14                       ` Eli Zaretskii
2018-05-16  2:44   ` George Plymale II
2018-05-17 22:13 ` George Plymale II
2018-05-18 18:50   ` Alan Third
2018-05-18 20:40     ` George Plymale II
2018-05-19  8:31     ` Michael Albinus
2018-05-19  4:29 ` Nick Helm
2018-05-19 15:38   ` George Plymale II
2018-05-29 21:29 ` George Plymale II
2018-05-29 21:42   ` Alan Third
2018-05-29 23:40     ` George Plymale II
2018-05-31 20:40       ` Alan Third
2018-06-01  1:58         ` Stefan Monnier
2018-06-02 18:31           ` George Plymale II
2018-06-02 19:39             ` Stefan Monnier
2018-06-02 20:11               ` Alan Third
2018-06-03  2:25                 ` Stefan Monnier
2018-06-02 18:26         ` George Plymale II
2018-06-02 16:45       ` Ryan Thompson
2018-06-02 17:22         ` Stefan Monnier
2018-06-02 18:56         ` George Plymale II

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).