]> git.eshelyaron.com Git - emacs.git/commitdiff
Fixing user-spec for fonts instead of using name.
authorJan Djärv <jan.h.d@swipnet.se>
Wed, 6 Jan 2010 16:03:26 +0000 (17:03 +0100)
committerJan Djärv <jan.h.d@swipnet.se>
Wed, 6 Jan 2010 16:03:26 +0000 (17:03 +0100)
lisp/font-setting.el
src/font.c

index a0446e55e507de1008bf8016107bde57f95cae2c..23c169f36fe2065e2c0f76759830fa9f5c436ee7 100644 (file)
@@ -57,7 +57,7 @@ current form for the frame (i.e. hinting or somesuch changed)."
        (if (display-graphic-p f)
            (let* ((frame-font
                    (or (font-get (face-attribute 'default :font f
-                                                 'default) :name)
+                                                 'default) :user-spec)
                        (frame-parameter f 'font-parameter)))
                   (font-to-set
                    (if set-font new-font
index 3a8f73a6b032ef5858035899a7854cb6b342cd50..ec4cb874b52d91a70f2937c665badd4ac961cdec 100644 (file)
@@ -143,6 +143,8 @@ Lisp_Object Qc, Qm, Qp, Qd;
    characters; used in xfont.c and ftfont.c.  */
 Lisp_Object Qja, Qko;
 
+Lisp_Object QCuser_spec;
+
 Lisp_Object Vfont_encoding_alist;
 
 /* Alist of font registry symbol and the corresponding charsets
@@ -3161,6 +3163,7 @@ font_spec_from_name (font_name)
   if (font_parse_name ((char *) SDATA (font_name), spec) == -1)
     return Qnil;
   font_put_extra (spec, QCname, font_name);
+  font_put_extra (spec, QCuser_spec, font_name);
   return spec;
 }
 
@@ -3174,14 +3177,13 @@ font_clear_prop (attrs, prop)
 
   if (! FONTP (font))
     return;
-#if 0
+
   if (! NILP (Ffont_get (font, QCname)))
     {
       font = Fcopy_font_spec (font);
       font_put_extra (font, QCname, Qnil);
     }
 
-#endif
   if (NILP (AREF (font, prop))
       && prop != FONT_FAMILY_INDEX
       && prop != FONT_FOUNDRY_INDEX
@@ -3539,8 +3541,8 @@ font_load_for_lface (f, attrs, spec)
   entity = font_open_for_lface (f, entity, attrs, spec);
   if (!NILP (entity))
     {
-      name = Ffont_get (spec, QCname);
-      if (STRINGP (name)) font_put_extra (entity, QCname, name);
+      name = Ffont_get (spec, QCuser_spec);
+      if (STRINGP (name)) font_put_extra (entity, QCuser_spec, name);
     }
   return entity;
 }
@@ -3614,7 +3616,7 @@ font_open_by_name (f, name)
   ret = font_open_by_spec (f, spec);
   /* Do not loose name originally put in.  */
   if (!NILP (ret))
-    font_put_extra (ret, QCname, args[1]);
+    font_put_extra (ret, QCuser_spec, args[1]);
 
   return ret;
 }
@@ -5269,6 +5271,8 @@ syms_of_font ()
   DEFSYM (Qja, "ja");
   DEFSYM (Qko, "ko");
 
+  DEFSYM (QCuser_spec, "user-spec");
+
   staticpro (&null_vector);
   null_vector = Fmake_vector (make_number (0), Qnil);