* window.c: Add Qscroll_command.
Remove Vscroll_preserve_screen_position_commands.
(window_scroll_pixel_based, window_scroll_line_based): Check the
`scroll-command' property on the last command instead of searching
the last command in Vscroll_preserve_screen_position_commands.
(syms_of_window): Initialize and staticpro `Qscroll_command'.
Put Qscroll_command property on Qscroll_up and Qscroll_down.
(scroll-preserve-screen-position): Doc fix.
(Vscroll_preserve_screen_position_commands): Remove variable.
* simple.el (scroll-up-command, scroll-down-command)
(scroll-up-line, scroll-down-line): Put `scroll-command'
property on the these symbols. Remove them from
`scroll-preserve-screen-position-commands'.
* mwheel.el (mwheel-scroll): Put `scroll-command' and
`isearch-scroll' properties on the `mwheel-scroll' symbol.
Remove it from `scroll-preserve-screen-position-commands'.
* isearch.el (isearch-allow-scroll): Doc fix.
http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00403.html
* window.c (Vscroll_preserve_screen_position_commands): New variable
with the default value as the list of Qscroll_down and Qscroll_up.
(window_scroll_pixel_based, window_scroll_line_based): Search the
last command in the list Vscroll_preserve_screen_position_commands
instead of comparing with Qscroll_up and Qscroll_down.
* mwheel.el (scroll-preserve-screen-position-commands):
Add mwheel-scroll to this list of commands.
* simple.el (scroll-preserve-screen-position-commands):
Add scroll-up-command, scroll-down-command, scroll-up-line,
scroll-down-line to this list of commands.
* mwheel.el (mwheel-scroll-up-function)
(mwheel-scroll-down-function): New defvars.
(mwheel-scroll): Funcall `mwheel-scroll-up-function' instead of
`scroll-up', and `mwheel-scroll-down-function' instead of
`scroll-down'.
* doc-view.el (doc-view-scroll-up-or-next-page)
(doc-view-scroll-down-or-previous-page): Add optional ARG.
Use this ARG in the call to image-scroll-up/image-scroll-down.
Change `interactive' spec to "P". Goto next/previous page only
when `doc-view-continuous-mode' is non-nil or ARG is nil (for the
SPC/DEL case). Doc fix.
(doc-view-next-line-or-next-page)
(doc-view-previous-line-or-previous-page): Rename arg to ARG
for consistency.
(doc-view-mode): Set buffer-local `mwheel-scroll-up-function' to
`doc-view-scroll-up-or-next-page', and buffer-local
`mwheel-scroll-down-function' to
`doc-view-scroll-down-or-previous-page'.
actually define the variable, but only silences the byte-compiler.
(mouse-wheel-change-button): Check whether mouse-wheel-mode is bound
before looking it up.
(mouse-wheel-scroll-amount): Also reset the bindings if this value is changed.
(mouse-wheel-mode): Use it, so as to make sure we really remove all
the bindings we set last time. Use custom-initialize-delay.
* loadup.el: Load mwheel after term/*-win.el.
* startup.el (command-line): Don't reevaluate mouse-wheel-down-event
and mouse-wheel-up-event now that their first evaluation is done
sufficiently late to be correct.
the mouse wheel. This adds a short period after each mouse wheel
scroll event where a click on the mouse wheel button is ignored.
(mouse-wheel-click-event, mouse-wheel-inhibit-click-time): New customs.
(mouse-wheel-click-button, mwheel-inhibit-click-event-timer): New vars.
(mwheel-inhibit-click-timeout,mwheel-filter-click-events): New defuns.
(mwheel-scroll): Add mwheel-filter-click-events as pre-command-hook.
Start mwheel-inhibit-click-event-timer with timeout handler
mwheel-inhibit-click-timeout.
(mouse-wheel-up-button, mouse-wheel-down-button): Obsolete.
(mouse-wheel-up-event, mouse-wheel-down-event): New vars.
(mouse-wheel-follow-mouse): Change default to t.
(mwheel-event-button): Return the basic event symbol.
(mwheel-scroll): Work with non-mouse events.
(mouse-wheel-mode): Use the new vars.
(mwheel-install): Obey `uninstall'.
scrolling speed, fix an unwind-protect.
(mouse-wheel-scroll-amount): Now a three-element list.
(mouse-wheel-scroll-down-slow, mouse-wheel-scroll-up-slow)
(mouse-wheel-scroll-down-normal, mouse-wheel-scroll-up-normal)
(mouse-wheel-scroll-down-fast, mouse-wheel-scroll-up-fast): New functions.