emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: OSX "new frame" mangles default face


From: YAMAMOTO Mitsuharu
Subject: Re: OSX "new frame" mangles default face
Date: Thu, 09 Aug 2007 16:52:13 +0900
User-agent: Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (Shijō) APEL/10.6 Emacs/22.1.50 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI)

>>>>> On Thu, 09 Aug 2007 00:12:35 -0700, address@hidden (Randal L. Schwartz) 
>>>>> said:

> As a data point, I just checked out EMACS_22_1 and recompiled, and
> the problem is *not* in there.  I get the original behavior that
> I've come to expect... new frame keeps same default face.

> So it's something introduced between 22.1 and CVS HEAD.  Hope that
> helps.

I could get the 22.1 behavior by undoing the following change:

2007-08-03  Daiki Ueno  <address@hidden>

        * faces.el (face-normalize-spec): New function.
        (frame-set-background-mode): Normalize face-spec before calling
        face-spec-match-p.

http://lists.gnu.org/archive/html/emacs-devel/2007-07/msg01682.html

Actually, the following usage of `face-normalize-spec' in
`frame-set-background-mode' looks strange.

        (dolist (face (face-list))
          (when (not (face-spec-match-p face
                                        (face-normalize-spec
                                         (face-user-default-spec face))
                                        (selected-frame)))
            (push face locally-modified-faces)))

For example,

  % emacs -Q -D

  (face-default-spec 'italic)
  => ((((supports :slant italic)) :slant italic) (((supports :underline t)) 
:underline t) (t :slant italic))

  (face-normalize-spec (face-default-spec 'italic))
  => nil

while

  (face-normalize-spec (face-spec-choose (face-default-spec 'italic)))
  => (:slant italic)

                                     YAMAMOTO Mitsuharu
                                address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]