Subject: bug#65509: [PATCH] Use correct env var when opening frames with freedesktop menu entries

From: Po Lu <[email-masked]>
Date: Mon, 04 Sep 2023 08:38:31 +0800

Davide Masserut <[email-masked]> writes:

> X DEs don't set the $WAYLAND_DISPLAY environment variable, so querying
> for it returns an empty string.
>
> If I run this in X:
>
> emacsclient --alternate-editor= --display=$WAYLAND_DISPLAY .emacs.el
>
> the following occurs.
>
> When the --display argument is an empty string, Emacs first tries to
> reuse an exiting frame and, if doesn't find one, it falls back to open
> it in the same terminal.  The problem arises when an instance is
> launched through the DE facilities: Emacs can't use a terminal as a
> fallback and therefore it opens in the background without showing the
> frame.
>
> If we decide that handling such case is not worth the trouble, an
> error in system log should warn the user to use the X backend.

I don't quite follow: if neither of the display environment variables
are present, then Emacs deduces that no display server is running,
whereupon it resorts to displaying a TTY frame.  We do support TTY
frames under PGTK, so such a warning would be purposeless.