* bug#40639: 26.3; Child frame border color not rendered when child frame has no minibuffer
@ 2020-04-15 10:10 Alexander Miller
2020-04-15 17:20 ` martin rudalics
0 siblings, 1 reply; 5+ messages in thread
From: Alexander Miller @ 2020-04-15 10:10 UTC (permalink / raw)
To: 40639
Starting from emacs -q run this:
(set-face-background 'internal-border "red")
(select-window
(display-buffer-in-child-frame
(get-buffer-create "*scratch*")
'((child-frame-parameters
.
((left . 100)
(top . 100)
(height . 10)
(width . 100)
(minibuffer . nil)
(internal-border-width . 300))))))
The child frame will pop up and its large border covers a large parts of
the buffer, but it is the same color as the background, not the red we
have set above. The only way I found to fix the color is to click on the
child frame. Calling the likes of select-frame, x-focus-frame,
select-frame-set-input-focus does not help. When the minibuffer
parameter is set to t the border is drawn as expected.
If the call to select-window is left out the border will have the wrong
color regardless of minibuffer setting. Clicking the child frame will
likewise change it to red.
It could be that this is related to my unorthodox wm setup: I am running
xfce with i3wm replacing xfwm4.
In GNU Emacs 26.3 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.10)
of 2019-08-29 built on juergen
Windowing system distributor 'The X.Org Foundation', version 11.0.12007000
Recent messages:
Config loaded in 0.8095128536224365s
For information about GNU Emacs and the GNU system, type C-h C-a.
Turn on helm-projectile key bindings
Configured using:
'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
--localstatedir=/var --with-x-toolkit=gtk3 --with-xft --with-modules
'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fno-plt'
CPPFLAGS=-D_FORTIFY_SOURCE=2
LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now'
Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD LCMS2
Important settings:
value of $LC_COLLATE: en_GB.UTF-8
value of $LANG: en_GB.UTF-8
locale-coding-system: utf-8-unix
Major mode: Lisp Interaction
Minor modes in effect:
treemacs-icons-dired-mode: t
treemacs-filewatch-mode: t
treemacs-follow-mode: t
treemacs-git-mode: deferred
treemacs-fringe-indicator-mode: t
helm-mode: t
async-bytecomp-package-mode: t
helm--remap-mouse-mode: t
projectile-mode: t
global-company-mode: t
company-mode: t
global-evil-vimish-fold-mode: t
evil-vimish-fold-mode: t
vimish-fold-mode: t
show-smartparens-global-mode: t
show-smartparens-mode: t
smartparens-global-mode: t
smartparens-mode: t
rainbow-delimiters-mode: t
rainbow-mode: t
display-line-numbers-mode: t
framey-mode: t
purpose-mode: t
shackle-mode: t
winum-mode: t
eyebrowse-mode: t
global-subword-mode: t
subword-mode: t
global-evil-surround-mode: t
evil-surround-mode: t
evil-lion-mode: t
evil-goggles-mode: t
global-undo-tree-mode: t
undo-tree-mode: t
shell-dirtrack-mode: t
evil-mode: t
evil-local-mode: t
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
prettify-symbols-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Load-path shadows:
/usr/share/emacs/26.3/lisp/emacs-lisp/let-alist hides
/home/a/.emacs.d/straight/build/let-alist/let-alist
/usr/share/emacs/site-lisp/mu4e/mu4e-vars hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-vars
/usr/share/emacs/site-lisp/mu4e/mu4e-utils hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-utils
/usr/share/emacs/site-lisp/mu4e/mu4e-context hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-context
/usr/share/emacs/site-lisp/mu4e/mu4e-message hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-message
/usr/share/emacs/site-lisp/mu4e/mu4e-draft hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-draft
/usr/share/emacs/site-lisp/mu4e/mu4e-main hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-main
/usr/share/emacs/site-lisp/mu4e/mu4e-headers hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-headers
/usr/share/emacs/site-lisp/mu4e/mu4e-compose hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-compose
/usr/share/emacs/site-lisp/mu4e/mu4e-speedbar hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-speedbar
/usr/share/emacs/site-lisp/mu4e/mu4e hides
/home/a/.emacs.d/straight/build/mu4e/mu4e
/usr/share/emacs/site-lisp/mu4e/mu4e-view hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-view
/usr/share/emacs/site-lisp/mu4e/mu4e-lists hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-lists
/usr/share/emacs/site-lisp/mu4e/mu4e-proc hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-proc
/usr/share/emacs/site-lisp/mu4e/mu4e-actions hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-actions
/usr/share/emacs/site-lisp/mu4e/mu4e-mark hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-mark
/usr/share/emacs/site-lisp/mu4e/mu4e-contrib hides
/home/a/.emacs.d/straight/build/mu4e/mu4e-contrib
/usr/share/emacs/site-lisp/mu4e/org-mu4e hides
/home/a/.emacs.d/straight/build/mu4e/org-mu4e
/usr/share/emacs/26.3/lisp/org/org-crypt hides
/home/a/.emacs.d/straight/build/org/org-crypt
/usr/share/emacs/26.3/lisp/org/ob-screen hides
/home/a/.emacs.d/straight/build/org/ob-screen
/usr/share/emacs/26.3/lisp/org/ob-sass hides
/home/a/.emacs.d/straight/build/org/ob-sass
/usr/share/emacs/26.3/lisp/org/org-id hides
/home/a/.emacs.d/straight/build/org/org-id
/usr/share/emacs/26.3/lisp/org/ob-shell hides
/home/a/.emacs.d/straight/build/org/ob-shell
/usr/share/emacs/26.3/lisp/org/ob-ruby hides
/home/a/.emacs.d/straight/build/org/ob-ruby
/usr/share/emacs/26.3/lisp/org/ob-R hides
/home/a/.emacs.d/straight/build/org/ob-R
/usr/share/emacs/26.3/lisp/org/org-inlinetask hides
/home/a/.emacs.d/straight/build/org/org-inlinetask
/usr/share/emacs/26.3/lisp/org/org-table hides
/home/a/.emacs.d/straight/build/org/org-table
/usr/share/emacs/26.3/lisp/org/ob-dot hides
/home/a/.emacs.d/straight/build/org/ob-dot
/usr/share/emacs/26.3/lisp/org/ox-texinfo hides
/home/a/.emacs.d/straight/build/org/ox-texinfo
/usr/share/emacs/26.3/lisp/org/ob-css hides
/home/a/.emacs.d/straight/build/org/ob-css
/usr/share/emacs/26.3/lisp/org/ob-asymptote hides
/home/a/.emacs.d/straight/build/org/ob-asymptote
/usr/share/emacs/26.3/lisp/org/ob-vala hides
/home/a/.emacs.d/straight/build/org/ob-vala
/usr/share/emacs/26.3/lisp/org/org-indent hides
/home/a/.emacs.d/straight/build/org/org-indent
/usr/share/emacs/26.3/lisp/org/ob-C hides
/home/a/.emacs.d/straight/build/org/ob-C
/usr/share/emacs/26.3/lisp/org/org-duration hides
/home/a/.emacs.d/straight/build/org/org-duration
/usr/share/emacs/26.3/lisp/org/ox-org hides
/home/a/.emacs.d/straight/build/org/ox-org
/usr/share/emacs/26.3/lisp/org/ob-eval hides
/home/a/.emacs.d/straight/build/org/ob-eval
/usr/share/emacs/26.3/lisp/org/ob-coq hides
/home/a/.emacs.d/straight/build/org/ob-coq
/usr/share/emacs/26.3/lisp/org/org-capture hides
/home/a/.emacs.d/straight/build/org/org-capture
/usr/share/emacs/26.3/lisp/org/org-clock hides
/home/a/.emacs.d/straight/build/org/org-clock
/usr/share/emacs/26.3/lisp/org/org-mobile hides
/home/a/.emacs.d/straight/build/org/org-mobile
/usr/share/emacs/26.3/lisp/org/ob-calc hides
/home/a/.emacs.d/straight/build/org/ob-calc
/usr/share/emacs/26.3/lisp/org/ob-processing hides
/home/a/.emacs.d/straight/build/org/ob-processing
/usr/share/emacs/26.3/lisp/org/org-pcomplete hides
/home/a/.emacs.d/straight/build/org/org-pcomplete
/usr/share/emacs/26.3/lisp/org/org-macro hides
/home/a/.emacs.d/straight/build/org/org-macro
/usr/share/emacs/26.3/lisp/org/org-footnote hides
/home/a/.emacs.d/straight/build/org/org-footnote
/usr/share/emacs/26.3/lisp/org/ob-sed hides
/home/a/.emacs.d/straight/build/org/ob-sed
/usr/share/emacs/26.3/lisp/org/org-datetree hides
/home/a/.emacs.d/straight/build/org/org-datetree
/usr/share/emacs/26.3/lisp/org/org-element hides
/home/a/.emacs.d/straight/build/org/org-element
/usr/share/emacs/26.3/lisp/org/ob-ebnf hides
/home/a/.emacs.d/straight/build/org/ob-ebnf
/usr/share/emacs/26.3/lisp/org/ox-beamer hides
/home/a/.emacs.d/straight/build/org/ox-beamer
/usr/share/emacs/26.3/lisp/org/ob-table hides
/home/a/.emacs.d/straight/build/org/ob-table
/usr/share/emacs/26.3/lisp/org/ob-mscgen hides
/home/a/.emacs.d/straight/build/org/ob-mscgen
/usr/share/emacs/26.3/lisp/org/ob-lisp hides
/home/a/.emacs.d/straight/build/org/ob-lisp
/usr/share/emacs/26.3/lisp/org/ob-scheme hides
/home/a/.emacs.d/straight/build/org/ob-scheme
/usr/share/emacs/26.3/lisp/org/ob-ditaa hides
/home/a/.emacs.d/straight/build/org/ob-ditaa
/usr/share/emacs/26.3/lisp/org/ob-ref hides
/home/a/.emacs.d/straight/build/org/ob-ref
/usr/share/emacs/26.3/lisp/org/ox-icalendar hides
/home/a/.emacs.d/straight/build/org/ox-icalendar
/usr/share/emacs/26.3/lisp/org/ob-forth hides
/home/a/.emacs.d/straight/build/org/ob-forth
/usr/share/emacs/26.3/lisp/org/org-src hides
/home/a/.emacs.d/straight/build/org/org-src
/usr/share/emacs/26.3/lisp/org/ox-latex hides
/home/a/.emacs.d/straight/build/org/ox-latex
/usr/share/emacs/26.3/lisp/org/ob-awk hides
/home/a/.emacs.d/straight/build/org/ob-awk
/usr/share/emacs/26.3/lisp/org/ob-J hides
/home/a/.emacs.d/straight/build/org/ob-J
/usr/share/emacs/26.3/lisp/org/org-list hides
/home/a/.emacs.d/straight/build/org/org-list
/usr/share/emacs/26.3/lisp/org/ob-latex hides
/home/a/.emacs.d/straight/build/org/ob-latex
/usr/share/emacs/26.3/lisp/org/org hides
/home/a/.emacs.d/straight/build/org/org
/usr/share/emacs/26.3/lisp/org/ox-man hides
/home/a/.emacs.d/straight/build/org/ox-man
/usr/share/emacs/26.3/lisp/org/ob-comint hides
/home/a/.emacs.d/straight/build/org/ob-comint
/usr/share/emacs/26.3/lisp/org/ob-groovy hides
/home/a/.emacs.d/straight/build/org/ob-groovy
/usr/share/emacs/26.3/lisp/org/ob-clojure hides
/home/a/.emacs.d/straight/build/org/ob-clojure
/usr/share/emacs/26.3/lisp/org/ob-picolisp hides
/home/a/.emacs.d/straight/build/org/ob-picolisp
/usr/share/emacs/26.3/lisp/org/ob-sql hides
/home/a/.emacs.d/straight/build/org/ob-sql
/usr/share/emacs/26.3/lisp/org/ox hides
/home/a/.emacs.d/straight/build/org/ox
/usr/share/emacs/26.3/lisp/org/ob-python hides
/home/a/.emacs.d/straight/build/org/ob-python
/usr/share/emacs/26.3/lisp/org/org-entities hides
/home/a/.emacs.d/straight/build/org/org-entities
/usr/share/emacs/26.3/lisp/org/ob-exp hides
/home/a/.emacs.d/straight/build/org/ob-exp
/usr/share/emacs/26.3/lisp/org/org-macs hides
/home/a/.emacs.d/straight/build/org/org-macs
/usr/share/emacs/26.3/lisp/org/ob-tangle hides
/home/a/.emacs.d/straight/build/org/ob-tangle
/usr/share/emacs/26.3/lisp/org/org-mouse hides
/home/a/.emacs.d/straight/build/org/org-mouse
/usr/share/emacs/26.3/lisp/org/ob-core hides
/home/a/.emacs.d/straight/build/org/ob-core
/usr/share/emacs/26.3/lisp/org/ob-gnuplot hides
/home/a/.emacs.d/straight/build/org/ob-gnuplot
/usr/share/emacs/26.3/lisp/org/org-compat hides
/home/a/.emacs.d/straight/build/org/org-compat
/usr/share/emacs/26.3/lisp/org/ob-emacs-lisp hides
/home/a/.emacs.d/straight/build/org/ob-emacs-lisp
/usr/share/emacs/26.3/lisp/org/ob-makefile hides
/home/a/.emacs.d/straight/build/org/ob-makefile
/usr/share/emacs/26.3/lisp/org/org-ctags hides
/home/a/.emacs.d/straight/build/org/org-ctags
/usr/share/emacs/26.3/lisp/org/org-lint hides
/home/a/.emacs.d/straight/build/org/org-lint
/usr/share/emacs/26.3/lisp/org/org-habit hides
/home/a/.emacs.d/straight/build/org/org-habit
/usr/share/emacs/26.3/lisp/org/ob-octave hides
/home/a/.emacs.d/straight/build/org/ob-octave
/usr/share/emacs/26.3/lisp/org/ob-perl hides
/home/a/.emacs.d/straight/build/org/ob-perl
/usr/share/emacs/26.3/lisp/org/ob-plantuml hides
/home/a/.emacs.d/straight/build/org/ob-plantuml
/usr/share/emacs/26.3/lisp/org/ob-org hides
/home/a/.emacs.d/straight/build/org/ob-org
/usr/share/emacs/26.3/lisp/org/ox-ascii hides
/home/a/.emacs.d/straight/build/org/ox-ascii
/usr/share/emacs/26.3/lisp/org/org-protocol hides
/home/a/.emacs.d/straight/build/org/org-protocol
/usr/share/emacs/26.3/lisp/org/ob-lob hides
/home/a/.emacs.d/straight/build/org/ob-lob
/usr/share/emacs/26.3/lisp/org/ob-shen hides
/home/a/.emacs.d/straight/build/org/ob-shen
/usr/share/emacs/26.3/lisp/org/ob-io hides
/home/a/.emacs.d/straight/build/org/ob-io
/usr/share/emacs/26.3/lisp/org/ob-haskell hides
/home/a/.emacs.d/straight/build/org/ob-haskell
/usr/share/emacs/26.3/lisp/org/ob-js hides
/home/a/.emacs.d/straight/build/org/ob-js
/usr/share/emacs/26.3/lisp/org/org-loaddefs hides
/home/a/.emacs.d/straight/build/org/org-loaddefs
/usr/share/emacs/26.3/lisp/org/ox-odt hides
/home/a/.emacs.d/straight/build/org/ox-odt
/usr/share/emacs/26.3/lisp/org/org-plot hides
/home/a/.emacs.d/straight/build/org/org-plot
/usr/share/emacs/26.3/lisp/org/ob hides
/home/a/.emacs.d/straight/build/org/ob
/usr/share/emacs/26.3/lisp/org/org-colview hides
/home/a/.emacs.d/straight/build/org/org-colview
/usr/share/emacs/26.3/lisp/org/ob-maxima hides
/home/a/.emacs.d/straight/build/org/ob-maxima
/usr/share/emacs/26.3/lisp/org/ob-ocaml hides
/home/a/.emacs.d/straight/build/org/ob-ocaml
/usr/share/emacs/26.3/lisp/org/ox-html hides
/home/a/.emacs.d/straight/build/org/ox-html
/usr/share/emacs/26.3/lisp/org/ob-fortran hides
/home/a/.emacs.d/straight/build/org/ob-fortran
/usr/share/emacs/26.3/lisp/org/ob-lilypond hides
/home/a/.emacs.d/straight/build/org/ob-lilypond
/usr/share/emacs/26.3/lisp/org/ob-abc hides
/home/a/.emacs.d/straight/build/org/ob-abc
/usr/share/emacs/26.3/lisp/org/ox-md hides
/home/a/.emacs.d/straight/build/org/ox-md
/usr/share/emacs/26.3/lisp/org/org-feed hides
/home/a/.emacs.d/straight/build/org/org-feed
/usr/share/emacs/26.3/lisp/org/ob-sqlite hides
/home/a/.emacs.d/straight/build/org/ob-sqlite
/usr/share/emacs/26.3/lisp/org/org-install hides
/home/a/.emacs.d/straight/build/org/org-install
/usr/share/emacs/26.3/lisp/org/ob-lua hides
/home/a/.emacs.d/straight/build/org/ob-lua
/usr/share/emacs/26.3/lisp/org/ob-java hides
/home/a/.emacs.d/straight/build/org/ob-java
/usr/share/emacs/26.3/lisp/org/ob-hledger hides
/home/a/.emacs.d/straight/build/org/ob-hledger
/usr/share/emacs/26.3/lisp/org/ox-publish hides
/home/a/.emacs.d/straight/build/org/ox-publish
/usr/share/emacs/26.3/lisp/org/org-attach hides
/home/a/.emacs.d/straight/build/org/org-attach
/usr/share/emacs/26.3/lisp/org/org-agenda hides
/home/a/.emacs.d/straight/build/org/org-agenda
/usr/share/emacs/26.3/lisp/org/ob-ledger hides
/home/a/.emacs.d/straight/build/org/ob-ledger
/usr/share/emacs/26.3/lisp/org/ob-stan hides
/home/a/.emacs.d/straight/build/org/ob-stan
/usr/share/emacs/26.3/lisp/org/ob-matlab hides
/home/a/.emacs.d/straight/build/org/ob-matlab
/usr/share/emacs/26.3/lisp/org/org-faces hides
/home/a/.emacs.d/straight/build/org/org-faces
/usr/share/emacs/26.3/lisp/org/org-archive hides
/home/a/.emacs.d/straight/build/org/org-archive
/usr/share/emacs/26.3/lisp/org/org-timer hides
/home/a/.emacs.d/straight/build/org/org-timer
Features:
(shadow sort mail-extr emacsbug message rmc puny treemacs-icons-dired
treemacs-projectile treemacs-evil treemacs treemacs-compatibility
treemacs-mode treemacs-interface treemacs-extensions
treemacs-persistence treemacs-mouse-interface treemacs-tag-follow-mode
treemacs-filewatch-mode treemacs-tags imenu xref project filenotify
treemacs-follow-mode treemacs-rendering treemacs-async
treemacs-workspaces treemacs-dom treemacs-visuals
treemacs-fringe-indicator treemacs-scope treemacs-faces treemacs-icons
treemacs-themes treemacs-core-utils pfuture ace-window avy hl-line
treemacs-macros treemacs-customization dired+ image-dired image-mode
image-file dired-x dired-aux dired dired-loaddefs rfc822 mml mml-sec
password-cache epa derived epg epg-config gnus-util rmail rmail-loaddefs
mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils
mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr
mail-utils winner helm-command helm-elisp helm-eval edebug helm-info
info helm-mode helm-projectile helm-files helm-tags helm-buffers
helm-occur helm-grep helm-regexp helm-utils helm-locate helm-help
helm-types framey-helm helm-config async-bytecomp helm easy-mmode
helm-source helm-multi-match helm-lib async projectile grep compile
ibuf-ext ibuffer ibuffer-loaddefs seq company-keywords
company-dabbrev-code company-dabbrev company-yasnippet company-files
company-capf company server evil-vimish-fold vimish-fold
smartparens-config smartparens-text paren smartparens rainbow-delimiters
rainbow-mode xterm-color color display-line-numbers elec-pair hydra lv
morning-star-theme pcase doom-modeline doom-modeline-segments
doom-modeline-env doom-modeline-core shrink-path rx f all-the-icons
all-the-icons-faces data-material data-weathericons data-octicons
data-fileicons data-faicons data-alltheicons memoize subr-x framey
inline ht s window-purpose window-purpose-fixes
window-purpose-prefix-overload window-purpose-switch let-alist
window-purpose-layout window-purpose-core window-purpose-configuration
eieio-compat eieio byte-opt bytecomp byte-compile cconv
window-purpose-utils shackle trace cl-extra help-mode winum eyebrowse
format-spec cap-words superword subword evil-surround evil-lion
evil-goggles pulse cl-seq evil evil-keybindings evil-integration
undo-tree diff evil-maps evil-commands reveal flyspell ispell evil-jumps
evil-command-window evil-types evil-search evil-ex shell pcomplete
comint ansi-color evil-macros evil-repeat evil-states evil-core advice
evil-common windmove thingatpt rect evil-digraphs evil-vars ring edmacro
kmacro dash elfeed-org-autoloads elfeed-autoloads let-alist-autoloads
evil-nerd-commenter-autoloads window-purpose-autoloads eieio-core
cl-macs gv eieio-loaddefs cl-loaddefs cl-lib vimish-fold-autoloads
pkg-info-autoloads annalist-autoloads evil-goggles-autoloads
ghub-autoloads loop-autoloads markdown-mode-autoloads evil-autoloads
evil-collection-autoloads german-holidays-autoloads
pretty-hydra-autoloads elisp-refs-autoloads lsp-mode-autoloads
all-the-icons-autoloads avy-autoloads lsp-origami-autoloads ts-autoloads
hydra-autoloads macrostep-autoloads memoize-autoloads straight-autoloads
expand-region-autoloads origami-autoloads company-autoloads
dash-autoloads evil-magit-autoloads ivy-posframe-autoloads
treepy-autoloads rainbow-delimiters-autoloads fish-mode-autoloads
writeroom-mode-autoloads eros-autoloads visual-fill-column-autoloads
mu4e-autoloads ht-autoloads helpful-autoloads org-bullets-autoloads
shrink-path-autoloads pos-tip-autoloads projectile-autoloads
with-editor-autoloads lv-autoloads posframe-autoloads ivy-autoloads
spinner-autoloads rainbow-mode-autoloads evil-exchange-autoloads
git-commit-autoloads org-autoloads evil-surround-autoloads
ace-window-autoloads evil-vimish-fold-autoloads dired+-autoloads
popup-autoloads imenu-list-autoloads org-super-agenda-autoloads
wttrin-autoloads evil-lion-autoloads helm-org-autoloads helm-easymenu
easymenu framey-autoloads emacsql-autoloads anzu-autoloads
emacsql-sqlite-autoloads vterm-autoloads pfuture-autoloads
goto-chg-autoloads shackle-autoloads xterm-color-autoloads
transient-autoloads epl-autoloads helm-core-autoloads helm-autoloads
eyebrowse-autoloads swiper-autoloads async-autoloads
dash-functional-autoloads evil-ledger-autoloads
i3wm-config-mode-autoloads s-autoloads magit-autoloads forge-autoloads
helm-ag-autoloads doom-modeline-autoloads smartparens-autoloads
yasnippet-autoloads helm-projectile-autoloads winum-autoloads
closql-autoloads company-shell-autoloads f-autoloads undo-tree-autoloads
morning-star-autoloads ledger-mode-autoloads company-quickhelp-autoloads
time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode elisp-mode lisp-mode prog-mode register page menu-bar
rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core term/tty-colors frame 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 minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)
Memory information:
((conses 16 417757 596956)
(symbols 48 41576 333)
(miscs 40 98 313)
(strings 32 93022 40805)
(string-bytes 1 2907548)
(vectors 16 40103)
(vector-slots 8 773009 329390)
(floats 8 731 747)
(intervals 56 704 365)
(buffers 992 12))
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#40639: 26.3; Child frame border color not rendered when child frame has no minibuffer
2020-04-15 10:10 bug#40639: 26.3; Child frame border color not rendered when child frame has no minibuffer Alexander Miller
@ 2020-04-15 17:20 ` martin rudalics
2020-04-15 17:32 ` Eli Zaretskii
0 siblings, 1 reply; 5+ messages in thread
From: martin rudalics @ 2020-04-15 17:20 UTC (permalink / raw)
To: Alexander Miller, 40639
> Starting from emacs -q run this:
>
> (set-face-background 'internal-border "red")
> (select-window
> (display-buffer-in-child-frame
> (get-buffer-create "*scratch*")
> '((child-frame-parameters
> .
> ((left . 100)
> (top . 100)
> (height . 10)
> (width . 100)
> (minibuffer . nil)
> (internal-border-width . 300))))))
>
> The child frame will pop up and its large border covers a large parts of
> the buffer, but it is the same color as the background, not the red we
> have set above. The only way I found to fix the color is to click on the
> child frame. Calling the likes of select-frame, x-focus-frame,
> select-frame-set-input-focus does not help. When the minibuffer
> parameter is set to t the border is drawn as expected.
>
> If the call to select-window is left out the border will have the wrong
> color regardless of minibuffer setting. Clicking the child frame will
> likewise change it to red.
>
> It could be that this is related to my unorthodox wm setup: I am running
> xfce with i3wm replacing xfwm4.
I'm aware of this bug and see it frequently when debugging child frame
issues. Unfortunately, I don't know what's causing it because I have no
idea how face remapping is supposed to work internally. What happens is
that when x_clear_under_internal_border runs this part
int face_id =
!NILP (Vface_remapping_alist)
? lookup_basic_face (NULL, f, INTERNAL_BORDER_FACE_ID)
: INTERNAL_BORDER_FACE_ID;
struct face *face = FACE_FROM_ID_OR_NULL (f, face_id);
block_input ();
if (face)
{
unsigned long color = face->background;
the value of color for a new normal frame is for a few calls white but
switches to red before the frame appears on the display. A child frame
usually must be explicitly focused before its border becomes red (I
don't necessarily need the mouse for that purpose, C-x 5 o works too).
Maybe our experts in face remapping have an idea.
martin
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#40639: 26.3; Child frame border color not rendered when child frame has no minibuffer
2020-04-15 17:20 ` martin rudalics
@ 2020-04-15 17:32 ` Eli Zaretskii
2020-04-16 8:31 ` martin rudalics
0 siblings, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2020-04-15 17:32 UTC (permalink / raw)
To: martin rudalics; +Cc: alexanderm, 40639
> From: martin rudalics <rudalics@gmx.at>
> Date: Wed, 15 Apr 2020 19:20:45 +0200
>
> int face_id =
> !NILP (Vface_remapping_alist)
> ? lookup_basic_face (NULL, f, INTERNAL_BORDER_FACE_ID)
> : INTERNAL_BORDER_FACE_ID;
> struct face *face = FACE_FROM_ID_OR_NULL (f, face_id);
>
> block_input ();
>
> if (face)
> {
> unsigned long color = face->background;
>
> the value of color for a new normal frame is for a few calls white but
> switches to red before the frame appears on the display. A child frame
> usually must be explicitly focused before its border becomes red (I
> don't necessarily need the mouse for that purpose, C-x 5 o works too).
>
> Maybe our experts in face remapping have an idea.
I don't think face mapping is directly involved, this sounds like some
X event causes the change.
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#40639: 26.3; Child frame border color not rendered when child frame has no minibuffer
2020-04-15 17:32 ` Eli Zaretskii
@ 2020-04-16 8:31 ` martin rudalics
2020-04-18 8:51 ` martin rudalics
0 siblings, 1 reply; 5+ messages in thread
From: martin rudalics @ 2020-04-16 8:31 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: alexanderm, 40639
> I don't think face mapping is directly involved, this sounds like some
> X event causes the change.
You are probably right. Digging into this a bit further I found that
calling gui_consider_frame_title for child frames fixes it. So it looks
like a combination of explicitly selecting a frame via Fselect_window of
its selected window and subsequently calling init_iterator would orderly
rebuild the face cache of that frame. A wild guess, I know ...
martin
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#40639: 26.3; Child frame border color not rendered when child frame has no minibuffer
2020-04-16 8:31 ` martin rudalics
@ 2020-04-18 8:51 ` martin rudalics
0 siblings, 0 replies; 5+ messages in thread
From: martin rudalics @ 2020-04-18 8:51 UTC (permalink / raw)
To: 40639; +Cc: alexanderm
tags 40639 fixed
close 40639 28.1
quit
> Digging into this a bit further I found that
> calling gui_consider_frame_title for child frames fixes it.
Hopefully fixed now on master by calling gui_consider_frame_title for
child frames too.
IMHO this is a bug when refreshing the face cache. We postpone that for
a new frame until we call gui_consider_frame_title for that frame.
Until then, any earlier attempts to free realized faces are inhibited by
inhibit_free_realized_faces. It's easy to see the effect with Emacs'
native tooltip frames by evaluating with emacs -Q
(progn
(setq x-gtk-use-system-tooltips nil)
(set-face-background 'internal-border "red"))
and moving the mouse to some text on the mode line. The red border will
show up only after I clicked at least once into the containing frame.
If the bug affects the internal border only, it's minor only. I don't
know if it may affect more important faces as well.
Closing this bug, martin
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-04-18 8:51 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-15 10:10 bug#40639: 26.3; Child frame border color not rendered when child frame has no minibuffer Alexander Miller
2020-04-15 17:20 ` martin rudalics
2020-04-15 17:32 ` Eli Zaretskii
2020-04-16 8:31 ` martin rudalics
2020-04-18 8:51 ` martin rudalics
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).