aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKaroly Lorentey2005-11-23 01:35:21 +0000
committerKaroly Lorentey2005-11-23 01:35:21 +0000
commit950bed4bb96d2a580818bdaab64a164c7c9a1c1e (patch)
tree131973e52125af75637cd0417215ba3c5b7d1de4 /src
parent59e085e04d44b0331620b55a64eb94bf99cf81b1 (diff)
parent5fdd4cf709ffb9c92cb565a60117afbd6fc43aa5 (diff)
downloademacs-950bed4bb96d2a580818bdaab64a164c7c9a1c1e.tar.gz
emacs-950bed4bb96d2a580818bdaab64a164c7c9a1c1e.zip
Merged from miles@gnu.org--gnu-2005 (patch 656-658)
Patches applied: * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-656 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-657 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-658 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-444
Diffstat (limited to 'src')
-rw-r--r--src/.gdbinit8
-rw-r--r--src/ChangeLog43
-rw-r--r--src/charset.c2
-rw-r--r--src/image.c2
-rw-r--r--src/keymap.c3
-rw-r--r--src/lisp.h2
-rw-r--r--src/macterm.c18
-rw-r--r--src/xfaces.c23
8 files changed, 89 insertions, 12 deletions
diff --git a/src/.gdbinit b/src/.gdbinit
index 3f7755a3d8e..7af2f7d5721 100644
--- a/src/.gdbinit
+++ b/src/.gdbinit
@@ -1,4 +1,4 @@
1# Copyright (C) 1992, 93, 94, 95, 96, 97, 1998, 2000, 01, 2004 1# Copyright (C) 1992, 93, 94, 95, 96, 97, 1998, 2000, 01, 2004, 2005
2# Free Software Foundation, Inc. 2# Free Software Foundation, Inc.
3# 3#
4# This file is part of GNU Emacs. 4# This file is part of GNU Emacs.
@@ -628,7 +628,7 @@ Print the contents of $, assuming it is an Emacs Lisp cons.
628end 628end
629 629
630define nextcons 630define nextcons
631 p $.cdr 631 p $.u.cdr
632 xcons 632 xcons
633end 633end
634document nextcons 634document nextcons
@@ -648,7 +648,7 @@ end
648define xcdr 648define xcdr
649 xgetptr $ 649 xgetptr $
650 xgettype $ 650 xgettype $
651 print/x ($type == Lisp_Cons ? ((struct Lisp_Cons *) $ptr)->cdr : 0) 651 print/x ($type == Lisp_Cons ? ((struct Lisp_Cons *) $ptr)->u.cdr : 0)
652end 652end
653document xcdr 653document xcdr
654Print the cdr of $, assuming it is an Emacs Lisp pair. 654Print the cdr of $, assuming it is an Emacs Lisp pair.
@@ -656,7 +656,7 @@ end
656 656
657define xfloat 657define xfloat
658 xgetptr $ 658 xgetptr $
659 print ((struct Lisp_Float *) $ptr)->data 659 print ((struct Lisp_Float *) $ptr)->u.data
660end 660end
661document xfloat 661document xfloat
662Print $ assuming it is a lisp floating-point number. 662Print $ assuming it is a lisp floating-point number.
diff --git a/src/ChangeLog b/src/ChangeLog
index 1a9fd720167..105a03a2b8c 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,46 @@
12005-11-21 Ken Raeburn <raeburn@mit.edu>
2
3 * keymap.c (shadow_lookup): Use make_number to pass a number to
4 Fsubstring.
5
62005-11-21 Juri Linkov <juri@jurta.org>
7
8 * puresize.h (BASE_PURESIZE): Increment to 1180000.
9
102005-11-20 Chong Yidong <cyd@stupidchicken.com>
11
12 * xfaces.c (Finternal_set_lisp_face_attribute): Use
13 :ignore-defface for new frame defaults when `unspecified' is
14 supplied.
15 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
16 (merge_face_vectors): Don't do :ignore-defface overwriting here.
17 (Finternal_merge_in_global_face): Do it here.
18
192005-11-20 Juri Linkov <juri@jurta.org>
20
21 * charset.c (invalid_character): Use Lisp-readable syntax
22 for octal and hex. Reorder decimal, octal and hex values.
23
242005-11-20 Nick Roberts <nickrob@snap.net.nz>
25
26 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
27 this type is recognised when debugging.
28
292005-11-19 Andreas Schwab <schwab@suse.de>
30
31 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
32 Lisp_Cons and Lisp_Float.
33
342005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
35
36 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
37 New variable.
38 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New
39 function.
40 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
41 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
42 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
43
12005-11-17 Chong Yidong <cyd@stupidchicken.com> 442005-11-17 Chong Yidong <cyd@stupidchicken.com>
2 45
3 * image.c (x_create_bitmap_from_xpm_data): Free attributes on 46 * image.c (x_create_bitmap_from_xpm_data): Free attributes on
diff --git a/src/charset.c b/src/charset.c
index b4f84a9e785..23b2cc75c1f 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -115,7 +115,7 @@ void
115invalid_character (c) 115invalid_character (c)
116 int c; 116 int c;
117{ 117{
118 error ("Invalid character: 0%o, %d, 0x%x", c, c, c); 118 error ("Invalid character: %d, #o%o, #x%x", c, c, c);
119} 119}
120 120
121/* Parse string STR of length LENGTH and fetch information of a 121/* Parse string STR of length LENGTH and fetch information of a
diff --git a/src/image.c b/src/image.c
index c7bc71ee909..d020b2ac394 100644
--- a/src/image.c
+++ b/src/image.c
@@ -3755,7 +3755,7 @@ x_create_bitmap_from_xpm_data (f, bits)
3755 XpmFreeAttributes (&attrs); 3755 XpmFreeAttributes (&attrs);
3756 return id; 3756 return id;
3757} 3757}
3758#endif /* HAVE_X_WINDOWS */ 3758#endif /* defined (HAVE_XPM) && defined (HAVE_X_WINDOWS) */
3759 3759
3760/* Load image IMG which will be displayed on frame F. Value is 3760/* Load image IMG which will be displayed on frame F. Value is
3761 non-zero if successful. */ 3761 non-zero if successful. */
diff --git a/src/keymap.c b/src/keymap.c
index a19b0102127..a6d5ccbbc2d 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -2372,7 +2372,8 @@ shadow_lookup (shadow, key, flag)
2372 value = Flookup_key (XCAR (tail), key, flag); 2372 value = Flookup_key (XCAR (tail), key, flag);
2373 if (NATNUMP (value)) 2373 if (NATNUMP (value))
2374 { 2374 {
2375 value = Flookup_key (XCAR (tail), Fsubstring (key, 0, value), flag); 2375 value = Flookup_key (XCAR (tail),
2376 Fsubstring (key, make_number (0), value), flag);
2376 if (!NILP (value)) 2377 if (!NILP (value))
2377 return Qnil; 2378 return Qnil;
2378 } 2379 }
diff --git a/src/lisp.h b/src/lisp.h
index 767e97a94a6..f440f104cb9 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -253,7 +253,7 @@ LISP_MAKE_RVALUE (Lisp_Object o)
253/* If union type is not wanted, define Lisp_Object as just a number. */ 253/* If union type is not wanted, define Lisp_Object as just a number. */
254 254
255#ifdef NO_UNION_TYPE 255#ifdef NO_UNION_TYPE
256#define Lisp_Object EMACS_INT 256typedef EMACS_INT Lisp_Object;
257#define LISP_MAKE_RVALUE(o) (0+(o)) 257#define LISP_MAKE_RVALUE(o) (0+(o))
258#endif /* NO_UNION_TYPE */ 258#endif /* NO_UNION_TYPE */
259 259
diff --git a/src/macterm.c b/src/macterm.c
index 169e3d60855..6c74e429726 100644
--- a/src/macterm.c
+++ b/src/macterm.c
@@ -867,6 +867,19 @@ mac_draw_image_string_16 (f, gc, x, y, buf, nchars)
867#if USE_CG_TEXT_DRAWING 867#if USE_CG_TEXT_DRAWING
868static XCharStruct *x_per_char_metric P_ ((XFontStruct *, XChar2b *)); 868static XCharStruct *x_per_char_metric P_ ((XFontStruct *, XChar2b *));
869 869
870static int cg_text_anti_aliasing_threshold = 8;
871
872static void
873init_cg_text_anti_aliasing_threshold ()
874{
875 Lisp_Object val =
876 Fmac_get_preference (build_string ("AppleAntiAliasingThreshold"),
877 Qnil, Qnil, Qnil);
878
879 if (INTEGERP (val))
880 cg_text_anti_aliasing_threshold = XINT (val);
881}
882
870static int 883static int
871mac_draw_string_cg (f, gc, x, y, buf, nchars) 884mac_draw_string_cg (f, gc, x, y, buf, nchars)
872 struct frame *f; 885 struct frame *f;
@@ -915,6 +928,8 @@ mac_draw_string_cg (f, gc, x, y, buf, nchars)
915 1.0); 928 1.0);
916 CGContextSetFont (context, GC_FONT (gc)->cg_font); 929 CGContextSetFont (context, GC_FONT (gc)->cg_font);
917 CGContextSetFontSize (context, GC_FONT (gc)->mac_fontsize); 930 CGContextSetFontSize (context, GC_FONT (gc)->mac_fontsize);
931 if (GC_FONT (gc)->mac_fontsize <= cg_text_anti_aliasing_threshold)
932 CGContextSetShouldAntialias (context, false);
918#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 933#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
919 CGContextSetTextPosition (context, gx, gy); 934 CGContextSetTextPosition (context, gx, gy);
920 CGContextShowGlyphsWithAdvances (context, glyphs, advances, nchars); 935 CGContextShowGlyphsWithAdvances (context, glyphs, advances, nchars);
@@ -6784,6 +6799,9 @@ init_font_name_table ()
6784 text_encoding_info_alist = create_text_encoding_info_alist (); 6799 text_encoding_info_alist = create_text_encoding_info_alist ();
6785 6800
6786#if USE_ATSUI 6801#if USE_ATSUI
6802#if USE_CG_TEXT_DRAWING
6803 init_cg_text_anti_aliasing_threshold ();
6804#endif
6787 if (!NILP (assq_no_quit (make_number (kTextEncodingMacUnicode), 6805 if (!NILP (assq_no_quit (make_number (kTextEncodingMacUnicode),
6788 text_encoding_info_alist))) 6806 text_encoding_info_alist)))
6789 { 6807 {
diff --git a/src/xfaces.c b/src/xfaces.c
index 647cf7bb337..c096b15ba1f 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -3593,8 +3593,6 @@ merge_face_vectors (f, from, to, named_merge_points)
3593 { 3593 {
3594 if (i == LFACE_HEIGHT_INDEX && !INTEGERP (from[i])) 3594 if (i == LFACE_HEIGHT_INDEX && !INTEGERP (from[i]))
3595 to[i] = merge_face_heights (from[i], to[i], to[i]); 3595 to[i] = merge_face_heights (from[i], to[i], to[i]);
3596 else if (IGNORE_DEFFACE_P (from[i]))
3597 to[i] = Qunspecified;
3598 else 3596 else
3599 to[i] = from[i]; 3597 to[i] = from[i];
3600 } 3598 }
@@ -4071,7 +4069,18 @@ FRAME 0 means change the face on all frames, and change the default
4071 4069
4072 /* Set lface to the Lisp attribute vector of FACE. */ 4070 /* Set lface to the Lisp attribute vector of FACE. */
4073 if (EQ (frame, Qt)) 4071 if (EQ (frame, Qt))
4074 lface = lface_from_face_name (NULL, face, 1); 4072 {
4073 lface = lface_from_face_name (NULL, face, 1);
4074
4075 /* When updating face-new-frame-defaults, we put :ignore-defface
4076 where the caller wants `unspecified'. This forces the frame
4077 defaults to ignore the defface value. Otherwise, the defface
4078 will take effect, which is generally not what is intended.
4079 The value of that attribute will be inherited from some other
4080 face during face merging. See internal_merge_in_global_face. */
4081 if (UNSPECIFIEDP (value))
4082 value = Qignore_defface;
4083 }
4075 else 4084 else
4076 { 4085 {
4077 if (NILP (frame)) 4086 if (NILP (frame))
@@ -4897,6 +4906,9 @@ frames). If FRAME is omitted or nil, use the selected frame. */)
4897 else 4906 else
4898 signal_error ("Invalid face attribute name", keyword); 4907 signal_error ("Invalid face attribute name", keyword);
4899 4908
4909 if (IGNORE_DEFFACE_P (value))
4910 return Qunspecified;
4911
4900 return value; 4912 return value;
4901} 4913}
4902 4914
@@ -4979,7 +4991,10 @@ Default face attributes override any local face attributes. */)
4979 gvec = XVECTOR (global_lface)->contents; 4991 gvec = XVECTOR (global_lface)->contents;
4980 for (i = 1; i < LFACE_VECTOR_SIZE; ++i) 4992 for (i = 1; i < LFACE_VECTOR_SIZE; ++i)
4981 if (! UNSPECIFIEDP (gvec[i])) 4993 if (! UNSPECIFIEDP (gvec[i]))
4982 lvec[i] = gvec[i]; 4994 if (IGNORE_DEFFACE_P (gvec[i]))
4995 lvec[i] = Qunspecified;
4996 else
4997 lvec[i] = gvec[i];
4983 4998
4984 return Qnil; 4999 return Qnil;
4985} 5000}