1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-08 04:30:45 -08:00
emacs/test/lisp/erc
F. Jason Park 617ddb8089 Consider all windows in erc-scrolltobottom-mode
* etc/ERC-NEWS: Add entry for option `erc-scrolltobottom-all', and
mention explicit hook-depth intervals reserved by ERC.
* lisp/erc/erc-backend.el (erc--hide-prompt): Change hook depth on
`pre-command-hook' from 91 to 80.
* lisp/erc/erc-goodies.el (erc-input-line-position): Mention secondary
role when new option `erc-scroll-to-bottom-relaxed' is non-nil.
(erc-scrolltobottom-all): New option that decides whether module
`scrolltobottom' affects all windows or just the selected one, as it
always has.
(erc-scrolltobottom-relaxed): New option to leave the prompt
stationary instead of forcing it to the bottom of the window.
(erc-scrolltobottom-mode, erc-scrolltobottom-enable,
erc-scrolltobottom-disable): Use `erc--scrolltobottom-setup' instead
of `erc-add-scroll-to-bottom' for adding and removing local hooks and
instead of ranging over buffers when removing them.  Also add and
remove new hook members when `erc-scrolltobottom-all' is non-nil.
(erc--scrolltobottom-relaxed-commands,
erc--scrolltobottom-window-info,
erc--scrolltobottom-post-force-commands,
erc--scrolltobottom-relaxed-skip-commands): New internal variables.
(erc--scrolltobottom-on-pre-command
erc--scrolltobottom-on-post-command): New functions resembling
`erc-possibly-scroll-to-bottom' that try to avoid scrolling repeatedly
for no reason.
(erc--scrolltobottom-on-pre-command-relaxed,
erc--scrolltobottom-on-post-command-relaxed): New commands to help
implement `erc-scroll-to-bottom-relaxed'.
(erc--scrolltobottom-at-prompt-minibuffer-active): New function to
scroll to bottom on window configuration changes when using the
minibuffer.
(erc--scrolltobottom-all): New function to scroll all windows
displaying the current buffer.
(erc-add-scroll-to-bottom): Deprecate this function because it is now
unused in the default client and trivial to implement otherwise.
(erc--scrolltobottom-setup): New generic function to perform teardown
as well as setup depending on the state of the module's mode variable.
Also add an implementation specifically for `erc-scrolltobottom-all'
that locally modifies different sets of hooks depending on
`erc-scrolltobottom-relaxed'.
(erc--scrolltobottom-on-pre-insert): New generic function that
remembers the last `window-start' and maybe the current screen line
before inserting a message, in order to restore it afterward.
(erc--scrolltobottom-confirm): New function, a replacement for
`erc-scroll-to-bottom' that returns non-nil when it's actually
recentered the window.  For now, used only when
`erc-scrolltobottom-all' is enabled.
(erc-move-to-prompt-setup): Add `erc-move-to-prompt' to
`pre-command-hook' at a depth of 70 in the current buffer.
(erc-keep-place-mode, erc-keep-place-enable): Change hook depth from 0
to 85.
(erc--keep-place-indicator-setup): Add overlay arrow `after-string' in
non-graphical settings in case users have time stamps or other content
occupying the left margin.
(erc-keep-place-indicator-mode, erc-keep-place-indicator-enable):
Change hook depth from 90 to 85 locally so as not to conflict with a
value of t, for append.
(erc--keep-place-indicator-on-global-module): Change hook depth from
90 to 85 locally.
* test/lisp/erc/erc-scenarios-scrolltobottom-relaxed.el: New file.
* test/lisp/erc/erc-scenarios-scrolltobottom.el: New file.
* test/lisp/erc/resources/erc-scenarios-common.el
(erc-scenarios-common--term-size, erc-scenarios-common--run-in-term,
erc-scenarios-common-interactive-debug-term-p,
erc-scenarios-common-with-noninteractive-in-term): New test macro and
supporting helper function and variables to facilitate running
scenario-based tests in an inferior Emacs, in term-mode.
(erc-scenarios-common--at-win-end-p,
erc-scenarios-common--above-win-end-p,
erc-scenarios-common--prompt-past-win-end-p,
erc-scenarios-common--recenter-top-bottom-around,
erc-scenarios-common--recenter-top-bottom,
erc-scenarios-scrolltobottom--normal): New test fixture and assertion
helper functions.
* test/lisp/erc/resources/scrolltobottom/help.eld: New file.
(Bug#64855)
2023-09-10 17:58:20 -07:00
..
resources Consider all windows in erc-scrolltobottom-mode 2023-09-10 17:58:20 -07:00
erc-button-tests.el Ignore erc-response objects in error-notice helper 2023-08-25 14:47:07 -07:00
erc-dcc-tests.el Fix command-line parsing regression in erc-cmd-DCC 2023-07-13 18:45:31 -07:00
erc-fill-tests.el Fix CTCP ACTION regression in erc-fill-wrap 2023-07-28 16:34:31 -07:00
erc-goodies-tests.el Decouple keep-place-indicator from global ERC module 2023-07-13 18:45:31 -07:00
erc-join-tests.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-match-tests.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-networks-tests.el Deprecate erc-server-alist and erc-server-select 2023-07-13 18:45:31 -07:00
erc-nicks-tests.el Add module for colorizing nicknames to ERC 2023-07-13 18:45:31 -07:00
erc-sasl-tests.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-auth-source.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-association-nick.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-association-query.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-association-samenet.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-association.el Remove obsolete server buffers on MOTD in erc-track 2023-01-10 06:34:01 -08:00
erc-scenarios-base-attach.el Revive option erc-query-on-unjoined-chan-privmsg 2023-05-05 17:18:01 -07:00
erc-scenarios-base-auto-recon.el Add probing erc-server-reconnect-function variant 2023-04-08 14:23:50 -07:00
erc-scenarios-base-buffer-display.el Allow custom display-buffer actions in ERC 2023-07-13 18:45:31 -07:00
erc-scenarios-base-compat-rename-bouncer.el ; Fix filename mismatches in prop lines of ERC tests 2023-01-24 20:15:18 -08:00
erc-scenarios-base-local-module-modes.el Refactor marker initialization in erc-open 2023-04-08 14:23:51 -07:00
erc-scenarios-base-local-modules.el Refactor marker initialization in erc-open 2023-04-08 14:23:51 -07:00
erc-scenarios-base-misc-regressions.el Add MOTD command to ERC 2023-04-08 14:23:50 -07:00
erc-scenarios-base-netid-bouncer-id.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-netid-bouncer-recon-base.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-netid-bouncer-recon-both.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-netid-bouncer-recon-id.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-netid-bouncer.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-netid-samenet.el ; Fix filename mismatches in prop lines of ERC tests 2023-01-24 20:15:18 -08:00
erc-scenarios-base-reconnect.el Move ERC's buffer-display tests to separate file 2023-05-05 17:18:01 -07:00
erc-scenarios-base-renick.el ; Relax timeouts on some ERC tests 2023-08-15 16:47:20 -07:00
erc-scenarios-base-reuse-buffers.el ; Remove failing erc-reuse-buffers test 2023-02-14 08:25:00 -08:00
erc-scenarios-base-split-line.el Redo line splitting for outgoing messages in ERC 2023-05-05 17:18:01 -07:00
erc-scenarios-base-unstable.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-base-upstream-recon-soju.el ; Fix filename mismatches in prop lines of ERC tests 2023-01-24 20:15:18 -08:00
erc-scenarios-base-upstream-recon-znc.el ; Fix filename mismatches in prop lines of ERC tests 2023-01-24 20:15:18 -08:00
erc-scenarios-internal.el ; Prevent ERC-induced false positive in JUnit report 2023-02-15 08:34:04 -08:00
erc-scenarios-join-auth-source.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-join-display-context.el Allow custom display-buffer actions in ERC 2023-07-13 18:45:31 -07:00
erc-scenarios-join-netid-newcmd-id.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-join-netid-newcmd.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-join-netid-recon-id.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-join-netid-recon.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-scenarios-log.el Warn about implicit logging in erc-truncate-mode 2023-08-25 14:47:07 -07:00
erc-scenarios-match.el Improve ERC's internal invisibility API 2023-07-22 07:33:07 -07:00
erc-scenarios-misc.el Ignore killed buffers when switching in erc-track 2023-04-08 14:23:51 -07:00
erc-scenarios-sasl.el Split overlong outgoing messages in erc-sasl 2023-04-08 14:23:50 -07:00
erc-scenarios-scrolltobottom-relaxed.el Consider all windows in erc-scrolltobottom-mode 2023-09-10 17:58:20 -07:00
erc-scenarios-scrolltobottom.el Consider all windows in erc-scrolltobottom-mode 2023-09-10 17:58:20 -07:00
erc-scenarios-services-misc.el Redo erc-nickname-in-use-functions as a local module 2023-07-01 07:21:30 -07:00
erc-scenarios-status-sidebar.el Prevent unwanted recursion in erc-nickbar-disable 2023-08-25 14:47:07 -07:00
erc-services-tests.el Make auth-source erc-services tests more readable 2023-04-08 14:23:51 -07:00
erc-stamp-tests.el Add optional timezone param to erc-echo-timestamp 2023-09-10 17:58:20 -07:00
erc-tests.el ; Allow alternate ert-info text in ERC test utility 2023-09-10 17:58:20 -07:00
erc-track-tests.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00