GNU bug report logs - #41071
make-frame with internal-border face not working

Previous Next

Package: emacs;

Reported by: 王凯 <wangkai.kaiwk <at> bytedance.com>

Date: Mon, 4 May 2020 09:19:02 UTC

Severity: normal

Merged with 37832

Done: Alan Third <alan <at> idiocy.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 41071 in the body.
You can then email your comments to 41071 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#41071; Package emacs. (Mon, 04 May 2020 09:19:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to 王凯 <wangkai.kaiwk <at> bytedance.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 04 May 2020 09:19:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: 王凯 <wangkai.kaiwk <at> bytedance.com>
To: bug-gnu-emacs <at> gnu.org
Subject: make-frame with internal-border face not working
Date: Mon, 4 May 2020 15:30:09 +0800
Message-ID: <m1pnbkupld.fsf <at> gmail.com>
--text follows this line--

(defface test
  '((t (:inherit default :background "green")))
  "Face used by the ivy-posframe."
  :group 'ivy-posframe)

(set-face-background
'internal-border
(face-attribute 'test :background)
(make-frame `((internal-border-width . 100)
               (parent-frame . ,(window-frame)))))

(set-face-background
'internal-border
(face-attribute 'test :background)
(make-frame `((internal-border-width . 100))))

Eval code above in emacs, internal-border-width works but the
:background not.



In GNU Emacs 26.3 (build 1, x86_64-apple-darwin19.3.0, NS appkit-1894.30 Version 10.15.3 (Build 19D76))
of 2020-05-04 built on venus
Windowing system distributor 'Apple', version 10.3.1894
Recent messages:
Reformatted!
Indenting region...done
Already formatted
Mark set
Saving file /Users/kai/.dotfiles/emacs/.emacs.d/lisp/init-base.el...
Wrote /Users/kai/.dotfiles/emacs/.emacs.d/lisp/init-base.el
(No changes need to be saved) [4 times]
Quit
Switched to ‘scratch’ state
Undo branch point! [3 times]
next-line: End of buffer [8 times]
Configured using:
'configure --disable-dependency-tracking --disable-silent-rules
--enable-locallisppath=/usr/local/share/emacs/site-lisp
--infodir=/usr/local/Cellar/emacs-plus/26.3/share/info/emacs
--prefix=/usr/local/Cellar/emacs-plus/26.3 --with-xml2 --without-dbus
--with-gnutls --with-imagemagick --with-modules --with-rsvg --with-ns
--disable-ns-self-contained'

Configured features:
JPEG RSVG IMAGEMAGICK GLIB NOTIFY ACL GNUTLS LIBXML2 ZLIB
TOOLKIT_SCROLL_BARS NS MODULES THREADS LCMS2

Important settings:
  value of $LC_ALL: en_US.UTF-8
  value of $LANG: en_CN.UTF-8
  locale-coding-system: utf-8

Major mode: Lisp Interaction

Minor modes in effect:
  diredfl-global-mode: t
  diff-auto-refine-mode: t
  paredit-mode: t
  hl-todo-mode: t
  company-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  midnight-mode: t
  persp-mode: t
  electric-pair-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  auto-image-file-mode: t
  which-key-mode: t
  projectile-mode: t
  state-global-mode: t
  state-mode: t
  helm-descbinds-mode: t
  helm-mode: t
  async-bytecomp-package-mode: t
  helm-autoresize-mode: t
  helm--remap-mouse-mode: t
  global-page-break-lines-mode: t
  page-break-lines-mode: t
  shell-dirtrack-mode: t
  global-anzu-mode: t
  anzu-mode: t
  eval-sexp-fu-flash-mode: t
  savehist-mode: t
  save-place-mode: t
  super-save-mode: t
  global-auto-revert-mode: t
  delete-selection-mode: t
  show-paren-mode: t
  recentf-mode: t
  override-global-mode: t
  auto-compile-on-load-mode: t
  auto-compile-on-save-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-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
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/Users/kai/.emacs.d/elpa-26.3/cmake-mode-20190710.1319/cmake-mode hides /usr/local/share/emacs/site-lisp/cmake/cmake-mode
/Users/kai/.emacs.d/elpa-26.3/password-store-20200328.1214/password-store hides /usr/local/share/emacs/site-lisp/pass/password-store
/Users/kai/.emacs.d/elpa-26.3/auth-source-pass-20191126.1242/auth-source-pass hides /usr/local/Cellar/emacs-plus/26.3/share/emacs/26.3/lisp/auth-source-pass
~/.emacs.d/lisp/loaddefs hides /usr/local/Cellar/emacs-plus/26.3/share/emacs/26.3/lisp/loaddefs
/Users/kai/.emacs.d/elpa-26.3/let-alist-1.0.6/let-alist hides /usr/local/Cellar/emacs-plus/26.3/share/emacs/26.3/lisp/emacs-lisp/let-alist

Features:
(shadow sort bbdb-message mail-extr hippie-exp erc-hl-nicks color
erc-button erc-fill erc-stamp erc-goodies erc erc-backend erc-compat
emacsbug message rmc puny rfc822 mml mml-sec gnus-util rmail
rmail-loaddefs mailabbrev gmm-utils mailheader sendmail mail-utils
helm-command executable winner diredfl ls-lisp dired dired-loaddefs
init-helm-dwim helm-x-files helm-for-files helm-bookmark helm-adaptive
bookmark pp helm-external helm-net browse-url xml url url-proxy
url-privacy url-expand url-methods url-history url-cookie url-domsuf
url-util mailcap helm-ls-git vc-git diff-mode vc vc-dispatcher helm-ring
helm-elisp helm-eval edebug helm-info misearch multi-isearch format-all
language-id rect ido-completing-read+ memoize cus-edit cus-start
cus-load minibuf-eldef paredit hl-todo company-oddmuse company-keywords
company-gtags company-dabbrev-code company-dabbrev company-files
company-capf company-cmake company-xcode company-clang company-semantic
company-eclim company-template company-bbdb company-ctags find-file
company pcase undo-tree diff midnight perspective ido yasnippet-snippets
yasnippet elec-pair jka-compr server init-evil init-keybindings
init-other-tools vlf-setup init-emms init-news init-gnus init-email bbdb
bbdb-site timezone image-file init-eshell shell-pop term disp-table
ehelp init-documentation which-key init-translate init-flyspell
init-writting init-ide init-lsp init-web init-lang init-conf
init-functional init-rust init-go init-python virtualenvwrapper gud s
init-git init-projectile helm-projectile projectile ibuf-ext ibuffer
ibuffer-loaddefs init-state state init-flycheck flycheck json map
find-func dash init-yasnippet init-auto-complete init-helm
helm-descbinds helm-xref xref project init-helm-ui helm-mode helm-files
helm-buffers helm-occur helm-tags helm-locate helm-grep wgrep-helm wgrep
grep compile helm-regexp helm-utils helm-help helm-types helm-config
helm-easymenu async-bytecomp helm helm-source helm-multi-match helm-lib
async subr-x init-window windmove init-buffer init-dired init-appearance
default-dark-theme init-modeline page-break-lines init-editor init-tramp
docker-tramp tramp-cache tramp tramp-compat tramp-loaddefs trampver
shell pcomplete comint ansi-color ring parse-time format-spec anzu
thingatpt cl-extra eval-sexp-fu init-base init-preference savehist
saveplace super-save autorevert filenotify delsel paren recentf
tree-widget wid-edit epa-file epa derived epg dim no-littering bind-key
easy-mmode exec-path-from-shell auto-compile packed init-package
autoload quelpa mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047
rfc2045 mm-util ietf-drums mail-prsvr lisp-mnt help-fns radix-tree
help-mode finder-inf ede/auto tex-site fix-word gh-common marshal
eieio-compat slime-autoloads rx advice info package easymenu epg-config
url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs
eieio-loaddefs password-cache url-vars seq byte-opt gv bytecomp
byte-compile cconv init-utils global-variables edmacro kmacro
cl-loaddefs cl-lib time-date tooltip eldoc electric uniquify ediff-hook
vc-hooks lisp-float-type mwheel term/ns-win ns-win ucs-normalize
mule-util 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 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 kqueue cocoa ns lcms2 multi-tty make-network-process
emacs)

Memory information:
((conses 16 625219 428710)
(symbols 48 48673 10)
(miscs 40 113 633)
(strings 32 155960 70216)
(string-bytes 1 4564328)
(vectors 16 76895)
(vector-slots 8 1254498 288474)
(floats 8 344 650)
(intervals 56 1479 391)
(buffers 992 15))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#41071; Package emacs. (Mon, 04 May 2020 14:40:01 GMT) Full text and rfc822 format available.

Message #8 received at 41071 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: 王凯 <wangkai.kaiwk <at> bytedance.com>
Cc: 41071 <at> debbugs.gnu.org
Subject: Re: bug#41071: make-frame with internal-border face not working
Date: Mon, 04 May 2020 17:38:51 +0300
> From: 王凯 <wangkai.kaiwk <at> bytedance.com>
> Date: Mon, 4 May 2020 15:30:09 +0800
> 
> (defface test
>   '((t (:inherit default :background "green")))
>   "Face used by the ivy-posframe."
>   :group 'ivy-posframe)
> 
> (set-face-background
> 'internal-border
> (face-attribute 'test :background)
> (make-frame `((internal-border-width . 100)
>                (parent-frame . ,(window-frame)))))
> 
> (set-face-background
> 'internal-border
> (face-attribute 'test :background)
> (make-frame `((internal-border-width . 100))))
> 
> Eval code above in emacs, internal-border-width works but the
> :background not.

It does here, so I guess this could be macOS specific.




Merged 37832 41071. Request was from Alan Third <alan <at> idiocy.org> to control <at> debbugs.gnu.org. (Mon, 04 May 2020 21:31:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#41071; Package emacs. (Wed, 23 Sep 2020 13:04:02 GMT) Full text and rfc822 format available.

Message #13 received at 41071 <at> debbugs.gnu.org (full text, mbox):

From: Alan Third <alan <at> idiocy.org>
To: 王凯 <wangkai.kaiwk <at> bytedance.com>
Cc: 41071 <at> debbugs.gnu.org
Subject: Re: bug#41071: make-frame with internal-border face not working
Date: Wed, 23 Sep 2020 14:03:27 +0100
[Message part 1 (text/plain, inline)]
On Mon, May 04, 2020 at 03:30:09PM +0800, 王凯 wrote:
> 
> (defface test
>   '((t (:inherit default :background "green")))
>   "Face used by the ivy-posframe."
>   :group 'ivy-posframe)
> 
> (set-face-background
> 'internal-border
> (face-attribute 'test :background)
> (make-frame `((internal-border-width . 100)
>                (parent-frame . ,(window-frame)))))
> 
> (set-face-background
> 'internal-border
> (face-attribute 'test :background)
> (make-frame `((internal-border-width . 100))))
> 
> Eval code above in emacs, internal-border-width works but the
> :background not.

Patch against master attached. It appears to work correctly here, but
I'm slightly concerned it may not work so well on older versions of
macOS, but we'll probably just have to wait and see if anyone
complains.
-- 
Alan Third
[0001-Implement-internal-border-colors-on-NS-bug-41071.patch (text/plain, attachment)]

Reply sent to Alan Third <alan <at> idiocy.org>:
You have taken responsibility. (Fri, 25 Sep 2020 16:24:01 GMT) Full text and rfc822 format available.

Notification sent to 王凯 <wangkai.kaiwk <at> bytedance.com>:
bug acknowledged by developer. (Fri, 25 Sep 2020 16:24:01 GMT) Full text and rfc822 format available.

Message #18 received at 41071-done <at> debbugs.gnu.org (full text, mbox):

From: Alan Third <alan <at> idiocy.org>
To: 王凯 <wangkai.kaiwk <at> bytedance.com>,
 41071-done <at> debbugs.gnu.org
Subject: Re: bug#41071: make-frame with internal-border face not working
Date: Fri, 25 Sep 2020 17:23:05 +0100
On Wed, Sep 23, 2020 at 02:03:27PM +0100, Alan Third wrote:
> On Mon, May 04, 2020 at 03:30:09PM +0800, 王凯 wrote:
> > 
> > (defface test
> >   '((t (:inherit default :background "green")))
> >   "Face used by the ivy-posframe."
> >   :group 'ivy-posframe)
> > 
> > (set-face-background
> > 'internal-border
> > (face-attribute 'test :background)
> > (make-frame `((internal-border-width . 100)
> >                (parent-frame . ,(window-frame)))))
> > 
> > (set-face-background
> > 'internal-border
> > (face-attribute 'test :background)
> > (make-frame `((internal-border-width . 100))))
> > 
> > Eval code above in emacs, internal-border-width works but the
> > :background not.
> 
> Patch against master attached. It appears to work correctly here, but
> I'm slightly concerned it may not work so well on older versions of
> macOS, but we'll probably just have to wait and see if anyone
> complains.

I've pushed the change to master and therefore am closing this bug
report.
-- 
Alan Third




Reply sent to Alan Third <alan <at> idiocy.org>:
You have taken responsibility. (Fri, 25 Sep 2020 16:24:01 GMT) Full text and rfc822 format available.

Notification sent to Andrea Cardaci <cyrus.and <at> gmail.com>:
bug acknowledged by developer. (Fri, 25 Sep 2020 16:24:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 24 Oct 2020 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 175 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.