From unknown Tue Jun 17 01:43:07 2025 X-Loop: help-debbugs@gnu.org Subject: bug#47437: 28.0.50; pulse-momentary-highlight-overlay breaks if background color is inherited Resent-From: Ingo Lohmar Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 27 Mar 2021 21:35:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 47437 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 47437@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.16168808987242 (code B ref -1); Sat, 27 Mar 2021 21:35:01 +0000 Received: (at submit) by debbugs.gnu.org; 27 Mar 2021 21:34:58 +0000 Received: from localhost ([127.0.0.1]:45070 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQGaA-0001sj-23 for submit@debbugs.gnu.org; Sat, 27 Mar 2021 17:34:58 -0400 Received: from lists.gnu.org ([209.51.188.17]:51962) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQGa7-0001sZ-2a for submit@debbugs.gnu.org; Sat, 27 Mar 2021 17:34:56 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:46018) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lQGa6-00019S-Im for bug-gnu-emacs@gnu.org; Sat, 27 Mar 2021 17:34:54 -0400 Received: from mout02.posteo.de ([185.67.36.66]:44429) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lQGa3-0004fY-Ed for bug-gnu-emacs@gnu.org; Sat, 27 Mar 2021 17:34:54 -0400 Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id 8A1BF2400FD for ; Sat, 27 Mar 2021 22:34:47 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1616880887; bh=D+sOA5fV7XdVXSlU/ZStYMkk2WMKprxK4tqN0uvzDFA=; h=From:To:Subject:Date:From; b=M523FgnoDVixGkf9K8a6krIrZjKVxQO2TzFf8mET3hmI8YhIRDGk81Tac3dYoDx7i Q3kW6OpWIkrBUPJvMWMJ1DsvVPNliFi57mhyyZbBroeYDz7ivKs6OwXqLes9aQcT57 iXGIqpLwI5c6ztqqVG5Jj6J5B4rm69XrYlqRx4tO1075cAWCoJ4rzI/FMy1sIxQyqu 0TFsih/0wFL1J5ObxaudHWJy3Uq9ZbDGhnLL+0zLhTlvFgGg0snrzZTO//KOGjcR0i dz2ONwf+MmUsM5ZMRbJ1XKidHrSIAiKGuH5EBXbBRlIDO6wn3T/gP5gut4LLtCD2LA 055Q1fqwHPq7Q== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4F7BvB70FPz6tmb for ; Sat, 27 Mar 2021 22:34:46 +0100 (CET) From: Ingo Lohmar Date: Sat, 27 Mar 2021 22:34:46 +0100 Message-ID: <87czvks2kp.fsf@kenko.localhost.com> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=185.67.36.66; envelope-from=ingo.lohmar@posteo.net; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) The bug surfaces after setting the pulse highlight face by inheriting from other faces (no explicit background attribute), for example like this: (custom-set-faces '(pulse-highlight-start-face ((t (:inherit highlight))) 'new)) I do this as I employ a restricted set of color faces from which all others inherit. With the above setting, run `xref-find-definitions' (M-.) on an elisp symbol. This triggers `pulse-momentary-highlight-overlay', which fails at (color-name-to-rgb (face-background 'pulse-highlight-start-face)) because the background attribute is `nil'. Adding the "inherit" argument works, at least in the above case: (color-name-to-rgb (face-background 'pulse-highlight-start-face nil t)) Thanks! In GNU Emacs 28.0.50 (build 5, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo version 1.16.0) of 2021-03-27 built on kenko Repository revision: 5d2f319eec33fea2cb29a02210952ee590b4b21b Repository branch: feature/pgtk Windowing system distributor 'System Description: Debian GNU/Linux bullseye/sid Configured using: 'configure --with-pgtk' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SOUND THREADS TIFF TOOLKIT_SCROLL_BARS XIM GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: ELisp/l Minor modes in effect: TeX-PDF-mode: t TeX-source-correlate-mode: t ess-elisp-trace-mode: Toggle tracing of ess-prefixed functions. Tracing is useful for debugging background ESS behaviour. When enabled, all functions prefixed in `ess-' and `inferior-ess' are instrumented with `trace-function'. Tracing is turned off by calling `untrace-function' on these functions. company-skewer-mode: t global-git-commit-mode: t hi-lock-mode: t server-mode: t display-fill-column-indicator-mode: t subword-mode: t idle-highlight-mode: t rainbow-delimiters-mode: t goto-address-prog-mode: t shell-dirtrack-mode: t outline-minor-mode: t global-hl-todo-mode: t hl-todo-mode: t dired-async-mode: t pollen-global-mode: t xterm-mouse-mode: t enchive-mode: t selectrum-prescient-mode: t prescient-persist-mode: t amx-mode: t savehist-mode: t minibuffer-depth-indicate-mode: t company-posframe-mode: t company-statistics-mode: t global-company-mode: t company-mode: t beginend-global-mode: t beginend-prog-mode: t delete-selection-mode: t show-paren-mode: t electric-pair-mode: t which-key-mode: t desktop-save-mode: t my/window-number-mode: t ws-butler-global-mode: t ws-butler-mode: t global-auto-revert-mode: t global-so-long-mode: t ctrlf-mode: t ctrlf-local-mode: t selectrum-mode: t global-eldoc-mode: t eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t global-prettify-symbols-mode: t prettify-symbols-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t size-indication-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t abbrev-mode: t hs-minor-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug dired-addons notmuch-jump magit-extras mc-addons slime-tests ob-ditaa ob-plantuml ol-bibtex bibtex-config bibtex-clean-addons bibtex org-colview org-crypt-config org-crypt org-habit notmuch-config notmuch notmuch-hello cus-edit wid-edit notmuch-tree notmuch-show notmuch-print notmuch-crypto notmuch-mua notmuch-message notmuch-draft notmuch-maildir-fcc notmuch-address notmuch-company notmuch-parser notmuch-wash coolj notmuch-query icalendar notmuch-tag notmuch-lib notmuch-version notmuch-compat cl mm-view mml-smime smime dig notmuch-addons systemd gitconfig-mode preview reftex-dcr reftex-auc reftex-toc-patch reftex-toc reftex-config reftex reftex-loaddefs reftex-vars tex-buf font-latex latex-config latex-addons latex-mode-expansions latex latex-flymake tex-ispell tex-style tex-config tex texmathp tex-mode macrostep-c cmacexp macrostep cus-start cus-load cal-move ox-org ox-md ox-odt ox-latex ox-icalendar ox-html table ox-ascii ox-publish ox sql-config sql-addons sql pulse apropos my-grep pcre2el rxt re-builder edebug eieio-opt speedbar ezimage dframe shortdoc hippie-expand-config my-mode-groups hippie-expand-addons my-flex-search hippie-exp my-completion ctrlf hl-line solar cal-dst holidays hol-loaddefs diary-lib diary-loaddefs cal-iso org-duration org-addons julia-mode julia-mode-latexsubs rust-addons rust-config rust-mode make-mode cs-mode cc-langs cursor-sensor ess-r-mode ess-r-flymake ess-r-xref ess-trns ess-r-package ess-r-completion ess-roxy ess-r-syntax ess-rd ess-s-lang ess-help ess-mode ess-inf ess-tracebug ess ess-utils ess-custom geiser-config geiser-mode geiser-xref geiser-compile geiser-debug geiser-patch geiser-gambit geiser-chibi geiser-mit geiser-chez geiser-chicken geiser-racket geiser-guile info-look geiser-repl geiser-image geiser-company geiser-doc geiser-menu geiser-edit geiser-completion geiser-autodoc geiser-eval geiser-connection geiser-syntax geiser-log geiser-popup view scheme company-skewer skewer-addons skewer-repl skewer-mode cache-table js2-mode-expansions js2-mode simple-httpd js-config js-flymake-backends js-patch js-mode-expansions js cc-mode-expansions cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs slime-config slime arc-mode archive-mode hyperspec rng-xsd xsd-regexp rng-cmpct nxml-addons nxml-mode-expansions rng-nxml rng-valid rng-loc rng-uri rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns nxml-mode nxml-outln nxml-rap html-mode-expansions sgml-mode facemenu nxml-util nxml-enc xmltok restclient magit-bookmark bookmark magit-patch magit-subtree magit-ediff ediff-config ediff ediff-merg ediff-mult ediff-wind ediff-diff ediff-help ediff-init ediff-util mule-util face-remap magit-addons magit-repos-addons tablist tablist-filter semantic/wisent/comp semantic/wisent semantic/wisent/wisent magit-config magit-bundle forge-config forge-list forge-commands forge-semi forge-bitbucket buck forge-gogs gogs forge-gitea gtea forge-gitlab glab forge-github ghub-graphql treepy gsexp ghub let-alist gnutls forge-notify forge-revnote forge-pullreq forge-issue forge-topic bug-reference forge-post markdown-mode edit-indirect color forge-repo forge forge-core forge-db closql emacsql-sqlite emacsql emacsql-compiler url-http url-auth url-gw nsm magit-submodule magit-obsolete magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit magit-repos magit-apply magit-wip magit-log which-func magit-diff smerge-config smerge-mode diff git-commit log-edit message-config sendmail message-addons message rmc rfc822 mml mml-sec epa derived epg epg-config gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log magit-core magit-autorevert magit-margin magit-transient magit-process with-editor magit-mode transient magit-git magit-section magit-utils hi-lock cl-print my-misc-funs char-fold two-column window-addons my-window-funs windmove server time fish-mode go-config go-flymake-backends go-mode find-file ffap my/publish-blog racket-mode racket-bug-report package url-handlers racket-collection tq racket-repl-buffer-name racket-stepper racket-logger racket-profile racket-smart-open racket-xp racket-xp-complete racket-show pos-tip racket-imenu racket-edit racket-repl semantic/symref/grep wgrep-patch wgrep grep-config grep semantic/symref semantic/util-modes semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local cedet racket-eldoc racket-describe shr kinsoku puny svg dom browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf mailcap racket-visit racket-complete racket-common racket-parens racket-indent racket-font-lock racket-ppss racket-keywords-and-builtins ido racket-doc racket-cmd racket-util racket-browse-url racket-custom sh-flymake-backends my-flymake-addons sh-script smie executable rx zig-config zig-mode jka-compr conf-mode display-fill-column-indicator subword-patch subword-mode-expansions cap-words superword subword idle-highlight-mode rainbow-delimiters my-outshine hideshow my-eol-fix goto-addr org-indent image-file image-converter org-element avl-tree disp-table vc-hg vc-src vc-svn vc-git diff-mode org-capture-config org-config my-org-contacts org-protocol ob-scheme geiser-impl help-fns radix-tree geiser-custom geiser-base geiser ob-dot ob-js ob-sql ob-latex ob-python python-config python-el-fgallina-expansions python tramp-sh tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat parse-time iso8601 ls-lisp-config ls-lisp-patch ls-lisp ob-shell shell-config shell org-attach org-id org-clock org-agenda org-refile the-org-mode-expansions org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete pcomplete org-list org-faces org-entities time-date fold-config noutline outline org-version ob-emacs-lisp ob-core ob-eval org-table ol org-keys org-compat org-macs org-loaddefs format-spec calendar-config cal-menu calendar cal-loaddefs home-config my-ms-proj-mode elisp-addons xref-addons hl-todo flymake-config help-at-pt eglot-config eglot array jsonrpc ert pp ewoc debug backtrace flymake-proc flymake warnings compile-config dired-subtree dired-hacks-utils dash dired-async async dired-guess dired-aux dired-config dired-patch dired dired-loaddefs compile-addons compile text-property-search comint-config comint ansi-color url-util url-parse secrets dbus xml auth-source password-cache url-vars imenu json pollen occur-config faces-config my-solarized-colors modeline-config ui-config xt-mouse enchive-mode my-project vc vc-dispatcher selectrum-prescient selectrum-addons selectrum minibuf-eldef crm prescient amx s savehist mb-depth company-posframe subr-x posframe company-statistics company-keywords company-dabbrev-code company-dabbrev etags-addons company-etags etags fileloop generator xref project eieio eieio-core cl-macs eieio-loaddefs company-gtags company-template company-capf company-elisp find-func company-config company pcase ace-link avy map tabify beginend multiple-cursors mc-separate-operations rectangular-region-mode mc-mark-pop mc-edit-lines mc-hide-unmatched-lines-mode mc-mark-more mc-cycle-cursors multiple-cursors-core rect expand-region text-mode-expansions er-basic-expansions expand-region-core expand-region-custom delsel indent-config indent-addons sexp-addons thingatpt paren elec-pair my-fill easy-mmode which-key advice tab-bar-addons desktop-config my-aux-funs desktop frameset my-window-numbers display-actions locals-patch ws-butler my-file-funs diminish autorevert filenotify so-long my-loaddefs edmacro kmacro cl-extra help-mode seq byte-opt gv bytecomp byte-compile cconv cl-seq hydra ring lv cl-loaddefs cl-lib my-setup-funs info tex-site slime-autoloads iso-transl tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/pgtk-win pgtk-win term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice button loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit pgtk lcms2 multi-tty make-network-process emacs) Memory information: ((conses 16 4011127 492190) (symbols 48 64096 6) (strings 32 342690 37556) (string-bytes 1 10603491) (vectors 16 131341) (vector-slots 8 2491637 239821) (floats 8 1428 2728) (intervals 56 456816 6619) (buffers 992 216)) From unknown Tue Jun 17 01:43:07 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Ingo Lohmar Subject: bug#47437: closed (Re: bug#47437: 28.0.50; pulse-momentary-highlight-overlay breaks if background color is inherited) Message-ID: References: <835z1bo3x8.fsf@gnu.org> <87czvks2kp.fsf@kenko.localhost.com> X-Gnu-PR-Message: they-closed 47437 X-Gnu-PR-Package: emacs Reply-To: 47437@debbugs.gnu.org Date: Sun, 28 Mar 2021 12:32:01 +0000 Content-Type: multipart/mixed; boundary="----------=_1616934721-4275-1" This is a multi-part message in MIME format... ------------=_1616934721-4275-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #47437: 28.0.50; pulse-momentary-highlight-overlay breaks if background col= or is inherited which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 47437@debbugs.gnu.org. --=20 47437: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D47437 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1616934721-4275-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 47437-done) by debbugs.gnu.org; 28 Mar 2021 12:31:40 +0000 Received: from localhost ([127.0.0.1]:45502 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQUZv-00016N-QC for submit@debbugs.gnu.org; Sun, 28 Mar 2021 08:31:40 -0400 Received: from eggs.gnu.org ([209.51.188.92]:52460) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQUZu-00016A-89 for 47437-done@debbugs.gnu.org; Sun, 28 Mar 2021 08:31:38 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:51897) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lQUZp-0005Dc-1c; Sun, 28 Mar 2021 08:31:33 -0400 Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:1657 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1lQUZi-000662-1n; Sun, 28 Mar 2021 08:31:32 -0400 Date: Sun, 28 Mar 2021 15:31:31 +0300 Message-Id: <835z1bo3x8.fsf@gnu.org> From: Eli Zaretskii To: Ingo Lohmar In-Reply-To: <87czvks2kp.fsf@kenko.localhost.com> (message from Ingo Lohmar on Sat, 27 Mar 2021 22:34:46 +0100) Subject: Re: bug#47437: 28.0.50; pulse-momentary-highlight-overlay breaks if background color is inherited References: <87czvks2kp.fsf@kenko.localhost.com> X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 47437-done Cc: 47437-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > From: Ingo Lohmar > Date: Sat, 27 Mar 2021 22:34:46 +0100 > > > The bug surfaces after setting the pulse highlight face by inheriting > from other faces (no explicit background attribute), for example like > this: > > (custom-set-faces > '(pulse-highlight-start-face ((t (:inherit highlight))) 'new)) > > I do this as I employ a restricted set of color faces from which all > others inherit. With the above setting, run `xref-find-definitions' > (M-.) on an elisp symbol. This triggers > `pulse-momentary-highlight-overlay', which fails at > > (color-name-to-rgb > (face-background 'pulse-highlight-start-face)) > > because the background attribute is `nil'. Adding the "inherit" > argument works, at least in the above case: > > (color-name-to-rgb > (face-background 'pulse-highlight-start-face nil t)) Thanks, I made that change on master now, except that I used 'default' instead of t, to make sure the returned value is always a color name. ------------=_1616934721-4275-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 27 Mar 2021 21:34:58 +0000 Received: from localhost ([127.0.0.1]:45070 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQGaA-0001sj-23 for submit@debbugs.gnu.org; Sat, 27 Mar 2021 17:34:58 -0400 Received: from lists.gnu.org ([209.51.188.17]:51962) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQGa7-0001sZ-2a for submit@debbugs.gnu.org; Sat, 27 Mar 2021 17:34:56 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:46018) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lQGa6-00019S-Im for bug-gnu-emacs@gnu.org; Sat, 27 Mar 2021 17:34:54 -0400 Received: from mout02.posteo.de ([185.67.36.66]:44429) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lQGa3-0004fY-Ed for bug-gnu-emacs@gnu.org; Sat, 27 Mar 2021 17:34:54 -0400 Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id 8A1BF2400FD for ; Sat, 27 Mar 2021 22:34:47 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1616880887; bh=D+sOA5fV7XdVXSlU/ZStYMkk2WMKprxK4tqN0uvzDFA=; h=From:To:Subject:Date:From; b=M523FgnoDVixGkf9K8a6krIrZjKVxQO2TzFf8mET3hmI8YhIRDGk81Tac3dYoDx7i Q3kW6OpWIkrBUPJvMWMJ1DsvVPNliFi57mhyyZbBroeYDz7ivKs6OwXqLes9aQcT57 iXGIqpLwI5c6ztqqVG5Jj6J5B4rm69XrYlqRx4tO1075cAWCoJ4rzI/FMy1sIxQyqu 0TFsih/0wFL1J5ObxaudHWJy3Uq9ZbDGhnLL+0zLhTlvFgGg0snrzZTO//KOGjcR0i dz2ONwf+MmUsM5ZMRbJ1XKidHrSIAiKGuH5EBXbBRlIDO6wn3T/gP5gut4LLtCD2LA 055Q1fqwHPq7Q== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4F7BvB70FPz6tmb for ; Sat, 27 Mar 2021 22:34:46 +0100 (CET) From: Ingo Lohmar To: bug-gnu-emacs@gnu.org Subject: 28.0.50; pulse-momentary-highlight-overlay breaks if background color is inherited Date: Sat, 27 Mar 2021 22:34:46 +0100 Message-ID: <87czvks2kp.fsf@kenko.localhost.com> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=185.67.36.66; envelope-from=ingo.lohmar@posteo.net; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) The bug surfaces after setting the pulse highlight face by inheriting from other faces (no explicit background attribute), for example like this: (custom-set-faces '(pulse-highlight-start-face ((t (:inherit highlight))) 'new)) I do this as I employ a restricted set of color faces from which all others inherit. With the above setting, run `xref-find-definitions' (M-.) on an elisp symbol. This triggers `pulse-momentary-highlight-overlay', which fails at (color-name-to-rgb (face-background 'pulse-highlight-start-face)) because the background attribute is `nil'. Adding the "inherit" argument works, at least in the above case: (color-name-to-rgb (face-background 'pulse-highlight-start-face nil t)) Thanks! In GNU Emacs 28.0.50 (build 5, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo version 1.16.0) of 2021-03-27 built on kenko Repository revision: 5d2f319eec33fea2cb29a02210952ee590b4b21b Repository branch: feature/pgtk Windowing system distributor 'System Description: Debian GNU/Linux bullseye/sid Configured using: 'configure --with-pgtk' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SOUND THREADS TIFF TOOLKIT_SCROLL_BARS XIM GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: ELisp/l Minor modes in effect: TeX-PDF-mode: t TeX-source-correlate-mode: t ess-elisp-trace-mode: Toggle tracing of ess-prefixed functions. Tracing is useful for debugging background ESS behaviour. When enabled, all functions prefixed in `ess-' and `inferior-ess' are instrumented with `trace-function'. Tracing is turned off by calling `untrace-function' on these functions. company-skewer-mode: t global-git-commit-mode: t hi-lock-mode: t server-mode: t display-fill-column-indicator-mode: t subword-mode: t idle-highlight-mode: t rainbow-delimiters-mode: t goto-address-prog-mode: t shell-dirtrack-mode: t outline-minor-mode: t global-hl-todo-mode: t hl-todo-mode: t dired-async-mode: t pollen-global-mode: t xterm-mouse-mode: t enchive-mode: t selectrum-prescient-mode: t prescient-persist-mode: t amx-mode: t savehist-mode: t minibuffer-depth-indicate-mode: t company-posframe-mode: t company-statistics-mode: t global-company-mode: t company-mode: t beginend-global-mode: t beginend-prog-mode: t delete-selection-mode: t show-paren-mode: t electric-pair-mode: t which-key-mode: t desktop-save-mode: t my/window-number-mode: t ws-butler-global-mode: t ws-butler-mode: t global-auto-revert-mode: t global-so-long-mode: t ctrlf-mode: t ctrlf-local-mode: t selectrum-mode: t global-eldoc-mode: t eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t global-prettify-symbols-mode: t prettify-symbols-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t size-indication-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t abbrev-mode: t hs-minor-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug dired-addons notmuch-jump magit-extras mc-addons slime-tests ob-ditaa ob-plantuml ol-bibtex bibtex-config bibtex-clean-addons bibtex org-colview org-crypt-config org-crypt org-habit notmuch-config notmuch notmuch-hello cus-edit wid-edit notmuch-tree notmuch-show notmuch-print notmuch-crypto notmuch-mua notmuch-message notmuch-draft notmuch-maildir-fcc notmuch-address notmuch-company notmuch-parser notmuch-wash coolj notmuch-query icalendar notmuch-tag notmuch-lib notmuch-version notmuch-compat cl mm-view mml-smime smime dig notmuch-addons systemd gitconfig-mode preview reftex-dcr reftex-auc reftex-toc-patch reftex-toc reftex-config reftex reftex-loaddefs reftex-vars tex-buf font-latex latex-config latex-addons latex-mode-expansions latex latex-flymake tex-ispell tex-style tex-config tex texmathp tex-mode macrostep-c cmacexp macrostep cus-start cus-load cal-move ox-org ox-md ox-odt ox-latex ox-icalendar ox-html table ox-ascii ox-publish ox sql-config sql-addons sql pulse apropos my-grep pcre2el rxt re-builder edebug eieio-opt speedbar ezimage dframe shortdoc hippie-expand-config my-mode-groups hippie-expand-addons my-flex-search hippie-exp my-completion ctrlf hl-line solar cal-dst holidays hol-loaddefs diary-lib diary-loaddefs cal-iso org-duration org-addons julia-mode julia-mode-latexsubs rust-addons rust-config rust-mode make-mode cs-mode cc-langs cursor-sensor ess-r-mode ess-r-flymake ess-r-xref ess-trns ess-r-package ess-r-completion ess-roxy ess-r-syntax ess-rd ess-s-lang ess-help ess-mode ess-inf ess-tracebug ess ess-utils ess-custom geiser-config geiser-mode geiser-xref geiser-compile geiser-debug geiser-patch geiser-gambit geiser-chibi geiser-mit geiser-chez geiser-chicken geiser-racket geiser-guile info-look geiser-repl geiser-image geiser-company geiser-doc geiser-menu geiser-edit geiser-completion geiser-autodoc geiser-eval geiser-connection geiser-syntax geiser-log geiser-popup view scheme company-skewer skewer-addons skewer-repl skewer-mode cache-table js2-mode-expansions js2-mode simple-httpd js-config js-flymake-backends js-patch js-mode-expansions js cc-mode-expansions cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs slime-config slime arc-mode archive-mode hyperspec rng-xsd xsd-regexp rng-cmpct nxml-addons nxml-mode-expansions rng-nxml rng-valid rng-loc rng-uri rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns nxml-mode nxml-outln nxml-rap html-mode-expansions sgml-mode facemenu nxml-util nxml-enc xmltok restclient magit-bookmark bookmark magit-patch magit-subtree magit-ediff ediff-config ediff ediff-merg ediff-mult ediff-wind ediff-diff ediff-help ediff-init ediff-util mule-util face-remap magit-addons magit-repos-addons tablist tablist-filter semantic/wisent/comp semantic/wisent semantic/wisent/wisent magit-config magit-bundle forge-config forge-list forge-commands forge-semi forge-bitbucket buck forge-gogs gogs forge-gitea gtea forge-gitlab glab forge-github ghub-graphql treepy gsexp ghub let-alist gnutls forge-notify forge-revnote forge-pullreq forge-issue forge-topic bug-reference forge-post markdown-mode edit-indirect color forge-repo forge forge-core forge-db closql emacsql-sqlite emacsql emacsql-compiler url-http url-auth url-gw nsm magit-submodule magit-obsolete magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit magit-repos magit-apply magit-wip magit-log which-func magit-diff smerge-config smerge-mode diff git-commit log-edit message-config sendmail message-addons message rmc rfc822 mml mml-sec epa derived epg epg-config gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log magit-core magit-autorevert magit-margin magit-transient magit-process with-editor magit-mode transient magit-git magit-section magit-utils hi-lock cl-print my-misc-funs char-fold two-column window-addons my-window-funs windmove server time fish-mode go-config go-flymake-backends go-mode find-file ffap my/publish-blog racket-mode racket-bug-report package url-handlers racket-collection tq racket-repl-buffer-name racket-stepper racket-logger racket-profile racket-smart-open racket-xp racket-xp-complete racket-show pos-tip racket-imenu racket-edit racket-repl semantic/symref/grep wgrep-patch wgrep grep-config grep semantic/symref semantic/util-modes semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local cedet racket-eldoc racket-describe shr kinsoku puny svg dom browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf mailcap racket-visit racket-complete racket-common racket-parens racket-indent racket-font-lock racket-ppss racket-keywords-and-builtins ido racket-doc racket-cmd racket-util racket-browse-url racket-custom sh-flymake-backends my-flymake-addons sh-script smie executable rx zig-config zig-mode jka-compr conf-mode display-fill-column-indicator subword-patch subword-mode-expansions cap-words superword subword idle-highlight-mode rainbow-delimiters my-outshine hideshow my-eol-fix goto-addr org-indent image-file image-converter org-element avl-tree disp-table vc-hg vc-src vc-svn vc-git diff-mode org-capture-config org-config my-org-contacts org-protocol ob-scheme geiser-impl help-fns radix-tree geiser-custom geiser-base geiser ob-dot ob-js ob-sql ob-latex ob-python python-config python-el-fgallina-expansions python tramp-sh tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat parse-time iso8601 ls-lisp-config ls-lisp-patch ls-lisp ob-shell shell-config shell org-attach org-id org-clock org-agenda org-refile the-org-mode-expansions org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete pcomplete org-list org-faces org-entities time-date fold-config noutline outline org-version ob-emacs-lisp ob-core ob-eval org-table ol org-keys org-compat org-macs org-loaddefs format-spec calendar-config cal-menu calendar cal-loaddefs home-config my-ms-proj-mode elisp-addons xref-addons hl-todo flymake-config help-at-pt eglot-config eglot array jsonrpc ert pp ewoc debug backtrace flymake-proc flymake warnings compile-config dired-subtree dired-hacks-utils dash dired-async async dired-guess dired-aux dired-config dired-patch dired dired-loaddefs compile-addons compile text-property-search comint-config comint ansi-color url-util url-parse secrets dbus xml auth-source password-cache url-vars imenu json pollen occur-config faces-config my-solarized-colors modeline-config ui-config xt-mouse enchive-mode my-project vc vc-dispatcher selectrum-prescient selectrum-addons selectrum minibuf-eldef crm prescient amx s savehist mb-depth company-posframe subr-x posframe company-statistics company-keywords company-dabbrev-code company-dabbrev etags-addons company-etags etags fileloop generator xref project eieio eieio-core cl-macs eieio-loaddefs company-gtags company-template company-capf company-elisp find-func company-config company pcase ace-link avy map tabify beginend multiple-cursors mc-separate-operations rectangular-region-mode mc-mark-pop mc-edit-lines mc-hide-unmatched-lines-mode mc-mark-more mc-cycle-cursors multiple-cursors-core rect expand-region text-mode-expansions er-basic-expansions expand-region-core expand-region-custom delsel indent-config indent-addons sexp-addons thingatpt paren elec-pair my-fill easy-mmode which-key advice tab-bar-addons desktop-config my-aux-funs desktop frameset my-window-numbers display-actions locals-patch ws-butler my-file-funs diminish autorevert filenotify so-long my-loaddefs edmacro kmacro cl-extra help-mode seq byte-opt gv bytecomp byte-compile cconv cl-seq hydra ring lv cl-loaddefs cl-lib my-setup-funs info tex-site slime-autoloads iso-transl tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/pgtk-win pgtk-win term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice button loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit pgtk lcms2 multi-tty make-network-process emacs) Memory information: ((conses 16 4011127 492190) (symbols 48 64096 6) (strings 32 342690 37556) (string-bytes 1 10603491) (vectors 16 131341) (vector-slots 8 2491637 239821) (floats 8 1428 2728) (intervals 56 456816 6619) (buffers 992 216)) ------------=_1616934721-4275-1-- From unknown Tue Jun 17 01:43:07 2025 X-Loop: help-debbugs@gnu.org Subject: bug#47437: 28.0.50; pulse-momentary-highlight-overlay breaks if background color is inherited Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 28 Mar 2021 13:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 47437 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Ingo Lohmar Cc: 47437@debbugs.gnu.org Received: via spool by 47437-submit@debbugs.gnu.org id=B47437.161693797717537 (code B ref 47437); Sun, 28 Mar 2021 13:27:01 +0000 Received: (at 47437) by debbugs.gnu.org; 28 Mar 2021 13:26:17 +0000 Received: from localhost ([127.0.0.1]:45571 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQVQm-0004Ym-EF for submit@debbugs.gnu.org; Sun, 28 Mar 2021 09:26:16 -0400 Received: from eggs.gnu.org ([209.51.188.92]:59790) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQVQk-0004Ya-Pl for 47437@debbugs.gnu.org; Sun, 28 Mar 2021 09:26:15 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:52377) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lQVQd-0002bw-8r; Sun, 28 Mar 2021 09:26:08 -0400 Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:1052 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1lQVQW-0000ls-5o; Sun, 28 Mar 2021 09:26:05 -0400 Date: Sun, 28 Mar 2021 16:26:08 +0300 Message-Id: <831rbzo1e7.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87a6qnsae0.fsf@kenko.localhost.com> (message from Ingo Lohmar on Sun, 28 Mar 2021 14:58:15 +0200) References: <87czvks2kp.fsf@kenko.localhost.com> <835z1bo3x8.fsf@gnu.org> <87a6qnsae0.fsf@kenko.localhost.com> X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > From: Ingo Lohmar > Date: Sun, 28 Mar 2021 14:58:15 +0200 > > 1) I would have suggested to use 'default' myself, if the docstring of > `face-background' were not (IMHO) misleading: The paragraph describing > INHERIT (wrongly) suggested to me that giving a face would also > disregard the :inherit attribute. > > The same applies to the other helper functions (`face-foreground' etc). > The docstring of `face-attribute' is clearer ("further merged") about > the fact that inherit is still followed in the non-t case. > > I suggest to amend the last sentence in the inherit paragraph of all > these docstrings, from > > "If INHERIT is a face or a list of faces, then it is used to try to > resolve an unspecified ..." > > to > > "If INHERIT is a face or a list of faces, then it is used to try to > resolve a value that is still unspecified after considering the > `:inherit' attribute." I made a slightly different change (on the release branch), thanks. > 2) There are two more instances of `face-background' in > `pulse-reset-face' in the same file, one with a 't' INHERIT argument. I > haven't tried to understand the details, but I strongly suspect they > should get the 'default' argument as well. I didn't see any places where a nil value could make a problem, so I didn't change anything here. If you see any problems, please report them.