mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-07 23:10:28 -08:00
* lisp/erc/erc-button.el (erc-button--nick): Add `face-cache' slot. (erc-button-add-nickname-buttons): Pass `erc-button--nick' object, if created', as the boolean NICK-P parameter when calling `erc-button-add-button'. Keeping the latter function ignorant of `erc-button--nick' is of course preferable, but some coordination is now required to convey and use the "face cache". We can introduce an abstraction, like a local variable, if this becomes an issue. (erc-button-add-button): Use `erc--merge-prop' instead of `erc-button-add-face' to apply button faces. Hold off on deprecating the latter because it provides unique functionality for nesting faces. Also, consult NICK-P if it's an `erc-button--nick' object for the various overriding faces it knows about. * lisp/erc/erc-nicks.el (erc-nicks-track-faces): New option. (erc-nicks--get-face): Make generated face `:inherit' from `erc-nicks-backing-face'. (erc-nicks--highlight): Just return the generated face instead of combining it with `erc-nicks-backing-face'. (erc-nicks--highlight-button): Set the `face-cache' slot of the `erc-button--nick' object when `track' is loaded and initialized. (erc-nicks-mode, erc-nicks-enable, erc-nicks-disable): Add and remove `track' integration. (erc-nicks--reject-uninterned-faces): New function to remove faces created by `nicks' from buttonized speakers and mentions. Conform to `erc-track--face-reject-function' interface. (erc-nicks--ourps, erc-nicks--check-normals): New function and helper for `erc-track--alt-normals-function' interface. (erc-nicks--setup-track-integration): New function. (erc-nicks--remember-face-for-track): New function to cache nick faces owned by this module. * lisp/erc/erc.el (erc--merge-prop): Add new optional parameter `cache-fn', and when non-nil, call it, assigning the returned value to that of the merged property. * test/lisp/erc/erc-nicks-tests.el (erc-nicks-list-faces): Skip the "Inherit: " button. (Bug#67767) |
||
|---|---|---|
| .. | ||
| ChangeLog.1 | ||
| ChangeLog.2 | ||
| erc-autoaway.el | ||
| erc-backend.el | ||
| erc-button.el | ||
| erc-capab.el | ||
| erc-common.el | ||
| erc-compat.el | ||
| erc-dcc.el | ||
| erc-desktop-notifications.el | ||
| erc-ezbounce.el | ||
| erc-fill.el | ||
| erc-goodies.el | ||
| erc-ibuffer.el | ||
| erc-identd.el | ||
| erc-imenu.el | ||
| erc-join.el | ||
| erc-lang.el | ||
| erc-list.el | ||
| erc-log.el | ||
| erc-match.el | ||
| erc-menu.el | ||
| erc-netsplit.el | ||
| erc-networks.el | ||
| erc-nicks.el | ||
| erc-notify.el | ||
| erc-page.el | ||
| erc-pcomplete.el | ||
| erc-replace.el | ||
| erc-ring.el | ||
| erc-sasl.el | ||
| erc-services.el | ||
| erc-sound.el | ||
| erc-speedbar.el | ||
| erc-spelling.el | ||
| erc-stamp.el | ||
| erc-status-sidebar.el | ||
| erc-track.el | ||
| erc-truncate.el | ||
| erc-xdcc.el | ||
| erc.el | ||