Subject: Re: bug#31975: Emacs NS port `M-x customize` Mouse Autoselect Window (point-to-focus) has no effect

From: Eli Zaretskii <[email-masked]>
Date: Wed, 27 Jun 2018 17:50:12 +0300

> From: Van L <[email-masked]>
> Date: Wed, 27 Jun 2018 14:49:16 +1000
> Cc: [email-masked]
> 
> In other words, to demonstrate to you, 
> how the desired and expected behavior 
> is configured, for example, for the
> Terminal app, I found and quoted what
> was needed to tell the window manager
> what to do.

OK, but I don't think it helps us solve this problem, except by
telling that it should be possible, at least in principle.

> Also, not for use with the NS port,
> but x11 to a remote GNU Linux GNU Emacs,
> XQuartz’s X11 Preferences has a tick box
> for `Focus Follows Mouse`.

I believe this is for the remote X, so gain not useful for the problem
you have locally.

> I am asking for this behavior for the mouse
> on the NS port’s outer most windowing framing
> boxes with the horizontal traffic lights at
> the upper most left most corner. In use, I half full screen
> zoom two of those, arranged left and right, in the window manager.

Not sure I understand: are these 2 Emacs frames, or are these something
else?

> The mouse focus doesn’t follow Emacs’s frame arranged left and right.
> `C-x o` does not skip among Emacs’s frame.

Again, I'm not following: "C-x o" is not supposed to switch between
frames, it switches between windows on the same frame (as I'm sure you
know).

> The mouse focus does follow within the Emacs’s frame on the right, 
> for example, when it is split horizontally to contain a top and bottom elements.
> `C-x o` does skip among top and bottom elements.

So mouse-autoselect-window does work between windows of the same
frame, but doesn't work when you go to a window on another frame?  If
so, this is indeed a problem to solve with your window-manager, not
with Emacs: you need to configure your window-manager so that it makes
focus follow the mouse.  Emacs cannot do that; its focus-follows-mouse
variable is the means to tell Emacs, if necessary, that you have
configured the window-manager that way, but setting that variable
cannot force the window-manager to work that way.

> `mouse-autoselect-window` is t; for the following
> 
> #+BEGIN_EXAMPLE
>    [next-line]
>    <down> [next-line]
>    <down> [next-line]
>    <next> [scroll-up-command]
>    <next> [scroll-up-command]
>    <prior> [scroll-down-command]
>    <prior> [scroll-down-command]
>    <help-echo> <select-window> [handle-select-window]
>    <help-echo> <help-echo> <switch-frame> [handle-switch-frame]
>    <switch-frame> [handle-switch-frame]
>    C-h v [describe-variable]
>    m [self-insert-command]
>    o [self-insert-command]
>    u [self-insert-command]
>    s [self-insert-command]
>    e [self-insert-command]
>    <tab> [minibuffer-complete]
>    a [self-insert-command]
>    u [self-insert-command]
>    t [self-insert-command]
>    <tab> [minibuffer-complete]
>    <return> [minibuffer-complete-and-exit]
>    C-h l [view-lossage]
>    <select-window> [handle-select-window]
>    <select-window> [handle-select-window]
>    <help-echo> <select-window> [handle-select-window]
>    <select-window> [handle-select-window]
>    <help-echo> <select-window> [handle-select-window]
>    <select-window> [handle-select-window]
>    <select-window> [handle-select-window]
>    <select-window> [handle-select-window]
>    <help-echo> <select-window> [handle-select-window]
>    <select-window> [handle-select-window]
>    <help-echo> <select-window> [handle-select-window]
>    <select-window> [handle-select-window]
>    <help-echo> <select-window> [handle-select-window]
>    C-h l [view-lossage]

I do see select-window here, so the feature is working.