all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: martin rudalics <rudalics@gmx.at>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 11732@debbugs.gnu.org, mhatta@gmail.com
Subject: bug#11732: Follow-up to bug#11732
Date: Sun, 01 Jul 2018 11:00:55 +0200	[thread overview]
Message-ID: <5B389847.6000204@gmx.at> (raw)
In-Reply-To: <837emgmmu2.fsf@gnu.org>

 > I didn't mean the owing window, I meant the other windows on the
 > desktop, belonging to applications other than Emacs.  Using
 > HWND_TOPMOST makes me unable to raise any window of another
 > application above the dialog box in the z-order.  The existing code
 > does allow that.

Because it leaves the entire z-order handling to Windows.  The idea of
using a dialog box is that you tell Windows to glue together the frame
with the dialog box and let no other window enter the z-order in
between these two.  How Windows implements that has likely never been
analyzed so we won't know.  But I suppose that Windows simply
intercepts all (implicit) z-reorder requests to let no other window
in.

Now if Masayuki's proposal breaks this relationship please tell me
exactly how.  IIUC you mean to say that with focus follows mouse sans
autoraise the two Emacs windows (always) appear on top of other
applications.  But sans autoraise means that the z-order should not
change when you move the mouse so you apparently clicked into another
application's window or tried to Alt-tab to it.  Please clarify this
giving us the precise steps you used.

In either case having Emacs fiddle with the z-order and activation of
dialog box windows is dangerous and should be avoided in the first
place.  Also, the code below is creepy and certainly not what a
well-behaved application is supposed to do:

	      EnableWindow (edit_control, FALSE);
	      /* Note that at least on Windows 7, the above call to EnableWindow
		 disables the window that would ordinarily have focus.	If we
		 do not set focus to some other window here, focus will land in
		 no man's land and the user will be unable to tab through the
		 dialog box (pressing tab will only result in a beep).
		 Avoid that problem by setting focus to the list here.	*/
	      if (hdr_code == CDN_INITDONE)
		SetFocus (list);

 > OK, so the call to w32_dialog_in_progress has nothing to do with the
 > z-order of the dialog wrt its owning frame, right?

Right.  I meanwhile tried to document this better.  Please have a
look.

 >> Note that Emacs waits for the dialog to finish and doesn't redisplay
 >> in this time.  Hence if during a dialog I temporarily show another
 >> window on top of the dialog and remove that other window, the text in
 >> the Emacs frame is usually garbled until the dialog finishes.
 >
 > Yes, I know.  That wasn't what I was worried about.

I know.  My note was just a reminder that moving other windows above
the Emacs frame while a dialog is in progress doesn't result in a
pleasant user experience anyway.

martin





  reply	other threads:[~2018-07-01  9:00 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-18  5:20 bug#11732: 24.1; Microsoft IME Japanese input problem xavier.dahan
2015-02-17 10:26 ` Fujii Hironori
2015-02-18 15:17   ` Eli Zaretskii
2015-02-19  2:03     ` Fujii Hironori
2015-02-19  6:44       ` Eli Zaretskii
     [not found]         ` <CALus1PmqiC8TnQTfcpVFD5ObjqbK_4hkOczRKmG1=+mkWXUHWQ@mail.gmail.com>
2015-02-19 11:44           ` Eli Zaretskii
2015-03-06 20:29             ` Eli Zaretskii
2015-03-06 22:37               ` Fujii Hironori
2015-03-07 10:53                 ` Eli Zaretskii
2015-03-09  2:13               ` Fujii Hironori
2015-03-09 16:30                 ` Eli Zaretskii
2018-06-26  9:10 ` bug#11732: Follow-up to bug#11732 Masayuki Hatta
2018-06-27 15:54   ` Eli Zaretskii
2018-06-28  8:04     ` martin rudalics
2018-06-28 10:13       ` Masayuki Hatta
2018-06-28 12:25         ` martin rudalics
2018-06-28 13:09           ` Eli Zaretskii
2018-06-28 10:11     ` Masayuki Hatta
2018-06-28 13:28       ` Eli Zaretskii
2018-06-28 19:17         ` Noam Postavsky
2018-06-28 19:24           ` Eli Zaretskii
2018-06-29  7:39             ` Masayuki Hatta
2018-06-29  8:43               ` martin rudalics
2018-06-29  8:59                 ` Eli Zaretskii
2018-06-30  3:14                 ` Masayuki Hatta
2018-06-30  7:46                   ` Eli Zaretskii
2018-06-30  8:30                     ` Masayuki Hatta
2018-06-29  8:56               ` Eli Zaretskii
2018-06-29  8:43     ` martin rudalics
2018-06-29  9:07       ` Eli Zaretskii
2018-06-30  8:06         ` martin rudalics
2018-06-30 11:32           ` Eli Zaretskii
2018-06-30 12:51             ` martin rudalics
2018-06-30 13:21               ` Eli Zaretskii
2018-07-01  9:00                 ` martin rudalics [this message]
2018-07-01 14:29                   ` Eli Zaretskii
2018-07-03  8:29                     ` martin rudalics
2018-07-03 18:50                       ` Eli Zaretskii
2018-07-07  7:45                         ` Tak Kunihiro
2018-07-07 10:00                           ` Eli Zaretskii
2018-07-07 10:21                             ` martin rudalics
2018-07-07 11:32                               ` Eli Zaretskii
2018-07-01 14:34             ` 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=5B389847.6000204@gmx.at \
    --to=rudalics@gmx.at \
    --cc=11732@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=mhatta@gmail.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.