From: "Marshall, Simon" <simon.marshall@misys.com>
Cc: "'cyd@stupidchicken.com'" <cyd@stupidchicken.com>,
"'rms@gnu.org'" <rms@gnu.org>,
"'emacs-devel@gnu.org'" <emacs-devel@gnu.org>
Subject: RE: [simon.marshall@misys.com: mouse-autoselect-window needs a de lay]
Date: Thu, 6 Jul 2006 12:43:54 +0100 [thread overview]
Message-ID: <81CCA6588E60BB42BE68BD029ED48260080E12B4@wimex2.wim.midas-kapiti.com> (raw)
> Please try the attached patch - it's based on Stefan's
> suggestion to use `handle-select-window'. martin.
Hi Martin, thanks, I can play with the lisp now.
One problem I see with this implementation is that it also waits for twice
the delay. The reason can be seen in the sequence of events when the mouse
is moved to a new window:
- handle-select-window calls autoselect-window-start.
- autoselect-window-start sets autoselect-window-position to
(mouse-position). However, this position appears to be the position
*before* the mouse movement.
- autoselect-window-start starts a timer to run autoselect-window-select
after the specified delay.
- when autoselect-window-select runs after the first timeout, it checks to
see if autoselect-window-position is equal to (mouse-position), which cannot
be true even if the mouse has not moved again. So, window selection does
not occur, and it just sets autoselect-window-position to (mouse-position).
- when autoselect-window-select runs after the second timeout, and the mouse
has not moved, autoselect-window-position is equal to (mouse-position) and
window selection occurs.
To be honest, I'd be quite happy with the feature if it did not try to
detect for a quiescent mouse as it would still be a big improvement. In
that case I guess the implementation would not need to use (mouse-position)
and the above problem would not occur.
If it could be made to work, it would be a bonus (though perhaps should be
an additional option, i.e., delay or delay with quiescence). Of course, one
simple hack/workaround would be to use (/ mouse-autoselect-window 2.0) for
the timer delay, though I'd be interested to see why mouse-position returns
what it does.
Simon.
next reply other threads:[~2006-07-06 11:43 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-06 11:43 Marshall, Simon [this message]
2006-07-07 9:35 ` [simon.marshall@misys.com: mouse-autoselect-window needs a de lay] martin rudalics
-- strict thread matches above, loose matches on Subject: below --
2006-07-19 11:14 Marshall, Simon
2006-07-18 11:21 Marshall, Simon
2006-07-19 9:56 ` martin rudalics
2006-07-19 11:00 ` Kim F. Storm
2006-07-19 12:35 ` martin rudalics
2006-07-17 16:18 Marshall, Simon
2006-07-17 17:59 ` martin rudalics
2006-07-18 13:37 ` Richard Stallman
2006-07-19 10:05 ` martin rudalics
2006-08-28 5:57 ` martin rudalics
2006-07-17 14:07 Marshall, Simon
2006-07-17 15:52 ` martin rudalics
2006-07-04 16:17 Marshall, Simon
2006-07-05 8:26 ` martin rudalics
2006-07-05 12:19 ` martin rudalics
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=81CCA6588E60BB42BE68BD029ED48260080E12B4@wimex2.wim.midas-kapiti.com \
--to=simon.marshall@misys.com \
--cc=cyd@stupidchicken.com \
--cc=emacs-devel@gnu.org \
--cc=rms@gnu.org \
/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.