From: Eli Zaretskii <eliz@gnu.org>
To: Drew Adams <drew.adams@oracle.com>
Cc: 24596@debbugs.gnu.org
Subject: bug#24596: 25.1; `f10' behavior
Date: Mon, 03 Oct 2016 19:13:18 +0300 [thread overview]
Message-ID: <838tu5pg0x.fsf@gnu.org> (raw)
In-Reply-To: <ef8ce118-4fc8-4bc1-9606-468839196ffb@default> (message from Drew Adams on Mon, 3 Oct 2016 08:41:45 -0700 (PDT))
severity 24596 minor
thanks
> Date: Mon, 3 Oct 2016 08:41:45 -0700 (PDT)
> From: Drew Adams <drew.adams@oracle.com>
>
> `f10' used to just be bound to `tmm-menubar', for both TTY and
> graphic-display Emacs. Now it is bound to `menu-bar-open'.
Not true: F10 in a GUI session, at least on Windows, always activated
the GUI menus from the menu bar. I just tried that in Emacs 23.1.
What you say is only true for a TTY frame. It was changed when
text-mode frames learned to display menus.
> 1. User option `tty-menu-open-use-tmm' makes `f10' use `tmm-menubar'
> instead, but only on TTY. Why not also on graphic displays?
Because F10 never invoked tmm on GUI frames, at least not on
MS-Windows. If you are asking for a new feature, then I guess it
could be added if enough people want it, but then the variable's name
will need to change, of course.
> Or why not have the option value let you choose: always
> `tmm-menubar', never `tmm-menubar', or `tmm-menubar only for TTY?
> (And of course rename it, if it is made to apply to more than TTYs.)
No reason, except that no one considered this important enough to
write the code.
> 2. Why can you not exit `menu-bar-open' (with nil
> `tty-menu-open-use-tmm')? Why is ESC the only way to cancel (at least
> on MS Windows)? Why are not the canonical Emacs ways of canceling
> implemented here (`C-g' and `ESC ESC ESC')?
ESC ESC works for me on MS-Windows GUI frames. ESC ESC ESC and C-g
work for me on TTY frames. C-g doesn't work on a GUI frame because
the menu is controlled by Windows, not by Emacs, and Windows doesn't
know about C-g. IOW, this is a limitation we can do very little
about.
> 3. The doc string of `menu-bar-open' says nothing about the behavior.
> It says nothing about what it does or what keys you can use, etc. It
> should. Instead, it passes you off to commands `x-menu-bar-open',
> `w32-menu-bar-open', `popup-menu', and `tmm-menubar'.
Details of how menus work depend on the toolkit, so we refer to the
toolkit-specific parts for the details. However, patches are welcome
to describe what every toolkit does, presumably in the manual (because
I suspect the description will be long and complicated).
> Are the keys you can use different for `x-menu-bar-open' and
> `w32-menu-bar-open'?
Yes, I think so.
> The latter's doc tells you about keys you can use, but the former's
> doc says nothing about keys.
w32-menu-bar-open describes just one toolkit, whereas x-menu-bar-open
stands for several different ones. I believe this is the reason.
> 4. The doc in the Emacs manual (node Menu Bar) is not too bad. But
> AFAICT, `C-g' does NOT work (in MS Windows), as it says it does. It
> also says that you can cancel using `ESC ESC ESC'. But the doc of
> `w32-menu-bar-open' (correctly) says that a single `ESC' cancels. Dunno
> whether this is a doc bug or the behavior (on Windows) is bugged.
You are trying to apply the description of what happens with TTY menus
to GUI menus. They don't behave the same.
> 5. Overall, it looks a bit like someone wrote `menu-bar-open',
> `x-menu-bar-open', and `w32-menu-bar-open', and it was decided to
> replace `tmm-menubar' as the binding of `f10'. But I don't really see
> the advantage, especially considering the lack of good doc.
The advantage is unified behavior across frame types, at least by
default. The tty-menu-open-use-tmm was added later by popular demand;
initially I didn't imagine someone would want it when true menus are
available.
next prev parent reply other threads:[~2016-10-03 16:13 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-03 15:41 bug#24596: 25.1; `f10' behavior Drew Adams
2016-10-03 16:13 ` Eli Zaretskii [this message]
[not found] <<ef8ce118-4fc8-4bc1-9606-468839196ffb@default>
[not found] ` <<838tu5pg0x.fsf@gnu.org>
2016-10-03 16:33 ` Drew Adams
2016-10-03 17:23 ` Eli Zaretskii
[not found] <<<ef8ce118-4fc8-4bc1-9606-468839196ffb@default>
[not found] ` <<<838tu5pg0x.fsf@gnu.org>
[not found] ` <<c37596f6-47bc-4624-b948-c938c87bc74e@default>
[not found] ` <<834m4tpcsb.fsf@gnu.org>
2016-10-03 17:45 ` Drew Adams
2016-10-03 18:14 ` Eli Zaretskii
2016-10-06 18:49 ` Eli Zaretskii
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=838tu5pg0x.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=24596@debbugs.gnu.org \
--cc=drew.adams@oracle.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 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.