(math-read-number, math-read-number-simple): Use `save-match-data'.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
26898943
AS
12009-10-21 Andreas Schwab <schwab@linux-m68k.org>
2
3 * doprnt.c (doprnt): Fix overflow check.
4
5c646d5a
JD
52009-10-21 Jan Djärv <jan.h.d@swipnet.se>
6
3132a7ea
JD
7 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
8
5c646d5a
JD
9 * xterm.h (x_wait_for_event): Declare it.
10
11 * xterm.c (pending_event_wait): New variable.
12 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
13 see pending_event_wait.eventtype.
14 (handle_one_xevent): Don't change gravity when parent changes.
15 (x_new_font): Call change_frame_size with new rows/columns before we try
16 to resize the frame.
17 (x_wait_for_event): New function.
18 (x_set_window_size_1): Don't change gravity unless change_gravity is set.
19 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
20 don't change frame size, instead wait for the ConfigureNotify.
21 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
22 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
23 (x_initialize): Initialize pending_event_wait.
24
25 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
26 size.
27
28 * widget.c (EmacsFrameSetValues): Add comment.
29 (EmacsFrameSetCharSize): Just call x_set_window_size.
30
31 * gtkutil.c (xg_frame_set_char_size): Flush events and call
32 x_wait_for_event.
33 (flush_and_sync): Removed again.
34 (xg_get_font_name): Suggest monospace if no previous font is known.
35
e9c1637d
SM
362009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
37
38 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 39 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 40
5a72cccb
YM
412009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
42
43 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
44 processing pending events when event is filtered for input method.
ab04798f 45 (Bug#3681)
5a72cccb 46
2629aa37
JB
472009-10-20 Juanma Barranquero <lekktu@gmail.com>
48
49 * fns.c: Add #endif accidentally removed in previous change.
50
c3417a74
DN
512009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
52
53 * fns.c: Remove code for unsupported system: MAC_OS.
54 * image.c: Likewise. Include setjmp.h.
55
9685cef2
JD
562009-10-19 Jan Djärv <jan.h.d@swipnet.se>
57
58 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
59 pixel -1 (bug #4742).
60
d7306fe6
DN
612009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
62
019d2c4c
DN
63 * process.c (create_pty): Remove conditionals for no longer
64 supported systems: UNIPLUS and RTU.
65
ee6bacd4
DN
66 * xterm.c:
67 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
68
d7306fe6
DN
69 * alloc.c: Do not define struct catchtag.
70 * eval.c: Move struct catchtag definition ...
71 * lisp.h: ... here.
72
73 * image.c: Move png.h #include earlier to avoid warnings.
74
75 * xterm.c:
76 * xsmfns.c:
77 * xselect.c:
78 * xrdb.c:
79 * xmenu.c:
80 * xftfont.c:
81 * xfont.c:
82 * xfns.c:
83 * xfaces.c:
84 * xdisp.c:
85 * window.c:
86 * widget.c:
87 * w32xfns.c:
88 * w32uniscribe.c:
89 * w32term.c:
90 * w32select.c:
91 * w32reg.c:
92 * w32proc.c:
93 * w32menu.c:
94 * w32inevt.c:
95 * w32heap.c:
96 * w32font.c:
97 * w32fns.c:
98 * w32console.c:
99 * w32.c:
100 * w16select.c:
101 * vm-limit.c:
102 * unexsol.c:
103 * unexec.c:
104 * unexcw.c:
105 * unexaix.c:
106 * undo.c:
107 * tparam.c:
108 * textprop.c:
109 * terminfo.c:
110 * terminal.c:
111 * termcap.c:
112 * term.c:
113 * syntax.c:
114 * sound.c:
115 * sheap.c:
116 * search.c:
117 * scroll.c:
118 * region-cache.c:
119 * regex.c:
120 * ralloc.c:
121 * process.c:
122 * print.c:
b024548b
DN
123 * nsterm.m:
124 * nsselect.m:
125 * nsmenu.m:
126 * nsimage.m:
127 * nsfont.m:
128 * nsfns.m:
d7306fe6
DN
129 * msdos.c:
130 * minibuf.c:
131 * menu.c:
132 * marker.c:
133 * macros.c:
134 * keymap.c:
135 * keyboard.c:
136 * intervals.c:
137 * insdel.c:
138 * indent.c:
139 * gtkutil.c:
140 * ftxfont.c:
141 * ftfont.c:
142 * fringe.c:
143 * frame.c:
144 * fontset.c:
145 * font.c:
146 * fns.c:
147 * floatfns.c:
148 * filelock.c:
149 * fileio.c:
150 * emacs.c:
151 * editfns.c:
152 * dosfns.c:
153 * doprnt.c:
154 * doc.c:
155 * dispnew.c:
156 * dired.c:
157 * dbusbind.c:
158 * data.c:
159 * composite.c:
160 * coding.c:
161 * cmds.c:
162 * cm.c:
163 * chartab.c:
164 * charset.c:
165 * character.c:
166 * ccl.c:
167 * category.c:
168 * casetab.c:
169 * casefiddle.c:
170 * callproc.c:
171 * callint.c:
172 * bytecode.c:
173 * buffer.c:
174 * atimer.c: Include setjmp.h. (Bug#4643)
175
fd5f21e6
SM
1762009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
177
4c0354d7
SM
178 Remove leftover table unibyte_to_multibyte_table.
179 * character.c (unibyte_to_multibyte_table): Remove.
180 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
181 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
182 * character.h (UNIBYTE_TO_CHAR): New macro.
183 (MAKE_CHAR_MULTIBYTE): Use it.
184 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
185 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
186 (message_dolog, set_message_1):
187 * search.c (Freplace_match):
188 * editfns.c (Fcompare_buffer_substrings):
189 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
190 (concat):
191 * insdel.c (copy_text, count_size_as_multibyte):
192 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
193 * term.c (produce_glyphs):
194 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
195 * regex.c (RE_CHAR_TO_MULTIBYTE):
196 * cmds.c (internal_self_insert):
197 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
198
fd5f21e6
SM
199 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
200
4418646e
DN
2012009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
202
203 * puresize.h (BASE_PURESIZE): Increase to 1310000.
204
35f5c1d2
JB
2052009-10-16 Juanma Barranquero <lekktu@gmail.com>
206
207 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
208
a0cd8f6b
AR
2092009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
210
211 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
212 still needed under Tiger.
213
214 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
215
216 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
217 __Apple__.
218
219 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
220
01a8d3fa
KH
2212009-10-15 Kenichi Handa <handa@m17n.org>
222
223 * print.c (print_object): Escape a symbol like "2E10" too.
224
bf6c75c9 2252009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
226
227 Cleanups and changes for 64-bit compile under Snow Leopard.
228 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
229
230 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
231
c5959062 232 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
233 (ns_findfonts, nsfont_list_family): Use long format in printf, and
234 cast argument.
235 (nsfont_open): Use ns_char_width() everywhere.
236 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where
237 appropriate.
238
239 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
240
241 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
242 where appropriate.
243
244 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
245 where appropriate.
6e4780c5
JB
246 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
247 Use stringWithUTF8String.
bf6c75c9
AR
248 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
249
6e4780c5
JB
250 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
251 Add formal protocol mention to inheritance.
bf6c75c9
AR
252 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
253
6e4780c5
JB
254 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
255 Fix printf format.
bf6c75c9
AR
256 (ns_query_color): Use CGFloat where appropriate.
257 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
258 (EmacsScroller-mouseDown:) Use long format in printf, and cast
259 argument.
260
3d87f118
AR
261 * config.in (NS_HAVE_NSINTEGER): Drop.
262
a95c8102
AR
263 * dbusbind.c (dbus-method-return-internal)
264 (dbus-method-error-internal): Use long format in printf, and cast
265 argument.
266
267 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
268 in printf, and cast argument.
269
6873acca 270 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
271 cast argument.
272
9ec6f100
GM
2732009-10-11 Glenn Morris <rgm@gnu.org>
274
275 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
276
5be883cd
JD
2772009-10-08 Jan Djärv <jan.h.d@swipnet.se>
278
279 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
280 menu bar with a small width so it doesn't enlarge the frame.
281
d7a39b51
JB
2822009-10-08 Juanma Barranquero <lekktu@gmail.com>
283
284 * fontset.c (Fset_fontset_font): Fix typos in error messages.
285
0c2b6f8e
GM
2862009-10-06 Glenn Morris <rgm@gnu.org>
287
288 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
289 SOME_MACHINE_LISP (this enters indirectly via DOC).
290
e02131a2
EZ
2912009-10-05 Eli Zaretskii <eliz@gnu.org>
292
293 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
294
b4744254
EZ
2952009-10-04 Eli Zaretskii <eliz@gnu.org>
296
297 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
298 Doc fix.
299
dbf64827
JB
3002009-10-03 Martin Rudalics <rudalics@gmx.at>
301
302 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
303
e9a0aef8
MA
3042009-10-02 Michael Albinus <michael.albinus@gmx.de>
305
306 * lisp.h (Qdelete_directory_internal): Removed, because it is not
307 used anymore outside fileio.c.
308
309 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
310
64eb2b56
JB
3112009-10-01 Juanma Barranquero <lekktu@gmail.com>
312
313 * lisp.h (Qdelete_directory_internal):
314 Declare, instead of Qdelete_directory.
315
316 * w32fns.c (Fsystem_move_file_to_trash): Use it.
317
9d28c33e
SM
3182009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
319
320 * eval.c (Fcalled_interactively_p): Add `kind' argument.
321
9d8f3bd9
MA
3222009-10-01 Michael Albinus <michael.albinus@gmx.de>
323
9d28c33e 324 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
325 Fdelete_directory. It is not a command anymore. It has no file
326 name handler.
327
9694740b
SM
3282009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
329
330 * xdisp.c (get_next_display_element): Use an enum in last change.
331
748e162f
KH
3322009-09-28 Kenichi Handa <handa@m17n.org>
333
9694740b 334 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
335 unibyte_display_via_language_environment in handling
336 Vnobreak_char_display.
337
17efd58d
AR
3382009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
339
340 * nsterm.h (ns_app_name): New extern variable.
341
342 * nsterm.m (ns_app_name): New variable.
343 (ns_term_init): Set and use it.
344 (ns_term_shutdown): Use it.
345
346 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
347 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
348
349 * nsfns.m (ns_set_name_iconic, ns_set_name)
350 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
351 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
352
9694740b
SM
353 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
354 Remove double-casting in client_data comparison.
31c2d412 355
3208cb35
YM
3562009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
357
358 * keyboard.c (make_lispy_event): Remember last wheel direction.
359 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
360
b7d552d6
GM
3612009-09-26 Glenn Morris <rgm@gnu.org>
362
363 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
364 internal.elc. Add term/pc-win.elc.
365 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
366 term/x-win.elc.
367 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
368 term/w32-win.elc.
369 (NS_SUPPORT): New.
370 (lisp): Add NS_SUPPORT.
371 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
372
4ff670a8
DR
3732009-09-25 David Reitter <david.reitter@gmail.com>
374
375 * nsmenu.m (EmacsMenu-clear): Recognize application menu
376 on Mac OS X 10.6+ (bug#4513).
377
feabfb6c
JB
3782009-09-24 Juanma Barranquero <lekktu@gmail.com>
379
380 * frame.c (xrdb_get_resource): Return nil for empty string resources;
381 some parts of Emacs code (like font selection) don't grok them. See
382 http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
383
de59072a
AS
3842009-09-24 Andreas Schwab <schwab@redhat.com>
385
386 * coding.c (decode_coding_iso_2022): Fix operator precedence.
387
a489517b
JB
3882009-09-24 Juanma Barranquero <lekktu@gmail.com>
389
390 * dired.c (Fdirectory_files): Fix typo in docstring.
391
0592970c
AR
3922009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
393
394 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
395 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
396 (EmacsScroller-setPosition:portion:whole:): Remove -display call
397 under GNUstep.
398 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
399
400 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
401 glyph advancement.
402
48e8a88b
AR
4032009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
404
405 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 406 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
407
408 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
409 deleted (bug #4492).
410
e14f0a78
AR
411 * nsfont.m (Vns_reg_to_script): New lisp variable.
412 (syms_of_nsfont): Declare it.
413 (ns_registry_to_script): New function.
414 (ns_get_req_script): Call it.
415 (ns_findfonts): Don't give up on non-unicode registry.
416
417 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
418
5b650faa
SM
4192009-09-20 Tom Tromey <tromey@redhat.com>
420
421 * eval.c (find_handler_clause): Make stack-trace-on-error work in
422 batch mode (bug#4228).
423
a489517b 4242009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
425
426 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 427 carefully. (Bug #4339)
0bae4e09 428
fcfe06f3
CY
4292009-09-18 Chong Yidong <cyd@stupidchicken.com>
430
d798ba87 431 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 432
31642728
AR
4332009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
434
435 * emacs.c (inhibit_x_resources): Update doc string for NS.
436 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 437 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
438
439 * nsterm.h (ns_no_defaults): Remove.
440
441 * nsterm.m (ns_no_defaults): Remove.
442 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
443 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
444 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
445 don't update the NSWindow itself.
446 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 447 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
448
449 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
450 ns_use_qd_smoothing.
451
452 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
453 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 454 (x-close-connection): Drop PSFlush() under OS X.
a489517b 455 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 456
8686ac71
JB
4572009-09-17 Juanma Barranquero <lekktu@gmail.com>
458
459 * emacs.c (inhibit_x_resources): New variable.
460 (main) [HAVE_NS]: Don't process --quick command line option.
461 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
462
463 * lisp.h (inhibit_x_resources): Declare it extern.
464
465 * w32reg.c (x_get_string_resource):
466 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
467
e227ba05
EZ
4682009-09-17 Eli Zaretskii <eliz@gnu.org>
469
470 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP): Add
471 lisp/term/internal.elc.
472
742d40e8
SM
4732009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
474
475 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
476 (bug#4461).
477
005bd5a2
DN
4782009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
479
480 * puresize.h (BASE_PURESIZE): Increase to 1290000.
481
482 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
483 (OBJECTS_MACHINE): Remove, unused.
484
f9af9719
SM
4852009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
486
487 * frame.c (x_get_resource_string): Remove unused.
488
0307c7d2
JD
4892009-09-15 Jan Djärv <jan.h.d@swipnet.se>
490
491 * xterm.c (x_new_font): Call change_frame_size before calling
492 x_set_window_size, in case frame size won't change.
493
494 * frame.c (x_set_font): Remove dead code.
495
428b13d6
SM
4962009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
497
498 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
499
5766c380
SM
5002009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
501
502 * lread.c (Fload): Don't output a message after loading an obsolete
503 package any more (done in Lisp now).
504
2fd0161b
CY
5052009-09-12 Chong Yidong <cyd@stupidchicken.com>
506
507 * fns.c (syms_of_fns): Doc fix (Bug#4227).
508
bc5e75b6
SM
5092009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
510
511 * keymap.c (Fwhere_is_internal): Use nconc2.
512
c31c985e
AM
5132009-09-11 Alan Mackenzie <acm@muc.de>
514
515 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
516 batch mode.
517
78012bd2
AS
5182009-09-11 Andreas Schwab <schwab@linux-m68k.org>
519
520 * xdisp.c (display_mode_element): Detect cycles.
521
9d889332
SM
5222009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
523
524 * keymap.c (where_is_internal): Don't erroneously return nil right after
525 filling the cache.
526 (where_is_internal_1): Fix up typo.
527
7ab5d780
GM
5282009-09-11 Glenn Morris <rgm@gnu.org>
529
530 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
531 share a common doc-string.
532
5238a749
SM
5332009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
534
66d77eda
SM
535 * keymap.c (get_keymap): Return the actual keymap symbol rather than
536 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
537
5238a749
SM
538 * keymap.c (QCadvertised_binding): New constant.
539 (syms_of_keymap): Initialize it.
540 (Fwhere_is_internal): Try and use bindings from :advertised-binding
541 if applicable.
542
19f48442
SM
5432009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
544
50d4ba39
SM
545 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
546 (parse_menu_item): Streamline since bindings are recomputed all the
547 time anyway. Don't bother checking Vdefine_key_rebound_commands any
548 more and don't support lmenu's menu-alias any more either.
549
a88a5372
SM
550 * keymap.c (where_is_internal_data): Make noindirect a boolean.
551 (where_is_internal): Strip it down to only traverse the keymaps.
552 Move the cache handling from Fwhere_is_internal to here.
553 (Fwhere_is_internal): Move the handling of remapping and the choice of
554 the best binding from where_is_internal to here.
555 Unify the cached/noncached paths, so remapping is also handled
556 correctly when the cache is used, and so the cache can be used to
557 speed up remap-handling when applicable.
558 Give preference to non-remapped bindings.
559 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
560 non-remapped bindings.
561 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
562 command remapping.
563
19f48442
SM
564 * xdisp.c (display_mode_element): Move list length limit from 50 to
565 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
566
599498c3 5672009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
568
569 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
570
f9b7b5ac
SM
5712009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
572
a53af587
JB
573 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
574 (Bug#4334)
575
f9b7b5ac
SM
576 * keymap.c (where_is_internal): Filter out shadowed remappings.
577 Assume that where_is_internal returns unshadowed bindings to simplify
578 the code and get rid of the gotos. Use ASIZE.
579
04f4b72d
JD
5802009-09-04 Jan Djärv <jan.h.d@swipnet.se>
581
4da146f2
JD
582 * xterm.c (x_focus_changed): If we get a focusout and pointer
583 is invisible, make it visible.
584
04f4b72d
JD
585 * xterm.h: Remove condition for declaration of
586 x_*_window_to_frame.
587
7cef7ce3
SM
5882009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
589
590 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
591 initial terminal as well.
592
a54fa5b7
JD
5932009-09-02 Jan Djärv <jan.h.d@swipnet.se>
594
595 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 596 x_menubar_window_to_frame.
a54fa5b7
JD
597
598 * xterm.c: Remove declarations also in xterm.h
599 (XTmouse_position): Do not return valid positions
600 for clicks in the menubar and the toolbar for Gtk+.
601
602 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
603 if the widget for the event has the same top level as a frame,
604 return the frame.
605 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
606 internal windows, bug #4122.
607 (x_non_menubar_window_to_frame): Remove.
608
5a021dd0
GM
6092009-09-02 Glenn Morris <rgm@gnu.org>
610
611 * buffer.c (default-major-mode): Move most of the doc from here...
612 (major-mode): ... to here.
613
548fe2f3
NR
6142009-08-30 Nick Roberts <nickrob@snap.net.nz>
615
616 * process.c (wait_reading_process_output): Keep the descriptor
617 when pty is used by a non-child process, e.g., in I/O buffer of
618 GDB this allows inferior to be restarted.
619
e0840eef
EZ
6202009-08-29 Eli Zaretskii <eliz@gnu.org>
621
622 * xdisp.c (redisplay_internal): Remove redundant test and collapse
623 both branches into one.
624
82e98df4
SM
6252009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
626
627 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
628 (main): Use enable-multibyte-characters rather than
629 default-enable-multibyte-characters. Output a warning message when
630 running a unibyte session.
631
890617cb
YM
6322009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
633
634 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
635 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
636 (copy_data_segment): Also copy __program_vars section.
637 (copy_dyld_info) [LC_DYLD_INFO]: New function.
638 (dump_it) [LC_DYLD_INFO]: Use it.
639
640 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
641
e7adeadc
EZ
6422009-08-28 Eli Zaretskii <eliz@gnu.org>
643
644 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
645 $(SRC)/buildobj.h.
646 (buildobj.h): Renamed from $(SRC)/buildobj.h.
647 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
648 $(SRC)/buildobj.h.
649 (clean): Add buildobj.h.
650
3ed8bbdc
TZ
6512009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
652
653 * print.c (print_object): Set escapeflag to 1 when printing
654 hashtable keys and values.
655
155a6764
SM
6562009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
657
658 * lread.c (read_integer): Use doubles (and potentially return a float
659 number) as we do in string-to-number.
660 (read1): Use strtol to read integers, signal errors on strtol's
661 overflow and use floats if strtol's output is too large for
662 Elisp integers.
663
877610de
EZ
6642009-08-27 Eli Zaretskii <eliz@gnu.org>
665
666 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
667 (make-buildobj-SH): Fix last change.
668 (SRC): Move to before where it's first used.
669
ef73e7be
KH
6702009-08-27 Kenichi Handa <handa@m17n.org>
671
550c8289
KH
672 * process.c (send_process): Use encode_coding_object instead of
673 encode_coding_string to perform eol-conversion even if the string
674 is unibyte.
675
60afa08d
KH
676 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
677 character.
678
ef73e7be 679 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 680 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 681
7b3a82d7
DN
6822009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
683
5654bf63
DN
684 * callproc.c (Fcall_process): Remove always true #if.
685
7b3a82d7
DN
686 * lisp.h: Replace #if 0 code for checking with text pointing to
687 the --enable-checking configure flag.
688
689 * emacs.c (main): Mention the --enable-profiling configure flag
690 instead of using CFLAGS.
691
878bde49
KR
6922009-08-26 Ken Raeburn <raeburn@raeburn.org>
693
694 * Makefile.in (buildobj.h): New target.
695 (doc.o): Depend on it.
696 (temacs${EXEEXT}): Don't generate buildobj.lst.
697 (mostlyclean): Delete buildobj.h, not buildobj.lst.
698 * makefile.w32-in ($(SRC)/buildobj.h): New target.
699 ($(BLD)/doc.$(O)): Depend on it.
700 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
701 provided by Eli Zaretskii.)
702 ($(TEMACS)): Don't generate buildobj.lst.
703 * doc.c: Include buildobj.h.
704 (buildobj): New static variable.
705 (Fsnarf_documentation): Use it, instead of opening and reading
706 buildobj.lst.
707
1574224c
MA
7082009-08-25 Michael Albinus <michael.albinus@gmx.de>
709
710 * dbusbind.c (Fdbus_call_method)
711 (Fdbus_call_method_asynchronously): Use English numeric format for
712 timeout values in doc string.
713
d9da2f45
KH
7142009-08-25 Kenichi Handa <handa@m17n.org>
715
ef73e7be
KH
716 * alloc.c (mark_char_table): New function.
717 (mark_object): Use mark_char_table for a char-table.
718
d9da2f45
KH
719 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
720 (CHAR_TABLE_REF): Use it.
721
c8edcc01
KR
7222009-08-23 Ken Raeburn <raeburn@raeburn.org>
723
724 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
725 before invoking the newly build emacs to check for load-path
726 shadowing.
727
7763401b
GM
7282009-08-22 Glenn Morris <rgm@gnu.org>
729
730 * Makefile.in (bootstrap_exe): New variable.
731 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
732 Use ${bootstrap_exe}.
733
729eadda
EZ
7342009-08-22 Eli Zaretskii <eliz@gnu.org>
735
736 * coding.h (encode_coding_string): Don't encode unibyte strings.
737 (Bug#4047)
738
eb4c6ace
MA
7392009-08-22 Michael Albinus <michael.albinus@gmx.de>
740
741 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
742
743 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
744 intended as hotfix only.
745 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
746
36e34d1b
AR
7472009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
748
749 * nsterm.m (ns_get_color): Update documentation properly for last
750 change, and clean up loose ends in the code left by it. Fix
751 longstanding bug with 16-bit hex parsing, and add support for
752 yet another X11 format (rgb:r/g/b) for compatibility.
753 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
754 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
755
f983eb8a
SM
7562009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
757
758 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
759
3f56d3c6
MA
7602009-08-20 Michael Albinus <michael.albinus@gmx.de>
761
762 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
763 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
764 (xd_initialize, xd_pending_messages): Check, whether
765 $DBUS_SESSION_BUS_ADDRESS is set.
766
fb641d68
YM
7672009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
768
769 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
770
771 * nsterm.m (ns_get_color): Remove incompatible color formats again.
772
cf59a374
GM
7732009-08-20 Glenn Morris <rgm@gnu.org>
774
775 * emacs.c (system-type): Doc fix.
776
1373f3be
SM
7772009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
778
779 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
780 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
781
058ed861
MA
7822009-08-18 Michael Albinus <michael.albinus@gmx.de>
783
1373f3be
SM
784 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
785 New functions.
058ed861
MA
786 (xd_initialize): Revert change from 2009-08-16.
787
563a866e 7882009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
789
790 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 791 font-group vector, return nil.
5fc05db0 792
e42bdf01
CY
7932009-08-17 Chong Yidong <cyd@stupidchicken.com>
794
795 * process.c (status_notify): Don't perform redisplay.
796 (Fdelete_process, list_processes_1, process_send_signal):
797 Expliticly perform redisplay.
798 (wait_reading_process_output): Always check process status, but
799 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
800
4230ab74
KR
8012009-08-17 Ken Raeburn <raeburn@raeburn.org>
802
1373f3be 803 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
804 (XFLOAT_INIT): New macro for storing a float value.
805 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
806 * fns.c (sxhash): Copy out the value of a float in order to
807 examine its bytes.
808 * dbusbind.c (xd_append_arg): Likewise.
809
4230ab74
KR
810 * emacs.c (main): Don't call syms_of_data twice.
811
a0645cdd
MA
8122009-08-16 Michael Albinus <michael.albinus@gmx.de>
813
814 * dbusbind.c (xd_initialize): Add connection file descriptor to
815 input_wait_mask, in order to let select() detect, whether a new
816 message has been arrived.
ca4f31ea 817 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 818
485db0ba
MA
8192009-08-15 Michael Albinus <michael.albinus@gmx.de>
820
1373f3be
SM
821 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
822 New functions.
485db0ba
MA
823
824 * lisp.h (xd_pending_messages): Declare.
825
826 * keyboard.c (readable_events): Call xd_pending_messages.
827
b5b98ff4
CY
8282009-08-15 Chong Yidong <cyd@stupidchicken.com>
829
1373f3be 830 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 831
f8354c6e
CY
832 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
833
b5b98ff4
CY
834 * buffer.c (set_buffer_internal_1)
835 (swap_out_buffer_local_variables): Check for unbound local
836 variables (Bug#4138).
837
8b9fc636
EZ
8382009-08-14 Eli Zaretskii <eliz@gnu.org>
839
840 * process.c (create_pty): Fix last change.
841
ce959360
CY
8422009-08-13 Chong Yidong <cyd@stupidchicken.com>
843
844 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
845 (xbm_load_image): Caller changed.
64b807c9 846 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 847
c7baf7e9
NR
8482009-08-13 Nick Roberts <nickrob@snap.net.nz>
849
850 * process.c (create_pty): New function.
851 (Fstart_process): Use it to allow Emacs to just associate a pty
852 with the buffer. See associated change in gdb-mi.el.
853 (list_processes_1): Deal with no program name.
854 (start_process_unwind): Use pid == -2 to mean no process.
855
1ac9108a
SM
8562009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
857
858 * cmds.c (nonundocount): New global variable.
859 (keys_of_cmds): Initialize it.
860 (Fself_insert_command): Use it to combine upto 20 sequential chars
861 into a single undo entry, just like the Qself_insert_command code in
862 keyboard.c does.
863 Call frame_make_pointer_invisible, also like the Qself_insert_command
864 code in keyboard.c does.
865 * keyboard.c (command_loop_1): Use the new global nonundocount rather
866 than its own local replacement for it.
867
e267324c
KR
8682009-08-10 Ken Raeburn <raeburn@raeburn.org>
869
1ac9108a 870 * fns.c (concat): Don't re-set string length to its current value.
77437343 871
1ac9108a
SM
872 * coding.h (decode_coding_string, encode_coding_string):
873 Use SBYTES macro.
f0bed503 874
1ac9108a 875 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
876 (doprnt): Merge with doprnt1, discarding lispstrings code.
877 * lisp.h (doprnt_lisp): Don't declare.
878
416e006d
JL
8792009-08-07 Juri Linkov <juri@jurta.org>
880
881 * puresize.h (BASE_PURESIZE): Increase to 1270000.
882
6f7d5780
DN
8832009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
884
885 * print.c (syms_of_print): Undo previous change.
886
f19a0f5b
TZ
8872009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
888
889 * lread.c (read1, syms_of_lread): Read hashtables back from the
890 readable format.
891
892 * print.c (print_preprocess, print_object): Print hashtables fully
893 and readably.
894 (syms_of_print): Provide 'hashtable-print-readable.
895
b9173dc2
AR
8962009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
897
898 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
899 no family set.
900 (nsfont_open): Handle case when entity has no family.
901
1586503c
AR
9022009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
903
904 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
905 element, not a list, for match case.
906
087048cd
KH
9072009-07-28 Kenichi Handa <handa@m17n.org>
908
909 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
910 rigidly.
911
912 * xfont.c (xfont_list_pattern): Don't ignore the return value of
913 font_parse_xlfd. Check font properties more rigidly.
914
780c2506
DN
9152009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
916
31fd7c5c
JB
917 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
918 bsd-common.h.
780c2506 919
a8c0cc18
KH
9202009-07-27 Kenichi Handa <handa@m17n.org>
921
922 * xfaces.c (face_with_height): Call font_clear_prop.
923
4fbe2306
CY
9242009-07-26 Chong Yidong <cyd@stupidchicken.com>
925
111d9af3
CY
926 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
927
928 * xterm.c (x_term_init): Use Qx.
929
4fbe2306
CY
930 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
931
1ac9108a 932 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
933 (ns_get_color): Revert 2009-07-16 change.
934
beb0b7f9
EZ
9352009-07-25 Eli Zaretskii <eliz@gnu.org>
936
937 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 938 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 939
2baf5e76
KR
9402009-07-25 Ken Raeburn <raeburn@raeburn.org>
941
1ac9108a
SM
942 * coding.h (decode_coding_string, encode_coding_string):
943 Use SCHARS macro.
8890e5f5 944
2baf5e76 945 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 946 (load_depth): Delete.
2baf5e76
KR
947 (Qload_in_progress): New variable.
948 (load_unwind): Don't reference load_depth or load_in_progress.
949 (Fload): Likewise; specbind Qload_in_progress instead.
950 (init_lread): Don't initialize load_depth.
951 (syms_of_lread): Initialize and protect Qload_in_progress.
952
1395c6f5
AR
9532009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
954
955 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
956
4e2f36cf
AR
9572009-07-23 Yavor Doganov <yavor@gnu.org>
958
959 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
960
5dd9a6f7
AR
9612009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
962
963 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
964 Bugs 3792, 3720, 2402.
965 (ns_lookup_indexed_color): Check for bad index.
966 (ns_index_color): Init unused slot to 0.
967 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
968 Bug 3714, possibly 3082.
5dd9a6f7 969
c902b920
JR
9702009-07-22 Jason Rumney <jasonr@gnu.org>
971
1ac9108a
SM
972 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
973 Position IME window at cursor (Bug#2570).
c902b920
JR
974 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
975 (globals_of_w32fns): Dynamically load functions required above.
976
977 * w32term.c (w32_draw_window_cursor): Send message to reposition
978 any IME window.
979
090101cf
CY
9802009-07-21 Chong Yidong <cyd@stupidchicken.com>
981
982 * fileio.c: Revert 2009-07-16 changes.
983 (Vauto_save_include_big_deletions): New variable.
984 (Fdo_auto_save): Disable auto-save only if
985 auto-save-include-big-deletions is nil.
986
e6583e3d
CY
9872009-07-21 Chong Yidong <cyd@stupidchicken.com>
988
989 * xdisp.c (move_it_to): For continued lines ending in a tab, take
990 the overflowed pixels into account (Bug#3879).
991
ece435a5
KR
9922009-07-21 Ken Raeburn <raeburn@raeburn.org>
993
994 * lread.c (load_depth): New variable.
995 (Fload, load_unwind, init_lread): Set it to the load recursion
996 depth; set load_in_progress as a simple boolean based on the
997 current load_depth. (Bug#3892)
998
40b2d973
AR
9992009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1000
1001 * nsfont.m (ns_has_attribute): Remove.
1002 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
1003
10be7e0d
JL
10042009-07-18 Juri Linkov <juri@jurta.org>
1005
1006 * process.c (Fset_process_query_on_exit_flag): Mention killing
1007 a buffer in docstring.
1008
fa055055
KH
10092009-07-17 Kenichi Handa <handa@m17n.org>
1010
1011 * casetab.c (shuffle): Fix the logic of setting up the cycle.
1012
042f7b69
YM
10132009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1014
1015 * nsfns.m (Fns_set_alpha): Remove function.
1016 (syms_of_nsfns): Don't defsubr it.
1017
1018 * nsterm.m (ns_get_color): Remove incompatible color formats.
1019 (ns_color_to_lisp): Generate #rrggbb color format string.
1020
4be941e3
RS
10212009-07-16 Richard Stallman <rms@gnu.org>
1022
1023 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
1024 (Fset_buffer_auto_saved): Handle save_length = -2.
1025
4e6b227d
CY
10262009-07-16 Chong Yidong <cyd@stupidchicken.com>
1027
1028 * xterm.c (Qx_gtk_map_stock): New var.
1029
1030 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
1031 of calling intern each time.
1032
a1856973
YM
10332009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1034
1035 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
1036 does tiling.
1037
1038 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
1039
497e54d8
KH
10402009-07-14 Kenichi Handa <handa@m17n.org>
1041
72d36834
KH
1042 * font.c (font_vconcat_entity_vectors): New function.
1043 (struct font_sort_data): New member font_driver_preference.
1044 (font_compare): Check font_driver_preference.
1045 (font_sort_entities): The format of the first argument changed.
1046 (font_delete_unmatched): Likewise.
1047 (font_list_entities): The return type changed.
1048 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
1049 (font_find_for_lface): Adjuste for the above changes.
1050 Don't suppress the checking of C even if the repertory supports it.
1051 (Flist_fonts): Adjust for the above changes.
72d36834 1052
1ac9108a
SM
1053 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
1054 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
1055 Reject a font who has adstyle property that is different from a
1056 langname derived from registry property.
1ac9108a 1057 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 1058
b6046155
EZ
10592009-07-13 Eli Zaretskii <eliz@gnu.org>
1060
1061 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
1062 local copy of dirfilename.
1063
fb6b6049
KH
10642009-07-13 Kenichi Handa <handa@m17n.org>
1065
e2402a5e
KH
1066 * chartab.c (sub_char_table_ref_and_range): Fix the range check
1067 against max_char.
1068
fb6b6049
KH
1069 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
1070 calling XSYMBOL (sym).
1071
65156807
EZ
10722009-07-11 Eli Zaretskii <eliz@gnu.org>
1073
1ac9108a
SM
1074 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
1075 New function.
1076 (directory_files_internal) [WINDOWSNT]:
1077 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
1078 the filesystem of the directory is fast or slow.
1079
1080 * w32.c (logon_network_drive): Don't assume PATH is an absolute
1081 file name.
1082 (is_slow_fs): New function.
1083 (stat): Use it to determine whether to issue more system calls to
1084 get accurate file attributes, when w32-get-true-file-attributes is
1085 `local'.
1086
e0ab5fcf
JD
10872009-07-10 Jan Djärv <jan.h.d@swipnet.se>
1088
1089 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 1090 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
1091 parameter font-parameter as default to the font dialog.
1092
784ceded
KH
10932009-07-10 Kenichi Handa <handa@m17n.org>
1094
1095 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
1096
fb8edc0b
EZ
10972009-07-09 Eli Zaretskii <eliz@gnu.org>
1098
1ac9108a 1099 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 1100
fb8edc0b
EZ
1101 * w32.c (stat): Treat UNC file names as residing on remote
1102 drives. (Bug#3542)
1103
635c75b1
KH
11042009-07-09 Kenichi Handa <handa@m17n.org>
1105
1106 * fontset.c (fontset_find_font): Fix previous change.
1107
c1d5ce94
MA
11082009-07-08 Michael Albinus <michael.albinus@gmx.de>
1109
1110 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
1111 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
1112 error flag.
1113
edb61b39
KH
11142009-07-08 Kenichi Handa <handa@m17n.org>
1115
374bf7e4
KH
1116 * fontset.c (fontset_find_font): Fix the logic of handling
1117 charset_matched.
1118 (font_for_char): Delete unused var.
1119 (generate_ascii_font_name): Delete it.
1120
edb61b39
KH
1121 * coding.h (JIS_TO_SJIS2): Fix the code range check.
1122
1123 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
1124 (encode_coding_sjis): Fix the code range check.
1125
0f3f018c
CY
11262009-07-07 Chong Yidong <cyd@stupidchicken.com>
1127
1128 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
1129 (Fexpand_file_name): Copy string data properly (Bug#3772).
1130
fcaf6f3a
JD
11312009-07-07 Jan Djärv <jan.h.d@swipnet.se>
1132
1133 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
1134 first MapNotify.
1135
6809ca75
KH
11362009-07-07 Kenichi Handa <handa@m17n.org>
1137
1138 * character.h (unibyte_has_multibyte_table): Delete extern.
1139 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
1140
1141 * charset.c (Fset_charset_priority): Update charset_unibyte.
1142 (syms_of_charset): Initialize charset_unibyte.
1143
1144 * character.c (unibyte_has_multibyte_table): Delete it.
1145 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
1146 charset_unibyte.
1147 (multibyte_char_to_unibyte_safe): Likewise.
1148 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
1149
1ac9108a 1150 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
1151 (x_produce_glyphs): Likewise.
1152
1153 * .gdbinit (xcharset): Fix the treating $arg0.
1154
ad9e2d54
EZ
11552009-07-04 Eli Zaretskii <eliz@gnu.org>
1156
1157 Emulation of `getloadavg' on MS-Windows.
1158 * w32.c: Include float.h
1159 (g_b_init_get_native_system_info, g_b_init_get_system_times)
1160 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
1161 (get_native_system_info, get_system_times): New functions.
1162 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
1163 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
1164 (globals_of_w32): Initialize g_b_init_get_native_system_info,
1165 g_b_init_get_system_times, and num_of_processors.
1166
0a3472c7
JR
11672009-07-03 Jason Rumney <jasonr@gnu.org>
1168
1169 * w32term.c (w32_initialize): Use standard types.
1170
80904120
EZ
11712009-07-03 Eli Zaretskii <eliz@gnu.org>
1172
1173 * dired.c (Ffile_attributes): Decode user and group names by the
1174 locale's encoding. (Bug#3443)
1175
6978862d
DN
11762009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
1177
f8d23104
DN
1178 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
1179 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
1180
1181 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
1182
1183 * term.c (init_tty): Remove spurious #ifdef.
1184
6978862d
DN
1185 * m/mips.h: Mention this file is also used for netbsd.
1186 * m/pmax.h: Remove file.
1187
e044e4fc
JD
11882009-07-03 Jan Djärv <jan.h.d@swipnet.se>
1189
1190 * xterm.h (struct x_display_info): Add invisible_cursor.
1191 (struct x_output): Add current_cursor.
1192
1193 * xterm.c (XTtoggle_invisible_pointer): New function.
1194 (x_define_frame_cursor): Don't define cursor if invisible or the
1195 same as before. Set current_cursor.
1196 (x_create_terminal): Set toggle_invisible_pointer_hook.
1197
1198 * xfns.c (make_invisible_cursor): New function.
1199 (x_set_mouse_color): Call make_invisible_cursor.
1200 Set current_cursor.
1201 (x_window): Set current_cursor.
1202
1203 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
1204
1205 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
1206 inserting a character.
1207 (read_avail_input): Call frame_make_pointer_visible.
1208
1209 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
1210 (frame_make_pointer_invisible, frame_make_pointer_visible):
1211 New functions.
e044e4fc
JD
1212 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
1213
1214 * frame.h: Declare frame_make_pointer_invisible and
1215 frame_make_pointer_visible.
1216 (struct frame): Add pointer_invisible.
1217
574c8efa
JD
12182009-07-02 Jan Djärv <jan.h.d@swipnet.se>
1219
7b507248
JD
1220 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
1221 frame isn't visible.
1222 (xg_frame_resized): If width/height is -1, get size of window
1223 from X server.
1224
1225 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
1226 for MapNotify.
1227
835bdaa7 1228 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 1229 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 1230 (flush_and_sync): Reintroduce.
574c8efa 1231
3f1c6666 12322009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 1233
31fd7c5c 1234 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
1235
1236 * xterm.c (x_handle_net_wm_state): Also look for sticky.
1237 (x_term_init): Initialize Xatom_net_wm_state_sticky.
1238
1239 * frame.h: Declare Qsticky.
1240
cad9ef74
JD
1241 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
1242
1243 * nsfns.m (ns_frame_parm_handlers): Ditto.
1244
1245 * frame.c: Declare Qsticky.
1246 (frame_parms): Add sticky.
1247
1248 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
1249
1250 * xterm.h: Declare x_set_sticky.
1251
1252 * xterm.c (x_set_sticky): New function.
1253
69b16610
JD
1254 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
1255 (xg_tool_bar_menu_proxy): Attach enter/leave events to
1256 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
1257
1258 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
1259
1260 * frame.c: Qmaximized is new.
1261 (x_set_frame_parameters): Do not handle fullscreen specially.
1262 Only set width and height if explicitly set.
1263 (x_set_fullscreen): Handle Qmaximized.
1264 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
1265 (syms_of_frame): Initialize Qmaximized.
1266
1ac9108a
SM
1267 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
1268 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
1269
1270 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
1271 for Expose event. Add call to x_check_fullscreen for MapNotify event.
1272 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
1273 set gravity to NorthWestGravity when USE_GTK.
1274 (set_wm_state): New function.
31fd7c5c 1275 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
1276 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
1277 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 1278 or the case when no window manager is running. That means remove calls
3f1c6666
JD
1279 to x_real_positions and x_fullscreen_adjust.
1280
1281 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
1282 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
1283 flush_and_sync.
1284 (xg_height_changed): New function.
1285 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
1286 and gtk_window_set_policy. Set frame gravity after parsing the
1287 geometry string.
3f1c6666
JD
1288 (xg_update_frame_menubar, free_frame_menubar)
1289 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
1290 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
1291 Remove calls to xg_frame_set_char_size.
1292
fd503d99
KH
12932009-07-01 Kenichi Handa <handa@m17n.org>
1294
1295 * keyboard.c (decode_keyboard_code): New function.
1296 (tty_read_avail_input): Decode the input bytes if necessary.
1297
1ac9108a
SM
1298 * coding.c (setup_coding_system):
1299 Initialize coding->carryover_bytes to 0.
fd503d99
KH
1300 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
1301 use Qno_conversion.
1302
24ed93fb
YM
13032009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1304
1305 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
1306
99061dfc
CY
13072009-06-30 Chong Yidong <cyd@stupidchicken.com>
1308
1ac9108a 1309 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 1310
ff90fbde
JR
13112009-06-30 Jason Rumney <jasonr@gnu.org>
1312
1313 * w32term.c (w32_initialize): Use GetModuleHandle for library that
1314 is already loaded.
1315 Set user model ID if supported (bug#1849).
1316
5f445726
JM
13172009-06-29 Jim Meyering <meyering@redhat.com>
1318
1319 Remove useless if-before-xfree test.
1320 * nsfont.m (nsfont_close): Remove useless test.
1321 * term.c (delete_tty): Likewise.
1322 * w32.c (system_process_attributes): Likewise.
1323 * w32font.c (w32font_close): Likewise.
1324 * xfaces.c (x_free_gc): Likewise.
1325 * xselect.c (buffer): Likewise.
1326
b9607587
AS
13272009-06-28 Andreas Schwab <schwab@linux-m68k.org>
1328
1329 * process.c (send_process): Keep decoded string in a local
1330 variable and protect it from GC. (Bug#3521)
1331
89ba96f4
EZ
13322009-06-28 Eli Zaretskii <eliz@gnu.org>
1333
1334 * term.c (create_tty_output) [MSDOS]: #ifdef away.
1335 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
1336
098a1589
CY
13372009-06-28 Chong Yidong <cyd@stupidchicken.com>
1338
485422be
CY
1339 * xdisp.c (start_display, handle_face_prop)
1340 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
1341 (redisplay_window, try_window_id, produce_image_glyph):
1342 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 1343
098a1589
CY
1344 * xterm.c (x_update_window_begin, x_new_focus_frame)
1345 (x_scroll_bar_handle_click, handle_one_xevent)
1346 (handle_one_xevent, XTread_socket, x_focus_on_frame)
1347 (x_make_frame_visible, x_make_frame_invisible)
1348 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
1349 code chunks that are now obsolete.
1350
78c38319
MA
13512009-06-28 Michael Albinus <michael.albinus@gmx.de>
1352
1353 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
1354 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
1355 for hours, when optimzation is enabled.
1356 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
1357 (xd_read_message): Make them static.
1358
4189ed40
CY
13592009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
1360
1361 * term.c (turn_on_face): Allow simultaneously bold and dim
1362 terminal faces (Bug#3530).
1363
cd9b5e16
CY
13642009-06-27 Chong Yidong <cyd@stupidchicken.com>
1365
4e23bedb
CY
1366 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
1367
cd9b5e16
CY
1368 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
1369 truncation glyphs (Bug#3686).
1370
07cc3c35
GM
13712009-06-27 Glenn Morris <rgm@gnu.org>
1372
1373 * m/pmax.h: Restore file, with only netbsd portions.
1374
31fd7c5c 13752009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 1376
cd9b5e16 1377 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 1378
42d4a64f
KH
13792009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
1380
1381 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
1382 the arg FORCE_SYMBOL.
1383
930fe55b 13842009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
1385
1386 * fontset.c (fontset_find_font): When a usable rfont_def is found
1387 in a fallback font-group, make it the first element of the group.
1388
57ebc3fd
CY
13892009-06-24 Chong Yidong <cyd@stupidchicken.com>
1390
1391 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
1392
f084f942
KH
13932009-06-24 Kenichi Handa <handa@m17n.org>
1394
1395 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
1396 set for C.
1397 (fontset_font): Record the availability of a font for C both in
1398 the realized fontsets of the current one and the default one.
1399
2f686c87
DN
14002009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
1401
1402 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
1403 conditional, it is always defined on AIX.
1404
666e158e
MB
14052009-06-23 Miles Bader <miles@gnu.org>
1406
1407 * window.c (Vrecenter_redisplay): New variable.
1408 (syms_of_window): Initialize it.
1409 (Qtty): New extern declaration.
1410 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
1411
c6da7cd2
JM
14122009-06-23 Jim Meyering <meyering@redhat.com>
1413
1ac9108a
SM
1414 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
1415 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 1416 pointer dereferences are guaranteed to be valid.
c6da7cd2 1417
678dca3d
KH
14182009-06-23 Kenichi Handa <handa@m17n.org>
1419
74d75424
KH
1420 * emacs.c (main): Call init_font ().
1421
1422 * font.h (Vfont_log): Extern it.
1423 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
1424
1425 * font.c (font_sort_entities, font_list_entities)
1426 (font_matching_entity, font_open_entity)
1427 (font_close_object): Change font_add_log to FONT_ADD_LOG.
1428 (Vfont_log): Delete static.
1429 (font_log_env_checked): Delete this variable.
1430 (font_add_log): Don't check font_log_env_checked.
1431 (font_deferred_log): Check Vfont_log.
1432 (init_font): New function.
1433
678dca3d
KH
1434 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
1435
1436 * w32font.c: Change font_add_log to FONT_ADD_LOG.
1437
1438 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
1439
1440 * xfont.c: Change font_add_log to FONT_ADD_LOG.
1441
1442 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
1443 (face_for_char): Don't call font_deferred_log here.
1444 (font_for_char): Likewise.
1445
8a668709
CY
14462009-06-22 Chong Yidong <cyd@stupidchicken.com>
1447
9a01ee33
CY
1448 * w32term.c (x_draw_glyph_string): Use the glyph string's width
1449 rather than its background_width for drawing the overline and
1450 underline (Bug#489).
1451
1452 * xterm.c (x_draw_glyph_string): Use the glyph string's width
1453 rather than its background_width for drawing the overline and
1454 underline (Bug#489).
ec7c9926
CY
1455 (xg_default_icon_file): New variable.
1456 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
1457 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 1458
8a668709
CY
1459 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
1460 (load_overlay_strings): Remove externs.
1461 (fast_find_position): Function deleted.
1462 (mouse_face_from_buffer_pos): New function, based on
1463 fast_find_position. Correctly handle before-strings,
1464 display-strings, and after-strings (Bug#1220).
1465 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
1466
4d4c02d8
CY
14672009-06-21 Chong Yidong <cyd@stupidchicken.com>
1468
1ac9108a 1469 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
1470 (move_it_in_display_line_to, move_it_in_display_line_to)
1471 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
1472
70243478
CY
14732009-06-21 Chong Yidong <cyd@stupidchicken.com>
1474
1475 * Branch for 23.1.
1476
13087e59
JR
14772009-06-21 Jason Rumney <jasonr@gnu.org>
1478
1479 * w32term.c (keyboard_codepage): New static variable.
1480 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
1481 (w32_read_socket) [WM_CHAR]: Use it to decode character
1482 input (bug#3237).
1483 (w32_initialize): Initialize it.
1484 (codepage_for_locale): New function.
1485
4735b74e
KR
14862009-06-20 Ken Raeburn <raeburn@raeburn.org>
1487
1488 * process.c (status_message): Pass Faset index argument as a lisp
1489 object, so as to work with USE_LISP_UNION_TYPE.
1490
0e727afa
YM
14912009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1492
1493 * coding.c (Ffind_coding_systems_region_internal):
1494 Cache checked characters.
1495
cf299835
KH
14962009-06-18 Kenichi Handa <handa@m17n.org>
1497
1ac9108a 1498 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 1499
90f20d94
AS
15002009-06-18 Andreas Schwab <aschwab@redhat.com>
1501
1502 * xdisp.c (redisplay_internal): Check that the frame is still
1503 live after redisplay of its windows.
1504 (redisplay_windows): Check that the window is still live.
1505
7f1faf1c
KH
15062009-06-17 Andreas Schwab <schwab@linux-m68k.org>
1507
1508 * coding.c (detect_coding_utf_16): Fix previous change.
1509
cc13543e
KH
15102009-06-16 Kenichi Handa <handa@m17n.org>
1511
1512 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
1513 UTF-16 by checking the dispersion of Eth and Oth bytes.
1514
977b85f4
AS
15152009-06-15 Andreas Schwab <schwab@linux-m68k.org>
1516
1517 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
1518
66bd43d1
KH
15192009-06-15 Kenichi Handa <handa@m17n.org>
1520
1521 * process.c (status_message): Fix previous change. Be sure to
1522 decode a localized string.
1523
cb5ca9c5
YM
15242009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1525
1526 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
1527 add comment explaining why.
1528
ec7709ba 15292009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 1530
ec7709ba 1531 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 1532
4b7f335c
AR
15332009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
1534
1535 * nsfont.m (ns_attribute_value): Remove.
1536 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
1537 (ns_has_attribute): Shrink the normal range.
1538 (ns_findfonts): Don't worry about requested spec in determining
1539 need for synthItal.
e41820ee 1540 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 1541
73b26103
SZ
15422009-06-14 Seiji Zenitani <zenitani@mac.com>
1543
1544 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
1545
5753e4da
KH
15462009-06-11 Kenichi Handa <handa@m17n.org>
1547
1548 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1549 overhang for the static composition case.
1550
3561b671
KH
15512009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1552
5753e4da
KH
1553 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1554 overhang for the automatic composition case.
1555
3561b671
KH
1556 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
1557 composition case.
1558
852bbd41
CY
15592009-06-10 Chong Yidong <cyd@stupidchicken.com>
1560
1561 * xdisp.c (get_next_display_element): When handling wrap-prefix
1562 and line-prefix, treat \n as a control character (bug#3502).
1563
9903d1e6
KH
15642009-06-10 Kenichi Handa <handa@m17n.org>
1565
1566 * font.c (font_parse_family_registry): Fix for one-char foundry.
1567 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
1568
0bcbaaaa
CY
15692009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
1570
1571 * process.c (status_message): Fix handling of multibyte signal
1572 string (Bug#3499).
1573
40aa3f13
JM
15742009-06-09 Jim Meyering <meyering@redhat.com>
1575
1f80c7e2
CY
1576 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
1577 color name is missing.
40aa3f13 1578
72d51285
KH
15792009-06-09 Kenichi Handa <handa@m17n.org>
1580
1581 * charset.c (Fmap_charset_chars): In docstring, state clearly that
1582 FROM-CODE and TO-CODE are codepoints of CHARSET.
1583
c1d04d84
AR
15842009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1585
1586 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
1587
15882009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1589
1590 Changes to support :script/:lang/:otf in NS font driver.
1591 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
1592 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
1593 indicate not part of font driver interface, and change callers.
1594 (ns_get_family): Remove pointless null check.
1595 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
1596 ns_spec_to_descriptor, ns_descriptor_to_entity.
1597 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
1598 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
1599 (ns_spec_to_descriptor, ns_descriptor_to_entity)
1600 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
1601 (ns_get_req_script, ns_accumulate_script_ranges)
1602 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
1603 New functions.
1604 (nsfont_list, nsfont_match): Use ns_findfonts.
1605 (nsfont_open): Use font descriptor instead of traits.
1606 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
1607 (dump_glyphstring): Rename to ns_dump_glyphstring.
1608
c7eb9816
AR
1609 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
1610
c1d04d84
AR
1611 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
1612
1613 * fontset.c (fontset_from_font): Remove NS-specific code.
1614
ec7709ba 16152009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
1616
1617 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
1618 nonactive windows.
1619
31fd7c5c 16202009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 1621
1ac9108a 1622 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 1623
68852c13 16242009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
1625
1626 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
1627
6756cd1d
CY
16282009-06-07 Chong Yidong <cyd@stupidchicken.com>
1629
1630 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
1631 account for the overflowing of newlines into the last glyph on the
1632 display line (Bug#3482).
1633
28bf482a
DR
16342009-06-05 David Reitter <david.reitter@gmail.com>
1635
ec7709ba
JB
1636 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
1637 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
1638 Fns_selection_exists_p, Fns_selection_owner_p.
1639
fdb55376
JR
16402009-06-03 Jason Rumney <jasonr@gnu.org>
1641
1642 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
1643 available. (Bug#3379)
1644
05129fbe
KH
16452009-05-29 Kenichi Handa <handa@m17n.org>
1646
1ac9108a
SM
1647 * coding.c (get_translation_table):
1648 Check Venable_character_translation.
05129fbe 1649
ec7709ba 16502009-05-26 David Reitter <david.reitter@gmail.com>
15891144 1651
ec7709ba
JB
1652 * nsterm.m (ns_raise_frame): Only raise frame if visible.
1653 (x_make_frame_visible): Move frame to front rather than calling
15891144 1654 ns_raise_frame().
ec7709ba 1655 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 1656 isn't key window.
ec7709ba 1657 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
1658 drawRect may be called by NSView even if the frame is hidden.
1659
ec7709ba
JB
1660 * nsfns.m (Fx_create_frame): Follow other ports in
1661 determining visibility; default to t. Ensure async_visible is set.
15891144 1662
21f73755
EZ
16632009-05-23 Eli Zaretskii <eliz@gnu.org>
1664
1665 * dired.c (Ffile_attributes): Doc fix.
1666
34001e41
CY
16672009-05-22 Chong Yidong <cyd@stupidchicken.com>
1668
1669 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
1670
46306a17
SM
16712009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
1672
1673 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
1674 and xfont_scratch_props.
1675 (syms_of_xfont): Do it here instead.
1676 (xfont_find_ccl_program): Delete, unused.
1677 (xfont_open): Delete unused var `i'.
1678
ef6e0694
KH
16792009-05-21 Kenichi Handa <handa@m17n.org>
1680
1681 * fontset.c (Qlatin): Don't make it static.
1682
46306a17
SM
1683 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
1684 New functions.
ef6e0694
KH
1685 (xfont_scripts_cache, xfont_scratch_props): New variables.
1686 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
1687 (xfont_list_pattern): Argument changed. Callers changed.
1688 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
1689 (xfont_list): Don't reject a font spec with :script property.
1690 (xfont_has_char): Fix setting of encoding.
1691 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
1692 xfont_scratch_props.
1693
16942009-05-19 Kenichi Handa <handa@m17n.org>
1695
46306a17 1696 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
1697 Callers changed.
1698
16992009-05-18 Kenichi Handa <handa@m17n.org>
1700
1701 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
1702
ac71ced7
SM
17032009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
1704
1705 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
1706 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
1707
1c6d1051
YM
17082009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1709
1710 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
1711 (x_delete_terminal): Dissociate resource database from display and
1712 then call XrmDestroyDatabase before closing display.
1713
9b9b779c
AR
17142009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1715
1716 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
1717 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
1718 whether selected frame is viable before raising it (based on patch
1719 by David Reitter), and improve commentary.
1720 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 1721
cccd42d5
KH
17222009-05-15 Kenichi Handa <handa@m17n.org>
1723
1724 * font.c (Ffont_spec): Check arguments.
1725
337fbd17
CY
17262009-05-14 Chong Yidong <cyd@stupidchicken.com>
1727
1728 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
1729 weight when testing attributes (Bug#3282).
1730
47a6002f
JD
17312009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1732
1733 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
1734 what we expect to get in the next ConfigureNotify event.
1735
9cb363db
YM
1736 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
1737 before Xft one (Bug#1696).
1738
b9126609
CY
17392009-05-07 David Reitter <david.reitter@gmail.com>
1740
1741 * nsfns.m (Fx_display_planes): Compute bitplanes using
1742 NSBitsPerPixelFromDepth (Bug#3207).
1743
27a69fd9
CY
17442009-05-10 Chong Yidong <cyd@stupidchicken.com>
1745
1746 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
1747
00f37552
TTN
17482009-05-10 Ulrich Mueller <ulm@gentoo.org>
1749
1750 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
1751
2d82a920
DR
17522009-05-07 David Reitter <david.reitter@gmail.com>
1753
ec7709ba
JB
1754 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
1755 Respect mouse face background.
2d82a920 1756
46b0d52d
DR
17572009-05-07 David Reitter <david.reitter@gmail.com>
1758
ec7709ba
JB
1759 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
1760 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
1761 in ns_update_begin and ns_update_end.
1762
ce1b23bb
SM
17632009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1764
5996e1b7
SM
1765 * nsfns.m (ns_get_screen): Rewrite.
1766 Don't presume selected-frame is of type `ns'.
1767
ba98e3a0
SM
1768 * font.c (font_update_drivers): Sanity fallback to avoid disabling
1769 all drivers.
1770
ce1b23bb
SM
1771 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
1772
bcda200f
YM
17732009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1774
1775 * keyboard.h (add_user_signal): Fix typo in extern.
1776
1777 * lisp.h (add_user_signal): Remove extern.
1778
1779 * unexelf.c (unexec): Consider a section to precede the .bss section
1780 if its addresses overlap that of .bss.
1781 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
1782 instead of dumping process.
1783
864660a2
SM
17842009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1785
1786 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
1787
50da4e56
SM
17882009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
1789
1790 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
1791
51520a1a
DN
17922009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1793
1794 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
1795 any statements.
1796
409ea3a1
AS
17972009-05-02 Andreas Schwab <schwab@linux-m68k.org>
1798
59c4c60f
AS
1799 * process.c (read_process_output): Make sure the current buffer is
1800 always restored.
1801
409ea3a1
AS
1802 * coding.c (record_conversion_result): Don't modify
1803 Vlast_code_conversion_error for successful result.
1804 (alloc_destination): Don't clobber conversion result. (Bug#1650)
1805
56f00ed2
KH
18062009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1807
1808 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 1809 (load_charset_map): Remove unnecessary code.
56f00ed2 1810
4491c9d2
DR
18112009-04-30 David Reitter <david.reitter@gmail.com>
1812
35f5b128 1813 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
1814 through f24.
1815
6970f632
CY
18162009-04-30 Chong Yidong <cyd@stupidchicken.com>
1817
1818 * xfaces.c (face_at_buffer_position): New arg base_face_id.
1819
1820 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
1821 face_at_buffer_position.
1822 (face_before_or_after_it_pos, get_next_display_element)
1823 (note_mouse_highlight): Update face_at_buffer_position call.
1824
1825 * term.c (term_mouse_highlight):
1826 * msdos.c (IT_note_mouse_highlight):
1827 * fontset.c (Finternal_char_font):
35f5b128 1828 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
1829
1830 * dispextern.h (face_at_buffer_position): Update prototype.
1831
0c616f63
KH
18322009-04-30 Kenichi Handa <handa@m17n.org>
1833
35f5b128 1834 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 1835
ad3aaf33
AS
18362009-04-29 Andreas Schwab <schwab@linux-m68k.org>
1837
1838 * callproc.c (Fcall_process): Fix GC protection. Make sure
1839 current buffer is always restored.
1840
c3c963a0
YM
18412009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1842
1843 * atimer.c (init_atimer): Also clear stopped_atimers.
1844
1845 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
1846
7e3386cb
YM
1847 * process.c (create_process): Clean up merger residues of
1848 2008-07-17 change.
1849
91f68422
CY
18502009-04-29 Ulrich Mueller <ulm@gentoo.org>
1851
1852 * lread.c (Vread_circle): New variable.
1853 (read1): Disable recursive read if Vread_circle is nil.
1854
24b34550
KH
18552009-04-29 Kenichi Handa <handa@m17n.org>
1856
1857 * fontset.h (set_default_ascii_font): Delete extern.
1858
1859 * fontset.c (set_default_ascii_font): Delete this unused function.
1860
1861 * frame.c (x_set_font): When ARG is a font-object, check if the
1862 font-object matches with the ASCII font-spec of the frame's
9c358bda 1863 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 1864
77bf07e1
AS
18652009-04-28 Andreas Schwab <schwab@linux-m68k.org>
1866
1867 * fns.c (Flocale_info): Protect vector from GC during decoding.
1868
1869 * process.c (Fstart_process): Protect argv strings from GC during
1870 encoding.
1871
2c55aacf
AS
18722009-04-27 Andreas Schwab <schwab@linux-m68k.org>
1873
1874 * sysdep.c: Include <ctype.h>.
1875
b892d3c9
DR
18762009-04-27 David Reitter <david.reitter@gmail.com>
1877
35f5b128 1878 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
1879 Remove commented-out code.
1880
9d0644c4
JB
18812009-04-26 Johan Bockgård <bojohan@gnu.org>
1882
1883 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1884
b7053016
JR
18852009-04-25 Jason Rumney <jasonr@gnu.org>
1886
1887 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
1888
4e8231f3
YM
18892009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1890
1891 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
1892 Swap bytes in short integer if fringe bitmap width > 8.
1893
493dcf2c
KH
18942009-04-23 Kenichi Handa <handa@m17n.org>
1895
1896 * xfaces.c (Fx_list_fonts): If a font size is specified in
1897 PATTERN, set it in returned scalable fonts.
1898
401e9e57
CY
18992009-04-22 Chong Yidong <cyd@stupidchicken.com>
1900
708e05dc
CY
1901 * keyboard.c (Fset_input_meta_mode): Doc fix.
1902
1903 * dispnew.c (Fsend_string_to_terminal): Doc fix.
1904
1ac9108a 1905 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
1906
1907 * coding.c (Fterminal_coding_system): Doc fix.
1908
1909 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
1910 (Fx_display_pixel_height, Fx_display_planes)
1911 (Fx_display_color_cells, Fx_server_max_request_size)
1912 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1913 (Fx_display_mm_height, Fx_display_mm_width)
1914 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
1915 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
1916 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
1917 (check_x_display_info): Handle terminal objects instead of
1918 terminal ids.
1919
401e9e57
CY
1920 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
1921 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
1922 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
1923 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 1924
df80c7f0
KH
19252009-04-21 Kenichi Handa <handa@m17n.org>
1926
5a8f12af 1927 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 1928 (font_score): Check AVGWIDTH too.
908567ef 1929
df80c7f0
KH
1930 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
1931 worst case.
1ac9108a
SM
1932 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
1933 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 1934
705af33f
JR
19352009-04-19 Jason Rumney <jasonr@gnu.org>
1936
1937 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 1938 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
1939
1940 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
1941 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
1942 get_phys_cursor_geometry.
1943
b71ac3dd 1944 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
1945 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
1946 using get_phys_cursor_geometry.
1947
1948 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
1949 correctly calculated.
1950
dc2933eb
JD
19512009-04-19 Jan Djärv <jan.h.d@swipnet.se>
1952
1ac9108a
SM
1953 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
1954 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
1955 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
1956 is deprecated.
1957
973e7849
AS
19582009-04-18 Andreas Schwab <schwab@linux-m68k.org>
1959
1960 * font.c (font_put_frame_data): Use xfree instead of free.
1961
314d66f4
JB
19622009-04-17 Juanma Barranquero <lekktu@gmail.com>
1963
1964 * w32font.c (Qja, Qko): Remove declarations.
1965 (syms_of_w32font): Don't DEFSYM them.
1966
cf702558
CY
19672009-04-17 Chong Yidong <cyd@stupidchicken.com>
1968
1969 * font.c (Qja, Qko): Move definitions here from ftfont.c.
1970
1971 * font.h (Qja, Qko): Extern them.
1972
1973 * ftfont.c (Qja, Qko): Remove declarations.
1974
1975 * xfont.c (Qja, Qko): Remove declarations.
1976
b50504f5
KH
19772009-04-17 Kenichi Handa <handa@m17n.org>
1978
bde25748
KH
1979 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
1980 string from a vector to handle Latin-1 characters correctly.
1981
b50504f5
KH
1982 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
1983 entity even if the cache hits.
1984
f4646fff
AS
19852009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1986
1987 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 1988 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 1989
e7deaab0
AS
1990 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
1991 * lisp.h: Adjust prototypes.
1992
0a0e7d49
CY
19932009-04-16 Chong Yidong <cyd@stupidchicken.com>
1994
1995 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
1996 change (Bug#3003).
1997
3c908a57
KH
19982009-04-16 Kenichi Handa <handa@m17n.org>
1999
1ac9108a 2000 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
2001
2002 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
2003 adstyle.
2004
2005 * ftfont.c (Qja, Qko): Don't make them static.
2006 (enum ftfont_cache_for): New enum.
2007 (fc_charset_table): Undo the previous change.
2008 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
2009 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
2010 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
2011 non-scarable font, try to get AVERAGE_WIDTH.
2012 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
2013 Change ft_face_cache from a list of a hash-table. Don't check
2014 `ja' and `ko' adstyle here.
2015 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
2016 FTFONT_CACHE_FOR_CHARET.
2017 (ftfont_get_charset): Undo the previous change.
1ac9108a 2018 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
2019 (ftfont_close): Likewise.
2020 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
2021
2022 * font.c (font_sort_entites): Change the meaning of the arg
2023 BEST-ONLY. Don't optimize for VEC of lenght 1.
2024 (font_select_entity): Just return the value of font_sort_entites.
2025
2026 * xfaces.c (merge_face_vectors): Reflect font properties in
2027 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
2028 font_clear_prop if a face attribute doesn't change.
2029
3c908a57
KH
2030 * charset.h (charset_ksc5601): Extern it.
2031
2032 * charset.c (charset_ksc5601): New variable.
2033 (Fdefine_charset_internal): Set charset_ksc5601.
2034 (init_charset_once): Initialize charset_ksc5601 to -1.
2035
d65859c3
DN
20362009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2037
2038 * fileio.c (history_delete_duplicates): Remove unused declaration.
2039
2040 * callint.c (history_delete_duplicates): New declaration.
2041 (Fcall_interactively): Remove command history duplicates when
2042 history_delete_duplicates is true.
2043
3ba010e5
EZ
20442009-04-14 Eli Zaretskii <eliz@gnu.org>
2045
2046 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
2047
06f19b91
KH
20482009-04-14 Kenichi Handa <handa@m17n.org>
2049
2050 * font.c (Ffont_info): Fix docstring. Fix the second element of
2051 the returned value (bug#2949).
2052
2cce8bfc
CY
20532009-04-14 Chong Yidong <cyd@stupidchicken.com>
2054
2055 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
2056
d156542d
KH
20572009-04-14 Kenichi Handa <handa@m17n.org>
2058
2059 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
2060 encoding charset is ascii_compatible.
2061
2062 * charset.c (Fdefine_charset_internal): Make charset
2063 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
2064 code_offset is 0, and covers all ASCII characters.
2065
86fa089e
SM
20662009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2067
2068 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
2069 (ns_string_to_pasteboard_internal):
2070 * nsmenu.m (process_dialog):
2071 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
2072 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
2073 * lisp.h (Fx_load_color_file): Declare.
2074
a8a3728b
KH
20752009-04-13 Kenichi Handa <handa@m17n.org>
2076
1ac9108a 2077 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
2078 (font_select_entity): Suppress the code to optimize for the same
2079 kind of fonts.
2080 (font_load_for_lface): Get a font that supports at least ASCII
2081 characters.
2082
2083 * ftfont.c (Qja, Qko): New variables.
2084 (fc_charset_table): Delete uniquifier data for iso8859-1.
2085 (ftfont_get_latin1_charset): New function.
2086 (get_adstyle_property): New function.
2087 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
2088 bitmap fonts.
2089 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
2090 Delete iso-8859-1 range from the charset of fonts whose adstyle is
2091 `ko' or `ja'.
2092 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 2093 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
2094 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
2095 property.
2096 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
2097 (syms_of_ftfont): DEFSYM Qja and Qko.
2098
483670b5
KH
20992009-04-09 Kenichi Handa <handa@m17n.org>
2100
12b55765
KH
2101 * charset.c (map_charset_chars): For a charset of `superset'
2102 method, fix calculation of code range.
2103
483670b5
KH
2104 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
2105 from the list of extra properties.
2106 (font_clear_prop): Be sure to delete `:name' font property.
2107
57d3b93b
KH
21082009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2109
b4b2c2ca
YM
2110 * dispnew.c (redraw_overlapping_rows): Fix detection of
2111 overlapping for topmost and bottommost rows.
2112
1ac9108a 2113 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 2114
472c3609
JR
21152009-04-06 Jason Rumney <jasonr@gnu.org>
2116
2117 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
2118
ab193662
KH
21192009-04-06 Kenichi Handa <handa@m17n.org>
2120
2121 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
2122
2123 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
2124
0c26f026
KH
21252009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2126
2127 * ftfont.c (ftfont_open): Fix checking of the return value of
2128 FT_Load_Char. Fix setting font->underline_thickness.
2129
e173bbce
CY
21302009-04-04 Chong Yidong <cyd@stupidchicken.com>
2131
2132 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
2133 (Fterminal_parameters, Fterminal_parameter)
2134 (Fset_terminal_parameter): In doc string, refer to terminal
2135 objects rather than terminal ids.
2136
693a2698
EZ
21372009-04-04 Eli Zaretskii <eliz@gnu.org>
2138
2139 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
2140 ret_lim_data. (Bug#2867)
2141
d5221487
CY
21422009-04-03 Chong Yidong <cyd@stupidchicken.com>
2143
2144 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
2145 so they don't get wider than the window, matching 2006-01-23
2146 change to the partner function in xdisp.c (Bug#2800).
2147
223509a3
KH
21482009-04-03 Kenichi Handa <handa@m17n.org>
2149
2150 * print.c (print_object): Make each lowest sub_char_table start a
2151 new line (Bug#2866).
2152
74fcd0b1
KH
21532009-04-02 Kenichi Handa <handa@m17n.org>
2154
2155 * fontset.c (fontset_font): Record no-font when a fontset
2156 explicitly tells not to try another font-specs.
2157
c542407d
SM
21582009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
2159
2160 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
2161
e3869731
KH
21622009-03-30 Kenichi Handa <handa@m17n.org>
2163
d8d2f142
KH
2164 * fontset.c (fontset_from_font): Specify only registry in a
2165 font-spec for all characters supported by that registry.
2166
e3869731
KH
2167 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
2168 even if HAVE_M17N_FLT is not defined.
2169
5da5f805
CY
21702009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
2171
2172 * ftfont.c: Conditionalize prototyping and use of
2173 ftfont_variation_glyphs.
2174
ab226c50
SM
21752009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2176
9628fed7
SM
2177 * frame.c (delete_frame): Work around compiler bug.
2178
2179 * editfns.c (general_insert_function): Adjust to insdel.c changes.
2180 * insdel.c (prepare_to_modify_buffer, signal_before_change):
2181 Some more EMACS_INT.
2182 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
2183
2184 * xdisp.c (dump_glyph): Fix typo.
2185
ae19ba7c
SM
2186 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
2187 (adjust_markers_gap_motion, adjust_markers_for_delete)
2188 (adjust_markers_for_insert, adjust_point)
2189 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
2190 (make_gap, copy_text, count_size_as_multibyte, insert)
2191 (insert_and_inherit, insert_before_markers)
2192 (insert_before_markers_and_inherit, insert_1)
2193 (count_combining_before, count_combining_after, insert_1_both)
2194 (insert_from_string, insert_from_string_before_markers)
2195 (insert_from_string_1, insert_from_gap, insert_from_buffer)
2196 (insert_from_buffer_1, adjust_after_replace)
2197 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
2198 (replace_range_2, del_range, del_range_1, del_range_byte)
2199 (del_range_both, del_range_2, modify_region)
2200 (prepare_to_modify_buffer, signal_before_change)
2201 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
2202 for buffer positions and sizes.
2203 * lisp.h: Adjust prototypes accordingly.
2204
2205 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
2206 (non_regular_inserted, non_regular_nbytes, read_non_regular)
2207 (Finsert_file_contents): Use EMACS_INT for buffer positions.
2208
ab226c50
SM
2209 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
2210
46dfb8fb
JD
22112009-03-27 Jan Djärv <jan.h.d@swipnet.se>
2212
2213 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
2214 lines and columns so we keep the same pixel height and width.
2215
2216 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
2217 the property _NET_WM_STATE has changed.
46dfb8fb
JD
2218 (x_handle_net_wm_state): New function to update frame parameter
2219 fullscreen.
2220 (x_term_init): Initialize atoms for _NET_WM_STATE.
2221
2222 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
2223
d347e494
SM
22242009-03-27 Kevin Ryde <user42@zip.com.au>
2225
2226 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
2227 Gpm_GetEvent as an error that justifies closing the filedescriptor.
2228 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
2229 (Fgpm_mouse_stop): Pass that new parameter.
2230 * termhooks.h (close_gpm): Adjust prototype.
2231
84db11d6
SM
22322009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
2233
c95a5008
SM
2234 * lisp.h (Fx_focus_frame): Declare.
2235
84db11d6
SM
2236 * callint.c (Fcall_interactively): For '^' just delegate the work to
2237 handle-shift-selection.
2238 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
2239
0a1958d6
CY
22402009-03-24 Chong Yidong <cyd@stupidchicken.com>
2241
0bfdff23
CY
2242 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
2243
0a1958d6
CY
2244 * data.c (Qinteractive_form): New variable.
2245 (Finteractive_form): Use it.
2246
2247 * eval.c (Fcommandp): Use Qinteractive_form.
2248
58aec0d6
JR
22492009-03-24 Jason Rumney <jasonr@gnu.org>
2250
2251 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
2252 Calculate total size precisely. Decode environment variables
2253 before substituting. (Bug#38)
2254
553dd618
KH
22552009-03-24 Kenichi Handa <handa@m17n.org>
2256
2257 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 2258 encoding (Bug#2722).
553dd618 2259
c39ea606
JD
22602009-03-23 Jan Djärv <jan.h.d@swipnet.se>
2261
2262 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
2263 that gdpy is set.
2264
bc9b2b5e
AM
22652009-03-22 Alan Mackenzie <acm@muc.de>
2266
2267 * callint.c (Finteractive): Clarify the doc string - even
2268 promptless elements need \n separators.
2269
9f995a76
JR
22702009-03-22 Jason Rumney <jasonr@gnu.org>
2271
2272 * w32term.c (syms_of_w32term): Doc fix for
2273 x-use-underline-position-properties.
2274
22749e9a
EZ
22752009-03-21 Eli Zaretskii <eliz@gnu.org>
2276
2277 * w32.c (getpwuid): Change argument type to unsigned.
2278 (struct w32_id): Change type of `rid' member to unsigned.
2279 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
2280 argument ID to unsigned. All callers changed.
2281 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
2282
e00553bf
EZ
22832009-03-20 Eli Zaretskii <eliz@gnu.org>
2284
2285 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
2286 negative, produce a float value.
2287
2288 * dired.c (make_uid, make_gid): New functions.
2289 (Ffile_attributes): Use them to avoid negative UID and GID.
2290
f761d6b6
JB
22912009-03-20 Juanma Barranquero <lekktu@gmail.com>
2292
2293 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
2294 (syms_of_keyboard) <command-hook-internal, input-method-function>:
2295 Fix typos in docstrings.
2296
d507f8d7
KH
22972009-03-19 Kenichi Handa <handa@m17n.org>
2298
2299 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
2300 changed, use font_load_for_lface to get a new font object.
2301 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
2302
2303 * frame.c (x_set_font): Handle the case that ARG is a cons.
2304
c68845e0
GM
23052009-03-19 Glenn Morris <rgm@gnu.org>
2306
2307 * fileio.c (Fsubstitute_in_file_name): Doc fix.
2308
bfa49dd1
CY
23092009-03-19 Chong Yidong <cyd@stupidchicken.com>
2310
2311 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
2312
8458d4c1
KH
23132009-03-19 Kenichi Handa <handa@m17n.org>
2314
2315 * charset.c (load_charset_map_from_file): When a mapfile can't be
2316 loaded, signal an error.
2317
78e7d1fe
EZ
23182009-03-18 Eli Zaretskii <eliz@gnu.org>
2319
2320 * dired.c (Ffile_attributes): Make sure UID and GID are always
2321 positive, even if the value is too large for a positive EMACS_INT.
2322 Doc fix.
2323
2324 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
2325
5da9fdfa
YM
23262009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2327
2328 * xmenu.c (xdialog_show): Move Fredisplay call ...
2329 (Fx_popup_dialog): ... here.
2330
7519c40d
SM
23312009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
2332
2333 * dired.c (file_name_completion): Disable the first optimization just
2334 installed, since it is not implemented correctly.
2335
2cd298e2
SM
23362009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2337
2338 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 2339 only if the entry can affect bestmatch.
2cd298e2
SM
2340 Stop the search early, as Ftry_completion already does.
2341
48d37adf
CY
23422009-03-17 Chong Yidong <cyd@stupidchicken.com>
2343
e10c9c93 2344 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 2345
9286b16a
CY
23462009-03-15 Chong Yidong <cyd@stupidchicken.com>
2347
2348 * keyboard.c (parse_menu_item): Don't display remappings as menu
2349 equivalent bindings (Bug#788).
2350
f7b146dc
JR
23512009-03-15 Jason Rumney <jasonr@gnu.org>
2352
2353 * w32term.h (WM_EMACS_PAINT): New message.
2354 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
2355 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
2356 before passing to lisp thread. (Bug#950)
2357
f761d6b6 23582009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 2359
d93f9575
CY
2360 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
2361 variable as it was never reset.
2362 (ns_term_init): Remove initialization of Lisp-settable defaults
2363 and ns_expand_space.
2364 (-setPanelFromDefaultValues): Remove ns_expand_space.
2365 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
2366 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
2367 i.e. no additional spacing, similar to Carbon port.
2368
d93f9575
CY
2369 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
2370 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 2371
305018ec
JD
23722009-03-14 Jan Djärv <jan.h.d@swipnet.se>
2373
2374 * sound.c (alsa_configure): Remove call to deprecated
2375 snd_pcm_sw_params_set_xfer_align.
2376
f761d6b6 23772009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
2378
2379 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
2380 after clicking in a detached tool bar.
2381 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
2382
46e722a9
SM
23832009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
2384
348db3dd
SM
2385 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
2386 int/Lisp_Object mixup).
46e722a9 2387
a3d16f39
KH
23882009-03-13 Kenichi Handa <handa@m17n.org>
2389
2390 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 2391 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
2392 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
2393 (set_fontset_font): Change ARG to a vector. Handle range_list in
2394 ARG correctly.
2395 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 2396 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
2397 the above change.
2398 (fontset_from_font): Fix previous change.
fe24f56a 2399 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
2400 entry. If FONTSET is the default fontset, don't set the extra
2401 slot of the returning char-table.
2402
b066e6b6
JB
24032009-03-12 Juanma Barranquero <lekktu@gmail.com>
2404
2405 * nsfns.m (Fx_close_connection): Doc fix.
2406 (Fns_do_applescript): Reflow docstring.
2407 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
2408 (Fx_display_pixel_width, Fx_display_pixel_height)
2409 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
2410 Fix typos in docstrings.
2411 (Fns_set_alpha): Fix typos in error messages.
2412
d472514e 24132009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 2414
d472514e 2415 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
2416 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
2417 were used for such events.
2418
d472514e
JB
2419 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
2420 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 2421
d472514e 2422 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
2423 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
2424
fb930676
KH
24252009-03-11 Kenichi Handa <handa@m17n.org>
2426
ff85581a
KH
2427 * font.h (font_open_by_spec): Extern it.
2428
c50b7e98
KH
2429 * font.c (font_open_by_spec): New function.
2430 (font_open_by_name): Use font_open_by_spec.
2431
fb930676
KH
2432 * frame.c (x_set_font): When ARG is a font-object, don't alter the
2433 fontset of the frame.
2434
2435 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
2436 modify the default font of frames that use this fontset.
2437 (num_auto_fontsets): New variable.
2438 (fontset_from_font): Use num_auto_fontsets to decide a fontset
2439 name. Be sure to set FONTSET_ASCII to the correct font name.
2440 (update_auto_fontset_alist): New function.
2441
df4e8455
JB
24422009-03-11 Juanma Barranquero <lekktu@gmail.com>
2443
2444 * makefile.w32-in: Update dependencies.
2445
0a375797
AR
24462009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2447
2448 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
2449
61313fa3
SM
24502009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2451
2452 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
2453
b55103fb
CY
24542009-03-10 Chong Yidong <cyd@stupidchicken.com>
2455
2456 * lread.c (Feval_buffer): Doc fix.
2457
dde2559c
KH
24582009-03-09 Kenichi Handa <handa@m17n.org>
2459
2460 * charset.c (Qfile_name_handler_alist): Extern it.
2461 (load_charset_map_from_file): Temporarily bind
2462 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
2463
df4e8455 24642009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 2465
47f588bb
GM
2466 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
2467 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 2468
4ddf94bd
AR
24692009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2470
4c9bdfc2
AR
2471 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
2472 (x_set_window_size): Change back to calculated method of setting
2473 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
2474 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
2475 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
2476
fe41ae9e
AR
2477 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
2478
4c9bdfc2
AR
2479 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
2480 accelerator in parens under GNUstep.
2481
825d0875
KH
24822009-03-06 Kenichi Handa <handa@m17n.org>
2483
2484 These changes are to detect incorrect composition sequence without
f3b3be74 2485 looking ahead the source. (Bug#2370)
825d0875
KH
2486
2487 * coding.h: Include "composite.h".
2488 (enum compisition_state): New enum.
2489 (struct compisition_status): New struct.
2490 (struct iso_2022_spec): New member cmp_status.
2491 (struct emacs_mule_spec): New struct.
2492 (struct coding_system): New members ctext_extended_segment_len and
2493 embedded_utf_8. Change the union member
2494 spec.emacs_mule_full_support to spec.emacs_mule.
2495
2496 * coding.c (CODING_ISO_CMP_STATUS): New macro.
2497 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 2498 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
2499 (ADD_COMPOSITION_DATA): New arg nbytes.
2500 (emacs_mule_char): New arg cmp_status.
2501 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
2502 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
2503 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
2504 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
2505 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
2506 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
2507 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
2508 (EMACS_MULE_COMPOSITION_END): New macro.
2509 (emacs_mule_finish_composition): New function.
2510 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
2511 (decode_coding_emacs_mule): Avoid long looking ahead while
2512 handling composition.
2513 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
2514 (ENCODE_COMPOSITION_RULE): New macro.
2515 (finish_composition): New function.
2516 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
2517 (DECODE_COMPOSITION_START): New implementation.
2518 (DECODE_COMPOSITION_END): Likewise.
2519 (STORE_COMPOSITION_RULE): New macro.
2520 (decode_coding_iso_2022): Avoid long looking ahead while handling
2521 composition, CTEXT extended segment, and embedded UTF-8.
2522 (setup_coding_system): For a coding of type iso-2022, reset
2523 CODING_ISO_EXTSEGMENT_LEN (coding) and
2524 CODING_ISO_EMBEDDED_UTF_8 (coding).
2525 (get_translation): Delete arguments last_block, from_nchars,
2526 to_nchars. Callers changed.
2527 (produce_chars): Don't modify charbuf. Adjusted for the change of
2528 get_translation.
98a326f7 2529 (produce_composition): Adjust for the new annotation sequence.
825d0875 2530 (handle_composition_annotation): Likewise.
98a326f7 2531 (consume_chars): Adjust for the change of get_translation.
825d0875 2532
ccbc4452
AR
25332009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
2534
4ddf94bd 2535 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 2536
988a7ddb
KH
25372009-03-05 Kenichi Handa <handa@m17n.org>
2538
2539 * font.c (font_select_entity): New function.
2540 (font_find_for_lface): Use font_select_entity to select a font.
2541
2542 * fontset.c (fontset_find_font): If a font found without
a8a3728b 2543 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
2544 font with C restriction.
2545
98a326f7 25462009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 2547
be1bce46 2548 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 2549
10ea2b82
JR
25502009-03-04 Jason Rumney <jasonr@gnu.org>
2551
2c93b248 2552 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 2553 characters that have already been read. (Bug#2569)
2c93b248 2554
10ea2b82
JR
2555 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
2556 Log an error message if check_image_size failed.
2557 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 2558 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 2559
71a0c011
EZ
25602009-03-02 Eli Zaretskii <eliz@gnu.org>
2561
2562 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
2563 when decoding process output.
2564
2f63bba8
RS
25652009-03-01 Richard M Stallman <rms@gnu.org>
2566
2567 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
2568
2569 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
2570
0a9564cb
EZ
25712009-02-28 Eli Zaretskii <eliz@gnu.org>
2572
2573 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
2574 (decode_coding_emacs_mule, decode_coding_iso_2022)
2575 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2576 (decode_coding_raw_text, decode_coding_charset)
2577 (setup_coding_system, decode_eol, decode_coding, consume_chars):
2578 Honor inhibit-eol-conversion. (Bug #2186)
2579
449148b3
JR
25802009-02-28 Jason Rumney <jasonr@gnu.org>
2581
2582 * coding.c (detect_coding_charset): If not checking latin extra,
2583 fail on characters between 0x80 and 0xA0. (Bug#2354)
2584
a4aee864
EZ
25852009-02-28 Eli Zaretskii <eliz@gnu.org>
2586
2587 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 2588 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 2589
d88bee5a
GM
25902009-02-27 Glenn Morris <rgm@gnu.org>
2591
2592 * callint.c (Finteractive): Doc fix.
2593
a808f22d
KH
25942009-02-27 Kenichi Handa <handa@m17n.org>
2595
2596 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
2597
caf8d60c
CY
25982009-02-27 Chong Yidong <cyd@stupidchicken.com>
2599
2600 * font.c (font_style_to_value): Set value for unknown symbols to
2601 100 instead of 255.
b61137ea
CY
2602 (weight_table, slant_table, width_table): Treat "unspecified" as
2603 the default value.
caf8d60c 2604
1a0de25c
JB
26052009-02-26 Juanma Barranquero <lekktu@gmail.com>
2606
2607 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
2608
8fc45744
JB
26092009-02-25 Juanma Barranquero <lekktu@gmail.com>
2610
107bd7d1
JB
2611 * lread.c (Fload): Stop checking Vloads_in_progress and signal
2612 error as soon as a recursive load is detected.
8fc45744 2613
f097e223
AR
26142009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2615
2616 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
2617 before caching.
2618
8810a12f
KH
26192009-02-24 Kenichi Handa <handa@m17n.org>
2620
2621 * fontset.c (fontset_find_font): Fix the condition for checking
2622 unavailable font.
2623
2c7d1565
GM
26242009-02-24 Glenn Morris <rgm@gnu.org>
2625
2626 * xfaces.c (Finternal_set_font_selection_order): Remove leading
2627 whitespace that confuses documentation.
2628
a20878b6
MB
26292009-02-23 Miles Bader <miles@gnu.org>
2630
2631 * process.c (Flist_system_processes, Fprocess_attributes)
2632 (syms_of_process): Rename `system-process-attributes' to
2633 `process-attributes'.
2634
b3b58c01
AS
26352009-02-22 Andreas Schwab <schwab@linux-m68k.org>
2636
1b3b981b
AS
2637 * coding.h (struct coding_system): Make safe_charsets a pointer to
2638 unsigned char.
2639 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
2640 being 255.
2641 (SAFE_CHARSET_P): Likewise.
2642 (setup_iso_safe_charsets): Properly setup safe_charsets.
2643 (Fdefine_coding_system_internal): Likewise.
2644 (setup_coding_system): Likewise. Remove unneeded casts.
2645 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
2646 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
2647 unneeded casts.
2648
b3b58c01
AS
2649 * insdel.c (del_range_2): Don't modify gap contents when called
2650 from decode_coding_object. (Bug#1809)
2651
0b6f228c
CY
26522009-02-21 Chong Yidong <cyd@stupidchicken.com>
2653
2654 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
2655 Qfont_object.
2656 (Ftype_of): Recognize font objects.
2657
2658 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
2659
2660 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
2661 moved to data.c.
2662
52f8870b
AR
26632009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2664
2665 * nsterm.m (x_make_frame_invisible): Unset async_visible,
2666 async_iconified. Based on a patch by Christian Lynbech
2667 <christian.lynbech@tieto.com>.
2668 (EmacsView-windowDidMiniaturize:): Unset async_visible.
2669
7087d5e9
GM
26702009-02-20 Glenn Morris <rgm@gnu.org>
2671
2672 * syntax.c (Fskip_chars_forward): Fix doc typo.
2673
41d2ceef
CY
26742009-02-20 Chong Yidong <cyd@stupidchicken.com>
2675
2676 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
2677
1a3b7ca6
CY
26782009-02-19 Chong Yidong <cyd@stupidchicken.com>
2679
2680 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
2681
73cce38d
KH
26822009-02-19 Kenichi Handa <handa@m17n.org>
2683
2684 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 2685 Don't overflow coding->carryover. (Bug#2370)
73cce38d 2686
a51092ee
DN
26872009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
2688
2689 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
2690
c423ecca
KH
26912009-02-18 Kenichi Handa <handa@m17n.org>
2692
2693 * font.c (font_check_otf_features): Fix handling of `nil' element.
2694 (Ffont_spec): Describe :lang and :otf in the docstring.
2695
4c1958f4
AS
26962009-02-16 Andreas Schwab <schwab@suse.de>
2697
2698 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
2699 string.
2700
5704f39a
KH
27012009-02-16 Kenichi Handa <handa@m17n.org>
2702
2703 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 2704 (Bug#1723)
5704f39a 2705
8f0085aa
CY
27062009-02-14 Chong Yidong <cyd@stupidchicken.com>
2707
a057d86a 2708 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
2709
2710 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
2711 (handle_line_prefix): Suppress wrapping of wrap prefixes.
2712
aff01dd9
EZ
27132009-02-14 Eli Zaretskii <eliz@gnu.org>
2714
2715 * msdos.c (MAX_SCREEN_BUF): New macro.
2716 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
2717 Encode the entire run of glyphs sharing the same face, instead of
2718 doing that one glyph at a time (fixes a bug with displaying
2719 double-size characters).
2720
ba301db3
AR
27212009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
2722
2723 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
2724
2725 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
2726 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 2727 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
2728
2729 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 2730 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 2731
51d861de
SM
27322009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
2733
2734 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
2735 invisible areas.
2736
7fed8996
JR
27372009-02-12 Jason Rumney <jasonr@gnu.org>
2738
631ea4fb
JR
2739 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
2740 (add_font_entity_to_list): Call check_face_name even when family
2741 is unspecified.
2742
cb4a3e42
JR
2743 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2744 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 2745 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 2746
7fed8996 2747 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 2748 raster fonts. (Bug#2219)
7fed8996 2749
895416e3
KH
27502009-02-12 Kenichi Handa <handa@m17n.org>
2751
2752 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
2753 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
2754 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 2755 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2756 (find_automatic_composition): While looking forward and backward,
2757 check static composition. Fix where to stop looking forward.
2758 (composition_adjust_point): Fix checking of static composition.
2759 (Fcomposition_get_gstring): Pay attention to
1dacf998 2760 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2761
2762 * lisp.h (fast_looking_at): Extern it.
2763
2764 * search.c (fast_looking_at): New function.
2765
51d861de 2766 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
2767 <struct glyph>.u.cmp.to.
2768 (append_composite_glyph): Likewise.
2769
51d861de 2770 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
2771 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
2772 composition.
51d861de 2773 (append_composite_glyph): Adjust for the change of
895416e3
KH
2774 <strcut glyph>.u.cmp.to.
2775
8510724d
JB
27762009-02-11 Juanma Barranquero <lekktu@gmail.com>
2777
2778 * casetab.c (init_casetab_once):
2779 * coding.c (ALLOC_CONVERSION_WORK_AREA):
2780 * font.c (font_update_lface):
2781 * fontset.c (Fnew_fontset):
2782 * ftfont.c (ftfont_drive_otf):
2783 * xfont.c (xfont_open):
2784 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
2785
294fa707
SM
27862009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
2787
2788 * fileio.c (Fwrite_region): !NILP -> CONSP.
2789
b5bfebec
AS
27902009-02-10 Andreas Schwab <schwab@suse.de>
2791
2792 * process.c (send_process): Properly relocate pointer into data
adab88bd 2793 when using encoded data. (Bug#2272)
b5bfebec 2794
cb84a2be
KH
27952009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
2796
2797 * coding.c (detect_coding_charset): Fix previous change.
2798
89e09428
JR
27992009-02-08 Jason Rumney <jasonr@gnu.org>
2800
2801 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 2802 disappeared while hourglass was displayed. (Bug #2193)
89e09428 2803
4470a277
AS
28042009-02-07 Andreas Schwab <schwab@suse.de>
2805
2806 * unexelf.c (unexec): Fix error message.
2807
3175b12a
AR
28082009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
2809
2810 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 2811 when modal window is active. (Bug #2152)
3175b12a
AR
2812 (applicationShouldTerminate:): Remove now-unneeded while loop
2813 around NSRunAlertPanel.
2814
2815 * nsmenu.m (popupSession): New file-global variable.
2816 (pop_down_menu): End the popupSession before closing dialog.
2817 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
2818 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
2819 don't query NSApp for events (just sleep instead).
2820
8434d0b8
EZ
28212009-02-07 Eli Zaretskii <eliz@gnu.org>
2822
51d861de
SM
2823 * coding.c (syms_of_coding) <translation-table-for-input>:
2824 Modify doc string to discourage use for character code unification.
8434d0b8 2825
aa82edfd
CY
28262009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2827
2828 * atimer.c (run_timers): Update pending_atimers.
2829
2d283c7c
CY
28302009-02-06 Chong Yidong <cyd@stupidchicken.com>
2831
eb306cab
CY
2832 * image.c (svg_load_image): Fix last change.
2833
2d283c7c
CY
2834 * xfns.c (Fx_create_frame): Signal an error if no font is
2835 found (Bug#2147).
2836
4d8e170e
JB
28372009-02-05 Juanma Barranquero <lekktu@gmail.com>
2838
2839 * character.c (syms_of_character) <script-representative-chars>:
2840 Fix typo in docstring.
2841
c96169a0
AR
28422009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2843
2844 * nsmenu.m (pop_down_menu): New function.
2845 (ns_popup_dialog): Call it on unwind.
2846 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
2847 call timer_check() (Bug#2154).
2848 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
2849 handling_signal is set.
2850 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
2851
31fd7c5c 2852 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
2853
2854 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
2855
2856 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
2857
51d861de
SM
2858 * keyboard.c (poll_for_input_1, handle_async_input):
2859 Set handling_signal under HAVE_NS.
c96169a0 2860
aacd8ba1
GM
28612009-02-04 Glenn Morris <rgm@gnu.org>
2862
2863 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
2864
4cb75c4b
KH
28652009-02-04 Kenichi Handa <handa@m17n.org>
2866
2867 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
2868
2869 * charset.c (Fchar_charset): New optional arg restriction.
2870
2871 * coding.h (coding_system_charset_list): Extern it.
2872
2873 * coding.c (coding_system_charset_list): New function.
2874
2875 * composite.c: Include coding.h and termhooks.h.
2876 (composition_gstring_p): Fix for the terminal case.
2877 (composition_gstring_width): Likewise.
2878 (fill_gstring_body): Likewise.
2879 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
2880 the frame.
2881 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
2882 is within a composition.
867d4bb3 2883 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
2884
2885 * term.c (encode_terminal_code): Fix handling of composition.
2886 (produce_composite_glyph): For static composition, get pixel_width
2887 from struct composition.
2888
826ba17e
AS
28892009-02-02 Andreas Schwab <schwab@suse.de>
2890
2891 * unexelf.c (unexec): Handle unaligned bss offset.
2892
8ad093db
AR
28932009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2894
2895 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
2896 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 2897
8ad093db
AR
2898 * keyboard.c (handle_interrupt): Don't call
2899 quit_throw_to_read_char() under NS.
d0a76a6e 2900
8ad093db
AR
2901 * blockinput.h: Remove NS-specific code.
2902
4d18a7a2
DN
29032009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
2904
db878925
DN
2905 * dispnew.c (window_change_signal): Don't try to get the size of a
2906 suspended tty frame.
2907 * term.c (Fresume_tty): Resize if the size has changed while the
2908 tty was suspended.
2909
4d18a7a2
DN
2910 * alloc.c (mark_stack): Properly conditionalize previous change.
2911
8984df7c
JB
29122009-01-30 Juanma Barranquero <lekktu@gmail.com>
2913
2914 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
2915 * w32term.c (w32_read_socket) [SYNC_INPUT]:
2916 Remove; this code is not used on Windows.
2917
75f4f1ac
EZ
29182009-01-30 Eli Zaretskii <eliz@gnu.org>
2919
2920 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
2921 EOLs that also has stray ^M characters.
2922
07a1e794
JB
29232009-01-30 Juanma Barranquero <lekktu@gmail.com>
2924
2925 * atimer.c (run_timers, alarm_signal_handler):
2926 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
2927 * w32inevt.c (w32_console_read_socket):
2928 * w32term.c (w32_read_socket):
2929 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
2930
a8b11cc9
CY
29312009-01-30 Chong Yidong <cyd@stupidchicken.com>
2932
2933 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
2934 Initialize it as a relative filename pattern.
2935 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
2936 (Fcall_process_region): Simplify temp file creation using
2937 temporary-file-directory.
2938
c279587b
EZ
29392009-01-29 Eli Zaretskii <eliz@gnu.org>
2940
2941 * msdos.c: Rename pending_signals to msdos_pending_signals.
2942 (sig_suspender, sigprocmask): Adjust.
2943
a8fe3242
CY
29442009-01-29 Chong Yidong <cyd@stupidchicken.com>
2945
2946 * keyboard.c (pending_signals): New var.
2947 (poll_for_input, input_available_signal, init_keyboard): Set it.
2948 (process_pending_signals): New function.
2949
2950 * lisp.h (QUIT): Check pending_signals instead of
2951 interrupt_input_pending. Use process_pending_signals.
2952
51d861de 2953 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 2954
51d861de 2955 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
2956
2957 * sysdep.c (emacs_write): Use process_pending_signals.
2958
2959 * xterm.c (XTread_socket): Update pending_signals.
2960
2961 * w32term.c (w32_read_socket): Update pending_signals.
2962
2963 * w32inevt.c (w32_console_read_socket): Update pending_signals.
2964
6570a1c4
KH
29652009-01-29 Kenichi Handa <handa@m17n.org>
2966
2967 * xftfont.c (xftfont_has_char): New function.
2968 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
2969
d72a4afa
AR
29702009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2971
2972 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
2973 under GNUstep.
2974 (ns_query_color): New declaration.
2975
2976 * nsterm.m (ns_confirm_quit): New variable.
2977 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
2978 (EmacsApp-applicationShouldTerminate:): Use it.
2979 (EmacsPrefsController): Let user set it.
2980 (ns_query_color): New function.
2981 (ns_defined_color): Use it.
2982 (ns_initialize): Drop.
2983 (ns_term_init): Add two lines from ns_initialize(), and set
2984 input_interrupt_mode to nil.
2985
2986 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 2987 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 2988
9fe78804
KH
29892009-01-28 Kenichi Handa <handa@m17n.org>
2990
2991 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
2992 (fontset_get_font_group): Remember that no font-group is specified
2993 for C.
9fe78804 2994
fa57de36
CY
29952009-01-27 Chong Yidong <cyd@stupidchicken.com>
2996
930600e9
CY
2997 * fns.c (concat): Check for string overflow (bug#1787).
2998
fa57de36
CY
2999 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
3000 Quadruple undo limits (bug#1501).
3001
7179ce7b
KH
30022009-01-27 Kenichi Handa <handa@m17n.org>
3003
3004 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
3005 directly use GT_Get_Char_index.
3006
3007 * xftfont.c (struct xftfont_info): New member `index'.
3008
3009 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 3010 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 3011
5be8fcc0
CY
30122009-01-26 Kenichi Handa <handa@m17n.org>
3013
3014 * fontset.c (fontset_find_font): Fix handling of non-cons return
3015 value of fontset_get_font_group.
3016 (fontset_font): Revert last change.
3017
19ae3e61
JR
30182009-01-26 Jason Rumney <jasonr@gnu.org>
3019
3020 * w32font.c (w32font_list_internal): Return quickly if registry is
3021 unknown. Simplify final return.
3022 (add_font_entity_to_list): Break complex logic down into more
3023 manageable chunks. Move unknown registry check to
3024 w32font_list_internal.
3025
8612b71a
AR
30262009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
3027
3028 Changes to remove Feval calls from GUI under NS.
3029
d8038940
JB
3030 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
3031 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
3032 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
3033
3034 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
3035 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
3036 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
3037 instead of NON_ASCII_KEYSTROKE_EVENT.
3038 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
3039 (EmacsApp-applicationShouldTerminate:): Query user.
3040 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
3041 instead of Feval.
3042
3043 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
3044
3045 * keyboard.c (kbd_buffer_get_event): Check for it.
3046 (keys_of_keyboard): Define lispy keys for
3047 ns-put/unput-working-text.
3048
3049 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
3050 versions.
3051 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
3052
6288ae55
CY
30532009-01-25 Chong Yidong <cyd@stupidchicken.com>
3054
3055 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 3056 setting current_buffer directly. (Bug#2044)
6288ae55 3057
289e7f8f
CY
30582009-01-24 Chong Yidong <cyd@stupidchicken.com>
3059
5ce87308 3060 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 3061 any work. (Bug#1952, bug#1990).
5ce87308 3062
64cc3cf6 3063 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 3064
b3243e6f
AR
30652009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3066
3067 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
3068 (ns_no_defaults): New declaration.
3069 (main): Use it.
e0d2e69a 3070
d900b2af 3071 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 3072
d900b2af 3073 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 3074
d900b2af
AR
3075 * nsterm.m (ns_no_defaults): New variable.
3076 (ns_initialize): Don't read defaults when ns_no_defaults.
3077 (EmacsView-readSelectionFromPasteboard:)
3078 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 3079 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
3080 (ns_dumpglyphs_stretch): New function.
3081 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 3082 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 3083
e0d2e69a
AR
3084 * nsimage.m (setPixmapData:): Set to ignore image DPI.
3085
3ac71f5d
CY
30862009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
3087
3088 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
3089 call for Sparc64.
3090
3fe53a83
AR
30912009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3092
3093 * nsfns.m:
3094 * nsgui.h:
3095 * nsmenu.m:
3096 * nsselect.m:
3097 * nsterm.h:
3098 * nsterm.m: Remove '23' comments that indicated code added during
3099 update from emacs-20 -> emacs-23.
3100
10f87c6f 31012009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
3102
3103 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 3104 ns_alternate_modifier. (Bug#1217)
a3b53a85 3105
c7cef62d
AR
3106 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
3107 Display all shortcuts, including those w/o super modifier.
3108
575fb8bd
AR
3109 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
3110
918b848b
CY
31112009-01-22 Chong Yidong <cyd@stupidchicken.com>
3112
3113 * fileio.c (Vwrite_region_post_annotation_function)
3114 (Vwrite_region_annotation_buffers): New vars.
3115 (build_annotations_unwind): Just reset
3116 Vwrite_region_annotation_buffers.
3117 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
3118 Call write-region-post-annotation-function.
3119 (build_annotations): Add to Vwrite_region_annotation_buffers if
3120 buffer changes.
3121
a39e2539
AR
31222009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3123
3124 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
3125 Tiger.
51d861de
SM
3126 * nsfns.m (ns_do_applescript):
3127 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 3128
35ed44db
AR
31292009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
3130
3131 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
3132
cbe0b5bf
AR
31332009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3134
3135 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 3136
6049d3a0
AR
3137 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
3138
3139 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
3140 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
3141 handle Ctrl-tab. (Bug#1841)
3142 (ns_get_color): Use unsigned long long for scanned hex string value.
3143 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 3144 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 3145 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 3146 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 3147 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 3148 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 3149 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 3150
d3810c21 3151 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 3152 DPI. (Bug#1316)
d3810c21
AR
3153 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
3154 values in onTiger section.
4c7077c3 3155
e301e634
CY
31562009-01-19 Chong Yidong <cyd@stupidchicken.com>
3157
7f82490b
CY
3158 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
3159 Check return value of font_spec_from_name.
64cc3cf6 3160 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
3161
3162 * font.c (font_spec_from_name): Return Qnil if font name could not
3163 be parsed.
3164 (font_parse_name): Treat a `?' character as part of an XLFD.
3165
e301e634
CY
3166 * fns.c (Fsubstring): Doc fix.
3167
1c0db158
KH
31682009-01-19 Kenichi Handa <handa@m17n.org>
3169
51d861de 3170 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
3171 (ftfont_list): Likewise.
3172
acf20901
JB
31732009-01-18 Juanma Barranquero <lekktu@gmail.com>
3174
fff4e459
JB
3175 * dbusbind.c (Fdbus_register_signal):
3176 * process.c (conv_sockaddr_to_lisp):
3177 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
3178
acf20901
JB
3179 * callproc.c (Fgetenv_internal): Doc fix.
3180
e7abcdfb
CY
31812009-01-16 Chong Yidong <cyd@stupidchicken.com>
3182
3183 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
3184 it is not even used.
3185
b60861e6
GM
31862009-01-16 Glenn Morris <rgm@gnu.org>
3187
3188 * font.c (Ffont_variation_glyphs): Silence compiler.
3189
8db52afe
JB
31902009-01-15 Juanma Barranquero <lekktu@gmail.com>
3191
3192 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
3193 Reported by David Robinow <drobinow@gmail.com>.
3194
4cddb209
KH
31952009-01-15 Kenichi Handa <handa@m17n.org>
3196
51d861de 3197 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 3198
f247f67b
JR
31992009-01-14 Jason Rumney <jasonr@gnu.org>
3200
3201 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 3202 never a fontset. (Bug#1562)
f247f67b 3203
f56a4450
KH
32042009-01-14 Kenichi Handa <handa@m17n.org>
3205
3206 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 3207 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 3208
4e99855e
CY
32092009-01-13 Chong Yidong <cyd@stupidchicken.com>
3210
3211 * font.c (font_clear_prop): If clearing the family, clear the font
3212 width index too.
3213
fff4e459 3214 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 3215
24f01470
JB
32162009-01-12 Juanma Barranquero <lekktu@gmail.com>
3217
3218 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
3219 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
3220 functions, use sizeof.
3221
a41240a3
MR
32222009-01-12 Martin Rudalics <rudalics@gmx.at>
3223
3224 * keyboard.c (read_char): Fix case where last_nonmenu_event
3225 returned a bad value with submenus. (Bug#447)
3226
944636b8
CY
32272009-01-12 Chong Yidong <cyd@stupidchicken.com>
3228
3229 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
3230 family, clear the font width index too.
3231
0dad7c6f
JR
32322009-01-11 Jason Rumney <jasonr@gnu.org>
3233
3234 * keyboard.c (cmd_error_internal): Exit when errors occur before
3235 frame creation and not in daemon mode. (Bug#1836)
3236
7c2363af
CY
32372009-01-10 Chong Yidong <cyd@stupidchicken.com>
3238
3239 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
3240 of a display vector, backtrack.
3241 (try_window_reusing_current_matrix): Check glyph type before
3242 referencing charpos member.
3243
97b1b294
EZ
32442009-01-10 Eli Zaretskii <eliz@gnu.org>
3245
3246 Fix Bug #876:
3247
3248 * coding.c (inhibit_null_byte_detection): New variable.
3249 (detect_coding, detect_coding_system): Don't pay attention to null
3250 bytes if inhibit_null_byte_detection is non-zero.
51d861de 3251 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
3252 <inhibit-iso-escape-detection>: Doc fix.
3253
4624b6e3
JR
32542009-01-09 Jason Rumney <jasonr@gnu.org>
3255
3256 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 3257 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
3258 Only report Unicode Plane 2 fonts as unicode-sip.
3259
323b840c
CY
32602009-01-09 Chong Yidong <cyd@stupidchicken.com>
3261
51d861de
SM
3262 * xfaces.c (Fx_font_family_list): Delete function.
3263 Move compatibility version to faces.el.
323b840c 3264
51d861de 3265 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 3266
eba7400d
MR
32672009-01-09 Martin Rudalics <rudalics@gmx.at>
3268
3269 * frame.c (x_set_frame_parameters): Remember requested value for
3270 fullscreen before it's reset by the parameter handler.
3271
4b09796d
GM
32722009-01-09 Glenn Morris <rgm@gnu.org>
3273
3274 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 3275 (last_command_event): ... and update all users.
4b09796d
GM
3276 (last_input_char): For clarity, rename to...
3277 (last_input_event): ... and update all users.
3278 (last-command-char, last-input-char): Move to subr.el as aliases.
3279 * cmds.c, commands.h: Update for last_command_char rename.
3280
14ccea62
CY
32812009-01-08 Chong Yidong <cyd@stupidchicken.com>
3282
51d861de 3283 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 3284
5f004711
JR
32852009-01-08 Jason Rumney <jasonr@gnu.org>
3286
3287 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
3288 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
3289 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
3290 Don't declare.
fff4e459 3291 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
3292 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
3293
b71f6f73
KH
32942009-01-07 Kenichi Handa <handa@m17n.org>
3295
50b06221 3296 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 3297 remember the coding system used for decoding in
50b06221
KH
3298 coding_system (Bug#1039).
3299
b71f6f73 3300 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 3301 breaking the loop. (Bug#870)
b71f6f73
KH
3302 (decode_coding_utf_16, decode_coding_emacs_mule)
3303 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3304 (decode_coding_charset): Likewise.
3305
56f668f7
MR
33062009-01-05 Martin Rudalics <rudalics@gmx.at>
3307
3308 * frame.c (x_set_frame_parameters): Make sure height (width) get
3309 applied when fullwidth (fullheight) is set. (Bug#1522)
3310
5da9424d
JB
33112009-01-04 Juanma Barranquero <lekktu@gmail.com>
3312
3313 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
3314 (utc_base): Declare as ULONGLONG, not long double.
3315 (convert_time_raw): Delete.
3316 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
3317 (initialize_utc_base): New function.
3318 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
3319 (convert_from_time_t): Use initialize_utc_base; compute result with
3320 64-bit arithmetic.
3321 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
3322
c4605e09
EZ
33232009-01-03 Eli Zaretskii <eliz@gnu.org>
3324
9acef61c 3325 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
3326 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
3327 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
3328 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
3329 [!subprocesses]: Define.
3330 (syms_of_process) [!subprocesses]: Intern and staticpro them.
3331 (Flist_system_processes, Fsystem_process_attributes)
3332 [!subprocesses]: Call list_system_processes and
3333 system_process_attributes instead of returning Qnil.
3334
9acef61c
JB
3335 * dosfns.c (system_process_attributes, list_system_processes):
3336 New functions.
c4605e09
EZ
3337
3338 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
3339
3340 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
3341 Don't use the default (no-op) implementation.
3342
8b7d0a16
JR
33432009-01-03 Jason Rumney <jasonr@gnu.org>
3344
a6d46bc1
JR
3345 * keyboard.c (parse_modifiers_uncached): Wheel events are
3346 clicks (bug#687).
3347
8b7d0a16
JR
3348 * w32term.c (x_query_colors, x_query_color): New functions.
3349
3350 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
3351 (svg_load_image): Cast returned pointers from dynamically loaded
3352 functions. Eliminate W32 specific code.
3353
bfe11752
DN
33542009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
3355
89e2438a
DN
3356 * nsfns.m (x_set_foreground_color, x_set_background_color)
3357 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
3358 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
3359 x_ prefix instead of ns_. Update references.
3360 (syms_of_nsfns): Add a FIXME comment.
3361
3362 * nsterm.m (x_set_cursor_type): New prototype.
3363 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
3364
bfe11752
DN
3365 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
3366 for Solaris instead of incorrectly providing Qutime and Qcutime.
3367
031da700
EZ
33682009-01-02 Eli Zaretskii <eliz@gnu.org>
3369
3370 * w32.c (process_times): Compute sum of utime and stime.
3371 (system_process_attributes): Add Qtime to the alist.
3372
3373 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
3374 and add them to the alist.
3375
3376 * process.c (top level) <Qtime, Qctime>: New variables.
3377 (syms_of_process): staticpro them.
3378 (Fsystem_process_attributes): Add their documentation to the doc
3379 string.
3380
3381 * process.h: Declare Qtime and Qctime.
3382
df23bf08
JR
33832009-01-02 Jason Rumney <jasonr@gnu.org>
3384
9acef61c 3385 * image.c (Qgobject): New symbol.
df23bf08
JR
3386 (syms_of_image): Initialize it.
3387 (init_svg_functions): Load some functions from gobject library.
3388
5bbdf7aa
DN
33892009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
3390
3391 * frame.c (make_terminal_frame): Remove redundant code and useless
3392 block.
3393
63136da6
AS
33942009-01-01 Andreas Schwab <schwab@suse.de>
3395
3396 * process.c (conv_sockaddr_to_lisp): Add workaround for
3397 getsockname bug on BSD.
3398
9ef69046
CY
33992009-01-01 Chong Yidong <cyd@stupidchicken.com>
3400
d6fafbe0
CY
3401 * xfns.c (x_create_tip_frame): Set border width of the X window.
3402
51d861de 3403 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 3404
f9c34147
JR
34052009-01-01 Jason Rumney <jasonr@gnu.org>
3406
9acef61c 3407 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
3408 Don't block input, as per earlier xterm.c changes.
3409
f5497e45
AR
34102008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
3411
3412 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
3413 (ns_appkit_version_int): New function.
3414 (x-server-version): Use ns_appkit_version_int and follow 21+
3415 convention of returning 3 integers.
3416
c19cab20
KH
34172008-12-30 Kenichi Handa <handa@m17n.org>
3418
3419 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
3420 (CHAR_SURROGATE_PAIR_P): New macro.
3421
3422 * font.h (struct font_driver): New member get_variation_glyphs.
3423
9acef61c 3424 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
3425 (Ffont_variation_glyphs): New function.
3426 (syms_of_font): Defsubr it.
3427
3428 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
3429 ftfont_variation_glyphs.
3430 (setup_otf_gstring): New function.
3431 (ftfont_drive_otf): Use it.
3432 (ftfont_shape_by_flt): Handle variation selector.
3433 (ftfont_variation_glyphs): New function.
3434
28cd591f
MR
34352008-12-30 Martin Rudalics <rudalics@gmx.at>
3436
3437 * frame.c (Vemacs_iconified): Remove.
3438
7f714baf
JR
34392008-12-30 Jason Rumney <jasonr@gnu.org>
3440
3441 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 3442 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 3443
9d2d22ab
CY
34442008-12-30 Chong Yidong <cyd@stupidchicken.com>
3445
3446 * indent.c (Fvertical_motion): Don't advance iterator if we have
3447 reseated to the desired position.
3448
3449 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
3450 checking for pos match.
3451
545312c2
KH
34522008-12-30 Kenichi Handa <handa@m17n.org>
3453
1ede3eb6
KH
3454 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
3455 just get the low 8-bit of the code.
3456
545312c2
KH
3457 * font.c (font_intern_prop): Validate str as multibyte.
3458
bd7bbf29
DN
34592008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3460
31e0750e
DN
3461 * dispextern.h (struct face): Move lface and hash from the middle
3462 of bitfields.
3463
bd7bbf29
DN
3464 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
3465
b5672e7c
DN
34662008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3467
3468 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
3469 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
3470 instead of intervals.h.
3471
d704470f
AS
34722008-12-26 Andreas Schwab <schwab@suse.de>
3473
3474 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
3475 cons.
3476
54b33868
MR
34772008-12-26 Martin Rudalics <rudalics@gmx.at>
3478
3479 * textprop.c (Qminibuffer_prompt): New variable.
3480 (syms_of_textprop): Initialize it.
3481 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
3482 in minibuffer-prompt face. (Bug#1662)
3483
40b615d6
JR
34842008-12-25 Jason Rumney <jasonr@gnu.org>
3485
3486 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
3487
baae5c2d
JR
34882008-12-24 Jason Rumney <jasonr@gnu.org>
3489
3490 * ralloc.c (r_alloc_reset_variable): New function.
3491
3492 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 3493 record of what points where. (Bug#716)
baae5c2d 3494
a9051c88
DN
34952008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
3496
3497 * minibuf.c (read_minibuf): Follow the non-interactive case when
3498 running as a daemon, before detaching.
3499
8b146312
AS
35002008-12-22 Andreas Schwab <schwab@suse.de>
3501
3502 * buffer.c (init_buffer): Use realloc instead of xrealloc.
3503 * gtkutil.c (free_widget_value): Use xfree instead of free.
3504
56f2de10
MR
35052008-12-22 Martin Rudalics <rudalics@gmx.at>
3506
3507 * frame.c (delete_frame): New function derived from
3508 Fdelete_frame to handle Qnoelisp value for FORCE argument.
3509 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
3510 (Fdelete_frame): Call delete_frame. Remove line from doc-string
3511 saying that FORCE non-nil doesn't run `delete-frame-functions'.
3512 * frame.h: Extern delete_frame.
3513 * window.c (window_loop):
3514 * terminal.c (delete_terminal):
3515 * xterm.c (x_connection_closed):
3516 * xfns.c (Fx_hide_tip):
9acef61c 3517 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 3518
1fc200d6
JR
35192008-12-21 Jason Rumney <jasonr@gnu.org>
3520
3521 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
3522 when character maps to .notdef character.
3523
5e252df2
SM
35242008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
3525
3526 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
3527
99b72cc4
JR
35282008-12-20 Jason Rumney <jasonr@gnu.org>
3529
3530 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 3531 a graphical frame on Windows. (Bug#1325)
99b72cc4 3532
acc49a52
JD
35332008-12-20 Jan Djärv <jan.h.d@swipnet.se>
3534
3535 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
3536
6ea15123
CY
35372008-12-20 Chong Yidong <cyd@stupidchicken.com>
3538
3539 * minibuf.c (Fread_buffer): Doc fix.
3540
b2dab6c8
JR
35412008-12-20 Jason Rumney <jasonr@gnu.org>
3542
54ea0c87 3543 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 3544 server name in UNC paths. (Bug#719)
54ea0c87 3545
b2dab6c8 3546 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 3547 charbuf. (Bug#1035)
b2dab6c8 3548
6d1921be
DN
35492008-12-19 Daniel Engeler <engeler@gmail.com>
3550
3551 * sysdep.c (serial_configure): Fix typo.
3552
53934c98
DN
35532008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3554
3555 * sysdep.c: Include alloca.h.
f4f634e8
DN
3556 (system_process_attributes): Add implementation for Solaris.
3557
3558 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 3559
06e111a6
DN
35602008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3561
3562 Reorganize implementation of Flist_system_processes and
3563 Fsystem_process_attributes. No functional changes.
3564 * process.c: Don't #include pwd.h, grp.h and limits.h.
3565 (Flist_system_processes): Just call list_system_processes.
3566 (Fsystem_process_attributes): Just call system_process_attributes.
3567 (procfs_list_system_processes, time_from_jiffies)
3568 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
3569 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
3570
3571 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
3572 (list_system_processes): Rename from
3573 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
3574 Provide a do nothing implementation.
3575 (system_process_attributes): Rename from
3576 procfs_list_system_processes.
3577 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 3578 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
3579
3580 * w32.c (list_system_processes): Rename from
3581 w32_list_system_processes.
3582 (system_process_attributes): Rename from
3583 w32_system_process_attributes.
3584
3585 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
3586
3587 * process.h (w32_list_system_processes)
3588 (w32_system_process_attributes): Remove.
3589 (list_system_processes, system_process_attributes): New
3590 prototypes.
3591
6a705b23
KH
35922008-12-19 Kenichi Handa <handa@m17n.org>
3593
3594 * xfont.c (xfont_decode_coding_xlfd): New function.
3595 (xfont_encode_coding_xlfd): New function.
3596 (xfont_list_pattern): Decode XLFD by iso-8859-1.
3597 (xfont_list): Decode and encode XLFD by iso-8859-1.
3598 (xfont_match): Likewise.
3599 (xfont_list_family): Likewise.
3600 (xfont_open): Likewise.
3601
d66c0241 3602 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
3603 names are utf-8.
3604
d66c0241 3605 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
3606 names are utf-8.
3607
5a130941
JD
36082008-12-18 Jan Djärv <jan.h.d@swipnet.se>
3609
3610 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
3611 changed.
bfd20325
JD
3612 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
3613 clicked on a detached tool bar button.
5a130941 3614
fd95644b
DN
36152008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
3616
3617 * emacs.c (main): Print and error and exit when no data is read
3618 from the pipe.
3619
e6eee6ae
JR
36202008-12-17 Jason Rumney <jasonr@gnu.org>
3621
3622 * w32font.c (w32font_has_char): Always return -1.
3623
a35dd56b
KH
36242008-12-16 Kenichi Handa <handa@m17n.org>
3625
3626 * font.c (font_open_entity): Fix previous change.
3627
0e3635c2
DN
36282008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
3629
3630 * process.c: Include <limits.h>.
3631
d4835507 36322008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
3633
3634 * font.c (font_update_drivers): Fix mistake in reconstructing the
3635 driver list.
3636
36372008-12-16 Chong Yidong <cyd@stupidchicken.com>
3638
3639 * font.c (font_clear_cache): Fix format of font cache data.
3640
e2cbc401
CY
36412008-12-15 Chong Yidong <cyd@stupidchicken.com>
3642
3643 * xftfont.c (xftfont_open): Free Xft font pattern if
3644 XftFontOpenPattern fails.
3645
3646 * xterm.c (x_free_frame_resources): Remove extraneous call to
3647 free_frame_faces.
3648
b131d535
CY
36492008-12-13 Chong Yidong <cyd@stupidchicken.com>
3650
3651 * xterm.c (x_delete_display): Move xim_close_dpy call to
3652 x_delete_terminal.
3653 (x_delete_terminal): Call xim_close_dpy.
3654
e6df5336
JR
36552008-12-13 Jason Rumney <jasonr@gnu.org>
3656
3657 * w32font.c (intern_font_name): New function.
3658 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
3659 (w32font_open_internal, Fx_select_font): Decode font name.
3660 (fill_in_logfont, list_all_matching_fonts): Encode font name.
3661
3662 * w32font.h (intern_font_name): Declare new function.
3663
3664 * w32uniscribe.c (add_opentype_font_name_to_list):
3665 Use intern_font_name.
3666
20d68145
CY
36672008-12-13 Chong Yidong <cyd@stupidchicken.com>
3668
9f2554de
CY
3669 * frame.c (Fdelete_frame): Call free_font_driver_list.
3670
3d9bec9a
CY
3671 * font.c (free_font_driver_list): Implement missing function.
3672
20d68145
CY
3673 * w32term.c (w32_term_init): Don't initialize the image cache
3674 here; it will be done in init_frame_faces.
3675
3676 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
3677 (struct x_display_info): Remove unused member null_pixel. New
3678 member xim_callback_data.
3679
3680 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
3681 (xim_initialize): Save pointer to callback function data.
3682 (xim_close_dpy): Free callback function data. Call XCloseIM,
3683 reverting 2008-11-04 change by David Smith.
3684 (x_term_init): Don't initialize the image cache here; it will be
3685 done in init_frame_faces. Remove ancient "null_pixel" cruft.
3686 (x_delete_display): Free x_dnd_atoms member.
3687
96f9306b
KH
36882008-12-13 Kenichi Handa <handa@m17n.org>
3689
6dec9044
JB
3690 * font.c (font_rescale_ratio): Moved from xfaces.c.
3691 Argument type changed. Handle a font-spec too.
96f9306b 3692 (font_score): Check Vface_font_rescale_alist.
6dec9044 3693 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
3694
3695 * xfaces.c (font_rescale_ratio): Moved to font.c.
3696
8d5b4964
CY
36972008-12-13 Chong Yidong <cyd@stupidchicken.com>
3698
3699 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
3700
e6df5336
JR
37012008-12-12 Jason Rumney <jasonr@gnu.org>
3702
3703 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
3704 Vwindow_system_version to the real w32 major version.
3705
97c6058a
DN
37062008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
3707
3708 * term.c (init_tty): Move setting the terminal name before the
3709 potential user: maybe_fatal.
3710
ec4e88d7
CY
37112008-12-11 Chong Yidong <cyd@stupidchicken.com>
3712
d4835507
JB
3713 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
3714 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 3715
b4233ec9
JR
37162008-12-11 Jason Rumney <jasonr@gnu.org>
3717
8ec71e23 3718 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 3719 SYMBOL_CHARSET. (Bug#547)
8ec71e23 3720
b4233ec9 3721 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 3722 size for surrogates. (Bug#1096, bug#872)
b4233ec9 3723
011a0143
JB
37242008-12-11 Juanma Barranquero <lekktu@gmail.com>
3725
3726 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
3727
3c309f34
JB
37282008-12-11 Juanma Barranquero <lekktu@gmail.com>
3729
3730 * process.c (Fsystem_process_attributes, syms_of_process):
3731 Fix typo in name of Ssystem_process_attributes.
3732 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
3733
fedc6ab5
JB
37342008-12-11 Juanma Barranquero <lekktu@gmail.com>
3735
3736 * syntax.c (Fmodify_syntax_entry): Doc fix.
3737
ba3de0e8
JB
37382008-12-10 Juanma Barranquero <lekktu@gmail.com>
3739
3740 * font.c (Ffont_spec): Move usage to end of docstring.
3741
174f1c74
JR
37422008-12-10 Jason Rumney <jasonr@gnu.org>
3743
3744 * w32font.c (Qcham): New symbol.
3745 (font_supported_scripts): Add cham, and comments for other new
3746 scripts in bitfield from OpenType spec.
9d32f818
JR
3747 (add_font_entity_to_list): Limit unicode-sip fonts to those that
3748 contain characters beyond the bmp.
174f1c74 3749
7b649478
KH
37502008-12-10 Kenichi Handa <handa@m17n.org>
3751
3752 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 3753 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
3754 Qunicode_sip.
3755
2133e2d1
JB
37562008-12-10 Juanma Barranquero <lekktu@gmail.com>
3757
3758 * coding.c (QCdefault_char): Rename from QCdefalut_char.
3759 (Fcoding_system_put): Use QCdefault_char.
3760 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
3761
9af886ee
CY
37622008-12-09 Chong Yidong <cyd@stupidchicken.com>
3763
74d819eb
CY
3764 * xftfont.c (syms_of_xftfont): Fix typo.
3765
4ccfa1c0 3766 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 3767
7c19d3ae
DN
37682008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
3769
3770 * emacs.c (main): Close daemon_pipe on exec.
3771
567826bb
CY
37722008-12-08 Chong Yidong <cyd@stupidchicken.com>
3773
3774 * termchar.h (struct tty): New members termcap_term_buffer and
3775 termcap_strings_buffer.
3776
3777 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 3778 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
3779 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
3780 All callers changed.
3781 (init_tty): Store termcap data and string buffers in new struct
3782 tty members termcap_term_buffer and termcap_strings_buffer.
3783 (delete_tty): Free them.
4ccfa1c0 3784 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 3785
aa96c42b
SZ
37862008-12-07 Seiji Zenitani <zenitani@mac.com>
3787
3788 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 3789 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 3790
b7e1d896
CY
37912008-12-06 Chong Yidong <cyd@stupidchicken.com>
3792
3793 * coding.c (make_conversion_work_buffer): Disable buffer
3794 modification hooks in the work buffer.
3795
b5ec91a5
EZ
37962008-12-05 Eli Zaretskii <eliz@gnu.org>
3797
3798 * process.c (procfs_system_process_attributes): If `nread' has a
3799 negative value, assign zero to it.
3800
a5d2a52b
CY
38012008-12-05 Chong Yidong <cyd@stupidchicken.com>
3802
68c5540b 3803 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 3804
7bf1bb21
KH
38052008-12-05 Kenichi Handa <handa@m17n.org>
3806
3807 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
3808 second character is a combining character.
3809
2fdc7d00
EZ
38102008-12-05 Eli Zaretskii <eliz@gnu.org>
3811
3812 * process.c (procfs_system_process_attributes): Don't use cmd,
3813 cmdsize, and q without initializing them first.
3814
bf6bfba8
JR
38152008-12-04 Jason Rumney <jasonr@gnu.org>
3816
3817 * w32font.c (w32font_draw): Initialize orig_clip before getting
3818 it, and delete it when finished.
3819
a3b1a468
DN
38202008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
3821
3822 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
3823 case when running as a daemon before detaching.
3824
8b8be8eb
JB
38252008-12-03 Juanma Barranquero <lekktu@gmail.com>
3826
805f2638 3827 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 3828
b1bde622
KH
38292008-12-03 Kenichi Handa <handa@m17n.org>
3830
e500c47d
KH
3831 * font.c (font_at): Set `multibyte' at first.
3832
ca516334
KH
3833 * coding.c (decode_coding_charset): Check type of an element of
3834 vector VALIDS.
7bf1bb21 3835 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 3836
4ccfa1c0 3837 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
3838 (font_for_char): Likewise.
3839
1e5ecd37
CY
38402008-12-03 Chong Yidong <cyd@stupidchicken.com>
3841
d5b01609 3842 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
3843 (font_update_lface): Handle fonts with corrupted size specs,
3844 i.e. non-int and non-float.
d5b01609 3845
11e3a6e4 3846 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 3847 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 3848 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 3849
ab06788b
CY
3850 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
3851
1e5ecd37 3852 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 3853 underline_minimum_offset for underline position.
1e5ecd37 3854
63c125ab
DN
38552008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
3856
3857 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
3858
3859 * character.c (c_string_width): Specify the type for LEN.
3860
3a8406e1
KH
38612008-12-03 Kenichi Handa <handa@m17n.org>
3862
4ccfa1c0 3863 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 3864 (decode_coding_utf_8): Likewise.
4ccfa1c0 3865 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 3866 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 3867
651df7d9
CY
38682008-12-02 Chong Yidong <cyd@stupidchicken.com>
3869
3870 * keyboard.c (make_lispy_position): Only use PT if the selected
3871 window is current.
3872
1f625c6c
AS
38732008-12-02 Andreas Schwab <schwab@suse.de>
3874
f7741ce9
AS
3875 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
3876
1f625c6c
AS
3877 * doprnt.c (doprnt1): Fix size of charbuf.
3878
92bc2678
CY
38792008-12-02 Chong Yidong <cyd@stupidchicken.com>
3880
3881 * keyboard.c (timer_check): Revert last change.
3882
93b9e8cc
JB
38832008-12-02 Juanma Barranquero <lekktu@gmail.com>
3884
3885 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
3886
fd7a37d5
JB
38872008-12-01 Juanma Barranquero <lekktu@gmail.com>
3888
3889 * makefile.w32-in: Update dependencies.
3890 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
3891
c115043b
AS
38922008-12-01 Andreas Schwab <schwab@suse.de>
3893
3894 * font.c (register_font_driver): Use xmalloc.
3895 (font_put_frame_data): Likewise.
3896
f5668d2a
CY
38972008-12-01 Chong Yidong <cyd@stupidchicken.com>
3898
860d96be
CY
3899 * xfaces.c (realize_x_face): Make abort condition clearer.
3900
f5668d2a
CY
3901 * gtkutil.c (update_frame_tool_bar): Initialize variable.
3902
379c17e7
CY
39032008-11-30 Chong Yidong <cyd@stupidchicken.com>
3904
3905 * keyboard.c (timer_check): After a timer runs, ensure that the
3906 selected window's buffer is current.
3907
35f36d65
JB
39082008-11-30 Juanma Barranquero <lekktu@gmail.com>
3909
f952c61c
JB
3910 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
3911 It was accidentally restored by the Unicode merge.
3912
35f36d65
JB
3913 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
3914
b23077df
JB
39152008-11-29 Juanma Barranquero <lekktu@gmail.com>
3916
3917 * w32proc.c: Include "coding.h".
3918 (Fw32_short_file_name): Encode filename passed to Windows API.
3919 (Fw32_long_file_name): Encode filename passed to Windows API and
3920 decode back the result. (Bug#1433)
3921
b8ebe9dd
KH
39222008-11-29 Kenichi Handa <handa@m17n.org>
3923
8cc53f96
KH
3924 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
3925 not before accessing it.
3926
b8ebe9dd
KH
3927 * charset.c (Fdefine_charset_internal): After calculating
3928 min_char, max_char, and fastmap, copy the charset structure again.
3929 (encode_char): Fix the previous change.
3930
59bc82c0
SZ
39312008-11-28 Seiji Zenitani <zenitani@mac.com>
3932
3933 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
3934
3935 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
3936
3937 * nsterm.m (x_set_frame_alpha): New function.
3938
32247e3d
EZ
39392008-11-27 Eli Zaretskii <eliz@gnu.org>
3940
3941 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
3942
b003e5ff
JB
39432008-11-27 Juanma Barranquero <lekktu@gmail.com>
3944
3945 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
3946 pointer to check_face_name.
3947
708550f5
KH
39482008-11-27 Kenichi Handa <handa@m17n.org>
3949
3950 * category.h (SET_CATEGORY_SET): Call set_category_set.
3951 (set_category_set): Extern it.
3952
3953 * category.c (hash_get_category_set): New function.
3954 (Fmodify_category_entry): Adjusted for the change of
3955 char_table_ref_and_range. Call hash_get_category_set to get a
3956 category set to store in the table.
3957
3958 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
3959 Funify_charset.
3960
2ae37cf0 3961 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
3962 (DECODE_CHAR): Check if the decoder vector is ready.
3963 (ENCODE_CHAR): Check if the encoder char-table is ready.
3964 (maybe_unify_char): Extern it.
3965
3966 * charset.c (Vchar_unified_charset_table): Delete it.
3967 (inhibit_load_charset_map): New variable.
3968 (temp_charset_work): New variable.
3969 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
3970 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
3971 New macros.
3972 (load_charset_map): Meaning of control_flag changed. If
3973 inhibit_load_charset_map is nonzero, setup a table in
3974 temp_charset_work.
3975 (load_charset): New argument control_flag.
3976 (map_charset_for_dump): New function.
3977 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
3978 map_charset_for_dump.
3979 (Fdefine_charset_internal): If the charset method is MAP, load
3980 mapping tables by calling load_charset.
3981 (Funify_charset): Don't load a mapping table but directly set
3982 Vchar_unify_table.
3983 (maybe_unify_char): New function.
3984 (decode_char): Don't handle the deleted method MAP_DEFERRED.
3985 Handle the case of inhibit_load_charset_map being nonzero.
3986 (encode_char): Don't handle the deleted method MAP_DEFERRED.
3987 Handle the case of inhibit_load_charset_map being nonzero.
3988 (Fclear_charset_maps): Just free temp_charset_work.
3989 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
3990 variable.
3991
3992 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
3993 change of char_table_ref_and_range.
3994 (char_table_ref_and_range): Change the meaning of argument FROM
3995 and TO. Now the caller must provide initial values for *FROM
3996 and *TO.
3997
3998 * fontset.c (fontset_add): Adjusted for the change of
3999 char_table_ref_and_range.
4000 (fontset_get_font_group): Likewise.
4001 (Ffontset_info): Likewise.
4002
4003 * keymap.c (describe_vector): Adjusted for the change of
4004 char_table_ref_and_range. For char-table, put boundary between
4005 non-ASCII and 8-bit characters.
4006
4007 * print.c (print_object): For bool-vector, delete unnecessary
4008 check of ASCII_BYTE_P.
4009
9196133b
JR
40102008-11-26 Jason Rumney <jasonr@gnu.org>
4011
4012 * w32font.c (w32font_open_internal): Don't include external
9acef61c 4013 leading in font height. (Bug#879)
9196133b 4014
9f688acf
GM
40152008-11-26 Glenn Morris <rgm@gnu.org>
4016
4017 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
4018 redefinition with ifdef. (Bug#1383)
4019
90d19aff
AR
40202008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4021
4022 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
4023
4ccfa1c0 40242008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
4025
4026 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
4027 New EmacsView methods.
4028 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
4029 Fixes bug #1048,1357,1414.
4030
40312008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4032
4033 Fix bug #1362.
4034 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
4035 is not an indexed color.
4036 * nsterm.m (free_indexed_color): Add argument checking.
4037 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
4038
e7d5ecb3
CY
40392008-11-24 Chong Yidong <cyd@stupidchicken.com>
4040
4041 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
4042 Document confirm-after-completion value for
4043 minibuffer-completion-confirm.
4044
c285743c
JR
40452008-11-24 Jason Rumney <jasonr@gnu.org>
4046
4047 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
4048 warning.
4049
b0857706
JR
40502008-11-23 Jason Rumney <jasonr@gnu.org>
4051
4052 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
4053 restored before returning.
4054
4055 * w32font.c (check_face_name): New function.
4056 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 4057 fonts. (Bug#642)
b0857706 4058
ee50ff07
MR
40592008-11-22 Martin Rudalics <rudalics@gmx.at>
4060
4061 * buffer.c (Fswitch_to_buffer): Reword and mention new option
4062 confirm-nonexistent-file-or-buffer in doc-string.
4063
b8ff72fa
SM
40642008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
4065
4066 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
4067 Fix copy/paste typo. Add checks.
4068
cee53ed4
KH
40692008-11-21 Kenichi Handa <handa@m17n.org>
4070
4071 * coding.c (detect_coding_iso_2022): Reject invalid composition
4072 sequence.
4073 (DECODE_COMPOSITION_START): If the current source is the last
4074 block, and the current composition doesn't end, regard this
4075 sequence as invalid.
4076 (decode_coding_iso_2022): Handle invalid composition sequence.
4077
f6ef1e65
MR
40782008-11-20 Martin Rudalics <rudalics@gmx.at>
4079
4080 * window.c (coordinates_in_window): Don't return
4081 ON_VERTICAL_BORDER for the rightmost position of a mode/header
4082 line when the window is not the rightmost one. (Bug#1372)
4083
e08b1705
MR
40842008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
4085
4086 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
4087
ad98e89f
EZ
40882008-11-15 Eli Zaretskii <eliz@gnu.org>
4089
4090 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
4091 and bright_bg if noninteractive is non-zero.
4092
fb098a4b
CY
40932008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4094
4095 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
4096 x_draw_glyph_string_background.
4097
4098 * w32term.c (x_draw_glyph_string): Likewise.
4099
ce952b6e
CY
41002008-11-15 Chong Yidong <cyd@stupidchicken.com>
4101
4102 * xterm.c (x_draw_glyph_string): Stop drawing the background of
4103 the next glyph string once past the overhang width.
4104
4105 * nsterm.m (ns_draw_glyph_string): Likewise.
4106
4107 * w32term.c (x_draw_glyph_string): Likewise.
4108
26ea7079
CY
41092008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
4110
4111 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
4112 double file close.
4113
1c33c906
MR
41142008-11-14 Martin Rudalics <rudalics@gmx.at>
4115
4116 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
4117 dedicated status of window before attempting to display another
4118 buffer in it.
4119
8fc29035
JB
41202008-11-14 Juanma Barranquero <lekktu@gmail.com>
4121
4122 * msdos.c (Fmsdos_long_file_names):
4123 (syms_of_msdos) <dos-unsupported-char-glyph>:
4124 * dosfns.c (Fint86): Fix typos in docstrings.
4125
55fb4286
EZ
41262008-11-14 Eli Zaretskii <eliz@gnu.org>
4127
4128 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
4129
3fda0315
KY
41302008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
4131
4132 * puresize.h (BASE_PURESIZE): Increase to 1260000.
4133
7e849c17
CY
41342008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
4135
4136 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
4137
4138 * frame.h: Negative alpha means "don't touch".
4139
4140 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
4141
4142 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
4143
b9fd67bd
DN
41442008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
4145
4146 * hftctl.c:
4147 * chpdef.h:
4148 * acldef.h: Remove files used only for systems no longer supported.
4149
4150 * Makefile.in: Fix .o alphabetical ordering.
4151 (hftctl.o): Remove dependency, file removed.
4152 (keymap.o, print.o): Depend on charset.h.
4153
d5998e03
KH
41542008-11-10 Kenichi Handa <handa@m17n.org>
4155
2ae37cf0 4156 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 4157
be70e183
CY
41582008-11-08 Chong Yidong <cyd@stupidchicken.com>
4159
4160 * dired.c (file_name_completion): If completion_ignore_case is
4161 enabled, ignore case when checking completion-regexp-list.
4162
7cf94eac
EZ
41632008-11-08 Eli Zaretskii <eliz@gnu.org>
4164
4165 * vm-limit.c (get_lim_data): Fix last change.
4166
ee107a89
KH
41672008-11-08 Kenichi Handa <handa@m17n.org>
4168
4169 * character.c (Fget_byte): New function.
4170 (syms_of_character): Defsubr Fget_byte.
4171
5fd15622
CY
41722008-11-07 Chong Yidong <cyd@stupidchicken.com>
4173
4174 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
4175 cursor position is valid after scrolling.
4176
13d62fad
JB
41772008-11-06 Juanma Barranquero <lekktu@gmail.com>
4178
4179 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
4180
a1dd2936
GM
41812008-11-06 Glenn Morris <rgm@gnu.org>
4182
4183 * xterm.c (handle_one_xevent): Don't let popup menus cause
4184 mouse-autoselect-window related window switching. (Bug#1261)
4185
860cd236
CY
41862008-11-04 David Smith <davidsmith@acm.org> (tiny change)
4187
4188 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
4189
653a3150
AS
41902008-11-04 Andreas Schwab <schwab@suse.de>
4191
4192 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
4193
870f5cac
CY
41942008-11-03 Chong Yidong <cyd@stupidchicken.com>
4195
4196 * xfns.c (Fx_wm_set_size_hint): New function.
4197
1e02f3cb
MR
41982008-11-03 Martin Rudalics <rudalics@gmx.at>
4199
4200 * textprop.c (Fprevious_single_char_property_change): Return 0
4201 when there's no change in a string. (Bug#1301)
4202
e630dfc6
MR
42032008-11-02 Martin Rudalics <rudalics@gmx.at>
4204
4205 * frame.c (do_switch_frame): New argument NORECORD passed to
4206 Fselect_window.
4207 (Fselect_frame): New argument NORECORD passed to
4208 do_switch_frame.
4209 (Fset_frame_selected_window): New argument NORECORD passed to
4210 Fselect_frame.
4211 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
4212 in call of do_switch_frame.
4213 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
4214 Handle NORECORD argument in call of Fselect_frame.
4215 * lisp.h (do_switch_frame, Fselect_frame)
4216 (Fset_frame_selected_window): Adjust declarations.
4217 * window.c (select_frame_norecord): New function.
4218 (run_window_configuration_change_hook): Use it and call
4219 Fselect_frame with NORECORD set.
4220 (Fselect_window): Pass NORECORD to Fselect_frame.
4221 (Fset_window_configuration): Handle NORECORD argument in call of
4222 do_switch_frame.
4223 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
4224 Fset_frame_selected_window.
4225 * keyboard.c (command_loop_1): Handle NORECORD in call of
4226 Fselect_frame (currently ifdefd).
4227
9020b223
GM
42282008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
4229
4230 * emacs.c (USAGE2): Untabify.
4231
793ffee8
SM
42322008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
4233
4234 * composite.c (fill_gstring_header): Fix copy/paste typo.
4235
ab6d1131
MR
42362008-10-31 Martin Rudalics <rudalics@gmx.at>
4237
4238 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
4239 (Fother_window): Rename argument and rewrite doc-string.
4240 (select_window_norecord): Fix return value. (Bug#1276)
4241
601a9cf1
JB
42422008-10-30 Juanma Barranquero <lekktu@gmail.com>
4243
4244 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
4245 new frames overriding foreground for tooltips. Based on similar patch
4246 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
4247
813b0652
CY
42482008-10-29 Chong Yidong <cyd@stupidchicken.com>
4249
4250 * emacs.c (Fdaemon_initialized): Initialize nfd.
4251
4414f58f
MR
42522008-10-29 Martin Rudalics <rudalics@gmx.at>
4253
4254 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
4255 (Fwindow_text_height): Clarify doc-strings.
4256 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
4257 doc-string of window-scroll-functions.
4258
ecdcaa09
RS
42592008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
4260
4261 * category.c (syms_of_category): Fix typo in docstring.
4262
23fe745a
JB
42632008-10-28 Juanma Barranquero <lekktu@gmail.com>
4264
4265 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
4266 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
4267 Fix typos in docstrings.
4268
ff808935
DN
42692008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
4270
4271 * emacs.c (daemon_pipe): Make non-static.
4272 (IS_DAEMON): Move definition ...
4273 * lisp.h (IS_DAEMON): ... here.
4274 (daemon_pipe): Declare.
4275 (is_daemon): Remove.
4276 * dispnew.c (init_display): Use IS_DAEMON.
4277
fc012771
SM
42782008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
4279
4280 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
4281 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
4282
4283 * emacs.c (is_daemon): Remove.
4284 (main): Don't set is_daemon.
4285 (IS_DAEMON): New macro.
4286 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 4287 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
4288 parent exits.
4289 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
4290
d8bdbe6f
CY
42912008-10-27 Chong Yidong <cyd@stupidchicken.com>
4292
d1a072bf
CY
4293 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
4294 over-sized glyph, draw it with the default glyph width.
4295
e2e325aa
CY
4296 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4297 glyph, draw it with the default glyph width.
4298
4299 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4300 glyph, draw it with the default glyph width.
4301
d8bdbe6f
CY
4302 * xdisp.c (try_scrolling): When computing the distance from the
4303 scroll margin to PT, try moving some distance past the window
4304 bottom before giving up.
4305
7bfac547
MR
43062008-10-27 Martin Rudalics <rudalics@gmx.at>
4307
4308 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
4309 (Fset_window_buffer): Explain in doc-string that a window can be
4310 "strongly" dedicated to its buffer.
4311
4ff029f6
DN
43122008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
4313
4314 * emacs.c (daemon_name): New variable.
4315 (main): Deal with --daemon=SERVER_NAME.
4316 (Fdaemonp): Return a name if one was passed to --daemon.
4317
5790ef40
DN
43182008-10-26 Romain Francoise <romain@orebokech.com>
4319
f9bd0df9 4320 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
4321 (main): Create a pipe before forking, make the parent exit only after
4322 the child has closed its end of the pipe. Move closing the
4323 descriptors ...
4324 (Fdaemon_initialized): ... here. New function.
4325
f5385255
SM
43262008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
4327
4d632321
SM
4328 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
4329 the previous unoptimized table.
4330
f5385255
SM
4331 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
4332 the distinction between non-nil and non-t value of `dedicated'.
4333
6c56a0f3
CY
43342008-10-25 Chong Yidong <cyd@stupidchicken.com>
4335
4336 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 4337 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 4338
fec89261
MR
43392008-10-25 Martin Rudalics <rudalics@gmx.at>
4340
4341 * window.c (Fget_buffer_window, Fdelete_windows_on)
4342 (Freplace_buffer_in_windows): Make buffer argument optional and
4343 rename to buffer_or_name.
4344
34fcddd0
CY
43452008-10-24 Chong Yidong <cyd@stupidchicken.com>
4346
f5385255
SM
4347 * xdisp.c (handle_single_display_spec, handle_display_prop):
4348 Undo 2005-05-16 change.
34fcddd0
CY
4349 (handle_stop): Pop iterator if it's loaded with an empty string.
4350 (get_overlay_strings_1): Don't save iterator if it's loaded with
4351 an empty string (bug#1201).
4352
064766f2
KH
43532008-10-24 Kenichi Handa <handa@m17n.org>
4354
4355 * ftfont.c (ftfont_otf_features): Fix previous change.
4356 (ftfont_otf_capability): Check FeatureList.FeatureCount before
4357 calling ftfont_otf_features.
4358
f9bd0df9 43592008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
4360
4361 * font.c (font_match_p): Fix for the case that a vector of
4362 characters is in script-representative-chars.
4363
1dae9197
MA
43642008-10-24 Michael Albinus <michael.albinus@gmx.de>
4365
4366 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 4367 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
4368 (xd_read_queued_messages): Catch Qdbus_error from the macros.
4369 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
4370 macro. (Bug#1186).
4371
f9bd0df9 43722008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
4373
4374 * s/sol2-10.h: New file.
4375
878a4584
JB
43762008-10-23 Juanma Barranquero <lekktu@gmail.com>
4377
4378 * xdisp.c (fill_glyph_string): Fix typo in source (though the
4379 poor beast has survived 9+ years and the jump from xterm.c!).
4380
cd265ca6
MR
43812008-10-23 Martin Rudalics <rudalics@gmx.at>
4382
4383 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
4384 Reword doc-string.
f5385255 4385 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 4386
472a4dc9
JB
43872008-10-23 Juanma Barranquero <lekktu@gmail.com>
4388
4389 * character.c (syms_of_character) <script-representative-chars>:
4390 <unicode-category-table>: Doc fixes.
4391
159bd5a2
NF
43922008-10-23 Noah Friedman <friedman@splode.com>
4393
4394 * coding.c (make_conversion_work_buffer): Check that
4395 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
4396 Fget_buffer_create.
4397
49f9c344
KH
43982008-10-23 Kenichi Handa <handa@m17n.org>
4399
4400 * font.c (font_add_log): Check the values of extra properties.
4401
12bb3111
MR
44022008-10-22 Martin Rudalics <rudalics@gmx.at>
4403
4404 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4405 Reword doc-string.
4406 (Fset_window_parameter): Use NILP.
4407 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 4408 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 4409
bbeb4e99
JB
44102008-10-22 Juanma Barranquero <lekktu@gmail.com>
4411
4412 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
4413
44142008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
4415
4416 * nsfns.m (ns_appkit_version): New function.
4417 (x-server-version): Use it.
4418 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
4419 (x-server-vendor): Don't check_ns().
4420
4421 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
4422
a9b555d3
JB
44232008-10-22 Juanma Barranquero <lekktu@gmail.com>
4424
4425 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4426 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
4427
4626499f
KH
44282008-10-22 Kenichi Handa <handa@m17n.org>
4429
e3681952
KH
4430 * syntax.c (scan_words): Call word_boundary_p instead of comparing
4431 scripts.
4432
4626499f
KH
4433 * category.c (word_boundary_p): Check scripts instead of charset.
4434 Handle nil value in word-separating-categories and
4435 word-combining-categories.
4436 (syms_of_category): Fix docstrings of word-separating-categories
4437 and word-combining-categories.
4438
1560f91a
EZ
44392008-10-21 Eli Zaretskii <eliz@gnu.org>
4440
4441 * coding.c (Fencode_coding_region, Fdecode_coding_region)
4442 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
4443
f4668441
MR
44442008-10-21 Martin Rudalics <rudalics@gmx.at>
4445
4446 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
4447 Rename arg "buffer" to "buffer_or_name".
4448 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
4449 it optional.
4450 (no_switch_window): Remove since the return value is not used.
a9b555d3 4451 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
4452 Consider window as dedicated when Fwindow_dedicated_p returns a
4453 non-nil value.
4454 * lisp.h: Remove prototype for no_switch_window.
4455
fd75ddb2
JD
44562008-10-21 Jan Djärv <jan.h.d@swipnet.se>
4457
4458 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 4459 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 4460
07295713
KH
44612008-10-21 Kenichi Handa <handa@m17n.org>
4462
4463 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
4464 check Vlatin_extra_code_table.
4465
712adc82
EZ
44662008-10-20 Eli Zaretskii <eliz@gnu.org>
4467
4468 * fileio.c (Fset_file_modes): Doc fix.
4469
f549eb0b
MA
44702008-10-19 Michael Albinus <michael.albinus@gmx.de>
4471
4472 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
4473 in arrays.
4474
aac0c6e3
MR
44752008-10-19 Martin Rudalics <rudalics@gmx.at>
4476
4477 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4478 Mention kill-buffer in doc-string.
4479 (Fset_window_buffer): Reinsert tem check removed in last commit.
4480 (Fenlarge_window, Fshrink_window): Have argument names and
4481 doc-string follow Elisp manual more closely.
4482
44832008-10-18 Eli Zaretskii <eliz@gnu.org>
4484
4485 * fileio.c (Fset_file_modes): Doc fix.
4486
44872008-10-18 Martin Rudalics <rudalics@gmx.at>
4488
4489 * window.c (Fwindow_width, Fset_window_start)
4490 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
4491 (Fdelete_windows_on, Freplace_buffer_in_windows):
4492 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
4493 (Fwindow_dedicated_p): Make window argument optional.
4494 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
4495 (Fset_window_buffer): Respect any non-nil dedicated value for
4496 window. Rename "buffer" argument to "buffer_or_name".
4497
44982008-10-18 Ulrich Mueller <ulm@gentoo.org>
4499
4500 * m/sh3.h: New file, machine description for SuperH.
4501
45022008-10-17 Martin Rudalics <rudalics@gmx.at>
4503
4504 * window.c (Fsplit_window): Rename arg horflag to horizontal.
4505
45062008-10-17 Kenichi Handa <handa@m17n.org>
4507
4508 * ftfont.c (ftfont_otf_features): Fix indexing
4509 gsub_gpos->FeatureList.Feature. Check the validity of indices.
4510
45112008-10-16 Magnus Henoch <mange@freemail.hu>
4512
4513 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
4514 (Fdbus_call_method_asynchronously): Ditto.
4515 This change makes C-h f display the argument list.
4516
45172008-10-16 Chong Yidong <cyd@stupidchicken.com>
4518
4519 * fileio.c (Fexpand_file_name): Doc fix.
4520
4521 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
4522 of :foreground and :background equivalent to unspecified (20.x
4523 compatibility).
4524
45252008-10-15 Eli Zaretskii <eliz@gnu.org>
4526
4527 * buffer.c (syms_of_buffer): Doc fix.
4528
45292008-10-14 Kenichi Handa <handa@m17n.org>
4530
4531 * font.c (font_clear_prop): When clearing font width, clear the
4532 average width field too.
4533
45342008-10-12 Andreas Schwab <schwab@suse.de>
4535
4536 * ftfont.c (ftfont_shape_by_flt): Make static.
4537 * ftfont.h (ftfont_shape_by_flt): Don't declare.
4538
4539 * font.c: Don't include <m17n-flt.h>.
4540
45412008-10-10 Eli Zaretskii <eliz@gnu.org>
4542
4543 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
4544
45452008-10-09 Eli Zaretskii <eliz@gnu.org>
4546
4547 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
4548 away code.
4549
45502008-10-09 Chong Yidong <cyd@stupidchicken.com>
4551
4552 * dispnew.c (update_text_area): Avoid looping due to large glyph
4553 overhangs (bug#1070).
4554
45552008-10-09 Kenichi Handa <handa@m17n.org>
4556
4557 * fontset.c (face_for_char): If face->fontset is negative, just
4558 return ascii_face.
4559
f5385255
SM
4560 * font.c (font_delete_unmatched): Fix previous change.
4561 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
4562
45632008-10-09 Martin Rudalics <rudalics@gmx.at>
4564
4565 * frame.c (Fraise_frame): On text-only terminals select frame in
4566 order to make it visible. (Bug#1061)
4567
45682008-10-08 Chong Yidong <cyd@stupidchicken.com>
4569
4570 * fontset.c (fontset_find_font): Check frame validity.
4571
45722008-10-07 Chong Yidong <cyd@stupidchicken.com>
4573
a9b555d3 4574 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
4575 (xg_display_close): Allow Emacs to close all displays (bug#985).
4576
45772008-10-06 Andreas Schwab <schwab@suse.de>
4578
f5385255 4579 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
4580
45812008-10-06 Chong Yidong <cyd@stupidchicken.com>
4582
f5385255 4583 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 4584
a9b555d3 4585 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
4586
4587 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
4588 during initialization.
4589
45902008-10-04 Eli Zaretskii <eliz@gnu.org>
4591
4592 * xdisp.c (redisplay_internal): If frame switched, redisplay the
4593 whole thing on MSDOS frames as well as on a TTY.
4594
4595 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
4596 well as for TTY.
4597 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
4598 well as on a TTY.
4599
4600 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
4601 as well as for TTY.
4602
4603 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
4604
4605 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
4606 MSDOS frames as well.
4607
46082008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4609
4610 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
4611 correct arguments.
b71ac3dd 4612 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
4613
46142008-10-03 Glenn Morris <rgm@gnu.org>
4615
4616 * emacs.c (USAGE1): Add --daemon.
4617
46182008-10-02 Eli Zaretskii <eliz@gnu.org>
4619
4620 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
4621 100, so it's in percents as advertised.
4622
46232008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4624
4625 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
4626 (ns_output.current_cursor, ns_output.desired_cursor)
4627 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
4628 (FRAME_NEW_CURSOR_COLOR): Remove.
4629
4630 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 4631 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
4632 enumeration (HOLLOW_BOX_CURSOR, etc.).
4633
4634 * nsterm.m (ns_frame_rehighlight): Remove commented code.
4635 (draw_window_cursor): Simplify code.
f5385255
SM
4636 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
4637 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 4638 updates manually.
a9b555d3
JB
4639 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
4640 Use core Emacs cursor types.
aac0c6e3 4641
b8ff72fa 4642 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
4643
46442008-10-02 Martin Rudalics <rudalics@gmx.at>
4645
4646 * process.c (Faccept_process_output): Fix doc-string.
4647
46482008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
4649
4650 * gmalloc.c (__sbrk): Also define for uClibc.
4651
4652 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
4653 for uClibc.
4654
46552008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4656
4657 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
4658 styles.
4659 (nsfont_open): Reenable the cache.
4660
46612008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4662
4663 * font.c (font_matching_entity): Reflect ATTRS in font selection.
4664 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
4665
46662008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
4667
4668 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
4669 a suspended terminal.
4670
46712008-09-30 Michael Albinus <michael.albinus@gmx.de>
4672
4673 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
4674
46752008-09-30 Eli Zaretskii <eliz@gnu.org>
4676
4677 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
4678
46792008-09-30 Chong Yidong <cyd@stupidchicken.com>
4680
4681 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
4682 in a continued line coincides with a line beginning.
4683
46842008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4685
4686 * nsfont.m (nsfont_trait_distance): Fix bug.
4687 (nsfont_list): Return a list rather than a vector (syncs with Handa
4688 changes of 2008-05-14).
4689 (nsfont_open): Improve logging.
4690
46912008-09-29 Andreas Schwab <schwab@suse.de>
4692
4693 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4694
46952008-09-28 Martin Rudalics <rudalics@gmx.at>
4696
4697 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
4698 name as char-resolve-modifiers.
4699 Reported by: Markus Triska <markus.triska@gmx.at>
4700
47012008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
4702
4703 * dispnew.c (init_display): Return earlier when running as a daemon.
4704
47052008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4706
4707 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
4708
47092008-09-27 Eli Zaretskii <eliz@gnu.org>
4710
4711 * composite.c (Fcomposition_get_gstring)
4712 (Fcompose_region_internal, Fcompose_string_internal)
4713 (Ffind_composition_internal): Doc fix.
4714 (syms_of_composite) <compose-chars-after-function>: Doc fix.
4715 (syms_of_composite) <auto-composition-function>: Doc fix.
4716 (syms_of_composite) <composition-function-table>: Doc fix.
4717
47182008-09-25 Chong Yidong <cyd@stupidchicken.com>
4719
4720 * search.c (wordify): New argument for lax word-ends.
4721 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
4722
47232008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
4724
4725 * lisp.h (is_daemon): Declare.
4726 * dispnew.c (init_display): Do not try to initialize the terminal
4727 when running as a daemon.
4728
47292008-09-22 Chong Yidong <cyd@stupidchicken.com>
4730
4731 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
4732 x_display_pixel_height.
4733
47342008-09-22 Martin Rudalics <rudalics@gmx.at>
4735
4736 * undo.c (record_point): Don't call Fundo_boundary for first
4737 change. (Bug#731)
4738
47392008-09-22 Juanma Barranquero <lekktu@gmail.com>
4740
4741 * emacs.c (Fdaemonp): Doc fix.
4742
47432008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
4744
4745 * emacs.c (main): Place #ifdef in the proper place.
4746
47472008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
4748
4749 * emacs.c (standard_args): Add --daemon.
4750 (main): Disconnect from the terminal when --daemon is passed.
4751 (is_daemon): New variable.
4752 (Fdaemonp): New function.
4753 (syms_of_emacs): Defsubr it.
4754
47552008-09-20 Chong Yidong <cyd@stupidchicken.com>
4756
4757 * xdisp.c (get_next_display_element): Handle string display
4758 correctly when checking for the end of a box run.
4759
47602008-09-20 Glenn Morris <rgm@gnu.org>
4761
4762 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
4763 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
4764 (Frename_file): Avoid copying to trash if a rename involves
4765 a delete. (Bug#964).
4766
47672008-09-20 Eli Zaretskii <eliz@gnu.org>
4768
4769 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
4770 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
4771 frames as well as termcap frames.
4772 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
4773 get_named_tty.
4774
47752008-09-19 Eli Zaretskii <eliz@gnu.org>
4776
4777 * process.c (procfs_system_process_attributes): Fix cmdline in
4778 case /proc/PID/cmdline is empty.
4779
4780 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
4781 x_display_pixel_height.
4782
47832008-09-19 Juanma Barranquero <lekktu@gmail.com>
4784
4785 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
4786
4787 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
4788 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
4789
47902008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
4791
4792 * dispextern.h (struct it): Move line_wrap away from the middle of
4793 bitfields. Move voffset in struct iterator_stack_entry after the
4794 bitfields. Move tab_width near after another short.
4795
47962008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
4797
4798 * frame.h (struct frame): Move alpha from the middle of bitfields.
4799
4800 * window.h (struct window): Move frozen_window_start_p after the
4801 rest of the bitfields to reduce padding.
4802
48032008-09-18 Chong Yidong <cyd@stupidchicken.com>
4804
4805 * xterm.h (x_display_info): Remove `height' and `width' members.
4806
4807 * nsterm.h (ns_display_info): Remove `height' and `width' members.
4808
4809 * w32term.h (w32_display_info): Remove `height', `width',
4810 `height_in', and `width_in' members.
4811
b8ff72fa
SM
4812 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4813 New functions.
aac0c6e3
MR
4814 (x_calc_absolute_position): Use them.
4815 (x_term_init): Omit removed `height' and `width' members.
4816
b8ff72fa
SM
4817 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4818 New functions.
aac0c6e3
MR
4819 (w32_read_socket, x_calc_absolute_position): Use them.
4820 (w32_initialize_display_info, w32_term_init): Omit removed members
4821 of w32_display_info.
4822
b8ff72fa
SM
4823 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
4824 New functions.
4825 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 4826
b8ff72fa
SM
4827 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4828 New functions.
aac0c6e3
MR
4829 (x_calc_absolute_position): Use them.
4830 (x_term_init): Omit removed `height' and `width' members.
4831
4832 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
4833 (compute_tip_xy):
4834 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
4835 * xmenu.c (menu_position_func): Use x_display_pixel_height and
4836 x_display_pixel_width.
4837
48382008-09-18 Kenichi Handa <handa@m17n.org>
4839
4840 * composite.c (fill_gstring_header): Don't check FROM and TO here.
4841 (composition_compute_stop_pos): Fix handling of static composition.
4842 (Fcomposition_get_gstring): Check FROM and TO at first.
4843
48442008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4845
46e722a9 4846 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
4847 mixup (YAILOM).
4848
48492008-09-17 Chong Yidong <cyd@stupidchicken.com>
4850
4851 * indent.c (Fvertical_motion): Use position reported by iterator
4852 instead of PT for determining screen motion (bug#943).
4853
48542008-09-17 Romain Francoise <romain@orebokech.com>
4855
4856 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
4857
48582008-09-17 Kenichi Handa <handa@m17n.org>
4859
4860 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
4861
4862 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
4863 if necessary.
4864
48652008-09-16 Kenichi Handa <handa@m17n.org>
4866
4867 * coding.c (make_conversion_work_buffer): Avoid calling
4868 Fget_buffer_create if it is not necessary.
4869
48702008-09-15 Martin Rudalics <rudalics@gmx.at>
4871
4872 * window.c (Fselect_window): Don't update window_select_count and
4873 use_time when norecord is not nil.
4874
48752008-09-14 Kenichi Handa <handa@m17n.org>
4876
4877 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
4878 specpdl_ptr.
4879
48802008-09-12 Kenichi Handa <handa@m17n.org>
4881
4882 * indent.c (scan_for_column): Don't handle automatic composition
4883 if the current buffer is not associated with a window.
4884
4885 * composite.c (composition_reseat_it): If the current buffer is
4886 not associated with a window, ignore the automatic composition.
4887 (find_automatic_composition): Likewise.
4888
48892008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4890
4891 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
4892 (Fgpm_mouse_stop): Use it.
4893 * termhooks.h (close_gpm): Declare.
4894 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
4895 connection if Gpm_GetEvent fails.
4896
4897 * window.c (set_window_buffer): Always preserve current-buffer.
4898
48992008-09-12 Glenn Morris <rgm@gnu.org>
4900
4901 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
4902
49032008-09-11 Glenn Morris <rgm@gnu.org>
4904
4905 * charset.c (charset-map-path): Doc fix.
4906
49072008-09-10 Kenichi Handa <handa@m17n.org>
4908
4909 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
4910
4911 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
4912 compose a grapheme cluster with the preceding base glyph.
4913
4914 * composite.c (composition_compute_stop_pos): Fix previous change.
4915 Reset cmp_it->id to -1 at first.
4916
49172008-09-10 Glenn Morris <rgm@gnu.org>
4918
4919 * Makefile.in (character.o, chartab.o): Fix config.h typo.
4920
49212008-09-09 Chong Yidong <cyd@stupidchicken.com>
4922
4923 * keyboard.c (read_key_sequence): Reapply translation maps when
4924 switching keyboards.
4925
49262008-09-09 Kenichi Handa <handa@m17n.org>
4927
4928 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
4929 characters.
4930
4931 * composite.c (FORWARD_CHAR): Fix calculation
4932 of (POSITION).pos_byte.
4933 (composition_compute_stop_pos): Limit the search of composition to
4934 at most 500 characters ahead. If we reach the limit or find a
4935 newline, set cmp_it->ch to -2 and return 0.
4936 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
4937
49382008-09-08 Kenichi Handa <handa@m17n.org>
4939
4940 * indent.c (Fvertical_motion): Be sure to set
4941 it_overshoot_expected if it.cmp_it.id is non-negative.
4942
49432008-09-07 Andreas Schwab <schwab@suse.de>
4944
4945 * callproc.c (Fcall_process): Don't hold references to string data
4946 across garbage collection. Move initialisation of new_argv down
4947 to avoid compiler bug.
4948
49492008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4950
4951 * process.c (Fsystem_process_attributes): Doc fix.
4952
49532008-09-07 Chong Yidong <cyd@stupidchicken.com>
4954
4955 * callproc.c (Fcall_process): Canonicalize current directory name.
4956
4957 * xdisp.c (move_it_to): When moving by vpos, ensure that the
4958 iterator advances to the next line if the current line ends in a
4959 continued tab.
4960
49612008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
4962
4963 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
4964 member to point to cmp_from.
4965
4966 * xdisp.c: Doc fix for references to gidx data member.
4967
49682008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
4969
4970 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
4971
49722008-09-07 Kenichi Handa <handa@m17n.org>
4973
4974 * composite.c (FORWARD_CHAR): Check STOP after
4975 incrementing (POSITION).pos.
4976
49772008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4978
4979 * process.c (Fsystem_process_attributes): Doc fix.
4980
49812008-09-06 Chong Yidong <cyd@stupidchicken.com>
4982
4983 * keyboard.c (Ftop_level): Doc fix.
4984
49852008-09-06 Eli Zaretskii <eliz@gnu.org>
4986
4987 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
4988 minibuffer, don't let lower part of menu invade the echo area.
4989
4990 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
4991 "char *q" to access menu text and advance through it. Revert the
4992 change that displayed ">" instead of ASCII character 0x10.
4993
49942008-09-05 Eli Zaretskii <eliz@gnu.org>
4995
4996 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
4997 toggle boxes and radio buttons on MS-DOS as well.
4998
49992008-09-05 Kenichi Handa <handa@m17n.org>
5000
5001 * composite.c (autocmp_chars): Check lookback count.
5002 (composition_compute_stop_pos): Set cmp_it->lookback.
5003 (composition_reseat_it): Check lookback count.
5004 (struct position_record): New struct.
5005 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
5006 (find_automatic_composition): New function.
5007 (composition_adjust_point): Use find_automatic_composition.
5008
5009 * dispextern.h (struct composition_it): New member lookback.
5010
50112008-09-02 Chong Yidong <cyd@stupidchicken.com>
5012
5013 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
5014 if moving by a single line.
5015
50162008-09-02 Andreas Schwab <schwab@suse.de>
5017
5018 * xterm.c (x_delete_display): Fix merge error.
5019
5020 * fileio.c (Fexpand_file_name): Remove unused variables.
5021
50222008-09-02 Eli Zaretskii <eliz@gnu.org>
5023
5024 * fileio.c (Fexpand_file_name): Copy argument `name' into local
5025 storage on all platforms, not just on DOS_NT.
5026
50272008-09-02 Jason Rumney <jasonr@gnu.org>
5028
b8ff72fa
SM
5029 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
5030 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
5031
50322008-09-01 Chong Yidong <cyd@stupidchicken.com>
5033
5034 * xfaces.c (Finternal_set_alternative_font_family_alist)
5035 (Finternal_set_alternative_font_registry_alist): Properly copy
5036 entire alist structure.
5037
50382008-09-01 Kenichi Handa <handa@m17n.org>
5039
d66c0241 5040 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 5041 representative chars of the script is a vector.
d66c0241
JB
5042 (ftfont_list): Handle the case where the representative chars of
5043 the script is a vector.
aac0c6e3
MR
5044
5045 * character.c (syms_of_character): Docstring of
5046 script-representative-chars fixed.
5047
50482008-08-31 Eli Zaretskii <eliz@gnu.org>
5049
5050 * msdos.c (BUILD_CHAR_GLYPH): New macro.
5051 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
5052 the menu. Allocate larger buffer for `text', to account for
5053 possible ^C characters.
5054
50552008-08-31 Martin Rudalics <rudalics@gmx.at>
5056
5057 * xdisp.c (prepare_menu_bars): Don't call
5058 Vwindow_size_change_functions with arg Qt.
5059
50602008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
5061
5062 * font.h (font_range):
5063 * fileio.c (report_file_error):
46e722a9
SM
5064 * composite.c (composition_update_it): Yet another int/Lisp_Object
5065 mixup (YAILOM).
aac0c6e3
MR
5066
50672008-08-30 Glenn Morris <rgm@gnu.org>
5068
5069 * data.c (Fmake_variable_frame_local): Doc fix.
5070
5071 * frame.c (Fmodify_frame_parameters): Doc fix.
5072
50732008-08-30 Eli Zaretskii <eliz@gnu.org>
5074
5075 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
5076 needed by GetTokenInformation.
5077 (w32_system_process_attributes): Check return values of all system
5078 APIs.
5079
5080 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
5081 only when the state changes.
5082 (IT_update_begin, IT_update_end): Add termscript trace.
5083
5084 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
5085 clipboard is unavailable. Set dst to NULL if it doesn't point to
5086 malloc'ed data.
5087 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
5088 passing random values to xfree.
5089
5090 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 5091 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
5092
50932008-08-29 Jason Rumney <jasonr@gnu.org>
5094
5095 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
5096
50972008-08-29 Eli Zaretskii <eliz@gnu.org>
5098
5099 * composite.c (fill_gstring_body): Avoid compiler warnings.
5100
5101 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
5102 LGLYPH_SET_CODE to avoid compiler warnings.
5103
2ae37cf0 5104 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
5105
5106 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
5107
5108 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
5109 LGLYPH_SET_CODE.
5110
51112008-08-29 Kenichi Handa <handa@m17n.org>
5112
5113 * fileio.c (report_file_error): Don't downcase the first character
5114 of errstring if it is still unibyte.
5115
51162008-08-29 Kenichi Handa <handa@m17n.org>
5117
5118 These changes are to re-implement the automatic composition so
5119 that it doesn't use text properties.
5120
5121 * Makefile.in (ftfont.o): Depend on composite.h.
5122 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
5123
5124 * character.h (Vunicode_category_table): Extern it.
5125
5126 * character.c (Vunicode_category_table): New variable.
5127 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
5128
5129 * chartab.c (optimize_sub_char_table): Perform more greedy
5130 optimization.
5131
b8ff72fa
SM
5132 * composite.h (enum composition_method):
5133 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
5134 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
5135 (Vcomposition_function_table): Extern it.
5136 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
5137 (composition_gstring_put_cache, composition_gstring_from_id)
5138 (composition_gstring_p, composition_gstring_width)
5139 (composition_compute_stop_pos, composition_reseat_it)
5140 (composition_update_it, composition_adjust_point): Extern them.
5141 (Fcomposition_get_gstring): EXFUN it.
5142
d66c0241 5143 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
5144 (Vcomposition_function_table)
5145 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
5146 (gstring_hash_table, gstring_work, gstring_work_headers):
5147 New variables.
aac0c6e3
MR
5148 (gstring_lookup_cache, composition_gstring_put_cache)
5149 (composition_gstring_from_id, composition_gstring_p)
5150 (composition_gstring_width, fill_gstring_header)
5151 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
5152 (composition_reseat_it, composition_update_it)
b8ff72fa 5153 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
5154 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
5155 and gstring_work_headers. DEFVAR_LISP composition-function-table.
5156 Defsubr compostion_get_gstring.
5157
5158 * dispextern.h (struct glyph): New union u.cmp. Delete the member
5159 cmp_id.
5160 (struct glyph_string): Delete the member gidx. New members
5161 cmp_id, cmp_from, and cmp_to.
5162 (enum it_method): Delete GET_FROM_COMPOSITION.
5163 (struct composition_it): New struct.
5164 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
5165 Delete c, len, cmp_id, cmp_len in u.comp.
5166
5167 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 5168 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 5169 (enum lglyph_indices): Likewise.
b8ff72fa 5170 (font_range): Adjust extern.
aac0c6e3
MR
5171 (font_fill_lglyph_metrics): Extern it.
5172
5173 * font.c (QCf): New variable.
5174 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5175 (font_prepare_composition): Delete this function.
5176 (font_range): Type and arguments changed.
5177 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
5178 (font_fill_lglyph_metrics): New function.
b8ff72fa 5179 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 5180 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
5181 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
5182 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
5183
5184 * fontset.h (font_for_char): Extern it.
5185
5186 * fontset.c (font_for_char): New function.
5187
5188 * ftfont.c: Include composite.h.
5189 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 5190 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
5191
5192 * indent.c: Include composite.h and dispextern.h.
5193 (check_composition): Delete this function.
5194 (scan_for_column): Handle composition by
5195 composition_compute_stop_pos, composition_reseat_it, and
5196 composition_update_it.
5197 (compute_motion): Likewise.
5198 (Fvertical_motion): Fix checking of composition.
5199
5200 * keyboard.c (adjust_point_for_property): Check composition by
5201 composition_adjust_point.
5202
b8ff72fa 5203 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
5204 struct glyph_string.
5205
b8ff72fa
SM
5206 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
5207 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
5208 struct glyph.
5209 (produce_composite_glyph): Likewise.
5210
b8ff72fa
SM
5211 * w32term.c (x_draw_composite_glyph_string_foreground):
5212 Adjust for the change of struct glyph_string.
aac0c6e3
MR
5213 (x_draw_glyph_string): Likewise.
5214
5215 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
5216 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5217
5218 * xdisp.c: Include font.h.
5219 (it_props): Delete the entry for Qauto_composed.
5220 (init_iterator): Initialize it->cmp_it.id to -1.
5221 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 5222 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
5223 (handle_auto_composed_prop): Delete it.
5224 (handle_composition_prop): Handle only static composition.
5225 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
5226 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 5227 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
5228 (pop_it): Likewise.
5229 (get_next_element): Delete next_element_from_composition.
5230 (CHAR_COMPOSED_P): New macro.
5231 (get_next_display_element): For automatic composition, get a face
5232 from the font in the glyph-string.
5233 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 5234 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
5235 (next_element_from_string): Check if the character at the current
5236 position is composed by CHAR_COMPOSED_P.
5237 (next_element_from_buffer): Likewise.
d66c0241
JB
5238 (next_element_from_composition): Adjust for the change of struct it.
5239 Update it->cmp_it.
b8ff72fa
SM
5240 (dump_glyph): Adjust for the change of struct glyph.
5241 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
5242 it and struct glyph. Don't handle automatic composition here.
5243 (fill_gstring_glyph_string): New function.
5244 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 5245 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
5246 (BUILD_GSTRING_GLYPH_STRING): New macro.
5247 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
5248 automatic composition.
b8ff72fa 5249 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 5250 struct glyph.
b8ff72fa 5251 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 5252
b8ff72fa 5253 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
5254 the change of struct glyph_string.
5255 (x_draw_glyph_string): Likewise.
5256
52572008-08-29 Glenn Morris <rgm@gnu.org>
5258
5259 * buffer.c (word-wrap): Doc fix.
5260 * xdisp.c (truncate-partial-width-windows): Doc fix.
5261 Increase default to 50.
5262
52632008-08-29 Chong Yidong <cyd@stupidchicken.com>
5264
5265 * xdisp.c (update_tool_bar_unwind): New function.
5266 (update_tool_bar): Temporarily set selected frame before building
5267 tool-bar items.
5268
52692008-08-28 Michael Albinus <michael.albinus@gmx.de>
5270
5271 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
5272 snprintf, respectively.
5273 (xd_append_arg): Convert strings with Fstring_make_unibyte.
5274
52752008-08-28 Chong Yidong <cyd@stupidchicken.com>
5276
5277 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
5278 LDFLAGS to GNUstep CC invocation.
5279
52802008-08-27 Chong Yidong <cyd@stupidchicken.com>
5281
5282 * indent.c (Fvertical_motion): Revert last change. Handle the
5283 general case where we are moving forward, and PT spans multiple
5284 screen lines.
5285
5286 * eval.c (find_handler_clause): Temporarily increase
5287 max-lisp-eval-depth while printing the backtrace buffer, to
5288 guarantee that help-mode code can run.
5289
52902008-08-27 Eli Zaretskii <eliz@gnu.org>
5291
5292 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
5293 colors under -rv.
5294 (IT_set_frame_parameters): Don't swap foreground and background
5295 colors if `(reverse . t)' is present in the frame properties.
5296 (internal_terminal_init): Call init_frame_faces only for the
5297 initial frame.
5298
52992008-08-27 Andreas Schwab <schwab@suse.de>
5300
5301 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
5302
53032008-08-27 Andreas Schwab <schwab@suse.de>
5304
5305 * search.c (search_buffer): Set char_base to zero only at the end.
5306
53072008-08-27 Kenichi Handa <handa@m17n.org>
5308
b8ff72fa 5309 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
5310
53112008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
5312
5313 * xterm.c (x_term_init): Temporarily hide the partially
5314 initialized terminal while calling vendor-specific-keysyms.
5315
53162008-08-26 Eli Zaretskii <eliz@gnu.org>
5317
5318 * msdos.c (internal_terminal_init): Most initializations done only
5319 once, especially initial_screen_colors[] and termscript open.
5320
53212008-08-26 Chong Yidong <cyd@stupidchicken.com>
5322
5323 * eval.c (Fcondition_case): Doc fix.
5324
5325 * widgetprv.h (EmacsFramePart): Change font member to the new font
5326 struct.
5327
5328 * widget.c: Include character.h and font.h for XSETFONT.
5329 (setup_frame_gcs): Compute X font id from font struct, just once.
5330
53312008-08-26 Eli Zaretskii <eliz@gnu.org>
5332
5333 * term.c (get_named_tty): Fix last change.
5334
53352008-08-26 Chong Yidong <cyd@stupidchicken.com>
5336
5337 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 5338 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
5339
53402008-08-25 Eli Zaretskii <eliz@gnu.org>
5341
5342 * frame.c (do_switch_frame): Mark previously displayed frame as
5343 obscured for FRAME_MSDOS_P frames as well.
5344
53452008-08-24 Eli Zaretskii <eliz@gnu.org>
5346
5347 * frame.c (make_terminal_frame): Initialize f->terminal,
5348 f->terminal->reference_count, and scroll bars on MS-DOS as well.
5349 Set the top frame to newly created frame.
5350 (Fmake_terminal_frame): Reuse the_only_display_info.
5351
5352 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
5353 estimating available memory.
5354
b97439ce 53552008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
5356
5357 * nsterm.m (ns_draw_window_cursor): Don't call
5358 NSDisableScreenUpdates and NSEnableScreenUpdates on
5359 non-NS_IMPL_COCOA systems.
5360
53612008-08-23 Andreas Schwab <schwab@suse.de>
5362
5363 * process.c (procfs_system_process_attributes): Fix use of
5364 uninitialized variables.
5365
53662008-08-23 Eli Zaretskii <eliz@gnu.org>
5367
5368 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
5369
5370 * dispnew.c (init_display): Remove MS-DOS specific conditions for
5371 calling tty-set-up-initial-frame-faces.
5372
b8ff72fa
SM
5373 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
5374 Allow MSDOS frames along with X frames.
aac0c6e3
MR
5375
5376 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
5377 addition to output_termcap.
5378
5379 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
5380
5381 * termchar.h (FRAME_TTY): Support output_msdos_raw.
5382 (struct tty_display_info) [MSDOS]: Add fields related to mouse
5383 highlight.
5384
5385 * process.c [!subprocesses]: Define QCname.
5386 (syms_of_process): Intern and staticpro it.
5387
5388 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
5389 Adjust for changes in encoding/decoding routines.
5390 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
5391 encode_coding and decode_coding.
5392
b8ff72fa 5393 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
5394
5395 * dosfns.c: Include frame.h before termhooks.h.
5396 (dos_cleanup): Use CURTTY ()->termscript instead of a global
5397 variable termscript.
5398
5399 * s/msdos.h (USER_FULL_NAME): Define.
5400 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
5401
5402 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
5403 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
5404 pw->pw_gecos.
5405
5406 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
5407 SELECTED_FRAME as additional (1st) argument.
5408 (tty_read_avail_input): Handle output_msdos_raw in
5409 addition to output_termcap.
5410
5411 * msdos.c: Include frame.h before termhooks.h.
5412 (mouse_on, mouse_off, mouse_moveto, mouse_init)
5413 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
5414 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
5415 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
5416 (IT_set_terminal_modes, IT_reset_terminal_modes)
5417 (IT_set_frame_parameters): Use tty->termscript instead of a global
5418 variable termscript.
5419 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
5420 global variable terminal_coding. Don't refer to
5421 Vnonascii_translation_table.
5422 (internal_terminal_init): Set Vwindow_system in current_kboard.
5423 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
5424 Announce date and time of session start, if termscript is open.
5425 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
5426 term.c:init_tty). Open termscript only of not already open.
5427 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
5428 here instead of dos_ttraw. Don't initialize display if this is an
5429 initial tty. Don't set FRAME_FONT.
5430 (Vwindow_system_version): Bump to 23.
5431 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
5432 is available, set up mouse_position_hook.
5433 (dos_ttraw, IT_set_terminal_modes): If called with initial
5434 terminal, do nothing.
5435 (IT_set_frame_parameters): Handle the Qtty_type frame
5436 parameter by calling internal_terminal_init.
5437 (dos_set_window_size, show_mouse_face)
5438 (clear_mouse_face, IT_note_mode_line_highlight)
5439 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
5440 (dos_rawgetc): Use tty_display_info instead of x_display_info.
5441 (initialize_msdos_display): New function.
5442 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
5443 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
5444 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
5445 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 5446 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
5447 (request_sigio, unrequest_sigio): Don't define, now defined on
5448 sysdep.c.
5449 (IT_write_glyphs): Rewrite to use encode_terminal_code.
5450
5451 * term.c [MSDOS]: Include msdos.h.
5452 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
5453 conditional to DOS_NT. Allow only one call to this function in a
5454 session. Don't allocate a new struct tty_display_info; instead,
5455 reuse the_only_display_info. Call get_tty_size to get screen
5456 dimensions. Call init_baud_rate to set bad_rate.
5457 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
5458 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 5459 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
5460 (get_tty_terminal, get_named_tty, Ftty_type)
5461 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
5462 output_termcap.
b8ff72fa
SM
5463 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
5464 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 5465 only when subprocesses are supported.
aac0c6e3
MR
5466
5467 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
5468 f->output_data.x.
5469 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
5470 terminal devices.
5471
5582fbc7 5472 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
5473 x_output.
5474 (FRAME_FONT): Use output_data.tty.
5475 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
5476 (struct x_display_info): Rename from display_info. Update all users in
5477 msdos.c.
aac0c6e3 5478 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 5479 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
5480 (dos_ttraw): Update prototype.
5481
5482 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
5483 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
5484
54852008-08-23 Jason Rumney <jasonr@gnu.org>
5486
5487 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
5488 (fn_TIFFSetDirectory): New library function used.
5489 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
5490 (tiff_load): Use :index to select among multiple images. Set count
5491 property when multiple images exist.
5492 (gif_format): Use :index, not :image.
5493
54942008-08-23 Chong Yidong <cyd@stupidchicken.com>
5495
5496 * xdisp.c (try_scrolling): Check INT_MAX instead of
5497 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
5498 to obtain INT_MAX.
5499
55002008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
5501
5502 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
5503
55042008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
5505
5506 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
5507 GNUstep library location.
5508
55092008-08-21 Chong Yidong <cyd@stupidchicken.com>
5510
5511 * xfaces.c (x_update_menu_appearance): Check validity of menu font
5512 before using it.
5513
5514 * puresize.h (BASE_PURESIZE): Increase to 1250000.
5515
55162008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5517
5518 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
5519 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
5520 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
5521 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
5522 (EmacsApp-cursor_blink_handler): Remove declaration.
5523 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
5524 match 01 Feb 2008 changes in xterm.c.
5525 (ns_read_socket): Add cast to avoid warning.
5526 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
5527 GNUstep.
5528
55292008-08-20 Chong Yidong <cyd@stupidchicken.com>
5530
5531 * xselect.c (x_get_foreign_selection): Return nil if desired
5532 selection could not be obtained, instead of signalling an error.
5533
55342008-08-20 David Reitter <david.reitter@gmail.com>
5535
5536 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
5537 * nsterm.m: Remove ns-specific code for cursor blinking.
5538 (ns_draw_window_cursor): Clear cursor properly rather than
5539 redrawing the area. Respect width of bar cursors.
5540 These changes enable the use of generic blink-cursor-mode and
5541 generic cursor types in NS and support smooth cursor movements (do
5542 not blink off after command).
5543 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
5544 Nextstep, too.
5545
55462008-08-19 Kenichi Handa <handa@m17n.org>
5547
5548 * font.c (Vfont_log_deferred): New variable.
5549 (font_add_log): Check Vfont_log_deferred.
5550 (font_deferred_log): New function.
5551
5552 * font.h (font_deferred_log): Extern it.
5553
5554 * fontset.c (reorder_font_vector): Use encoding charset of fonts
5555 for sorting.
5556 (face_for_char): Use deferred log.
5557
55582008-08-18 Kenichi Handa <handa@m17n.org>
5559
5560 * fontset.c (face_for_char): Add font log.
5561
5562 * font.c (font_add_log): Add the font properties :script, :lang,
5563 and :otf in the log.
5564
55652008-08-17 Chong Yidong <cyd@stupidchicken.com>
5566
5567 * xdisp.c: Remove dead code.
5568 (handle_invisible_prop, next_overlay_string): Defer call to
5569 setup_for_ellipsis.
5570 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
5571
55722008-08-15 Chong Yidong <cyd@stupidchicken.com>
5573
5574 * xfaces.c (lookup_derived_face): Properly handle possible zero
5575 return value of get_lface_attributes.
5576 (merge_faces): Don't tell lookup_derived_face to signal an error
5577 if face is not found.
5578
5579 * dired.c (Fdirectory_files): Doc fix.
5580
5581 * process.c (make_process): Initialize kill_without_query struct
5582 member.
5583
55842008-08-15 Eli Zaretskii <eliz@gnu.org>
5585
5586 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
5587 Alternative calculation of totphys for Visual Studio 6.
5588
5589 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
5590
5591 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
5592 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
5593 All users changed.
5594 (stat): Only root directory passed to GetDriveType. Allow RAM
5595 disk as well as local fixed disk when w32-get-true-file-attributes
5596 is set to `local'.
5597 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
5598 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
5599 (w32_cached_id, w32_add_to_cache): New functions.
5600 (get_name_and_id): Look account names in the cache before calling
5601 lookup_account_sid.
5602 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
5603 New initialization flags.
5604 (globals_of_w32): Initialize them to zero.
5605 (w32_system_process_attributes): Use w32_cached_id and
5606 w32_add_to_cache.
5607
56082008-08-14 Lawrence Mitchell <wence@gmx.li>
5609
5610 * lread.c (Fread_char, Fread_char_exclusive): If no character
5611 event is read before timeout is reached, return nil, rather than
5612 converting to a number.
5613
56142008-08-14 Chong Yidong <cyd@stupidchicken.com>
5615
5616 * fns.c (use_dialog_box): Doc fix.
5617
5618 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
5619 on OS X.
5620
56212008-08-13 Chong Yidong <cyd@stupidchicken.com>
5622
5623 * frame.c (Qns_parse_geometry): New var.
5624 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
5625
56262008-08-11 Chong Yidong <cyd@stupidchicken.com>
5627
5628 * xdisp.c (x_produce_glyphs): Handle the case when font has no
5629 space character in calculating tabs.
5630
56312008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
5632
5633 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
5634
56352008-08-10 Glenn Morris <rgm@gnu.org>
5636
5637 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
5638 silence gcc "limited range of data type" warnings in some
5639 make_fixnum_or_float calls.
5640
56412008-08-09 Eli Zaretskii <eliz@gnu.org>
5642
5643 * w32.c (w32_system_process_attributes): If the process does not
5644 exist, return nil.
5645
5646 * w32.c: Include thelp32.h, psapi.h and coding.h.
5647 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
5648 declarations.
5649 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
5650 (Process32Next_Proc): New typedefs.
5651 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
5652 (g_b_init_process32_next, g_b_init_open_thread_token)
5653 (g_b_init_impersonate_self, g_b_init_revert_to_self)
5654 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
5655 (g_b_init_get_process_working_set_size)
5656 (g_b_init_global_memory_status_ex): New static variables.
5657 (globals_of_w32): Initialize them.
5658 (create_toolhelp32_snapshot, process32_first, process32_next)
5659 (open_thread_token, impersonate_self, revert_to_self)
5660 (get_process_memory_info, get_process_working_set_size)
5661 (global_memory_status, global_memory_status_ex): New wrapper
5662 functions.
5663 (w32_list_system_processes, w32_system_process_attributes)
5664 (enable_privilege, restore_privilege, ltime, process_times):
5665 New functions.
5666 (convert_time_raw): New function.
5667 (convert_time): Remove conversion of FILETIME into time in 100
5668 nsec units, call convert_time_raw instead.
5669
5670 * process.h (w32_list_system_processes, w32_system_process_attributes):
5671 Add prototypes.
5672 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
5673 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
5674 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
5675 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
5676
5677 * process.c (Fsystem_process_attributes): Doc fix.
5678
56792008-08-08 Chong Yidong <cyd@stupidchicken.com>
5680
5681 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
5682 a continued multi-char glyph; if so, advance to the actual glyph.
5683
56842008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
5685
5686 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
5687
5688 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
5689 (.m.o): Use it.
5690 * config.in: Regenerate.
5691
56922008-08-07 Chong Yidong <cyd@stupidchicken.com>
5693
5694 * xdisp.c (redisplay_window): Revert last change.
5695 (try_window): Check bottom scroll margin too.
5696
56972008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5698
5699 * config.in: Regenerate.
5700
5701 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
5702 -list-load-path-shadows'.
5703 (nsgui.h): Reduce number of things depending on it.
5704
57052008-08-06 Chong Yidong <cyd@stupidchicken.com>
5706
5707 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
5708 instead of window-end which does the wrong thing at eob.
5709 (try_cursor_movement): Minor optimization.
5710 (redisplay_window): If scroll margin is defined, don't assume
5711 window doesn't need scrolling.
5712
57132008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5714
5715 * config.in: Regenerate.
5716
5717 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
5718 (mostlyclean): Don't delete *.d under NS.
5719
5720 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
5721
57222008-08-06 Kenichi Handa <handa@m17n.org>
5723
5724 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
5725
57262008-08-06 Andreas Schwab <schwab@suse.de>
5727
5728 * config.in: Regenerate.
5729
57302008-08-05 Chong Yidong <cyd@stupidchicken.com>
5731
5732 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
5733 forcing a window start.
5734
5735 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
5736 (auto_save_1): Update modtime when auto-save-list-file-name is on.
5737
57382008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5739
5740 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
5741 argument.
5742
57432008-08-05 Juanma Barranquero <lekktu@gmail.com>
5744
5745 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
5746 <scroll-down-aggressively, before-change-functions>:
5747 <after-change-functions>: Reflow docstrings.
5748
57492008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5750 Ken Raeburn <raeburn@gnu.org>
5751
5752 Dock menu customization, based on a patch by Ken Raeburn, plus some
5753 other fixes.
5754 * nsmenu.m (dockMenu): New variable.
5755 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
5756
5757 * nsterm.h (dockMenu): Declare.
5758
5759 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
5760 (ns_term_init): Initialize dockMenu.
5761 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
5762 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
5763 left.
5764
5765 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
5766
57672008-08-04 Chong Yidong <cyd@stupidchicken.com>
5768
5769 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
5770
5771 * config.in: Regenerate.
5772
57732008-08-04 Seiji Zenitani <zenitani@mac.com>
5774
5775 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
5776
57772008-08-04 Chong Yidong <cyd@stupidchicken.com>
5778
5779 * nsterm.h (find_and_call_menu_selection): Fix prototype.
5780
57812008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5782
5783 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
5784
5785 * keyboard.h: Comment an #endif.
5786
5787 * lisp.h (have_menus_p): Adjust comment.
5788
5789 * menu.c (find_and_return_menu_selection): Fix comparison with
5790 client_data.
5791
5792 * nsmenu.m (popup_activated_flag): New variable.
5793 (popup_activated): New function.
5794 (menu-or-popup-active-p): New exported lisp definition.
5795 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
5796 when popup done.
5797 (ns_popup_dialog): Set popup_activated_flag.
5798
5799 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
5800 version for GNUstep (handled by conditional typedef in nsterm.m).
5801 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
5802 in rgb.txt).
5803
5804 * process.c (init_process): Use DARWIN_OS, not DARWIN.
5805
5806 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
5807
5808 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
5809
5810 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
5811 shortcircuit if popup_activated like GTK and X toolkit.
5812
5813 * m/inter386.h: Change DARWIN to DARWIN_OS.
5814
5815 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
5816 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
5817 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
5818 comment on NO_SOCK_SIGIO.
5819
58202008-08-03 Chong Yidong <cyd@stupidchicken.com>
5821
5822 * nsterm.m (windowDidResize): Remove stopModal call.
5823
58242008-08-03 Andreas Schwab <schwab@suse.de>
5825
5826 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
5827 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
5828
58292008-08-02 Chong Yidong <cyd@stupidchicken.com>
5830
5831 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
5832 Don't use uninitialized pointer variable when using getrlimit.
5833
58342008-08-02 Jason Rumney <jasonr@gnu.org>
5835
5836 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
5837
58382008-08-02 Eli Zaretskii <eliz@gnu.org>
5839
5840 * alloc.c (NSTATICS): Bump to 0x640.
5841
5842 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
5843
5844 * lisp.h: Add prototype for directory_files_internal.
5845
5846 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
5847 New functions.
5848 (syms_of_process): Defsubr them. Add initializations for various
5849 Q* symbols used in procfs_system_process_attributes.
5850 (procfs_list_system_processes, procfs_system_process_attributes)
5851 [HAVE_PROCFS]: New functions.
5852 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
5853 (procfs_get_total_memory): New functions.
5854
58552008-08-01 Juanma Barranquero <lekktu@gmail.com>
5856
5857 * xfaces.c (Fx_load_color_file): Fix previous change;
5858 it is #ifdef WINDOWSNT, not WINDOWS_NT.
5859
58602008-08-01 Michael Albinus <michael.albinus@gmx.de>
5861
5862 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
5863
58642008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5865
5866 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
5867
58682008-08-01 Chong Yidong <cyd@stupidchicken.com>
5869
5870 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
5871
5872 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
5873 define NSApplicationDelegateReplySuccess.
5874 (EmacsView -converstationIdentifier): Use long instead of
5875 NSInteger for GNUstep, since it doesn't have NSInteger.
5876
5877 * xmenu.c: Revert last change.
5878
5879 * keyboard.h: Fix last change.
5880
58812008-08-01 Juanma Barranquero <lekktu@gmail.com>
5882
5883 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
5884 on Windows.
5885
58862008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5887
5888 Warning clearing and clean-up in NS port.
5889 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
5890 Add prototypes.
5891 * nsgui.h (FACE_DEFAULT): Remove, unused.
5892 (XGCValues): Change colors to unsigned long.
5893 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
5894 nsterm.m.
5895 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
5896 (ns_list_fonts): Remove, unused.
5897 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
5898 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
5899 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
5900 (nsfont_draw): Compare face colors to 0, not nil.
5901 * nsmenu.m (struct widget_value): Drop unneeded declaration.
5902 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
5903 (-addSubmenuWithTitle:): Use NSMenuItem class.
5904 (ns_popup_menu): Use NO, not NULL, for enabled setting.
5905 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
5906 (ns_clip_to_row): Make gc arg a BOOL.
5907 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
5908 ns_clip_to_row() call.
5909 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
5910 used). Cast FRAME_FONT assignments.
5911 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
5912 (ns_string_to_lispmod): Change arg to const char.
5913 (ns_term_init): Use NSMenuItem class.
5914 (EmacsApp -openFile:): Move to different section of file.
5915 (EmacsApp -application:openFiles:): Don't return a value, call
5916 -replyToOpenOrPrint:.
5917 (EmacsView -keyDown:): Fix up cast.
5918 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
5919 (EmacsView -menuDown:): Cast tag in call to
5920 find_and_call_menu_selection().
5921 (ns_list_fonts): Remove, unused.
5922 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
5923 (ns_fontname_to_xlfd): Make static.
5924 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
5925 Remove prototypes (now in keyboard.h).
5926 (next_menubar_widget_id): Remove, unused.
5927 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
5928 Remove prototypes (now in keyboard.h).
5929 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
5930
59312008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
5932
5933 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
5934 (floatfns.o): Depend on syssignal.h.
5935 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
5936
5937 * systty.h: Fix previous change that removed BSD_TERMIOS.
5938 Add comments to #ifdefs.
5939
59402008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5941
5942 * w32fns.c (w32-load-color-file): Remove.
5943 (x-open-connection): Use renamed Fx_load_color_file.
5944 * xfaces.c (x-load-color-file): Add.
5945 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
5946 Emacs.clr.
5947 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
5948
59492008-07-31 Michael Albinus <michael.albinus@gmx.de>
5950
5951 * dbusbind.c (Fdbus_call_method_asynchronously)
5952 (Fdbus_method_error_internal): New defuns.
5953 (xd_read_message): Handle also reply messages.
5954 (Vdbus_registered_functions_table): Extend docstring.
5955
59562008-07-31 Juanma Barranquero <lekktu@gmail.com>
5957
5958 * keyboard.c (gobble_input): Fix previous change.
5959
59602008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5961
5962 * bitmaps/README:
5963 * xfns.c:
5964 * termcap.c:
5965 * term.c:
5966 * syswait.h:
5967 * systty.h:
5968 * systime.h:
5969 * syssignal.h:
5970 * sysdep.c:
5971 * process.h:
5972 * process.c:
5973 * print.c:
5974 * ndir.h:
5975 * lread.c:
5976 * keyboard.c:
5977 * getpagesize.h:
5978 * floatfns.c:
5979 * fileio.c:
5980 * emacs.c:
5981 * doc.c:
5982 * dispnew.c:
5983 * dired.c:
5984 * data.c:
5985 * callproc.c:
5986 * buffer.c:
5987 * README:
5988 * Makefile.in:
5989 * s/template.h:
5990 * s/msdos.h:
5991 * m/vax.h: Remove VMS support.
5992 * s/vms.h:
5993 * vlimit.h:
5994 * uaf.h:
5995 * temacs.opt:
5996 * param.h:
5997 * ioctl.h: Remove file.
5998
59992008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6000
6001 * s/ms-w32.h (MULTI_KBOARD): Remove.
6002 * xterm.c:
6003 * xselect.c:
6004 * xfns.c:
6005 * window.c:
6006 * w32term.c:
6007 * w32fns.c:
6008 * terminal.c:
6009 * termhooks.h:
6010 * term.c:
6011 * sysdep.c:
6012 * keyboard.h:
6013 * keyboard.c:
6014 * frame.h:
6015 * frame.c:
6016 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
6017 * config.in: Regenerate.
6018
60192008-07-30 Jason Rumney <jasonr@gnu.org>
6020
6021 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
6022
6023 * w32font.c (w32font_encode_char): Leave as unicode if in range.
6024 (w32font_open_internal): Get unicode version of textmetrics.
6025 Don't enable or disable glyph indices here.
6026 (w32font_open): Disable use of glyph indices.
6027
6028 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
6029
60302008-07-30 Chong Yidong <cyd@stupidchicken.com>
6031
6032 * minibuf.c (Vread_buffer_function): Doc fix.
6033
60342008-07-30 John Paul Wallington <jpw@pobox.com>
6035
6036 * minibuf.c (read_buffer_completion_ignore_case): New var.
6037 (Fread_buffer): Use it.
6038
60392008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
6040
6041 * systty.h (sensemode): Remove empty #if. Remove reference to
6042 BSD_TERMIOS, unused.
6043
6044 * sysdep.c: Remove reference to DGUX.
6045 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
6046
6047 * config.in: Regenerate.
6048
60492008-07-30 Jason Rumney <jasonr@gnu.org>
6050
6051 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
6052
60532008-07-29 Jason Rumney <jasonr@gnu.org>
6054
6055 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
6056 is populated.
6057 (uniscribe_encode_char): Always use uniscribe.
6058 Avoid using context if cache is populated.
6059
60602008-07-29 Jan Djärv <jan.h.d@swipnet.se>
6061
6062 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
6063 open menu.
6064
6065 * gtkutil.c (menu_nav_ended): Remove.
6066 (create_menus): Remove signal connect for menu_nav_ended.
6067
60682008-07-28 Chong Yidong <cyd@stupidchicken.com>
6069
6070 * xdisp.c (redisplay_window): Check return value of
6071 compute_window_start_on_continuation_line before forcing a window
6072 start.
6073
60742008-07-28 Jason Rumney <jasonr@gnu.org>
6075
6076 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
6077
6078 * w32term.c (w32_enable_unicode_output, cleartype_active):
6079 Remove obsolete display options.
6080 (x_draw_glyph_string_background): Don't use old cleartype_active
6081 workaround.
6082 (w32_initialize): Remove cleartype_active initialization.
6083 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
6084
60852008-07-28 Andreas Schwab <schwab@suse.de>
6086
6087 * lisp.h (init_weak_hash_tables, syms_of_font)
6088 (xd_read_queued_messages, syms_of_dbusbind): Declare.
6089 (remove_hash_entry): Don't declare.
6090 * eval.c (maybe_call_debugger): Make static and move before use.
6091 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
6092 * xdisp.c: Include "gtkutil.h" if USE_GTK.
6093 * xterm.h (x_set_frame_alpha): Declare.
6094
60952008-07-28 Jan Djärv <jan.h.d@swipnet.se>
6096
6097 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
6098 (create_menus): Connect selection-done to menu_nav_ended.
6099
61002008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6101
6102 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
6103 Set Vx_resource_name to a fallback. Replace read of 'buffered'
6104 parameter with read of 'alpha' one.
6105 (Qns_frame_parameter): Remove.
5582fbc7 6106 * nsselect.m (selection-coding-system)
aac0c6e3
MR
6107 (next-selection-coding-system, Vselection_coding_system)
6108 (Vnext_selection_coding_system): Drop.
6109
61102008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6111
6112 * nsfns.m (do-applescript, do_applescript): Rename to
6113 ns-do-applescript, ns_do_applescript, and move within file.
6114
61152008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
6116
6117 Remove support for Mac Carbon.
6118 * mactoolbox.c:
6119 * macterm.h:
6120 * macterm.c:
6121 * macselect.c:
6122 * macmenu.c:
6123 * macgui.h:
6124 * macfns.c:
6125 * mac.c: Remove file.
6126 * s/darwin.h:
6127 * m/intel386.h:
6128 * xfaces.c:
6129 * xdisp.c:
6130 * window.c:
6131 * tparam.c:
6132 * termhooks.h:
6133 * termcap.c:
6134 * term.c:
6135 * syssignal.h:
6136 * sysselect.h:
6137 * sysdep.c:
6138 * process.c:
6139 * lread.c:
6140 * lisp.h:
6141 * keyboard.c:
6142 * image.c:
6143 * fringe.c:
6144 * frame.h:
6145 * frame.c:
6146 * fontset.c:
6147 * font.h:
6148 * font.c:
6149 * fns.c:
6150 * fileio.c:
6151 * emacs.c:
6152 * dispnew.c:
6153 * dispextern.h:
6154 * config.in:
6155 * atimer.c:
2ae37cf0 6156 * Makefile.in: Remove code for Carbon.
aac0c6e3 6157
f0131492 61582008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
6159
6160 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
6161
61622008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6163
6164 * macterm.h (kCGBitmapByteOrder32Host): New define for
6165 non-universal SDKs.
6166
6167 * image.c (mac_create_cg_image_from_image, image_load_image_io)
6168 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6169
6170 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
6171 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6172
61732008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
6174
6175 * w32inevt.c: Include dispextern.h.
6176
61772008-07-26 Andreas Schwab <schwab@suse.de>
6178
6179 * print.c (print_object): Fix off-by-one in last change.
6180
61812008-07-25 Juanma Barranquero <lekktu@gmail.com>
6182
6183 * term.c (syms_of_term): Don't initialize default_orig_pair,
6184 default_set_foreground and default_set_background on Windows.
6185
61862008-07-25 Jason Rumney <jasonr@gnu.org>
6187
6188 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
6189 ScriptItemize. Clean up return value checking. Remove unused
6190 variables.
6191 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
6192 shaping engine.
6193
6194 * w32font.c (w32font_has_char): Handle the case where we can't
6195 determine the script for a character.
6196
61972008-07-25 Chong Yidong <cyd@stupidchicken.com>
6198
6199 * term.c (syms_of_term): Initialize default_orig_pair,
6200 default_set_foreground, and default_set_background.
6201
6202 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
6203 clash (bug#86).
6204 (getloadavg): Callers changed.
6205
6206 * image.c (svg_load_image): Fix last change.
6207 (svg_load_image): Use rsvg_handle_get_dimensions to check that
6208 image size is valid. Use g_object_unref instead of deprecated
6209 rsvg_handle_free to free rsvg handle.
6210 (x_from_xcolors): Don't initialize pixmap (silence compiler).
6211
62122008-07-25 Jason Rumney <jasonr@gnu.org>
6213
6214 * w32font.c (w32font_encode_char): Encode characters outside BMP as
6215 surrogates before looking up glyph index.
6216 (w32font_text_extents): Encode as surrogates if falling back to
6217 functions that need UTF-16 wide chars.
6218
6219 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
6220 BMP as surrogates before looking up glyph index.
6221
62222008-07-25 Chong Yidong <cyd@stupidchicken.com>
6223
6224 * image.c (svg_load_image): Check for failure in return value of
6225 rsvg_handle_get_pixbuf. Free rsvg handle when done.
6226
62272008-07-25 Jason Rumney <jasonr@gnu.org>
6228
6229 * w32font.c (Fx_select_font): Reverse sense of second arg.
6230
62312008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
6232
6233 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
6234 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
6235
6236 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
6237 (PURESIZE): Use it.
6238
62392008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
6240
6241 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
6242 * m/alpha.h (TEXT_END):
6243 * m/ibmrs6000.h (TEXT_END):
6244 * m/macppc.h (TEXT_END):
6245 * s/darwin.h (TEXT_END):
6246 * s/msdos.h (TEXT_END): Remove, unused.
6247 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
6248 * s/cygwin.h: Remove comment.
6249
6250 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
6251 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
6252 * m/intel386.h (DOT_GLOBAL_START):
6253 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
6254 (USG): Remove, file not used on USG platforms.
6255
6256 * Makefile.in (HAVE_X11): Remove empty #else.
6257
62582008-07-24 Andreas Schwab <schwab@suse.de>
6259
6260 * fileio.c (Finsert_file_contents): Properly adjust undo list
6261 after format conversion.
6262
62632008-07-24 Jan Djärv <jan.h.d@swipnet.se>
6264
6265 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
6266 (menu_nav_ended): Remove.
6267 (create_menus): Remove signal connect for menu_nav_ended.
6268 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
6269 create_menus.
6270 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
6271
62722008-07-23 Jason Rumney <jasonr@gnu.org>
6273
6274 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
6275 with opened font.
6276 (w32font_open): Set font type to gdi.
6277
6278 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
6279
62802008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
6281
6282 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
6283 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
6284 defines it.
6285 * unexec.c (ADDR_CORRECT): Define unconditionally.
6286
6287 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
6288
6289 * unexec.c: Remove code depending on !COFF and USG, the file is
6290 not used for such systems.
6291
6292 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
6293 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
6294 (LD_SWITCH_SYSTEM_1): Remove, update users.
6295
6296 * s/darwin.h (DATA_END):
6297 * m/intel386.h (DATA_END):
6298 * m/ibmrs6000.h (DATA_END):
6299 * m/alpha.h (DATA_END): Remove, unused.
6300
6301 * config.in: Regenerate.
6302 * s/ms-w32.h (subprocesses): Define unconditionally.
6303 * s/template.h (subprocesses): Update comment.
6304 * s/vms.h (subprocesses):
6305 * s/usg5-4.h (subprocesses):
6306 * s/hpux10-20.h (subprocesses):
6307 * s/gnu-linux.h (subprocesses):
6308 * s/cygwin.h (subprocesses):
6309 * s/bsd-common.h (subprocesses):
6310 * s/aix4-2.h (subprocesses):
6311 * s/darwin.h (subprocesses): Do not define, defined by default now.
6312
6313 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
6314 Remove all references.
6315 (temacs): Add GNUstep specific ld flags.
6316
6317 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
6318 similarly to what X does.
6319
63202008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6321
6322 * nsfns.m (x-list-fonts): Remove.
6323 (syms_of_nsfns): Drop the x-list-fonts declaration.
6324 * nsterm.m: Get rid of remaining "//" comments.
6325
63262008-07-22 Chong Yidong <cyd@stupidchicken.com>
6327
6328 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
6329
6330 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
6331 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
6332 (Fns_own_selection_internal, Fx_disown_selection_internal)
6333 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
6334
6335 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
6336 ... */' style of docstrings. Doc fixes.
6337
63382008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6339
6340 * terminfo.c (UP, BC, PC): Undo previous change.
6341
6342 * nsfns.m: Rename ns prefixed functions/variables to the
6343 corresponding x versions. Update references.
6344
63452008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
6346
6347 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
6348
63492008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6350
6351 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
6352 Remove forwarding functions.
6353 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
6354 non-static.
6355 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
6356 non-static.
6357 (ns_frame_parm_handlers): Use the new names.
6358 (syms_of_nsfns): Move to the end of file.
6359
6360 * nsterm.m (syms_of_nsterm): Move to the end of file.
6361
6362 * dispnew.c (init_display): Remove code for X10.
6363
63642008-07-22 Jason Rumney <jasonr@gnu.org>
6365
6366 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
6367 bare drive.
6368
63692008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6370
6371 * nsterm.m (syms_of_nsterm): Remove debugging println.
6372
63732008-07-22 David Reitter <david.reitter@gmail.com>
6374
6375 * nsfns.m (do_applescript, F_do_applescript): NS version of the
6376 Carbon implementation of the same functionality: execute arbitrary
6377 AppleScript code.
6378
63792008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6380
6381 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
6382 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
6383 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
6384 (Fx_display_mm_height, Fx_display_mm_width)
6385 (Fx_display_backing_store, Fx_display_visual_class)
6386 (Fx_display_save_under, Fx_open_connection)
6387 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
6388 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
6389 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6390 (Fx_display_pixel_width, Fx_display_pixel_height)
6391 (Fx_display_usable_bounds, Fx_display_planes)
6392 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
6393 ... */' style of docstrings.
6394
63952008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
6396
6397 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
6398 on this platform.
6399 (mips):
6400 * m/iris4d.h (mips): Do not define.
6401 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
6402
6403 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
6404
6405 * image.c:
6406 * nsfns.m:
6407 * nsselect.m:
6408 * nsterm.h:
6409 * nsterm.m: Rename ns prefixed functions/variables to the
6410 corresponding x versions. Update references.
6411
6412 * m/ibms390x.h (NO_REMAP): Do not undefine.
6413
6414 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
6415
64162008-07-21 Chong Yidong <cyd@stupidchicken.com>
6417
6418 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
6419 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
6420 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
6421 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
6422 (Fns_display_mm_height, Fns_display_mm_width)
6423 (Fns_display_backing_store, Fns_display_visual_class)
6424 (Fns_display_save_under, Fns_open_connection)
6425 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
6426 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
6427 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6428 (Fns_display_pixel_width, Fns_display_pixel_height)
6429 (Fns_display_usable_bounds, Fx_display_planes)
6430 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
6431
64322008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
6433
6434 * print.c (print_object): Check print_depth before searching for
6435 circularities.
6436
64372008-07-21 Michael Albinus <michael.albinus@gmx.de>
6438
6439 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
6440 only sprintf.
6441
64422008-07-21 Kenichi Handa <handa@m17n.org>
6443
6444 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
6445
64462008-07-20 Andreas Schwab <schwab@suse.de>
6447
6448 * syntax.c (find_start_pos, find_start_value)
6449 (find_start_value_byte, find_start_begv, find_defun_start)
6450 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
6451
64522008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6453
6454 * s/sol2-3.h: Insert contents of s/sol2.h.
6455 (LD_SWITCH_SYSTEM): Remove redundant definition.
6456 * s/sol2.h: Remove, unused.
6457
64582008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6459
6460 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
6461
64622008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6463
6464 * Makefile.in (ns_appdir): Fix typo in find command.
6465
64662008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6467
6468 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
6469
6470 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
6471 added not supported anymore.
6472
6473 * s/usg5-4-2.h (LIBS_SYSTEM):
6474 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
6475
6476 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6477 * s/lynxos.h (GETPGRP_NO_ARG):
6478 * s/hpux10-20.h (NO_SIOCTL_H):
6479 * s/gnu.h (GETPGRP_NO_ARG):
6480 * s/gnu-linux.h (NO_SIOCTL_H):
6481 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6482 * s/cygwin.h (GETPGRP_NO_ARG):
6483 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
6484 (C_DEBUG_SWITCH): Remove duplicate definition.
6485
6486 * m/ibms390.h: Remove boilerplate comments.
6487
6488 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
6489
6490 * process.c (HAVE_SERIAL): Consolidate ifdefs.
6491 (wait_reading_process_output): Remove code for SunOS, platform not
6492 supported anymore. Use SOLARIS2 instead of sun.
6493
64942008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6495
6496 * font.c (font_open_by_name): Under NS, default lface height to zero.
6497 (font_open_for_lface): Under NS, set size based on frame fontsize.
6498 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
6499 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
6500
65012008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6502
6503 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
6504 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
6505 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
6506 YES/NO.
6507 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
6508 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
6509 * Makefile.in (clean): Clear out build destination dir.
6510
65112008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6512
6513 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
6514 xterm, xselect.
6515 * lisp.h: Remove declaration of hash_remove.
6516 * nsgui.h: Remove redefinitions of hash_remove.
6517 * fns.c (hash_remove): Rename to hash_remove_from_table.
6518
65192008-07-19 Seiji Zenitani <zenitani@mac.com>
6520
6521 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
6522 strdup() the family UTF8String before modifying it.
6523
65242008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6525
6526 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
6527 NS_FACE_BACKGROUND with 0 instead of nil.
6528 * nsfont.m (nsfont_draw): Same.
6529
65302008-07-19 Chong Yidong <cyd@stupidchicken.com>
6531
6532 * nsfns.m (ns_set_background_color): Fix crash.
6533
65342008-07-18 Chong Yidong <cyd@stupidchicken.com>
6535
6536 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
6537
65382008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
6539
6540 * puresize.h (BASE_PURESIZE): Increase to 1240000.
6541
65422008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6543
6544 * gtkutil.c: Include <config.h> instead of "config.h".
6545
6546 * lisp.h (Foverlay_buffer): Add EXFUN.
6547
6548 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
6549 child process to complete child_setup. Undo 2005-09-21 change.
6550
6551 * s/darwin.h: Mention setsid after vfork.
6552
65532008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6554
6555 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
6556 Depend on macgui.h.
6557
6558 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
6559 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
6560
6561 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
6562 and f19.
6563 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
6564
6565 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
6566 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
6567 Remove enumerators.
6568
6569 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
6570 Check if FACE_FROM_ID returns NULL.
6571
65722008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
6573
6574 * w32inevt.c (change_frame_size): Remove extern declaration.
6575 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
6576 change_frame_size.
6577
65782008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6579
6580 * getloadavg.c: Revert last change (2008-07-15).
6581
65822008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6583
6584 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
6585 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
6586 from configure.
6587
65882008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
6589
6590 * s/sol2.h:
6591 * s/sol2-4.h: Reorganize conditionals.
6592
6593 * ecrt0.c: Remove code depending on m68000, not used anymore.
6594
6595 * fns.c (hash_remove): Make static.
6596 * lisp.h (hash_remove): Don't prototype.
6597
6598 * m/ibmrs6000.h:
6599 * m/ibms390x.h:
6600 * m/macppc.h: Remove boilerplate comments.
6601
6602 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
6603 Solaris, which does not need them.
6604
6605 * m/vax.h: Remove comments about unsupported systems.
6606
6607 * s/darwin.h: Reorganize ifdefs.
6608
66092008-07-17 Andreas Schwab <schwab@suse.de>
6610
6611 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
6612
66132008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
6614
6615 Use SDATA. Follow coding convention of placing operators at
6616 beginning of next line rather than end of previous line, and placing
6617 spaces around infix operators.
6618
6619 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
6620 in case it was defined already.
6621 USE @GNUSTEP_MAKEFILES@ rather than envvars.
6622 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
6623 ns_default.
6624 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
6625 Lisp_Objects.
6626 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
6627 (ns_defined_color, ns_color_to_lisp): Declare.
6628 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
6629 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
6630 it's accepted even with USE_LISP_UNION_TYPE.
6631 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
6632 (update_frame_tool_bar): Remove apparently obsolete tests for
6633 non-integerness of f->tool_bar_lines.
6634 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
6635 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
6636 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
6637 (nsfont_open): Don't confuse NULL for Qnil.
6638 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
6639 * menu.h (find_and_call_menu_selection):
6640 * menu.c (find_and_call_menu_selection): Use just int for vector size.
6641 (find_and_return_menu_selection): Always return something.
6642 * frame.h: Include dispextern.h for Display_Info.
6643 (display_x_get_resource): Declare.
6644
66452008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
6646
6647 * syntax.c: Remove stdio.h include accidentally introduced in
6648 Emacs.app commit.
6649 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
6650 NS_IMPL_COCOA.
6651 * keyboard.c (handle_async_input, input_available_signal): Remove
6652 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
6653
66542008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6655
6656 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
6657 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
6658 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
6659 Use SDATA.
6660
6661 * keymap.c: Remove all NS-specific code.
6662 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
6663 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
6664 where_is_preferred_modifier, return a different value depending on how
6665 preferred is the binding.
6666 (where_is_internal): Adjust accordingly.
6667 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
6668 Adjust to new preferred_sequence_p.
6669 (syms_of_keymap): Declare `where-is-preferred-modifier'.
6670 * keyboard.c (parse_solitary_modifier): Not static any more.
6671 * keyboard.h (parse_solitary_modifier): Declare.
6672
66732008-07-16 Andreas Schwab <schwab@suse.de>
6674
6675 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
6676 of easymenu.
6677
66782008-07-16 Chong Yidong <cyd@stupidchicken.com>
6679
6680 * xdisp.c (move_it_in_display_line): Account for word wrap, so
6681 that we don't move off the line.
6682
66832008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6684
6685 * keyboard.c (Qsuper): Remove.
6686 (parse_menu_item): Don't call where_is_internal specially for NS.
6687
66882008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6689
6690 * s/gnu-linux.h: Remove boilerplate comments.
6691
6692 * m/alpha.h (__ELF__): Consolidate conditions.
6693
6694 * m/m68k.h (linux): Use GNU_LINUX instead.
6695 Remove boilerplate comments.
6696
6697 * m/intel386.h: Undo refactoring from previous change.
6698 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
6699 too, remove dead code.
6700 (linux): Use GNU_LINUX instead.
6701
67022008-07-16 Jason Rumney <jasonr@gnu.org>
6703
6704 * w32gui.h: Repeat 26 June changes lost by last change.
6705
67062008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6707
6708 * systty.h: Remove code for Aix on 386, unsupported platform.
6709
6710 * s/ms-w32.h: Remove boilerplate comments.
6711 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
6712
6713 * s/gnu-linux.h (TERM): Remove support.
6714 (HAVE_SYSVIPC): Remove, unused.
6715 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
6716 for this system.
6717
6718 * process.c: Remove support for IRIS, unused.
6719 Remove support for TERM, not relevant anymore.
6720
6721 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
6722 used with the definition.
6723
6724 * s/aix4-2.h (static): Do not undef.
6725
6726 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
6727 only used on Aix.
6728 (HAVE_SYSVIPC): Remove, unused.
6729
6730 * m/hp800.h (CANNOT_DUMP): Do not undef.
6731
6732 * m/alpha.h: Fix comment.
6733
6734 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
6735 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
6736 used by this configuration.
6737 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
6738 * unexec.c: Remove code depending on HPUX and
6739 USG_SHARED_LIBRARIES, not used with this file. Remove code
6740 depending on IRIS, unused. Remove if 0-ed code.
6741
6742 * s/template.h: Remove comments about static.
6743
6744 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
6745 Remove if 0-ed code.
6746 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
6747 were the same as the default.
6748 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
6749 Remove boilerplate comments.
6750 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
6751 (HAVE_SYSVIPC): Remove, unused.
6752 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
6753
6754 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6755 Remove boilerplate comments.
6756 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6757 Remove boilerplate comments.
6758 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6759 Remove boilerplate comments.
6760 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
6761
6762 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
6763 USG systems which do not use DATA_SEG_BITS.
6764 Refactor code. Remove boilerplate comments.
6765
6766 * m/ibms390.h:
6767 * m/m68k.h:
6768 * s/bsd-common.h:
6769 * s/cygwin.h:
6770 * s/darwin.h:
6771 * s/freebsd.h:
6772 * s/gnu.h:
6773 * s/msdos.h: Remove boilerplate comments.
6774
6775 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 6776 do not use this file.
aac0c6e3
MR
6777 (IRIS_4D): Remove, unused.
6778
6779 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 6780 do not use this file.
aac0c6e3
MR
6781 (SIGN_EXTEND_CHAR):
6782 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
6783 * unexmips.c: Remove file, unused.
6784
6785 * editfns.c (Fuser_full_name): Replace the only use of
6786 USER_FULL_NAME with its value.
6787 * config.in: Regenerate.
6788
67892008-07-16 David Reitter <david.reitter@gmail.com>
6790
6791 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
6792 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6793
67942008-07-16 Glenn Morris <rgm@gnu.org>
6795
6796 * emacs.c (system-type): Doc fix.
6797
67982008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
6799
6800 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
6801 If the cache doesn't work, let's fix it, rather than work around it.
6802
68032008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6804
6805 * Makefile.in: Correct additions for nsfont.o in last commit.
6806 * nsfont.m: New file (forgot last commit).
6807
68082008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6809
6810 * callproc.c (set_initial_environment): Initialize
6811 Vprocess_environment under CANNOT_DUMP (fixes crash when
6812 batch-compiling for bootstrap).
6813
68142008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6815 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6816
6817 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
6818 fix crash due to different init order.
6819
68202008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6821
6822 Changes and additions for NeXTstep windowing system (Cocoa and
6823 GNUstep) support.
6824
6825 * Makefile.in:
6826 * config.in: Support defines and build commands for NS port.
6827 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
6828 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
6829 * dispextern.h: Include nsgui.h and add needed typedefs under NS
6830 windowing.
6831 (struct face): Add synth_ital field.
6832 * dispnew.c: Include nsterm.h when compiling under NS windowing.
6833 (init_display): Initialize Vinitial_window_system to "ns" when so
6834 compiled.
6835 * emacs.c: Include GSConfig.h when compiling under GNUstep.
6836 (display_arg): Use under NS.
6837 (main): Under NS, allocate autorelease pool and handle command line
6838 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
6839 (standard_args): Add NS-specific args.
6840 (shut_down_emacs): Shut down NS terminal if compiled under NS.
6841 * font.c (DEFAULT_ENCODING): New variable.
6842 (font_find_for_lface): Use it.
6843 (syms_of_font): Load syms_of_nsfont under NS.
6844 * font.h: Declare nsfont_driver when compiled under NS.
6845 * fontset.c: When compiling under NS, include nsterm.h.
6846 (fontset_from_font): Autoconstruct fontset under NS.
6847 * frame.c (various): Under NS, include nsterm.h, add Qns window system
6848 symbol, document and use it.
6849 (do_switch_frame): When for_deletion under Cocoa, add
6850 Fraise_frame(Qnil).
6851 (x_set_frame_parameters): Ensure font attribute changes are picked up.
6852 (x_get_arg): Allow "yes" and "no" as boolean values.
6853 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
6854 Qright under Cocoa.
6855 (focus-follows-mouse): Default to 0 under NS.
6856 * frame.h (enum output_method): Add output_ns.
6857 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
6858 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
6859 (FRAME_WINDOW_P): NS-specific definition.
6860 * fringe.c (max_used_fringe_bitmap): Make public.
6861 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
6862 (getloadavg): Use NeXT code under descendant OS's.
6863 * image.c (includes and header section, x_create_bitmap_from_data)
6864 (x_create_bitmap_from_file, free_bitmap_record, image_background)
6865 (image_background_transparent, x_clear_image_1)
6866 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6867 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
6868 (x_to_xcolors, x_from_xcolors, x_disable_image)
6869 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
6870 other GUIs, including XPM support using code originally written for
6871 Carbon GUI.
6872 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
6873 using NS API.
6874 (image_ascent): Use font metrics macros instead of direct struct field
6875 access.
6876 * keyboard.c (includes): Add nsterm.h when compiling under NS.
6877 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
6878 Also, handle NS as GTK for menu bar purposes.
6879 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
6880 toolkit where they differ.
6881 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
6882 use cachelist, still needed under NS.
6883 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
6884 (struct widget_value): Define it here for menu.c.
6885 * keymap.c (includes): Include modifier internals.
6886 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
6887 NS.
6888 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
6889 support for preferring sequences using certain modifiers, specified by
6890 the FIRSTONLY argument.
6891 * lisp.h (hash_remove): Rename to avoid name clash when compiling
6892 under NS GNUstep implementation.
6893 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
6894 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
6895 * menu.c: Include nsterm.h under NS.
6896 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
6897 (free_menubar_widget_tree_value, update_submenu_strings)
6898 (find_and_call_menu_selection): Treat NS as X and NT.
6899 (find_and_return_menu_selection): New function, used for popup menus.
6900 * nsgui.h:
6901 * nsterm.h:
6902 * nsfns.m:
6903 * nsimage.m:
6904 * nsmenu.m:
6905 * nsselect.m:
6906 * nsterm.m: New files.
6907 * process.c (wait_reading_process_output): Under NS, call ns_select()
6908 instead of plain select().
6909 * syntax.c (char_quoted): Under NS, avoid a crash when called near
6910 beginning of buffer.
6911 * sysselect.h (init_process): Rename when compiling under Cocoa to
6912 avoid name conflict.
6913 * termhooks.h (display_info): Add ns_display_info to union.
6914 * terminal.c (Fterminal_live_p): Add ns to terminal types.
6915 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
6916 COCOA environment.
6917 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
6918 unexec() signature. (Note, this will dump, but the resulting file
6919 crashes; unexosx is used instead; keeping around for reference and
6920 possible aid in getting dump working under GNUstep.)
6921 * w32gui.h (button_type, widget_value): Remove definitions (now in
6922 keyboard.h).
6923 * window.c: Include nsterm.h when compiling under NS.
6924 * xdisp.c (includes): Include nsterm.h when compiling under NS.
6925 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
6926 other GUI windowing systems.
6927 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
6928 GTK.
6929 (x_consider_frame_title): Under NS, set icon type and frame
6930 modified-state indicator; use ns_set_name_as_filename() when using
6931 formatted title.
6932 (update_window_cursor): Make public when compiling under NS.
6933 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
6934 (hourglass_atimer, Vhourglass_delay
6935 * xfaces.c (header section, init_frame_faces, clear_font_table)
6936 (defined_color, unload_color, x_face_list_fonts)
6937 (prepare_face_for_display): Add NS support parallel to other GUIs.
6938 Emulate GCs like other non-X GUIs.
6939 (split_font_name): Don't lowercase font name under NS.
6940 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
6941 under NS.
6942 * s/darwin.h: Add support for compilation under NS.
6943
69442008-07-15 Jason Rumney <jasonr@gnu.org>
6945
6946 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
6947 (w32_show_hourglass): Rename from show_hourglass.
6948 (w32_hide_hourglass): Rename from hide_hourglass.
6949 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
6950 (Vhourglass_delay): Declare extern.
6951 (hourglass_started): Remove.
6952
6953 * xdisp.c (Vhourglass_delay): Remove static.
6954 (hourglass_started, start_hourglass, cancel_hourglass):
6955 Don't include these versions on WINDOWSNT.
6956
69572008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6958
6959 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
6960 variables (formerly in xfns.c).
6961 (show_hourglass, hide_hourglass): New prototypes (same).
6962 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
6963 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
6964 in xfns.c).
6965 (syms_of_xdisp): Declare/initialize display-hourglass,
6966 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
6967 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
6968 formerly in xfns.c.
6969 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6970 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6971 (start_hourglass, cancel_hourglass): Remove.
6972 (show_hourglass, hide_hourglass): Remove prototypes and static
6973 modifiers.
6974 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
6975 hourglass_atimer, hourglass_shown_p declaration/initialization.
6976 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6977 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6978 (start_hourglass, cancel_hourglass): Remove.
6979 (show_hourglass, hide_hourglass): Remove prototypes and static
6980 modifiers.
6981 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
6982 hourglass_atimer, hourglass_shown_p declaration/initialization.
6983 * w32fns.c (display_hourglass_p, Vhourglass_delay)
6984 (DEFAULT_HOURGLASS_DELAY): Remove.
6985 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
6986 hourglass_shown_p declaration/initialization.
6987
69882008-07-14 Jason Rumney <jasonr@gnu.org>
6989
6990 * w32fns.c (w32_get_arg): Remove wrapper function.
6991 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
6992 directly.
6993 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
6994
69952008-07-14 Kenichi Handa <handa@m17n.org>
6996
6997 * xfont.c (xfont_open): Add workaround for X's bug.
6998
69992008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7000
7001 * fontset.c: Include <stdio.h> unconditionally.
7002
70032008-07-13 Michael Albinus <michael.albinus@gmx.de>
7004
7005 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
7006 for filtering.
7007
70082008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
7009
7010 * s/vms.h: Use __GNUC__ instead of _GNUC_.
7011
7012 * m/macppc.h:
7013 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
7014
7015 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
7016 (SPECIAL_EMACS_INT):
7017 * m/ia64.h (SPECIAL_EMACS_INT):
7018 * m/amdx86-64.h (SPECIAL_EMACS_INT):
7019 * s/gnu.h (NLIST_STRUCT):
7020 * s/aix4-2.h (X11R5_INHIBIT_I18N):
7021 * s/gnu-linux.h (LINUX):
7022 * s/msdos.h (HAVE_FACES):
7023 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
7024
7025 * systty.h:
7026 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
7027 anymore.
7028
70292008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
7030
7031 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
7032 always defined as int.
7033
7034 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
7035 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
7036 * s/gnu-linux.h (HAVE_WAIT_HEADER):
7037 * s/freebsd.h (HAVE_WAIT_HEADER):
7038 * s/bsd-common.h (HAVE_UNION_WAIT):
7039 * s/aix4-2.h (HAVE_WAIT_HEADER):
7040 * m/mips.h (HAVE_UNION_WAIT):
7041 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
7042 (COFF, static): Do not define, they are undefined later in the file.
7043
7044 * process.c (update_status): Don't use a union.
7045 (status_convert):
7046 (sigchld_handler): Use int instead of WAITTYPE.
7047
70482008-07-12 Chong Yidong <cyd@stupidchicken.com>
7049
7050 * indent.c (Fvertical_motion): Restore hscroll before moving to
7051 goal column.
7052
70532008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7054
7055 * lisp.h: Remove left over code.
7056
70572008-07-11 Andreas Schwab <schwab@suse.de>
7058
7059 * lisp.h: Fix logic in last change.
7060
7061 * menu.h: New file.
7062 * menu.c: Include it.
7063 * xmenu.c: Likewise.
7064 * Makefile.in: Update dependencies.
7065
70662008-07-11 Kenichi Handa <handa@m17n.org>
7067
7068 * fontset.c (fontset_from_font): Cancel the previous change.
7069
70702008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7071
7072 * lisp.h:
7073 * w32heap.c:
7074 * emacs.c:
7075 * alloc.c: Replace all references of NO_UNION_TYPE with
7076 USE_LISP_UNION_TYPE.
7077
7078 * m/xtensa.h (NO_UNION_TYPE):
7079 * m/vax.h (NO_UNION_TYPE):
7080 * m/template.h (NO_UNION_TYPE):
7081 * m/sparc.h (NO_UNION_TYPE):
7082 * m/mips.h (NO_UNION_TYPE):
7083 * m/macppc.h (NO_UNION_TYPE):
7084 * m/m68k.h (NO_UNION_TYPE):
7085 * m/iris4d.h (NO_UNION_TYPE):
7086 * m/intel386.h (NO_UNION_TYPE):
7087 * m/ibms390x.h (NO_UNION_TYPE):
7088 * m/ibms390.h (NO_UNION_TYPE):
7089 * m/ibmrs6000.h (NO_UNION_TYPE):
7090 * m/ia64.h (NO_UNION_TYPE):
7091 * m/hp800.h (NO_UNION_TYPE):
7092 * m/arm.h (NO_UNION_TYPE):
7093 * m/amdx86-64.h (NO_UNION_TYPE):
7094 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
7095 defining it the same.
7096
70972008-07-10 Chong Yidong <cyd@stupidchicken.com>
7098
7099 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
7100
71012008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7102
7103 * fileio.c:
7104 * sysdep.c
7105 * systty.h:
7106 * m/ibmrs6000.h:
7107 * m/iris4d.h:
7108 * s/aix4-2.h:
7109 * s/freebsd.h:
7110 * s/gnu-linux.h:
7111 * s/hpux10-20.h:
7112 * s/hpux11.h:
7113 * s/netbsd.h:
7114 * s/sol2-3.h:
7115 * s/sol2-4.h:
7116 * s/sol2.h:
7117 * s/usg5-4.h:
7118 * s/vms.h: Remove references to unused variables.
7119
71202008-07-10 Andreas Schwab <schwab@suse.de>
7121
7122 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
7123 pattern before matching the generic family.
7124
71252008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7126
7127 * unexec.c:
7128 * s/vms.h:
7129 * s/usg5-4-2.h:
7130 * s/sol2-5.h:
7131 * s/freebsd.h:
7132 * s/darwin.h: Remove dead code.
7133
7134 * m/template.h:
7135 * m/sparc.h:
7136 * m/mips.h:
7137 * m/m68k.h:
7138 * m/iris4d.h:
7139 * m/intel386.h:
7140 * m/ibms390x.h:
7141 * m/ibms390.h:
7142 * m/ia64.h:
7143 * m/hp800.h:
7144 * m/arm.h:
7145 * m/amdx86-64.h: Remove dead code and references to unused
7146 and compiler defined symbols.
7147
7148 * unexmips.c:
7149 * unexelf.c: Remove references to desupported systems.
7150
7151 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
7152
7153 * m/powermac.h: Remove boilerplate comments.
7154 (NO_REMAP): Remove unused definition.
7155
7156 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
7157 define them.
7158
71592008-07-10 Kenichi Handa <handa@m17n.org>
7160
7161 * xfont.c (xfont_open): Log the reason of failure.
7162
71632008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
7164
7165 * fontset.c (fontset_get_font_group):
7166 * font.c (font_check_otf): Specify argument types.
7167
71682008-07-09 Kenichi Handa <handa@m17n.org>
7169
7170 * coding.c (detect_coding_utf_8): Set detect_info->found only when
7171 non-ASCII char is found.
7172
7173 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
7174 (reorder_font_vector): Change the arg preferred_family to font.
7175 Prefer the spec matching with font.
7176 (fontset_get_font_group): New function.
7177 (fontset_find_font): Change the format of an element of a realized
7178 fontset. Use fontset_get_font_group.
7179 (fontset_font): Try the current fontset, the default fontset, the
7180 fallbacks of the current fontset, and the fallbacks of the default
7181 fontset in this order.
7182 (face_for_char): Delete the shortcut to use the current font.
7183 (fontset_from_font): Don't set fonts for Latin in the fontset.
7184
7185 * font.h (font_make_object, font_match_p): Adjust prototypes.
7186
7187 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
7188
7189 * font.c (font_make_object): New arg entity and pixelsize.
7190 (font_check_otf_features, font_check_otf): New functions.
7191 (font_match_p): Check :lang, :script, and :otf properties.
7192
7193 * xfont.c (xfont_open): Adjust it for the change of
7194 font_make_object.
7195 (xfont_text_extents): Fix initial setting of metrics.
7196
7197 * ftfont.c (struct ftfont_info): New member index, delete member
7198 fc_charset_idx. Make the member order compatible with struct
7199 xftfont_info.
7200 (fc_charset_table): Change charset names to registry names.
7201 (ftfont_pattern_entity): Delete the args registry and
7202 fc_charset_idx. Change the value of :font-entity property
7203 to (FONTNAME . INDEX). Always set :registry property to
7204 `iso10646-1'.
7205 (struct ftfont_cache_data): New struct.
7206 (ftfont_lookup_cache): New arg for_face.
7207 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
7208 (ftfont_driver): Set the member otf_capability.
7209 (ftfont_get_charset): Adjust it for the change of
7210 fc_charset_table.
7211 (OTF_TAG_SYM): New macro.
7212 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
7213 for the change of fc_charset_table.
7214 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
7215 ftfont_pattern_entity. Add FC_INDEX to objset.
7216 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
7217 and ftfont_pattern_entity.
7218 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
7219 font_make_object, struct ftfont_info.
7220 (ftfont_has_char): Use ftfont_get_fc_charset.
7221 (ftfont_otf_features, ftfont_otf_capability): New functions.
7222 (ftfont_shape): Use ftfont_get_otf.
7223 (ftfont_text_extents): Fix initial setting of metrics.
7224
7225 * xftfont.c (struct xftfont_info): New member ft_size. Make the
7226 member order compatible with struct ftfont_info.
7227 (xftfont_open): Add FC_CHARSET to the pattern. Set
7228 xftfont_info->ft_size. Don't unlock the face. Check BDF
7229 properties if appropriate.
7230 (xftfont_close): Unlock the face.
7231 (xftfont_anchor_point, xftfont_shape): Deleted.
7232 (syms_of_xftfont): Don't set members anchor_point and shape of
7233 xftfont_driver.
7234
7235 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
7236 font_make_object.
7237
7238 * w32font.c (w32font_open): Adjust it for the change of
7239 font_make_object.
7240 (w32font_open_internal): Don't set properties of font_object here.
7241
72422008-07-08 Chong Yidong <cyd@stupidchicken.com>
7243
7244 * macfns.c (x_create_tip_frame):
7245 * w32fns.c (x_create_tip_frame):
7246 * xfns.c (x_create_tip_frame): Pass parameter argument to
7247 face-set-after-frame-default.
7248
7249 * xfaces.c (Finternal_merge_in_global_face): Save merged
7250 attributes for the default face back into the face vector.
7251
72522008-07-08 Andreas Schwab <schwab@suse.de>
7253
7254 * fontset.h: Declare fontset_from_font. Don't declare
7255 new_fontset_from_font and fontset_from_font_name.
7256 * xterm.c: Include "fontset.h".
7257 * Makefile.in (xterm.o): Update dependencies.
7258
72592008-07-08 Glenn Morris <rgm@gnu.org>
7260
7261 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
7262 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
7263
72642008-07-07 Chong Yidong <cyd@stupidchicken.com>
7265
7266 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
7267 (x_set_frame_parameters): Don't bind it.
7268
72692008-07-07 Juanma Barranquero <lekktu@gmail.com>
7270
7271 * w32fns.c (map_w32_filename): Declare extern.
7272
72732008-07-07 Jason Rumney <jasonr@gnu.org>
7274
7275 * w32term.c (WS_EX_LAYERED): Define if not already.
7276
72772008-07-06 Chong Yidong <cyd@stupidchicken.com>
7278
7279 * xfaces.c (set_font_frame_param): Don't try to set the font
7280 parameter if it is still unspecified in the lface.
7281
72822008-07-05 Chong Yidong <cyd@stupidchicken.com>
7283
7284 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
7285 face if it didn't already exist.
7286
7287 * xdisp.c (try_window_id): Give up if word-wrapping is on.
7288
72892008-07-05 Andreas Schwab <schwab@suse.de>
7290
7291 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
7292
72932008-07-05 Chong Yidong <cyd@stupidchicken.com>
7294
7295 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
7296 word-wrapping.
7297 (IT_DISPLAYING_WHITESPACE): New macro.
7298 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
7299 when word-wrapping. Simplify word-wrapping logic. Use correct
7300 pixel positions when saving copies of the iterator.
7301 (display_line): Use proper wrap point if the last character on a
7302 line was preceded by whitespace.
7303
73042008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
7305
7306 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
7307
73082008-07-04 Kenichi Handa <handa@m17n.org>
7309
7310 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
7311
7312 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
7313
73142008-07-02 Jason Rumney <jasonr@gnu.org>
7315
7316 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 7317 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
7318
7319 * xdisp.c (next_element_from_display_vector): Move assignment out
7320 of if statement.
7321
73222008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
7323
7324 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
7325
7326 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
7327 (syms_of_fileio): Initialize and export them.
7328 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
7329
7330 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
7331 (Fsystem_move_file_to_trash): New function.
7332 (syms_of_w32fns): Export it to lisp.
7333
73342008-07-01 Jason Rumney <jasonr@gnu.org>
7335
7336 * w32font.c (w32font_text_extents): Don't count overhang as part
7337 of width.
7338
73392008-06-30 Miles Bader <miles@gnu.org>
7340
7341 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
7342 Add `avoid_cursor_p' field.
7343
7344 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
7345 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
7346 (append_glyph, append_composite_glyph, produce_image_glyph)
7347 (append_stretch_glyph): Initialize avoid_cursor_p.
7348 (get_it_property): Rename from `get_line_height_property'.
7349 (x_produce_glyphs): Use get_it_property.
7350 (handle_line_prefix, push_display_prop): New functions.
7351 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
7352 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
7353 New variables.
7354 (syms_of_xdisp): Initialize them.
7355
73562008-06-30 Kenichi Handa <handa@m17n.org>
7357
7358 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
7359 XftDefaultSubstitute (they are called in XftFontMatch).
7360 (xftfont_open): Fix args to ftfont_font_format.
7361
7362 * ftfont.c (fc_charset_table): New member lang.
7363 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 7364 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
7365 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
7366 (ftfont_open): Fix args to ftfont_font_format.
7367 (ftfont_font_format): New arg filename.
7368
73692008-06-30 Chong Yidong <cyd@stupidchicken.com>
7370
7371 * xfaces.c (Finternal_merge_in_global_face): If default face was
7372 modified, realize it again. Update the font face attribute.
7373
73742008-06-29 Jason Rumney <jasonr@gnu.org>
7375
7376 * w32term.c (x_set_frame_alpha): Fix logic.
7377
73782008-06-29 Kenichi Handa <handa@m17n.org>
7379
7380 * fontset.c (Finternal_char_font): Return font-object instead of
7381 font-name.
7382
7383 * composite.c (get_composition_id): Fix the width calculation for TAB.
7384
73852008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
7386
7387 * indent.c (Fvertical_motion): Properly handle float column arg.
7388
73892008-06-28 Jason Rumney <jasonr@gnu.org>
7390
7391 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
7392 (pfnSetLayeredWindowAttributes): New function pointer.
7393 (w32_initialize): Initialize it when supported.
7394 (x_set_frame_alpha): New function.
7395
7396 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
7397 (w32_frame_parm_handlers): Set alpha handler.
7398
7399 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
7400
74012008-06-27 Jason Rumney <jasonr@gnu.org>
7402
7403 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
7404 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
7405 (w32_to_x_charset, x_to_w32_charset)
7406 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7407 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7408 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7409 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7410 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7411 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7412 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
7413 (Qw32_charset_unicode): Remove.
7414 (syms_of_w32fns): Update for above changes.
7415
7416 * w32font.c (w32_to_x_charset, x_to_w32_charset)
7417 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7418 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7419 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7420 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7421 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7422 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7423 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
7424 (syms_of_w32font): Update for above changes.
7425
74262008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
7427
7428 * s/usg5-4.h: Fix previous change: keep the correct branch of a
7429 removed #if.
7430 (USG_SHARED_LIBRARIES): Remove duplicate definition.
7431
74322008-06-26 Juanma Barranquero <lekktu@gmail.com>
7433 Eli Zaretskii <eliz@gnu.org>
7434
7435 * makefile.w32-in (LOCAL_FLAGS):
7436 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
7437
7438 * sysdep.c (_spawnlp, _getpid):
7439 Declare with explicit _cdecl instead of _CRTAPI1.
7440
7441 * editfns.c (Fget_internal_run_time):
7442 Check for WINDOWSNT with #ifdef, not #if.
7443
74442008-06-26 Jason Rumney <jasonr@gnu.org>
7445
7446 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
7447
7448 * w32term.c (x_draw_glyph_string_foreground)
7449 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
7450 Use FONT_HANDLE macro.
7451 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
7452
7453 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7454 (uniscribe_encode_char): Use FONT_HANDLE macro.
7455
7456 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
7457 (w32font_text_extents): Use precast w32_font.
7458 (w32font_close): Free cached metrics.
7459 (w32font_open_internal): Allocate space for name on stack.
7460
74612008-06-26 Chong Yidong <cyd@stupidchicken.com>
7462
7463 * xdisp.c (extend_face_to_end_of_line): Fix last change.
7464
74652008-06-26 Jason Rumney <jasonr@gnu.org>
7466
7467 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
7468 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
7469
74702008-06-26 Juanma Barranquero <lekktu@gmail.com>
7471
7472 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
7473
74742008-06-26 Jason Rumney <jasonr@gnu.org>
7475
7476 * w32bdf.c, w32bdf.h: Remove obsolete files.
7477
7478 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
7479
7480 * w32gui.h: Don't include w32bdf.h.
7481 (XCharStruct, enum w32_char_font_type, W32FontStruct):
7482 Remove obsolete font support.
7483
7484 * w32font.h (struct w32font_info): Remove compat_w32_font.
7485 Add hfont member.
7486 (FONT_COMPAT): Remove obsolete macro.
7487
7488 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
7489 (w32font_encode_char, w32font_text_extents): Use new hfont member.
7490 (w32font_open_internal): Remove compat code. Set new hfont member.
7491 (Fx_select_font): Use new hfont member.
7492
7493 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7494 (uniscribe_encode_char): Use new hfont member.
7495
7496 * w32term.c (x_draw_glyph_string_foreground)
7497 (x_draw_composite_glyph_string_foreground): Use new hfont member.
7498 (x_draw_glyph_string): Use metrics in w32font_info.
7499
75002008-06-26 Kenichi Handa <handa@m17n.org>
7501
7502 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
7503
75042008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
7505
7506 * unexnext.c:
7507 * m/ews4800.h:
7508 * m/hp9000s300.h:
7509 * m/ibm370aix.h:
7510 * m/mips-siemens.h:
7511 * m/ncr386.h:
7512 * m/next.h:
7513 * m/pmax.h:
7514 * m/powerpcle.h:
7515 * m/tandem-s2.h:
7516 * s/386bsd.h:
7517 * s/bsd386.h:
7518 * s/bsd4-1.h:
7519 * s/bsd4-2.h:
7520 * s/bsdos2-1.h:
7521 * s/bsdos2.h:
7522 * s/bsdos3.h:
7523 * s/bsdos4.h:
7524 * s/nextstep.h:
7525 * s/ultrix4-3.h:
7526 * s/usg5-0.h:
7527 * s/usg5-2-2.h:
7528 * s/usg5-2.h:
7529 * s/usg5-4-3.h:
7530 * s/ux4800.h:
7531 * s/uxpds.h:
7532 * s/uxpv.h: Remove support for obsolete systems.
7533 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 7534 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
7535 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
7536 Remove, insert contents in s/aix4-2.h.
7537 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
7538 * s/bsd4-3.h: Rename to ...
7539 * s/bsd-common.h: ... this.
7540 * data.c:
7541 * doc.c:
7542 * ecrt0.c:
7543 * emacs.c:
7544 * fileio.c:
7545 * floatfns.c:
7546 * keyboard.c:
7547 * mem-limits.h:
7548 * print.c:
7549 * process.c:
7550 * sysdep.c:
7551 * syssignal.h:
7552 * systty.h:
7553 * syswait.h:
7554 * term.c:
7555 * unexec.c:
7556 * unexelf.c:
7557 * unexhp9k800.c:
7558 * m/hp800.h:
7559 * m/ibmrs6000.h:
7560 * m/mips.h:
7561 * m/vax.h:
7562 * s/darwin.h:
7563 * s/freebsd.h:
7564 * s/gnu.h:
7565 * s/ms-w32.h:
7566 * s/msdos.h:
7567 * s/netbsd.h:
7568 * s/template.h: Remove references to obsolete variables.
7569
7570 * Makefile.in: Add dependencies for all unexec files.
7571 (admindir): Remove unused variable.
7572 (UNEXEC_SRC): Remove references.
7573
75742008-06-25 Chong Yidong <cyd@stupidchicken.com>
7575
7576 * xfns.c (x_default_font_parameter): If Xft is available, first
7577 try Monospace-12 for the default font.
7578
75792008-06-25 Jason Rumney <jasonr@gnu.org>
7580
7581 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
7582
75832008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
7584
7585 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
7586
7587 * buffer.c (syms_of_buffer): Remove default-word-wrap.
7588
75892008-06-25 Juanma Barranquero <lekktu@gmail.com>
7590
7591 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
7592 <scroll-conservatively>: Fix typo in docstring.
7593
7594 * xselect.c (Fx_send_client_event): Doc fix.
7595
75962008-06-25 Kenichi Handa <handa@m17n.org>
7597
7598 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
7599
7600 * font.c (font_parse_fcname): Remove unused variables.
7601 (font_sort_entites): Delete the arg SPEC. Caller changed.
7602 Fix for the case of ! best_only.
7603 (font_delete_unmatched): Check DPI and AVGWIDTH too.
7604
7605 * lisp.h (Fstring_to_unibyte): EXFUN it.
7606
7607 * character.h (str_to_unibyte): Extern it.
7608
7609 * character.c (str_to_unibyte): New function.
7610
7611 * fns.c (Fstring_to_unibyte): New function.
7612 (syms_of_fns): Defsubr it.
7613
76142008-06-24 Kenichi Handa <handa@m17n.org>
7615
7616 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
7617 DPI too.
7618 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
7619
76202008-06-24 Andreas Schwab <schwab@suse.de>
7621
7622 * Makefile.in (${lispsource}loaddefs.el): Rename from
7623 ../lisp/loaddefs.el.
7624 (bootstrap-clean): Do what distclean does but don't remove
7625 Makefile.
7626 (distclean): Depend on bootstrap-clean and remove Makefile.
7627
76282008-06-24 Chong Yidong <cyd@stupidchicken.com>
7629
7630 * buffer.h (struct buffer): New member word_wrap.
7631
7632 * buffer.c (syms_of_buffer): New variables default-word-wrap and
7633 word-wrap.
7634 (init_buffer_once): Initialize them.
7635
7636 * dispextern.h (struct it): Replace bool truncate_lines_p with a
7637 line_wrap enum possessing three possible values.
7638
7639 * termopts.h: Replace truncate_partial_width_windows with
7640 Vtruncate_partial_width_windows.
7641
7642 * dispnew.c (direct_output_for_insert): Avoid direct output when
7643 inserting a space with word wrap on.
7644
7645 * indent.c (compute_motion): Obey integer values of
7646 truncate-partial-width-windows.
7647
7648 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
7649 replacing truncate_partial_width_windows.
7650 (init_iterator): If Vtruncate_partial_width_windows is an integer,
7651 truncate only if the window width is below that integer.
7652 (start_display, resize_mini_window, produce_stretch_glyph)
7653 (display_string, move_it_in_display_line_to): Use line_wrap.
7654 (back_to_previous_visible_line_start, reseat_1): Reset
7655 string_from_display_prop_p.
7656 (display_line): Extend default face to end of line when wrapping.
7657
76582008-06-24 Kim F. Storm <storm@cua.dk>
7659
7660 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
7661 to wrap continued lines at word boundaries.
7662
76632008-06-24 Jason Rumney <jasonr@gnu.org>
7664
7665 * font.c (Ffont_face_attributes): Multiply pixel size before point
7666 conversion to avoid multiplying rounding error.
7667
76682008-06-23 Jason Rumney <jasonr@gnu.org>
7669
7670 * w32term.c (x_draw_glyph_string_background)
7671 (x_draw_glyph_string): Remove old bdf font code.
7672
7673 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
7674
76752008-06-22 Kenichi Handa <handa@m17n.org>
7676
7677 * font.c (font_find_for_lface): Try the adstyle specified in
7678 the property of LFACE_FONT of LFACE (if any).
7679
76802008-06-21 Seiji Zenitani <zenitani@mac.com>
7681 Ryo Yoshitake <ryo@shiftmode.net>
7682
7683 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
7684
76852008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
7686
7687 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
7688 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
7689 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
7690 (witness-emacs): Remove.
7691 (lisp, shortlisp): Move loaddefs.el earlier.
7692 (mostlyclean): Forget about witness-emacs.
7693
76942008-06-22 Glenn Morris <rgm@gnu.org>
7695
7696 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
7697 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
7698
76992008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7700
7701 * Makefile.in (PRECOMP): Remove.
7702 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
7703 (witness-emacs): Run `compile-first'.
7704 (.el.elc): Use the new compile-onefile target.
7705
77062008-06-21 Kenichi Handa <handa@m17n.org>
7707
7708 * xftfont.c (xftfont_open): Handle QCembolden only when
7709 FC_EMBOLDEN is defined.
7710
77112008-06-21 Andreas Schwab <schwab@suse.de>
7712
7713 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
7714 (.el.elc): Likewise.
7715
77162008-06-21 Miles Bader <miles@gnu.org>
7717
7718 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
7719 build dir, not the lisp source dir.
7720
77212008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7722
7723 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
7724 (bootstrapclean): Remove.
7725 (.el.elc): New rule.
7726 (PRECOMP): New var.
7727 (../lisp/subdirs.el): Remove.
7728 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
7729 (witness-emacs): New target.
7730 (mostlyclean): Remove witness-emacs as well.
7731 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
7732 Add witness-emacs dependency.
7733
77342008-06-20 Chong Yidong <cyd@stupidchicken.com>
7735
7736 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
7737 defined by the font.
7738
77392008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7740
7741 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
7742 (bootstrap-clean): New target that keeps TAGS around.
7743 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
7744 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
7745
77462008-06-20 Jason Rumney <jasonr@gnu.org>
7747
7748 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
7749 Remove obsolete font code.
7750
7751 * w32font.c (font_matches_spec): Use csb bitfield from font signature
7752 to determine language support.
7753
77542008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7755
7756 * sysdep.c (cfsetspeed): New fun extracted from the code.
7757 (cfmakeraw): Move before first use.
7758
77592008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
7760
7761 * sysdep.c (cfmakeraw): Provide fallback implementation.
7762 (serial_configure): Provide fallback implementation of cfsetspeed.
7763
77642008-06-20 Kenichi Handa <handa@m17n.org>
7765
7766 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
7767 the pattern.
7768
7769 * fontset.c (fontset_from_font): Copy font_spec before changing
7770 the elements.
7771
7772 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
7773
77742008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7775
7776 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
7777 for explicit `font' parameters.
7778
7779 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
7780
77812008-06-19 Kenichi Handa <handa@m17n.org>
7782
7783 * frame.c: Include <ctype.h>.
7784 (x_set_font_backend): Allow spacing characters in the X resource
7785 for FontBackend.
7786
77872008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
7788
7789 * w32fns.c, xfns.c (Qfont_param): New var.
7790 (syms_of_w32fns): Initialize it.
7791 (x_default_font_parameter): Record explicit `font' into
7792 `font-parameter'.
7793
77942008-06-18 Kenichi Handa <handa@m17n.org>
7795
7796 * font.c (font_parse_xlfd): Fix previous change.
7797 (font_parse_fcname): Don't use :fc-unknown-spec.
7798 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
7799 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
7800 (font_add_log): Prepend the driver name to the resulting fonts.
7801
7802 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
7803 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
7804 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
7805
7806 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
7807 (QCembolden): New variables.
7808 (syms_of_xftfont): DEFSYM them.
7809 (xftfont_open): Call XftFontMatch. Don't trust the result of
7810 XftTextExtents8 if the pixel_size is less than 5.
7811
78122008-06-18 Andreas Schwab <schwab@suse.de>
7813
7814 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
7815 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
7816
78172008-06-18 Jason Rumney <jasonr@gnu.org>
7818
7819 * w32font.c (w32font_list, w32font_match): Add logging.
7820
7821 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
7822
78232008-06-17 Chong Yidong <cyd@stupidchicken.com>
7824
7825 * font.c (font_parse_fcname): Store divider characters for
7826 unknown-spec list. For known key symbols, intern using correct
7827 symbol name.
7828
78292008-06-17 Kenichi Handa <handa@m17n.org>
7830
7831 * xfaces.c (realize_default_face): If the frame is not on window
7832 system, set the fontset of face to nil.
7833
78342008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7835
7836 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
7837
78382008-06-16 Juanma Barranquero <lekktu@gmail.com>
7839
7840 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
7841 (build_font_name_from_vector): Delete externs.
7842
7843 * xfaces.c (struct font_name): Don't declare.
7844
78452008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
7846
7847 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
7848
78492008-06-16 Chong Yidong <cyd@stupidchicken.com>
7850
7851 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
7852
78532008-06-16 Juanma Barranquero <lekktu@gmail.com>
7854
7855 * font.c (Ffont_spec): Fix usage in docstring.
7856 (Ffont_face_attributes): Doc fix.
7857
78582008-06-16 Andreas Schwab <schwab@suse.de>
7859
7860 * font.c (Ffont_face_attributes): Fix definition.
7861
78622008-06-16 Jason Rumney <jasonr@gnu.org>
7863
7864 * font.h (font_style_symbolic_from_value): Remove.
7865
7866 * font.c (font_style_symbolic_from_value): Remove.
7867 (font_style_symbolic): Revert to pre 2008-06-13 version.
7868
7869 * w32font.c (w32_to_fc_weight): New function.
7870 (w32font_full_name, logfont_to_fcname): Use it.
7871
78722008-06-16 Kenichi Handa <handa@m17n.org>
7873
7874 * font.c (font_check_object): Delete it.
7875 (font_clear_cache): Check if a font-object is alive.
7876 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
7877 font-object to nil.
7878 (font_close_object): Don't check FONT_CLOSE_OBJECT.
7879 (font_at): Don't call font_check_object.
7880 (Ffont_get): Return a symbol for :weight, :slant, and :width.
7881
78822008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
7883
7884 * puresize.h (BASE_PURESIZE): Increase to 1230000.
7885
78862008-06-16 Chong Yidong <cyd@stupidchicken.com>
7887
7888 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
7889
78902008-06-15 Chong Yidong <cyd@stupidchicken.com>
7891
7892 * font.c (font_parse_fcname): Only one decimal point.
7893 (font_unparse_fcname): Handle data in family and foundry indices
7894 as symbols, not strings.
7895 (font_unparse_gtkname, Ffont_face_attributes): New functions.
7896
7897 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
7898
7899 * font.h (font_unparse_gtkname): Add prototype.
7900
79012008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7902
7903 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
7904
79052008-06-15 Andreas Schwab <schwab@suse.de>
7906
7907 * font.c (font_update_drivers): Fix crash when no drivers match.
7908
79092008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
7910
7911 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
7912 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
7913
79142008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
7915
7916 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
7917
79182008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
7919
7920 * process.c (Fserial_process_configure, Fprocess_send_eof):
7921 Use EQ to compare Lisp_Objects.
7922
79232008-06-13 Jason Rumney <jasonr@gnu.org>
7924
7925 * w32fns.c (Fw32_select_font): Remove old font API function.
7926
7927 * w32font.c (logfont_to_fcname): New function.
7928 (Fx_select_font): New font dialog function compatible with
7929 GTK/fontconfig version.
7930
7931 * font.c (font_style_symbolic_from_value): New function.
7932 (font_style_symbolic): Use it.
7933
7934 * font.h (font_style_symbolic_from_value): Declare new function.
7935
79362008-06-13 Juanma Barranquero <lekktu@gmail.com>
7937
7938 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
7939 <font-width-table>: Fix typos in docstrings.
7940
79412008-06-13 Daniel Engeler <engeler@gmail.com>
7942
7943 These changes add serial port access.
7944 * process.c: Add HAVE_SERIAL.
7945 (Fdelete_process, Fprocess_status, Fset_process_buffer)
7946 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
7947 (list_processes_1, select_wrapper, Fstop_process)
7948 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
7949 (status_notify): Modify to handle serial processes.
7950 [HAVE_SERIAL] (Fserial_process_configure)
7951 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
7952 New functions.
7953 * process.h (struct Lisp_Process): Add `type'.
7954 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
7955 New functions.
7956 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
7957 serial ports.
b71ac3dd 7958 (serial_open, serial_configure): New functions.
aac0c6e3
MR
7959 * w32.h: Add FILE_SERIAL.
7960 (struct _child_process): Add ovl_read, ovl_write.
7961
79622008-06-13 Kenichi Handa <handa@m17n.org>
7963
7964 * dispextern.h (enum lface_attribute_index): New member
7965 LFACE_FOUNDRY_INDEX.
7966
7967 * font.c (font_score): Delete arg alternate_families. Check only
7968 weight, slant, width, and size. Ignore the difference of alias
7969 style symbols.
7970 (font_sort_entites): Adjust for the above change. Reflect the
7971 order of font-driver to scores.
7972 (font_list_entities): Don't check alternate_familes here.
7973 (font_clear_prop): Handle foundry.
7974 (font_update_lface): Don't parse "foundry-family" form here.
7975 Handle FONT_FOUNDRY_INDEX.
7976 (font_find_for_lface): Likewise. Handle alternate families here.
7977 If registry is nil, try iso8859-1 and ascii-0.
7978 (font_open_for_lface): Pay attention to size in ENTITY.
7979 (font_open_by_name): Simplify by calling font_load_for_lface.
7980 (free_font_driver_list): Delete it.
7981 (font_update_drivers): Preserve the order of backends.
7982 (syms_of_font): Setting of sort_shift_bits adjusted for the change
7983 of font_score and font_sort_entites.
7984 (font_update_sort_order): Likewise.
7985
7986 * xfaces.c (LFACE_FOUNDRY): New macro.
7987 (check_lface_attrs): Check foundry.
7988 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
7989 (merge_face_vectors): Check foundry.
7990 (merge_face_ref): Likewise.
7991 (Finternal_set_lisp_face_attribute): Likewise.
7992 (x_update_menu_appearance): Likewise.
7993 (Finternal_get_lisp_face_attribute): Likewise.
7994 (lface_hash): Likewise.
7995 (lface_same_font_attributes_p): Likewise.
7996 (x_supports_face_attributes_p): Likewise.
7997 (tty_supports_face_attributes_p): Likewise.
7998 (Finternal_set_alternative_font_family_alist): Intern strings.
7999 (Finternal_set_alternative_font_registry_alist): Downcase strings.
8000 (realize_default_face): Set LFACE_FOUNDRY (lface).
8001
8002 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
8003 font-driver at first.
8004
8005 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
8006
80072008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8008
8009 * lread.c (Fload): Use xfree, not free on saved_doc_string.
8010
80112008-06-12 Jim Meyering <meyering@redhat.com>
8012
8013 Make unexec_free handle NULL the same way free does.
8014 * unexmacosx.c (unexec_free): Ignore a NULL argument.
8015
80162008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
8017
8018 * character.h (CHAR_TO_BYTE_SAFE): New macro.
8019 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
8020 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
8021 (WEAK_ALIAS): Simplify.
8022 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
8023 when searching a unibyte buffer.
8024
80252008-06-12 Chong Yidong <cyd@stupidchicken.com>
8026
8027 * xfns.c (Fx_select_font): Rename from x-font-dialog.
8028
80292008-06-12 Juanma Barranquero <lekktu@gmail.com>
8030
8031 * w32font.c: Include ctype.h.
8032
80332008-06-11 Jason Rumney <jasonr@gnu.org>
8034
8035 * w32font.c (w32font_encode_char): Detect missing glyphs that are
8036 misreported as space.
8037 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
8038 as aliases for registry iso10646-1.
8039
80402008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
8041
8042 * buffer.c (clone_per_buffer_values): Skip `name'.
8043
80442008-06-11 Chong Yidong <cyd@stupidchicken.com>
8045
8046 * font.c (font_parse_fcname): Fix last change; accept decimal
8047 points in font size.
8048
80492008-06-10 Jason Rumney <jasonr@gnu.org>
8050
8051 * w32uniscribe.c (add_opentype_font_name_to_list):
8052 Skip non unicode fonts.
8053
80542008-06-10 Chong Yidong <cyd@stupidchicken.com>
8055
8056 * xfns.c (Fx_font_dialog): New function.
8057
8058 * gtkutil.c (xg_dialog_response_cb): Rename from
8059 xg_file_response_callback.
8060 (pop_down_dialog): Rename from pop_down_file_dialog.
8061 (xg_get_file_name): Callers changed.
8062 (xg_get_font_name): New function.
8063
8064 * gtkutil.h (xg_get_font_name): Insert prototype.
8065
80662008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8067
8068 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
8069 x_underline_minimum_display_offset.
8070 (syms_of_xdisp): Declare it here rather than in xterm.c.
8071 * dispextern.h (underline_minimum_offset): Declare it.
8072 * w32term.c (x_draw_glyph_string): Use it.
8073 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
8074 (syms_of_xterm): Don't declare it any more.
8075 (x_draw_glyph_string): Adjust to the new name.
8076
80772008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
8078
8079 * xterm.c (x_underline_minimum_display_offset): New var.
8080 (x_draw_glyph_string): Use it.
8081 (syms_of_xterm): Declare it.
8082
80832008-06-10 Chong Yidong <cyd@stupidchicken.com>
8084
8085 * font.c (font_parse_fcname): Accept GTK-style font names too.
8086
80872008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8088
8089 * dired.c (file_name_completion): Don't return t if the match is exact
8090 but with different capitalization.
8091 * minibuf.c (Ftry_completion): Simplify.
8092
8093 * window.c (Vwindow_point_insertion_type): New var.
8094 (set_window_buffer): Use it.
8095 (syms_of_window): Init and export it to Lisp.
8096
80972008-06-10 Kenichi Handa <handa@m17n.org>
8098
8099 * font.h (font_intern_prop): Prototype adjusted.
8100
8101 * font.c (font_intern_prop): New arg force_symbol.
8102 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
8103 Adjust for the change of font_intern_prop.
8104
8105 * ftfont.c (ftfont_pattern_entity):
8106 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
8107 (w32_registry):
8108 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
8109 the change of font_intern_prop.
8110
81112008-06-09 Juanma Barranquero <lekktu@gmail.com>
8112
8113 * w32menu.c (digest_single_submenu): Declare extern.
8114
81152008-06-09 Jason Rumney <jasonr@gnu.org>
8116
8117 * w32term.c (x_make_frame_visible): Use alternate restore flags.
8118
8119 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
8120 (parse_single_submenu): Remove.
8121 (digest_single_submenu): Remove.
8122 (syms_of_w32menu): Don't initialise variables that have moved
8123 to menu.c.
8124 (set_frame_menubar): Sync with version in xmenu.c.
8125 (w32_menu_show): Sync with xmenu_show in xmenu.c.
8126
8127 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
8128 Make static again.
8129
81302008-06-09 Jason Rumney <jasonr@gnu.org>
8131
8132 Changes to w32 files related to the move of common menu code
8133 to menu.c on 2008-06-08 by Chong Yidong.
8134
8135 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
8136 defs to w32gui.h.
8137 (single_keymap_panes, push_menu_item, push_menu_pane):
8138 Make globally visible.
8139
8140 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
8141 (local_free, malloc_widget_value, free_widget_value)
8142 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
8143 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
8144 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
8145 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
8146 (menu_items, menu_items_allocated, menu_items_used)
8147 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
8148 (init_menu_items, finish_menu_items, discard_menu_items)
8149 (grow_menu_items, push_submenu_start, push_submenu_end)
8150 (push_left_right_boundary, push_menu_pane, push_menu_item)
8151 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
8152 (free_menubar_widget_tree_value, parse_single_submenu)
8153 (update_submenu_strings): Remove functions.
8154 (xmalloc_widget_value): Remove and declare extern.
8155
8156 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
8157 (OBJ1): Build it.
8158
8159 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
8160 (local_heap, local_alloc, local_free, malloc_widget_value)
8161 (free_widget_value): Define here.
8162
81632008-06-09 Kenichi Handa <handa@m17n.org>
8164
8165 * font.h (Qascii_0): Extern it.
8166
8167 * font.c (Qascii_0): New variable.
8168 (syms_of_font): DEFSYM it.
8169 (font_open_by_name): If the registry "iso8859-1" fails, try also
8170 "ascii-0".
8171
8172 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
8173
81742008-06-08 Kenichi Handa <handa@m17n.org>
8175
8176 * .gdbinit (xfont): New command.
8177
81782008-06-08 Andreas Schwab <schwab@suse.de>
8179
8180 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
8181 * Makefile.in (menu.o): Update dependencies.
8182
8183 * Makefile.in (obj): Always add menu.o.
8184 * emacs.c (main): Always call syms_of_menu.
8185 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
8186
81872008-06-08 Chong Yidong <cyd@stupidchicken.com>
8188
8189 * Makefile.in: Compile menu.c.
8190
8191 * lisp.h: Declare syms_of_menu.
8192
8193 * emacs.c (main): Call syms_of_menu.
8194
8195 * keyboard.h: Relocate platform-independent menu definitions from
8196 xmenu.c.
8197
8198 * menu.c: New file. Relocate platform-independent menu
8199 definitions from xmenu.c. Suggested by Adrian Robert.
8200
8201 * xmenu.c: Remove platform-independent menu definitions.
8202 (menu_items menu_items_inuse, menu_items_allocated)
8203 (menu_items_used, menu_items_n_panes)
8204 (menu_items_submenu_depth): Move to keyboard.h.
8205 (init_menu_items, finish_menu_items, unuse_menu_items)
8206 (discard_menu_items, restore_menu_items, save_menu_items)
8207 (grow_menu_items, push_submenu_start, push_submenu_end)
8208 (push_left_right_boundary, push_menu_pane, push_menu_item)
8209 (keymap_panes, single_keymap_panes, single_menu_item)
8210 (list_of_panes, list_of_items, find_and_call_menu_selection)
8211 (xmalloc_widget_value, free_menubar_widget_value_tree)
8212 (parse_single_submenu, digest_single_submenu)
8213 (update_submenu_strings): Move to menu.c.
8214
82152008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
8216
8217 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
8218
82192008-06-06 Miles Bader <miles@gnu.org>
8220
8221 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
8222 face, not frame default.
8223
82242008-06-05 Martin Rudalics <rudalics@gmx.at>
8225
8226 * window.c (pop_up_windows, pop_up_frames)
8227 (display_buffer_reuse_frames, Vpop_up_frame_function)
8228 (Vdisplay_buffer_function, Veven_window_heights)
8229 (Vspecial_display_buffer_names, Vspecial_display_regexps)
8230 (Vspecial_display_function, Vsame_window_buffer_names)
8231 (Vsame_window_regexps, split_height_threshold)
8232 (Vsplit_window_preferred_function): Move those vars to window.el.
8233 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
8234 (Fdisplay_buffer): Move those functions to window.el.
8235 (syms_of_window): Remove corresponding declarations.
8236 (display_buffer): New function.
8237 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
8238 * dispnew.c (Flast_nonminibuf_frame): New function.
8239 * buffer.c (Fpop_to_buffer): Move to window.el.
8240
82412008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8242
8243 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
8244
82452008-06-05 Kenichi Handa <handa@m17n.org>
8246
8247 * coding.c (detect_coding): Fix previous change.
8248 (detect_coding_system): Likewise.
8249
82502008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8251
8252 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
8253
8254 * keymap.c (Vminibuffer_local_filename_must_match_map):
8255 Rename from Vminibuffer_local_must_match_filename_map.
8256 (syms_of_keymap):
8257 * minibuf.c (Fcompleting_read): Adjust accordingly.
8258 * commands.h: Rename declaration as well.
8259
82602008-06-05 Kenichi Handa <handa@m17n.org>
8261
8262 * font.c (Ffont_spec): Don't use font_parse_family_registry for
8263 family name.
8264 (Ffont_put): Likewise.
8265
8266 * fontset.c (fontset_find_font): Call font_open_for_lface with the
8267 current font-spec.
8268
8269 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
8270 is unspecified.
8271
8272 * xfaces.c (realize_x_face): If the font-related face attributes
8273 are the same as those of default face, realize a new fontset from
8274 default->fontset.
8275 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
8276
82772008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8278
8279 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
8280 (move_it_in_display_line): New wrapper.
8281
8282 * window.c (window_scroll_pixel_based_preserve_x)
8283 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
8284 (window_scroll_pixel_based, window_scroll_line_based):
8285 Use them to preserve column positions.
8286 (syms_of_window): Initialize them.
8287
8288 * indent.c (Fvertical_motion): Extend first arg to allow passing an
8289 (HPOS . VPOS) pair.
8290
8291 * dispextern.h (move_it_in_display_line): Declare.
8292
82932008-06-05 Juanma Barranquero <lekktu@gmail.com>
8294
8295 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
8296 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
8297 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
8298
82992008-06-04 Juanma Barranquero <lekktu@gmail.com>
8300
8301 * window.c (Fset_window_parameter): Doc fix.
8302 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
8303
83042008-06-04 Joakim Verona <joakim@verona.se>
8305
8306 * window.h (struct window): Add new member window_parameters.
8307
8308 * window.c (Fwindow_parameters, Fwindow_parameter)
8309 (Fset_window_parameter): New defuns.
8310 (syms_of_window): Defsubr the new defuns.
8311 (make_window): Initialize window_parameters to nil.
8312
83132008-06-04 John Paul Wallington <jpw@pobox.com>
8314
8315 * eval.c (Fdefmacro): Doc fix.
8316
83172008-06-04 Kenichi Handa <handa@m17n.org>
8318
8319 * coding.c (detect_coding): Fix handling of coding->head_ascii.
8320 Be sure to call setup_coding_system when we find a proper coding system.
8321 (detect_coding_system): Fix handling of coding->head_ascii.
8322
83232008-06-03 Andreas Schwab <schwab@suse.de>
8324
8325 * font.c (font_prop_validate_spacing): Fix last change.
8326
83272008-06-03 Kenichi Handa <handa@m17n.org>
8328
8329 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
8330 (font_parse_fcname): Fix handling of unknown key.
8331
8332 * xfont.c (xfont_list): Try an alias.
8333
8334 * charset.c (char_charset): Return NULL if the arg charset_list is
8335 specified and C doesn't belong to any of them.
8336
83372008-06-02 Chip Coldwell <coldwell@redhat.com>
8338
8339 * font.c (font_pixel_size): Don't take cdr of an integer.
8340
83412008-06-02 Jim Meyering <meyering@redhat.com>
8342
8343 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
8344 * alloc.c (xfree): Return right away for a NULL arg.
8345 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
8346 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
8347 * mac.c (create_apple_event_from_event_ref): Likewise.
8348 (create_apple_event_from_drag_ref, cfstring_create_normalized):
8349 Likewise.
8350 * doprnt.c (doprnt1): Likewise.
8351 * frame.c (frame): Likewise.
8352 * keyboard.c (wipe_kboard): Likewise.
8353 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
8354 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
8355 * term.c (tty_default_color_capabilities, maybe_fatal)
8356 (delete_tty): Likewise.
8357 * w16select.c (string): Likewise.
8358 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
8359 * w32bdf.c (w32_free_bdf_font): Likewise.
8360 * w32fns.c (w32_unload_font): Likewise.
8361 * w32font.c (w32font_close): Likewise.
8362 * window.c (size_window): Likewise.
8363 * xselect.c (receive_incremental_selection): Likewise.
8364 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
8365 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
8366 * w32.c (stat): Likewise.
8367
8368 Remove useless if-before-free tests.
8369 * editfns.c (Fset_time_zone_rule): Likewise.
8370 * lread.c (nosuffix): Likewise.
8371 * ralloc.c (get_bloc): Likewise.
8372 * regex.c (reg_free): Likewise.
8373 * xftfont.c (xftfont_open, xftfont_close): Likewise.
8374 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
8375 * xsmfns.c (smc_save_yourself_CB): Likewise.
8376
83772008-06-02 Kenichi Handa <handa@m17n.org>
8378
8379 * font.c (font_find_for_lface): Handle float font size.
8380 (font_open_for_lface): Likewise.
8381
8382 * xfaces.c (x_supports_face_attributes_p): Check face->font before
8383 comparing the properties.
8384
83852008-06-01 Jason Rumney <jasonr@gnu.org>
8386
8387 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
8388 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
8389 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
8390 Don't add empty script list.
8391 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
8392
83932008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
8394
8395 * Makefile.in (dot, dotdot): Remove, update users.
8396 ".." has been used elsewhere in the file for a long time.
8397 (LIBXT_STATIC): Remove conditional based on unused variable.
8398
83992008-06-01 Miles Bader <miles@gnu.org>
8400
8401 * xfaces.c (Vface_remapping_alist): New variable.
8402 (syms_of_xfaces): Initialize it.
8403 (enum named_merge_point_kind): New type.
8404 (struct named_merge_point): Add `named_merge_point_kind' field.
8405 (push_named_merge_point): Make cycle detection respect different
8406 named-merge-point kinds.
8407 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
8408 Remove face-name alias resolution.
8409 (lface_from_face_name): New definition using
8410 `lface_from_face_name_no_resolve'.
8411 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
8412 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
8413 (get_lface_attributes): New definition that layers face-remapping on
8414 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
8415 (lookup_basic_face): New function.
8416 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
8417 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
8418 `get_lface_attributes'.
8419 (face_at_buffer_position): Use `lookup_basic_face' to lookup
8420 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
8421 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
8422
8423 * xdisp.c (init_iterator): Pass base_face_id through
8424 `lookup_basic_face' when we actually use it as a face-id.
8425 (handle_single_display_prop): Use `lookup_basic_face' to lookup
8426 DEFAULT_FACE_ID.
8427
8428 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
8429 lookup the initial face-id.
8430
8431 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
8432
84332008-06-01 Juanma Barranquero <lekktu@gmail.com>
8434
8435 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
8436 (Fremove_text_properties): Fix typos in docstrings.
8437
84382008-05-31 Kenichi Handa <handa@m17n.org>
8439
8440 * font.c (font_list_entities): Fix the car part of data to be
8441 stored in the cache.
8442
8443 * ftfont.c (ftfont_font_format): Don't use strcasestr.
8444
84452008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8446
8447 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
8448 Add a `test' argument so another predicate than `equal' can be used.
8449 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
8450 (map_char_table): Remove unused vars `c' and `i'.
8451 * lisp.h (Foptimize_char_table): Adjust declaration.
8452 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
8453
84542008-05-30 Kenichi Handa <handa@m17n.org>
8455
8456 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
8457 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
8458 defined.
8459
84602008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8461
8462 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
8463 (Fmake_variable_frame_local): Disallow mixing buffer-local and
8464 frame-local settings for the same variable.
8465
84662008-05-30 Kenichi Handa <handa@m17n.org>
8467
8468 * fontset.c (Ffont_info): Move to font.c.
8469 (syms_of_fontset): Delete defsubr of Sfont_info.
8470
8471 * font.c (font_style_to_value, font_score): Delete casting of the
8472 args to xstcasecmp.
8473 (register_font_driver): Increment num_font_drivers only when
8474 registering the driver globally.
8475 (Ffont_info): Move from fontset.c. Handle a font object too.
8476 (syms_of_font): Defsubr Sfont_info.
8477
84782008-05-29 Kenichi Handa <handa@m17n.org>
8479
8480 * coding.h (enum define_coding_utf8_arg_index): New enum.
8481 (enum coding_attr_index): Change coding_attr_utf_16_bom to
8482 coding_attr_utf_bom.
8483 (enum utf_bom_type): Rename from utf_16_bom_type.
8484 (struct utf_16_spec): Adjust for the above change.
8485 (struct coding_system): Add utf_8_bom in `spec' union.
8486
8487 * coding.c (CODING_UTF_8_BOM): New macro.
8488 (enum coding_category): Delete coding_category_utf_8, add
8489 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
8490 coding_category_utf_8_sig.
8491 (CATEGORY_MASK_UTF_8): Delete it.
8492 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
8493 (CATEGORY_MASK_UTF_8_SIG): New macros.
8494 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
8495 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
8496 CATEGORY_MASK_UTF_8_SIG.
8497 (CATEGORY_MASK_UTF_8): New macro.
8498 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
8499 (detect_coding_utf_8): Check BOM.
8500 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
8501 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
8502 (encode_coding_utf_16): Likewise.
8503 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
8504 (detect_coding, detect_coding_system): Handle utf-8-auto.
8505 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
8506 (syms_of_coding): Fix setting up of Vcoding_category_table.
8507
85082008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
8509
8510 * process.c (Faccept_process_output): If `millisec' is non-nil,
8511 `seconds' default to 0.
8512 (wait_reading_process_output): Also return non-nil if we read output
8513 from a non-running process.
8514
85152008-05-29 Jason Rumney <jasonr@gnu.org>
8516
8517 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
8518 `raster' specified.
8519 (add_font_entity_to_list): Allow non-opentype truetype fonts back
8520 in the uniscribe backend, but disallow any font that has no
8521 unicode subrange support.
8522
85232008-05-29 Juanma Barranquero <lekktu@gmail.com>
8524
8525 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
8526 Fix typos in docstrings.
8527
85282008-05-29 Kenichi Handa <handa@m17n.org>
8529
8530 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
8531 (Fx_family_fonts): Set frame correctly.
8532
85332008-05-28 Jason Rumney <jasonr@gnu.org>
8534
8535 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
8536
85372008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8538
8539 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
8540 calling build_annotations.
8541
85422008-05-28 Juanma Barranquero <lekktu@gmail.com>
8543
8544 * coding.c (Fdecode_coding_region, Fencode_coding_region)
8545 (Fencode_coding_string):
8546 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
8547 <latin-extra-code-table>: Fix typos in docstrings.
8548 (syms_of_coding) <coding-system-alist>: Doc fix.
8549 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
8550
85512008-05-28 Kenichi Handa <handa@m17n.org>
8552
8553 * fontset.c (Ffont_info): Don't call font_close_object.
8554
8555 * font.c (font_parse_family_registry): Use Ffont_put to validate
8556 foundry and family.
8557 (font_delete_unmatched): Don't check spacing.
8558 (font_list_entities): Add spacing to the spec to list fonts.
8559
8560 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
8561 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
8562
8563 * coding.c (encode_coding_raw_text): Fix previous change.
8564 (encode_coding_object): When the dst_object is a buffer and is
8565 different from src_object, move gap to PT.
8566
85672008-05-27 Chong Yidong <cyd@stupidchicken.com>
8568
8569 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
8570
85712008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8572
8573 * coding.c (encode_coding_raw_text): Set coding->produced_char for
8574 all branches. Compute it differently.
8575
8576 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
8577
85782008-05-27 Juanma Barranquero <lekktu@gmail.com>
8579
8580 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
8581 into "else if () ... else ...".
8582
85832008-05-27 Jason Rumney <jasonr@gnu.org>
8584
8585 * w32font.c (w32font_open_internal): Determine if glyph indices
8586 are likely to work here.
8587
85882008-05-27 Chong Yidong <cyd@stupidchicken.com>
8589
8590 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
8591 draw overlap glyphs with appropriate highlighting.
8592
85932008-05-27 Kenichi Handa <handa@m17n.org>
8594
8595 * xfont.c (xfont_open): Fix calculation of font->average_width.
8596
85972008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8598
8599 * casefiddle.c (casify_object): Try to guess better whether the
8600 argument is a byte or a char.
8601
86022008-05-26 Andreas Schwab <schwab@suse.de>
8603
8604 * xselect.c (x_reply_selection_request): Properly handle format == 32.
8605 Always send multiples of format size.
8606
8607 * xterm.c (x_set_frame_alpha): Fix type mismatch.
8608
86092008-05-26 Jason Rumney <jasonr@gnu.org>
8610
8611 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
8612 (compute_metrics): Don't set failure if we just cleared the cache.
8613 (w32_weight_table): Remove unused variable.
8614 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
8615 backwards compatibility.
8616
86172008-05-25 Kenichi Handa <handa@m17n.org>
8618
8619 * w32term.c (x_draw_glyph_string):
8620 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
8621
8622 * xfaces.c: Delete unused function prototypes.
8623 (xstrlwr, font_frame): Delete them.
8624 (clear_face_cache): Delete unused variable.
8625
8626 * xftfont.c (xftfont_open): Delete unused variable.
8627 If underline_thickness is not 1, adjust underline_position.
8628
8629 * ftxfont.c (ftxfont_open): Delete unused variable.
8630
8631 * fontset.c (face_for_char): Optimize for the case of no charset
8632 property.
8633
8634 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
8635 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
8636 (otf_open, font_otf_capability, generate_otf_features)
8637 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
8638 Comment out by surrounding "#if 0" and "#endif" for the moment.
8639 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
8640 (syms_of_font): Codes for accessing above commented out.
8641
86422008-05-24 Eli Zaretskii <eliz@gnu.org>
8643
8644 * w32proc.c: Include dispextern.h.
8645
8646 * w32.c: Include dispextern.h.
8647
86482008-05-23 Juanma Barranquero <lekktu@gmail.com>
8649
8650 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
8651 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
8652 Fix typos in docstrings.
8653
86542008-05-23 Jason Rumney <jasonr@gnu.org>
8655
8656 * xsmfns.c: Remove includes that are already included by config.h.
8657
86582008-05-23 Kenichi Handa <handa@m17n.org>
8659
8660 * charset.c (Qemacs, charset_emacs): New variables.
8661 (char_charset): Fix for non-Unicode characters.
8662 (syms_of_charset): Define charset_emacs.
8663
8664 * w32term.c (x_draw_glyph_string): Be sure to update
8665 s->underline_thickness and s->underline_position. Be sure to draw
8666 underline within the current line area.
8667
8668 * xterm.c (x_draw_glyph_string): Be sure to update
8669 s->underline_thickness and s->underline_position. Be sure to draw
8670 underline within the current line area.
8671
8672 * fontset.c: Delete unused variables and add casting for char *
8673 throughout the file.
8674 (fontset_font): Try the fallback fonts of the current fontset
8675 before consulting the default fontset.
8676
8677 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
8678
8679 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
8680
86812008-05-22 Jason Rumney <jasonr@gnu.org>
8682
8683 * font.c: Don't include strings.h.
8684
8685 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
8686
8687 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
8688 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
8689 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
8690 to call xstrcasecmp.
8691
8692 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
8693
8694 * fontset.c (fs_query_fontset): Use xstrcasecmp.
8695
8696 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
8697
8698 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
8699
87002008-05-22 Kenichi Handa <handa@m17n.org>
8701
8702 * puresize.h (BASE_PURESIZE): Increase to 1220000.
8703
8704 * font.c (font_prop_validate_style): Adjust for the format
8705 change of font_style_table.
8706
8707 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
8708 two args.
8709
8710 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
8711 two args.
8712
87132008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
8714
8715 * minibuf.c (keys_of_minibuf): Delete.
8716 * lisp.h (keys_of_minibuf): Delete.
8717 * emacs.c (main): Don't call keys_of_minibuf.
8718
87192008-05-22 Kenichi Handa <handa@m17n.org>
8720
8721 * ftfont.c (ftfont_resolve_generic_family): Rename from
8722 ftfont_list_generic_family. Return a single family for each
8723 generic family.
8724 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
8725 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
8726 Call font_add_log.
8727 (ftfont_match): Call font_add_log.
8728
8729 * font.h (Ffont_xlfd_name): EXFUN adjusted.
8730 (FONT_DEBUG): Define it.
8731 (font_add_log): Extern it.
8732 (font_assert): Rename from xassert.
8733
8734 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
8735 (xfont_list_family): Call font_add_log.
8736 (xfont_match): Likewise.
8737 (memq_no_quit): Delete.
8738
8739 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
8740 call of Ffont_xlfd_name.
8741
8742 * xfaces.c (struct table_entry, slant_table, weight_table)
8743 (swidth_table): Move to font.c.
8744
8745 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
8746 xassert are changed to font_assert. Delete many unused variables.
8747 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
8748 New variables.
8749 (struct table_entry): Move from xfaces.c and modified.
8750 (weight_table, slant_table, width_table): Move from xfaces.c and
8751 contents adjusted for the change of struct table_entry.
8752 (font_style_to_value, font_style_symbolic): Adjust for the
8753 format change of font_style_table.
8754 (font_parse_family_registry): Don't overwrite existing foundry and
8755 family of font_spec.
8756 (font_score): Fix calculation of diff for sizes.
8757 (font_sort_entites): Call font_add_log.
8758 (font_delete_unmatched): Return a newly created list.
8759 (font_list_entities): Fix previous change. Call font_add_log.
8760 (font_matching_entity, font_open_entity, font_close_entity):
8761 Call font_add_log.
8762 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
8763 (Finternal_set_font_style_table): Delete.
8764 (BUILD_STYLE_TABLE): New macro.
8765 (build_style_table): New function.
8766 (Vfont_log, font_log_env_checked): New variables.
8767 (font_add_log): New function.
8768 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
8769 Declare Lisp variables "font-weight-table", "font-slant-table",
8770 "font-width-table", and "font-log". Initialize font_style_table.
8771
87722008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
8773
8774 * xterm.c (x_set_frame_alpha): Move declarations before statements.
8775
87762008-05-21 Seiji Zenitani <zenitani@mac.com>
8777 Ryo Yoshitake <ryo@shiftmode.net>
8778
8779 * frame.c (Qalpha): Add a new frame parameter `alpha'.
8780 (Vframe_alpha_lower_limit): New variable.
8781 (x_set_alpha): New function.
8782
8783 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
8784
8785 * xfns.c (x-create-frame, Qalpha):
8786 Initialize the frame parameter `alpha'.
8787 * xterm.c (OPAQUE, OPACITY): New.
8788 (x_set_frame_alpha): New function.
8789 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
8790
8791 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
8792 * w32fns.c (w32_frame_parm_handlers): Likewise.
8793
87942008-05-20 Jason Rumney <jasonr@gnu.org>
8795
8796 * w32font.c (add_font_entity_to_list): Don't add non-opentype
8797 truetype fonts to opentype list.
8798
87992008-05-20 Juanma Barranquero <lekktu@gmail.com>
8800
8801 * fontset.c (Ffontset_info): Doc fix.
8802 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
8803 <ignore-relative-composition>: Fix typos in docstrings.
8804
8805 * font.c (syms-of-font) <font-encoding-alist>:
8806 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
8807 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
8808 (Ffont_otf_alternates): Doc fixes.
8809
88102008-05-20 Kenichi Handa <handa@m17n.org>
8811
8812 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
8813 font.h through out the file.
8814 (FONT_DRIVERS): Rename from FONTOBJ.
8815 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
8816 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
8817
8818 * emacs.c (main): Call syms_of_font unconditionally.
8819
8820 * font.h (find_font_encoding): Extern it.
8821
8822 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
8823 fontset.c.
8824 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
8825 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
8826 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
8827 only when HAVE_WINDOW_SYSTEM is defined.
8828 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
8829 when HAVE_WINDOW_SYSTEM is defined.
8830
8831 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
8832 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
8833
8834 * xfaces.c: Include font.h unconditionally.
8835 (merge_face_ref, merge_face_vectors)
8836 (Finternal_set_lisp_face_attribute): Cancel the previous change.
8837
88382008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
8839
8840 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
8841 indirect_variable.
8842 * eval.c (lisp_indirect_variable): New fun.
8843 (Fuser_variable_p): Use it.
8844
88452008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
8846
8847 * lisp.h (indirect_variable):
8848 * data.c (indirect_variable, let_shadows_buffer_binding_p):
8849 Use Lisp_Symbol pointers rather than Lisp_Object.
8850 Adjust callers.
8851 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
8852 To this end, change calling-convention.
8853
8854 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
8855 if some non-hidden buffers are selected by string&pred.
8856
88572008-05-19 Chong Yidong <cyd@stupidchicken.com>
8858
8859 * process.c (wait_reading_process_output): Always check status
8860 when in batch mode.
8861
88622008-05-19 Kenichi Handa <handa@m17n.org>
8863
8864 * font.c (font_list_entities): Fix handling of cache.
8865 (font_matching_entity): Likewise.
8866
8867 * ftfont.c (cs_iso8859_1): Delete.
8868 (ft_face_cache): New variable.
8869 (struct ftfont_info): New member fc_charset_idx.
8870 (ftfont_build_basic_charsets): Delete.
8871 (fc_charset_table): New variable.
8872 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
8873 . FC_CHARSET_IDX) as :font-entity property in the font entity.
8874 Callers changed.
8875 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8876 (ftfont_spec_pattern): New argument fc_charset_idx.
8877 Check registry more rigidly. Change callers.
8878 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
8879 change of :font-entity property of the font.
8880
8881 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
8882 property of the font.
8883
88842008-05-18 Juanma Barranquero <lekktu@gmail.com>
8885
8886 * coding.c (Fcoding_system_p): Rename argument to match docstring.
8887 (Funencodable_char_position, Fcheck_coding_systems_region)
8888 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
8889 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
8890 (Ffind_operation_coding_system, Fset_coding_system_priority)
8891 (Fcoding_system_eol_type): Doc fixes.
8892
88932008-05-17 Glenn Morris <rgm@gnu.org>
8894
8895 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
8896
88972008-05-16 Eli Zaretskii <eliz@gnu.org>
8898
8899 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
8900 and st_gid.
8901
8902 * frame.c (Fdelete_frame): Don't call font_update_drivers if
8903 HAVE_WINDOW_SYSTEM is not defined.
8904
8905 * xfaces.c (merge_face_ref, merge_face_vectors)
8906 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
8907 HAVE_WINDOW_SYSTEM is defined.
8908 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
8909
89102008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
8911
8912 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
8913
89142008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8915
8916 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
8917
89182008-05-15 Kenichi Handa <handa@m17n.org>
8919
8920 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
8921 preference.
8922
89232008-05-15 Glenn Morris <rgm@gnu.org>
8924
8925 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
8926
89272008-05-15 Chong Yidong <cyd@stupidchicken.com>
8928
8929 * fns.c (init_fns): Don't initialize weak_hash_tables here.
8930 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
8931
8932 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
8933
89342008-05-15 Kenichi Handa <handa@m17n.org>
8935
8936 * ftfont.c (ftfont_list): Downcase family name to check generic
8937 families.
8938
8939 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
8940 font-spec for QCfont value.
8941
8942 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
8943 buffer. Check the return value of it.
8944
89452008-05-14 Jason Rumney <jasonr@gnu.org>
8946
8947 * w32term.c (w32_get_glyph_overhangs): Remove.
8948 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
8949
89502008-05-14 Kenichi Handa <handa@m17n.org>
8951
8952 * font.c (font_prop_validate): Make nil a valid value.
8953 (font_clear_cache): Check if the cached vector of entities is nil
8954 or not.
8955
89562008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8957
8958 * emacs.c (main_thread): Conditionalize on
8959 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8960 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
8961
8962 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
8963 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
8964 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8965
89662008-05-14 Kenichi Handa <handa@m17n.org>
8967
8968 * coding.c (detect_coding_iso_2022): Ignore a coding category that
8969 has no corresponding coding system.
8970
89712008-05-14 Jason Rumney <jasonr@gnu.org>
8972
8973 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
8974
8975 * w32font.h (w32font_open_internal): Update declaration.
8976
8977 * w32font.c (w32font_open_internal): Change last argument from
8978 w32font_info struct to font object. Fill in font object from
8979 font_entity. Get Outline metrics if possible. Use them to
8980 calculate underline position and thickness. Use xlfd name as name
8981 property. Don't set codepage.
8982 (w32font_open): Pass font_object to w32font_open_internal. Don't
8983 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
8984 (w32font_draw): Use s->font.
8985 (clear_cached_metrics): Don't clear non-existent blocks.
8986
8987 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
8988 font was not found.
8989 (x_draw_glyph_string): Use underline position and thickness from font.
8990
8991 * w32uniscribe.c (uniscribe_open): Pass font_object to
8992 w32font_open_internal.
8993
89942008-05-14 Kenichi Handa <handa@m17n.org>
8995
8996 These changes are to delete all legacy font-handling codes, and
8997 make Emacs use only font-backends.
8998
8999 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
9000 (frame.o, image.o, print.o): Depend on $(FONTSRC).
9001
9002 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
9003
9004 * charset.h (Vcharset_non_preferred_head)
9005 (Vcurrent_iso639_language): Extern them.
9006
9007 * charset.c (Vcharset_non_preferred_head): New variable.
9008 (Vcurrent_iso639_language): New variable.
9009 (syms_of_charset): Declare it as a Lisp variable.
9010 (char_charset): Don't check non preferred charsets. As a last
9011 resort, return charset_unicode.
9012 (Fset_charset_priority): Update Vcharset_non_preferred_head.
9013
9014 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
9015 conditionals. Don't check enable_font_backend. Delete all codes
9016 used only when USE_FONT_BACKEND is not defined.
9017
9018 * dispextern.h (struct glyph_string): Change type of `font' to
9019 `struct font *'.
9020 (struct glyph_string): New member underline_position and
9021 underline_thickness.
9022 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
9023 (struct face): Change type of `font' to `struct font *'. Remove
9024 members `font_name', `font_info_id'.
9025 (per_char_metric, encode_char): Delete externs.
9026 (calc_pixel_width_or_height): Adjust the prototype.
9027
9028 * emacs.c (enable_font_backend): Delete extern.
9029 (main): Don't set enable_font_backend. Don't check the command
9030 line argument "-disable-font-backend".
9031
9032 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
9033 (enum font_property_index): New members FONT_DPI_INDEX,
9034 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
9035 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
9036 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
9037 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
9038 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
9039 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
9040 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
9041 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
9042 (struct font_spec, struct font_entity): New structs.
9043 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
9044 (struct font): Many members from old "struct font_info" moved to
9045 here. Members font and entity deleted.
9046 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
9047 the new font-related objects.
9048 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
9049 (CHECK_FONT_GET_OBJECT): Likewise.
9050 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
9051 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
9052 (struct font_driver): New members case_sensitive anc check. Type
9053 of the member list and open changed.
9054 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
9055 (font_symbolic_width, font_find_object, font_get_spec)
9056 (font_set_lface_from_name): Delete extern.
9057 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
9058
9059 * font.c: Include <strings.h>.
9060 (enable_font_backend): Delete it.
9061 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
9062 (CHECK_VALIDATE_FONT_SPEC): Delete it.
9063 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
9064 (null_string): Delete it.
9065 (null_vector): Make it static.
9066 (font_family_alist): Delete it.
9067 (Qnormal): Extern it.
9068 (QCextra, QClanguage): Delete it.
9069 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
9070 (font_make_spec, font_make_entity, font_make_object)
9071 (font_intern_prop): Renamed from intern_downcase. Don't downcase
9072 the string. Callers changed.
9073 (font_pixel_size): Adjusted for the format change of font-related
9074 objects.
9075 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
9076 (font_style_to_value, font_style_symbolic): New function.
9077 (build_font_family_alist): Delete it.
9078 (font_registry_charsets): Use Fassoc_string instead of
9079 assq_no_quit.
9080 (font_prop_validate_symbol): Don't return null_string.
9081 (font_prop_validate_style): Adjusted for the change of
9082 style-related values in a font vector.
9083 (font_property_table): Delete entries for QClanguage and
9084 QCantialias, add entries for QCavgwidth.
9085 (get_font_prop_index): Delete the 2nd argument FROM.
9086 (font_prop_validate): Arguments changed.
9087 (font_put_extra): Adjusted for the change of font-related objects.
9088 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
9089 (font_parse_fcname, font_unparse_fcname)
9090 (font_prepare_composition): Likewise.
9091 (font_parse_family_registry): Renamed from font_merge_old_spec.
9092 (otf_open): Delete the 1st arg entity.
9093 (font_otf_capability): Adjusted for the above change.
9094 (font_score): New arg alternate_families. Adjusted for the change
9095 of font-related objects.
9096 (font_sort_entites): New arg best_only.
9097 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
9098 Delete them.
9099 (font_match_p): Check alternate families.
9100 (font_find_object): Delete it.
9101 (font_check_object): New function.
9102 (font_clear_cache): Adjusted for the change of font-related objects.
9103 (font_delete_unmatched): New arg.
9104 (font_list_entities): Call font_driver->list with a spec that
9105 doesn't specify style-related properties.
9106 (font_matching_entity): Arguments changed. Caller changed.
9107 (font_open_entity): Adjusted for the change of font-related objects.
9108 (font_close_object, font_has_char, font_encode_char)
9109 (font_get_name, font_get_spec): Likewise.
9110 (font_spec_from_name, font_clear_prop, font_update_lface):
9111 New functions.
9112 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
9113 (font_prepare_for_face, font_done_for_face, font_open_by_name)
9114 (font_at): Adjusted for the change of font-related objects.
9115 (font_range): New function.
9116 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
9117 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
9118 (Fcopy_font_spec, Fmerge_font_spec): New function.
9119 (Ffont_family_list): Renamed from list-families.
9120 (Finternal_set_font_style_table): Arguments changed.
9121 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
9122 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
9123 change of font-related objects.
9124 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
9125
9126 * fontset.h (struct font_info): Delete it. Most members go to
9127 struct font.
9128 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
9129 (enum FONT_SPEC_INDEX): Delete it.
9130 (font_info, list_fonts_func, load_font_func, query_font_func)
9131 (set_frame_fontset_func, find_ccl_program_func)
9132 (get_font_repertory_func, new_fontset_from_font_name): Delete
9133 externs.
9134 (fontset_from_font_name): Extern it.
9135 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
9136 (FONT_INFO_FROM_FACE): Deleted.
9137 (face_for_font): Adjust prototype.
9138
9139 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
9140 conditionals. Don't check enable_font_backend. Delete all codes
9141 used only when USE_FONT_BACKEND is not defined.
9142 (get_font_info_func, list_font_func, load_font_func)
9143 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
9144 (get_font_repertory_func): Delete them.
9145 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
9146 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
9147 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
9148 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
9149 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
9150 (fontset_compare_rfontdef): New function.
9151 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
9152 rfont-defs by qsort. Adjusted for the change of font-group vector.
9153 (load_font_get_repertory): Deleted.
9154 (fontset_find_font): Use new macros to ref/set elements of
9155 font-def and rfont-def.
9156 (fontset_font): Fix the timing of remembering that no font for C.
9157 (free_face_fontset): Do nothing if the face has no fontset.
9158 (face_suitable_for_char_p): Use new macros to ref/set elements of
9159 rfont-def.
9160 (face_for_char): Likewise. Call face_for_char with font_object.
9161 (fs_load_font): Delete. Delete #pragma surrounding it.
9162 (fs_query_fontset): Use strcasecmp instead of strcmp.
9163 (generate_ascii_font_name): Adjusted for the format change of
9164 font-spec.
9165 (Fset_fontset_font): Likewise. Use new macros to set elements of
9166 font-def.
9167 (Fnew_fontset): Use font_unparse_xlfd to generate
9168 FONTSET_ASCII (fontset).
9169 (new_fontset_from_font_name): Deleted.
9170 (fontset_from_font): Renamed from new_fontset_from_font. Check if
9171 a fontset is already created for the font. FIx updating of
9172 Vfontset_alias_alist.
9173 (fontset_ascii_font): Deleted.
9174 (Ffont_info): Adjusted for the format change of font-spec.
9175 (Finternal_char_font): Likewise.
9176 (Ffontset_info): Likewise.
9177 (syms_of_fontset): Don't check load_font_func.
9178
9179 * fns.c (internal_equal): Handle PREV_FONT.
9180
9181 * frame.h: Delete USE_FONT_BACKEND conditional.
9182
9183 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
9184 conditionals. Don't check enable_font_backend. Delete all codes
9185 used only when USE_FONT_BACKEND is not defined.
9186 (x_set_font): Call x_new_font, not x_new_fontset2.
9187 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
9188 already set for the frame.
9189
9190 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
9191 a font-entity by font_make_entity. Use font_intern_prop instead
9192 of intern_downcase. Use FONT_SET_STYLE to set a style-related
9193 font property. If a font is scalable, set avgwidth property to 0.
9194 Set font-entity property by font_put_extra.
9195 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
9196 (ffont_driver): Adjusted for the change of struct font_driver.
9197 (ftfont_spec_pattern): New function.
9198 (ftfont_list): Return a list, not vector.
9199 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
9200 (ftfont_list_family): Don't downcase names.
9201 (ftfont_free_entity): Deleted.
9202 (ftfont_open): Return a font-object. Adjusted for the change of
9203 struct font. Get underline_thickness and underline_position from
9204 font property. Don't update dpyinfo->smallest_font_height and
9205 dpyinfo->smallest_char_width.
9206 (ftfont_close): Don't free `struct font'.
9207 (ftfont_has_char): Adjusted for the format change of font-entity.
9208 (ftfont_encode_char, ftfont_text_extents): Likewise.
9209
9210 * ftxfont.c (ftxfont_list): Return a list, not vector.
9211 (ftxfont_open): Return a font-object. Adjusted for the change of
9212 struct font. Get underline_thickness and underline_position from
9213 font property. Don't update dpyinfo->smallest_font_height and
9214 dpyinfo->smallest_char_width.
9215 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
9216 (ftxfont_draw): Adjusted for the change of struct font.
9217
9218 * image.c (image_ascent): Don't include "charset.h". Include
9219 "character.h" and "font.h".
9220
9221 * lisp.h (enum pvec_type): New member PREV_FONT.
9222 (Fassoc_string): EXFUN it.
9223
9224 * print.c: Include font.h.
9225 (print_object): Handle font-related objects.
9226
9227 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
9228 conditionals. Don't check enable_font_backend. Delete all codes
9229 used only when USE_FONT_BACKEND is not defined.
9230 (handle_auto_composed_prop): Do nothing if it->f is not on a
9231 window system. Check how many following characters can be
9232 displayed by the same font.
9233 (calc_pixel_width_or_height): Type of the 4th arg is changed to
9234 'struct font *'.
9235 (get_char_face_and_encoding): Assign the whole encoding task to
9236 the `encode-char' method of a font driver.
9237 (fill_composite_glyph_string): Adjusted for the change of `struct
9238 face' and `struct glyph_string'.
9239 (fill_glyph_string): Likewise.
9240 (get_per_char_metric): Arguments changed.
9241 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
9242 and `struct glyph_string'.
9243 (produce_stretch_glyph, calc_line_height_property)
9244 (x_produce_glyphs): Likewise.
9245
9246 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
9247 conditionals. Don't check enable_font_backend. Delete all codes
9248 used only when USE_FONT_BACKEND is not defined. Use
9249 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
9250 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
9251 (Qp): Extern them.
9252 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
9253 Deleted.
9254 (struct font_name): Deleted.
9255 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
9256 (compare_fonts_by_sort_order): New function.
9257 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
9258 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
9259 Deleted.
9260 (Fx_family_fonts): Use font_list_entities, and sort fonts by
9261 compare_fonts_by_sort_order.
9262 (Fx_font_family_list): Call Ffont_family_list.
9263 (face_numeric_value, face_numeric_weight, face_numeric_slant)
9264 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
9265 (face_symbolic_slant, face_symbolic_swidth)
9266 (split_font_name_into_vector, build_font_name_from_vector)
9267 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
9268 (font_rescale_ratio, split_font_name, build_font_name)
9269 (free_font_names, sort_fonts, x_face_list_fonts)
9270 (face_font_available_p, sorted_font_list, cmp_font_names)
9271 (font_list_1, concat_font_list, font_list, remove_duplicates):
9272 Deleted.
9273 (Fx_list_fonts): Use Ffont_list.
9274 (LFACE_AVGWIDTH): Deleted.
9275 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
9276 by FONTP.
9277 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
9278 (set_lface_from_font_name): Delete it.
9279 (set_lface_from_font): Renamed from
9280 set_lface_from_font_and_fontset. Caller changed. Don't set
9281 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
9282 for face.
9283 (merge_face_vectors): Copy font-spec if necessary.
9284 Clear properties of the font-spec if necessary.
9285 (merge_face_ref): Clear properties of the font-spec if necessary.
9286 (Finternal_set_lisp_face_attribute): Likewise.
9287 (set_font_frame_param): Use font_load_for_lface to load a
9288 font-object, and call Fmodify_frame_parameters with it.
9289 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
9290 font name by Ffont_xlfd_name.
9291 (Finternal_lisp_face_attribute_values): Don't check QCweight,
9292 QCslant, and QCwidth.
9293 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
9294 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
9295 Compare fonts by EQ.
9296 (lookup_non_ascii_face): Deleted.
9297 (face_for_font): The 2nd argument changed.
9298 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
9299 Check atomic font properties by case insensitive.
9300 (realize_non_ascii_face): Set face->overstrike correctly.
9301 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
9302 (dump_realized_face): Get font name from
9303 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
9304
9305 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
9306 conditionals. Don't check enable_font_backend. Delete all codes
9307 used only when USE_FONT_BACKEND is not defined.
9308 (xic_create_xfontset): Original code deleted and renamed from
9309 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
9310 (x_make_gc): Don't set GCFont in GCs.
9311 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
9312 opened by "fixed".
9313 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
9314 find_ccl_program_func, query_font_func, set_frame_fontset_func,
9315 get_font_repertory_func.
9316
9317 * xfont.c: Include <stdlib.h> and "ccl.h".
9318 (struct xfont_info): New structure.
9319 (xfont_query_font): Deleted.
9320 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
9321 moved from xterm.c.
9322 (xfont_driver): Adjusted for the change of struct font_driver.
9323 (compare_font_names): New function.
9324 (xfont_list_pattern): Sort font names case insensitively. Make
9325 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
9326 (xfont_list): Return a list, not vector.
9327 (xfont_match): If the font doesn't have QCname property, generate
9328 a name from the other font properties.
9329 (xfont_open): Return a font-object. Adjusted for the change of
9330 struct font. Get underline_thickness and underline_position from
9331 font property. Don't update dpyinfo->smallest_font_height and
9332 dpyinfo->smallest_char_width.
9333 (xfont_close): Don't free struct font.
9334 (xfont_prepare_face): Adjusted for the change of struct font.
9335 (xfont_done_face): Deleted.
9336 (xfont_has_char): Adjusted for the change of struct font.
9337 (xfont_encode_char, xfont_draw): Likewise.
9338 (xfont_check): New function.
9339
9340 * xftfont.c (xftfont_list): Adjusted for the change of `list'
9341 callback function.
9342 (xftfont_match): Adjusted for the format change of font-entity.
9343 (xftfont_open): Adjusted for the format change of font-entity and
9344 font-object. Adjusted for the change of struct font. Return a
9345 font-object. Don't update dpyinfo->smallest_font_height and
9346 dpyinfo->smallest_char_width.
9347 (xftfont_close): Block input while calling XftFontClose.
9348 (xftfont_prepare_face): Don't block input while calling
9349 xftfont_get_colors. Adjusted for the change of struct font.
9350 (xftfont_shape): Return value of error case fixed.
9351
9352 * xrdb.c (x_load_resources): Don't setup a fontset resource.
9353
9354 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
9355 conditionals.
9356 (FONT_WIDTH): Return (f)->max_width.
9357 (struct x_display_info): Delete member `font'.
9358 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
9359 (x_find_ccl_program, x_get_font_repertory): Delete externs.
9360 (struct x_output): Change type of `font' to `struct font *'.
9361
9362 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
9363 conditionals. Don't check enable_font_backend. Delete all codes
9364 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
9365 (x_per_char_metric, x_encode_char): Deleted.
9366 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
9367 (x_compute_glyph_string_overhangs): Adjusted for the change of
9368 `struct face'.
9369 (x_draw_glyph_string_foreground)
9370 (x_draw_composite_glyph_string_foreground): Likewise.
9371 (x_draw_glyph_string): Likewise. Use font->underline_position and
9372 font->underline_thickness.
9373 (x_new_font): Renamed from x_new_fontset2.
9374 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
9375 (x_check_font): Call `check' method of a font driver.
9376 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
9377 (x_query_font, x_get_font_repertory): Deleted.
9378 (x_find_ccl_program): Renamed and moved to xfont.c.
9379 (x_redisplay_interface): Adjusted for the change of `struct
9380 redisplay_interface'.
9381
9382 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
9383 conditionals. Don't check enable_font_backend. Delete all codes
9384 used only when USE_FONT_BACKEND is not defined. Surround non-used
9385 code by "#ifdef OLD_FONT" and "endif".
9386 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
9387
9388 * w32font.h (struct w32font_info): New member.
9389 (FONT_COMPAT): New macro.
9390 (w32font_open_internal): Prototype adjusted.
9391
9392 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
9393 OLD_FONT" and "endif".
9394
9395 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
9396 conditionals. Don't check enable_font_backend. Delete all codes
9397 used only when USE_FONT_BACKEND is not defined.
9398 (w32font_open): Return a font-object. Make a font-object by
9399 font_make_object. Adjusted for the change of struct w32font_info.
9400 (w32font_close): Don't free struct font. Adjusted for the change
9401 of struct w32font_info.
9402 (w32font_encode_char, w32font_text_extents, w32font_draw):
9403 Adjusted for the change of struct w32font_info.
9404 (w32font_draw): Likewise.
9405 (w32font_list_internal): Return a list, not vector.
9406 (w32font_open_internal): Change the 4th arg to font-object.
9407 Adjusted for the change of struct w32font_info and font-object format.
9408 (add_font_name_to_list): Don't downcase names.
9409 (w32_enumfont_pattern_entity): Make a font-entity by
9410 font_make_entity. Adjusted for the format change of font-entity.
9411 Use FONT_SET_STYLE to set a style-related font property. If a
9412 font is scalable, set avgwidth property to 0. Set font-entity
9413 property by font_put_extra.
9414 (font_matches_spec): Adjusted for the format change of font-entity.
9415 (w32_weight_table, w32_decode_weight): New variables.
9416 (w32_encode_weight): New function.
9417 (fill_in_logfont): Adjusted for the format change of font-spec.
9418 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
9419 weight value.
9420 (w32font_driver): Adjusted for the change of struct font_driver.
9421
9422 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
9423 conditionals. Don't check enable_font_backend. Surround non-used
9424 code by "#ifdef OLD_FONT" and "endif".
9425 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
9426 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
9427
9428 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
9429 conditionals. Don't check enable_font_backend. Delete all codes
9430 used only when USE_FONT_BACKEND is not defined. Surround non-used
9431 code by "#ifdef OLD_FONT" and "endif".
9432
9433 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
9434 (uniscribe_open): Return value changed to font-object.
9435 Adjusted for the format change of font-object.
9436 (uniscribe_otf_capability): Adjusted for the change of struct font.
9437 (add_opentype_font_name_to_list): Don't downcase names.
9438 (uniscribe_font_driver): Adjusted for the change of struct
9439 font_driver.
9440
94412008-05-13 Chong Yidong <cyd@stupidchicken.com>
9442
9443 * dispnew.c (update_frame_1): Check if tty output is still valid
9444 before flushing it.
9445
94462008-05-13 Jan Djärv <jan.h.d@swipnet.se>
9447
9448 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
9449 to Gtk+ menus.
9450
94512008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
9452
9453 * dired.c (file_name_completion): Tweak the code so as to always do it
9454 in a single pass. Tighten the scope of some variables.
9455
9456 * dired.c (Qdefault_directory): New var.
9457 (file_name_completion): Use it instead of Fexpand_file_name.
9458 (syms_of_dired): Initialize it.
9459
94602008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
9461
9462 * fileio.c (double_dollars): Remove dead code.
9463
94642008-05-10 Eli Zaretskii <eliz@gnu.org>
9465
9466 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
9467 Mention w32-get-true-file-attributes in doc string.
9468
9469 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
9470
94712008-05-09 Glenn Morris <rgm@gnu.org>
9472
9473 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
9474 2008-04-23.
9475
94762008-05-09 Eli Zaretskii <eliz@gnu.org>
9477
9478 Support for reporting owner and group of each file on MS-Windows:
9479 * dired.c (stat_uname, stat_gname): New functions, with special
9480 implementation for w32.
9481 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
9482
9483 * w32.c: Rename the_passwd_* to dflt_passwd_*.
9484 (dflt_group_name): New static variable.
9485 (dflt_group): Rename from the_group.
9486 (init_user_info): Init dflt_group fields. Get user's group name
9487 from LookupAccountSid.
9488 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
9489 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
9490 New initialization states.
9491 (globals_of_w32): Initialize them to zero. Initialize the default
9492 group name to "None".
9493 (GetFileSecurity_Name): New global var, the name of the function
9494 to call for GetFileSecurity.
9495 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
9496 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
9497 (get_file_security, get_security_descriptor_owner)
9498 (get_security_descriptor_group, is_valid_sid)
9499 (get_file_security_desc, get_rid, get_name_and_id)
9500 (get_file_owner_and_group): New functions.
9501 (stat): Use get_file_security_desc and get_file_owner_and_group to
9502 report the owner and primary group of each file. Don't ignore the
9503 high 32 bits of file's size, now that st_size is 64-bit wide.
9504 Fix test when to get true file attributes.
9505 (init_user_info): Use get_rid instead of equivalent inline code.
9506 (fstat): Don't ignore the high 32 bits of file's size.
9507
95082008-05-09 Chong Yidong <cyd@stupidchicken.com>
9509
9510 * image.c (png_load): Use correct bit-depth for setting background
9511 color.
9512
95132008-05-08 Eli Zaretskii <eliz@gnu.org>
9514
9515 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
9516 epa-hook.elc.
9517
95182008-05-08 Juanma Barranquero <lekktu@gmail.com>
9519
9520 * font.c (Ffont_match_p): Don't use `iff' in docstring.
9521
95222008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
9523
9524 * macfns.c (Fx_create_frame): Make a copy of frame parameters
9525 because the original parameters are in pure storage now.
9526 (mac_window): Remove unused params. Update callers.
9527
95282008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
9529
9530 * lread.c (substitute_object_recurse): Use lower-level primitives.
9531 Don't signal errors when traversing sub-char-tables.
9532 Don't loop over all the possible characters when traversing char-tables.
9533
9534 * print.c (print_preprocess): Add sub-char-tables to the print-table,
9535 just like we do in print.c.
9536
95372008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
9538
9539 * minibuf.c (Ftry_completion): Remove code left over from when we used
9540 scmp instead of Fcompare_strings.
9541
95422008-05-04 Juanma Barranquero <lekktu@gmail.com>
9543
9544 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
9545
95462008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9547
9548 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
9549 Create bitmap context in native byte order.
9550
9551 * macterm.c (XDrawLine)
9552 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
9553 context in native byte order.
9554
95552008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9556
9557 * config.in: Regenerate.
9558
9559 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
9560 New definitions for Image I/O support.
9561 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9562 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
9563 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9564 (mac_data_provider_release_data, image_load_image_io)
9565 [USE_MAC_IMAGE_IO]: New functions.
9566 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
9567 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
9568 (init_image_func_pointer) [MAC_OSX]: Remove function.
9569 (image_load_quartz2d) [MAC_OSX]: Check availability of
9570 CGImageCreateWithPNGDataProvider at compile time.
9571 Use lowercase `false' for boolean constant.
9572 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
9573 Use image_load_image_io.
9574 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
9575 Don't check MyCGImageCreateWithPNGDataProvider.
9576 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
9577 Don't call init_image_func_pointer.
9578
9579 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
9580
9581 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
9582 Make variable non-static.
9583 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9584 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9585
9586 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
9587 (RED_FROM_ULONG): Mask off higher bits.
9588 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
9589
9590 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
9591 Include AvailabilityMacros.h.
9592 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
9593 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
9594
95952008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
9596
9597 * chartab.c (Fset_char_table_range): If range is t, really set all
9598 chars to that value.
9599
96002008-05-03 Eli Zaretskii <eliz@gnu.org>
9601
9602 * dired.c (Ffile_attributes): Don't allow the device number become
9603 negative.
9604
96052008-05-02 Daiki Ueno <ueno@unixuser.org>
9606
9607 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
9608
96092008-05-02 Juri Linkov <juri@jurta.org>
9610
9611 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
9612 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
9613 DEFAULT argument as a list of default values in docstrings.
9614
96152008-05-01 Chong Yidong <cyd@stupidchicken.com>
9616
9617 * puresize.h (BASE_PURESIZE): Increase to 1210000.
9618
96192008-05-01 Martin Rudalics <rudalics@gmx.at>
9620
9621 * dispnew.c (change_frame_size_1): Preserve small windows when
9622 shrinking frames by calling set_window_height|width with third
9623 arg 2.
9624
9625 * window.h (struct window): Replace field too_small_ok by field
9626 resize_proportionally.
9627
9628 * window.c (make_window): Initialize resize_proportionally.
9629 (enlarge_window): Temporarily set resize_proportionally to make
9630 sure that shrink_windows does scale the window proportionally.
9631 (shrink_windows): When window has resize_proportionally set try
9632 to shrink it proportionally by stealing from other windows.
9633 (struct saved_window, Fset_window_configuration)
9634 (compare_window_configurations): Handle resize_proportionally.
9635 (WINDOW_TOTAL_SIZE): New macro.
9636 (window_min_size, shrink_windows, size_window): Use it.
9637 (check_min_window_sizes): Remove. Invalid values of
9638 window-min-height|width are handled by window_min_size_2 now.
9639 (size_window, Fsplit_window, enlarge_window)
9640 (adjust_window_trailing_edge, grow_mini_window): Don't call
9641 check_min_window_sizes.
9642 (window_min_size_2, window_min_size_1, window_min_size):
9643 New argument safe_p for retrieving "safe" minimum sizes.
9644 (Fdisplay_buffer, Fsplit_window, enlarge_window)
9645 (adjust_window_trailing_edge, grow_mini_window):
9646 Adjust arguments of window_min_size... functions.
9647 (shrink_windows): Argument min_size removed. New argument
9648 safe_p allows shrinking windows to their safe minimum sizes.
9649 Calculate minimum size and decide whether a window shall be
9650 deleted for each window individually.
9651 (size_window): When nodelete_p equals 2, tell shrink_windows to
9652 delete windows only if their new minimum size is no more safe.
9653 (shrink_window_lowest_first): Call window_min_size_1 to make
9654 sure to preserve modeline of bottom-most window when resizing
9655 the minibuffer.
9656 (Fset_window_configuration, Fcurrent_window_configuration)
9657 (compare_window_configurations): Do not handle
9658 window-min-height|width any more.
9659 (syms_of_window): Clarify window-min-height|width doc-strings.
9660
96612008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
9662
9663 * dired.c (file_name_completion): Fix up the encoding/decoding issue
9664 some more. Copy some of the code from Ftry_completions.
9665 Remove special case code that dates back to initial revision when the
9666 slash was only added when necessary and that can't trigger nowadays.
9667
96682008-04-27 Kenichi Handa <handa@m17n.org>
9669
9670 * font.c (font_prop_validate): Signal `error' instead of `font'.
9671
96722008-04-29 Jason Rumney <jasonr@gnu.org>
9673
9674 * w32fns.c (Fw32_battery_status): New defun.
9675 (syms_of_w32fns): Defsubr it.
9676
96772008-04-28 Andreas Schwab <schwab@suse.de>
9678
9679 * dired.c (file_name_completion): Fix another mixing of encoded
9680 and decoded names.
9681
96822008-04-28 Juanma Barranquero <lekktu@gmail.com>
9683
9684 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
9685
96862008-04-27 Juanma Barranquero <lekktu@gmail.com>
9687
9688 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
9689
96902008-04-27 Andreas Schwab <schwab@suse.de>
9691
9692 * dired.c (file_name_completion): Fix inappropriate mixing of
9693 encoded and decoded names.
9694
9695 * xterm.c (XTread_socket): Fix use of uninitialized variable.
9696
9697 * puresize.h (BASE_PURESIZE): Increase to 1200000.
9698
96992008-04-26 Eli Zaretskii <eliz@gnu.org>
9700
9701 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
9702 2008-03-31, it's not needed anymore with `struct stat' definition
9703 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
9704 for the same reasons.
9705
97062008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
9707
9708 * m/sparc.h: Additional redefinitions for GNU/Linux.
9709
97102008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9711
9712 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
9713 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
9714 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
9715 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
9716 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9717 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
9718 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9719 Likewise.
9720
9721 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
9722 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
9723 (mac_ax_number_of_characters): Add externs.
9724 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9725 [USE_MAC_TSM]: Likewise.
9726 (mac_handle_text_input_event) [MAC_OSX]:
9727 Handle kEventTextInputOffsetToPos for no active input area case.
9728 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9729 (mac_handle_document_access_event)
9730 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
9731 (install_application_handler) [MAC_OSX]: Register handlers for
9732 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9733 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9734 Register mac_handle_document_access_event.
9735
9736 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
9737 Make functions non-static.
9738
97392008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
9740
9741 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
9742 (read_file_name_completion_ignore_case, insert_default_directory)
9743 (Qdefault_directory): Move to minibuffer.el.
9744 (Fread_file_name): Call the new `read-file-name' instead.
9745
97462008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9747
9748 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
9749 Make function non-static.
9750 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
9751 Remove function.
9752 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9753 Move to mactoolbox.c.
9754 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
9755
9756 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
9757 (mac_rect_make): New macro.
9758
9759 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
9760 instead of float.
9761 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9762 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
9763 (XSetBackground) [USE_CG_DRAWING]: Likewise.
9764 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
9765 CGRectMake.
9766 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9767 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
9768 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
9769 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9770 instead of WindowRef in argument type.
9771 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
9772 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
9773 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
9774 instead of DISPLAY. All uses changed.
9775 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
9776 (x_calc_absolute_position): Simplify so as not to use
9777 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
9778
9779 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9780 instead of WindowRef in argument type.
9781 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
9782 [TARGET_API_MAC_CARBON]: Remove externs.
9783 (create_apple_event, mac_event_parameters_to_lisp)
9784 [TARGET_API_MAC_CARBON]: Add externs.
9785
9786 * mactoolbox.c (Vmac_ts_script_language_on_focus)
9787 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
9788 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
9789 is clicked.
9790 (x_activate_menubar): Remove extern for saved_menu_event_location.
9791 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9792 Move from mac.c.
9793
97942008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9795
9796 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
9797 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
9798
97992008-04-23 Jason Rumney <jasonr@gnu.org>
9800
9801 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
9802 attributes only for local files.
9803
9804 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
9805 default to Qlocal.
9806
98072008-04-22 Juri Linkov <juri@jurta.org>
9808
9809 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
9810 read-buffer-to-switch instead of using the letter "B".
9811
98122008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9813
9814 * fileio.c (Qdefault_directory): New variable.
9815 (Fread_file_name): Use it to pass `dir' to the completion functions.
9816
98172008-04-20 Chong Yidong <cyd@stupidchicken.com>
9818
9819 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
9820
98212008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
9822
9823 * keyboard.c (Vpre_help_message): Remove.
9824 (show_help_echo): Remove default C code.
9825
9826 * dired.c (directory_files_internal, file_name_completion):
9827 Only call ENCODE_FILE if the string is indeed decoded.
9828
98292008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9830
9831 * Makefile.in (TOOLKIT_DEFINES): Remove.
9832 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
9833
98342008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9835
9836 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
9837 (mactoolbox.o): New target.
9838
9839 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
9840 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
9841
9842 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
9843 Use mac_set_frame_window_background instead of XSetWindowBackground.
9844 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
9845 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
9846 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
9847 instead of SetWindowTitleWithCFString.
9848 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
9849 Move function to mactoolbox.c.
9850 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
9851 Use mac_set_window_modified instead of SetWindowModified.
9852 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
9853 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
9854 (Fx_focus_frame): Use mac_front_non_floating_window instead of
9855 FrontNonFloatingWindow. Use mac_activate_window instead of
9856 ActivateWindow. Use mac_active_non_floating_window instead of
9857 ActiveNonFloatingWindow.
9858 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
9859 Use mac_show_hourglass and mac_hide_hourglass.
9860 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
9861 instead of GetGlobalMouse.
9862 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
9863 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
9864 Use mac_bring_window_to_front instead of BringToFront.
9865 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
9866 mactoolbox.c.
9867 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
9868 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
9869 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
9870 mactoolbox.c.
9871
9872 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
9873 (XtPointer): Move typedef from macmenu.c.
9874 (enum button_type): Move enum from macmenu.c.
9875 (widget_value): Move typedef from macmenu.c.
9876 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
9877 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9878 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9879 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9880 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9881 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9882 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9883 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
9884 (Selection): Move typedef from macselect.c.
9885 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
9886 macterm.c.
9887 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
9888 (mac_is_window_collapsed, mac_bring_window_to_front)
9889 (mac_send_window_behind, mac_hide_window, mac_show_window)
9890 (mac_collapse_window, mac_front_non_floating_window)
9891 (mac_active_non_floating_window, mac_activate_window)
9892 (mac_move_window_structure, mac_move_window, mac_size_window)
9893 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
9894
9895 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
9896 (enum mac_menu_kind): Move enum to mactoolbox.c.
9897 (min_menu_id): Move variable to mactoolbox.c.
9898 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
9899 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
9900 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
9901 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
9902 [TARGET_API_MAC_CARBON]: Likewise.
9903 (XtPointer): Move typedef to macgui.h.
9904 (enum button_type): Move enum to macgui.h.
9905 (widget_value): Move typedef to macgui.h.
9906 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9907 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9908 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9909 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9910 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9911 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9912 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
9913 (popup_activated_flag): Make variable non-static.
9914 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
9915 (add_menu_item, fill_menu, dispose_menus):
9916 Move functions to mactoolbox.c.
9917 (restore_show_help_function, menu_target_item_handler)
9918 (install_menu_target_item_handler, mac_handle_dialog_event)
9919 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
9920 [TARGET_API_MAC_CARBON]: Likewise.
9921 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
9922 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9923 (find_and_call_menu_selection, name_is_separator): Make function
9924 non-static.
9925 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
9926 to mactoolbox.c.
9927 (set_frame_menubar): Don't call install_menu_quit_handler.
9928 (menu_item_selection): New variable.
9929 (mac_menu_show): Use create_and_show_popup_menu.
9930 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
9931 selection but set variable menu_item_selection. All uses changed.
9932 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
9933 Call install_menu_quit_handler. Move to mactoolbox.c.
9934
9935 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
9936 (Selection): Move typedef to macgui.h.
9937 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
9938 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
9939 Make variables non-static.
9940 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9941 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
9942 Make functions non-static.
9943 (Vmac_service_selection) [MAC_OSX]: Likewise.
9944 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
9945 (mac_valid_selection_target_p, mac_clear_selection)
9946 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9947 (mac_put_selection_value, mac_selection_has_target_p)
9948 (mac_get_selection_value, mac_get_selection_target_list)
9949 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
9950 Move functions to mactoolbox.c.
9951 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
9952 Likewise.
9953 (copy_scrap_flavor_data, mac_handle_service_event)
9954 (install_service_handler) [MAC_OSX]: Likewise.
9955 (syms_of_macselect) <Vmac_dnd_known_types>:
9956 Use mac_dnd_default_known_types.
9957
9958 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
9959 Move to mactoolbox.c.
9960 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
9961 (Fx_selection_owner_p): Add EXFUN.
9962 (install_window_handler, remove_window_handler, XSetWindowBackground):
9963 Remove externs.
9964 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
9965 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
9966 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
9967 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
9968 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
9969 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
9970 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
9971 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
9972 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
9973 (create_and_show_popup_menu, mac_get_selection_from_symbol)
9974 (mac_valid_selection_target_p, mac_clear_selection)
9975 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9976 (mac_put_selection_value, mac_selection_has_target_p)
9977 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
9978 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
9979 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
9980 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9981 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
9982 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9983 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
9984 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9985 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9986
9987 * mactoolbox.c: New file.
9988
99892008-04-18 Jason Rumney <jasonr@gnu.org>
9990
9991 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
9992
99932008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9994
9995 * character.c (Fmultibyte_char_to_unibyte):
9996 Return latin1 chars unchanged.
9997
9998 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
9999 relocated if it points to `name'.
10000
100012008-04-17 Kenichi Handa <handa@m17n.org>
10002
10003 * data.c (Faset): Allow setting a multibyte character in an
10004 ASCII-only unibyte string.
10005
10006 * lisp.h (STRING_SET_MULTIBYTE): New macro.
10007
100082008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
10009
10010 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
10011 done in config.h.
10012
100132008-04-16 Juanma Barranquero <lekktu@gmail.com>
10014
10015 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
10016 (Fchar_direction): Add usage in the docstring.
10017
100182008-04-15 Chong Yidong <cyd@stupidchicken.com>
10019
10020 * keyboard.c (read_key_sequence): Remove always-true checks.
10021
100222008-04-14 Jason Rumney <jasonr@gnu.org>
10023
10024 * w32font.c (w32font_open_internal): Set max_bounds.descent in
10025 compatibility struct, for better underline positioning.
10026
100272008-04-13 David Hansen <david.hansen@gmx.net>
10028
10029 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
10030 string.
10031
100322008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
10033
10034 * m/hp800.h (XUINT, XSET): Remove.
10035
100362008-04-12 Juanma Barranquero <lekktu@gmail.com>
10037
10038 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
10039 previous change.
10040
100412008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
10042
10043 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
10044 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
10045
100462008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10047
10048 * keymap.h (map_keymap_canonical): Declare.
10049 * xmenu.c (single_keymap_panes): Use it.
10050
100512008-04-11 Glenn Morris <rgm@gnu.org>
10052
10053 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
10054 set the target's value to that of the alias.
10055
100562008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10057
10058 * term.c (set_tty_color_mode): Left over typo.
10059
100602008-04-10 Michael Albinus <michael.albinus@gmx.de>
10061
10062 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
10063 only after check for file name handler functions. Signal, when
10064 native functionality is not supported.
10065 (syms_of_fileio): Declare it unconditionally.
10066
100672008-04-10 Jason Rumney <jasonr@gnu.org>
10068
10069 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
10070 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
10071
10072 * w32.c (logon_network_drive): Also logon to remote drives that
10073 are mapped to drive letters.
10074
100752008-04-10 Glenn Morris <rgm@gnu.org>
10076
10077 * xdisp.c (truncate-partial-width-windows): Doc fix.
10078
100792008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
10080
10081 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
10082 Move functions to minibuffer.el.
10083 (syms_of_fileio): Don't declare them.
10084
100852008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10086
10087 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
10088 (syms_of_minibuf): Remove its initialization.
10089
10090 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
10091
100922008-04-09 Juanma Barranquero <lekktu@gmail.com>
10093
10094 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
10095
100962008-04-09 Jason Rumney <jasonr@gnu.org>
10097
10098 * makefile.w32-in (distclean): Delete makefile too.
10099 (maintainer-clean): New target.
10100
10101 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
10102
10103 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
10104 for new font backend and composite cases.
10105
101062008-04-09 Jan Djärv <jan.h.d@swipnet.se>
10107
10108 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
10109 Most of the code moved to run_timers.
10110 (do_pending_atimers): Call run_timers.
10111 (run_timers): New function.
10112
10113 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
10114 run atimers.
10115
10116 * process.c (wait_reading_process_output): The same as above.
10117
101182008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10119
10120 * minibuf.c (last_exact_completion): Remove variable.
10121 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
10122 (complete_and_exit_1, complete_and_exit_2)
10123 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
10124 (Fdisplay_completion_list, display_completion_list_1)
10125 (Fminibuffer_completion_help, Fself_insert_and_exit)
10126 (Fexit_minibuffer, Fminibuffer_message): Move functions to
10127 minibuffer.el.
10128 (syms_of_minibuf): Remove corresponding initializations.
10129
10130 * keyboard.c (Qdeactivate_mark): New var.
10131 (command_loop_1): Use it to call `deactivate-mark'.
10132 (syms_of_keyboard): Initialize it.
10133
10134 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
10135 to another frame.
10136 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
10137 Don't call set_tty_color_mode.
10138 (store_frame_param): Reset previous_frame rather than call
10139 set_tty_color_mode.
10140 * term.c (set_tty_color_mode): Rewrite.
10141 * dispextern.h (set_tty_color_mode): New type.
10142 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
10143
101442008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
10145
10146 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
10147 for generic chars, which do not exist any more in emacs-unicode.
10148
101492008-04-08 Michael Albinus <michael.albinus@gmx.de>
10150
10151 * coding.c (detect_coding_emacs_mule)
10152 (Ffind_operation_coding_system): Fix typo.
10153
101542008-04-08 Jason Rumney <jasonr@gnu.org>
10155
10156 * w32uniscribe.c (SNAME): Extract only symbol name.
10157
10158 * w32font.h (struct w32_metric_cache): New struct.
10159 (w32font_info): Use it.
10160 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
10161 (CACHE_BLOCKSIZE): New constants.
10162
10163 * w32font.c (Qja, Qko, Qzh): New symbols.
10164 (syms_of_w32font): Initialise them.
10165 (font_matches_spec): Use them to filter by language.
10166 (recompute_cached_metrics): Remove function.
10167 (compute_metrics, clear_cached_metrics): New functions.
10168 (w32font_encode_char): Use them to manage metric cache.
10169 (w32font_text_extents): Cache metrics for all glyphs on demand.
10170 Delay converting glyph indices to WORD until needed.
10171 (w32font_open_internal): Initialize metric cache to empty.
10172 (registry_to_w32_charset): Charset should always be a symbol.
10173 (fill_in_logfont, list_all_matching_fonts): Family should
10174 always be a symbol.
10175
101762008-04-06 Jason Rumney <jasonr@gnu.org>
10177
10178 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
10179 Give up if glyph indices not supported. Use uniscribe obtained
10180 ABC widths for individual metrics. Map glyph clusters back to
10181 characters using fClusterStart flag. Return number of glyphs
10182 produced, not chars processed.
10183 (uniscribe_shape): Map char at FROM to current glyph.
10184
101852008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10186
10187 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
10188 Use SetMenuItemHierarchicalMenu.
10189
101902008-04-05 Jason Rumney <jasonr@gnu.org>
10191
10192 * image.c (pbm_load): Allow color values up to 65535.
10193 Throw an error if max_color_idx is outside the supported range.
10194 Report an error when image size is invalid.
10195 Read two bytes at a time when raw images have max_color_idx above 255.
10196
101972008-04-05 Eli Zaretskii <eliz@gnu.org>
10198
10199 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10200 cFileName a file name that includes `?' characters, use the 8+3
10201 alias in cAlternateFileName instead.
10202
102032008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
10204
10205 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
10206 append "CCL: Quitted" when the CCL program is quitted.
10207 (setup_ccl_program): Initialize ccl->quit_silently to zero.
10208
10209 * ccl.h (struct ccl_program): New member quit_silently.
10210
102112008-04-05 Chong Yidong <cyd@stupidchicken.com>
10212
10213 * search.c (compile_pattern_1): Treat non-nil and non-string of
10214 search-spaces-regexp as nil.
10215
10216 * minibuf.c (Fassoc_string): Tweak docstring.
10217
102182008-04-05 Eli Zaretskii <eliz@gnu.org>
10219
10220 * dired.c (Ffile_attributes): Support inode numbers wider than 32
10221 bits. Remove ugly WINDOWSNT-specific kludge introduced on
10222 2008-03-14 to force inode be positive.
10223
10224 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
10225 _S_* ones, since we now use our own sys/stat.h.
10226 (stat, fstat): Don't mangle the inode number.
10227 (init_user_info): Don't restrict UID and GID to 0-60000 range.
10228
102292008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
10230
10231 * frame.h (struct frame): Give one more bit to `visible' since we use
10232 values larger than 1 to indicate obscured frames on ttys.
10233
10234 * keymap.c (Qkeymap_canonicalize): New var.
10235 (Fmap_keymap_internal): New fun.
10236 (describe_map): Use keymap-canonicalize.
10237
10238 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
10239 (Fundo_boundary): Set them.
10240 (syms_of_undo): Initialize them.
10241 (record_point): Use them instead of last_point_position*.
10242 (last_undo_buffer): Change type.
10243
102442008-04-04 Jason Rumney <jasonr@gnu.org>
10245
10246 * w32font.c (w32font_text_extents): Use font's ascent and descent.
10247 (recompute_cached_metrics): Don't set ascent and descent per char.
10248
10249 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
10250 (uniscribe_check_otf): Add GC protection before consing.
10251 Rearrange loop for counting features.
10252
102532008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10254
10255 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
10256 buffer with byte-size of source buffer.
10257
102582008-04-03 Chong Yidong <cyd@stupidchicken.com>
10259
10260 * callint.c (Fcall_interactively): Handle temporary region even
10261 when shift-select-mode is off.
10262
102632008-04-03 Jason Rumney <jasonr@gnu.org>
10264
10265 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
10266
102672008-04-03 Kenichi Handa <handa@m17n.org>
10268
10269 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
10270 (CATEGORY_MASK_UTF_16): Likewise.
10271 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
10272 binary file.
10273 (detect_coding): Add null-byte detection for a binary file.
10274 (detect_coding_system): Likewise.
10275
102762008-04-03 Jason Rumney <jasonr@gnu.org>
10277
10278 * w32uniscribe.c: New file.
10279
10280 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
10281
10282 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
10283
10284 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
10285 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
10286 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
10287 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
10288 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
10289 (Qphonetic): New symbols.
10290 (syms_of_w32font): Initialize them.
10291 (font_supported_scripts): Use them.
10292 (w32font_list_family): List all charsets.
10293 (w32font_text_extents, recompute_cached_metrics): Fix metric
10294 calculations.
10295 (w32_enumfont_pattern_entity): Make full_type a DWORD.
10296 Give opentype fonts their own format.
10297 (font_matches_spec): New arguments backend and logfont.
10298 Handle :otf spec for uniscribe backend.
10299 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
10300 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
10301
10302 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
10303 font backend.
10304 (globals_of_w32fns): Initialize uniscribe font backend.
10305
10306 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
10307 dependencies.
10308 (w32uniscribe.$(O)): New file to build.
10309 (FONT_OBJ): Include w32uniscribe.$(O).
10310 (LIBS): Add uniscribe libraries.
10311
10312 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
10313
103142008-04-02 Chong Yidong <cyd@stupidchicken.com>
10315
10316 * callint.c (Vshift_select_mode): New var.
10317 (Finteractive): Document new ^ spec.
10318 (Fcall_interactively): Call handle-shift-selection if the ^ spec
10319 is present.
10320
10321 * keyboard.c (Vthis_command_keys_shift_translated): New var.
10322 (command_loop_1): Avoid running the direct display versions of
10323 forward-char and backward-char if shift-selection may occur.
10324 (read_key_sequence): Set Vthis_command_keys_shift_translated if
10325 shift-translation takes place.
10326
10327 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
10328 avoid clobbering by define-minor-mode.
10329
10330 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
10331 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
10332
10333 * syntax.c (Fforward_word): Add ^ interactive spec.
10334
10335 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
10336 (Fscroll_right): Add ^ interactive spec.
10337
103382008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
10339
10340 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
10341
10342 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
10343
10344 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
10345
103462008-03-31 Juri Linkov <juri@jurta.org>
10347
10348 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
10349
103502008-03-30 Jan Djärv <jan.h.d@swipnet.se>
10351
10352 * gtkutil.c (xg_set_geometry): Fix indentation.
10353 (xg_resize_outer_widget): Remove.
10354 (x_wm_size_hint_off): Fix indentation.
10355 (xg_frame_set_char_size): Call flush_and_sync after
10356 gtk_window_resize.
10357 (x_wm_set_size_hint): Pass NULL as geometry window to
10358 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
10359 Add menu bar and tool bar height to base height.
10360 (xg_update_frame_menubar, free_frame_menubar)
10361 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
10362 (update_frame_tool_bar, free_frame_tool_bar):
10363 Change xg_resize_outer_widget to xg_frame_set_char_size.
10364
103652008-03-30 Michael Albinus <michael.albinus@gmx.de>
10366
10367 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
10368 (Fdbus_call_method): New parameter TIMEOUT.
10369 (dbus-send-signal): Optimize UNGCPRO call.
10370
103712008-03-29 Juri Linkov <juri@jurta.org>
10372
10373 * window.c (Fdisplay_buffer): Move call to
10374 Vsplit_window_preferred_function out of conditions that check
10375 if window is eligible for vertical splitting.
10376 When Vsplit_window_preferred_function is non-nil, call it and use
10377 its non-nil return value as window. Otherwise, continue doing
10378 vertical splitting using Fsplit_window with arg horflag=nil.
10379 (syms_of_window) <Vsplit_window_preferred_function>: Change the
10380 default value from `split-window' to nil.
10381
103822008-03-29 Juri Linkov <juri@jurta.org>
10383
10384 * callint.c (Fcall_interactively): Revert 2008-03-16 change
10385 for interactive code letters 'b' and 'B'.
10386
103872008-03-29 Eli Zaretskii <eliz@gnu.org>
10388
10389 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
10390 multibyte string.
10391
103922008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
10393
10394 * keyboard.c (pending_funcalls): New var.
10395 (timer_check): Run it.
10396 (syms_of_keyboard): Initialize it.
10397 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
10398 (Vdelete_terminal_functions): New vars.
10399 (syms_of_terminal): Initialize them.
10400 (Fdelete_terminal): Run delete-terminal-functions.
10401 * xdisp.c (safe_eval): Rewrite.
10402 (safe_call2): New fun.
10403 * frame.c (Qdelete_frame_functions): New var.
10404 (syms_of_frame): Initialize it.
10405 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
10406 * lisp.h (safe_call2, pending_funcalls): Declare.
10407
104082008-03-28 Andreas Schwab <schwab@suse.de>
10409
10410 * indent.c (Fmove_to_column): Move declaration before statements.
10411
104122008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
10413
10414 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
10415 (struct frame): Use bit fields for boolean vars.
10416
10417 * process.c (server_accept_connection): Simplify naming.
10418 (emacs_get_tty_pgrp): Use SDATA.
10419
10420 * coding.c (decode_coding_object): Fix last change.
10421
104222008-03-27 Jason Rumney <jasonr@gnu.org>
10423
10424 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
10425
104262008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
10427
10428 * charset.c (Fdefine_charset_internal): Change the way of
10429 registering charsets in Vcharset_order_list.
10430 (syms_of_charset): Make the charset `eight-bit' supplementary.
10431
104322008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
10433
10434 * regex.c (EXTEND_BUFFER): Change order of pointer addition
10435 operations, to avoid having the difference between pointers
10436 overflow.
10437
104382008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
10439
10440 * indent.c (check_display_width): New fun.
10441 (scan_for_column): Use it.
10442
10443 * data.c (syms_of_data): Mark most-positive-fixnum and
10444 most-negative-fixnum as constants.
10445
10446 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
10447
10448 * indent.c (scan_for_column): Extract from current_column_1.
10449 Merge with the same code from Fmove_to_column.
10450 (current_column_1, Fmove_to_column): Use it.
10451
104522008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
10453
10454 * keymap.c (map_keymap_internal): New fun.
10455 (map_keymap): Use it.
10456 (Fmap_keymap_internal): New fun.
10457 (Fmap_keymap): Remove left-out test from before make_save_value.
10458
10459 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
10460
10461 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
10462 Use XCAR/XCDR.
10463
10464 * process.h (struct Lisp_Process): Remove filter_multibyte.
10465 * process.c (QCfilter_multibyte): Remove.
10466 (setup_process_coding_systems): Don't use filter_multibyte.
10467 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
10468 (read_process_output): Don't adjust multibyteness to filter_multibyte.
10469 (Fset_process_filter_multibyte): Change the coding-system to
10470 approximate the previous behavior.
10471 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
10472 coding-system.
10473
10474 * coding.c (decode_coding_object): When not decoding into a buffer,
10475 obey the coding system's preference of (uni|multi)byte.
10476
104772008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
10478
10479 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
10480 every char is changed and has a different byte-length.
10481 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
10482 Fix int -> EMACS_INT.
10483
104842008-03-23 David Hansen <david.hansen@gmx.net>
10485
10486 * dbusbind.c (xd_read_message): Remove extra copying of message
10487 strings. Check for NULL `interface' or `member'.
10488
104892008-03-22 Eli Zaretskii <eliz@gnu.org>
10490
10491 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10492 cFileName a file name that includes `?' characters, use the 8+3
10493 alias in cAlternateFileName instead.
10494
104952008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
10496
10497 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
10498
104992008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10500
10501 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
10502 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
10503 work on current_buffer only instead (that was already the case
10504 for some of the code anyway).
10505 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
10506 (temp_set_point, temp_set_point_both): Use EMACS_INT.
10507 (SET_PT, SET_PT_BOTH): Adjust.
10508 * intervals.h (set_point, temp_set_point, set_point_both)
10509 (temp_set_point_both): Remove redundant declarations.
10510
105112008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10512
10513 * fileio.c (Finsert_file_contents):
10514 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
10515 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
10516 when buffer != current_buffer anyway.
10517
105182008-03-20 Andreas Schwab <schwab@suse.de>
10519
10520 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
10521 as default.
10522
105232008-03-19 Jason Rumney <jasonr@gnu.org>
10524
10525 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
10526 (syms_of_w32fns): Initialize them.
10527 (HOURGLASS_ID): New constant.
10528 (x_window_to_frame): Don't check hourglass_window.
10529 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
10530 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
10531 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
10532 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
10533 Only change the cursor if hourglass is not active.
10534 (Fx_create_frame): Initialize frame's current_cursor.
10535 (hourglass_atimer): Remove.
10536 (hourglass_started): New function.
10537 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
10538 (show_hourglass): Adapt to w32, changing argument to frame.
10539
10540 * w32term.h (struct w32_output): Remove hourglass_window.
10541 Add current_cursor.
10542
10543 * eval.c (call_debugger, Fsignal):
10544 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
10545 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
10546 (Fexecute_extended_command, cancel_hourglass_unwind):
10547 * minibuf.c (read_minibuf):
10548 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
10549
105502008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
10551
10552 * window.c (run_funs): New fun.
10553 (run_window_configuration_change_hook): Use it to run the buffer-local
10554 and the global part of the hook.
10555
10556 * xdisp.c (format_mode_line_unwind_data): Add window argument.
10557 (unwind_format_mode_line): Restore selected window.
10558 (x_consider_frame_title, Fformat_mode_line): Set selected window.
10559
105602008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
10561
10562 * editfns.c (Fchar_equal): Check they are valid characters.
10563
10564 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
10565
105662008-03-17 Andreas Schwab <schwab@suse.de>
10567
10568 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
10569 against a charset.
10570
10571 * lisp.h (Fbuffer_list): Declare.
10572
105732008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 10574
aac0c6e3
MR
10575 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
10576 handlebox_widget is != 0.
10577
105782008-03-16 Juri Linkov <juri@jurta.org>
10579
10580 * callint.c (Fcall_interactively): For interactive code letters
10581 'b' and 'B' put the buffer list into the list of default "future"
10582 values of the minibuffer.
10583
105842008-03-16 Andreas Schwab <schwab@suse.de>
10585
10586 * keyboard.c (read_key_sequence): Fix downcasing of letters with
10587 modifiers.
10588
10589 * regex.c (re_match_2_internal): Correct matching of a charset
10590 against latin-1 characters.
10591
105922008-03-16 Kenichi Handa <handa@m17n.org>
10593
10594 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
10595 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
10596 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
10597 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
10598 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
10599 CHAR_STRING_ADVANCE.
10600 (produce_chars): Fix for the case that the source and the
10601 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
10602 instead of CHAR_STRING_ADVANCE.
10603 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
10604 STRING_CHAR_ADVANCE.
10605
106062008-03-15 Andreas Schwab <schwab@suse.de>
10607
10608 * regex.c (re_match_2_internal): Correct matching of eight bit
10609 characters in unibyte strings.
10610
106112008-03-15 Martin Rudalics <rudalics@gmx.at>
10612
10613 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
10614 at end of range when it coincides with the end of the buffer.
10615
106162008-03-14 Eli Zaretskii <eliz@gnu.org>
10617
10618 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
10619
10620 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
10621
106222008-03-14 Jason Rumney <jasonr@gnu.org>
10623
10624 * editfns.c (initial_tz): New variable.
10625 (syms_of_editfns): Initialize it.
10626 (Fset_time_zone_rule): Set it when first called.
10627 Use it when TZSTRING is nil.
10628
10629 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
10630 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
10631 (monitor_from_point_fn, get_monitor_info_fn): New globals.
10632 (globals_of_w32fns): Initialize them.
10633 (compute_tip_xy): Use them to position tooltips.
10634
106352008-03-14 Glenn Morris <rgm@gnu.org>
10636
10637 * emacs.c (main): Revert previous change.
10638 (standard_args): Revert -internal-script back to -scriptload,
10639 and remove the long-option form.
10640
106412008-03-13 Glenn Morris <rgm@gnu.org>
10642
10643 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
10644 Remove option -enable-font-backend.
10645
106462008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
10647
10648 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
10649
106502008-03-11 Jan Djärv <jan.h.d@swipnet.se>
10651
10652 * xterm.c (x_connection_closed): For GTK: If this is the last
10653 terminal just exit without closing the display.
10654
106552008-03-11 Jason Rumney <jasonr@gnu.org>
10656
10657 * w32font.c (w32font_full_name): Use floor to round.
10658
f0131492 106592008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
10660
10661 * sound.c (alsa_configure): Declare vol at beginning of block.
10662
10663 * fontset.c (Ffontset_info): Remove extra semicolon.
10664
106652008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
10666
10667 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
10668 size of resulting string.
10669
106702008-03-10 Jason Rumney <jasonr@gnu.org>
10671
10672 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
10673
106742008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10675
10676 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
10677 Don't pretend as if characters with display property haven't been
10678 consumed for string-replacing-string case.
10679
106802008-03-08 Kim F. Storm <storm@cua.dk>
10681
10682 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
10683 (get_next_display_element, next_element_from_string)
10684 (next_element_from_ellipsis, next_element_from_buffer): Use it.
10685
106862008-03-08 Andreas Schwab <schwab@suse.de>
10687
10688 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
10689
106902008-03-06 Jason Rumney <jasonr@gnu.org>
10691
10692 * w32font.c (w32_registry): Take font_type argument. Use ANSI
10693 when charset not specified. Only translate ANSI to unicode when
10694 font_type is truetype.
10695 (w32font_coverage_ok): New function.
10696 (add_font_entity_to_list): Use it to filter unsuitable fonts.
10697
106982008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
10699
10700 * lread.c (Fread_char): Resolve modifiers.
10701 (Fread_char_exclusive): Likewise.
10702
10703 * character.c (char_resolve_modifier_mask): New function.
10704 (char_string): Use char_resolve_modifier_mask.
10705 (Fchar_resolve_modifiers): New function.
10706 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
10707 function.
10708
107092008-03-04 Jason Rumney <jasonr@gnu.org>
10710
10711 * makefile.w32-in: Always include w32font.c in the build.
10712 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
10713
107142008-03-04 Andreas Schwab <schwab@suse.de>
10715
10716 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
10717 (versionclean): Likewise.
10718
107192008-03-04 Juanma Barranquero <lekktu@gmail.com>
10720
10721 * .cvsignore: Add oo.
10722
107232008-03-03 Andreas Schwab <schwab@suse.de>
10724
10725 * coding.c (decode_coding_object): Inhibit gap shrinking while
10726 decoding in place.
10727
107282008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
10729
10730 * w32term.c: Remove unused include "gnu.h".
10731 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
10732
10733 * gnu.h: Rename to ...
10734 * emacs-icon.h: ... this.
10735 * xterm.c: Use emacs-icon.h instead of gnu.h.
10736 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
10737
107382008-03-03 Juanma Barranquero <lekktu@gmail.com>
10739
10740 * w32font.c: Include math.h.
10741
107422008-03-03 Jason Rumney <jasonr@gnu.org>
10743
10744 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
10745 Compute options separately.
10746 (w32font_open_internal): Set glyph_idx before caching metrics.
10747
10748 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
10749 Define if system headers don't.
10750 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
10751 (w32font_encode_char): Don't declare here.
10752
10753 * w32font.c (Quniscribe, QCformat): New symbols.
10754 (syms_of_w32font): Define them.
10755 (w32font_has_char): Indicate uncertainty.
10756 (w32font_encode_char): Encode as glyph point. Make static.
10757 (recompute_cached_metrics): New function.
10758 (w32font_open_internal): Use it. Set font to use glyph points
10759 initially. Set format based on type of font.
10760 (w32font_text_extents, w32font_draw): Optionally use glyph points.
10761 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
10762 on it. Set format based on information available here.
10763 (add_font_entity_to_list): Identify backend based on opentype_only.
10764
107652008-03-02 Andreas Schwab <schwab@suse.de>
10766
10767 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
10768
10769 * coding.c (decode_coding_big5, produce_chars):
10770 Fix typos in last change.
10771
107722008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
10773
10774 * gnu.h: New icon.
10775
107762008-03-02 Kenichi Handa <handa@m17n.org>
10777
10778 * coding.c (decode_coding_utf_8): When eol-type of CODING is
10779 `dos', don't decode '\r' if that is the last in the source.
10780 (decode_coding_utf_16, decode_coding_emacs_mule)
10781 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10782 (decode_coding_raw_text, decode_coding_charset): Likewise.
10783 (produce_chars): Don't decode EOL here. Use EMACS_INT.
10784
107852008-03-01 Jason Rumney <jasonr@gnu.org>
10786
10787 * w32font.c (w32font_full_name): Report point size for scalable fonts.
10788
107892008-03-01 Kim F. Storm <storm@cua.dk>
10790
10791 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
10792
107932008-03-01 Jason Rumney <jasonr@gnu.org>
10794
10795 * w32font.c (w32font_full_name): New function.
10796 (w32font_open_internal): Use it.
10797
107982008-03-01 Kim F. Storm <storm@cua.dk>
10799
10800 * dispnew.c (line_draw_cost): Fix invalid glyph check.
10801
108022008-03-01 Jason Rumney <jasonr@gnu.org>
10803
10804 * font.c (font_unparse_fcname): Increase len when style is a symbol.
10805
108062008-03-01 Jan Djärv <jan.h.d@swipnet.se>
10807
10808 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
10809 xg_frame_resized when the event is for the edit widget.
10810
10811 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
10812
10813 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
10814 set_char_size.
10815 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
10816 operations on widgets here. Just set frame size if needed.
10817 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
10818 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
10819 (x_wm_set_size_hint): Set size hints on the edit widget only, not
10820 the whole frame.
10821 (xg_create_tool_bar): Move attachment of the tool bar to
10822 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
10823 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
10824
108252008-03-01 Jason Rumney <jasonr@gnu.org>
10826
10827 * w32fns.c (w32_msg_pump): Disable debug code.
10828
108292008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10830
10831 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
10832
108332008-02-29 Chong Yidong <cyd@stupidchicken.com>
10834
10835 * xdisp.c (next_overlay_string): Don't set
10836 overlay_strings_at_end_processed_p if we're currently reading from
10837 a display string.
10838
108392008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
10840
10841 * xdisp.c (get_overlay_strings_1): Fix typo.
10842
108432008-02-29 Chong Yidong <cyd@stupidchicken.com>
10844
10845 * xdisp.c (get_overlay_strings_1): Add missing argument type.
10846
108472008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
10848
10849 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
10850
10851 * xdisp.c (display_mode_element): Cancel the previous change.
10852 (decode_mode_spec): Likewise.
10853 (handle_auto_composed_prop): Don't make composition if it->string
10854 is a string.
10855
108562008-02-27 Kim F. Storm <storm@cua.dk>
10857
10858 * lisp.h (GLYPH): Change type from int to struct with separate char
10859 and face_id members.
10860 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
10861 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
10862 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
10863 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
10864 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
10865 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
10866 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
10867 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
10868 handle new Lisp glyph code encoding, either an integer or a cons.
10869
10870 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
10871 (GLYPH_ALIAS): Delete.
10872 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
10873 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
10874 (GLYPH_FROM_CHAR): Replace macro by ...
10875 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
10876
10877 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
10878 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
10879 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
10880 (GLYPH_INVALID_P): New macro.
10881 (spec_glyph_lookup_face): Update prototype.
10882
10883 * dispnew.c (line_draw_cost): Adapt to new glyph type.
10884 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
10885 new glyph code encoding.
10886 (spec_glyph_lookup_face): No return value; update passed glyph instead.
10887 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
10888
10889 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10890 Adapt to new glyph type and new glyph code encoding.
10891
10892 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
10893
10894 * indent.c (current_column, current_column_1, Fmove_to_column)
10895 (compute_motion): Adapt to new glyph code encoding.
10896
10897 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
10898
108992008-02-27 Chong Yidong <cyd@stupidchicken.com>
10900
10901 * process.c (wait_reading_process_output): Check for window
10902 changes caused by timers.
10903 Suggested by Johan Bockgård.
10904
109052008-02-27 Glenn Morris <rgm@gnu.org>
10906
10907 * emacs.c (USAGE1): Add `--disable-font-backend'.
10908
109092008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
10910
10911 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
10912 is made to the buffer.
10913
109142008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
10915
10916 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
10917 (face_at_string_position):
10918 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
10919 (face_at_string_position):
10920 * xdisp.c (display_string, next_overlay_change):
10921 * buffer.h (overlays_at):
10922 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
10923 Update callers.
10924
109252008-02-26 Chong Yidong <cyd@stupidchicken.com>
10926
10927 * editfns.c (Fformat): Doc fix.
10928
109292008-02-26 Juanma Barranquero <lekktu@gmail.com>
10930
10931 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
10932 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
10933 (Ffont_otf_alternates, Fquery_font): Doc fixes.
10934
109352008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10936
10937 * buffer.c (Fbuffer_swap_text): New function.
10938 (syms_of_buffer): Defsubr it.
10939
109402008-02-25 Chong Yidong <cyd@stupidchicken.com>
10941
10942 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
10943
109442008-02-25 Jason Rumney <jasonr@gnu.org>
10945
10946 * w32font.c (w32font_draw): Draw one character at a time when padding.
10947
109482008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10949
10950 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
10951 Handle a nil arg. Use run_window_configuration_change_hook.
10952 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
10953 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
10954 Use run_window_configuration_change_hook.
10955
109562008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10957
10958 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
10959 1-pixel width.
10960
109612008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10962
10963 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
10964 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
10965 if the glyph in the font is zero pixel with.
10966
10967 * dispextern.h (struct glyph_string): New member padding_p.
10968
10969 * w32font.c (w32font_draw): Pay attention to s->padding_p.
10970
10971 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
10972
10973 * xfont.c (xfont_draw): Pay attention to s->padding_p.
10974
10975 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
10976
10977 * font.c: If the font driver doesn't have `shape' function, return Qnil.
10978
109792008-02-25 Jason Rumney <jasonr@gnu.org>
10980
10981 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
10982
109832008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
10984
10985 Allow fine-grained image-cache flushing.
10986 * dispextern.h (struct image): Add `dependencies' field.
10987 (clear_image_caches): Change arg to Lisp_Object.
10988 * image.c (make_image): Initialize `dependencies' field.
10989 (clear_image_cache): Change arg to allow fine-grained flushing.
10990 Perform the flush even if image-cache-eviction-delay is nil.
10991 (clear_image_caches): Change arg to Lisp_Object.
10992 (Fclear_image_cache): Expand meaning of the argument.
10993 (mark_image): Mark `dependencies' field.
10994 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
10995 (lface_hash): Use XHASH rather than XFASTINT.
10996 (face_at_buffer_position): Fix int -> EMACS_INT position.
10997 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
10998 (select_frame_for_redisplay): Remove code duplication.
10999 (redisplay_internal): Adapt arg to call to clear_image_caches.
11000
110012008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
11002
11003 * s/vms4-0.h:
11004 * s/vms4-2.h:
11005 * s/vms4-4.h:
11006 * s/vms5-5.h: Remove, unused.
11007
11008 * s/irix5-2.h:
11009 * s/irix6-0.h:
11010 * s/riscos5.h:
11011 * s/mach-bsd4-3.h:
11012 * m/mips4.h: Remove files for obsolete systems.
11013
11014 * Makefile.in:
11015 * filelock.c:
11016 * unexmips.c:
11017 * m/hp9000s300.h:
11018 * m/iris4d.h:
11019 * s/aix3-1.h:
11020 * s/hpux.h:
11021 * s/msdos.h:
11022 * s/usg5-0.h:
11023 * s/usg5-2-2.h:
11024 * s/usg5-2.h:
11025 * s/usg5-3.h: Remove references to obsolete variables.
11026
11027 * s/irix5-0.h: Remove, move all the contents ...
11028 * s/irix6-5.h: ... here. Simplify.
11029 * config.in: Regenerate.
11030
110312008-02-24 Jason Rumney <jasonr@gnu.org>
11032
11033 * w32term.c (x_draw_glyph_string_background): Clear the background
11034 manually when cleartype is in use.
11035 (x_draw_glyph_string_foreground): Draw text transparently when
11036 cleartype is in use.
11037
11038 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
11039 a font into it unless we have to.
11040
110412008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11042
11043 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
11044 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 11045
aac0c6e3
MR
110462008-02-18 Jason Rumney <jasonr@gnu.org>
11047
11048 * w32fns.c (Fw32_shell_execute): Encode parameters.
11049
110502008-02-09 Eli Zaretskii <eliz@gnu.org>
11051
11052 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
11053
110542008-02-05 Juanma Barranquero <lekktu@gmail.com>
11055
11056 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
11057
110582008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
11059
11060 * xterm.c (x_set_offset): Don't change the gravity if
11061 CHANGE_GRAVITY is -1.
11062
110632008-02-23 Chong Yidong <cyd@stupidchicken.com>
11064
11065 * fileio.c (auto_save_error_occurred): New var.
11066 (auto_save_error): Set it.
11067 (Fdo_auto_save): Don't overwrite the error message if an auto-save
11068 error occurred.
11069
110702008-02-23 Eli Zaretskii <eliz@gnu.org>
11071
11072 * w32.c (globals_of_w32): Add initializations for
11073 g_b_init_get_sid_sub_authority and
11074 g_b_init_get_sid_sub_authority_count.
11075
110762008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
11077
11078 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
11079 (font_parse_xlfd): Use them for sanity check.
11080 (Finternal_set_font_style_table): Make sure the table is bijective.
11081
11082 Consolidate the image_cache to the terminal struct.
11083 * termhooks.h (P_): Remove redundant def.
11084 (struct terminal): New field `image_cache'.
11085 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
11086 of FRAME_X_IMAGE_CACHE.
11087 * xterm.h (struct x_display_info): Remove image_cache field.
11088 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11089 * w32term.h (struct w32_display_info): Remove image_cache field.
11090 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11091 * macterm.h (struct mac_display_info): Remove image_cache field.
11092 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11093 * xterm.c (x_term_init):
11094 * w32term.c (w32_term_init):
11095 * macterm.c (mac_term_init): Set the image_cache in the terminal.
11096 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
11097 Remove declarations.
11098 (clear_image_caches, mark_image_cache): New declarations.
11099 * xfaces.c (clear_face_cache):
11100 * xdisp.c (redisplay_internal): Use clear_image_caches.
11101 * image.c (clear_image_cache): Don't check that a frame is on
11102 a window-system before checking if it shares the same cache.
11103 (clear_image_caches): New function.
11104 (Fclear_image_cache): Use it.
11105 (mark_image): Move from allo.c.
11106 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
11107 * alloc.c (mark_image, mark_image_cache): Move to image.c.
11108 (mark_object): Don't call mark_image_cache for frames.
11109 (mark_terminals): Call mark_image_cache.
11110
11111 * lisp.h (Fdelete_terminal): Declare.
11112
11113 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
11114 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
11115 wrong_type_argument.
11116
111172008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
11118
11119 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
11120 malayalam.el, and tamil.el. Add sinhala.el.
11121
111222008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
11123
11124 * xterm.c (x_connection_closed): Consolidate identical tests.
11125 (x_delete_terminal): Don't crash if called via x_connection_closed.
11126
111272008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
11128
11129 * xdisp.c (decode_mode_spec): New arg string.
11130 (display_mode_element): Adjust for the above change.
11131
111322008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11133
11134 * callint.c (Fcall_interactively): Use AREF.
11135
111362008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
11137
11138 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
11139
111402008-02-18 Jan Djärv <jan.h.d@swipnet.se>
11141
11142 * xfns.c (Fx_show_tip): Set string to " " if empty.
11143
111442008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
11145
11146 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
11147 with Qt.
11148
111492008-02-17 Kenichi Handa <handa@m17n.org>
11150
11151 * ftfont.c (ftfont_shape): Return Lispy number.
11152
11153 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
11154 for GCs.
11155 (Finternal_set_font_selection_order): Call font_update_sort_order
11156 only when enable_font_backend is set.
11157 (realize_x_face): Set face->font_info to that of default face only
11158 when enable_font_backend is set.
11159
11160 * xdisp.c (handle_composition_prop): Set it->c to the fist
11161 character of the composed region.
11162 (fill_composite_glyph_string): Set base_face->font_info to
11163 s->font_info. Get a face for ascii from base_face->ascii_face.
11164 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
11165 with a face already decided.
11166 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
11167 non-negative.
11168 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
11169 call font_prepare_composition unconditionally.
11170
11171 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
11172
11173 * xterm.h (struct x_display_info): New member font.
11174
11175 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
11176 (x_set_mouse_face_gc, x_new_font): Likewise.
11177 (x_term_init): Setup display_info->font.
11178 (x_delete_terminal): Free display_info->font.
11179
11180 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
11181
11182 * ftxfont.c (ftxfont_default_fid): Delete it.
11183 (ftxfont_open): Set xfont->fid to 0.
11184 (ftxfont_end_for_frame): Clear data specific to the frame and the
11185 font-driver.
11186
11187 * xftfont.c (xftfont_default_fid): Delete it.
11188 (xftfont_open): Set xfont->fid to 0.
11189
11190 * fontset.c (FONTSET_OBJLIST): New macro.
11191 (fontset_find_font): Update font-object list of the fontset.
11192 (free_realized_fontset): New function.
11193 (free_face_fontset): Call free_realized_fontset.
11194 (Ffont_info): Call font_close_object only when enable_font_backend
11195 is set.
11196
11197 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
11198 [HAVE_NTGUI]: Include w32term.h.
11199 [MAC_OS]: Include macterm.ch.
11200 (font_otf_ValueRecord): Use make_number.
11201 (font_finish_cache): Fix handling of reference count.
11202 (font_clear_cache): Update num_fonts.
11203 (font_open_entity): Update smallest_char_width and
11204 smallest_font_height of the frame.
11205 (font_close_object): Update num_fonts.
11206 (Fclear_font_cache): Fix finding the target cache data.
11207
112082008-02-16 Glenn Morris <rgm@gnu.org>
11209
11210 * fontset.c (Finternal_char_font): Fix compilation warning.
11211
112122008-02-16 Eli Zaretskii <eliz@gnu.org>
11213
11214 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
11215 instead of char arrays. Enlarge the size of array passed to
11216 get_token_information.
11217
11218 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
11219 warnings.
11220
112212008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
11222
11223 * .gdbinit: Don't set `args', it breaks gdb --args.
11224
112252008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
11226
11227 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
11228 within a narrowed buffer.
11229
112302008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
11231
11232 * coding.c (decode_coding_object, encode_coding_object):
11233 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
11234
112352008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
11236
11237 * coding.c (coding_set_destination): Use BEG_BYTE rather than
11238 hardcoding 1.
11239 (detect_coding_system):
11240 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
11241 (string_char_to_byte, string_byte_to_char, insert_from_gap):
11242 * insdel.c (insert_from_gap):
11243 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
11244 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
11245 (string_to_multibyte):
11246 * character.c (chars_in_text, multibyte_chars_in_text):
11247 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
11248
11249 * character.h (FETCH_STRING_CHAR_ADVANCE)
11250 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
11251 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
11252 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
11253
11254 * casefiddle.c (casify_region): Only call after-change and composition
11255 functions on the part of the region that was changed.
11256
11257 * keyboard.c (read_avail_input):
11258 * frame.c (Fdelete_frame): Call Fdelete_terminal.
11259
112602008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11261
11262 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
11263 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
11264
112652008-02-11 Juanma Barranquero <lekktu@gmail.com>
11266
11267 * w32menu.c (push_submenu_start, push_submenu_end)
11268 (push_left_right_boundary, push_menu_pane, push_menu_item):
11269 * keyboard.c (read_key_sequence): Don't pass args with side effects
11270 to AREF, it fails when compiling with -DENABLE_CHECKING.
11271
112722008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
11273
11274 * Makefile.in (${lispsource}international/charprop.el):
11275 Delete this target.
11276
11277 * search.c (boyer_moore): Fix incorrect synching of the trunk and
11278 emacs-unicode-2.
11279
112802008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11281
11282 * terminal.c (Fdelete_terminal): Clean up the `force' path.
11283
112842008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11285
11286 * frame.c (Qnoelisp): New symbol.
11287 (syms_of_frame): Initialize it.
11288 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
11289 harmless Elisp code, from a strong `force' from x_connection_closed.
11290 * frame.h (Qnoelisp): Declare.
11291 * xterm.c (x_connection_closed): Pass `noelisp'.
11292
11293 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
11294 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
11295 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
11296 rather than `int' for the type of `type'.
11297
112982008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
11299
11300 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
11301
11302 * Makefile.in (GNUC): Remove support for gcc-1.x.
11303
113042008-02-10 Richard Stallman <rms@gnu.org>
11305
11306 * lisp.h (ASET): Use AREF, not ASLOT.
11307
113082008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11309
11310 * lisp.h (ASET): Check bounds.
11311
113122008-02-10 Glenn Morris <rgm@gnu.org>
11313
11314 * buffer.c (mode-name): Doc fix.
11315
113162008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11317
11318 * Makefile.in:
11319 * emacs.c:
11320 * gmalloc.c:
11321 * keyboard.c:
11322 * lisp.h:
11323 * m/ibm370aix.h:
11324 * process.c:
11325 * regex.c:
11326 * s/hpux.h:
11327 * sysdep.c:
11328 * sysselect.h:
11329 * systty.h:
11330 * unexec.c:
11331 * w32term.c:
11332 * xsmfns.c:
11333 * xterm.c: Remove code that deals with obsolete variables.
11334
11335 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
11336
11337 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
11338 nothing else needs it anymore.
11339
113402008-02-09 Eli Zaretskii <eliz@gnu.org>
11341
11342 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
11343 instead of unibyte_char_to_multibyte.
11344
113452008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11346
11347 * s/gnu-linux.h: Remove commented out code.
11348
11349 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
11350
11351 * Makefile.in: Update what RMS says about using autoconf.
11352 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
11353 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
11354 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
11355 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
11356
113572008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
11358
11359 * keymap.c (Fkey_description): Move side effect outside of macro call.
11360
11361 * xfaces.c (Finternal_make_lisp_face):
11362 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
11363
11364 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
11365 (syms_of_fontset): Use ASET.
11366
11367 * fns.c (concat): Move side effect outside of macro call.
11368 (hash_clear): Use ASET.
11369
113702008-02-08 Richard Stallman <rms@gnu.org>
11371
11372 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
11373 If FORCE, and frame has a surrogate minibuffer for another frame,
11374 delete the other frame first.
11375
113762008-02-07 Timo Savola <timo.savola@iki.fi>
11377
11378 * xterm.c (x_detect_focus_change): Handle embed client message.
11379 (handle_one_xevent): Ditto.
11380 (handle_one_xevent): If embedded and we get a button press/release,
11381 request focus.
11382 (xembed_set_info, xembed_send_message): New functions.
11383 (x_make_frame_visible): Call xembed_set_info if embedded.
11384 (x_make_frame_invisible): Call xembed_set_info if embedded.
11385 (x_term_init): Initialize Xatom_XEMBED.
11386 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
11387 (x_iconify_frame): Ditto.
11388
11389 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
11390 (enum xembed_info, enum xembed_message, enum xembed_focus)
11391 (enum xembed_modifier, enum xembed_accelerator): New.
11392 (xembed_set_info, xembed_send_message): Declare.
11393 (FRAME_X_EMBEDDED_P): New.
11394
11395 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
11396 gtk_plug_new.
11397
11398 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
11399 window ID of a frame.
11400 (x_window): Reparent frame if embedded.
11401 (Fx_create_frame): Don't set border width if embedded.
11402
11403 * emacs.c (USAGE3): Add --parent-id.
11404 (standard_args): Ditto.
11405
114062008-02-07 Jan Djärv <jan.h.d@swipnet.se>
11407
11408 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
11409
114102008-02-07 Jim Meyering <meyering@redhat.com>
11411
11412 Use "do...while (0)", not "if (1)...else" in macro definitions.
11413 The latter provokes a warning from gcc about the empty else, when
11414 followed by ";". Also, without that trailing semicolon, it would
11415 silently swallow up any following statement.
11416 * syntax.h (SETUP_SYNTAX_TABLE)
11417 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
11418 * buffer.h (DECODE_POSITION): Likewise.
11419 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
11420 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
11421 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
11422 (FETCH_CHAR_ADVANCE): Likewise.
11423 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
11424
114252008-02-07 Jim Meyering <meyering@redhat.com>
11426
11427 * lread.c [lint]: Don't include <sys/inode.h>.
11428
114292008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
11430
11431 * xselect.c (x_handle_dnd_message):
11432 * xmenu.c (digest_single_submenu, xmenu_show):
11433 * xdisp.c (with_echo_area_buffer_unwind_data)
11434 (format_mode_line_unwind_data, unwind_format_mode_line)
11435 (display_menu_bar):
11436 * eval.c (Ffetch_bytecode):
11437 * doc.c (store_function_docstring):
11438 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
11439 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
11440 * buffer.c (add_overlay_mod_hooklist): Use ASET.
11441
114422008-02-07 Kenichi Handa <handa@m17n.org>
11443
11444 * ftxfont.c (ftxfont_open): Don't set
11445 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
11446
11447 * ftfont.c (ftfont_open): Fix previous change.
11448
114492008-02-06 Jason Rumney <jasonr@gnu.org>
11450
11451 * w32font.c (w32font_text_extents): Fill in lbearing metric.
11452 Use cached metrics for ASCII characters.
11453 (w32font_open_internal): Don't set font's owning_frame.
11454 Cache metrics for ASCII characters.
11455
11456 * w32font.h (struct w32font_info): Add ascii_metrics.
11457 Remove owning_frame.
11458
114592008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
11460
11461 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
11462 to negative value.
11463
11464 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
11465
11466 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
11467
11468 * charset.c (syms_of_charset): Set QCtest and Qeq.
11469
114702008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
11471
11472 * process.c (Fstart_process):
11473 * callproc.c (Fcall_process): Handle the case where
11474 Funhandled_file_name_directory returns nil.
11475
11476 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
11477 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
11478 * font.c (check_gstring): Use them and AREF to access the vector before
11479 we know it's really a gstring.
11480 (Ffont_shape_text): Fix typo.
46e722a9 11481 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
11482
11483 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
11484 Declare.
11485
11486 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
11487
114882008-02-05 Jason Rumney <jasonr@gnu.org>
11489
11490 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
11491 Set smallest_font_height and smallest_char_width in display info.
11492
114932008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
11494
11495 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
11496
114972008-02-05 Miles Bader <miles@gnu.org>
11498
11499 * xfaces.c (get_lface_attributes, merge_named_face)
11500 (lookup_named_face, lookup_derived_face, realize_named_face):
11501 Revert 2008-02-01 change by cyd@stupidchicken.com.
11502
115032008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
11504
11505 * fontset.c (Ffontset_info): Handle the case of inhibitting the
11506 fallback fonts.
11507 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
11508
115092008-02-04 Jason Rumney <jasonr@gnu.org>
11510
11511 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
11512 set full_name.
11513 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
11514
115152008-02-03 Jason Rumney <jasonr@gnu.org>
11516
11517 * makefile.w32-in (OBJ1): Include font.o here.
11518 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
11519
115202008-02-02 Jason Rumney <jasonr@gnu.org>
11521
11522 * makefile.w32-in (temacs): Bump EMHEAP to 21.
11523
115242008-02-01 Jason Rumney <jasonr@gnu.org>
11525
11526 * s/cygwin.h: Define VIRT_ADDR_VARIES.
11527
11528 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
11529
115302008-02-01 Andreas Schwab <schwab@suse.de>
11531
11532 * Makefile.in (shortlisp, lisp): Update for rename of
11533 ../lisp/language/myanmar.el.
11534
115352008-02-01 Chong Yidong <cyd@stupidchicken.com>
11536
11537 * xfaces.c (get_lface_attributes): Delete function.
11538 (merge_named_face, lookup_named_face, lookup_derived_face)
11539 (realize_named_face): Call lface_from_face_name directly, and use
11540 the fact that merge_face_vectors does not alter its FROM argument.
11541
115422008-02-01 Jason Rumney <jasonr@gnu.org>
11543
11544 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
11545 input in the default locale. Handle non-Unicode multibyte input.
11546
115472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11548
11549 * fontset.c (reorder_font_vector): Exclude nil elements from the
11550 font group. Don't try multiple fonts.
11551 (fontset_font): Adjust for the above change.
11552 (Finternal_char_font): Return nil if the found font doesn't
11553 contain the character ch.
11554
11555 * Makefile.in (lisp, shortlisp): Add cham.el.
11556
115572008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11558
11559 * font.h (FONTP): Make it return 1 also for a font-object.
11560
11561 * .gdbinit (xfontset): New function.
11562
11563 * font.c (font_find_for_lface): Check if the character C is
11564 supported or not only for the first font.
11565
11566 * fontset.c (reorder_font_vector): Fix typo.
11567 (fontset_find_font): Don't add a font-spec specifying a script.
11568 Use 0 (not Qt) for the indication of empty font-group. Change the
11569 format of RFONT-DEF. Return Qt if no font in the font-group
11570 support the character.
11571 (fontset_font): Adjust for the above change. If no font was
11572 found the character, remember that.
11573 (face_for_char): Adjust for the change of RFONT-DEF.
11574 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
11575 no font for the target.
11576 (Finternal_char_font): Adjust for the change of RFONT-DEF.
11577
115782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11579
11580 * font.c (font_load_for_face): Handle the case that the font in
11581 face->lface is a string.
11582
115832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11584
11585 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
11586
115872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11588
11589 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
11590 Fix previous change. If the frame is not on a window system,
11591 signal an error.
11592
115932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11594
11595 * coding.c (decode_coding_object, encode_coding_object): Adjust
11596 marker positions after conversion.
11597
11598 * lisp.h (struct Lisp_Marker): New member need_adjustment.
11599
116002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11601
11602 * font.c (font_find_for_lface): Fix the handling of the return
11603 value of font_has_char.
11604 (Ffont_shape_text): Fix previous change.
11605
11606 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
11607 (fontset_ref_and_range): Delete it.
11608 (fontset_find_font): Call char_table_ref_and_range instead of
11609 FONTSET_REF_AND_RANGE.
11610 (make_fontset): Don't setup font groups of Latin here.
11611 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
11612 (new_fontset_from_font): Make the specified font the default for
11613 all Latin characters.
11614
116152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11616
11617 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
11618 is on a window system before accessing the fontset of the frame.
11619
116202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11621
11622 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
11623
11624 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
11625 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
11626
11627 * font.c (Ffont_shape_text): If the font driver doesn't have a
11628 shaper function, make zero-width glyphs to have at least one-pixel
11629 width. Fix setting of `to' field of glyphs.
11630
116312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11632
11633 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
11634 glyphs.
11635
11636 * font.h (struct font_driver): Improve docstring of member `shape'.
11637
116382008-02-01 Kenichi Handa <handa@m17n.org>
11639
11640 * composite.c (syms_of_composite): Fix docstring of
11641 auto-composition-function.
11642
11643 * font.h (LGLYPH_SIZE): New macro.
11644
11645 * font.c (Ffont_fill_gstring): Stop filling when a character not
11646 supported by the font is found.
11647 (Ffont_shape_text): When a shape callback function returns nil,
11648 try at most two more times with larger gstring.
11649 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
11650
11651 * xdisp.c (handle_auto_composed_prop): Change the argument to
11652 auto-composition-function.
11653
11654 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
11655 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
11656 Lispy glyph and store it in the lgstring.
11657
11658 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
11659
11660 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
11661
116622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11663
11664 * font.c (Ffont_shape_text): Avoid unnecessary composition.
11665
11666 * fontset.c (Vfont_encoding_charset_alist): New variable.
11667 (syms_of_fontset): DEFVAR it.
11668 (reorder_font_vector, fontset_find_font): Optimize for the case of
11669 no need of reordering.
11670 (face_for_char): Map the charset property by
11671 Vfont_encoding_charset_alist.
11672
116732008-02-01 Jason Rumney <jasonr@gnu.org>
11674
11675 * w32font.c (logfonts_match): Don't check adstyle here.
11676 (font_matches_spec): Check here against physical font instead.
11677 (add_font_entity_to_list): Avoid some substitutions.
11678
11679 * font.c (font_parse_fcname): Default weight and slant to normal.
11680 (font_score): Prefer normal fonts if weight or slant unspecified.
11681 (font_score) [WINDOWSNT]: Scale weight difference down to closer
11682 match freetype scores.
11683
116842008-02-01 Jason Rumney <jasonr@gnu.org>
11685
11686 * w32font.c (w32font_text_extents): Don't use the frame stored in the
11687 font, as it may have been deleted.
11688 (w32_enumfont_pattern_entity): Map generic family to adstyle using
11689 most common hyphenless variation.
11690 (logfonts_match): Check generic family.
11691 (font_matches_spec): Don't check generic family here.
11692 (fill_in_logfont): Set generic family based on adstyle.
11693
11694 * w32font.h (w32font_get_cache): Update declaration.
11695
116962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11697
11698 * ftfont.c (ftfont_get_cache): Adjust the argument type.
11699
11700 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
11701 If none of the new drivers are available, call font_update_drivers
11702 with the old drivers.
11703
11704 * w32font.c (w32font_get_cache): Adjust the argument type.
11705
11706 * xfont.c (xfont_get_cache): Adjust the argument type.
11707
11708 * font.h (struct font_driver): Change argument type of get_cache.
11709
11710 * xftfont.c (xftfont_start_for_frame): Delete prototype.
11711
11712 * font.c (Ffont_get): Fix arguments to Fassoc.
11713 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
11714 (font_clear_cache): New function.
11715 (font_list_entities, font_matching_entity): Use font_get_cache.
11716 (font_update_drivers): Call font_clear_cache when finishing a driver.
11717
11718 * fontset.c (fontset_find_font): Fix previous change.
11719
117202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11721
11722 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
11723 dpyinfo->font_table.
11724 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
11725 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
11726
11727 * font.c (font_at): Handle the case that the arg C is negative.
11728 Handle the unibyte case.
11729 (Ffont_at): Call font_at with the arg C -1.
11730
11731 * xdisp.c (handle_auto_composed_prop): Don't get a character at
11732 the position here, and call font_at with the arg C -1.
11733 Don't check the range of the existing composition at the point.
11734
117352008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11736
11737 * fontset.c (fontset_add): New args charset_id and family.
11738 Change caller.
11739 (load_font_get_repertory, fontset_find_font): Assume that
11740 font_spec is always a font-spec object.
11741 (Fset_fontset_font): Always store a font-spec object in a fontset.
11742
11743 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
11744 instead of get_property_and_range.
11745
117462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11747
11748 * xftfont.c (struct xftfont_info): Delete the member ft_face.
11749 (xftfont_open): Don't keep locking face.
11750 (xftfont_close): Don't unlock face.
11751 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
11752
11753 * fontset.c (fontset_find_font): Don't prefer a font of
11754 supplementary charset.
11755
117562008-02-01 Kenichi Handa <handa@m17n.org>
11757
11758 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
11759 script, langsys_tag to langsys, new member script.
11760 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 11761 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
11762 listing to the script specified in that property. Fix arg to
11763 OTF_check_features.
11764
117652008-02-01 Jason Rumney <jasonr@gnu.org>
11766
11767 * w32font.h: New file.
11768
11769 * w32font.c: Include it.
11770 (struct w32font_info): Add owning_frame field. Move to w32font.h.
11771 (w32font_open): Set owning_frame.
11772 (w32font_text_extents): Use owning_frame.
11773 (struct font_callback_data): Add opentype_only field.
11774 (add_font_entity_to_list): Use it to filter fonts.
11775 Don't check against full name.
11776 (w32font_list_internal): New function.
11777 (w32font_list): Use it.
11778 (w32font_match_internal): New function.
11779 (w32font_match): Use it.
11780 (w32font_open_internal): New function.
11781 (w32font_open): Use it.
11782 (w32font_get_cache, w32font_close, w32font_has_char)
11783 (w32font_encode_char, w32font_text_extents, w32font_draw):
11784 Make non-static.
11785
11786 * makefile.w32-in (w32font.o): Depend on w32font.h.
11787
117882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11789
11790 * charset.c (Fdefine_charset_internal): Record a supplementary
11791 charset at the tail of Vcharset_order_list.
11792
11793 * font.c (Ffont_shape_text): Fix the return value.
11794
11795 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
11796
11797 * xdisp.c (handle_auto_composed_prop): Fix previous change.
11798
117992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11800
11801 * ftfont.c (struct OpenTypeSpec): New struct.
11802 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
11803 (ftfont_get_open_type_spec): New function.
11804 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
11805
11806 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
11807
118082008-02-01 Jason Rumney <jasonr@gnu.org>
11809
11810 * w32font.c (add_font_entity_to_list): Compare only the beginning
11811 of full name.
11812
118132008-02-01 Kenichi Handa <handa@m17n.org>
11814
11815 * xdisp.c (handle_auto_composed_prop): Simplify the code.
11816 Never return HANDLED_RECOMPUTE_PROPS.
11817
118182008-02-01 Kenichi Handa <handa@m17n.org>
11819
11820 * font.c (font_gstring_produce): Delete it.
11821
11822 * composite.h (COMPOSITION_METHOD):
11823 Handle COMPOSITION_WITH_GLYPH_STRING.
11824
118252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11826
11827 * xfont.c (Qx): Delete.
11828 (syms_of_xfont): Don't initialize Qx.
11829
11830 * composite.h (enum composition_method):
11831 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
11832
118332008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11834
11835 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
11836 (choose_face_font): Accept new form of font-spec.
11837
11838 * frame.h (font_driver_list): Declare it unconditionally.
11839 (struct frame): Define members font_driver_list and font_data_list
11840 unconditionally.
11841
11842 * fontset.c: Include "font.h" unconditionally.
11843 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
11844 (Fset_fontset_font): Accept a font-spec object.
11845
11846 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
11847 PIXEL_SIZE part a wild card.
11848
11849 * dispextern.h (struct glyph_string): Define members clip and
11850 num_clips unconditionally.
11851 (struct face): Define members font_info and extra unconditionally.
11852
11853 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
11854 ftfont_info only when HAVE_LIBOTF is defined.
11855
118562008-02-01 Andreas Schwab <schwab@suse.de>
11857
11858 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
11859 and end.
11860
118612008-02-01 Jason Rumney <jasonr@gnu.org>
11862
11863 * w32font.c (w32font_driver): Add new fields.
11864
118652008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11866
11867 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
11868 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
11869 (LIBES): Add @M17N_FLT_CFLAGS@.
11870
11871 * composite.c (compose_text): Don't treat the new style
11872 composition specially.
11873
11874 * emacs.c (main): Call syms_of_font unconditionally.
11875
11876 * font.h (FONT_ENTITY_NOT_LOADABLE)
11877 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
11878 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
11879 (struct font_driver): New member shape.
11880 (font_registry_charsets): Extern it.
11881 (font_find_for_lface, font_prepare_composition): Adjust prototype.
11882 (font_otf_capability, font_drive_otf): Delete their externs.
11883
11884 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
11885 (font_charset_alist, font_registry_charsets): Move from xfont.c
11886 and rename.
11887 (font_prop_validate_otf): New function.
11888 (font_property_table): Register it for QCotf.
11889 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
11890 (font_drive_otf): Delete.
11891 (font_prepare_composition): New arg F. Adjust for the change of
11892 lispy gstring.
11893 (font_find_for_lface): New arg C.
11894 (font_load_for_face): Adjust for the change of font_find_for_lface.
11895 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
11896 lispy gstring.
11897 (Ffont_shape_text): New function.
11898 (Fopen_font): If the font size is not given, use 12-pixel.
11899 (Ffont_at): New arg STRING.
11900 (syms_of_font): Initalize font_charset_alist.
11901 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
11902 conditionally.
11903
11904 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
11905 fonts of the same font-spec. Change the format of RFONT-DEF.
11906 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
11907 Adjust for the change of RFONT-DEF.
11908 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
11909
11910 * ftfont.h: New file.
11911
11912 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
11913 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11914 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11915 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
11916 font_otf_capability and font_drive_otf, set ftfont_shape.
11917 (ftfont_list): Adjust for the change of :otf property value.
11918 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
11919 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
11920 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
11921 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11922 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
11923 (otf_gstring, gstring, m17n_flt_initialized): New variables.
11924
11925 * w32term.c (x_draw_composite_glyph_string_foreground):
11926 Adjust for the change of lispy gstring.
11927
11928 * xdisp.c (handle_composition_prop): Adjust for the change of
11929 lispy gstring. Call a function for auto-composition with the
11930 third arg it->window.
11931 (fill_composite_glyph_string): Adjust for the change of lispy string.
11932 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
11933
11934 * xfaces.c (set_font_frame_param): Adjust for the change of
11935 font_find_for_lface.
11936
11937 * xfont.c (x_font_charset_alist): Move to font.c and rename.
11938 (xfont_registry_charsets): Likewise. Change caller.
11939 (syms_of_xfont): Don't handle x_font_charset_alist.
11940
11941 * xftfont.c: Include "ftfont.h".
11942 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11943 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11944 (xftfont_close) [HAVE_LIBOTF]: Close otf.
11945 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11946 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
11947 Set xftfont_driver.shape to xftfont_shape.
11948
11949 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
11950 the change of lispy gstring.
11951
119522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11953
11954 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
11955
119562008-02-01 Jason Rumney <jasonr@gnu.org>
11957
11958 * w32font.c (w32font_draw): Fill background manually.
11959
119602008-02-01 Jason Rumney <jasonr@gnu.org>
11961
11962 * font.c (Qfontp): Remove unused symbol.
11963 (QCantialias): New symbol.
11964 (syms_of_font): Define it.
11965 (font_property_table): Set a validator for QCantialias.
11966
11967 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
11968 Define if not already.
11969 (QCfamily): Share with xfaces.c.
11970 (Qstandard, Qsubpixel, Qnatural): New symbols.
11971 (syms_of_w32font): Define them. Don't define QCfamily here.
11972 (w32_antialias_type, lispy_antialias_type): New functions.
11973 (w32_enumfont_pattern_entity): New arg requested_font.
11974 Set antialias parameter if non-default was requested.
11975 (fill_in_logfont): Fill in lfQuality if :antialias specified.
11976
119772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11978
11979 * lread.c (read1): Undo the previous change.
11980
119812008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
11982
11983 * frame.c (Fdelete_frame): Call font_update_drivers only when
11984 USE_FONT_BACKEND is defined.
11985
119862008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11987
11988 * font.h (struct font_bitmap): New member bits_per_pixel.
11989 (struct font_driver): New members start_for_frame and end_for_frame.
11990 (struct font_data_list): New struct.
11991 (font_put_frame_data, font_get_frame_data): Extern them.
11992
11993 * frame.h (struct frame): New member font_data_list.
11994
11995 * font.c (font_update_drivers): Call driver->start_for_frame and
11996 driver->end_for_frame at proper timings.
11997 (font_put_frame_data, font_get_frame_data): New functions.
11998 (Ffont_spec): Add usage in the docstring.
11999
12000 * frame.c (make_frame): Initialize f->font_data_list to NULL.
12001 (Fdelete_frame): Call font_update_drivers.
12002
12003 * xftfont.c (struct xftface_info): Delete the member xft_draw.
12004 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
12005 (xftfont_get_xft_draw): New function.
12006 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
12007 (xftfont_end_for_frame): New function.
12008 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
12009
12010 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
12011 Change argument. Cache GCs in the per-frame data.
12012 (struct ftxfont_frame_data): New struct.
12013 (ftxfont_draw_bitmap): New arg gc_fore and flush.
12014 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
12015 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
12016 (ftxfont_end_for_frame): New function.
12017 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
12018
12019 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
12020
120212008-02-01 Kenichi Handa <handa@m17n.org>
12022
12023 * xselect.c (Vselection_coding_system)
12024 (Vnext_selection_coding_system): Delete them.
12025 (syms_of_xselect): Don't declare selection-coding-system and
12026 next-selection-coding-system. They are declared in select.el.
12027
120282008-02-01 Jason Rumney <jasonr@gnu.org>
12029
12030 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
12031
12032 * w32fns.c: Include imm.h.
12033 (get_composition_string_fn, get_ime_context_fn): New optional
12034 system functions.
12035 (globals_of_w32fns): Load them from imm32.dll.
12036 (ignore_ime_char): New flag.
12037 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
12038 WM_IME_ENDCOMPOSITION messages.
12039
12040 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
12041 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
12042
120432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12044
12045 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
12046 (READCHAR_REPORT_MULTIBYTE): New macro.
12047 (readchar): New 2nd arg MULTIBYTE.
12048 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
12049 Make symbol's name multibyte according to the multibyteness of the
12050 source.
12051
120522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12053
12054 * xfaces.c (face_for_overlay_string): Call lookup_face with
12055 correct arguments (fix of synching with the trunk).
12056
120572008-02-01 Kenichi Handa <handa@m17n.org>
12058
12059 * font.c (font_prop_validate_symbol, font_prop_validate_style)
12060 (font_prop_validate_non_neg, font_prop_validate_spacing):
12061 Delete argument prop_index.
12062 (font_property_table): Change arguments to validater. Change Callers.
12063 (font_lispy_object): Delete.
12064 (font_at): Use font_find_object instead fo font_lispy_object.
12065
120662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12067
12068 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
12069 and file names.
12070
120712008-02-01 Jason Rumney <jasonr@gnu.org>
12072
12073 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
12074 (font_matches_spec): Remove debug output.
12075 (add_font_entity_to_list): Avoid using substituted fonts.
12076
120772008-02-01 Jason Rumney <jasonr@gnu.org>
12078
12079 * doc.c (Fsnarf_documentation):
12080 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
12081
120822008-02-01 Miles Bader <miles@gnu.org>
12083
12084 * dispextern.h (struct glyph_row): Only define "clip" field if
12085 HAVE_WINDOW_SYSTEM is defined.
12086
120872008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12088
12089 Fix up multi-tty merge.
12090
12091 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
12092 and indentation.
12093
12094 * xfaces.c (free_realized_face, clear_face_gcs):
12095 Include font_done_for_face in the input_blocked section, just in case.
12096
12097 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
12098 (get_char_face_and_encoding): Undo last change and remove the *other*
12099 duplicate definition (i.e. keep the one that's better scoped and that
12100 includes code for the font-backend).
12101
12102 * terminal.c (create_terminal): Default keyboard_coding to
12103 `no-conversion' and terminal_coding to `undecided'.
12104
12105 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
12106
12107 * fontset.c (free_realized_fontsets): Check that the table entry does
12108 contain a fontset before trying to compare it to `base'.
12109
12110 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
12111 syms_of_charset, and syms_of_coding earlier because init_window_once
12112 now needs Vcoding_system_hash_table to be setup.
12113
12114 * coding.h (default_buffer_file_coding): Remove.
12115
12116 * coding.c (default_buffer_file_coding): Remove.
12117 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
12118 than ->symbol, and use the terminal-local coding system.
12119 (syms_of_coding): Don't setup the coding-systems that are not
12120 terminal-local.
12121 (Fdefine_coding_system_internal): Use XCAR/XCDR.
12122
12123 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
12124 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
12125
12126 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
12127 in chartab.c and were re-added here by mistake.
12128 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
12129
12130 * doc.c (Fsnarf_documentation):
12131 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
12132 src to etc.
12133
12134 * ChangeLog.10: Add mistakenly removed entry.
12135
121362008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
12137
12138 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
12139
121402008-02-01 Miles Bader <miles@gnu.org>
12141
12142 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
12143 Add extra args to FACE_FOR_CHAR.
12144
121452008-02-01 Kenichi Handa <handa@m17n.org>
12146
12147 * keymap.c (where_is_internal_1): If key is a cons, store the copy
12148 in sequence.
12149
12150 * chartab.c (map_sub_char_table, map_char_table): If the range
12151 contains just one character, call the function with that character
12152 even if the depth is not 3.
12153
121542008-02-01 Jason Rumney <jasonr@gnu.org>
12155
12156 * w32font.c (w32font_text_extents): Calculate metrics for the
12157 whole string.
12158
121592008-02-01 Jason Rumney <jasonr@gnu.org>
12160
12161 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
12162
121632008-02-01 Jason Rumney <jasonr@gnu.org>
12164
12165 * w32term.c (x_set_glyph_string_clipping): Use
12166 get_glyph_string_clip_rects.
12167 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12168 Adjust for the change of struct glyph_string.
12169
12170 * w32font.c (w32font_draw): Do clipping here.
12171
121722008-02-01 Kenichi Handa <handa@m17n.org>
12173
12174 * xftfont.c (xftfont_draw): Adjust for the change of struct
12175 glyph_string.
12176
12177 * xterm.c (x_set_glyph_string_clipping): Use
12178 get_glyph_string_clip_rects.
12179 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12180 Adjust for the change of struct glyph_string.
12181
12182 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
12183 the resulting clip(s}.
12184 (expose_overlaps): Add arg r. Change callers. Set it to
12185 row->clip temporarily.
12186 (expose_window): Redraw rows overlapping the exposed area.
12187
12188 * dispextern.h (struct glyph_row): New member clip.
12189 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
12190 clip_height, new member clip, and num_clips.
12191
121922008-02-01 Kenichi Handa <handa@m17n.org>
12193
12194 * data.c (Fchar_or_string_p): Fix docstring.
12195
121962008-02-01 Kenichi Handa <handa@m17n.org>
12197
12198 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
12199 create a temporary XftDraw object.
12200
122012008-02-01 Kenichi Handa <handa@m17n.org>
12202
12203 * font.c (Ffontp): Fix docstring.
12204
12205 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
12206 strong evidence of ISO-2022.
12207
122082008-02-01 Kenichi Handa <handa@m17n.org>
12209
12210 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
12211 SYNTAX_ENTRY_FOLLOW_PARENT.
12212
122132008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12214
12215 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
12216 its type.
12217 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
12218 Update to the new type of weak_hash_tables and next_weak.
12219
12220 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
12221 a plain C pointer to Lisp_Hash_Table.
12222
12223 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
12224 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
12225 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
12226 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
12227 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
12228 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
12229 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
12230 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
12231 (GC_EQ): Remove since they've been identical to their non-GC_
12232 alter-egos ever since the markbit was eradicated.
12233
12234 * alloc.c:
12235 * buffer.c:
12236 * buffer.h:
12237 * data.c:
12238 * fileio.c:
12239 * filelock.c:
12240 * fns.c:
12241 * frame.h:
12242 * lisp.h:
12243 * macterm.c:
12244 * print.c:
12245 * process.c:
12246 * w32fns.c:
12247 * w32menu.c:
12248 * w32term.c:
12249 * xfns.c:
12250 * xmenu.c:
12251 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
12252
122532008-02-01 Kenichi Handa <handa@m17n.org>
12254
12255 * chartab.c (map_sub_char_table): Make it work for the top-level
12256 char-table. Fix handling of parent char-table.
12257 (map_char_table): Adjust for the above change.
12258
122592008-02-01 Jason Rumney <jasonr@gnu.org>
12260
12261 * w32font.c (Qgdi): Rename from Qw32.
12262
122632008-02-01 Jason Rumney <jasonr@gnu.org>
12264
12265 * w32bdf.c (get_quoted_string): Make function static.
12266
122672008-02-01 Kenichi Handa <handa@m17n.org>
12268
12269 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
12270 bigger ascent and descent than those of the font, use them as
12271 font's ascent and descent.
12272
122732008-02-01 Kenichi Handa <handa@m17n.org>
12274
12275 * Makefile.in (${lispsource}international/charprop.el): Move this
12276 target within "#ifdef HAVE_UNIDATA" and "#endif".
12277
122782008-02-01 Kenichi Handa <handa@m17n.org>
12279
12280 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
12281 (shortlisp): Add ../lisp/language/tai-viet.el.
12282
122832008-02-01 Ulrich Mueller <ulm@gentoo.org>
12284
12285 * Makefile.in (${lispsource}international/charprop.el): Depend on
12286 temacs${EXEEXT}.
12287
122882008-02-01 Jason Rumney <jasonr@gnu.org>
12289
12290 * w32font.c (w32font_close): Delete the GDI font object.
12291
12292 * w32menu.c: Include character.h.
12293
12294 * w32proc.c: Likewise.
12295
12296 * w32select.c: Likewise.
12297
12298 * makefile.w32-in (w32proc.o): Depend on character.h.
12299
123002008-02-01 Jason Rumney <jasonr@gnu.org>
12301
12302 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
12303
12304 * w32menu.c (syms_of_w32menu): Likewise.
12305
12306 * w32proc.c (syms_of_ntproc): Likewise.
12307
12308 * w32select.c (syms_of_w32select): Likewise.
12309
12310 * w32term.c (syms_of_w32term): Likewise.
12311
123122008-02-01 Jason Rumney <jasonr@gnu.org>
12313
12314 * w32font.c (w32font_draw): Delete brush after using it.
12315
123162008-02-01 Jason Rumney <jasonr@gnu.org>
12317
12318 * w32font.c (w32font_open): Don't set font_idx.
12319 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
12320 to font settings.
12321 (w32font_draw): Fill background explicitly.
12322
123232008-02-01 Jason Rumney <jasonr@gnu.org>
12324
12325 * w32term.c (w32_initialize): Don't call w32font_initialize.
12326
12327 * w32font.c (w32font_info): Remove subranges.
12328 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
12329 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
12330 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
12331 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
12332 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
12333 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
12334 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
12335 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
12336 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
12337 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
12338 New symbols.
12339 (font_callback_data): New struct.
12340 (w32font_list, w32font_match): Use it.
12341 (w32font_open): Don't populate subranges.
12342 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
12343 (w32font_encode_char): Always return unicode code-point as-is.
12344 (w32font_text_extents): Supply a transformation matrix to
12345 GetGlyphOutline. Never look up by glyph index. Avoid looping
12346 twice. Use unicode version of GetTexExtentPoint32 instead of
12347 glyph index version.
12348 (set_fonts_frame): Remove.
12349 (w32_enumfont_pattern_entity): Add frame parameter, use it to
12350 set frame parameter. Use backward compatible fake foundries.
12351 Save generic family in extra slot under QCfamily. Make width slot
12352 constant. Save QCspacing value. Save list of scripts instead of
12353 binary subranges.
12354 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
12355 (add_font_entity_to_list): Use font_callback_data struct. Filter
12356 unwanted fonts.
12357 (add_one_font_entity_to_list): Use font_callback_data struct.
12358 (w32_registry): Default to iso10646_1.
12359 (fill_in_logfont): Use dpi from extra slot. Don't bother with
12360 string font registries. Don't fill in font name if it is a generic
12361 family name, fill family instead. Use spacing, family and script
12362 extra info to fill pitch, family and charset fields.
12363 (list_all_matching_fonts): Use font_callback_data struct.
12364 (unicode_range_for_char): Remove.
12365 (font_supported_scripts): New function.
12366 (w32font_initialize): Remove.
12367 (syms_of_w32font): Update which symbols are defined.
12368
123692008-02-01 Jason Rumney <jasonr@gnu.org>
12370
12371 * font.c (font_pixel_size): Reverse assq_no_quit args.
12372
12373 * w32term.h (FONT_WIDTH): Report max width, not average.
12374 (FONT_MAX_WIDTH): Remove.
12375 (FONT_AVG_WIDTH): New macro.
12376
12377 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
12378 redefinition of FONT_WIDTH.
12379
12380 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
12381 (w32_cache_char_metrics): Use FONT_WIDTH.
12382
12383 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
12384
123852008-02-01 Jason Rumney <jasonr@gnu.org>
12386
12387 * w32font.c (w32font_open): Make lfHeight negative.
12388
12389 * w32fns.c (x_default_font_parameter): Use new style font name.
12390 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
12391
123922008-02-01 Jason Rumney <jasonr@gnu.org>
12393
12394 * w32font.c (QCsubranges): New symbol.
12395 (w32font_open, w32font_has_char): Get subranges from subproperty
12396 of extra.
12397 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
12398 (syms_of_w32font): Define :subranges symbol.
12399
12400 * font.c (font_put_extra): Expose externally.
12401
12402 * font.h (font_put_extra): Move declaration from font.c.
12403
12404 * font.c (Ffont_get): Use font driver to determine otf capability.
12405 (adjust_anchor): Check if driver defines anchor_point before using.
12406
12407 * w32font.c (w32font_open): Handle size, height and pixel_size better.
12408 (w32font_draw): Use options.
12409 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
12410 Fix detection of truetype fonts.
12411 (registry_to_w32_charset): Handle charsets other than iso8859-1
12412 expressed as lisp symbols.
12413 (w32_registry): Express charset as lisp symbol.
12414 (fill_in_logfont): Reverse pixel and point height logic.
12415 Don't set width here. Set quality to default.
12416
12417 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
12418 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
12419
12420 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12421 Remove redundant loop and allocation.
12422
12423 * makefile.w32-in (font.o, w32font.o): New objects.
12424 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
12425 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
12426
12427 * xdisp.c (fill_composite_glyph_string): Make the first arg to
12428 STORE_XCHARB a valid l-value.
12429
12430 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
12431 calculations for non-Truetype fonts.
12432 (x_draw_glyph_string): Sync with xterm.c.
12433 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12434 Remove redundant code.
12435 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
12436
12437 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
12438 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
12439
12440 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
12441 (x_to_w32_charset, w32_to_x_charset): Expose externally.
12442
12443 * w32font.c: New file for w32 font backend.
12444
124452008-02-01 Kenichi Handa <handa@m17n.org>
12446
12447 * term.c: Don't include "buffer.h" twice.
12448
124492008-02-01 Kenichi Handa <handa@m17n.org>
12450
12451 * character.c (Funibyte_string): New function.
12452 (syms_of_character): Defsubr it.
12453
124542008-02-01 Jason Rumney <jasonr@gnu.org>
12455
12456 * w32term.c [USE_FONT_BACKEND]:
12457 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
12458 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
12459 (x_draw_glyph_string, x_draw_glyph_string_foreground)
12460 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
12461 (x_free_frame_resources): Sync with xterm.c.
12462
124632008-02-01 Andreas Schwab <schwab@suse.de>
12464
12465 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
12466 char-table size.
12467
124682008-02-01 Kenichi Handa <handa@m17n.org>
12469
12470 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
12471
124722008-02-01 Kenichi Handa <handa@m17n.org>
12473
12474 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
12475 font_otf_gpos, add font_drive_otf.
12476
12477 * fontset.c (fontset_find_font): Pay attention to font size
12478 specified for a font.
12479 (reorder_font_vector): Check contents of font_def.
12480
12481 * font.c (struct otf_list): Delete it.
12482 (otf_list): Make it a lisp variable.
12483 (otf_open): Use lispy otf_list.
12484 (generate_otf_features): Rename from parse_gsub_gpos_spec.
12485 (check_otf_features): New function.
12486 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12487 New functions.
12488 (font_drive_otf): New function merging font_otf_gsub and
12489 font_otf_gpos.
12490 (font_open_for_lface): New arg spec. Change argument order.
12491 (font_load_for_face): Adjust for the change of font_open_for_lface.
12492 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
12493 Ffont_otf_gpos.
12494 (syms_of_font): Staticpro otf_list. Delete defsubr of
12495 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
12496
12497 * xfaces.c (set_font_frame_param): Adjust for the change of
12498 font_open_for_lface.
12499
12500 * font.h (font_open_for_lface): Adjust prototype.
12501 (struct font_driver): Delete members otf_gsub and otf_gpos, add
12502 member otf_drive.
12503 (font_otf_gsub, font_otf_gpos): Delete externs.
12504 (font_drive_otf): Extern it.
12505
125062008-02-01 Kenichi Handa <handa@m17n.org>
12507
12508 * font.c (font_at): If the window W is not on a window system,
12509 return Qnil.
12510
12511 * coding.c (produce_chars, encode_coding): Don't call
12512 insert_from_gap if no characters to produce.
12513
125142008-02-01 Kenichi Handa <handa@m17n.org>
12515
12516 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
12517 Fclear_face_cache.
12518
12519 * xfaces.c (face_for_font): Check also face->font==font->font.font.
12520
125212008-02-01 Miles Bader <miles@gnu.org>
12522
12523 * emacs.c (main): Change default value of `enable_font_backend' to 1.
12524 Parse "--disable-font-backend" option.
12525 (standard_args): Add "--disable-font-backend" option.
12526
125272008-02-01 Kenichi Handa <handa@m17n.org>
12528
12529 * fontset.c (fontset_find_font): New function.
12530 (fontset_font): Use fontset_find_font.
12531 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
12532 Register the specified font for all Latin characters.
12533 (new_fontset_from_font): Register the specified font for all Latin
12534 characters.
12535 (dump_fontset): For a realized fontset, include the base fontset
12536 name in the returned vector.
12537
125382008-02-01 Kenichi Handa <handa@m17n.org>
12539
12540 * character.h (CHAR_STRING): Cast C to unsigned on calling
12541 char_string.
12542
12543 * character.c (char_string): Type of arg C changed to unsigned.
12544 Signal an error if C is an invalid character code.
12545
12546 * editfns.c (general_insert_function, Fchar_to_string):
12547 Use CHARACTERP, not INTEGERP.
12548
125492008-02-01 Kenichi Handa <handa@m17n.org>
12550
12551 * character.h (MIN_MULTIBYTE_LEADING_CODE)
12552 (MAX_MULTIBYTE_LEADING_CODE): New macros.
12553
12554 * regex.c (analyse_first): Fix for multibyte characters in "case
12555 charset:" and "case categoryspec:".
12556
125572008-02-01 Andreas Schwab <schwab@suse.de>
12558
12559 * Makefile.in (LIBES): Move standard libraries to the end.
12560
125612008-02-01 Kenichi Handa <handa@m17n.org>
12562
12563 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
12564 nonzero, don't shrink the buffer nextb.
12565
12566 * buffer.h (struct buffer_text): New member inhibit_shrinking.
12567
12568 * coding.c (coding_alloc_by_making_gap): New arg offset.
12569 (alloc_destination): Call coding_alloc_by_making_gap with the arg
12570 offset.
12571 (decode_coding_iso_2022): Update coding->safe_charsets.
12572 (decode_coding_gap): Temporarily set
12573 current_buffer->text->inhibit_shrinking to 1.
12574
125752008-02-01 Kenichi Handa <handa@m17n.org>
12576
12577 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
12578 indexing into elements of s->cmp and s->char2b.
12579
125802008-02-01 Juanma Barranquero <lekktu@gmail.com>
12581
12582 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
12583
125842008-02-01 Kenichi Handa <handa@m17n.org>
12585
12586 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
12587 target_multibyte instead of multibyte.
12588 (re_match_2_internal): Call bcmp_translate with target_multibyte.
12589 (bcmp_translate): Change the argument name from multibyte to
12590 target_multibyte.
12591
125922008-02-01 Kenichi Handa <handa@m17n.org>
12593
12594 These changes are to compile a regexp into a pattern that can be
12595 used both for multibyte and unibyte targets.
12596
12597 * Makefile.in (search.o): Depend on charset.h.
12598
12599 * character.c (multibyte_char_to_unibyte_safe): New function.
12600
12601 * search.c: Include "charset.h".
12602 (compile_pattern_1): Delete argument multibyte. Don't set
12603 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
12604 (compile_pattern): Don't compare cp->buf.target_multibyte.
12605 Compare cp->buf.charset_unibyte.
12606 (compile_pattern): Set cp->buf.target_multibyte.
12607
12608 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
12609
12610 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
12611
12612 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
12613 multibyte. Change callers.
12614 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
12615 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
12616 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
12617 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
12618 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
12619 (regex_compile): Make the compiled pattern usable both for
12620 multibyte and unibyte targets.
12621 (analyse_first): Make the fastmap usable both for multibyte and
12622 unibyte targets.
12623 (TRANSLATE_VIA_MULTIBYTE): Delete.
12624 (re_match_2_internal): Pay attention to the case that the
12625 multibyteness of bufp and target may be different.
12626
126272008-02-01 Kenichi Handa <handa@m17n.org>
12628
12629 * xdisp.c (x_produce_glyphs): When a font is not found, make the
12630 empty box occupy at least one column width.
12631
126322008-02-01 Miles Bader <miles@gnu.org>
12633
12634 * Makefile.in: Remove redundant HAVE_XFT clause.
12635
126362008-02-01 Kenichi Handa <handa@m17n.org>
12637
12638 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
12639
126402008-02-01 Kenichi Handa <handa@m17n.org>
12641
12642 * fontset.c (Finternal_char_font): Fix for the case of POSITION
12643 being nil.
12644
126452008-02-01 Kenichi Handa <handa@m17n.org>
12646
12647 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
12648
126492008-02-01 Kenichi Handa <handa@m17n.org>
12650
12651 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
12652
126532008-02-01 Kenichi Handa <handa@m17n.org>
12654
12655 * search.c (simple_search): Fix previous change.
12656
126572008-02-01 Kenichi Handa <handa@m17n.org>
12658
12659 * xftfont.c (ftfont_font_format): Extern declaration.
12660
12661 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
12662
12663 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
12664 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
12665
12666 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
12667 (ftfont_font_format): Fix previous change.
12668
12669 * font.h (Ffont_xlfd_name): EXFUN it.
12670
12671 * font.c (font_parse_xlfd): Fix the array size of `f'.
12672 (register_font_driver): Use EQ to compare driver->type.
12673
12674 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
12675 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
12676 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
12677
126782008-02-01 Kenichi Handa <handa@m17n.org>
12679
12680 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
12681 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
12682
126832008-02-01 Kenichi Handa <handa@m17n.org>
12684
12685 * xfont.c (xfont_open): Set font->format.
12686
12687 * xftfont.c (xftfont_open): Set font->format.
12688
12689 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
12690 (ftfont_list): Include FC_FONTFORMAT in FcObject.
12691 (ftfont_open): Set font->format.
12692 (ftfont_font_format): New function.
12693
12694 * font.h (struct font): New member format.
12695
12696 * font.c (Qopentype): New variable.
12697 (syms_of_font): Defsym it.
12698 (Fquery_font): Change the format of the last element of the return
12699 value.
12700
127012008-02-01 Kenichi Handa <handa@m17n.org>
12702
12703 * xfns.c (xic_create_xfontset): Try the default fontset name as a
12704 last resort.
12705
127062008-02-01 Kenichi Handa <handa@m17n.org>
12707
12708 * coding.c (detect_coding_charset): Fix detection of multi-byte
12709 charset.
12710
127112008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
12712
12713 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
12714
127152008-02-01 Kenichi Handa <handa@m17n.org>
12716
12717 * xdisp.c (get_next_display_element): Set it->face_id for the
12718 first component of a composition.
12719 (x_produce_glyphs): Check if the font is changed or not for composition.
12720
127212008-02-01 Kenichi Handa <handa@m17n.org>
12722
12723 * fontset.c (Qlatin): New variable.
12724 (syms_of_fontset): Define it as a lisp symbol.
12725 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
12726
127272008-02-01 Kenichi Handa <handa@m17n.org>
12728
12729 * font.c (font_unparse_fcname): Pay attention to the case that
12730 some of font property is a null string.
12731
127322008-02-01 Kenichi Handa <handa@m17n.org>
12733
12734 * term.c: Include "composite.h".
12735 (encode_terminal_code): Output all components of composition.
12736 Check the size of encode_terminal_src.
12737 (produce_glyphs): For composition, call produce_composite_glyph.
12738 (append_composite_glyph, produce_composite_glyph): New functions.
12739
12740 * xdisp.c (x_produce_glyphs): In handling composition, if a font
12741 is not found, get font_info from the current ascii face.
12742
127432008-02-01 Kenichi Handa <handa@m17n.org>
12744
12745 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
12746 buffer-file-name to Qnil before calling insert_from_buffer.
12747
12748 * font.c (font_unparse_fcname): Pay attention to the case that
12749 foundry is a null string.
12750
127512008-02-01 Kenichi Handa <handa@m17n.org>
12752
12753 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
12754
12755 * font.c (Qunicode_sip): New variable.
12756 (syms_of_font): Declare it as a Lisp symbol.
12757
12758 * font.h (Qunicode_sip): Extern it.
12759
127602008-02-01 Kenichi Handa <handa@m17n.org>
12761
12762 * composite.c (get_composition_id): Pay attention to TAB component.
12763
12764 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
12765 TAB. Adjust for the change of s->char2b which always points to
12766 the first element of allocated memory.
12767
12768 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
12769
12770 * xdisp.c (handle_composition_prop): Set it->c to the first
12771 non-TAB component.
12772 (fill_composite_glyph_string): Change argument.
12773 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
12774 (x_produce_glyphs): Fix handling of left/right padding.
12775
127762008-02-01 Kenichi Handa <handa@m17n.org>
12777
12778 * coding.c (detect_coding_system): Fix for handling off
12779 inhibit_iso_escape_detection. Fix for the case that no coding
12780 system is defined for a specific coding category.
12781
127822008-02-01 Kenichi Handa <handa@m17n.org>
12783
12784 * font.c (font_matching_entity): Delete unused local var.
12785
12786 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
12787 opening a font.
12788
12789 * fileio.c (Finsert_file_contents): On recovering a file, assume
12790 Unix-like eol.
12791 (choose_write_coding_system): On auto-saving a file, force
12792 Unix-like eol.
12793
12794 * coding.c (setup_coding_system): Fix setting of
12795 coding->common_flags based on eol_type.
12796 (coding_inherit_eol_type): If PARENT is not nil, be sure to
12797 inherit from it.
12798
127992008-02-01 Kenichi Handa <handa@m17n.org>
12800
12801 * alloc.c (NSTATICS): Increas to 0x600.
12802
128032008-02-01 Kenichi Handa <handa@m17n.org>
12804
12805 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
12806 (ftfont_list): Don't check :name property.
12807 (ftfont_match): New function.
12808 (ftfont_pattern_entity): If the pattern doesn't contain
12809 FC_SPACING, don't assume FC_MONO.
12810
12811 * font.h (struct font_driver): New member `match'.
12812 (font_update_drivers): Adjust prototype.
12813
12814 * font.c (font_parse_fcname, font_parse_name): Don't change :name
12815 property of FONT.
12816 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
12817 them unconditionally.
12818 (font_matching_entity): New function.
12819 (font_open_by_name): Try font_matching_entity if exact match is
12820 not found.
12821 (font_update_drivers): Delete the arg FONT. Return a list of
12822 actually used backends. Don't free faces, font caches here.
12823 Don't store data in frame parameters. Don't call x_set_font.
12824 (Ffont_spec): Store :name property as is.
12825 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
12826 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
12827 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
12828 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
12829 Call font->driver->otf_gsub instead of font_otf_gsub.
12830
12831 * frame.c (x_set_font_backend): Do more works that were done in
12832 font_update_drivers before.
12833
12834 * xfont.c (xfont_match): New function.
12835 (xfont_driver): Set xfont_driver.match to xfont_match.
12836 (xfont_draw): Set font in GC if necessary.
12837
12838 * ftxfont.c (ftxfont_match): New function.
12839 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
12840
12841 * xftfont.c (xftfont_match): New function.
12842 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
12843
128442008-02-01 Kenichi Handa <handa@m17n.org>
12845
12846 * font.h (struct font): New member scalable.
12847 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
12848 (font_otf_gsub): Adjust prototype.
12849
12850 * font.c (font_otf_capability): Fix handling of the default langsys.
12851 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
12852 Check the contents of SPEC.
12853 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
12854 (check_gstring): New function.
12855 (REPLACEMENT_CHARACTER): New macro.
12856 (font_otf_gsub): New arg alternate_subst. Be sure to set all
12857 glyph codes of GSTRING.
12858 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
12859 (font_prepare_composition): Set cmp->glyph_len.
12860 (font_open_entity): Set font->scalable.
12861 (Ffont_get): Handle :otf property.
12862 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
12863 functions.
12864 (Fquery_font): Use font->font.full_name.
12865 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
12866 Sfont_otf_alternates.
12867
12868 * ftfont.c (ftfont_open): Set font->font.full_name and
12869 font->font.name properly. Fix calculation of font->font.height
12870 and font->min_width.
12871
12872 * ftxfont.c (ftxfont_create_gcs): New function.
12873 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
12874 (ftxfont_draw_backgrond): Fix filling region.
12875 (ftxfont_default_fid): New function.
12876 (ftxfont_open): Set xfont->fid to the return value of
12877 ftxfont_default_fid.
12878 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
12879 (ftxfont_done_face): Free only GCs that are created by
12880 ftxfont_create_gcs.
12881 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
12882
12883 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
12884 Clip to src->width, etc (not src->clip_XXX).
12885
12886 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
12887 FontBackend frame parameter.
12888
128892008-02-01 Kenichi Handa <handa@m17n.org>
12890
12891 * font.h (struct font_driver_list): New member `on'.
12892 (Fclear_font_cache): EXFUN it.
12893 (font_update_drivers): Extern it.
12894
12895 * font.c (font_unparse_fcname): Fix typo (swidth->width).
12896 (font_list_entities): Check driver_list->on.
12897 (register_font_driver): Initalize `on' member to 0.
12898 (font_update_drivers): New function.
12899 (Fclear_font_cache): Check driver_list->on.
12900
12901 * frame.h (Qfont_backend): Extern it.
12902 (x_set_font_backend): Extern it.
12903
12904 * frame.c (Qfont_backend): New variable.
12905 (frame_parms): New element for font-backend.
12906 (x_set_font_backend): New function.
12907
12908 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
12909 FontBackend frame parameter.
12910 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
12911 x_set_font_backend.
12912
12913 * xfont.c (xfont_list): Don't try listing by :name property if the
12914 name is not for XLFD.
12915
129162008-02-01 Kenichi Handa <handa@m17n.org>
12917
12918 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
12919 (LGLYPH_SET_TO): New macros.
12920 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
12921 element of G is vector or not.
12922 (font_at): Extern it.
12923
12924 * font.c: Include window.h.
12925 (font_lispy_object): New function.
12926 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
12927 end of valid glyph.
12928 (font_close_object): Fix getting (struct font *).
12929 (font_at): New function.
12930 (Ffont_get): If FONT is a font-object, get entity from it.
12931 (Ffont_make_gstring): Initialize elements of glyphs with nil.
12932 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
12933 range check.
12934 (Ffont_at): New function.
12935 (syms_of_font): Defsubr Sfont_at.
12936
12937 * xdisp.c (it_props): Move the entry for Qauto_composed to just
12938 before the entry for Qcomposition.
12939 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
12940 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
12941 the font in gstring.
12942 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
12943 LGLYPH_FORM (g) to detect the end of valid glyph.
12944 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
12945 we are composing with gstring.
12946
12947 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
12948 Check if adjustment is vector or not.
12949
12950 * Makefile.in (font.o): Make it depends on window.h.
12951
129522008-02-01 Kenichi Handa <handa@m17n.org>
12953
12954 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
12955 adjustment is vector or not.
12956
129572008-02-01 Miles Bader <miles@gnu.org>
12958
12959 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
12960
129612008-02-01 Kenichi Handa <handa@m17n.org>
12962
12963 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
12964 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
12965 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
12966
12967 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
12968 (DEVICE_DELTA): Fix typo.
12969 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
12970 LGLYPH format.
12971
12972 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12973 the change of LGLYPH format.
12974
129752008-02-01 Kenichi Handa <handa@m17n.org>
12976
12977 * ftfont.c (ftfont_list): Fix typo.
12978 (ftfont_build_basic_charsets): Don't include letters with diacritics.
12979
129802008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12981
12982 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
12983
12984 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
12985 xftface_info is non-NULL.
12986
129872008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12988
12989 * ftfont.c (ftfont_list): Move misplaced #endif.
12990
129912008-02-01 Kenichi Handa <handa@m17n.org>
12992
12993 * ftfont.c (ftfont_list): Pay attention to the case that
12994 FC_CAPABILITY is not defined.
12995
129962008-02-01 Kenichi Handa <handa@m17n.org>
12997
12998 * xftfont.c (xftfont_open): Set charset related members to -1.
12999
13000 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
13001 QCname.
13002 (ftfont_open): Set charset related members to -1.
13003
13004 * fontset.c (Votf_script_alist): New variable.
13005 (syms_of_fontset): Initialize it.
13006 (fontset_font): Delete unused variable.
13007
13008 * fontset.h (Votf_script_alist): Extern it.
13009
13010 * font.c (font_find_for_lface): Optimize code.
13011
13012 * font.h (font_close_object, font_merge_old_spec): Extern them.
13013
130142008-02-01 Kenichi Handa <handa@m17n.org>
13015
13016 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
13017 (syms_of_font): Initialize them.
13018 (font_pixel_size): Allow float value in dpi.
13019 (font_prop_validate_type): Delete.
13020 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
13021 Change caller.
13022 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
13023 (font_prop_validate_extra): Delete.
13024 (font_prop_validate_spacing): New function.
13025 (font_property_table): Add elements for all known properties.
13026 (get_font_prop_index): Rename from check_font_prop_name. New
13027 argument FROM. Change caller.
13028 (font_prop_validate): Validate all known properties.
13029 (font_put_extra): Delete argument force. Change caller.
13030 (font_expand_wildcards): Make it static. Fix the way of shrinking
13031 the possible range.
13032 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
13033 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
13034 Change caller.
13035 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
13036 (font_parse_fcname): Delete argument merge. Fix parsing of point
13037 size. Don't validate properties values here. Change caller.
13038 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
13039 (font_open_by_name): Delete unused variable.
13040 (Ffont_spec): Likewise. Validate property values.
13041 (Ffont_match_p): New function.
13042
13043 * font.h (QCscalable): Extern it.
13044 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
13045
13046 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
13047
13048 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
13049 (xfont_list_pattern): New function.
13050 (xfont_list): Use xfont_list_pattern.
13051
130522008-02-01 Kenichi Handa <handa@m17n.org>
13053
13054 * font.h (Flist_fonts): EXFUN it.
13055
130562008-02-01 Jason Rumney <jasonr@gnu.org>
13057
13058 * w32term.c (w32_initialize): Add back smoothing_type and
13059 smoothing_enabled definitions.
13060
130612008-02-01 Kenichi Handa <handa@m17n.org>
13062
13063 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
13064 s->face->font on determining underline position.
13065
130662008-02-01 Kenichi Handa <handa@m17n.org>
13067
13068 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
13069 (font_has_char): Accept font-object too.
13070 (font_find_for_lface): Try at first with a size specified in face.
13071
130722008-02-01 Kenichi Handa <handa@m17n.org>
13073
13074 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
13075 font_open_by_name.
13076
130772008-02-01 Kenichi Handa <handa@m17n.org>
13078
13079 * font.h (QCspacing, QCdpi): Extern them.
13080 (enum font_spacing): New enum.
13081 (FONT_PIXEL_SIZE_QUANTUM): New macro.
13082
13083 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
13084 (QCspacing, QCdpi): New variables.
13085 (syms_of_font): Initialize them.
13086 (font_pixel_size): New function.
13087 (font_put_extra): New function.
13088 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
13089 in FONT_EXTRA.
13090 (font_parse_fcname): Handle enumerated values (e.g. bold).
13091 Fix handling font size. Add QCname property that contains only
13092 unknown properties.
13093 (font_score): Change argument. Change caller. Pay attention to
13094 FONT_PIXEL_SIZE_QUANTUM.
13095 (font_sort_entites, font_list_entities, font_find_for_lface)
13096 (font_open_for_lface, font_open_by_name): Fix handling of font size.
13097 (Ffont_spec): Add QCname property that contains only unknown properties.
13098
13099 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
13100 include weight in listing pattern, instead check weight of each
13101 listed font. Don't include scalable in pattern. Pay attention to
13102 FONT_PIXEL_SIZE_QUANTUM.
13103
131042008-02-01 Kenichi Handa <handa@m17n.org>
13105
13106 * font.c (font_parse_fcname): Fix parsing of point-size.
13107 (font_unparse_fcname): Produce symbolic names for style properties.
13108 (font_list_entities): Handle float size correctly.
13109 (font_open_by_name): Prefer `normal' property values if the name
13110 doesn't specify them.
13111
13112 * fontset.c (Finternal_char_font): Use font_get_name, not
13113 Ffont_xlfd_name.
13114
13115 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
13116 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
13117 pattern. Don't force scalable.
13118
13119 * xftfont.c (xftfont_open): For generating a name, start from
13120 96-byte buffer.
13121
131222008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13123
13124 * frame.h (x_new_fontset2): Fix prototype.
13125
131262008-02-01 Kenichi Handa <handa@m17n.org>
13127
13128 * font.h (struct font_driver): Delete member parse_name.
13129 (font_match_p, font_get_spec, font_parse_fcname)
13130 (font_unparse_fcname): Extern them.
13131 (font_get_name): Adjust prototype.
13132
13133 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
13134 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
13135 (font_expand_wildcards): Fix handling ENCODING field. Avoid
13136 unnecessary checks for weight, slant, and swidth.
13137 (font_parse_fcname): New function.
13138 (font_unparse_fcname): New function.
13139 (font_parse_name): New function.
13140 (font_match_p): New function.
13141 (font_get_name): Change return value to Lisp string.
13142 (font_get_spec): New function.
13143 (Qunspecified, Qignore_defface): Don't extern them.
13144 (font_find_for_lface): Assume that LFACE is fully specified.
13145 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
13146 object, use it for FACE.
13147 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
13148 driver->parse_name.
13149 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
13150
13151 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
13152 prototype.
13153
13154 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
13155 argument F. Don't call Fnew_fontset. Instead, directly call
13156 make_fontset.
13157
13158 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
13159
13160 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
13161 of x_new_fontset2.
13162
13163 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
13164 (Qsans__serif): New variables.
13165 (ftfont_generic_family_list): New variable.
13166 (syms_of_ftfont): Initialize the above variables.
13167 (ftfont_pattern_entity): Delete argument NAME.
13168 (ftfont_list_generic_family): New function.
13169 (ftfont_parse_name): Delete this function.
13170 (ftfont_list): Try generic family only when FcFontList found no font.
13171 (ftfont_list_family): Fix args to FcObjectSetBuild.
13172
13173 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
13174 object in attrs[LFACE_FONT_INDEX].
13175 (set_lface_from_font_name): Cancel all changes for font-backend.
13176 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
13177 function.
13178 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
13179 font object in QCfont attribute.
13180 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
13181 (realize_default_face) [USE_FONT_BACKEND]: Call
13182 set_lface_from_font_and_fontset.
13183
13184 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
13185 "fixed", and signal error here if no suitable font was found.
13186
13187 * xfont.c (xfont_parse_name): Delete this function.
13188
13189 * xftfont.c (xftfont_open): Change coding style of error
13190 handling. Generate fontconfig's fontname pattern.
13191
13192 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
13193 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
13194
13195 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
13196 Both args FONTSET and FONT_OBJECT must be existing ones.
13197
131982008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13199
13200 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
13201
132022008-02-01 Kenichi Handa <handa@m17n.org>
13203
13204 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
13205
13206 * font.h (struct font): Fix typo.
13207
13208 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
13209 XLFD_XXX_INDEX.
13210 (enum xlfd_field_mask): New enum.
13211 (intern_font_field): Changed argument. Change caller. If digits
13212 are followed by non-digits, return a symbol.
13213 (font_expand_wildcards): New function.
13214 (font_parse_xlfd): Fix wildcard handling.
13215 (Ffont_spec): If :name is specified, reflect the info in the other
13216 properties.
13217
13218 * ftfont.c (ftfont_pattern_entity): Fix typo.
13219 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
13220 locale.
13221
132222008-02-01 Kenichi Handa <handa@m17n.org>
13223
13224 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
13225
13226 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
13227 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
13228 registry doesn't specify encoding part.
13229 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
13230 (font_open_by_name): At first try parsing the name.
13231 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
13232 as Lisp symbols.
13233
13234 * fontset.c (reorder_font_vector): Pay attention to the case that
13235 the 3rd element of font_def is nil.
13236 (fontset_font): For the default fontset, append one more fontset
13237 elements for a script-based font specification. Don't add script
13238 attribute on finding a font.
13239 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
13240 font name.
13241 (fontset_ascii_font): If a font can't be opened, return nil.
13242
13243 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
13244 (ftfont_pattern_entity): New function.
13245 (ftfont_get_cache): Assume that freetype_font_cache is already
13246 initialized.
13247 (ftfont_list): Handle the case that a file is specified in font
13248 name. Use ftfont_pattern_entity to generate entities.
13249 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
13250 (syms_of_ftfont): Initialize freetype_font_cache.
13251
13252 * xftfont.c (xftfont_open): Make the font name fontconfig's
13253 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
13254 (xftfont_close): Free font->font.name if not NULL.
13255
13256 * xfont.c (xfont_list): If script is specified for a font, return
13257 null_vector.
13258 (xfont_list_family): Declare argument type.
13259
13260 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
13261 name, set LFACE_FONT (lface) to nil.
13262
13263 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
13264 return Qnil.
13265
132662008-02-01 Kenichi Handa <handa@m17n.org>
13267
13268 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
13269 (standard_args): Add "-enable-font-backend".
13270
132712008-02-01 Kenichi Handa <handa@m17n.org>
13272
13273 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
13274 (struct xftdraw_list, xftdraw_list): Delete them.
13275 (register_xftdraw, check_xftdraw): Delete them.
13276 (xftfont_prepare_face): Don't call register_xftdraw.
13277 (xftfont_done_face): Don't call check_xftdraw.
13278 (xftfont_draw): Get background color only when with_background is
13279 nonzero.
13280
13281 * xfont.c (xfont_encode_char): Fix calculation of char2b.
13282
132832008-02-01 Kenichi Handa <handa@m17n.org>
13284
13285 These changes are for the new font handling codes.
13286
13287 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
13288 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
13289 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
13290 (FONTSRC, FONTOBJ): New variables.
13291 (obj): Add $(FONTOBJ).
13292 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
13293 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
13294 @LIBOTF_LIBS@.
13295 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
13296 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
13297
13298 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
13299
13300 * character.h (Vscript_representative_chars): Extern it.
13301
13302 * character.c (Vscript_representative_chars): New variable.
13303 (syms_of_character): Declare it as a Lisp variable.
13304
13305 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
13306 enable_font_backend is nonzero, accept the composition method
13307 COMPOSITION_WITH_GLYPH_STRING.
13308
13309 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
13310 enumeration COMPOSITION_WITH_GLYPH_STRING.
13311
13312 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
13313 members clip_x, clip_y, clip_width, and clip_height.
13314 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
13315
13316 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
13317 --enable-font-backend. Call syms_of_font.
13318
13319 * fns.c (assoc_no_quit): New function.
13320
13321 * fontset.h (FONT_INFO_FROM_FACE): New macro.
13322 (face_for_font, new_fontset_from_font)
13323 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
13324
13325 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
13326 (fontset_font, fontset_ascii, face_for_char)
13327 (make_fontset_for_ascii_face, Ffont_info)
13328 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
13329 is nonzero, use font-backend mechanism.
13330 (find_font_encoding): Make it non-static.
13331 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
13332 New functions.
13333
13334 * frame.h (struct frame): New members resx and resy.
13335 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
13336 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
13337
13338 * frame.c [USE_FONT_BACKEND]: Include "font.h".
13339 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
13340
13341 * lisp.h (assoc_no_quit): Extern it.
13342
13343 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
13344 Through out the file, use FONT_INFO_FROM_FACE instead of
13345 FONT_INFO_FROM_ID, use get_per_char_metric instead of
13346 rif->per_char_metric.
13347 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
13348 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
13349 (get_glyph_face_and_encoding, fill_composite_glyph_string)
13350 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13351 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
13352 nonzero, use font-backend mechanism.
13353 (get_per_char_metric): New function.
13354
13355 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
13356 (set_lface_from_font_name)
13357 (set_font_frame_param, free_realized_face)
13358 (prepare_face_for_display, clear_face_gcs)
13359 (Finternal_set_font_selection_order, realize_x_face)
13360 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
13361 font-backend mechanism.
13362 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
13363 (load_face_font) [USE_FONT_BACKEND]: Abort.
13364 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
13365 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
13366
13367 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
13368 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
13369 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
13370 nonzero, register all available font drivers. Call
13371 x_default_font_parameter for deciding a font.
13372 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
13373
13374 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
13375 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
13376 (x_set_glyph_string_clipping_exactly)
13377 (x_compute_glyph_string_overhangs)
13378 (x_draw_glyph_string_foreground)
13379 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
13380 (x_free_frame_resources) [USE_FONT_BACKEND]: If
13381 enable_font_backend is nonzero, use font-backend mechanism.
13382 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
13383
133842008-02-01 Kenichi Handa <handa@m17n.org>
13385
13386 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
13387 system_eol_type.
13388 (syms_of_coding): Initialize system_eol_type.
13389
13390 * process.c (Fset_process_coding_system): Inherit system's eol
13391 format if necessary.
13392
133932008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13394
13395 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
13396
133972008-02-01 Kenichi Handa <handa@m17n.org>
13398
13399 * coding.c (decode_eol): Pay attention to buffer relocation in
13400 del_range_2.
13401 (decode_coding): Call decode_eol before restoring undo_list.
13402
134032008-02-01 Kenichi Handa <handa@m17n.org>
13404
13405 * charset.c (Fdefine_charset_internal): Fix setting of
13406 emacs_mule_bytes.
13407
134082008-02-01 Kenichi Handa <handa@m17n.org>
13409
13410 * keyboard.c (read_char): Check if C is a character or not before
13411 looking up Vkeyboard_translate_table.
13412
134132008-02-01 Kenichi Handa <handa@m17n.org>
13414
13415 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
13416 condition to terminate the loop.
13417
134182008-02-01 Kenichi Handa <handa@m17n.org>
13419
13420 * coding.c (produce_composition): Compare charbuf[i] instead of
13421 args[i] against 0.
13422 (Fterminal_coding_system): Use EQ to compare Lisp objects.
13423
134242008-02-01 Kenichi Handa <handa@m17n.org>
13425
13426 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
13427 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
13428 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
13429 detect_coding.
13430 (emacs_mule_char): Handle old style (Emacs 20) component character
13431 of a composition.
13432 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
13433 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
13434 composition rule.
13435 (decode_coding_emacs_mule): Handle invalid bytes correctly.
13436
134372008-02-01 Kenichi Handa <handa@m17n.org>
13438
13439 * coding.c (encode_coding_ccl): Allocate destination dynamically
13440 when necessary.
13441
134422008-02-01 Kenichi Handa <handa@m17n.org>
13443
13444 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
13445 the loop. When quitted, show a proper error message.
13446
134472008-02-01 Kenichi Handa <handa@m17n.org>
13448
13449 * xterm.c (x_set_glyph_string_clipping_exactly): Set
13450 src->clip_head and src->clip_tail temporarily instead of src->hl.
13451
13452 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
13453 character sequence.
13454 (Fccl_execute_on_string): Use ASET, not XSET.
13455
134562008-02-01 Kenichi Handa <handa@m17n.org>
13457
13458 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
13459
134602008-02-01 Kenichi Handa <handa@m17n.org>
13461
13462 * coding.c (decode_coding): Fix the condition of terminating the
13463 decoding loop.
13464
134652008-02-01 Kenichi Handa <handa@m17n.org>
13466
13467 * data.c (Faset): On setting a character bigger than 255 in a
13468 unibyte string, signal an error instead of make the string multibyte.
13469
134702008-02-01 Kenichi Handa <handa@m17n.org>
13471
13472 * charset.c (map_charset_chars): Fix for ascii-compatible charset
13473 made by a mapping table.
13474
134752008-02-01 Kenichi Handa <handa@m17n.org>
13476
13477 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
13478 not.
13479 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
13480 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
13481
13482 * xterm.c (x_draw_composite_glyph_string_foreground): Check
13483 s->face is NULL or not.
13484
134852008-02-01 Kenichi Handa <handa@m17n.org>
13486
13487 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
13488 (x_draw_glyph_string): Fix drawing of right_overhang and
13489 left_overhang around/on cursor.
13490
13491 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
13492
134932008-02-01 Kenichi Handa <handa@m17n.org>
13494
13495 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
13496
134972008-02-01 Kenichi Handa <handa@m17n.org>
13498
13499 * coding.c (Fdefine_coding_system_internal)
13500 (Fdefine_coding_system_alias): Avoid a duplicated element in
13501 Vcoding_system_alist.
13502
135032008-02-01 Kenichi Handa <handa@m17n.org>
13504
13505 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
13506
13507 * coding.c (Qcoding_system_define_form): New variable.
13508 (syms_of_coding): Intern and staticpro it.
13509 (Fcoding_system_p): Check Qcoding_system_define_form.
13510 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
13511
13512 * coding.h (CODING_SYSTEM_P): If ID is not available, call
13513 Fcoding_system_p.
13514 (CHECK_CODING_SYSTEM): If ID is not available, call
13515 Fcheck_coding_system.
13516 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
13517 Try also Fcheck_coding_system.
13518
135192008-02-01 Kenichi Handa <handa@m17n.org>
13520
13521 * coding.c (code_conversion_restore): GCPRO arg.
13522
135232008-02-01 Kenichi Handa <handa@m17n.org>
13524
13525 * character.c (lisp_string_width): Check multibyteness of STRING.
13526
135272008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13528
13529 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
13530 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
13531 (decode_mac_font_name): Use decode_coding_c_string instead of
13532 decode_coding.
13533 (x_load_font): Initialize fontp->fontset to -1. Set
13534 fontp->encoding_type.
13535
135362008-02-01 Kenichi Handa <handa@m17n.org>
13537
13538 * search.c (search_buffer): Give up BM search on case-fold-search
13539 if one of a target character has a case-equivalence of different
13540 byte length even if that target charcter is an ASCII.
13541 (simple_search): Fix calculation of byte length of matched text.
13542 (boyer_moore): Fix handling of case-equivalent multibyte characters.
13543
135442008-02-01 Kenichi Handa <handa@m17n.org>
13545
13546 * coding.c (decode_coding): Fix handling of invalid bytes.
13547
135482008-02-01 Kenichi Handa <handa@m17n.org>
13549
13550 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
13551 Unicode characters.
13552
135532008-02-01 Kenichi Handa <handa@m17n.org>
13554
13555 * coding.c (encode_coding_object): If a pre-write-conversion
13556 function makes a new buffer, kill it.
13557
135582008-02-01 Kenichi Handa <handa@m17n.org>
13559
13560 * coding.c (QCascii_compatible_p): New variable.
13561 (syms_of_coding): Initialize it.
13562 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
13563 calling string_char.
13564 (record_conversion_result): Add `default:' case.
13565 (coding_charset_list): Delete unused variable `coding_type'.
13566 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
13567 property in the plist of the coding system.
13568 (Fcoding_system_put): Check QCascii_compatible_p.
13569
135702008-02-01 Miles Bader <miles@gnu.org>
13571
13572 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
13573 removed calculation of frame `f', as it's now used.
13574
135752008-02-01 Kenichi Handa <handa@m17n.org>
13576
13577 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
13578 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
13579 (UNIDATA): New variable.
13580 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
13581 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
13582 $(RUN_TEMACS) unconditionally.
13583
135842008-02-01 Kenichi Handa <handa@m17n.org>
13585
13586 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
13587 (admindir): New variable.
13588 ($(lispsource)international/charprop.el): New target.
13589
135902008-02-01 Miles Bader <miles@gnu.org>
13591
13592 * character.c (chars-in-region): Remove obsolete function.
13593 (syms_of_character): Remove its initialization.
13594
135952008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
13596
13597 * w32select.c (validate_coding_system)
13598 (setup_windows_coding_system): New functions.
13599 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
13600 setup_windows_coding_system.
13601 (setup_config, Fw32_get_clipboard_data): Use
13602 validate_coding_system.
13603 (Fx_selection_exists): Move call to setup_config to a place
13604 where signals are allowed.
13605
13606 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
13607 (Fcheck_coding_system): Add declarations.
13608
136092008-02-01 Kenichi Handa <handa@m17n.org>
13610
13611 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
13612
136132008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13614
13615 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
13616 string as the second argument for x_new_fontset.
13617
136182008-02-01 Kenichi Handa <handa@m17n.org>
13619
13620 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
13621 (encode_coding_object): Use safe_call instead of call2.
13622
136232008-02-01 Kenichi Handa <handa@m17n.org>
13624
13625 * fontset.c (Fset_fontset_font): Check family element of a given vector.
13626
13627 * Makefile.in (lisp): Include charprop.el.
13628
136292008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13630
13631 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
13632 Not sure if it's unnecessary.
13633
136342008-02-01 Steven Tamm <steventamm@mac.com>
13635
13636 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
13637 some possibly unnecessary fontset checking code that crashed
13638 when creating a new frame.
13639
136402008-02-01 Kenichi Handa <handa@m17n.org>
13641
13642 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
13643 lookup_face.
13644
13645 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
13646
13647 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
13648
136492008-02-01 Kenichi Handa <handa@m17n.org>
13650
13651 * coding.c: Cancel the change done in HEAD on 2008-02-01.
13652 (coding_charset_list): New function.
13653
13654 * coding.h (coding_charset_list): Extern it.
13655
136562008-02-01 Kenichi Handa <handa@m17n.org>
13657
13658 * fontset.c (Fset_fontset_font): Call find_font_encoding with
13659 concatenation of family and registry.
13660
136612008-02-01 Kenichi Handa <handa@m17n.org>
13662
13663 * character.h (BYTE8_STRING): Fix typo.
13664
13665 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
13666 string to multibyte (sync to HEAD).
13667
13668 * casefiddle.c (casify_region): Handle changes in byte-length
13669 using replace_range_2 (sync to HEAD).
13670
136712008-02-01 Andreas Schwab <schwab@suse.de>
13672
13673 * chartab.c (map_char_table): GCPRO table and arg.
13674
136752008-02-01 Kenichi Handa <handa@m17n.org>
13676
13677 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
13678 already at limit.
13679
136802008-02-01 Kenichi Handa <handa@m17n.org>
13681
13682 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
13683 instead of fast_c_string_match_ignore_case.
13684 (find_font_encoding): Change argument to Lisp_Object. Use
13685 fast_string_match_ignore_case instead of
13686 fast_c_string_match_ignore_case. Change caller.
13687
136882008-02-01 Kenichi Handa <handa@m17n.org>
13689
13690 * xdisp.c (get_next_display_element): In unibyte case, decide to
13691 display in octal form by checking a character by
13692 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
13693
13694 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
13695
13696 * character.c (unibyte_has_multibyte_table): New variable.
13697
13698 * character.h (unibyte_has_multibyte_table): Extern it.
13699 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
13700
137012008-02-01 Kenichi Handa <handa@m17n.org>
13702
13703 * coding.c (encode_coding_iso_2022): Fix handling of charset
13704 annotation.
13705
137062008-02-01 Kenichi Handa <handa@m17n.org>
13707
13708 * coding.c (setup_coding_system): If coding_system is nil, use
13709 Qundecided.
13710 (Fterminal_coding_system): Return nil if terminal coding system is
13711 `undecided'.
13712 (syms_of_coding): Define coding-system `undecided' here. Setup
13713 terminal_coding as `undecided'.
13714
137152008-02-01 Kenichi Handa <handa@m17n.org>
13716
13717 * xdisp.c (message_dolog, set_message_1): Call
13718 unibyte_char_to_multibyte with arg type int.
13719
13720 * lread.c (read1): Fix reading of a char-table.
13721
13722 * print.c (print_object): Include sub char-table in circularities
13723 detection.
13724
137252008-02-01 Kenichi Handa <handa@m17n.org>
13726
13727 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
13728 Append the found sequences in car of ARGS instead of prepending.
13729
137302008-02-01 Kenichi Handa <handa@m17n.org>
13731
13732 * fileio.c (report_file_error): Make a unibyte string from
13733 strerror (errorno).
13734 (Fsubstitute_in_file_name): Fix the arg to
13735 unibyte_char_to_multibyte. It is evaluated twice.
13736
137372008-02-01 Kenichi Handa <handa@m17n.org>
13738
13739 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
13740
137412008-02-01 Kenichi Handa <handa@m17n.org>
13742
13743 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
13744 BOM is not found.
13745 (detect_coding, detect_coding_system): Optimization for ISO-2022
13746 when no 8-bit data is found.
13747
137482008-02-01 Jason Rumney <jasonr@gnu.org>
13749
13750 * w32fns.c (x_to_w32_font): Update to use new coding struct.
13751
137522008-02-01 Kenichi Handa <handa@m17n.org>
13753
13754 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
13755 CHARS.
13756
137572008-02-01 Steven Tamm <steventamm@mac.com>
13758
13759 * macterm.c (mac_encode_char): Add charset argument and update
13760 to use encoding_type.
13761 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
13762 switch to pure fontset.
13763 (decode_mac_font_name): Temporarily remove decoding.
13764 (x_font_name_to_mac_font_name): Temporarily remove encoding.
13765 (x_load_font): Temporarily remove encoding.
13766
137672008-02-01 Kenichi Handa <handa@m17n.org>
13768
13769 * xfaces.c (Fface_font): If frame is not on a window system,
13770 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
13771 refer to face->font.
13772 (split_font_name_into_vector, build_font_name_from_vector)
13773 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
13774 when HAVE_WINDOW_SYSTEM is defined.
13775
137762008-02-01 Kenichi Handa <handa@m17n.org>
13777
13778 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
13779 (x_produce_glyphs): Fix setting of members of cmp in case
13780 cmp->glyph_len is zero.
13781
13782 * fontset.c (Fset_fontset_font): Fix docstring.
13783 (Ffontset_info): Make it backward compatible. New arg ALL.
13784
137852008-02-01 Kim F. Storm <storm@cua.dk>
13786
13787 * process.c (read_process_output): Grow decoding_buf when needed;
13788 this could cause a crash in allocate_string and compact_small_strings.
13789
137902008-02-01 Kenichi Handa <handa@m17n.org>
13791
13792 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
13793
137942008-02-01 Kenichi Handa <handa@m17n.org>
13795
13796 * coding.c (setup_coding_system): Set coding->common_flags
13797 correctly for raw-text.
13798 (consume_chars): On encoding unibyte text by raw-text, don't check
13799 multibyte form.
13800 (encode_coding): On encoding by raw-text, never use translation tables.
13801
13802 * fileio.c (e_write): Short cut for the case of no encoding.
13803
138042008-02-01 Kenichi Handa <handa@m17n.org>
13805
13806 * coding.c (detect_coding, detect_coding_system): Delete unused
13807 variables.
13808
138092008-02-01 Kenichi Handa <handa@m17n.org>
13810
13811 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
13812 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
13813
138142008-02-01 Kenichi Handa <handa@m17n.org>
13815
13816 * coding.c (Ffind_coding_systems_region_internal): Include
13817 raw-text and no-conversion in the result.
13818
138192008-02-01 Kenichi Handa <handa@m17n.org>
13820
13821 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
13822 (load_font_get_repertory): Delete unnecessary check of ENCODING of
13823 FONT_DEF.
13824 (font_def_arg, add_arg, from_arg, to_arg): New args.
13825 (set_fontset_font): Change argument.
13826 (Fset_fontset_font): Fix for the case that TARGET is a script
13827 name and charset name.
13828 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
13829
138302008-02-01 Kenichi Handa <handa@m17n.org>
13831
13832 * fontset.c (fontset_font): Rename from fontset_face. Change return
13833 value.
13834 (face_suitable_for_char_p, face_for_char): Adjust for the change
13835 of fontset_font.
13836 (make_fontset_for_ascii_face): Fix setting of the fontset element
13837 for ASCII.
13838 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
13839 to get a font name.
13840 (Ffontset_info): Adjust for the change of fontset_font.
13841
13842 * coding.c (emacs_mule_char): Check invalid code more rigidly.
13843
13844 * character.h (LEADING_CODE_LATIN_1_MIN)
13845 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
13846
138472008-02-01 Kenichi Handa <handa@m17n.org>
13848
13849 * editfns.c (check_translation): New function.
13850 (Ftranslate_region_internal): Handle M:N mapping.
13851
138522008-02-01 Kenichi Handa <handa@m17n.org>
13853
13854 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
13855
138562008-02-01 Kenichi Handa <handa@m17n.org>
13857
13858 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
13859 goto invalid_code.
13860 (decode_coding_iso_2022): Fix handling of invalid designation.
13861
13862 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
13863 after calling code_conversion_save.
13864
138652008-02-01 Kenichi Handa <handa@m17n.org>
13866
13867 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
13868
13869 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
13870
13871 * fontset.c: Include "intervals.h".
13872 (fontset_face): Fix comparing of Lisp_Objects.
13873 (free_face_fontset, new_fontset_from_font_name): Fix
13874 Lisp_Object/int mixup.
13875
13876 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
13877
13878 * coding.c: Add many prototypes for static functions.
13879 (get_translation_table): Allow max_lookup to be NULL.
13880 (decode_coding, Ffind_coding_systems_region_internal)
13881 (Funencodable_char_position, Fcheck_coding_systems_region): Call
13882 get_translation_table with max_lookup NULL.
13883
138842008-02-01 Kenichi Handa <handa@m17n.org>
13885
13886 * coding.c (get_translation_table): Declare it as Lisp_Object.
13887 (LOOKUP_TRANSLATION_TABLE): New macro.
13888 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
13889 instead of CHAR_TABLE_REF.
13890
138912008-02-01 Kenichi Handa <handa@m17n.org>
13892
13893 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
13894 annotation data format.
13895 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
13896 Change arguments FROM and TO to single argument NCHARS. Change caller.
13897 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
13898 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13899 (decode_coding_ccl, decode_coding_charset): Pay attention to
13900 coding->charbuf_used.
13901 (get_translation): New function.
13902 (produce_chars): New arguments translation_table and last_block.
13903 Translate characters here. Return number of carryover chars.
13904 Change caller.
13905 (produce_composition): New argument pos. Change caller.
13906 Adjust for the change of annotation data format.
13907 (produce_charset, produce_annotation): Likewise.
13908 (decode_coding, encode_coding): Don't call translate_chars.
13909 (consume_chars): New arg translation_table. Change caller.
13910 (translate_chars): Delete.
13911 (syms_of_coding): Make translation-table's number of extra slots 2.
13912
139132008-02-01 Kenichi Handa <handa@m17n.org>
13914
13915 * search.c (simple_search): Fix setting this_pos_byte in backward
13916 search.
13917
13918 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
13919 byte sequence.
13920 (detect_coding_ccl): Fix setting of the variable valids.
13921
139222008-02-01 Kenichi Handa <handa@m17n.org>
13923
13924 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
13925
13926 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
13927
13928 * editfns.c (Ftranslate_region_internal): Rename from
13929 Ftranslate_region. Accept a char-table in TABLE.
13930 (syms_of_editfns): Defsubr Stranslate_region_internal.
13931
13932 * xfaces.c (set_lface_from_font_name): If a font is specified for
13933 a frame, generate a fontset from the font.
13934 (build_scalable_font_name): If the scalable font is requested for
13935 a specific size, don't change that size.
13936 (try_font_list): Try a scalable font also in the case that a
13937 pattern string is specified.
13938
139392008-02-01 Kenichi Handa <handa@m17n.org>
13940
13941 * xfaces.c (Fface_font): New optional arg CHARACTER.
13942
139432008-02-01 Kenichi Handa <handa@m17n.org>
13944
13945 * charset.h (CHARSET_OFFSET): New macro.
13946
139472008-02-01 Kenichi Handa <handa@m17n.org>
13948
13949 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
13950
13951 * fontset.c (fontset_face): Handle the case that repertory is a
13952 char-table.
13953 (find_font_encoding): Return nil for unknown encoding.
13954 (Fset_fontset_font): Ignore a font of unknown encoding.
13955
139562008-02-01 Kenichi Handa <handa@m17n.org>
13957
13958 * keymap.c (describe_vector): Handle default value of a char table.
13959
13960 * fontset.c (fontset_face): Handle fallback fonts correctly.
13961 (Ffontset_info): Return infomation about fallback fonts.
13962
139632008-02-01 Kenichi Handa <handa@m17n.org>
13964
13965 * fontset.c (FONTSET_DEFAULT): New macro.
13966 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
13967 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
13968 the case that it is nil.
13969 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
13970 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
13971
13972 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
13973 subset or superset.
13974
139752008-02-01 Kenichi Handa <handa@m17n.org>
13976
13977 * emacs.c (main): Call init_charset after syms_of_XXX.
13978
13979 * charset.c (Vcharset_map_directory): Delete.
13980 (Vcharset_map_path): New variable.
13981 (load_charset_map_from_file): Use Vcharset_map_path instead.
13982 (init_charset): Initialize Vcharset_map_path.
13983 (syms_of_charset): Delete declaration of "charset-map-directory",
13984 add declaration of "charset-map-path".
13985
139862008-02-01 Kenichi Handa <handa@m17n.org>
13987
13988 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
13989 ASCII only string.
13990
13991 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
13992
13993 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
13994 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
13995
139962008-02-01 Kenichi Handa <handa@m17n.org>
13997
13998 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
13999
14000 * coding.c (QCmnemonic, QCdefalut_char)
14001 (QCdecode_translation_table, QCencode_translation_table)
14002 (QCpost_read_conversion, QCpre_write_conversion): New variables.
14003 (get_translation_table): Return a list of translation tables if
14004 necessary.
14005 (decode_coding): Call get_translation_table with ENCODEP 0.
14006 (char_encodable_p): If translation_table is non-nil, always call
14007 translate_char.
14008 (Fdefine_coding_system_internal): Accept list of translation
14009 tables as :encode-translation-table and :decode-translation-table.
14010 (Fcoding_system_put): New function.
14011 (syms_of_coding): Declare new symbols. Defsubr
14012 Scoding_system_put.
14013 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
14014 typically JISX0212.
14015
14016 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
14017 when the charset is superset type.
14018
14019 * character.c (translate_char): Accept list of translation tables.
14020
140212008-02-01 Kenichi Handa <handa@m17n.org>
14022
14023 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
14024 (CODING_ATTR_TRANS_TBL): New macro.
14025
14026 * coding.c (get_translation_table): New function.
14027 (translate_chars): Fix the bug of skipping annotation data.
14028 (decode_coding, encode_coding): Utilize get_translation_table.
14029 (char_encodable_p, Funencodable_char_position): Translate char if
14030 necessary.
14031 (Ffind_coding_systems_region_internal)
14032 (Fcheck_coding_systems_region): Setup translation table for encode
14033 in a coding system attribute vector in advance.
14034 (Fdefine_coding_system_internal): Allow a symbol as translation
14035 table. For shift-jis type coding system, allow 4th charset.
14036
140372008-02-01 Kenichi Handa <handa@m17n.org>
14038
14039 * coding.c (decode_coding_sjis): Check the first byte rigidly.
14040
14041 * xdisp.c (get_next_display_element): Pass -1 as POS to
14042 FACE_FOR_CHAR if displaying a C-string.
14043
140442008-02-01 Kenichi Handa <handa@m17n.org>
14045
14046 * composite.c (get_composition_id): Handle xoff and yoff in a
14047 composition rule.
14048
14049 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
14050 (struct composition): New member lbearing and rbearing.
14051
14052 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
14053 (x_get_glyph_overhangs): Handle a composition glyph.
14054 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
14055
14056 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
14057 composition glyph.
14058
140592008-02-01 Kenichi Handa <handa@m17n.org>
14060
14061 * print.c: Include charset.h.
14062 (Vprint_charset_text_property): New variable.
14063 (Qdefault): Extern it.
14064 (PRINT_STRING_NON_CHARSET_FOUND)
14065 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
14066 (print_check_string_result): New variable.
14067 (print_check_string_charset_prop): New function.
14068 (print_prune_charset_plist): New variable.
14069 (print_prune_string_charset): New function.
14070 (print_object): Call print_prune_string_charset if
14071 Vprint_charset_text_property is not t.
14072 (print_interval): Print nothing if interval->plist is nil.
14073 (syms_of_print): Declare Vprint_charset_text_property as a lisp
14074 variable. Init and staticpro print_prune_charset_plist.
14075
140762008-02-01 Kenichi Handa <handa@m17n.org>
14077
14078 * fontset.c (new_fontset_from_font_name): Use the specified font
14079 for all characters in the new fontset.
14080
14081 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14082 OBJECT args.
14083
14084 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
14085 OBJECT args for composition too.
14086
14087 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14088 OBJECT args.
14089
140902008-02-01 Kenichi Handa <handa@m17n.org>
14091
14092 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
14093
14094 * fontset.c (reorder_font_vector): Adjust for the change of
14095 FONT_DEF format.
14096 (fontset_face): New arg id. Change caller.
14097 (face_for_char): New args pos and object.
14098 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
14099 (fs_query_fontset): Check NAME by Fassoc too.
14100 (Fset_fontset_font): Allow non-XLFD font name.
14101 (Ffontset_info): Adjust for the change of FONT_DEF format.
14102
14103 * fontset.h (face_for_char): Adjust prototype.
14104
14105 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
14106 (append_space, extend_face_to_end_of_line)
14107 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14108 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
14109
14110 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
14111 POS and OBJECT args.
14112
14113 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
14114 POS and OBJECT args.
14115
141162008-02-01 Jason Rumney <jasonr@gnu.org>
14117
14118 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
14119 of GlobalAlloc'ed memory.
14120
141212008-02-01 Kenichi Handa <handa@m17n.org>
14122
14123 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
14124
14125 * charset.h (charset_table_used): Delete extern.
14126
14127 * charset.c (charset_table_used): Make it static.
14128 (map_charset_chars): Fix args to c_function with.
14129
14130 * chartab.c (map_sub_char_table_for_charset): Fix args to
14131 c_function with.
14132
14133 * coding.h (enum coding_result_code): Delete
14134 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
14135
14136 * coding.c (Qinsufficient_source, Qinconsistent_eol)
14137 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
14138 (Vlast_code_conversion_error): New variables.
14139 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
14140 (ONE_MORE_BYTE): Record error if any instead of signaling an
14141 error. If non-ASCII multibyte char is found, return the negative
14142 value of the code. All callers changed to check it.
14143 (ONE_MORE_BYTE_NO_CHECK): Likewise.
14144 (record_conversion_result): New function. Change all codes setting
14145 coding->result to call this function.
14146 (detect_coding_utf_8, decode_coding_utf_8)
14147 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
14148 Don't use the local variable incomplete.
14149 (emacs_mule_char): Change the second arg to `const'.
14150 (decode_coding): Fix of flushing out unprocessed data.
14151 (make_conversion_work_buffer): Fix making of a work buffer.
14152 (decode_coding_object): Return coding->dst_object.
14153
14154 * fontset.c (set_fontset_font): Fix args.
14155
14156 * lisp.h (CHARACTERBITS): Define as 22.
14157
14158 * process.c (send_process): Be sure to set coding->src_multibyte.
14159
14160 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
14161
141622008-02-01 Kenichi Handa <handa@m17n.org>
14163
14164 * xdisp.c (handle_auto_composed_prop): Give limit to
14165 Fnext_single_char_property_change.
14166
141672008-02-01 Kenichi Handa <handa@m17n.org>
14168
14169 * composite.c (syms_of_composite): Don't make the composition hash
14170 table weak.
14171
14172 * fontset.c (Fset_fontset_font): Fix docstring.
14173
14174 * lisp.h (detect_coding_system): Adjust prototype.
14175
14176 * fileio.c (kill_workbuf_unwind): Delete this function.
14177 (Finsert_file_contents): Adjust the call of detect_coding_system.
14178 Get conversion_buffer by code_conversion_save. Use the macro
14179 CODING_MAY_REQUIRE_DECODING. After decoding, update
14180 coding_system.
14181
14182 * coding.h (make_conversion_work_buffer): Delete extern.
14183 (code_conversion_save): Extern it.
14184
14185 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
14186 (CODING_GET_INFO): Delete argument eol_type. Change callers.
14187 (decode_coding_utf_8): Don't do eol converion.
14188 (detect_coding_utf_16): Check coding->src_chars, not
14189 coding->src_bytes. Add heuristics for those that have no signature.
14190 (decode_coding_emacs_mule, decode_coding_iso_2022)
14191 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14192 Don't do eol converion.
14193 (adjust_coding_eol_type): Return a new coding system.
14194 (detect_coding): Don't detect eol. Fix for utf-16 detection.
14195 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
14196 each change.
14197 (decode_coding): Pay attention to undo_list. Do eol conversion for
14198 all types of coding-systems (if necessary).
14199 (Vcode_conversion_work_buf_list): Delete it.
14200 (Vcode_conversion_reused_workbuf): Rename from
14201 Vcode_conversion_reused_work_buf.
14202 (Vcode_conversion_workbuf_name): New variable.
14203 (reused_workbuf_in_use): New variable.
14204 (make_conversion_work_buffer): Delete the arg DEPTH.
14205 (code_conversion_restore): Change argument to cons.
14206 (code_conversion_save): Delete the argument BUFFER. Change callers.
14207 (detect_coding_system): New argument src_chars. Change callers.
14208 Fix for utf-16 detection.
14209 (init_coding_once): Don't use ISO_carriage_return.
14210 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
14211 reused_workbuf_in_use.
14212
142132008-02-01 Kenichi Handa <handa@m17n.org>
14214
14215 * keymap.c (store_in_keymap): Pay attention to the case that idx
14216 is a cons specifying a character range.
14217
142182008-02-01 Kenichi Handa <handa@m17n.org>
14219
14220 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
14221 HANDLED_RECOMPUTE_PROPS.
14222
14223 * coding.c (Fdefine_coding_system_internal): Fix checking of
14224 ascii compatibility.
14225
142262008-02-01 Kenichi Handa <handa@m17n.org>
14227
14228 * charset.c (find_charsets_in_text): Delete unused locale variable.
14229 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
14230
14231 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
14232 Resync charset_list to Vemacs_mule_charset_list.
14233
14234 * keymap.c (store_in_keymap): Pay attention to the case that idx
14235 is a cons specifying a character range.
14236
142372008-02-01 Kenichi Handa <handa@m17n.org>
14238
14239 * composite.c (update_compositions): Bind inhibit-read-only, etc
14240 to t before calling remove-list-of-text-properties.
14241
14242 * print.c (print_object): Always print ASCII chars as is.
14243
142442008-02-01 Kenichi Handa <handa@m17n.org>
14245
14246 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
14247
14248 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
14249 is a char table.
14250
142512008-02-01 Kenichi Handa <handa@m17n.org>
14252
14253 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
14254
142552008-02-01 Kenichi Handa <handa@m17n.org>
14256
14257 * xfaces.c (set_lface_from_font_name): Fix for the case that
14258 FONTNAME is not fontset name.
14259
142602008-02-01 Kenichi Handa <handa@m17n.org>
14261
14262 * fns.c (base64_encode_1): Fix previous change.
14263
142642008-02-01 Kenichi Handa <handa@m17n.org>
14265
14266 * fontset.c (set_fontset_font): New function.
14267 (Fset_fontset_font): If a font is specified for a charset, use
14268 map_charset_chars to store the font spec in a fontset.
14269
142702008-02-01 Kenichi Handa <handa@m17n.org>
14271
14272 * fontset.c (fontset_face): Create a fallback fontset on demand.
14273 (make_fontset): Don't create a fallback fontset here.
14274 (free_face_fontset): Free a fallback fontset (if any) too.
14275 (n_auto_fontsets): Delete this variable.
14276 (auto_fontset_alist): New variable.
14277 (new_fontset_from_font_name): Check auto_fontset_alist.
14278 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
14279 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
14280 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
14281 Defsubr Sfontset_list_all.
14282
142832008-02-01 Kenichi Handa <handa@m17n.org>
14284
14285 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
14286
142872008-02-01 Kenichi Handa <handa@m17n.org>
14288
14289 * fontset.c (Fnew_fontset): Check NAME more rigidly.
14290
142912008-02-01 Kenichi Handa <handa@m17n.org>
14292
14293 * editfns.c (Fgoto_char): Fix docstring.
14294
142952008-02-01 Kenichi Handa <handa@m17n.org>
14296
14297 * insdel.c (insert_from_gap): Adjust intervals correctly.
14298
142992008-02-01 Jason Rumney <jasonr@gnu.org>
14300
14301 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
14302 (pfnGetFontUnicodeRanges): New dynamically loaded function.
14303 (w32_initialize): Try to load it.
14304 (x_get_font_repertory): Use it if available.
14305 (w32_encode_char): Add shortcut for unicode output.
14306
14307 * w32fns.c (w32_load_system_font): Default charset to -1.
14308 (x_to_w32_charset): Match all fonts for unicode.
14309 (w32_to_x_charset): New parameter matching. Don't return partial
14310 or wildcard charsets.
14311 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
14312 (w32_codepage_for_font): Return CP_UNICODE for unicode.
14313 (w32_to_x_font): Match charset to real charset.
14314 (enum_font_cb2): Always list unicode versions.
14315
14316 * makefile.w32-in (temacs): Increase EMHEAP.
14317
143182008-02-01 Jason Rumney <jasonr@gnu.org>
14319
14320 * w32term.c (w32_encode_char): New charset parameter.
14321 font_info.encoding becomes encoding_type.
14322 (x_get_font_repertory): New function. Warning: stub only!
14323 (x_new_font): Return quickly if font already set.
14324 (x_new_fontset): fontsetname parameter is Lisp_Object.
14325 Use new fs_query_fontset. Try new_fontset_from_font_name.
14326 Use fontset_name for return value.
14327
14328 * w32term.h: Declare x_get_font_repertory.
14329
14330 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
14331 place of find_charset_in_text. Use encode_coding_object in place
14332 of encode_coding.
14333 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
14334 decode_coding.
14335
14336 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
14337 of x_new_fontset.
14338 (w32_load_system_font): Initialize charset as unicode.
14339 font_info.encoding becomes encoding_type.
14340 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
14341 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
14342 (syms_of_w32fns): Set get_font_repertory_func.
14343
14344 * w32console.c: Include character.h. Use terminal_encode_buffer
14345 from term.c.
14346 (write_glyphs): Use new version of encode_terminal_code. Use
14347 encode_coding_object in place of encode_coding.
14348
14349 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
14350 encoding becomes encoding_type.
14351
14352 * term.c (terminal_encode_buffer): Make externally visible.
14353
14354 * makefile.w32-in: Add character.h dependancies.
14355 (character.o, chartab.o): New targets.
14356
143572008-02-01 Kenichi Handa <handa@m17n.org>
14358
14359 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
14360 CODING_ID_EOL_TYPE.
14361
143622008-02-01 Andreas Schwab <schwab@suse.de>
14363
14364 * coding.c (produce_chars): Revert last change.
14365
143662008-02-01 Kenichi Handa <handa@m17n.org>
14367
14368 * charset.h (charset_unicode): Extern it.
14369
14370 * charset.c (string_xstring_p): Check by (C >= 0x100).
14371 (find_charsets_in_text): Change format of the arc CHARSETS. New
14372 arg MULTIBYTE.
14373 (Ffind_charset_region, Ffind_charset_string): Adjust for the
14374 change of find_charsets_in_text.
14375 (Fsplit_char): Fix doc. Never return unknown.
14376
14377 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
14378
14379 * coding.c (Fdefine_coding_system_alias): Update
14380 Vcoding_system_list.
14381
14382 * fontset.c (load_font_get_repertory): Pay attention to the case
14383 that ENCODING of a font is specified by a char-table.
14384
14385 * xterm.c (x_get_font_repertory): Handle the case that the
14386 encoding of font is other than Unicode.
14387
143882008-02-01 Kenichi Handa <handa@m17n.org>
14389
14390 * term.c (encode_terminal_code): Don't handle glyph-table. Check
14391 if a character is encodable by the terminal coding system. If
14392 not, produces proper number of `?'s. Update
14393 terminal_encode_buffer and terminal_encode_buf_size if necessary.
14394 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
14395
143962008-02-01 Kenichi Handa <handa@m17n.org>
14397
14398 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
14399 variables.
14400 (encode_terminal_code): Change argument. Encode multiple
14401 characters at once. Store the result of encoding in
14402 terminal_encode_buffer.
14403 (write_glyphs, insert_glyphs): Adjust for the change of
14404 encode_terminal_code.
14405 (term_init): Initialize terminal_encode_buffer and
14406 terminal_encode_buf_size.
14407
14408 * coding.c (consume_chars): If coding->src_object is nil, don't
14409 check annotation.
14410
144112008-02-01 Kenichi Handa <handa@m17n.org>
14412
14413 * character.c (char_string): Use ASCII_CHAR_P instead of
14414 SINGLE_BYTE_CHAR_P.
14415
144162008-02-01 Kenichi Handa <handa@m17n.org>
14417
14418 * xdisp.c (handle_auto_composed_prop): Check if the last
14419 characters of auto-composed region is newly composed with the
14420 following characters.
14421 (handle_composition_prop): Fix checking of point being inside
14422 composition.
14423
144242008-02-01 Kenichi Handa <handa@m17n.org>
14425
14426 * fns.c (concat): Don't change multibyteness of the result by
14427 concatenating an 8-bit character.
14428
14429 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
14430 multibyteness of the result when newelt is an 8-bit character.
14431
144322008-02-01 Dave Love <fx@gnu.org>
14433
14434 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
14435 EMACS_INT.
14436
14437 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
14438
14439 * xfaces.c (face_numeric_value): Declare dim size_t.
14440 (Finternal_lisp_face_equal_p): Remove unused f.
14441
14442 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
14443 (MATRIX_ROW): Remove unused vars.
14444 (draw_glyphs, x_insert_glyphs, fast_find_position)
14445 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
14446 byte/char counts.
14447
14448 * regex.c (regex_compile): Remove unused var.
14449
14450 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14451
14452 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14453 (Faccessible_keymaps, where_is_internal): Remove unused vars.
14454
14455 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
14456
14457 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
14458
14459 * fileio.c (Fwrite_region): Remove unused var.
14460
14461 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
14462 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
14463
14464 * composite.c (Fremove_list_of_text_properties): Declare.
14465
14466 * coding.c (inhibit_pre_post_conversion): Remove (unused).
14467 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
14468 (coding_inherit_eol_type): Remove unused attrs.
14469 (detect_coding): Cast arg of detect_eol.
14470
14471 * charset.c (syms_of_charset): Remove unused var p.
14472 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
14473 byte/char counts.
14474
14475 * casetab.c (set_case_table): Remove unused var.
14476
14477 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
14478 unused vars.
14479
144802008-02-01 Dave Love <fx@gnu.org>
14481
14482 * xterm.c (x_bitmap_mask): Declare.
14483
144842008-02-01 Dave Love <fx@gnu.org>
14485
14486 * xterm.c (x_term_init): Fix type error.
14487
14488 * lisp.h: Add Funibyte_char_to_multibyte.
14489
14490 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
14491 (Fset_coding_system_priority): Doc fix.
14492
14493 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
14494
14495 * indent.c (check_composition): Make start and end EMACS_INT.
14496
14497 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
14498
14499 * xdisp.c (handle_composition_prop, check_point_in_composition):
14500 Make buffer positions EMACS_INT.
14501
14502 * composite.c (find_composition, run_composition_function)
14503 (update_compositions, Ffind_composition_internal): Make buffer
14504 positions EMACS_INT.
14505
14506 * composite.h (find_composition, update_compositions): Make
14507 position args EMACS_INT.
14508
14509 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
14510
14511 * intervals.c (get_property_and_range):
14512 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
14513
14514 * unexalpha.c: Don't include varargs.h.
14515
145162008-02-01 Dave Love <fx@gnu.org>
14517
14518 * coding.h (ENCODE_UTF_8): New.
14519
14520 * Makefile.in (gtkutil.o): Depend on coding.h.
14521
14522 * coding.c (Fset_coding_system_priority): Doc fix.
14523
145242008-02-01 Kenichi Handa <handa@m17n.org>
14525
14526 * fileio.c (Finsert_file_contents): Call setup_coding_system in
14527 the case of auto saving.
14528
145292008-02-01 Andreas Schwab <schwab@suse.de>
14530
14531 * chartab.c (map_char_table, map_char_table_for_charset): Protect
14532 `range' from GC.
14533
145342008-02-01 Kenichi Handa <handa@m17n.org>
14535
14536 * coding.c (decode_coding_sjis): Check bytes more rigidly.
14537
145382008-02-01 Kenichi Handa <handa@m17n.org>
14539
14540 * fileio.c (choose_write_coding_system): Return a decided coding system.
14541 (Fwrite_region): Set Vlast_coding_system_used to the return value
14542 of choose_write_coding_system.
14543
145442008-02-01 Kenichi Handa <handa@m17n.org>
14545
14546 * charset.c (Fset_charset_priority): Pay attention to duplicated
14547 arguments.
14548
14549 * coding.c (QCcategory): New variable.
14550 (syms_of_coding): Defsym it. Set all elements of
14551 Vcoding_category_table and their symbol values.
14552 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
14553 coding-category-XXX, and coding-category-list.
14554 (Fdefine_coding_system_internal): Add category in the plist.
14555
145562008-02-01 Kenichi Handa <handa@m17n.org>
14557
14558 * callproc.c (Fcall_process): Handle carryover correctly.
14559
14560 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
14561 (raw_text_coding_system): Check NILP (coding_system).
14562 (coding_inherit_eol_type): Check NILP (coding_system) and
14563 NILP (parent).
14564 (consume_chars): Fix for the case of raw-text.
14565
14566 * process.c (read_process_output): Handle carryover correctly.
14567
145682008-02-01 Dave Love <fx@gnu.org>
14569
14570 * regex.c (re_search_2): Fix last change.
14571
145722008-02-01 Kenichi Handa <handa@m17n.org>
14573
14574 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
14575 target_multibyte. Even in a unibyte case, return a converted
14576 multibyte char.
14577 (GET_CHAR_AFTER): New macro.
14578 (PATFETCH): Translate via multibyte char.
14579 (HANDLE_UNIBYTE_RANGE): Delete this macro.
14580 (SETUP_MULTIBYTE_RANGE): New macro.
14581 (regex_compile): Setup compiled code so that its multibyteness
14582 matches that of a target. Fix the handling of "[X-YZ]" using
14583 SETUP_MULTIBYTE_RANGE.
14584 (analyse_first) <charset>: For filling fastmap for all multibyte
14585 characters, don't check by BASE_LEADING_CODE_P.
14586 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
14587 the same as RE_MULTIBYTE_P (bufp) now.
14588 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
14589 (TARGET_CHAR_AND_LENGTH): Delete this macro.
14590 (TRANSLATE_VIA_MULTIBYTE): New macro.
14591 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
14592 It is the same as RE_MULTIBYTE_P (bufp) now.
14593 <exactn>: Translate via multibyte.
14594 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
14595 translate it.
14596 <charset, charset_not>: Fetch a character by
14597 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
14598 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
14599 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
14600 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
14601 by GET_CHAR_AFTER.
14602 (bcmp_translate): Likewise.
14603
14604 * search.c (compile_pattern): Check the member target_multibyte,
14605 not the member multibyte of buf.
14606
14607 * lread.c (read1): While reading a string, set force_singlebyte
14608 and force_multibyte correctly.
14609
14610 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
14611 up of unibyte_to_multibyte_table.
14612
146132008-02-01 Kenichi Handa <handa@m17n.org>
14614
14615 * coding.c (setup_coding_system): If coding has
14616 post-read-conversion or pre-write-conversion, set
14617 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
14618 respectively.
14619 (decode_coding_gap): Run post-read-conversion if any.
14620
14621 * fileio.c (Finsert_file_contents): Even if we read into a
14622 unibyte buffer, check if we must decode the result or not.
14623
146242008-02-01 Kenichi Handa <handa@m17n.org>
14625
14626 * coding.c (make_conversion_work_buffer): Change the work buffer
14627 name to the same one as that of Emacs 21.
14628
146292008-02-01 Kenichi Handa <handa@m17n.org>
14630
14631 * coding.h (make_conversion_work_buffer): Adjust prototype.
14632 (code_conversion_restore): Don't extern it.
14633
14634 * coding.c (detected_mask): Delete unused variable.
14635 (decode_coding_iso_2022): Pay attention to the byte sequence of
14636 CTEXT extended segment, and retain those bytes as is.
14637 (decode_coding_ccl): Delete unused variable `valids'.
14638 (setup_coding_system): Delete unused variable `category'.
14639 (consume_chars): Delete unused variable `category'. Make it work
14640 for non-multibyte case.
14641 (make_conversion_work_buffer): Change argument.
14642 (saved_coding): Delete unused variable.
14643 (code_conversion_restore): Don't check saved_coding->destination.
14644 (code_conversion_save): New function.
14645 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
14646 instead of record_unwind_protect.
14647 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
14648 (detect_coding_system): Delete unused variable `mask'.
14649 (Fdefine_coding_system_internal): Delete unused variable id.
14650
14651 * fileio.c (kill_workbuf_unwind): New function.
14652 (Finsert_file_contents): On replacing, call
14653 make_conversion_work_buffer with correct args, and call
14654 record_unwind_protect with the first arg kill_workbuf_unwind.
14655
14656 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
14657
146582008-02-01 Kenichi Handa <handa@m17n.org>
14659
14660 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
14661 (fontset_add): Fix for the case that TO is less than TO1.
14662 (Ffontset_info): Don't use fallback fontset on checking the
14663 default fontset.
14664 (dump_fontset): New function for debugging.
14665
14666 * coding.c (Fdefine_coding_system_internal): Fix for the case that
14667 coding_type is Qcharset.
14668
146692008-02-01 Kenichi Handa <handa@m17n.org>
14670
14671 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
14672 (map_char_table): Don't inherit the value from the parent on
14673 initializing VAL. Adjust for the above change.
14674
146752008-02-01 Kenichi Handa <handa@m17n.org>
14676
14677 * coding.c (Qsignature, Qendian): Delete these variables.
14678 (syms_of_coding): Don't initialize them.
14679 (CATEGORY_MASK_UTF_16_AUTO): New macro.
14680 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
14681 detect_info->found.
14682 (decode_coding_utf_16): Don't detect BOM here.
14683 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
14684 is NOT utf_16_without_bom.
14685 (setup_coding_system): For a coding system of type utf-16, check
14686 if the attribute :endian is Qbig or not (not nil or not), and set
14687 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
14688 (detect_coding): If coding type is utf-16 and BOM detection is
14689 required, detect it.
14690 (Fdefine_coding_system_internal): For a coding system of type
14691 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
14692
146932008-02-01 Kenichi Handa <handa@m17n.org>
14694
14695 * coding.c (coding_set_source): Fix for the case that the current
14696 buffer is different from coding->src_object.
14697 (decode_coding_object): Don't use the conversion work buffer if
14698 DST_OBJECT is a buffer.
14699
147002008-02-01 Dave Love <fx@gnu.org>
14701
14702 * lread.c (read_emacs_mule_char) [len==2]: Index
14703 emacs_mule_charset correctly.
14704
147052008-02-01 Dave Love <fx@gnu.org>
14706
14707 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
14708 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
14709 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
14710 treated specially.)
14711 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
14712 (detected_mask): Remove Big5 bits.
14713
147142008-02-01 Kenichi Handa <handa@m17n.org>
14715
14716 The following changes are to make the font rescaling facility
14717 compatible with Emacs 21.
14718
14719 * xfaces.c (Vface_font_rescale_alist): Rename from
14720 Vface_resizing_fonts.
14721 (struct font_name): Rename member resizing_ratio to rescale_ratio.
14722 (font_rescale_ratio): Rename from font_resizing_ratio.
14723 (split_font_name): Set font->rescale_ratio.
14724 (better_font_p): Pay attention to font->rescale_ratio.
14725 (build_scalable_font_name): Likewise. Change RESX, and RESY
14726 fields.
14727 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14728
147292008-02-01 Kenichi Handa <handa@m17n.org>
14730
14731 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
14732 (Qutf_16_le): Remove these variables.
14733 (syms_of_coding): Don't DEFSYM them.
14734 (decode_coding_utf_16): Fix handling of BOM.
14735 (encode_coding_utf_16): Fix handling of BOM.
14736
147372008-02-01 Kenichi Handa <handa@m17n.org>
14738
14739 * fileio.c (Finsert_file_contents): On replacing, before decoding
14740 the file into the work buffer, set point of the work buffer to the end.
14741
147422008-02-01 Dave Love <fx@gnu.org>
14743
14744 * coding.c (Fcheck_coding_systems_region): Fix type errors.
14745
147462008-02-01 Dave Love <fx@gnu.org>
14747
14748 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14749 and fix C types.
14750
147512008-02-01 Kenichi Handa <handa@m17n.org>
14752
14753 * xdisp.c (SKIP_GLYPHS): New macro.
14754 (set_cursor_from_row): Pay attention to string display properties.
14755
14756 * category.c (copy_category_entry): Fix for the case that RANGE
14757 is an integer.
14758
14759 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
14760
14761 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
14762
147632008-02-01 Kenichi Handa <handa@m17n.org>
14764
14765 * charset.c (Fcharset_id_internal): New function.
14766 (syms_of_charset): Defsubr it.
14767
14768 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
14769 with the last arg charset_list acquired from coding.
14770 (Fdefine_coding_system_internal): For ccl-based coding system, fix
14771 the attribute coding_attr_ccl_valids.
14772
14773 * coding.h (enum define_coding_ccl_arg_index): Set the first
14774 member coding_arg_ccl_decoder to coding_arg_max.
14775
14776 * ccl.h (ccl_driver): Adjust prototype.
14777
14778 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
14779 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 14780 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
14781 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
14782 last arg Qnil.
14783
147842008-02-01 Kenichi Handa <handa@m17n.org>
14785
14786 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
14787 call encode_char.
14788
14789 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
14790
147912008-02-01 Dave Love <fx@gnu.org>
14792
14793 * composite.c (syms_of_composite): Make composition_hash_table weak.
14794
147952008-02-01 Kenichi Handa <handa@m17n.org>
14796
14797 * dispextern.h (check_face_attributes, generate_ascii_font_name)
14798 (font_name_registry): Don't extern them.
14799 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
14800
14801 * fontset.h (Qfontset): Don't extern it.
14802 (new_fontset_from_font_name): Extern it.
14803
14804 * fontset.c: Give 8 extra slots to fontset objects.
14805 (Qfontset_info): New variable.
14806 (syms_of_fontset): Defsym it.
14807 (FONTSET_FALLBACK): New macro.
14808 (fontset_face): Try also the default fontset.
14809 (make_fontset): Realize a fallback fontset from the default fontset.
14810 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
14811 using split_font_name_into_vector and build_font_name_from_vector.
14812 (Fset_fontset_font): Access the elements of font_spec by enum
14813 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
14814 name by using split_font_name_into_vector.
14815 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
14816 generate a proper font name from the fontset name. Update
14817 Vfontset_alias_alist.
14818 (n_auto_fontsets): New variable.
14819 (new_fontset_from_font_name): New function.
14820 (Ffont_info): Store the information about fonts generated from the
14821 default fontset in the first extra slot of the returned char-table.
14822
14823 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
14824 (font_name_registry): Delete function.
14825 (split_font_name_into_vector): New function.
14826 (build_font_name_from_vector): New function.
14827 (font_list): The argument REGISTRY is now a list of registry names.
14828 (choose_face_font): If we are choosing an ASCII font, and ATTRS
14829 specifies an explicit font name, return the name as is. Make a
14830 list of registy names.
14831
14832 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
14833 of x_new_fontset.
14834 (Fx_create_frame): Don't call x_new_fontset here. Just use
14835 x_list_fonts to check the existence of fonts.
14836
14837 * xterm.h (x_new_fontset): Adjust prototype.
14838
14839 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
14840 string. Use new_fontset_from_font_name to create a fontset from a
14841 font name.
14842
148432008-02-01 Kenichi Handa <handa@m17n.org>
14844
14845 * syntax.c (Vfind_word_boundary_function_table): New name for
14846 Vnext_word_boundary_function_table.
14847 (find-word-boundary-function-table): New name for
14848 next-word-boundary-function-table.
14849
148502008-02-01 Dave Love <fx@gnu.org>
14851
14852 * Makefile.in: Fix some dependencies.
14853
14854 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
14855 set it to nil before returning.
14856
14857 * composite.c (update_compositions): Fix type error.
14858
14859 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
14860
148612008-02-01 Kenichi Handa <handa@m17n.org>
14862
14863 * xterm.c (x_new_font): Optimize for the case that the font is
14864 already set for the frame.
14865
148662008-02-01 Kenichi Handa <handa@m17n.org>
14867
14868 * chartab.c (char_table_ascii): Check if the char table contents
14869 is sub-char-table or not.
14870 (char_table_set, char_table_set_range): Fix argument to
14871 char_table_ascii.
14872
14873 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
14874 (detect_coding_utf_8, detect_coding_utf_16)
14875 (detect_coding_emacs_mule, detect_coding_iso_2022)
14876 (detect_coding_sjis, detect_coding_big5)
14877 (detect_coding_ccl, detect_coding_charset): Change argument MASK
14878 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
14879 sequence is valid in this coding system. Change callers.
14880 (MAX_ANNOTATION_LENGTH): New macro.
14881 (ADD_ANNOTATION_DATA): New macro.
14882 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
14883 ADD_ANNOTATION_DATA. Change the format of annotation data.
14884 (ADD_CHARSET_DATA): New macro.
14885 (emacs_mule_char): New argument ID. Change callers.
14886 (decode_coding_emacs_mule, decode_coding_iso_2022)
14887 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14888 Produce charset annotation data in coding->charbuf.
14889 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
14890 to charset annotation data in coding->charbuf.
14891 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
14892 coding->common_flags if the coding system is iso-2022 based and
14893 uses designation.
14894 (produce_composition): Adjust for the new annotation data format.
14895 (produce_charset): New function.
14896 (produce_annotation): Handle charset annotation.
14897 (handle_composition_annotation, handle_charset_annotation): New
14898 functions.
14899 (consume_chars): Handle charset annotation. Utilize the above two
14900 functions.
14901 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
14902 buffer, get the deleted text as a string and set
14903 coding->src_object to that string.
14904 (detect_coding, detect_coding_system): Use the new struct
14905 coding_detection_info.
14906
14907 * coding.h (struct coding_detection_info): New structure.
14908 (struct coding_system): Adjust prototype of the member `detector'.
14909 (CODING_ANNOTATE_CHARSET_MASK): New macro.
14910
149112008-02-01 Kenichi Handa <handa@m17n.org>
14912
14913 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
14914
149152008-02-01 Dave Love <fx@gnu.org>
14916
14917 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
14918 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
14919 to new local and nullify apropos_accumulate before returning.
14920 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
14921
149222008-02-01 Kenichi Handa <handa@m17n.org>
14923
14924 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
14925 correctly.
e3eea1fc 14926
aac0c6e3
MR
149272008-02-01 Dave Love <fx@gnu.org>
14928
14929 * fns.c (Flanginfo): Call synchronize_system_time_locale.
14930
149312008-02-01 Kenichi Handa <handa@m17n.org>
14932
14933 The following changes are to make character composition happen
14934 automatically on displaying.
14935
14936 * Makefile.in (lisp, shortlisp): Add composite.elc.
14937
14938 * composite.h (Qauto_composed, Vauto_composition_function)
14939 (Qauto_composition_function): Extern them.
14940
14941 * composite.c (Vcomposition_function_table)
14942 (Qcomposition_function_table): Delete variables.
14943 (Qauto_composed, Vauto_composition_function)
14944 (Qauto_composition_function): New variables.
14945 (run_composition_function): Don't call
14946 compose-chars-after-function.
14947 (update_compositions): Clear `auto-composed' text property.
14948 (compose_chars_in_text): Delete this function.
14949 (syms_of_composite): Staticpro Qauto_composed and
14950 Qauto_composition_function. Declare Vauto_composition_function as
14951 a Lisp variable.
14952
14953 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
14954
14955 * xdisp.c (it_props): Add an entry for Qauto_composed.
14956 (handle_auto_composed_prop): New function.
14957
14958 * xselect.c (selection_data_to_lisp_data): Don't call
14959 compose_chars_in_text.
14960
149612008-02-01 Dave Love <fx@gnu.org>
14962
14963 * keyboard.c (read_char): Modify checking around use of
14964 Vkeyboard_translate_table.
14965
14966 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14967 and fix C types.
14968
149692008-02-01 Kenichi Handa <handa@m17n.org>
14970
14971 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
14972 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14973 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
14974 the case that the last byte is '\r' correctly.
14975 (decode_coding): Flush out the unprocessed data correctly.
14976 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
14977
149782008-02-01 Dave Love <fx@gnu.org>
14979
14980 * xterm.c (XTread_socket): Fix changes for defined keysyms.
14981 Add XK_ISO... case.
14982 (xaw_scroll_callback): Revert last change.
14983
149842008-02-01 Kenichi Handa <handa@m17n.org>
14985
14986 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
14987
149882008-02-01 Kenichi Handa <handa@m17n.org>
14989
14990 * xfaces.c (Vface_resizing_fonts): New variable.
14991 (struct font_name): New member `resizing_ratio'.
14992 (font_resizing_ratio): New function.
14993 (split_font_name): Set font->resizing_ratio.
14994 (better_font_p): Pay attention to font->resizing_ratio.
14995 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
14996 RESX, and RESY fields.
14997 (try_alternative_families): Try scalable fonts if
14998 Vscalable_fonts_allowed is not Qt.
14999 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
15000
150012008-02-01 Dave Love <fx@gnu.org>
15002
15003 * xterm.c (xaw_scroll_callback): Cast correctly.
15004
150052008-02-01 Dave Love <fx@gnu.org>
15006
15007 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
15008 (lispy_kana_keys): Comment out.
15009 (make_lispy_event) [XK_kana_A]: Comment out.
15010
15011 * xterm.c (xaw_scroll_callback): Cast call_data.
15012 (XTread_socket): Deal with ASCII keysyms.
15013 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
15014
150152008-02-01 Dave Love <fx@gnu.org>
15016
15017 * xterm.c (Vx_keysym_table): New.
15018 (syms_of_xterm): Initialize it.
15019 (XTread_socket): Use it.
15020 From head: Eliminate incorrect optimization that tried to avoid
15021 decoding the output of X*LookupString.
15022 (x_get_font_repertory): Delete charset declaration.
15023
150242008-02-01 Kenichi Handa <handa@m17n.org>
15025
15026 * coding.c (detect_coding_charset): If only ASCII bytes are found,
15027 return 0.
15028 (Fdefine_coding_system_internal): Setup
15029 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
15030
150312008-02-01 Dave Love <fx@gnu.org>
15032
15033 * coding.c (Fcheck_coding_system): Doc fix.
15034
15035 * editfns.c (Finsert_byte): Return a proper value.
15036
150372008-02-01 Kenichi Handa <handa@m17n.org>
15038
15039 * coding.c (decode_coding): Fix args to translate_chars. Pay
15040 attention to Vstandard_translation_table_for_decode.
15041 (encode_coding): Fix args to translate_chars. Pay attention to
15042 Vstandard_translation_table_for_encode.
15043
15044 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
15045 SINGLE_BYTE_CHAR_P.
15046
15047 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
15048 not by SINGLE_BYTE_CHAR_P.
15049
15050 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
15051 SINGLE_BYTE_CHAR_P.
15052
15053 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
15054 SINGLE_BYTE_CHAR_P.
15055
15056 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
15057 by SINGLE_BYTE_CHAR_P.
15058
15059 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
15060 SINGLE_BYTE_CHAR_P.
15061
150622008-02-01 Dave Love <fx@gnu.org>
15063
15064 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
15065
150662008-02-01 Dave Love <fx@gnu.org>
15067
15068 * fns.c (Flanginfo): Fix typo.
15069
15070 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
15071
150722008-02-01 Kenichi Handa <handa@m17n.org>
15073
15074 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
15075 (detect_coding_emacs_mule, detect_coding_iso_2022)
15076 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
15077 incomplete byte sequence. Don't update *mask when correctly detected.
15078 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
15079 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
15080 (detect_coding, detect_coding_system): Adjust for the changes above.
15081
150822008-02-01 Kenichi Handa <handa@m17n.org>
15083
15084 * character.c (char_string): Rename from
15085 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
15086 (string_char): Rename from string_char.
15087
15088 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
15089 if C is greater than MAX_3_BYTE_CHAR.
15090 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
15091 string_char instead of string_char_with_unification.
15092
150932008-02-01 Dave Love <fx@gnu.org>
15094
15095 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
15096
150972008-02-01 Kenichi Handa <handa@m17n.org>
15098
15099 * keymap.c (push_key_description): Pay attention to force_multibyte.
15100
15101 * regex.c (re_search_2): Fix for the case of unibyte buffer.
15102
151032008-02-01 Dave Love <fx@gnu.org>
15104
15105 * charset.c (define_charset_internal): Rename `supprementary'.
15106
15107 * Makefile.in (lisp, shortlisp): Remove latin-N.
15108
151092008-02-01 Dave Love <fx@gnu.org>
15110
15111 * xfns.c (x_window, x_window): Use use_xim.
15112
15113 * xterm.c (use_xim): Initialize.
15114 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
15115 (x_term_init): Maybe set use_xim.
15116
15117 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
15118
151192008-02-01 Kenichi Handa <handa@m17n.org>
15120
15121 * search.c (search_buffer): Fix case-fold-search of multibyte
15122 characters.
15123 (boyer_moore): Rename the last argument to char_high_bits.
15124
151252008-02-01 Kenichi Handa <handa@m17n.org>
15126
15127 * xdisp.c (display_string): Fix for the case of zero width glyph.
15128
15129 * xfns.c (x_set_font): Change the error message of the case that
15130 x_new_fontset returns Qt.
15131
15132 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
15133 (Finternal_set_lisp_face_attribute): Use signal_error for the
15134 error of invalid fontset.
15135
15136 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
15137 fontset, return Qt.
15138
151392008-02-01 Dave Love <fx@gnu.org>
15140
15141 * unexelf.c (unexec): Make .got handling not SGI-specific.
15142
15143 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
15144
15145 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
15146
15147 * keyboard.c (read_key_sequence): Fix type error.
15148
15149 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
15150 type error.
15151
15152 * fontset.c (fontset_add): Return Lisp_Object.
15153
151542008-02-01 Dave Love <fx@gnu.org>
15155
15156 * charset.h (charset_ordered_list_tick): Declare extern.
15157
151582008-02-01 Kenichi Handa <handa@m17n.org>
15159
15160 The following changes (and some of 2008-02-01 changes of mine) are
15161 for handling syntax, category, and case conversion for unibyte
15162 characters by converting them to multibyte on the fly. With these
15163 changes, we don't have to setup syntax and case tables for unibyte
15164 characters in each language environment.
15165
15166 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
15167 multibyte if necessary.
15168
15169 * bytecode.c (Fbyte_code): Likewise.
15170
15171 * character.h (LEADING_CODE_LATIN_1_MIN)
15172 (LEADING_CODE_LATIN_1_MAX): New macros.
15173 (unibyte_to_multibyte_table): Extern it.
15174 (unibyte_char_to_multibyte): New macro.
15175 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
15176 (CHAR_LEADING_CODE): New macro.
15177 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
15178
15179 * character.c (unibyte_to_multibyte_table): New variable.
15180 (unibyte_char_to_multibyte): Move to character.h and define as macro.
15181 (multibyte_char_to_unibyte): If C is an eight-bit character,
15182 convert it to the corresponding byte value.
15183
15184 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
15185 not 1, signals an error. Update the elements of
15186 unibyte_to_multibyte_table.
15187 (init_charset_once): Initialize unibyte_to_multibyte_table.
15188 (syms_of_charset): Define the charset `iso-8859-1'.
15189
15190 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
15191 as is without converting it to unibyte. In a unibyte buffer,
15192 convert C to multibyte before checking the syntax.
15193
15194 * lisp.h (unibyte_char_to_multibyte): Delete extern.
15195
15196 * minibuf.c (Fminibuffer_complete_word): Use the macro
15197 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
15198
15199 * regex.h (struct re_pattern_buffer): New member target_multibyte.
15200
15201 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
15202 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
15203 that is zero, convert an eight-bit char to multibyte.
15204 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
15205 non-emacs case.
15206 (PATFETCH): Convert an eight-bit char to multibyte.
15207 (HANDLE_UNIBYTE_RANGE): New macro.
15208 (regex_compile): Setup the compiled pattern for multibyte chars
15209 even if the given regex string is unibyte. Use PATFETCH_RAW
15210 instead of PATFETCH in many places. To handle `charset'
15211 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
15212 only for ASCII chars.
15213 (analyse_first) <exactn>: Simplify because the compiled pattern
15214 is multibyte.
15215 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
15216 <charset>: Use CHAR_LEADING_CODE to get leading codes.
15217 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
15218 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
15219 multibyte always 1.
15220 (re_search_2): In emacs, set the locale variable multibyte to 1,
15221 otherwise to 0. New local variable target_multibyte. Check it
15222 to decide the multibyteness of STR1 and STR2. If
15223 target_multibyte is zero, convert unibyte chars to multibyte
15224 before translating and checking fastmap.
15225 (TARGET_CHAR_AND_LENGTH): New macro.
15226 (re_match_2_internal): In emacs, set the locale variable multibyte
15227 to 1, otherwise to 0. New local variable target_multibyte. Check
15228 it to decide the multibyteness of STR1 and STR2. Use
15229 TARGET_CHAR_AND_LENGTH to fetch a character from D.
15230 <charset, charset_not>: If multibyte is nonzero, check fastmap
15231 only for ASCII chars. Call bcmp_translate with
15232 target_multibyte, not with multibyte.
15233 <begline>: Declare the local variable C as `unsigned'.
15234 (bcmp_translate): Change the last arg name to target_multibyte.
15235
15236 * search.c (compile_pattern_1): Don't adjust the multibyteness of
15237 the regexp pattern and the matching target. Set cp->buf.multibyte
15238 to the multibyteness of the regexp pattern. Set
15239 cp->but.target_multibyte to the multibyteness of the matching target.
15240 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
15241 FETCH_STRING_CHAR_ADVANCE.
15242 (Freplace_match): Convert unibyte chars to multibyte.
15243
15244 * syntax.c (char_quoted, back_comment, scan_words)
15245 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
15246 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
15247 unibyte chars to multibyte.
15248 (skip_chars): Delete the arg syntaxp, and move the code for
15249 handling syntaxes to skip_syntaxes. Change callers.
15250 Fix the case that the multibyteness of STRING and the current
15251 buffer doesn't match.
15252 (skip_syntaxes): New function.
15253 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
15254 SINGLE_BYTE_CHAR_P.
15255
152562008-02-01 Kenichi Handa <handa@m17n.org>
15257
15258 * xfaces.c (QCfontset): New variable.
15259 (LFACE_FONTSET): New macro.
15260 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
15261 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
15262 (Finternal_set_lisp_face_attribute)
15263 (Finternal_get_lisp_face_attribute): Handle QCfontset.
15264 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
15265 check also LFACE_FONTSET_INDEX.
15266 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
15267 attrs[LFACE_FONT_INDEX].
15268 (syms_of_xfaces): Intern and staticpro QCfontset.
15269
15270 * dispextern.h (enum lface_attribute_index): New member
15271 LFACE_FONTSET_INDEX.
15272
15273 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
15274
152752008-02-01 Kenichi Handa <handa@m17n.org>
15276
15277 * coding.c (coding_set_destination): Fix coding->destination for
15278 the case converting a region.
15279 (encode_coding_utf_8): Encode eight-bit chars as single byte.
15280 (encode_coding_object): Fix coding->dst_pos and
15281 coding->dst_pos_byte for the case converting a region.
15282
15283 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
15284
15285 * character.h (BYTE8_STRING): New macro.
15286
15287 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
15288
152892008-02-01 Kenichi Handa <handa@m17n.org>
15290
15291 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
15292 characters by octal form.
15293
15294 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15295
15296 * buffer.h (_fetch_multibyte_char_len): Delete extern.
15297 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
15298 _fetch_multibyte_char_len.
15299 (FETCH_CHAR_AS_MULTIBYTE): New macro.
15300
15301 * casetab.c (set_canon, set_identity, shuffle): Simplify.
15302
15303 * casefiddle.c (casify_object): Simplify. Handle the case that
15304 the case conversion change the byte length.
15305 (casify_region): Likewise.
15306
15307 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
15308
15309 * character.c (_fetch_multibyte_char_len): Delete this variable.
15310 (syms_of_character): Setup Vprintable_chars.
15311
15312 * editfns.c (Fchar_equal): Fix for the unibyte case.
15313 (Finsert_byte): New function.
15314 (syms_of_editfns): Defsubr it.
15315
15316 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
15317 of direct code 0x3ffff.
15318
15319 * search.c (Freplace_match): Fix for the unibyte case.
15320
153212008-02-01 Kenichi Handa <handa@m17n.org>
15322
15323 * lread.c (safe_to_load_p): Fix the logic.
15324
15325 * syntax.c (scan_words): Don't treat characters belonging to
15326 different scripts as constituting a word.
15327
15328 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15329
15330 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
15331
15332 * emacs.c (main): In the case of --unibyte, instead of aborting on
15333 finding non-empty buffer, make it unibyte.
15334
153352008-02-01 Kenichi Handa <handa@m17n.org>
15336
15337 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
15338 to create a fontset.
15339
153402008-02-01 Dave Love <fx@gnu.org>
15341
15342 * character.c (Funibyte_char_to_multibyte): Doc fix.
15343
15344 * xfns.c [HAVE_STDLIB_H]: Fix last change.
15345
153462008-02-01 Kenichi Handa <handa@m17n.org>
15347
15348 * fontset.c (fontset_add): Make the type `int'.
15349 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
15350
15351 * character.c (unibyte_char_to_multibyte)
15352 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
15353 charset_unibyte, not charset_primary.
15354
15355 * charset.h (charset_unibyte): Extern it instead of charset_primary.
15356
15357 * charset.c (charset_unibyte): Rename from charset_primary.
15358 (Funibyte_charset): Rename from Fprimary_charset.
15359 (Fset_unibyte_charset): Rename from Fset_primary_charset.
15360 (syms_of_charset): Adjust for the above changes.
15361
15362 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15363 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15364 it->multibyte_p is zero.
15365
15366 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
15367 Delete extern.
15368
153692008-02-01 Kenichi Handa <handa@m17n.org>
15370
15371 * coding.c (Fdefine_coding_system_internal): Fix category setting
15372 for a coding system of type iso-2022.
15373
153742008-02-01 Kenichi Handa <handa@m17n.org>
15375
15376 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
15377
153782008-02-01 Kenichi Handa <handa@m17n.org>
15379
15380 * syntax.c (Vnext_word_boundary_function_table): New variable.
15381 (next-word-boundary-function-table): Declare it as a Lisp variable
15382 in syms_of_syntax.
15383 (scan_words): Call functions in Vnext_word_boundary_function_table
15384 if any.
15385
15386 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
15387
15388 * fontset.c (fs_load_font): If fontp->charset is not negative,
15389 return fontp without setting its members.
15390
153912008-02-01 Dave Love <fx@gnu.org>
15392
15393 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
15394
15395 * m/sparc.h (HAVE_ALLOCA): Delete.
15396
15397 * s/irix6-5.h: Don't include strings.h.
15398 (bcopy, bzero, bcmp): Don't undef.
15399
15400 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
15401
15402 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
15403 (TIOCSIGSEND): Don't test IRIX6.
15404 (bcopy, bzero, bcmp): Define conditionally.
15405
154062008-02-01 Kenichi Handa <handa@m17n.org>
15407
15408 * buffer.c (Qas, Qmake, Qto): New variables.
15409 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
15410 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
15411
15412 * callproc.c (Fcall_process): Don't call insert_1_both directly if
15413 we are inserting a process output into a multibyte buffer.
15414
15415 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
15416 multibyte_char_to_unibyte.
15417
15418 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
15419 by the primary charset, make it eight-bit char.
15420 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
15421
15422 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
15423 (charset_8_bit__control, charset_8_bit_graphic)
15424 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
15425 (define_charset_internal): New function.
15426 (syms_of_charset): Call define_charset_internal for pre-defined
15427 charsets.
15428
15429 * charset.h (charset_8_bit): Extern it.
15430
15431 * coding.c (make_conversion_work_buffer): Adjust for the change
15432 of Fset_buffer_multibyte.
15433 (encode_coding_raw_text): Increment p0 in the loop.
15434
15435 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
15436
15437 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
15438 for the change of Fset_buffer_multibyte.
15439
15440 * fns.c (Fstring_to_multibyte): New function.
15441 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
15442
154432008-02-01 Dave Love <fx@gnu.org>
15444
15445 * xfns.c (x_put_x_image): Declare args.
15446
15447 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
15448 (try_font_list): Declare an arg.
15449
15450 * xdisp.c (message2_nolog, set_message): Declare an arg.
15451
15452 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
15453
15454 * syntax.c (scan_sexps_forward): Declare an arg.
15455
15456 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15457 Declare an arg.
15458
15459 * lisp.h (Fnew_fontset): Declare.
15460
15461 * keymap.c (push_key_description): Call CHARACTERP correctly.
15462
15463 * fontset.c (fontset_add): Declare args. Call make_number correctly.
15464 (face_for_char): Delete unused vars.
15465 (Fset_fontset_font): Doc fix. Delete unused vars.
15466
15467 * doc.c (Fsubstitute_command_keys): Delete unused vars.
15468
15469 * composite.c (update_compositions): Declare arg.
15470
15471 * cm.c (calccost, cmgoto): Declare args.
15472
15473 * charset.c: Remove `emacs' conditional. Doc fixes.
15474 (map_char_table_for_charset): Declare.
15475
15476 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
15477
15478 * ccl.c: Remove `emacs' conditional.
15479
154802008-02-01 Kenichi Handa <handa@m17n.org>
15481
15482 The following changes are to allow specifying multiple font
15483 patterns for a character range (specified by script or charset).
15484
15485 * Makefile.in (abbrev.o): Depend on syntax.h.
15486 (xfaces.o): Depend on charset.h.
15487
15488 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
15489 SINGLE_BYTE_CHAR_P.
15490
15491 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
15492
15493 * character.h (Vchar_script_table): Extern it.
15494
15495 * character.c (Vscript_alist): Delete.
15496 (Vchar_script_table, Qchar_script_table): New variable.
15497 (syms_of_character): Declare Vchar_script_table as a lisp variable
15498 and initialize it.
15499
15500 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
15501 have property char-table-extra-slots, make no extra slot.
15502
15503 * dispextern.h (struct face): Delete member `charset'.
15504 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
15505 SINGLE_BYTE_CHAR_P.
15506 (choose_face_font, lookup_non_ascii_face, font_name_registry):
15507 Add prototypes.
15508 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
15509 (generate_ascii_font_name): Rename from generate_ascii_font.
15510
15511 * fontset.h (get_font_repertory_func): New prototype.
15512 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
15513 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
15514
15515 * fontset.c (Qprepend, Qappend): New variables.
15516 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
15517 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
15518 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
15519 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
15520 (fontset_ref_and_range, fontset_add, reorder_font_vector)
15521 (load_font_get_repertory): New functions.
15522 (fontset_set): Delete.
15523 (fontset_face): New arg FACE. Return face ID, not face.
15524 Complete re-write to handle new fontset structure. Change caller.
15525 (free_face_fontset): Use ASET istead of AREF (X) = Y.
15526 (face_for_char): Don't call lookup_face.
15527 (make_fontset_for_ascii_face): New arg FACE.
15528 (fs_load_font): New arg CHARSET_ID. Don't check
15529 Vfont_encoding_alist here.
15530 (find_font_encoding): New function.
15531 (list_fontsets): Use STRINGP, not ! NILP.
15532 (accumulate_script_ranges): New function.
15533 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
15534 re-written to handle new fontset structure.
15535 (Ffontset_font): Return a copy of element.
15536 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
15537 docstring of font-encoding-alist.
15538
15539 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
15540 (Fset_fotset_font): Fix arguments to 5.
15541
15542 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
15543
15544 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
15545 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15546 (highlight_trailing_whitespace): Adjust for the change of
15547 lookup_named_face.
15548
15549 * xfaces.c: Include charset.h.
15550 (load_face_font): Delete argument C. Change caller.
15551 (generate_ascii_font_name): Rename from generate_ascii_font.
15552 (font_name_registry): New function.
15553 (cache_face): Store ascii faces before non-ascii faces in buckets.
15554 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
15555 Lookup only ascii faces.
15556 (lookup_non_ascii_face): New function.
15557 (lookup_named_face): Delete argument C. Change caller.
15558 (lookup_derived_face): Delete argument C. Change caller.
15559 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
15560 a string, just call font_list with it.
15561 (choose_face_font): Delete arguments FACE and C. New arg
15562 FONT_SPEC. Change caller.
15563 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
15564 Change caller.
15565 (realize_non_ascii_face): New function.
15566 (realize_x_face): Call load_face_font here.
15567 (realize_tty_face): Delete argument C. Change caller.
15568 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
15569 get a face ID.
15570 (dump_realized_face): Don't print charset of FACE.
15571
15572 * xfns.c (x_set_font): Always call x_new_fontset and
15573 store_frame_parameter.
15574 (Fx_create_frame): Call x_new_fontset, not x_new_font.
15575 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
15576
15577 * xterm.h (x_get_font_repertory): Extern it.
15578
15579 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15580 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15581 it->multibyte_p is zero.
15582 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15583 (x_new_fontset): If FONTSETNAME doesn't match any existing
15584 fontsets, create a new one.
15585 (x_get_font_repertory): New function.
15586
155872008-02-01 Kenichi Handa <handa@m17n.org>
15588
15589 * coding.c (Ffind_coding_systems_region_internal): Detect an
15590 ASCII only string correctly.
15591
15592 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
15593 version is 0.
15594
155952008-02-01 Kenichi Handa <handa@m17n.org>
15596
15597 * lread.c: Include "coding.h".
15598 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
15599 (load_each_byte, unread_char): New variables.
15600 (readchar_backlog): Delete.
15601 (readchar): Return a character unless load_each_byte is nonzero.
15602 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
15603 cons. If unread_char is not -1, simply return it.
15604 (unreadchar): Handle the case that readcharfun is
15605 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
15606 (read_multibyte): Delete.
15607 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
15608 (read_emacs_mule_char): New functions.
15609 (Fload): Even if the file doesn't have the extension ".elc", if
15610 safe_to_load_p returns a positive version number, assume that the
15611 file contains bytecompiled code. If the version is less than 22,
15612 load the file while decoding multibyte sequences by emacs-mule.
15613 (readevalloop): Don't use readchar_backlog.
15614 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
15615 (Fread_from_string): Pay attention to the case that STREAM is a cons.
15616 (read_escape): Delete the arg BYTEREP.
15617 (read1): Set load_each_byte to 1 temporarily while handling
15618 #@NUMBER. Don't call read_multibyte.
15619 (read_vector): Call Fread with a cons. If readcharfun is
15620 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
15621 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
15622 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
15623 and Qload_force_doc_strings.
15624
156252008-02-01 Kenichi Handa <handa@m17n.org>
15626
15627 * xdisp.c (face_before_or_after_it_pos): Call
15628 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15629
156302008-02-01 Kenichi Handa <handa@m17n.org>
15631
15632 * character.h (TRAILING_CODE_P): New macro.
15633 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
15634 (string_char_with_unification): Fix prototype.
15635 (Vscript_alist): Extern it.
15636
15637 * character.c (Vscript_alist): New variable.
15638 (string_char_with_unification, str_as_unibyte)
15639 (string_escape_byte8): Add `const' to local variables.
15640 (syms_of_character): Declare script-alist as a Lisp variable.
15641
15642 * charset.h (Vcharset_ordered_list): Extern it.
15643 (charset_ordered_list_tick): Extern it.
15644 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
15645 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
15646 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
15647 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
15648 (Funify_charset): Adjust for the change of Funify_charset.
15649
15650 * charset.c (charset_ordered_list_tick): New variable.
15651 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
15652 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
15653 deunify intead of unify a charset.
15654 (string_xstring_p): Add `const' to local variables.
15655 (find_charsets_in_text): Add `const' to arguments and local variables.
15656 (encode_char): Adjust for the change of Funify_charset. Fix
15657 detecting of invalid code.
15658 (Fset_charset_priority): Increment charset_ordered_list_tick.
15659 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
15660 and TO_CODE.
15661
15662 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
15663 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
15664 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
15665 (decode_coding_ccl, consume_chars)
15666 (Ffind_coding_systems_region_internal)
15667 (Fcheck_coding_systems_region): Add `const' to local variables.
15668
15669 * print.c (print_object): Use octal form for printing the
15670 contents of a bool vector.
15671
156722008-02-01 Dave Love <fx@gnu.org>
15673
15674 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
15675 <version == 20>: Refuse to load.
15676
156772008-02-01 Dave Love <fx@gnu.org>
15678
15679 * fns.c: Move coding.h.
15680 (Qcodeset, Qdays, Qmonths): New.
15681 (concat): Use CHARACTERP instead of INTEGERP.
15682 (Flocale_codeset): Delete.
15683 (Flanginfo): New function.
15684 (syms_of_fns): Change accordingly.
15685
15686 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
15687
156882008-02-01 Dave Love <fx@gnu.org>
15689
15690 * casetab.c (init_casetab_once, init_casetab_once): Fix
15691 CHAR_TABLE_SET call.
15692
15693 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
15694
15695 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
15696
15697 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
15698 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
15699 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
15700
15701 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
15702
15703 * coding.c (ENCODE_DESIGNATION, decode_eol)
15704 (make_conversion_work_buffer, code_conversion_restore)
15705 (Fdefine_coding_system_internal): Convert Lisp types.
15706 (code_conversion_restore): Use EQ, not ==.
15707 (Fencode_coding_string): Fix code_convert_string call.
15708
15709 * coding.h (code_convert_region): Fix prototype.
15710
15711 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
15712
15713 * fontset.c (fontset_ref, fontset_set, fs_load_font)
15714 (Ffontset_info): Convert Lisp types.
15715
15716 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
15717
15718 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
15719
15720 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
15721
15722 * chartab.c: Include "...h", not <...h> in some cases.
15723
15724 * callproc.c (Fcall_process): Remove unused variables.
15725
157262008-02-01 Dave Love <fx@gnu.org>
15727
15728 * coding.c (Fset_coding_system_priority): Allow null arg list.
15729
157302008-02-01 Dave Love <fx@gnu.org>
15731
15732 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15733 (Fself_insert_and_exit): Use CHARACTERP.
15734
15735 * callproc.c (Fcall_process): Remove unused vars.
15736
15737 * xterm.c (XTread_socket): Add extra dead keysyms.
15738
15739 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
15740
15741 * dispextern.h: Remove prototypes for redraw_frame,
15742 redraw_garbaged_frames.
15743
15744 * cmds.c (Fself_insert_command): Use CHARACTERP.
15745
15746 * chartab.c (make_sub_char_table): Remove unused var.
15747 (Fset_char_table_default, Fmap_char_table): Doc fix.
15748
15749 * keymap.c (access_keymap): Remove generic char code.
15750 (push_key_description): Use CHARACTERP.
15751
157522008-02-01 Dave Love <fx@gnu.org>
15753
15754 * charset.c: Doc fixes.
15755 (Funify_charset): Extra checking.
15756
157572008-02-01 Dave Love <fx@gnu.org>
15758
15759 * lread.c: Remove some unused variables.
15760 (safe_to_load_p): If safe, return the magic number version byte.
15761 (Fload): Maybe use load-with-code-conversion.
15762
157632008-02-01 Kenichi Handa <handa@m17n.org>
15764
15765 * category.c (Fmodify_category_entry): Don't modify the contents
15766 of category_set for characters out of the range. Avoid
15767 unnecessary modification.
15768
15769 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
15770 Vchar_unify_table. The default value of the table is now nil.
15771
15772 * character.c (syms_of_character): Setup Vchar_width_table for
15773 eight-bit-control and raw-byte chars.
15774
15775 * charset.h (enum define_charset_arg_index): Delete
15776 charset_arg_parents and add charset_arg_subset and
15777 charset_arg_superset.
15778 (enum charset_attr_index): Delete charset_parents and add
15779 charset_subset and charset_superset.
15780 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
15781 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
15782 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
15783 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
15784 (CHARSET_SUPERSET): New macros.
15785 (charset_work): Extern it.
15786 (ENCODE_CHAR): Use charset_work.
15787 (CHAR_CHARSET_P): Adjust for the change of encoder format.
15788 (map_charset_chars): Extern it.
15789
15790 * charset.c (load_charset_map): Set the default value of encoder
15791 and deunifier char-tables to nil.
15792 (map_charset_chars): Change argument. Change callers. Use
15793 map_char_table_for_charset instead of map_char_table.
15794 (Fmap_charset_chars): New optional args from_code and to_code.
15795 (Fdefine_charset_internal): Adjust for the change of
15796 `define-charset' (:parents -> :subset or :superset).
15797 (charset_work): New variable.
15798 (encode_char, syms_of_charset): Adjust for the change of
15799 Fdefine_charset_internal.
15800 (Ffind_charset_string): Setup the vector `charsets' correctly.
15801
15802 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
15803 the previous change.
15804 (char_table_ref_and_range): Adjust for the above change.
15805 (map_sub_char_table_for_charset): New function.
15806 (map_char_table_for_charset): New function.
15807
15808 * keymap.c (describe_vector): Handle a char-table directly here.
15809 (describe_char_table): Delete.
15810
15811 * lisp.h (map_charset_chars): Delete.
15812
158132008-02-01 Dave Love <fx@gnu.org>
15814
15815 * fns.c (count_combining): Comment out (unused).
15816 (Flocale_codeset): New.
15817 (syms_of_fns): Defsubr it.
15818
15819 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
15820 (size_t): Remove.
15821
158222008-02-01 Dave Love <fx@gnu.org>
15823
15824 * Makefile.in (chartab.o): Depend on charset.h.
15825
158262008-02-01 Kenichi Handa <handa@m17n.org>
15827
15828 * character.c (syms_of_character): Set the default value of
15829 Vprintable_chars to Qnil.
15830
158312008-02-01 Dave Love <fx@gnu.org>
15832
15833 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
15834
158352008-02-01 Kenichi Handa <handa@m17n.org>
15836
15837 * charset.c (load_charset_map): Handle the case that from < to
15838 correctly.
15839
15840 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
15841 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
15842 Pay attention to raw-8-bit chars.
15843
158442008-02-01 Kenichi Handa <handa@m17n.org>
15845
15846 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
15847 It is not bytecompiled now.
15848
15849 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
15850 (charset_jisx0208): New variables.
15851 (Fdefine_charset_internal): Setup them if appropriate.
15852 (init_charset_once): Initialize them to -1.
15853
15854 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
15855 (charset_jisx0208): Extern them.
15856
15857 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
15858 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
15859 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
15860 (setup_iso_safe_charsets): Fix arguments to Fassq.
15861 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
15862 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
15863 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
15864 (encode_coding_iso_2022): Change the 1st arg to
15865 ENCODE_ISO_CHARACTER to a variable.
15866
158672008-02-01 Kenichi Handa <handa@m17n.org>
15868
15869 * charset.h (enum define_charset_arg_index): New enums
15870 charset_arg_min_code and charset_arg_max_code.
15871 (struct charset): New member char_index_offset.
15872
15873 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
15874 Take charset->char_index_offset into account.
15875 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
15876 args[charset_arg_max_code]. Setup charset.char_index_offset.
15877 (syms_of_charset): Fix args to Fdefine_charset_internal.
15878
158792008-02-01 Dave Love <fx@gnu.org>
15880
15881 * coding.c (decode_coding_utf_8): Reject overlong sequences.
15882
158832008-02-01 Dave Love <fx@gnu.org>
15884
15885 * coding.c: Doc fixes.
15886 (Fcoding_system_aliases): Fix return value.
15887 (Qmac): Remove (duplicated) definition.
15888
158892008-02-01 Dave Love <fx@gnu.org>
15890
15891 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
15892 functions.
15893
15894 * character.c (Fstring): Doc fix.
15895
15896 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
15897
15898 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
15899 ids.
15900 (font-encoding-alist): Doc fix.
15901
159022008-02-01 Dave Love <fx@gnu.org>
15903
15904 * term.c (costs_set): Declare static, non-initialized for pcc.
15905 (encode_terminal_code): Remove unused var.
15906
15907 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15908 for K&R.
15909
15910 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
15911
15912 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
15913 (suffixes): Move out of make_subsidiaries for K&R.
15914
15915 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
15916
15917 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
15918
159192008-02-01 Dave Love <fx@gnu.org>
15920
15921 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
15922
15923 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
15924
159252008-02-01 Yong Lu <lyongu@asia-infonet.com>
15926
15927 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
15928
15929 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
15930
159312008-02-01 Kenichi Handa <handa@m17n.org>
15932
15933 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
15934 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
15935
159362008-02-01 Kenichi Handa <handa@m17n.org>
15937
15938 * coding.c (decode_coding_charset): Adjust for the change of
15939 Fdefine_coding_system_internal.
15940 (Fdefine_coding_system_internal): For a coding system of
15941 `charset' type, store a list of charset IDs in
15942 `charset_attr_charset_valids' element of coding attributes.
15943
159442008-02-01 Kenichi Handa <handa@m17n.org>
15945
15946 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
15947 (emacs_mule_char): New arg src. Delete arg `composition'. Change
15948 caller. Handle 2-byte and 3-byte charsets correctly.
15949 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
15950 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
15951 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
15952 (DECODE_EMACS_MULE_21_COMPOSITION): Call
15953 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
15954 sequence.
15955 (decode_coding_emacs_mule): Handle composition correctly. Rewind
15956 `src' and `consumed_chars' correctly before calling emacs_mule_char.
15957 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
15958 and alt&rule composition.
15959 (decode_coding_iso_2022): Handle composition correctly.
15960 (init_coding_once): Setup emacs_mule_bytes for private charsets.
15961
15962 * charset.c (Fdefine_charset_internal): Fix bug for the case of
15963 re-defining a charset. If the charset has :emacs-mule-id, setup
15964 emacs_mule_bytes.
15965 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
15966
159672008-02-01 Kenichi Handa <handa@m17n.org>
15968
15969 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
15970 (encode_coding_big5, encode_coding_charset): If coding requires safe
15971 encoding, produce a character specified by
15972 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15973
159742008-02-01 Dave Love <fx@gnu.org>
15975
15976 * xterm.c (XSetIMValues): Declare.
15977
15978 * process.c: Conditionally include sys/wait.h, pty.h.
15979
15980 * print.c (print_object): Fix print format for 64-bit systems.
15981
15982 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
15983
15984 * buffer.c (emacs_strerror): Declare.
15985
15986 * fontset.c (Fclear_face_cache): Declare.
15987 (accumulate_font_info): Comment-out (unused).
15988 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
15989 variables.
15990
15991 * character.h (string_escape_byte8): Declare.
15992
15993 * charset.c (load_charset_map, load_charset_map_from_file): Remove
15994 unused vars.
15995 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
15996 (Fmap_charset_chars): Doc fix.
15997
15998 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
15999 (Fset_coding_system_priority, Fset_coding_system_priority)
16000 (Fdefine_coding_system_internal): Doc fix.
16001
160022008-02-01 Dave Love <fx@gnu.org>
16003
16004 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
16005
160062008-02-01 Kenichi Handa <handa@m17n.org>
16007
16008 * character.c (string_escape_byte8): Make multibyte string with
16009 correct size.
16010
16011 * charset.c (Fmake_char): Delete unnecessary code.
16012
160132008-02-01 Kenichi Handa <handa@m17n.org>
16014
16015 * xfns.c (x_encode_text): Allocate coding.destination here, and
16016 call encode_coding_object with dst_object Qnil.
16017
16018 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
16019 multibyte form correctly.
16020
16021 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
16022 against Vfont_encoding_alist.
16023
16024 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
16025 handling of charset list.
16026 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
16027 (decode_coding_object): Move point to coding->dst_pos before
16028 calling post-read-conversion function.
16029 (encode_coding_object): Give correct arguments to
16030 pre-write-conversion. Ignore the return value of
16031 pre-write-conversion function. Pay attention to the case that
16032 pre-write-conversion changes the current buffer. If dst_object is
16033 Qt, even if coding->src_bytes is zero, allocate at least one byte
16034 to coding->destination.
16035
16036 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
16037
16038 * charset.c (Fmake_char): Make it more backward compatible.
16039 (Fmap_charset_chars): Fix docstring.
16040
160412008-02-01 Dave Love <fx@gnu.org>
16042
16043 * coding.c: Doc fixes.
16044 (Fdefine_coding_system_alias): Use names, not symbols, in
16045 coding-system-alist.
16046
160472008-02-01 Kenichi Handa <handa@m17n.org>
16048
16049 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
16050 of calling free_realized_face.
16051
160522008-02-01 Yong Lu <lyongu@asia-infonet.com>
16053
16054 * charset.c (read_hex): Don't treat SPC as a comment starter.
16055 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
16056 (Fdecode_char): Fix typo.
16057
160582008-02-01 Kenichi Handa <handa@m17n.org>
16059
16060 * charset.h (struct charset): New member `code_space_mask'.
16061
16062 * coding.c (coding_set_source): Delete the local variable beg_byte.
16063 (encode_coding_charset, Fdefine_coding_system_internal):
16064 Delete the local variable charset.
16065 (Fdefine_coding_system_internal): Setup
16066 attrs[coding_attr_charset_valids] correctly.
16067
16068 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
16069 member to check if CODE is valid or not.
16070 (Fdefine_charset_internal): Initialize `code_space_mask' member.
16071 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
16072 is within the range of charset->min_code and carset->max_code.
16073
160742008-02-01 Dave Love <fx@gnu.org>
16075
16076 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
16077
16078 * dispextern.h (generate_ascii_font): Fix return type.
16079
16080 * xfaces.c (generate_ascii_font): Fix arg declaration.
16081
16082 * coding.c (coding_inherit_eol_type)
16083 (Fset_terminal_coding_system_internal)
16084 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
16085
160862008-02-01 Kenichi Handa <handa@m17n.org>
16087
16088 * coding.c (decode_coding_charset, encode_coding_charset): Handle
16089 multiple charsets correctly.
16090
160912008-02-01 Kenichi Handa <handa@m17n.org>
16092
16093 * search.c (boyer_moore): Fix handling of multibyte character
16094 translation.
16095
16096 * xdisp.c (display_mode_element): When the variable `elt' is
16097 changed, update `this' and `lisp_string'.
16098
160992008-02-01 Kenichi Handa <handa@m17n.org>
16100
16101 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
16102
16103 * callproc.c (Fcall_process): Be sure to give the current buffer
16104 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
16105
16106 * charset.c (struct charset_map_entries): New struct.
16107 (load_charset_map): Rename from parse_charset_map. New args
16108 entries and n_entries. Change caller.
16109 (load_charset_map_from_file): Rename from load_charset_map.
16110 Change caller. New arg control_flag. Call load_charset_map at
16111 the tail.
16112 (load_charset_map_from_vector): New function.
16113 (Fdefine_charset_internal): Setup charset.compact_codes_p.
16114 (encode_char): If the charset is compact, change a character index
16115 to a code point.
16116
16117 * coding.c (coding_alloc_by_making_gap): Check the case that the
16118 source and destination are the same correctly.
16119 (decode_coding_raw_text): Set coding->consumed_char and
16120 coding->consumed to 0.
16121 (produce_chars): If coding->chars_at_source is nonzero, update
16122 coding->consumed_char and coding->consumed before calling
16123 alloc_destination.
16124 (Fdefine_coding_system_alias): Register ALIAS in
16125 Vcoding_system_alist.
16126 (syms_of_coding): Define `no-conversion' coding system at the tail.
16127
16128 * fileio.c (Finsert_file_contents): Set coding_system instead of
16129 val. If the current buffer is multibyte, always call
16130 decode_coding_gap.
16131
16132 * xfaces.c (try_font_list): Give higher priority to fontset's
16133 family than face's family.
16134
161352008-02-01 Kenichi Handa <handa@m17n.org>
16136
16137 * callproc.c (Fcall_process): Be sure to give the current buffer
16138 to decode_coding_c_string.
16139
16140 * xfaces.c (try_font_list): Give a family specified in a fontset
16141 higher priority than a family specified in a face.
16142
161432008-02-01 Kenichi Handa <handa@m17n.org>
16144
16145 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
16146 Fix arguments to insert_from_buffer.
16147
16148 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
16149
161502008-02-01 Kenichi Handa <handa@m17n.org>
16151
16152 * coding.c (produce_chars): Set the variable `multibytep' correctly.
16153 (decode_coding_gap): Set coding->dst_multibyte correctly.
16154
161552008-02-01 Kenichi Handa <handa@m17n.org>
16156
16157 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
16158 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
16159 (encode_coding_utf_16): Substitute coding->default_char for
16160 non-Unicode characters.
16161 (decode_coding): Don't call record_insert here.
16162 (setup_coding_system): Initialize `surrogate' of
16163 coding->spec.utf_16 to 0.
16164 (EMIT_ONE_BYTE): Fix for multibyte case.
16165
16166 * insdel.c (insert_from_gap): Call record_insert.
16167
161682008-02-01 Kenichi Handa <handa@m17n.org>
16169
16170 * casefiddle.c (casify_region): Fix multibyte case.
16171
16172 * character.c (c_string_width): Add return type `int'.
16173 (char_string_with_unification): Delete arg ADVANCED.
16174
16175 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
16176 (CHAR_STRING): Adjust for the change of char_string_with_unification.
16177 (CHAR_STRING_ADVANCE): Make it do-while statement.
16178
16179 * chartab.c (sub_char_table_set_range): Optimize for the case
16180 DEPTH == 3. Add workaround code for a GCC optimization bug.
16181
16182 * charset.c (parse_charset_map): Remove an unused variable.
16183
16184 * coding.c: Delete unused variables.
16185
16186 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
16187 earlier. If inserted is zero and the coding system doesn't
16188 require flushing, don't call decode_coding_gap.
16189
16190 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
16191
161922008-02-01 Kenichi Handa <handa@m17n.org>
16193
16194 The following changes are for using Unicode as an internal
16195 character model, and use UTF-8 format for buffer/string
16196 representation.
16197
16198 * .gdbinit (xchartable): Adjust for the change of char table structure.
16199 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
16200
16201 * Makefile.in (obj): Add character.o and chartab.o.
16202 (lisp, shortlisp): Remove utf-8.elc.
16203 (*.o): For many files, change dependency on charset.h to
16204 character.h, and add dependency on character.h.
16205 (character.o, chartab.o): New targets.
16206
16207 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
16208 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
16209 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
16210 of "charset.h".
16211
16212 * dired.c, filelock.c: Include "character.h".
16213
16214 * alloc.c: Include "character.h" instead of "charset.h".
16215 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
16216 (syms_of_alloc): Remove defsubr for Smake_char_table.
16217
16218 * buffer.c: Include "character.h" instead of "charset.h", don't
16219 include "coding.h".
16220 (Fset_buffer_multibyte): Adjust for UTF-8.
16221
16222 * buffer.h: EXFUN Fbuffer_live_p.
16223
16224 * callproc.c: Include "character.h" instead of "charset.h".
16225 (Fcall_process): Big change for the new code-conversion APIs.
16226
16227 * casetab.c: Include "character.h" instead of "charset.h".
16228 (set_canon, set_identity, shuffle): Adjust for the new
16229 map_char_table spec.
16230 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
16231 accessing the char table structure.
16232
16233 * chartab.c: New file that implements char table.
16234
16235 * category.c: Include "character.h".
16236 (copy_category_entry): New function.
16237 (copy_category_table): Call map_char_table and copy_category_entry.
16238 (Fmake_category_table): Initialize all top-level slots.
16239 (char_category_set): New function.
16240 (modify_lower_category_set): Delete.
16241 (Fmodify_category_entry): Call char_table_ref_and_range.
16242
16243 * category.h (CATEGORY_SET): Just call char_category_set.
16244
16245 * ccl.c: Include "character.h".
16246 (Qccl, Qcclp): New variables.
16247 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
16248 it's less than 256.
16249 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
16250 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
16251 and DST type.
16252 (ccl_driver): Change types of argument, adjust code accordingly.
16253 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
16254 ccl_driver.
16255 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
16256
16257 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
16258 New members src_multibyte, dst_multibyte, consumed, and produced.
16259 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
16260 (CODING_SPEC_CCL_PROGRAM): New macro.
16261 (ccl_driver): Update prototype.
16262 (Qccl, Qcclp, Fccl_program_p): Extern them.
16263 (CHECK_CCL_PROGRAM): New macro.
16264
16265 * character.c, character.h, chartab.c: New files.
16266
16267 * charset.c: Mostly re-written. Move character and multibyte sequence
16268 handling codes to character.c.
16269
16270 * charset.h: Mostly re-written. Move character and multibyte sequence
16271 handling codes to character.h.
16272
16273 * coding.c, coding.h: Mostly re-written.
16274
16275 * composite.c: Include "character.h" instead of "charset.h".
16276 (CHAR_WIDTH): Move to character.h.
16277 (HASH_KEY, HASH_VALUE): Delete.
16278
16279 * composite.h (enum composition_method): Change order of enumeration
16280 symbols.
16281
16282 * data.c: Include "character.h" instead of "charset.h".
16283 (Faref): Call CHAR_TABLE_REF for a char table.
16284 (Faset): Call CHAR_TABLE_SET for a char table.
16285
16286 * dispextern.h (free_realized_face, check_face_attribytes)
16287 (generate_ascii_font): Extern them.
16288 (free_realized_multibyte_face): Delete extern.
16289
16290 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
16291 table structure.
16292
16293 * editfns.c: Include "character.h" instead of "charset.h".
16294 (Fchar_to_string): Always call CHAR_STRING.
16295
16296 * emacs.c (main): Call init_charset_once, init_charset,
16297 syms_of_chartab, and syms_of_character.
16298
16299 * fileio.c: Include "character.h" instead of "charset.h".
16300 (Finsert_file_contents): Big change for the new code-conversion API.
16301 (choose_write_coding_system, Fwrite_region): Likewise.
16302 (build_annotations_2): Delete.
16303 (e_write): Big change for the new code-conversion API.
16304
16305 * fns.c: Include "character.h" instead of "charset.h".
16306 (copy_sub_char_table): Move to chartab.c.
16307 (Fcopy_sequence): Call copy_char_table for a char table.
16308 (concat): Delete codes calling count_multibyte.
16309 (string_char_to_byte, string_byte_to_char): Adjust for the new
16310 multibyte form.
16311 (internal_equal): Adjust for the change of char table structure.
16312 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
16313 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
16314 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
16315 (char_table_translate, optimize_sub_char_table)
16316 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
16317 chartab.c.
16318 (char_table_ref_and_index): Delete.
16319 (HASH_KEY, HASH_VALUE): Move to lisp.h.
16320 (Fmd5): Call preferred_coding_system instead of accessing
16321 Vcoding_category_list. Adjust for the new code-conversion API.
16322 (syms_of_fns): Move defsubr for char table related functions to
16323 chartab.c.
16324
16325 * fontset.c: Mostly re-written.
16326
16327 * fontset.h (struct font_info): Change type of the member encoding_type.
16328 (enum FONT_SPEC_INDEX): New enum.
16329 (fontset_font_pattern, fs_load_font): Update prototype.
16330 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
16331
16332 * indent.c: Include "character.h" instead of "charset.h".
16333 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
16334
16335 * insdel.c: Include "character.h" instead of "charset.h".
16336 (copy_text): Don't refer to Vnonascii_translation_table.
16337 (insert_from_gap): New function.
16338
16339 * keyboard.c: Include "character.h" instead of "charset.h".
16340 (command_loop_1): Never call direct_output_forward_char before
16341 a non-ASCII character.
16342 (read_char): If Vkeyboard_translate_table is a char table, always
16343 translate a character.
16344
16345 * keymap.c: Include "character.h".
16346 (store_in_keymap): Handle the case that IDX is a cons.
16347 (Fdefine_key): Handle the case that KEY is a cons and the car part
16348 is also a cons (range).
16349 (push_key_description): Adjust for the new character code.
16350 (describe_vector): Call describe_char_table for a char table.
16351 (describe_char_table): New function.
16352
16353 * keymap.h (describe_char_table): Extern it.
16354
16355 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
16356 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
16357 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
16358 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
16359 Delete.
16360 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
16361 structure.
16362 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
16363 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
16364 (CHARTAB_SIZE_BITS_3): New macros.
16365 (chartab_size): Extern it.
16366 (struct Lisp_Char_Table): Re-design.
16367 (struct Lisp_Sub_Char_Table): New structure.
16368 (HASH_KEY, HASH_VALUE): Move from fns.c.
16369 (CHARACTERBITS): Define as 22.
16370 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
16371 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
16372 (GC_SUB_CHAR_TABLE_P): New macro.
16373 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
16374 (code_convert_string_norecord): Deleted extern.
16375 (init_character_once, syms_of_character, init_charset)
16376 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
16377
16378 * lread.c: Include "character.h".
16379 (read_multibyte): New arg NBYTES.
16380 (read_escape): Change the meaning of returned *BYTEREP.
16381 (to_multibyte): Delete.
16382 (read1): Adjust the handling of char table and string.
16383
16384 * print.c: Include "character.h" instead of "charset.h".
16385 (print_string): Convert 8-bit raw bytes to octal form by
16386 string_escape_byte8.
16387 (print_object): Adjust for the new multibyte form. Print 8-bit
16388 raw bytes always in octal form. Handle sub char table correctly.
16389
16390 * process.c: Include "character.h" instead of "charset.h".
16391 (read_process_output, send_process): Adjust for the new
16392 code-conversion API.
16393
16394 * puresize.h (BASE_PURESIZE): Increase.
16395
16396 * regex.c: Include "character.h" instead of "charset.h".
16397 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
16398 (regex_compile): Accept a range whose starting and ending
16399 character have different leading bytes.
16400 (analyse_first): Adjust for the above change.
16401
16402 * search.c: Include "character.h" instead of "charset.h".
16403 (search_buffer, boyer_moore): Adjust for the new multibyte form.
16404 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
16405
16406 * syntax.c: Include "character.h" instead of "charset.h".
16407 (syntax_parent_lookup): Delete.
16408 (Fmodify_syntax_entry): Accept a cons as CHAR.
16409 (skip_chars): Adjust for the new multibyte form.
16410 (init_syntax_once): Call char_table_set_range instead of directly
16411 accessing the structure of a char table.
16412
16413 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
16414 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
16415 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
16416 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
16417
16418 * term.c: Include "buffer.h" and "character.h".
16419 (encode_terminal_code, write_glyphs): Adjust for the new
16420 code-conversion API.
16421 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
16422
16423 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
16424
16425 * xdisp.c: Include "character.h".
16426 (get_next_display_element): Adjust for the new multibyte form.
16427 (disp_char_vector): Adjust for the new char table structure.
16428 (decode_mode_spec_coding): Adjust for the new structure of
16429 coding system.
16430 (decode_mode_spec): Adjust for the new code-conversion API.
16431
16432 * xfaces.c: Include "character.h" instead of "charset.h".
16433 (load_face_font): Adjust for the change of choose_face_font and
16434 FS_LOAD_FONT.
16435 (generate_ascii_font): New function.
16436 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
16437 (set_font_frame_param): Adjust for the change of choose_face_font.
16438 (free_realized_face): Make it public.
16439 (free_realized_faces_for_fontset): Rename from
16440 free_realized_multibyte_face. Free also faces realized for ASCII.
16441 (choose_face_font): Change arguments. Adjust for the change of
16442 fontset_font_pattern and FS_LOAD_FONT.
16443
16444 * xfns.c: Include "character.h".
16445 (x_encode_text): Adjust for the new code-conversion API.
16446
16447 * xselect.c: Don't include "charset.h".
16448 (selection_data_to_lisp_data): Adjust for the new code conversion API.
16449
16450 * xterm.c: Include "character.h".
16451 (x_encode_char): New argument CHARSET. Change caller.
16452 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
16453 Call ENCODE_CHAR instead of SPLIT_CHAR.
16454 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
16455 CHAR_WIDTH instead of CHARSET_WIDTH.
16456 (XTread_socket): Adjust for the new code-conversion API.
16457 (x_new_font): Adjust for the change of FS_LOAD_FONT.
16458 (x_load_font): Adjust for the change of struct font.
16459
164602008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16461
16462 * xfaces.c (face_at_buffer_position): Remove unused vars.
16463
164642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16465
16466 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
16467 Fix overflow checking.
16468
164692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16470
16471 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
16472 Cancel previous change.
16473
164742008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16475
16476 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
16477 ccl->eight_bit_control. Fix check for buffer overflow.
16478 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
16479 (ccl_driver): Initialize extra_bytes to 0.
16480
164812008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16482
16483 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
16484 return it ORed with ctrl_modifier.
16485
164862008-01-29 Miles Bader <miles@gnu.org>
16487
16488 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
16489
164902008-01-28 Jason Rumney <jasonr@gnu.org>
16491
16492 * w32.c (stat): Don't double check for networked drive.
16493
164942008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
16495
16496 * window.c (run_window_configuration_change_hook): New function.
16497 Code extracted from set_window_buffer. Set the selected frame.
16498 (set_window_buffer): Use it.
16499 * window.h (run_window_configuration_change_hook): Declare.
16500 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
16501
16502 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
16503
165042008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
16505
16506 * Makefile.in: Remove references to unused macros.
16507
165082008-01-26 Eli Zaretskii <eliz@gnu.org>
16509
16510 * w32.c (g_b_init_get_sid_sub_authority)
16511 (g_b_init_get_sid_sub_authority_count): New static variables.
16512 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
16513 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
16514 (init_user_info): Use them to retrieve uid and gid.
16515 Use 500/513, the Windows defaults, as Administrator's uid/gid.
16516 (fstat): Use pw_uid and pw_gid from the_passwd structure for
16517 st_uid and st_gid of the file.
16518
165192008-01-26 Jason Rumney <jasonr@gnu.org>
16520
16521 * w32.c (logon_network_drive): New function.
16522 (stat): Use it.
16523
165242008-01-26 Chong Yidong <cyd@stupidchicken.com>
16525
16526 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
16527 invisible text covered with an ellipsis.
16528
165292008-01-25 Richard Stallman <rms@gnu.org>
16530
16531 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
16532 jump back to beginning. Move some other initializations after that.
16533 (Qwindow_text_change_functions, Vwindow_text_change_functions):
16534 New variables.
16535 (syms_of_xdisp): Init them.
16536
16537 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
16538
16539 * buffer.c (reset_buffer_local_variables):
16540 Implement `permanent-local-hook'.
16541 (Qpermanent_local_hook): New variable.
16542 (syms_of_buffer): Init and staticpro it.
16543
165442008-01-25 Michael Albinus <michael.albinus@gmx.de>
16545
16546 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
16547
165482008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
16549
16550 * fns.c (Fclrhash): Return TABLE.
16551
165522008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16553
16554 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
16555 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
16556 is set even without positional changes.
16557 (x_scroll_bar_clear): Set bar->redraw_needed_p.
16558
16559 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
16560
165612008-01-23 Jason Rumney <jasonr@gnu.org>
16562
16563 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
16564
16565 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
16566 the unicode range available in MULE by locale-coding-system.
16567 Improve dbcs lead byte detection. Set event timestamp and modifiers
16568 earlier.
16569
165702008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16571
16572 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
16573 [MAC_OSX] (init_mac_osx_environment): Initialize it.
16574 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
16575 when used on child processes.
16576
165772008-01-21 Michael Albinus <michael.albinus@gmx.de>
16578
16579 * dbusbind.c (Fdbus_method_return_internal): Rename from
16580 Fdbus_method_return.
16581 (Fdbus_unregister_object): Move to dbus.el.
16582 (Fdbus_call_method, Fdbus_method_return_internal)
16583 (Fdbus_send_signal): Improve debug messages.
16584
165852008-01-20 Martin Rudalics <rudalics@gmx.at>
16586
16587 * undo.c (undo_inhibit_record_point): New variable.
16588 (syms_of_undo): Initialize it.
16589 (record_point): Don't record point when undo_inhibit_record_point
16590 is set.
16591
165922008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
16593
16594 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
16595
16596 * xdisp.c (Qauto_hscroll_mode): New var.
16597 (syms_of_xdisp): Initialize it.
16598 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
16599 window's buffer.
16600 (hscroll_windows): Don't check automatic_hscrolling_p here.
16601
16602 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
16603 vscroll if we're setting window-buffer to the value it already has.
16604
166052008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
16606
16607 * m/intel386.h: Remove references to XENIX.
16608
166092008-01-17 Andreas Schwab <schwab@suse.de>
16610
16611 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
16612 instead of HAVE_X86_64_LIB64_DIR.
16613 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
16614
166152008-01-17 Glenn Morris <rgm@gnu.org>
16616
16617 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
16618 to HAVE_X86_64_LIB64_DIR.
16619
166202008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
16621
16622 * s/irix3-3.h:
16623 * s/irix4-0.h:
16624 * s/386-ix.h:
16625 * s/domain.h:
16626 * s/hpux9-x11r4.h:
16627 * s/hpux9shxr4.h: Remove files for systems no longer supported.
16628
16629 * sysdep.c: Remove code containing references to symbols defined
16630 by unsupported systems.
16631
166322008-01-16 Glenn Morris <rgm@gnu.org>
16633
16634 * coding.c (select-safe-coding-system-function): Doc fix.
16635
166362008-01-15 Glenn Morris <rgm@gnu.org>
16637
16638 * config.in: Revert 2008-01-13 change: this is a generated file.
16639
166402008-01-13 Tom Tromey <tromey@redhat.com>
16641
16642 * lisp.h: Fix typo.
16643
166442008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16645
16646 * m/sequent-ptx.h:
16647 * m/sequent.h:
16648 * s/ptx.h:
16649 * s/ptx4-2.h:
16650 * s/ptx4.h: Remove files for systems no longer supported.
16651
16652 * callproc.c (Fcall_process): Fix previous change.
16653
166542008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16655
16656 * unexsunos4.c: Remove file, system not supported anymore.
16657
16658 * m/mips.h:
16659 * m/intel386.h:
16660 * callproc.c:
16661 * config.in:
16662 * ecrt0.c:
16663 * emacs.c:
16664 * fileio.c:
16665 * frame.c:
16666 * getpagesize.h:
16667 * keyboard.c:
16668 * lread.c:
16669 * process.c:
16670 * puresize.h:
16671 * sysdep.c:
16672 * systty.h:
16673 * syswait.h:
16674 * unexec.c:
16675 * xdisp.c:
16676 * alloc.c: Remove code containing references to symbols defined by
16677 unsupported systems.
16678
166792008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
16680
16681 * coding.c (detect_coding_mask): Fix previous change.
16682
166832008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
16684
16685 * coding.c (detect_coding_iso2022): New arg
16686 latin_extra_code_state. Allow Latin extra codes only
16687 when *latin_extra_code_state is nonzero.
16688 (detect_coding_mask): If there is a NULL byte, detect the encoding
16689 as UTF-16 or binary. If Latin extra codes exist, detect the
16690 encoding as ISO-2022 only when there's no other proper encoding is
16691 found.
16692
166932008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16694
16695 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
16696 #ifdef MAC_OS.
16697
166982008-01-08 Richard Stallman <rms@gnu.org>
16699
16700 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
16701
167022008-01-06 Nick Roberts <nickrob@snap.net.nz>
16703
16704 * keyboard.c (parse_menu_item): Don't enclose key bindings on
16705 menu bar in parentheses.
16706
167072008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
16708
16709 * m/7300.h:
16710 * m/acorn.h:
16711 * m/alliant-2800.h:
16712 * m/alliant.h:
16713 * m/alliant1.h:
16714 * m/alliant4.h:
16715 * m/altos.h:
16716 * m/amdahl.h:
16717 * m/apollo.h:
16718 * m/att3b.h:
16719 * m/aviion-intel.h:
16720 * m/aviion.h:
16721 * m/celerity.h:
16722 * m/clipper.h:
16723 * m/cnvrgnt.h:
16724 * m/convex.h:
16725 * m/cydra5.h:
16726 * m/delta88k.h:
16727 * m/dpx2.h:
16728 * m/dual.h:
16729 * m/elxsi.h:
16730 * m/f301.h:
16731 * m/gould-np1.h:
16732 * m/gould.h:
16733 * m/i860.h:
16734 * m/ibmps2-aix.h:
16735 * m/ibmrt-aix.h:
16736 * m/ibmrt.h:
16737 * m/irist.h:
16738 * m/is386.h:
16739 * m/isi-ov.h:
16740 * m/mega68.h:
16741 * m/mg1.h:
16742 * m/news-r6.h:
16743 * m/news-risc.h:
16744 * m/news.h:
16745 * m/nh3000.h:
16746 * m/nh4000.h:
16747 * m/ns16000.h:
16748 * m/ns32000.h:
16749 * m/nu.h:
16750 * m/orion.h:
16751 * m/orion105.h:
16752 * m/paragon.h:
16753 * m/pfa50.h:
16754 * m/plexus.h:
16755 * m/pyramid.h:
16756 * m/pyrmips.h:
16757 * m/sh3el.h:
16758 * m/sps7.h:
16759 * m/sr2k.h:
16760 * m/stride.h:
16761 * m/sun1.h:
16762 * m/sun2.h:
16763 * m/sun3-68881.h:
16764 * m/sun3-fpa.h:
16765 * m/sun3-soft.h:
16766 * m/sun3.h:
16767 * m/sun386.h:
16768 * m/symmetry.h:
16769 * m/tad68k.h:
16770 * m/tahoe.h:
16771 * m/targon31.h:
16772 * m/tek4300.h:
16773 * m/tekxd88.h:
16774 * m/tower32.h:
16775 * m/tower32v3.h:
16776 * m/ustation.h:
16777 * m/wicat.h:
16778 * m/xps100.h:
16779 * s/cxux.h:
16780 * s/cxux7.h:
16781 * s/dgux.h:
16782 * s/dgux4.h:
16783 * s/dgux5-4-3.h:
16784 * s/dgux5-4r2.h:
16785 * s/esix.h:
16786 * s/esix5r4.h:
16787 * s/hiuxmpp.h:
16788 * s/hiuxwe2.h:
16789 * s/iris3-5.h:
16790 * s/iris3-6.h:
16791 * s/isc2-2.h:
16792 * s/isc3-0.h:
16793 * s/isc4-0.h:
16794 * s/isc4-1.h:
16795 * s/newsos5.h:
16796 * s/newsos6.h:
16797 * s/osf1.h:
16798 * s/osf5-0.h:
16799 * s/riscix1-1.h:
16800 * s/riscix12.h:
16801 * s/sco4.h:
16802 * s/sco5.h:
16803 * s/sunos4-0.h:
16804 * s/sunos4-1.h:
16805 * s/sunos413.h:
16806 * s/sunos4shr.h:
16807 * s/umax.h:
16808 * s/unipl5-2.h:
16809 * s/xenix.h:
16810 * cxux-crt0.s:
16811 * unexapollo.c:
16812 * unexconvex.c:
16813 * unexenix.c:
16814 * unexsni.c: Remove files for systems no longer supported.
16815
16816 * m/intel386.h: Remove references to unsupported systems.
16817
16818 * w32.c (get_emacs_configuration): Remove reference to i860.
16819
16820 * sysdep.c: Remove dead code.
16821
168222008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
16823
16824 * s/rtu.h:
16825 * m/masscomp.h: Remove files. Platform is obsolete.
16826
168272008-01-04 Michael Albinus <michael.albinus@gmx.de>
16828
16829 * dbusbind.c (Fdbus_method_return): New function.
16830 (xd_read_message): Add the serial number to the event.
16831 (Fdbus_register_method): Activate the function.
16832
168332008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
16834
16835 * keyboard.c (read_key_sequence): Fix typo.
16836
168372008-01-03 Michael Albinus <michael.albinus@gmx.de>
16838
16839 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
16840 (xd_signature, xd_append_arg): Handle element type detection for
16841 empty arrays.
16842 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
16843 SDATA () calls; this must be solved more general.
16844 (Fdbus_register_signal): Use SBYTES instead of strlen.
16845
168462008-01-03 Magnus Henoch <magnus@zemdatav>
16847
16848 * dbusbind.c (xd_append_arg): Use unsigned char instead of
16849 unsigned int for byte values (necessary for big-endian platform).
16850 (Fdbus_call_method): Handle the case of no returned arguments.
16851
168522007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
16853
16854 * dbusbind.c (xd_read_message): Use non-static input_event struct.
16855
168562007-12-31 Magnus Henoch <mange@freemail.hu>
16857
16858 * dbusbind.c (xd_signature): Signature of variant is just "v".
16859
168602007-12-30 Michael Albinus <michael.albinus@gmx.de>
16861
16862 * dbusbind.c: Fix several errors and compiler warnings.
16863 Reported by Tom Tromey <tromey@redhat.com>.
16864 (XD_ERROR, XD_DEBUG_MESSAGE)
16865 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
16866 (xd_append_arg): Part for basic D-Bus types rewritten.
16867 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
16868 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
16869 appropriate.
16870 (xd_read_message): Return Qnil. Don't signal an error; it is not
16871 useful during event reading.
16872 (Fdbus_register_signal): Signal an error if the check for
16873 FUNCTIONP fails.
16874 (Fdbus_register_method): New function. The implementation is not
16875 complete, the call of the function signals an error therefore.
16876 (Fdbus_unregister_object): New function, renamed from
16877 Fdbus_unregister_signal. The initial check signals an error, if
16878 the object is not well formed.
16879
168802007-12-30 Richard Stallman <rms@gnu.org>
16881
16882 * textprop.c (get_char_property_and_overlay):
16883 Signal error if POSITION is out of range in a buffer.
16884
168852007-12-29 Martin Rudalics <rudalics@gmx.at>
16886
16887 * w32fns.c (Fx_create_frame): Make copy of frame parameters
16888 because the original parameters are in pure storage now.
16889
168902007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16891
16892 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
16893
168942007-12-22 Eli Zaretskii <eliz@gnu.org>
16895
16896 * callint.c (syms_of_callint) <command-history>: Add reference to
16897 history-length in the doc string.
16898
168992007-12-17 Jason Rumney <jasonr@gnu.org>
16900
16901 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16902 before passing as wParam.
16903
169042007-12-22 Michael Albinus <michael.albinus@gmx.de>
16905
16906 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
16907 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
16908 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
16909 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
16910 as number.
16911 (Fdbus_call_method): Fix docstring.
16912
169132007-12-21 Michael Albinus <michael.albinus@gmx.de>
16914
16915 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
16916 New macros.
16917 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
16918 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
16919 Simplify.
16920 (xd_signature): New function.
16921 (xd_append_arg): Compute also signatures. Major rewrite.
16922 (xd_retrieve_arg): Make debug messages friendly.
16923 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
16924 Check for signatures of arguments.
16925
169262007-12-19 Michael Albinus <michael.albinus@gmx.de>
16927
16928 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
16929 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
16930 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
16931 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
16932 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
16933 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
16934 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
16935 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
16936 (xd_retrieve_value): Remove. Functionality included in ...
16937 (xd_append_arg): New function.
16938 (Fdbus_call_method, Fdbus_send_signal): Apply it.
16939
169402007-12-16 Michael Albinus <michael.albinus@gmx.de>
16941
16942 * dbusbind.c (top): Include <stdio.h>.
16943 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
16944 dbus_message_new_method_call and dbus_message_new_signal.
16945 (Fdbus_register_signal): Rename unique_name to uname.
16946 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
16947 non-existing unique name. Fix typos in matching rule. Return an
16948 object which is useful in Fdbus_unregister_signal.
16949 (Fdbus_unregister_signal): Reimplementation, in order to remove
16950 only the corresponding entry.
16951 (Vdbus_registered_functions_table): Change the order of entries.
16952 Apply these changes in xd_read_message and Fdbus_register_signal.
16953
169542007-12-16 Andreas Schwab <schwab@suse.de>
16955
16956 * fileio.c (Finsert_file_contents): Fix overflow check to not
16957 depend on undefined integer overflow.
16958
169592007-12-14 Jason Rumney <jasonr@gnu.org>
16960
16961 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
16962 for characters above 127.
16963
169642007-12-13 Jason Rumney <jasonr@gnu.org>
16965
16966 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
16967 before dereferencing array.
16968 (lookup_vk_code): Remove zero comparison.
16969
169702007-12-14 Michael Albinus <michael.albinus@gmx.de>
16971
16972 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
16973 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
16974 Use `unsigned int' instead of `uint'.
16975 (xd_read_message, Fdbus_register_signal): Split expressions into
16976 multiple lines before operators "&&" and "||", according to the
16977 GNU Coding Standards.
16978
169792007-12-14 Eli Zaretskii <eliz@gnu.org>
16980
16981 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
16982
169832007-12-12 Juri Linkov <juri@jurta.org>
16984
16985 * buffer.c (Frename_buffer): In interactive spec replace
16986 `read-buffer' with `read-string' that uses `buffer-name-history'
16987 as history, and the current buffer's name as default.
16988
169892007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
16990
16991 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
16992 manipulating the backtrace manually.
16993 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
16994 (struct backtrace, backtrace_list): Remove.
16995 (command_loop_1): Remove dead var `no_direct'.
16996
16997 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
16998 preserve non-built-in buffer-local variables.
16999 (Fkill_all_local_variables): Don't re-create&re-set permanent
17000 buffer-local variables.
17001
170022007-12-09 Juri Linkov <juri@jurta.org>
17003
17004 * buffer.c (Frename_buffer): Change interactive spec from "s" to
17005 Lisp code that uses `read-buffer' with current buffer as default.
17006
170072007-12-08 Michael Albinus <michael.albinus@gmx.de>
17008
17009 * dbusbind.c (xd_read_message): Generate an event for every
17010 registered handler. There might be several handlers registered
17011 for the same signal.
17012 (Fdbus_register_signal): Don't overwrite a registration for the
17013 same signal. Add a new registration if handlers are different.
17014 (Vdbus_registered_functions_table): Rework doc string.
17015
170162007-12-07 Michael Albinus <michael.albinus@gmx.de>
17017
17018 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
17019 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
17020 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
17021 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
17022 Unify argument lists.
17023 (xd_read_message, Fdbus_register_signal): Reorder and extend event
17024 arguments and hash table keys. Use unique name for service.
17025 (Fdbus_unregister_signal): Remove checks.
17026 (Vdbus_registered_functions_table): Fix doc string.
17027
170282007-12-05 Magnus Henoch <mange@freemail.hu>
17029
17030 * process.c (make_process): Initialize pty_flag to 0.
17031
170322007-12-05 Jason Rumney <jasonr@gnu.org>
17033
17034 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
17035 specified XBMs.
17036
170372007-12-05 Richard Stallman <rms@gnu.org>
17038
17039 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
17040
170412007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17042
17043 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
17044 New variable.
17045 (mac_try_close_socket) [MAC_OSX]: New function.
17046 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
17047 Update cfsockets_for_select. Replace invalid CFRunLoop source.
17048
17049 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
17050 Use mac_try_close_socket.
17051
170522007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17053
17054 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
17055 reloc_base.
17056 (copy_dysymtab): Compute relocation base here.
17057 (rebase_reloc_address) [__ppc64__]: New function.
17058 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
17059 changed.
17060
170612007-12-05 Jason Rumney <jasonr@gnu.org>
17062
17063 * w32proc.c (sys_spawnve): Quote args with wildcards.
17064
170652007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17066
17067 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
17068 __objc_* sections.
17069 (unrelocate) [_LP64]: Set relocation base to address of data segment.
17070
170712007-12-05 Michael Albinus <michael.albinus@gmx.de>
17072
17073 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
17074 Move check for Vdbus_registered_functions_table to
17075 xd_read_queued_messages.
17076 (xd_read_queued_messages): Protect xd_read_message calls by
17077 internal_condition_case_1.
17078
170792007-12-04 Michael Albinus <michael.albinus@gmx.de>
17080
17081 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
17082 Qdbus_system_bus and Qdbus_session_bus, respectively.
17083 (Vdbus_intern_symbols): Remove.
17084 (Vdbus_registered_functions_table): New hash table.
17085 (XD_SYMBOL_INTERN_SYMBOL): Remove.
17086 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
17087 Rewrite in order to manage registered functions by hash table
17088 Vdbus_registered_functions_table.
17089
170902007-12-03 Jan Djärv <jan.h.d@swipnet.se>
17091
17092 * xterm.c: Update URL to Window Manager Specification in comment.
17093
170942007-12-02 Michael Albinus <michael.albinus@gmx.de>
17095
17096 * config.in (HAVE_DBUS): Add.
17097
17098 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
17099 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
17100 (obj): Add $(DBUS_OBJ).
17101 (LIBES): Add $(DBUS_LIBS).
17102 (dbusbind.o): New target.
17103
17104 * dbusbind.c: New file.
17105
17106 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
17107
17108 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
17109 (Qdbus_event): New Lisp symbol.
17110 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
17111 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 17112 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
17113
17114 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
17115
171162007-12-01 Richard Stallman <rms@gnu.org>
17117
17118 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
17119
171202007-11-30 Jason Rumney <jasonr@gnu.org>
17121
17122 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
17123 (w32con_reset_terminal_modes): Clear screen buffer.
17124 (w32_face_attributes): Don't use color indexes that are out of range.
17125 Only reverse the default colors.
17126
17127 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
17128 WINDOWSNT.
17129
17130 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
17131
171322007-11-29 Jason Rumney <jasonr@gnu.org>
17133
17134 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
17135 (w32_face_attributes): Use Vtty_defined_color_alist to determine
17136 if the terminal colors are initialized.
17137 (unspecified_fg, unspecified_bg): Remove unused declarations.
17138
171392007-11-29 Andreas Schwab <schwab@suse.de>
17140
17141 * keyboard.c (apply_modifiers): Fix typo.
17142
171432007-11-29 Richard Stallman <rms@gnu.org>
17144
17145 * keymap.c (Fcurrent_local_map): Doc fix.
17146
171472007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
17148
17149 * s/gnu-kfreebsd.h: New file.
17150
171512007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
17152
17153 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
17154 Don't cast redundantly.
17155
17156 * keyboard.c (KEY_TO_CHAR): New macro.
17157 (parse_modifiers, apply_modifiers): Accept integer arguments.
17158 (read_key_sequence): Use them to unify the "shift->unshift" mapping
17159 for chars and symbol keys.
17160 After doing such remapping, apply function-key-map again.
17161
171622007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
17163
17164 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
17165 compiled anymore.
17166
171672007-11-26 Andreas Schwab <schwab@suse.de>
17168
17169 * process.c (list_processes_1): Fix indentation level of the
17170 command column.
17171
171722007-11-23 Andreas Schwab <schwab@suse.de>
17173
17174 * editfns.c (Fformat): Handle %c specially since it requires the
17175 argument to be of type int.
17176
171772007-11-23 Markus Triska <markus.triska@gmx.at>
17178
17179 * emacs.c (main): Call init_editfns before init_process, since
17180 init_process sets Vprocess_connection_type depending on OS release.
17181
171822007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
17183
17184 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
17185 (find_symbol_value): Use do_symval_forwarding.
17186
17187 * data.c (set_internal): Set the value in the `cons-cell' (for
17188 Buffer_Local_values) not only for frame-local variables.
17189
171902007-11-22 Andreas Schwab <schwab@suse.de>
17191
17192 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
17193 values to sprintf.
17194 * keymap.c (Fsingle_key_description): Likewise.
17195 * print.c (print_object): Likewise.
17196
171972007-11-22 Jan Djärv <jan.h.d@swipnet.se>
17198
17199 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
17200 file for image is nil.
17201
172022007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
17203
17204 * term.c: Include stdarg.h.
17205 (fatal): Implement using varargs.
17206 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
17207
172082007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17209
17210 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
17211 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
17212 Update call to buffer_slot_type_mismatch.
17213 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
17214 (buffer_slot_type_mismatch): Update.
17215 * buffer.c (buffer_local_types): Remove.
17216 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
17217 (defvar_per_buffer): Set the type in the buffer_objfwd.
17218
172192007-11-21 Jason Rumney <jasonr@gnu.org>
17220
17221 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
17222 CreateFileMapping returns NULL on failure.
17223
172242007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17225
17226 * search.c (Fset_match_data): Remove the `evaporate' feature.
17227 (unwind_set_match_data): Don't use the `evaporate' feature.
17228
172292007-11-21 Jason Rumney <jasonr@gnu.org>
17230
17231 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
17232
17233 * w32console.c (w32con_write_glyphs): Remove unused variables.
17234
172352007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
17236
17237 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
17238
17239 * s/darwin.h (MULTI_KBOARD): Remove.
17240
17241 * macfns.c (x_create_tip_frame, Fx_create_frame)
17242 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
17243
172442007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
17245
17246 * buffer.c (Fbuffer_local_value): Remove redundant test.
17247 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
17248 than in `current-buffer' to match the comment.
17249 Do the swap using swap_in_global_binding.
17250
17251 * data.c (store_symval_forwarding, set_internal):
17252 * eval.c (specbind): Remove dead code.
17253
17254 * coding.c (detect_coding, Fupdate_coding_systems_internal):
17255 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
17256 Since we do not want to see internal Lisp_*fwd objects here.
17257
172582007-11-18 Jan Djärv <jan.h.d@swipnet.se>
17259
17260 * sysdep.c (init_system_name): Use getaddrinfo if available.
17261
17262 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
17263 (x_scroll_bar_note_movement): start, end, with, height in struct
17264 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
17265
172662007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
17267
17268 * puresize.h (BASE_PURESIZE): Increase to 1190000.
17269
172702007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
17271
17272 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
17273 This undoes Richard's change of 14-Oct-2002.
17274
17275 * alloc.c (allocate_other_vector):
17276 * lisp.h (allocate_other_vector): Remove.
17277
17278 * window.c (struct save_window_data): Move non-lisp data to the end
17279 and make it `int' rather than Lisp_Object.
17280 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
17281 Done wrap/unwrap integer values.
17282 (Fset_window_configuration, compare_window_configurations):
17283 Update use of fields to their new types.
17284
17285 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
17286 Turn integer fields into `int'. Merge x_window_low and x_window_high.
17287 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
17288 (SET_SCROLL_BAR_X_WINDOW): Remove.
17289 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
17290 Access the new x_window field directly.
17291 * xterm.c (x_scroll_bar_create): Use a pseudovector.
17292 Don't wrap/unwrap integers into Lisp_Objects.
17293 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
17294 (x_scroll_bar_report_motion):
17295 Don't wrap/unwrap integers into Lisp_Objects.
17296 (x_term_init): Use SDATA.
17297 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
17298 (x_scroll_bar_set_handle, x_scroll_bar_remove)
17299 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
17300 (x_scroll_bar_report_motion, x_scroll_bar_clear):
17301 * xfns.c (x_set_background_color):
17302 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
17303 Access the new x_window field directly.
17304
17305 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
17306 (allocate_pseudovector): Make non-static.
17307
17308 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
17309 (allocate_pseudovector): Declare.
17310 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
17311
173122007-11-15 Andreas Schwab <schwab@suse.de>
17313
17314 * editfns.c (Fformat): Correctly format EMACS_INT values.
17315 Also take precision into account when formatting an integer.
17316
17317 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
17318
173192007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
17320
17321 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
17322 (syms_of_keyboard): Defsubr it.
17323
17324 * data.c (swap_in_global_binding): Fix longstanding bug where
17325 store_symval_forwarding was not called with the right second argument,
17326 thus causing objfwd-ing from being dropped.
17327
173282007-11-14 Juanma Barranquero <lekktu@gmail.com>
17329
17330 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
17331 (Fx_display_pixel_height, Fx_display_planes)
17332 (Fx_display_color_cells, Fx_server_max_request_size)
17333 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17334 (Fx_display_visual_class, Fx_display_save_under):
17335 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
17336 (Fx_display_pixel_height, Fx_display_planes)
17337 (Fx_display_color_cells, Fx_server_max_request_size)
17338 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
17339 (Fx_display_mm_height, Fx_display_mm_width)
17340 (Fx_display_backing_store, Fx_display_visual_class)
17341 (Fw32_select_font, Fx_display_save_under):
17342 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
17343 (Fx_display_pixel_height, Fx_display_planes)
17344 (Fx_display_color_cells, Fx_server_max_request_size)
17345 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17346 (Fx_display_save_under): Fix typos in docstrings.
17347
173482007-11-14 Juanma Barranquero <lekktu@gmail.com>
17349
17350 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
17351 corresponding to deleted entries; they are an implementation detail.
17352 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
17353 Remove variables.
17354 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
17355 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
17356 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
17357 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
17358 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
17359 (Fw32_define_rgb_color, Fw32_load_color_file)
17360 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
17361 Fix typos in docstrings.
17362 (Fx_server_version): Reflow docstring.
17363 (Fw32_shell_execute): Doc fixes.
17364
173652007-11-13 Juanma Barranquero <lekktu@gmail.com>
17366
17367 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
17368 if w32_parse_hot_key returned nil.
17369
173702007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
17371
17372 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
17373
173742007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 17375
aac0c6e3
MR
17376 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
17377
17378 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
17379
17380 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
17381 Remove W32_SCROLL_BAR_CLICK_EVENT.
17382
17383 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
17384 Add MULTIMEDIA_KEY_EVENT.
17385
17386 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
17387 (lispy_multimedia_keys) [WINDOWSNT]: New array.
17388 (make_lispy_event) [WINDOWSNT]: Use it to translate
17389 MULTIMEDIA_KEY_EVENT.
17390
17391 * w32term.h (WM_APPCOMMAND): Define if not already.
17392 (GET_APPCOMMAND_LPARAM): Likewise.
17393
17394 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
17395 WM_APPCOMMAND.
17396
17397 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
17398 (syms_of_w32fns): Export and initialize it.
17399 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
17400
174012007-11-09 Chong Yidong <cyd@stupidchicken.com>
17402
17403 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
17404 twice.
17405
17406 * xdisp.c (handle_face_prop): Fix last change.
17407
174082007-11-09 Richard Stallman <rms@gnu.org>
17409
17410 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
17411 not just for after-strings and before-strings.
17412 Call face_for_overlay_string and pass the overlay to it.
17413 (handle_display_prop): Determine whether property came from an overlay.
17414 Pass OVERLAY arg to handle_single_display_spec.
17415 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
17416 (load_overlay_strings): Fill in it->string_overlays.
17417 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
17418
17419 * xfaces.c (face_for_overlay_string): Function renamed from
17420 face_at_buffer_position_no_overlays, and add arg OVERLAY.
17421
17422 * dispextern.h (struct it): New elt string_overlays.
17423 New elt from_overlay, also in stack.
17424 Rearrange a few elements.
17425 (face_for_overlay_string): Decl renamed from
17426 face_at_buffer_position_no_overlays, and add argument.
17427
174282007-11-09 Richard Stallman <rms@gnu.org>
17429
17430 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
17431 to get the base face for an overlay string.
17432
17433 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
17434
17435 * xfaces.c (face_at_buffer_position_no_overlays): New function.
17436
17437 * xdisp.c (handle_stop): Move some code out of loop.
17438
174392007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17440
17441 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
17442 Fix conversion from Lisp object to ATSUFontID.
17443
174442007-11-09 Jason Rumney <jasonr@gnu.org>
17445
17446 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
17447
174482007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17449
17450 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
17451 Don't assume regions are aligned to page boundary.
17452 (print_load_command_name): Add LC_UUID if defined.
17453
174542007-11-09 Richard Stallman <rms@gnu.org>
17455
17456 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
17457
174582007-11-07 Jason Rumney <jasonr@gnu.org>
17459
17460 * s/windows95.h: Remove.
17461
174622007-11-06 Jan Djärv <jan.h.d@swipnet.se>
17463
17464 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
17465 abort with a message on unhandled store_type values.
17466
174672007-11-01 Jan Djärv <jan.h.d@swipnet.se>
17468
17469 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
17470 Remove HAVE_X11R5 and HAVE_X11R4.
17471
174722007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17473
17474 * Makefile.in: Remove references to sunfns.c and sunfns.o.
17475
174762007-11-01 Johan Bockgård <bojohan@gnu.org>
17477
17478 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
17479 Don't set s->stippled_p here, since it has already been set by
17480 x_set_glyph_string_gc from x_draw_glyph_string.
17481
174822007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17483
17484 * sunfns.c: Remove file.
17485
17486 * m/sun386.h:
17487 * m/sun2.h:
17488 * m/sparc.h: Remove Sun windows code.
17489
174902007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
17491
17492 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
17493 (init_keyboard): Set current_kboard's window-system to nil.
17494 (tty_read_avail_input): Typo.
17495 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
17496
174972007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
17498
17499 * s/usg5-4.h:
17500 * s/usg5-3.h:
17501 * s/ptx.h:
17502 * m/is386.h:
17503 * m/ibmps2-aix.h:
17504 * Makefile.in: Remove all mentions of X10.
17505
17506 * dispnew.c (syms_of_display): Don't mention version 10.
17507
175082007-10-28 Juanma Barranquero <lekktu@gmail.com>
17509
17510 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
17511 ($(BLD)/abbrev.$(O)): Remove.
17512
175132007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
17514
17515 Rewrite abbrev.c in Elisp.
17516 * image.c (Qcount): Don't declare as extern.
17517 (syms_of_image): Initialize and staticpro `Qcount'.
17518 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
17519 * emacs.c (main): Don't call syms_of_abbrev.
17520 * Makefile.in (obj): Remove abbrev.o.
17521 (abbrev.o): Remove.
17522 * abbrev.c: Remove.
17523
175242007-10-26 Martin Rudalics <rudalics@gmx.at>
17525
17526 * window.c (window_min_size_2): Don't count header-line.
17527
175282007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
17529
17530 * frame.h (struct frame): Move all bit fields after the first bit
17531 field to take advantage of the available space. Group all the
17532 chars together to reduce wasted space due to padding.
17533
175342007-10-26 Juanma Barranquero <lekktu@gmail.com>
17535
17536 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
17537
17538 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
17539 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
17540 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
17541 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
17542 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
17543 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
17544 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
17545 (last_marked, mark_object_loop_halt): Make static.
17546
17547 * frame.c (syms_of_frame) <delete-frame-functions>:
17548 Fix typo in docstring.
17549
175502007-10-25 Juanma Barranquero <lekktu@gmail.com>
17551
17552 * w32.c (init_environment): Fix tiny memory leak.
17553 (w32_get_resource): Remove unused variable `ok'.
17554
175552007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
17556
17557 Make `window-system' into a keyboard-local variable (rather than
17558 frame-local as done originally by multi-tty).
17559
17560 * keyboard.h (struct kboard): Add Vwindow_system.
17561 * keyboard.c (init_kboard): Set a default for Vwindow_system.
17562 (mark_kboards): Mark Vwindow_system.
17563
17564 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
17565 (init_display): Don't set the obsolete `window-system' frame-param.
17566
17567 * xterm.c (x_term_init):
17568 * w32term.c (w32_create_terminal):
17569 * term.c (init_tty): Set Vwindow_system.
17570 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
17571 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
17572
17573 * xfns.c (Fx_create_frame, x_create_tip_frame):
17574 * w32fns.c (Fx_create_frame, x_create_tip_frame):
17575 * macfns.c (Fx_create_frame):
17576 Don't set the obsolete `window-system' frame-param.
17577
17578 * frame.h (Qwindow_system): Remove.
17579 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
17580 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
17581
175822007-10-24 Richard Stallman <rms@gnu.org>
17583
17584 * frame.c (x_figure_window_size): For fullscreen case,
17585 set USPosition | PPosition without clobbering rest of window_prompting.
17586
17587 * keyboard.c (Fcurrent_idle_time): Doc fix.
17588
17589 * print.c (Fwith_output_to_temp_buffer): Doc fix.
17590
175912007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
17592
17593 * process.c (unwind_request_sigio): Only define if __ultrix__.
17594
17595 * callproc.c (child_setup): Remove spurious *.
17596
17597 * lisp.h (Fget_text_property): Declare.
17598 (have_menus_p): Declare it here rather than in sys-dep header files.
17599 * macterm.h (have_menus_p):
17600 * msdos.h (have_menus_p):
17601 * xterm.h (have_menus_p): Remove.
17602
17603 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
17604 (Fmake_variable_frame_local): Just check the variable's const-ness
17605 rather than checking nil or t.
17606
176072007-10-22 Jason Rumney <jasonr@gnu.org>
17608
17609 * w32fns.c: Include math.h.
17610 (w32_abort): Declaration moved to nt/config.nt.
17611
17612 * s/ms-w32.h (HAVE_STDLIB_H): Define.
17613 (abort): Redefinition moved to nt/config.nt.
17614
17615 * m/windowsnt.h: Remove.
17616
176172007-10-22 Juanma Barranquero <lekktu@gmail.com>
17618
17619 * emacs.c (Fdump_emacs): Fix typo in message.
17620 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
17621 <installation-directory>: Reflow docstring.
17622
176232007-10-22 Juri Linkov <juri@jurta.org>
17624
17625 * minibuf.c: Allow minibuffer default to be a list of default values.
17626 With empty input use the first element of this list as returned default.
17627 (string_to_object)
17628 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
17629 (read_minibuf): If defalt is cons, set histstring to its car.
17630 (Fread_string): If default_value is cons, set val to its car.
17631 (Fread_buffer): If def is cons, use its car.
17632 (Fcompleting_read): If defalt is cons, set val to its car.
17633
176342007-10-21 Michael Albinus <michael.albinus@gmx.de>
17635
17636 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
17637
176382007-10-20 Juanma Barranquero <lekktu@gmail.com>
17639
17640 * doc.c (Fdocumentation): Check for advice in all cases.
17641
176422007-10-19 Chong Yidong <cyd@stupidchicken.com>
17643
17644 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
17645
176462007-10-19 Richard Stallman <rms@gnu.org>
17647
17648 * doc.c (Fdocumentation): Check for and handle an advised function.
17649
176502007-10-19 Juanma Barranquero <lekktu@gmail.com>
17651
17652 * process.c (Fset_process_filter): Doc fix.
17653
176542007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
17655
17656 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
17657 which caused key-translation-map to applied repeatedly (thus breaking
17658 double-mode).
17659
176602007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17661
17662 * xselect.c (x_own_selection, x_handle_selection_clear)
17663 (x_clear_frame_selections):
17664 * w32menu.c (list_of_panes, list_of_items):
17665 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
17666 * textprop.c (validate_plist, interval_has_all_properties)
17667 (interval_has_some_properties, interval_has_some_properties_list)
17668 (add_properties, text_property_list):
17669 * process.c (Fget_buffer_process, list_processes_1, status_notify):
17670 * minibuf.c (Fassoc_string):
17671 * macselect.c (x_own_selection, x_clear_frame_selections)
17672 (Fx_disown_selection_internal):
17673 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
17674 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
17675
176762007-10-17 Chong Yidong <cyd@stupidchicken.com>
17677
17678 * process.c: Link to libs for calling res_init() if available.
17679 (Fmake_network_process): Call res_init() before getaddrinfo or
17680 gethostbyname, if possible.
17681
176822007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17683
17684 * lread.c (read1): Set pvectype for char_tables.
17685
17686 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
17687 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
17688 Add type checks.
17689 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
17690
17691 * alloc.c (free_misc): Use XMISCTYPE.
17692 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
17693
176942007-10-17 Glenn Morris <rgm@gnu.org>
17695
17696 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
17697 (syms_of_minibuf): Add Qcompletion_ignore_case.
17698 * dired.c (Qcompletion_ignore_case): Change to external.
17699 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
17700 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
17701 (Fread_file_name): Use it rather than intern'ing.
17702
17703 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
17704 (Fread_coding_system): Ignore case of user input.
17705
177062007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17707
17708 * xdisp.c (handle_display_prop): Ignore display specs after
17709 replacing one when string text is being replaced.
17710 (handle_single_display_spec): Pretend as if characters with display
17711 property haven't been consumed only when buffer text is being replaced.
17712
177132007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
17714
17715 * xfns.c (Fx_create_frame, Fx_display_list):
17716 * window.c (window_fixed_size_p, enlarge_window)
17717 (shrink_window_lowest_first):
17718 * macterm.c (init_font_name_table):
17719 * macfns.c (Fx_create_frame, Fx_display_list):
17720 * lread.c (close_load_descs):
17721 * keyboard.c (read_char_x_menu_prompt):
17722 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
17723 * coding.c (code_convert_region_unwind): Test the type of an object
17724 rather than just !NILP before extracting data from it.
17725
17726 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
17727
17728 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
17729 (XMISCANY): New macro.
17730 (XMISCTYPE): Use it.
17731 (struct Lisp_Misc_Any): New type.
17732 (union Lisp_Misc): Use it.
17733 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
17734 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
17735 (find_symbol_value, set_internal, default_value, Fset_default)
17736 (Fmake_variable_buffer_local, Fmake_local_variable)
17737 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
17738 (Flocal_variable_if_set_p, Fvariable_binding_locus):
17739 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
17740 * alloc.c (allocate_buffer): Set the size and tag.
17741 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
17742 Use XMISCANY.
17743 (die): Follow the GNU convention for error messages.
17744 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
17745 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
17746 tag any more.
17747 (set_buffer_internal_1):
17748 * frame.c (store_frame_param):
17749 * eval.c (specbind):
17750 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
17751
17752 * doc.c (Fsnarf_documentation): Simplify.
17753
177542007-10-14 Juanma Barranquero <lekktu@gmail.com>
17755
17756 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
17757 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
17758
177592007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
17760
17761 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
17762
177632007-10-14 Juanma Barranquero <lekktu@gmail.com>
17764
17765 * eval.c (do_autoload): Don't save autoloads.
17766
17767 * data.c (Ffset): Save autoload of the function being set.
17768
177692007-10-07 John Paul Wallington <jpw@pobox.com>
17770
17771 * xfns.c (x_create_tip_frame): Set the `display-type' frame
17772 parameter before setting up faces.
17773
177742007-10-13 Eli Zaretskii <eliz@gnu.org>
17775
17776 * ccl.c (Fregister_code_conversion_map):
17777 * keyboard.c (append_tool_bar_item): Reformat last change.
17778
17779 * lisp.h (eabs): Rename from `abs'. All callers changed.
17780
177812007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
17782
17783 * buffer.c (add_overlay_mod_hooklist):
17784 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
17785 * fontset.c (make_fontset):
17786 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
17787 (append_tool_bar_item):
17788 * macmenu.c (grow_menu_items):
17789 * w32menu.c (grow_menu_items):
17790 * xmenu.c (grow_menu_items): Use larger_vector.
17791
177922007-10-13 Eli Zaretskii <eliz@gnu.org>
17793
17794 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
17795 selected frame'' on MSDOS).
17796
177972007-10-12 Martin Rudalics <rudalics@gmx.at>
17798
17799 * frame.c (Qexplicit_name): New variable.
17800 (x_report_frame_params): Report it in parameter alist.
17801 (syms_of_frame): Intern and staticpro it.
17802
178032007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
17804
17805 * macfns.c (x_create_tip_frame): Set terminal for frame.
17806
178072007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
17808
17809 * frame.c (Qenvironment): Remove.
17810 (syms_of_frame) <Qenvironment>: Don't initialize.
17811 (Fdelete_frame): Don't treat the `environment' param specially.
17812 * frame.h (Qenvironment): Don't declare.
17813 * callproc.c (set_initial_environment): Don't set unused frame param.
17814
17815 * frame.c (Fframe_with_environment): Remove.
17816 (syms_of_frame) <Sframe_with_environment>: Don't declare.
17817
17818 * lisp.h (Fframe_with_environment): Don't declare.
17819
178202007-10-10 Juanma Barranquero <lekktu@gmail.com>
17821
17822 * indent.c (indent_tabs_mode, last_known_column)
17823 (last_known_column_modified): Make static.
17824 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
17825
178262007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
17827
17828 * puresize.h (BASE_PURESIZE): Increase to 1170000.
17829
178302007-10-09 Jason Rumney <jasonr@gnu.org>
17831
17832 * w32term.c (x_set_window_size): Disable code that attempts to tell
17833 Lisp code about a size change before it actually happens.
17834
178352007-10-09 Richard Stallman <rms@gnu.org>
17836
17837 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
17838 return HANDLED_RETURN.
17839
178402007-10-08 Martin Rudalics <rudalics@gmx.at>
17841
17842 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
17843 when there's an unread command event.
17844
17845 * frame.c (focus_follows_mouse): Move here from frame.el to allow
17846 window autoselection act appropriately when leaving selected frame.
17847 (syms_of_frame): Initialize focus_follows_mouse.
17848 * frame.h (focus_follows_mouse): Extern it.
17849 * macterm.c (XTread_socket): When focus_follows_mouse is nil
17850 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
17851 * msdos.c (dos_rawgetc): Likewise.
17852 * w32term.c (w32_read_socket): Likewise.
17853 * xterm.c (handle_one_xevent): Likewise.
17854 * xdisp.c (syms_of_xdisp): In doc-string of
17855 mouse-autoselect-window mention focus-follows-mouse.
17856
178572007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17858
17859 * macterm.c (mac_load_query_font): Fix missing return value.
17860 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
17861 Add BLOCK_INPUT.
17862
178632007-10-08 Richard Stallman <rms@gnu.org>
17864
17865 * xdisp.c (get_window_cursor_type): Implement documented behavior
17866 for cursor-in-non-selected-windows = t.
17867
178682007-10-08 Jason Rumney <jasonr@gnu.org>
17869
17870 * w32.c (w32_get_resource): Always close registry keys.
17871
178722007-10-08 Jason Rumney <jasonr@gnu.org>
17873
17874 * makefile.w32-in (LIBS): Add COMCTL32.
17875
17876 * w32fns.c (globals_of_w32fns): Init common controls.
17877
178782007-10-08 Richard Stallman <rms@gnu.org>
17879
17880 * image.c (our_memory_buffer): Rename from omfib_buffer.
17881
178822007-10-08 Richard Stallman <rms@gnu.org>
17883
17884 * buffer.c (Foverlays_at): Doc fix.
17885
178862007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
17887
17888 * fns.c (Fplist_put): Preserve uneven tail data.
17889
178902007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
17891
17892 * termhooks.h (enum event_kind): Remove trailing comma.
17893
17894 * frame.h (enum): Remove trailing comma.
17895
178962007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
17897
17898 * w32proc.c (delete_child): Don't terminate threads of zombies.
17899
179002007-10-08 Martin Rudalics <rudalics@gmx.at>
17901
17902 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
17903
17904 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
17905 last-repeatable-command.
17906 (init_kboard): Initialize Vlast_repeatable_command.
17907 (command_loop_1): Set it to real_this_command unless that was
17908 bound to an input event.
17909 (mark_kboards): Mark it.
17910
179112007-10-08 Richard Stallman <rms@gnu.org>
17912
17913 * eval.c (condition-case): Doc fix.
17914
179152007-10-08 Masatake YAMATO <jet@gyve.org>
17916
17917 * xfaces.c (tty_supports_face_attributes_p): Fix code
17918 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
17919 was copied and not edited.
17920
179212007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
17922
17923 Add new `input-decode-map' keymap and use it for terminal
17924 escape sequences.
17925 * keyboard.h (struct kboard): Add Vinput_decode_map.
17926 Remove Vlocal_key_translation_map.
17927 * keyboard.c (read_key_sequence): Add support for input-decode-map.
17928 (init_kboard): Init input-decode-map.
17929 Replace local-key-translation-map back with key-translation-map.
17930 (syms_of_keyboard): Declare input-decode-map.
17931 Remove local-key-translation-map. Update docstrings.
17932 (mark_kboards): Mark Vinput_decode_map.
17933 Don't mark Vlocal_key_translation_map.
17934 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
17935 Replace local-key-translation-map back with key-translation-map.
17936 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
17937 Bind in input-decode-map rather than function-key-map.
17938
17939 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
17940 This was made redundant by the previous introduction of XSETPVECTYPE.
17941
179422007-10-09 Richard Stallman <rms@gnu.org>
17943
17944 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
17945
179462007-09-29 Richard Stallman <rms@gnu.org>
17947
17948 * eval.c (internal_condition_case_2, internal_condition_case_1)
17949 (internal_condition_case): Reenable abort if x_catching_errors ()
17950 to see if that really happens and why.
17951
179522007-10-06 Andreas Schwab <schwab@suse.de>
17953
17954 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
17955
179562007-10-04 Juanma Barranquero <lekktu@gmail.com>
17957
17958 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
17959
179602007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
17961
17962 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
17963
179642007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
17965
17966 * window.h (struct window):
17967 * window.c (struct save_window_data, struct saved_window):
17968 * termhooks.h (struct terminal):
17969 * process.h (struct Lisp_Process):
17970 * frame.h (struct frame):
17971 * buffer.h (struct buffer):
17972 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
17973 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
17974 The size field of (pseudo)vectors is now unsigned.
17975 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
17976
17977 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
17978 Turn `count' into an integer.
17979
17980 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
17981 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
17982 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
17983 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
17984 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
17985
17986 * alloc.c (allocate_pseudovector): New fun.
17987 (ALLOCATE_PSEUDOVECTOR): New macro.
17988 (allocate_window, allocate_terminal, allocate_frame)
17989 (allocate_process): Use it.
17990 (mark_vectorlike): New function.
17991 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
17992 (mark_terminals): Use it.
17993 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
17994 (Fmake_byte_code): Use XSETPVECTYPE.
17995
17996 * frame.c (Fframe_parameters): Minor simplification.
17997
17998 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
17999
18000 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
18001
18002 * buffer.c (Fget_buffer_create, init_buffer_once):
18003 * lread.c (defsubr):
18004 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
18005
18006 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
18007 defined differently in the m/*.h files.
18008 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
18009 (XSETPVECTYPE): New macro.
18010 (XSETPSEUDOVECTOR): Use it.
18011
18012 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
18013 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
18014
18015 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
18016 * lread.c (defvar_per_buffer):
18017 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
18018
18019 * window.c (candidate_window_p): Only consider as visible frames that
18020 are on the same terminal.
18021
18022 * m/ibms390x.h (MARKBIT): Remove unused macro.
18023
180242007-10-01 Juanma Barranquero <lekktu@gmail.com>
18025
18026 * lread.c (Fload): Fix typo in docstring.
18027
180282007-10-01 Michaël Cadilhac <michael@cadilhac.name>
18029
18030 * floatfns.c (Fexpt): Manually check for overflows, so that a power
18031 of a non-zero value can't yield zero.
18032
180332007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
18034
18035 * term.c (term_clear_mouse_face, term_mouse_highlight)
18036 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
18037
18038 * print.c (safe_debug_print): Use XHASH.
18039
18040 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
18041 Lisp elements such as tags.
18042 (XHASH): New macro.
18043 (EQ): Use it.
18044 (SREF, SSET, STRING_COPYIN): Use SDATA.
18045 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
18046
18047 * alloc.c (mark_terminal): Remove left-over declaration.
18048 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
18049 (allocate_vectorlike): Remove type argument. Adjust callers.
18050 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
18051 Only handle the one remaining MEM_TYPE_VECTORLIKE.
18052
18053 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
18054 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
18055 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
18056 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
18057 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
18058 Use them.
18059
18060 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
18061 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
18062 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
18063
180642007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
18065
18066 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
18067 loaded by default.
18068
180692007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
18070
18071 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
18072 on this tty.
18073 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
18074
18075 * term.c (mouse_face_window): Rename from Qmouse_face_window.
18076 Update all users.
18077 (handle_one_term_event): Use Gpm_DrawPointer.
18078 (Fgpm_mouse_start): Rename from Fterm_open_connection.
18079 Signal errors instead of returning nil. Always return nil.
18080 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
18081 Make it a noop if gpm-mouse was not activated.
18082 (syms_of_term): Update names.
18083
180842007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
18085
18086 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
18087 (init_sys_modes): Check that gpm_tty is the current tty.
18088
18089 * alloc.c (allocate_terminal): Set the vector size to only count the
18090 lisp fields. Initialize those to nil.
18091 (mark_object): Don't treat terminals specially.
18092 (mark_terminal): Remove.
18093 (mark_terminals): Use mark_object instead.
18094
18095 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
18096 the GC to the beginning.
18097
18098 * indent.h:
18099 * indent.c: Use EMACS_INT for ints coming from Elisp data.
18100
18101 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
18102
181032007-09-25 Jason Rumney <jasonr@gnu.org>
18104
18105 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
18106
18107 * w32console.c (create_w32cons_output): Remove.
18108
18109 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
18110
18111 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
18112 (reset_sys_modes): Use reset_terminal_modes_hook.
18113
181142007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
18115
18116 * eval.c (do_autoload): Don't output any message.
18117
181182007-09-24 Juri Linkov <juri@jurta.org>
18119
18120 * emacs.c (standard_args): Change priority of "--no-splash"
18121 from 40 to 3. Add "--no-desktop" with the same priority.
18122
181232007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
18124
18125 * alloc.c (gc_sweep): Check cons cell mark bits word by word
18126 and optimize the case where they are all 1.
18127
181282007-09-23 Johannes Weiner <hannes@saeurebad.de>
18129
18130 * lisp.h (abs): Define if not defined.
18131 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
18132 Don't define `abs', since it's defined in lisp.h.
18133
181342007-09-22 Eli Zaretskii <eliz@gnu.org>
18135
18136 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
18137 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
18138 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
18139 (init_tty): Use DEV_TTY instead of "/dev/tty".
18140 [WINDOWSNT]: No need to protect from NAME arg being null.
18141
181422007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
18143
18144 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
18145 up the tty state.
18146
181472007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18148
18149 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
18150 (gpm_tty): Change its type.
18151 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
18152 (gpm_tty): Change its type and initialize it.
18153 (Fterm_open_connection): Check the frame is indeed a tty.
18154 Use the new gpm_tty.
18155 (Fterm_close_connection): Use the new gpm_tty.
18156 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
18157 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
18158
181592007-09-21 Juanma Barranquero <lekktu@gmail.com>
18160
18161 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
18162 underline_color, to draw strike-through.
18163
181642007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18165
18166 * lisp.h (allocate_terminal): Declare.
18167
18168 * window.c (candidate_window_p): Consider frames that are being placed
18169 by the user as somewhere between visible and iconified.
18170 (window_loop): Prefer windows on the current frame.
18171 (Fselect_window): Move the use of select-frame to the beginning so we
18172 can just delegate all the work (it'll call us back anyway).
18173
18174 * frame.c (Qdisplay_environment_variable):
18175 * frame.h (Qdisplay_environment_variable): Delete.
18176
18177 * .gdbinit (xbacktrace): Print the arg's address rather than the value
18178 of the first arg, since that value may be a union.
18179
18180 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
18181 parameter rather than Qdisplay_environment_variable. If all else
18182 fails, look for DISPLAY in initial-environment.
18183
181842007-09-21 Glenn Morris <rgm@gnu.org>
18185
18186 * Makefile.in (emacstool): Remove target.
18187 (lisp, shortlisp): Remove termdev.elc.
18188
181892007-09-21 Markus Triska <markus.triska@gmx.at>
18190
18191 * xterm.c (x_delete_display): Compile session management conditionally.
18192
181932007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
18194
18195 * callproc.c (getenv_internal_1): New function.
18196 (getenv_internal): Use it.
18197 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
18198
18199 * terminal.c (get_terminal): Don't accept ints to represent terminals.
18200 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
18201 (Fset_terminal_parameter): Work with dead terminals as well.
18202 (Fmodify_terminal_parameters): Remove.
18203
18204 * terminal.c (get_terminal): Handle terminals.
18205 Make sure the terminal returned is live.
18206 (create_terminal): Use allocate_terminal.
18207 (mark_terminals): Move to alloc.c.
18208 (delete_terminal): Use terminal->name as liveness status.
18209 NULL out fields after freeing their contents.
18210 Don't deallocate the object.
18211 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
18212 rather than an int.
18213 (Fterminal_live_p): Accept non-integer arguments.
18214 (Fterminal_list): Return terminal objects rather than an ints.
18215
18216 * alloc.c (enum mem_type): New member for `terminal' objects.
18217 (allocate_terminal): New function.
18218 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
18219 Handle terminals.
18220 (mark_terminal): New fun.
18221 (mark_terminals): Move from terminal.c.
18222
18223 * term.c (get_tty_terminal): Don't treat output_initial specially.
18224 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
18225 (delete_tty): Use terminal->name as liveness status.
18226
18227 * termhooks.h (struct terminal): Make it into a pseudovector.
18228 Remove `deleted' replaced by checking `name's nullness.
18229
18230 * print.c (print_object): Handle terminals.
18231
18232 * lisp.h (enum pvec_type): New `terminal' pseudovector.
18233 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
18234
18235 * frame.c (make_terminal_frame):
18236 * keyboard.c (tty_read_avail_input):
18237 * w32term.c (x_delete_terminal):
18238 * xfns.c (Fx_create_frame, x_create_tip_frame):
18239 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
18240
182412007-09-20 Glenn Morris <rgm@gnu.org>
18242
18243 * process.c (Fmake_network_process): Doc fix.
18244
182452007-09-19 Jason Rumney <jasonr@gnu.org>
18246
18247 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
18248
182492007-09-19 Michaël Cadilhac <michael@cadilhac.name>
18250
18251 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
18252 Fix a C warning regarding variable constness.
18253
18254 * xterm.c (handle_one_xevent): Fix a C warning.
18255
182562007-09-18 Jason Rumney <jasonr@gnu.org>
18257
18258 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
18259
182602007-09-17 Jan Djärv <jan.h.d@swipnet.se>
18261
18262 * gtkutil.c (gdpy_def): New variable.
18263 (xg_initialize): Initialize gdpy_def.
18264 (xg_display_close): If no other display exists, set gdpy_def to a
18265 new connection.
18266
182672007-09-16 Jan Djärv <jan.h.d@swipnet.se>
18268
18269 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
18270 when we have no file name for the icon.
18271 (xg_tool_bar_expose_callback): Remove.
18272 (xg_create_tool_bar): Don't connect expose signal to
18273 xg_tool_bar_expose_callback.
18274 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
18275
182762007-09-16 Andreas Schwab <schwab@suse.de>
18277
18278 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
18279 values instead of zapping them.
18280
182812007-09-14 Glenn Morris <rgm@gnu.org>
18282
18283 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
18284 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
18285 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
18286 scope and rename to omfib_buffer for clarity.
18287 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
18288
182892007-09-14 Kenichi Handa <handa@m17n.org>
18290
18291 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
18292
182932007-09-13 Jason Rumney <jasonr@gnu.org>
18294
18295 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
18296
18297 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
18298
18299 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
18300 (mac_term_init): Call here instead, passing rif.
18301
183022007-09-13 Glenn Morris <rgm@gnu.org>
18303
18304 * s/hpux.h: No longer define `static' as nothing.
18305
183062007-09-13 Johan Bockgård <bojohan@gnu.org>
18307
18308 * callint.c (Fcall_interactively): Remove unused var `fun'.
18309
183102007-09-12 Romain Francoise <romain@orebokech.com>
18311
18312 * window.c (prefer_window_split_horizontally, display_buffer):
18313 Revert 2007-09-08 change.
18314
183152007-09-12 Glenn Morris <rgm@gnu.org>
18316
18317 * alloca.c: Remove file.
18318 * Makefile.in (alloca): Do not undef.
18319 (allocaobj, alloca.o): Remove.
18320 (otherobj): Remove allocaobj.
18321 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
18322 * regex.c (C_ALLOCA): Remove all references and code that was only
18323 used when this was defined.
18324 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
18325 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
18326 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
18327
18328 * Makefile.in (SOURCES, unlock, relock): Delete.
18329
18330 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
18331 (menu_grab_callback): All uses changed.
18332
18333 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
18334 (x_reply_selection_request): All uses changed.
18335
183362007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
18337
18338 * lread.c (load_warn_old_style_backquotes): Change message to look
18339 better when it appears in the middle of byte-compiler messages.
18340
183412007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
18342
18343 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
18344
18345 * xterm.c (x_create_terminal): Add comment.
18346
18347 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
18348
183492007-09-10 Richard Stallman <rms@gnu.org>
18350
18351 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
18352
183532007-09-10 Michaël Cadilhac <michael@cadilhac.name>
18354
18355 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
18356 (DEFUN): Document `intspec', use it instead of `prompt'.
18357
18358 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
18359
18360 * data.c (Finteractive_form): If the interactive specification starts
18361 with a `(', use it as a Lisp form.
18362
18363 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
18364 name and file modes.
18365
18366 * callint.c (Fcall_interactively): Comment fixes.
18367
183682007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
18369
18370 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
18371 and compiled functions.
18372
183732007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
18374
18375 * window.c (prefer_window_split_horizontally): New variable.
18376 (display_buffer): Consider splitting window horizontally depending
18377 on prefer_window_split_horizontally.
18378
183792007-09-08 Eli Zaretskii <eliz@gnu.org>
18380
18381 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
18382
183832007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18384
18385 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
18386
18387 * frame.c (x_set_frame_parameters): Check number is positive before
18388 using XFASTINT.
18389
18390 * window.c (freeze_window_start): Don't presume selected_window holds
18391 a window object.
18392 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
18393
183942007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
18395
18396 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
18397
183982007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18399
18400 * window.c (Vsplit_window_preferred_function): New var.
18401 (Fdisplay_buffer): Use it.
18402 (syms_of_window): Export, and initialize it.
18403
184042007-09-06 Pixel <pixel@mandriva.com> (tiny change)
18405
18406 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
18407
184082007-09-06 Glenn Morris <rgm@gnu.org>
18409
18410 * gtkutil.c (menu_grab_callback) <cnt>:
18411 * xselect.c (x_reply_selection_request) <cnt>: Move static
18412 variable to file scope.
18413
184142007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
18415
18416 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
18417 consistent values of selected_frame and selected_window.
18418
184192007-09-04 Jason Rumney <jasonr@gnu.org>
18420
18421 * w32console.c (initialize_w32_display): Zero unused hooks.
18422
184232007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18424
18425 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
18426 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
18427
184282007-09-04 Jason Rumney <jasonr@gnu.org>
18429
18430 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
18431 in w32console.c. Set up input. Remove XXX comments that have been
18432 confirmed as correct.
18433
18434 * s/ms-w32.h (MULTI_KBOARD): Define.
18435
18436 * w32console.c (one_and_only_w32cons): Remove.
18437 (initialize_w32_display): Take terminal argument.
18438
18439 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
18440 initialize_w32_display.
18441 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
18442
18443 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
18444
18445 * keyboard.c (discard_mouse_events): Discard it.
18446 (make_lispy_event): Translate it to a lisp event.
18447 (lispy_wheel_names): Add wheel-left and right events.
18448 (syms_of_keyboard): Enlarge wheel_syms.
18449
18450 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
18451 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
18452
18453 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
18454
18455 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
18456 from WM_MOUSEHWHEEL.
18457 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
18458
18459 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
18460 terminal.
18461
18462 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
18463 keyboard for the terminal.
18464
184652007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18466
18467 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
18468 (Vresume_tty_hook): Rename from Vresume_tty_functions.
18469 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
18470 and resume-tty-function to resume-tty-hook.
18471 (Fsuspend_tty, Fresume_tty): Use new names.
18472
184732007-09-02 Jan Djärv <jan.h.d@swipnet.se>
18474
18475 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
18476 if it starts with "n:".
18477
184782007-08-31 Jan Djärv <jan.h.d@swipnet.se>
18479
18480 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
18481
184822007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
18483
18484 * frame.h:
18485 * frame.c (Qterm_environment_variable): Remove.
18486 (syms_of_frame): Don't init and staticpro it.
18487
18488 * callproc.c (getenv_internal): Remove special case for $TERM.
18489
18490 * callproc.c (Vinitial_environment): New variable.
18491 (set_initial_environment): Initialize it.
18492 (syms_of_callproc): Declare it.
18493 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
18494 TERM under which a process runs is never related to the TERM in which
18495 Emacs is running.
18496
184972007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18498
18499 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
18500 * s/darwin.h: ... do it here.
18501
185022007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
18503
18504 * lisp.h (set_initial_environment): Rename from set_global_environment.
18505
18506 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
18507 removed by mistake on the multi-tty branch.
18508
18509 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
18510 (Fmodify_frame_parameters): Return a value.
18511
18512 * image.c (png_load): Comment-out var only used in commented-out code.
18513
18514 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
18515 before passing it to mark_object.
18516
18517 * xfaces.c (internal_resolve_face_name): Return a value.
18518 (internal_resolve_face_name, resolve_face_name_error): Comment out.
18519
18520 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
18521 (x_icon): Comment-out var only used in commented-out code.
18522
185232007-08-29 Romain Francoise <romain@orebokech.com>
18524
18525 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
18526 QUIT hasn't been provided.
18527
185282007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18529
18530 * callproc.c (child_setup, getenv_internal): Use the
18531 display-environment-variable and term-environment-variable frame params.
18532 (set_initial_environment): Initialise Vprocess_environment.
18533
18534 * config.in: Disable multi-keyboard support on a mac.
18535
18536 * frame.c (Qterm_environment_variable)
18537 (Qdisplay_environment_variable): New variables.
18538 (syms_of_frame): Intern and staticpro them.
18539 (Fmake_terminal_frame): Disable output method test.
18540
18541 * frame.h: Declare them here.
18542
18543 * macfns.c (x_set_mouse_color): Get rif from the frame.
18544 (x_set_tool_bar_lines): Don't use updating_frame.
18545 (mac_window): Add 2 new parameters for consistency with other systems.
18546 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
18547 frame parameters following what is done in X11 and w32. Don't use
18548 FRAME_MAC_DISPLAY_INFO.
18549 (Fx_open_connection, start_hourglass): Remove window-system check.
18550 (x_create_tip_frame): Get the keyboard from the terminal.
18551
18552 * macmenu.c: Reorder includes.
18553 (Fx_popup_menu): Use terminal specific mouse_position_hook.
18554
18555 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
18556 terminal parameter.
18557 (x_clear_frame): Add a frame parameter.
18558 (note_mouse_movement): Get rif from the frame.
18559 (mac_term_init): Initialize the terminal.
18560 (mac_initialize): Make static and move terminal initialization ...
18561 (mac_create_terminal): ... to this new function.
18562
18563 * macterm.h (struct mac_display_info): Add terminal.
18564 (mac_initialize): Delete declaration.
18565
18566 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
18567
18568 * sysdep.c: Comment out text after #endif.
18569
18570 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
18571 is defined. Better initialize ttys in windows. Use terminal
18572 specific mouse_position_hook.
18573
18574 * termhooks.h (union display_info): Add mac_display_info.
18575
18576 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
18577 Set the default minibuffer frame, window_system and the rest of the
18578 frame parameters following what is done in X11.
18579
18580 * w32term.c (w32_initialize): Make static.
18581
18582 * xselect.c (x_handle_selection_clear): Only access
18583 terminal->kboard when MULTI_KBOARD is defined.
18584
18585 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
18586 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
18587
185882007-08-29 Jason Rumney <jasonr@gnu.org>
18589
18590 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
18591 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
18592
18593 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
18594 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
18595
18596 * keyboard.c (restore_kboard_configuration): Only define when
18597 MULTI_KBOARD defined.
18598
18599 * makefile.w32-in: Update dependancies from Makefile.in.
18600 (OBJ1): Add terminal.$(O)
18601
18602 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
18603 Don't define function body.
18604 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
18605
18606 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
18607
18608 * w32.c (request_sigio, unrequest_sigio): Remove.
18609
18610 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
18611 (w32con_clear_frame, w32con_clear_end_of_line)
18612 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
18613 (w32con_delete_glyphs, w32con_set_terminal_window)
18614 (scroll_line, w32_sys_ring_bell): Add frame arg.
18615 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
18616 Add terminal arg.
18617 (PICK_FRAME): Remove.
18618 (w32con_write_glyphs): Use frame specific terminal coding.
18619 (one_and_only_w32cons): New global variable.
18620 (initialize_w32_display): Use it for storing hooks.
18621 (create_w32cons_output): New function.
18622
18623 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
18624 arg a frame.
18625
18626 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
18627 Set window_system.
18628 (x_set_tool_bar_lines): Don't use updating_frame.
18629 (Fx_create_frame): Set terminal and ref count.
18630 (Fx_open_connection): Remove window-system check.
18631
18632 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
18633
18634 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
18635 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
18636 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
18637 Add frame arg.
18638 (x_delete_terminal, w32_create_terminal): New functions.
18639 (w32_term_init): Create a terminal.
18640 (w32_initialize): Move terminal specific initialization to
18641 w32_create_terminal.
18642
18643 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
18644 (w32_clear_rect, w32_clear_area): Use background from frame.
18645 (w32_display_info): Add terminal.
18646 (w32_sys_ring_bell, x_delete_display): Declare here.
18647
18648 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
18649
18650 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
18651
186522007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
18653
18654 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
18655 Fix get_named_tty calls for the controlling tty.
18656
186572007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
18658
18659 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
18660
186612007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
18662
18663 * term.c (tty_insert_glyphs): Add missing first parameter.
18664
186652007-08-29 Károly Lőrentey <karoly@lorentey.hu>
18666
18667 * buffer.c (Fbuffer_list, Fbury_buffer):
18668 Take frame->buried_buffer_list into account.
18669
18670 * cm.c (current_tty): New variable, for cmputc().
18671 (cmputc): Use it.
18672 (cmcheckmagic): Add tty parameter, look up terminal streams there.
18673 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
18674 (cmgoto): Add tty parameter. Pass it on to calccost().
18675 Use emacs_tputs() instead of tputs().
18676
18677 * cm.h (emacs_tputs): New macro to set current_tty, and then call
18678 tputs().
18679 (current_tty): New variable, for cmputc().
18680 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
18681
18682 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
18683 (internal_condition_case, internal_condition_case_1)
18684 (internal_condition_case_2): Don't abort when x_catching_errors.
18685
18686 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
18687 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
18688 prevent crashes caused by bogus longjmps in read_char.
18689
18690 * keymap.h (Fset_keymap_parent): Add EXFUN.
18691
18692 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
18693 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18694 Remove redundant definition.
18695
18696 * macfns.c (x_set_mouse_color, x_make_gc):
18697 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18698
18699 * w32term.c (x_free_frame_resources):
18700 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18701 (w32_initialize): Use the accessor macros for terminal characteristics.
18702
18703 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
18704 Use the accessor macros for terminal characteristics.
18705 * msdos.c (internal_terminal_init): Use the accessor macros for
18706 terminal characteristics.
18707 (ScreenVisualBell, internal_terminal_init):
18708 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18709
18710 * termopts.h (no_redraw_on_reenter): Declare.
18711
18712 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
18713 (mark_terminals, mark_ttys): Declare.
18714 (Fgarbage_collect): Call them.
18715 (mark_object): Mark buried_buffer_list.
18716
18717 * prefix-args.c: Include stdlib.h for exit.
18718
18719 * syssignal.h: Add comment.
18720
18721 * indent.c: Include stdio.h.
18722
18723 * window.h (Vinitial_window_system): Declare.
18724 (Vwindow_system): Delete declaration.
18725
18726 * fontset.c (Finternal_char_font): Use FRAME_RIF.
18727
18728 * image.c (lookup_image): Don't initialize `c' until the xasserts
18729 have been run.
18730
18731 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
18732 FRAME_FOREGROUND_PIXEL.
18733
18734 * print.c (print_preprocess): Don't lose print_depth levels while
18735 iterating.
18736
18737 * widget.c (update_from_various_frame_slots):
18738 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18739
18740 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
18741 frames.
18742 (window_internal_height): Remove bogus make_number call.
18743 (init_window_once): Call make_terminal_frame with two zero parameters.
18744
18745 * fileio.c (Fread_file_name): Update comment.
18746
18747 * callint.c (Fcall_interactively):
18748 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
18749 Make sure it is correctly unwound.
18750
18751 * xsmfns.c (x_session_close): New function.
18752
18753 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
18754 Delete declarations.
18755
18756 * xterm.h: Remove declaration for x_fully_uncatch_errors.
18757 (x_output): Remove background_pixel and foreground_pixel fields.
18758 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
18759 (x_delete_device, x_session_close): Declare.
18760
18761 * lread.c: Include setjmp.h. Update declaration of `read_char'.
18762 (read_filtered_event): Call `read_char' with a local
18763 `wrong_kboard_jmpbuf'.
18764
18765 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
18766 Don't call single_kboard_state. Use FRAME_RIF.
18767
18768 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
18769 systems.
18770
18771 * lisp.h (set_process_environment): Rename to `set_global_environment'.
18772 (Fframe_with_environment, Fset_input_meta_mode)
18773 (Fset_quit_char): EXFUN.
18774 (x_create_device, tty_output, terminal, tty_display_info): Declare.
18775 (init_sys_modes, reset_sys_modes): Update prototypes.
18776 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
18777
18778 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
18779 Vlocal_key_translation_map, and Vkeyboard_translate_table.
18780 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
18781 Delete declarations.
18782 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
18783 (temporarily_switch_to_single_kboard, tty_read_avail_input):
18784 New declarations.
18785
18786 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
18787 already does that during init_display(). Call syms_of_keymap
18788 before syms_of_keyboard. Call `syms_of_terminal'.
18789 Call set_initial_environment, not set_process_environment.
18790 (shut_down_emacs): Call reset_all_sys_modes() instead of
18791 reset_sys_modes().
18792
18793 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
18794 (internal_resolve_face_name, resolve_face_name_error): New functions.
18795 (resolve_face_name): Protect against loops and errors thrown by Fget.
18796 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
18797 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
18798
18799 * scroll.c: Replace CURTTY() with local variables throughout the
18800 file (where applicable).
18801 (calculate_scrolling, calculate_direct_scrolling)
18802 (scrolling_1, scroll_cost): Use the accessor macros for terminal
18803 characteristics.
18804
18805 * keymap.c (Vfunction_key_map): Remove.
18806 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
18807 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
18808 (Vkey_translation_map): Remove.
18809 (syms_of_keymap): Remove DEFVAR for key-translation-map.
18810 (Fdescribe_buffer_bindings)
18811 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
18812 Update for terminal-local key-translation-map.
18813
18814 * Makefile.in (callproc.o): Update dependencies.
18815 (lisp, shortlisp): Add termdev.elc.
18816 (obj): Add terminal.o.
18817 (terminal.o): Add dependencies.
18818 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
18819 (data.o, fns.o): Add termhooks.h dependency.
18820 (SOME_MACHINE_LISP): Add dnd.elc.
18821 (minibuf.o): Fix typo.
18822 Update dependencies.
18823
18824 * data.c (do_symval_forwarding, store_symval_forwarding)
18825 (find_symbol_value): Use the selected frame's keyboard, not
18826 current_kboard.
18827
18828 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
18829 Vwindow_system.
18830
18831 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
18832 Fmenu_bar_open.
18833 (syms_of_xmenu): Update defsubr.
18834 (mouse_position_for_popup, Fx_popup_menu)
18835 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
18836 (set_frame_menubar, free_frame_menubar)
b97439ce 18837 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
18838 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
18839 an X frame.
18840
18841 * xselect.c (x_own_selection): Abort if not an X frame.
18842 (some_frame_on_display): Check if it is an X frame.
18843 (x_handle_selection_clear): Deal with MULTI_KBOARD.
18844
18845 * coding.c: Include frame.h and termhooks.h.
18846 (terminal_coding, keyboard_coding): Delete.
18847 (Fset_terminal_coding_system_internal)
18848 (Fset_keyboard_coding_system_internal)
18849 (Fkeyboard_coding_system)
18850 (Fterminal_coding_system): Add a terminal parameter.
18851 Get terminal_coding from the terminal.
18852 (init_coding_once): Don't call setup_coding_system here.
18853
18854 * dispextern.h (set_scroll_region, turn_off_insert)
18855 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
18856 (tty_clear_end_of_line, tty_setup_colors)
18857 (delete_tty, updating_frame)
18858 (produce_special_glyphs, produce_glyphs, write_glyphs)
18859 (insert_glyphs): Remove.
18860 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
18861 (tty_turn_off_highlight, get_tty_size): Add declaration.
18862 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
18863
18864 * frame.h (enum output_method): Add output_initial.
18865 (struct x_output): Delete.
18866 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18867 Access foreground_pixel and background_pixel directly from the frame.
18868 (tty_display): Delete.
18869 (struct frame): Add buried_buffer_list, foreground_pixel,
18870 background_pixel and terminal. Delete kboard.
18871 (union output_data): Add tty.
18872 (FRAME_KBOARD): Get the kboard from the terminal.
18873 (FRAME_INITIAL_P): New macro.
18874 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
18875 (Qterm_environment_variable, Qdisplay_environment_variable)
18876 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
18877 New declarations.
18878
18879 * termchar.h (tty_output, tty_display_info): New structures.
18880 (tty_list): Declare.
18881 (FRAME_TTY, CURTTY): New macros.
18882 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
18883 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
18884 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
18885 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
18886
18887 * callproc.c: Include frame.h and termhooks.h, for terminal
18888 parameters.
18889 (add_env): New function.
18890 (child_setup): Use it.
18891 (child_setup, getenv_internal): Handle the new Vprocess_environment.
18892 (getenv_internal): Fix get_terminal_param call.
18893 (Fgetenv_internal, egetenv): Update doc.
18894 (syms_of_callproc): Initialize Vprocess_environment to nil.
18895 Register and initialize them. Remove obsolete defvars. Update doc
18896 strings.
18897 (child_setup): Handle Vlocal_environment_variables.
18898 (getenv_internal): Add terminal parameter.
18899 Handle Vlocal_environment_variables.
18900 (Fgetenv_internal): Add terminal parameter.
18901 (child_setup, getenv_internal, Fgetenv_internal): Store the local
18902 environment in a frame (not terminal) parameter. Update doc strings.
18903 (set_initial_environment): Rename from set_global_environment.
18904 Store Emacs environment in initial frame parameter.
18905
18906 * xdisp.c (redisplay_internal): Update references to
18907 `previous_terminal_frame'.
18908 (display_mode_line, Fformat_mode_line): Replace calls to
18909 `push_frame_kboard' with `push_kboard'.
18910 (get_glyph_string_clip_rects): Add extra parentheses and
18911 braces to prevent compiler warnings.
18912 (calc_pixel_width_or_height): Add xassert to check that the
18913 frame is alive. Don't call `lookup_image' on a termcap frame.
18914 (message2_nolog, message3_nolog, redisplay_internal)
18915 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
18916 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
18917 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
18918 (Fx_display_pixel_width, Fx_display_pixel_height)
18919 (Fx_display_planes, Fx_display_color_cells)
18920 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
18921 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
18922 (Fx_display_backing_store, Fx_display_visual_class)
18923 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
18924 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
18925
18926 * xfns.c (x_set_foreground_color x_set_background_color)
18927 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
18928 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18929 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
18930 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
18931 terminal that is being deleted.
18932 (Fx_create_frame): Use `store_frame_param' to set `window-system'
18933 frame parameter, and make sure it overrides any user-supplied setting.
18934 (Fx_close_connection, Fx_synchronize): Unify argument names with
18935 the rest of the DEFUNs.
18936
18937 * dispnew.c (Fsend_string_to_terminal): Update call to
18938 `get_tty_terminal'.
18939 (Fredraw_frame, Fsend_string_to_terminal)
18940 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
18941 FRAME_TERMCAP_P and FRAME_TTY.
18942 (window_change_signal): Don't believe width/height values that are
18943 impossibly small.
18944 (Vinitial_window_system): Rename from Vwindow_system.
18945 (termscript, Wcm, rif): Delete.
18946
18947 * termhooks.h (struct terminal): New struct containing the
18948 previously global text display hooks and new members NAME,
18949 DELETED and PARAM_ALIST.
18950 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
18951 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
18952 (FRAME_RIF): New macros.
18953 (get_terminal_param, get_device): New declarations.
18954 (termscript): Delete declaration.
18955
18956 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
18957 (XTflash, x_free_frame_resources, x_scroll_bar_create)
18958 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
18959 FRAME_FOREGROUND_PIXEL.
18960 (x_fully_uncatch_errors): Disable definition.
18961 (x_scroll_bar_expose): Fix reference to foreground pixel.
18962 (XTread_socket): Disable loop on all X displays.
18963 (x_delete_terminal): Don't set terminal->deleted and let
18964 delete_terminal delete the frames on the terminal.
18965 (x_delete_display): Doc update to reflect changes in
18966 delete_terminal.
18967 (x_display_info) <terminal>: Move member earlier in the struct.
18968 (deleting_tty): Remove old variable.
18969 (Fsuspend_tty): Call clear_tty_hooks.
18970 (Fresume_tty, init_tty): Call set_tty_hooks.
18971 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
18972 errors on X frames.
18973 (x_catch_errors_unwind): Abort if x_error_message is NULL.
18974 (handle_one_xevent): Initialize `f' to NULL.
18975 (x_delete_terminal, x_create_terminal): New functions.
18976 (XTset_terminal_modes, XTreset_terminal_modes)
18977 (XTread_socket, x_connection_closed, x_term_init)
18978 (x_term_init, x_delete_display): Add terminal parameter.
18979 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
18980 X connections.
18981
18982 * frame.c: Include termchar.h.
18983 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
18984 (Qwindow_system, Qenvironment, Qterm_environment_variable)
18985 (Qdisplay_environment_variable): New vars.
18986 (Fframep): Deal with output_initial.
18987 (Fframe-live-p): Doc fix.
18988 (Fwindow-system): New function.
18989 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
18990 (make_terminal_frame): Don't create frames on a terminal that is
18991 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18992 (store_frame_param): Check for found_for_frame before calling XFRAME.
18993 (Fmake_terminal_frame): Handle NULL tty names correctly.
18994 (syms_of_frame): Enhance doc string of `default-frame-alist'.
18995 (Fdelete_frame): Remove unused variable `count'. Don't allow other
18996 frames to refer to a deleted frame in their 'environment parameter.
18997 (Fframe_with_environment): New function.
18998 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
18999 (get_future_frame_param): New function.
19000 (Fmake_terminal_frame): Use it.
19001 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
19002
19003 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
19004 * sysdep.c (reset_sys_modes): Update for renames.
19005
19006 * keyboard.c (tty_read_avail_input): New function.
19007 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
19008 (syms_of_keyboard): Defsubr them.
19009 (Fset_input_meta_mode, Fset_quit_char): New functions.
19010 (Fset_input_mode): Split to above functions.
19011 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
19012 parameter. Use it in call to `read_char'.
19013 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
19014 Set wrong_kboard_jmpbuf correctly in recursive calls.
19015 Use current_kboard to access Vkeyboard_translate_table.
19016 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
19017 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
19018 Update longjmp invocations. Remember the original current_kboard,
19019 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
19020 changes it. Comment out unnecessary calls to
19021 `record_single_kboard_state' and `any_kboard_state'.
19022 Update recursive calls.
19023 (wrong_kboard_jmpbuf): Remove global variable.
19024 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
19025 Handle deleted interrupted_kboards correctly; that is a legal
19026 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
19027 and read_char calls. Abort if interrupted_kboard died in read_char.
19028 (any_kboard_state, single_kboard_state)
19029 (push_frame_kboard): Remove function.
19030 (pop_kboard): Switch out of single_kboard mode if the kboard has
19031 been deleted. Remove unused variable. Help debugging by not
19032 changing current_kboard unnecessarily. Set current_kboard to the
19033 kboard of the selected frame when the stored kboard object has
19034 been deleted before pop_kboard.
19035 (temporarily_switch_to_single_kboard): Change first parameter to a
19036 frame pointer. Throw an error when caller wants to change kboards
19037 while in single_kboard mode. Don't push_kboard if we weren't in
19038 single kboard state. Don't pop_kboard if we popped into any
19039 kboard state.
19040 (restore_kboard_configuration): Abort if pop_kboard changed the
19041 kboard in single_kboard mode. Call pop_kboard only after setting
19042 up single_kboard mode.
19043 (Frecursive_edit): Switch to single_kboard mode only in nested
19044 command loops.
19045 (cmd_error, command_loop, command_loop_1, timer_check):
19046 Comment out unnecessary call to `any_kboard_state' and
19047 `record_single_kboard_state'.
19048 (delete_kboard): Exit single_kboard mode if we have just deleted
19049 that kboard. Use FRAME_KBOARD.
19050 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
19051 `fatal_error_signal'.
19052 (record_single_kboard_state): Don't push_kboard if we weren't in
19053 single kboard state. Don't pop_kboard if we popped into any
19054 kboard state.
19055 (push_frame_kboard): Rename to push_kboard.
19056 (kbd_buffer_get_event): Use FRAME_TERMINAL.
19057 (read_avail_input): Read input from all terminals.
19058 (mark_kboards): Also mark Vkeyboard_translate_table.
19059 (kbd_buffer_store_event_hold): Simplify condition.
19060 (read_key_sequence): Reinitialize fkey and keytran at each replay.
19061 (Vkeyboard_translate_table): Move to struct kboard.
19062 (init_kboard): Initialize Vkeyboard_translate_table.
19063 (syms_of_keyboard): Use DEFVAR_KBOARD to define
19064 Vkeyboard_translate_table. Update doc strings. Update docs of
19065 local-function-key-map and function-key-map.
19066
19067 * terminal.c: New file.
19068
19069 * term.c: Include errno.h.
19070 (Vring_bell_function, device_list, initial_device)
19071 (next_device_id, ring_bell, update_begin, update_end)
19072 (set_terminal_window, cursor_to, raw_cursor_to)
19073 (clear_to_end, clear_frame, clear_end_of_line)
19074 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
19075 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
19076 (syms_of_term): Move their initialization to terminal.c.
19077 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
19078 (Ftty_display_color_cells)
19079 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
19080 (clear_tty_hooks, set_tty_hooks)
19081 (init_tty, maybe_fatal): New functions.
19082 (Ftty_type): Return nil if terminal is not on a tty instead of
19083 throwing an error. Doc update.
19084 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
19085 Doc update. Initialize new subrs and variables.
19086 (delete_tty): Use terminal->deleted.
19087 (tty_set_terminal_modes): Rename from set_terminal_modes.
19088 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
19089 (set_scroll_region): Rename to `tty_set_scroll_region'.
19090 (turn_on_insert): Rename to `tty_turn_on_insert'.
19091 (turn_off_insert): Rename to `tty_turn_off_insert'.
19092 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
19093 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
19094 (toggle_highligh): Rename to `tty_toggle_highlight'.
19095 (background_highlight): Rename to `tty_background_highlight'.
19096 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
19097 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
19098 (tty_set_scroll_region, tty_background_highlight)
19099 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
19100 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
19101 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
19102 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
19103 Add static modifier.
19104 (tty_reset_terminal_modes, tty_set_terminal_window)
19105 (tty_set_scroll_region, tty_background_highlight)
19106 (tty_highlight_if_desired, tty_cursor_to)
19107 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
19108 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
19109 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
19110 renames.
19111
191122007-08-28 Jan Djärv <jan.h.d@swipnet.se>
19113
19114 * keyboard.c: Qrtl is new.
19115 (parse_tool_bar_item): Handle :rtl keyword.
19116 (syms_of_keyboard): Intern :rtl keyword.
19117
19118 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
19119
19120 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
19121 so no Lisp code is executed.
19122 (file_for_image, find_rtl_image): New functions.
19123 (xg_get_image_for_pixmap): Use file_for_image.
19124 (update_frame_tool_bar): If direction is RTL, use RTL image if
19125 defined. Use Gtk stock images if defined.
19126
191272007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19128
19129 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
19130 for nonexistent or zero-width glyph in composition glyph.
19131
191322007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
19133
19134 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
19135
19136 * xdisp.c (Finvisible_p): New function.
19137 (syms_of_xdisp): defsubr it.
19138
191392007-08-24 Juanma Barranquero <lekktu@gmail.com>
19140
19141 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
19142 Doc fixes.
19143
191442007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19145
19146 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
19147
191482007-08-24 Martin Rudalics <rudalics@gmx.at>
19149
19150 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
19151 whether decoding has modified buffer contents.
19152
191532007-08-24 Jason Rumney <jasonr@gnu.org>
19154
19155 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
19156 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
19157 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
19158 (init_svg_functions) [HAVE_NTGUI]: New function.
19159 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
19160 (svg_load_image): Use them.
19161 (svg_load_image) [HAVE_NTGUI]: Implement background.
19162
191632007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19164
19165 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
19166 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
19167 (LIBX): Remove @RSVG_LIBS@.
19168 (LIBES): Add $(RSVG_LIBS).
19169
19170 * image.c (svg_load_image): Blend with specified background if exists.
19171 Use IMAGE_BACKGROUND. Add Mac OS Support.
19172
19173 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
19174 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
19175 Remove macros.
19176 [MAC_OSX] (socket_callback): Do nothing.
19177 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
19178 ReceiveNextEvent.
19179 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
19180 socket_callback.
19181 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
19182
191832007-08-22 Glenn Morris <rgm@gnu.org>
19184
19185 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
19186
191872007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
19188
19189 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
19190
19191 * image.c: Add support for SVG images. Some additional comments
19192 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
19193 (svg_image_p): New function to test for SVG image.
19194 (svg_load): New function to load SVG image.
19195 (svg_load_image): New function, helper for svg_load.
19196 (Qsvg): New Lisp_object.
19197 (svg_keyword_index): New enum.
19198 (svg_format): New static `image_keyword' struct.
19199 (svg_type): New static `image_type' struct.
19200 (librsvg/rsvg.h): Include it.
19201
192022007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
19203
19204 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
19205
192062007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
19207
19208 * lread.c (Qold_style_backquotes): New var.
19209 (syms_of_lread): Init and staticpro it.
19210 (load_warn_old_style_backquotes): New fun.
19211 (Fload): Use them to warn about old style backquotes.
19212 (end_of_file_error, Fload): Remove unused vars.
19213
19214 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
19215
19216 * lread.c (Vold_style_backquotes): New var.
19217 (syms_of_lread): Init and export it to Elisp.
19218 (read1): Set it when we find an old-style (back)quote.
19219
192202007-08-22 Jason Rumney <jasonr@gnu.org>
19221
19222 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
19223
192242007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
19225
19226 * puresize.h (BASE_PURESIZE): Increase to 1140000.
19227
192282007-08-19 Richard Stallman <rms@gnu.org>
19229
19230 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
19231
192322007-08-19 Andreas Schwab <schwab@suse.de>
19233
19234 * alloc.c (pure): Round PURESIZE up.
19235
192362007-08-17 Jan Djärv <jan.h.d@swipnet.se>
19237
19238 * xterm.c (handle_one_xevent): Remove check that mouse click is in
19239 active frame.
19240
192412007-08-16 Richard Stallman <rms@gnu.org>
19242
19243 * eval.c (Fcommandp): Add parens to clarify.
19244
19245 * minibuf.c (Fall_completions): Use enum for type of table.
19246
19247 * emacs.c (USAGE2): Improve text.
19248
192492007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
19250
19251 * term.c (tty_default_color_capabilities): Declare static
19252 variables in file scope, to avoid HPUX compiler problem.
19253
192542007-08-13 Jan Djärv <jan.h.d@swipnet.se>
19255
19256 * gtkutil.c (update_frame_tool_bar): Use -1 as index
19257 to gtk_toolbar_insert.
19258
192592007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
19260
19261 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
19262
19263 * insdel.c (reset_var_on_error): New fun.
19264 (signal_before_change, signal_after_change):
19265 Use it to reset (after|before)-change-functions to nil in case of error.
19266 Bind inhibit-modification-hooks to t.
19267 Don't bind (after|before)-change-functions to nil while they run.
19268
192692007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19270
19271 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
19272 filling pixmap with stippled background.
19273
192742007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19275
19276 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
19277 Don't use invisible frame as parent window for repositioning.
19278
192792007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
19280
19281 * print.c (new_backquote_output): Rename from old_backquote_output.
19282 (print): Inverse its logic (according to its name) so as to match the
19283 behavior of new_backquote_flag in lread.c.
19284
192852007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19286
19287 * gmalloc.c (posix_memalign): New function.
19288
19289 * macterm.c (frame_highlight, frame_unhighlight): Don't call
19290 ActivateControl/DeactivateControl here.
19291 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
19292 frame-notice-user-settings is non-nil.
19293 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
19294 for kEventParamFMFontStyle.
19295 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
19296 mac_pass_command_to_system and mac_pass_control_to_system here.
19297 (XTread_socket): Call ActivateControl/DeactivateControl here.
19298 (XTread_socket) [TARGET_API_MAC_CARBON]:
19299 Check mac_pass_command_to_system and mac_pass_control_to_system here.
19300 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
19301 for window repositioning.
19302
193032007-08-08 Glenn Morris <rgm@gnu.org>
19304
19305 * Replace `iff' in doc-strings and comments.
19306
193072007-08-07 Chong Yidong <cyd@stupidchicken.com>
19308
19309 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
19310
193112007-08-07 Martin Rudalics <rudalics@gmx.at>
19312
19313 * fileio.c (Finsert_file_contents): Run format-decode and
19314 after_insert_file_functions on entire buffer when REPLACE is
19315 non-nil and inhibit modification_hooks and point_motion_hooks.
19316 For consistency, run after_insert_file_functions iff something
19317 got inserted. Move signal_after_change and update_compositions
19318 after code running after_insert_file_functions. Make sure that
19319 undo_list doesn't record intermediate steps of the decoding process.
19320
193212007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19322
19323 * emacs.c (main)
19324 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
19325 Call malloc_enable_thread on interactive startup.
19326
19327 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
19328 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
19329 [USE_PTHREAD]: Conditionalize with it.
19330 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
19331 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
19332 New functions.
19333
193342007-08-06 Chong Yidong <cyd@stupidchicken.com>
19335
19336 * xdisp.c (redisplay_window): When restoring original buffer
19337 position, make sure it is still valid.
19338
19339 * image.c (png_load): Ignore png-supplied background color.
19340
193412007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19342
19343 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
19344 Use kCFAbsoluteTimeIntervalSince1970.
19345
19346 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
19347 New variable.
19348 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
19349 event loop should be quit.
19350 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
19351 Quit dialog event loop if quit_dialog_event_loop is set.
19352
19353 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
19354 (Selection): New typedef. Use instead of ScrapRef.
19355 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
19356 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
19357 (mac_clear_selection): Rename from clear_scrap.
19358 (get_flavor_type_from_symbol): New argument SEL and subsume function of
19359 scrap_has_target_type. All uses changed.
19360 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
19361 (mac_selection_has_target_p): New functions.
19362 (mac_put_selection_value): Rename from put_scrap_string.
19363 (mac_get_selection_value): Rename from get_scrap_string.
19364 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
19365 (put_scrap_private_timestamp, scrap_has_target_type)
19366 (get_scrap_private_timestamp): Remove functions.
19367 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
19368 (x_own_selection, x_get_local_selection):
19369 Use mac_valid_selection_value_p.
19370 (x_own_selection): Don't use put_scrap_private_timestamp.
19371 Record OWNERSHIP-INFO into Vselection_alist instead.
19372 (x_get_local_selection): Don't check type if request is local.
19373 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
19374 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
19375
193762007-08-04 Jan Djärv <jan.h.d@swipnet.se>
19377
19378 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
19379 add comment explaining why.
19380
193812007-08-03 Richard Stallman <rms@gnu.org>
19382
19383 * fileio.c (Fvisited_file_modtime): Use make_time.
19384
193852007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
19386
19387 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
19388 build.
19389
193902007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
19391
19392 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
19393
193942007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
19395
19396 * puresize.h (BASE_PURESIZE): Increase to 1130000.
19397
193982007-07-30 Richard Stallman <rms@gnu.org>
19399
19400 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
19401
194022007-07-29 Jan Djärv <jan.h.d@swipnet.se>
19403
19404 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
19405
194062007-07-28 Nick Roberts <nickrob@snap.net.nz>
19407
19408 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
19409 remote default-directory.
19410
19411 * buffer.c (mode-line-format): Update doc string.
19412
194132007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19414
19415 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
19416 scroll bar gap.
19417 (x_scroll_bar_create): Set bar->fringe_extended_p.
19418 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
19419 on frame edge. Check fringe background extension. Don't clear
19420 extended fringe background area.
19421
19422 * w32term.h (struct scroll_bar): New member fringe_extended_p.
19423 (w32_fill_area): Enclose multiple statements with do ... while (0).
19424
19425 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
19426 Extend fringe background to scroll bar gap.
19427 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
19428 Set bar->fringe_extended_p.
19429 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19430 Put leftmost/rightmost scroll bars on frame edge. Check fringe
19431 background extension. Don't clear extended fringe background area.
19432
19433 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19434 New member fringe_extended_p.
19435
194362007-07-25 Glenn Morris <rgm@gnu.org>
19437
19438 * Relicense all FSF files to GPLv3 or later.
19439
19440 * COPYING: Switch to GPLv3.
19441
194422007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
19443
19444 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
19445
19446 * data.c (Finteractive_form): Check for the presence of an
19447 `interactive-form' symbol property more thoroughly.
19448
19449 * data.c (Finteractive_form): Use an `interactive-form' property if
19450 present, analogous to the function-documentation property.
19451
194522007-07-24 Jason Rumney <jasonr@gnu.org>
19453
19454 * w32fns.c (x_real_positions): Get real position from OS instead of
19455 calculating it.
19456
194572007-07-23 Jason Rumney <jasonr@gnu.org>
19458
19459 * filelock.c (current_lock_owner): Allow for @ sign in username.
19460
194612007-07-22 Nick Roberts <nickrob@snap.net.nz>
19462
19463 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
19464 remote default-directory.
19465
19466 * buffer.c (mode-line-format): Describe above case in doc string.
19467
194682007-07-20 Eli Zaretskii <eliz@gnu.org>
19469
19470 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
19471 Define if not defined.
19472
194732007-07-18 Jason Rumney <jasonr@gnu.org>
19474
19475 * w32proc.c (w32_executable_type): Handle 64 bit executables.
19476
194772007-07-18 Richard Stallman <rms@gnu.org>
19478
19479 * data.c (Fsetq_default): Doc fix.
19480
19481 * eval.c (Fsetq): Doc fix.
19482
194832007-07-18 Juanma Barranquero <lekktu@gmail.com>
19484
19485 * coding.c (Ffind_operation_coding_system):
19486 * eval.c (For, Fand): Doc fixes.
19487 Reported by Johan Bockgård.
19488
194892007-07-18 Jan Djärv <jan.h.d@swipnet.se>
19490
19491 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
19492
19493 * xterm.h: Declare x_ewmh_activate_frame.
19494
19495 * xterm.c (x_ewmh_activate_frame): New function.
19496 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
19497
194982007-07-17 Martin Rudalics <rudalics@gmx.at>
19499
19500 * window.c (Fdisplay_buffer): If largest or LRU window is the
19501 only window, split it even if it is not eligible for splitting.
19502 This restores the original behavior broken by the 2007-07-15
19503 change.
19504
195052007-07-17 Glenn Morris <rgm@gnu.org>
19506
19507 * abbrev.c (abbrev_check_chars): New function.
19508 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19509 Call abbrev_check_chars to check abbrev characters are word
19510 constituents. Doc fix.
19511
195122007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
19513
19514 * process.c (Fstart_process, Fmake_network_process)
19515 (read_process_output): Fix up last changes.
19516
195172007-07-16 Eli Zaretskii <eliz@gnu.org>
19518
19519 * makefile.w32-in (clean): Don't delete *~.
19520
195212007-07-16 Andreas Schwab <schwab@suse.de>
19522
19523 * window.c (Fdisplay_buffer): Use NILP.
19524 (Fset_window_scroll_bars): Likewise.
19525
195262007-07-15 Martin Rudalics <rudalics@gmx.at>
19527
19528 * window.c (window_min_size_2): New function.
19529 (window_min_size_1, size_window, Fdisplay_buffer)
19530 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
19531 windows without mode- or header-lines when window-min-height is
19532 too small.
19533 (size_window): Reset nodelete_p after testing it, following an
19534 earlier note by Kim F. Storm.
19535 (display_buffer): Do not set split_height_threshold to twice the
19536 value of window_min_height to avoid changing the value of a
19537 customizable variable. Rather explicitly check whether the
19538 height of the window that shall be splitted is at least as large
19539 as split_height_threshold.
19540 (Fwindow_full_width_p): New defun.
19541 (syms_of_window): Defsubr it.
19542
19543 * window.h: Add EXFUN for Fwindow_full_width_p.
19544
195452007-07-14 Jason Rumney <jasonr@gnu.org>
19546
19547 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
19548
195492007-07-14 Richard Stallman <rms@gnu.org>
19550
19551 * eval.c (maybe_call_debugger): New function.
19552 (find_handler_clause): Use maybe_call_debugger.
19553 Call it when the handler says `debug'.
19554 Eliminate DEBUGGER_VALUE_PTR.
19555 (Fsignal): Eliminate debugger_value.
19556 (Qdebug): New variable.
19557 (syms_of_eval): Initialize it.
19558
195592007-07-14 Juanma Barranquero <lekktu@gmail.com>
19560
19561 * eval.c (Fprogn):
19562 * keyboard.c (Ftrack_mouse):
19563 * print.c (Fwith_output_to_temp_buffer):
19564 * window.c (Fsave_window_excursion): Doc fix.
19565
195662007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
19567
19568 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
19569
195702007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
19571
19572 * process.h (struct Lisp_Process): Turn slots infd, outfd,
19573 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
19574 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
19575 read_output_delay, and read_output_skip from Lisp_Objects to ints.
19576 Remove unused encoding_carryover.
19577 * process.c: Adjust all functions accordingly.
19578
195792007-07-12 Richard Stallman <rms@gnu.org>
19580
19581 * term.c: Include unistd.h only if HAVE_UNISTD_H.
19582
195832007-07-11 Jason Rumney <jasonr@gnu.org>
19584
19585 * makefile.w32-in (LIBS): Include OLE32.
19586
19587 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
19588 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
19589
195902007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
19591
19592 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
19593 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
19594 from a Lisp_Object into a bare pointer.
19595 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
19596 Adjust the code correspondingly.
19597
19598 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
19599
19600 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
19601 (term_show_mouse_face): Remove unused var `j'.
19602 (handle_one_term_event): Remove unused vars `i' and `j'.
19603 Don't cast return value of ttyname since it's not necessary.
19604
196052007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
19606
19607 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
19608 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
19609
19610 * fns.c (map_char_table): Use an array of int for `indices' rather than
19611 an array of Lisp_Objects (which are only ever integers anyway).
19612 (Fmap_char_table): Update caller.
19613 * lisp.h: Update prototype.
19614 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
19615 * fontset.c (Ffontset_info):
19616 * casetab.c (set_case_table): Update callers.
19617
19618 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
19619
19620 * keymap.c (struct accessible_keymaps_data)
19621 (struct where_is_internal_data): New structures.
19622 (accessible_keymaps_1, where_is_internal_1): Use them to change
19623 interface to adhere to the one used by map_keymap.
19624 (Faccessible_keymaps, where_is_internal): Use map_keymap.
19625 (accessible_keymaps_char_table, where_is_internal_2): Remove.
19626
19627 * keymap.h (map_keymap_function_t): More informative prototype.
19628
196292007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
19630
19631 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
19632 (looking_at_1): Don't change search_regs and last_thing_searched
19633 if `inhibit-changing-match-data' is non-nil.
19634 (string_match_1, search_buffer, set_search_regs): Likewise.
19635 (syms_of_search): Add Lisp level definition for
19636 `inhibit-changing-match-data' and set it to nil.
19637 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
19638 start and end of the match, instead of using values in search_regs.
19639
196402007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19641
19642 * minibuf.c (Fcompleting_read): New value `confirm-only'
19643 for `require-match'.
19644
196452007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
19646
19647 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
19648 part of the 2007-06-27 change to syms_of_fileio.
19649
196502007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19651
19652 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
19653 Check WINDOWP before using XWINDOW. Consolidate return statements.
19654
196552007-06-27 Richard Stallman <rms@gnu.org>
19656
19657 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
19658
196592007-06-27 Juanma Barranquero <lekktu@gmail.com>
19660
19661 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
19662
196632007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19664
19665 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
19666 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
19667 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
19668 (_free_internal, memalign): Use them.
19669 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
19670 Initialize to PTHREAD_MUTEX_INITIALIZER.
19671 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
19672 (morecore_nolock): Rename from morecore. All uses changed.
19673 Use only nolock versions of internal allocation functions.
19674 (_malloc_internal_nolock, _realloc_internal_nolock)
19675 (_free_internal_nolock): New functions created from
19676 _malloc_internal, _realloc_internal, and _free_internal.
19677 (_malloc_internal, _realloc_internal, _free_internal): Use them.
19678 Copy hook value to automatic variable before its use.
19679 (memalign): Copy hook value to automatic variable before its use.
19680
196812007-06-26 Kenichi Handa <handa@m17n.org>
19682
19683 * coding.c (Ffind_operation_coding_system): Docstring improved.
19684 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
19685
196862007-06-25 David Kastrup <dak@gnu.org>
19687
19688 * keymap.c (Fcurrent_active_maps): Add `position' argument.
19689 (Fwhere_is_internal): Adjust call to `current-active-maps' to
19690 cater for additional parameter.
19691
19692 * keymap.h: Adjust number of parameters to `current-active-maps'.
19693
19694 * doc.c (Fsubstitute_command_keys): Adjust call of
19695 `current-active-maps'.
19696
196972007-06-25 David Kastrup <dak@gnu.org>
19698
19699 * callint.c (Fcall_interactively): Make the parsing of interactive
19700 specs somewhat more readable.
19701
197022007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19703
19704 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
19705 to scroll bar gap also when bitmap fills fringe. Draw only foreground
19706 if extended background has already been filled.
19707
197082007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19709
19710 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
19711 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
19712
19713 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
19714 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
19715 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
19716 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
19717 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
19718 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
19719 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
19720 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
19721 Run timers during dialog popup.
19722 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
19723
197242007-06-21 Jason Rumney <jasonr@gnu.org>
19725
19726 * image.c (convert_mono_to_color_image): Swap fore and background.
19727
197282007-06-20 Jason Rumney <jasonr@gnu.org>
19729
19730 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
19731 (w32_free_bdf_font): Unmap memory not handle.
19732
197332007-06-20 Sam Steingold <sds@gnu.org>
19734
19735 * gmalloc.c (__morecore): Fix the declaration to comply with the
19736 definition.
19737
197382007-06-20 Juanma Barranquero <lekktu@gmail.com>
19739
19740 * w32term.c (w32_delete_display): Remove leftover declaration.
19741 (w32_define_cursor, w32_initialize): Make static.
19742
19743 * w32.c (_wsa_errlist): Fix typo in error message.
19744 (init_environment): Ignore any environment variable from the
19745 registry having a null value.
19746
197472007-06-20 Glenn Morris <rgm@gnu.org>
19748
19749 * Makefile.in (LIBGIF): Default to -lgif.
19750
197512007-06-17 Jason Rumney <jasonr@gnu.org>
19752
19753 * w32menu.c (add_menu_item): Don't use multibyte string functions on
19754 unicode strings.
19755
197562007-06-16 Juanma Barranquero <lekktu@gmail.com>
19757
19758 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
19759 Fix typo in docstring.
19760
197612007-06-16 Eli Zaretskii <eliz@gnu.org>
19762
19763 * w32menu.c (add_menu_item): Escape `&' characters in menu items
19764 and their keybindings.
19765
197662007-06-15 Chong Yidong <cyd@stupidchicken.com>
19767
19768 * composite.c (update_compositions): Fix last fix.
19769
197702007-06-14 Jason Rumney <jasonr@gnu.org>
19771
19772 * w32.c (get_process_times_fn): New function pointer.
19773 (globals_of_w32): Intialize it if present in kernel32.dll.
19774 (w32_get_internal_run_time): New function.
19775
19776 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
19777
197782007-06-14 Kenichi Handa <handa@etlken.m17n.org>
19779
19780 * composite.c (update_compositions): Check the validness of
19781 compositions.
19782
197832007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19784
19785 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
19786 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
19787
19788 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
19789 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
19790
19791 * macgui.h (USE_MAC_TOOLBAR): New define.
19792
19793 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19794 Return immediately unless popup is activated.
19795
19796 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
19797 background to scroll bar gap.
19798 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
19799 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
19800 scroll bars on frame edge. Check fringe background extension.
19801 Don't clear extended fringe background area.
19802 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
19803 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
19804 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
19805 [USE_MAC_TOOLBAR]: New macros.
19806 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
19807 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
19808 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
19809 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
19810 [USE_MAC_TOOLBAR]: New functions.
19811 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
19812 manually if previous repositioning has failed.
19813 (mac_handle_keyboard_event): Use precomputed event kind.
19814 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
19815 as tool bar item click. Handle mouse movement over tool bar items.
19816
19817 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
19818 toolbar_win_gravity.
19819 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
19820 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
19821 Add externs.
19822
19823 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
19824 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
19825
198262007-06-14 Chong Yidong <cyd@stupidchicken.com>
19827
19828 * image.c (search_image_cache): Remove unused variable.
19829
198302007-06-13 Chong Yidong <cyd@stupidchicken.com>
19831
19832 * xfns.c, xmenu.c: Link to xaw3d if available.
19833
198342007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19835
19836 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
19837 frame_foreground and frame_background.
19838
19839 * image.c (lookup_image): Save frame foreground and background colors.
19840 (search_image_cache): Check if saved and current frame colors match.
19841
198422007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
19843
19844 * regex.c (regex_compile): Remove the `regnum' counter.
19845 Use bufp->re_nsub instead. Add support for \(?N:RE\).
19846
198472007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19848
19849 * term.c: Include intervals.h to declare Fget_text_property.
19850
198512007-06-10 Jason Rumney <jasonr@gnu.org>
19852
19853 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
19854
198552007-06-08 Juanma Barranquero <lekktu@gmail.com>
19856
19857 * callint.c (Fcall_interactively):
19858 * editfns.c (Fdelete_and_extract_region):
19859 * fileio.c (Fread_file_name):
19860 * fns.c (Fmapconcat):
19861 * keyboard.c (cmd_error_internal):
19862 * keymap.c (Fkey_description):
19863 * lread.c (openp):
19864 * minibuf.c (read_minibuf):
19865 * search.c (wordify):
19866 * sunfns.c (sel_read):
19867 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
19868 * xfns.c (x_default_scroll_bar_color_parameter):
19869 * xmenu.c (menu_help_callback):
19870 * xselect.c (Fx_get_atom_name):
19871 * xterm.c (x_term_init): Use empty_unibyte_string.
19872
198732007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
19874
19875 * alloc.c (init_strings): Initialize canonical empty strings.
19876 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
19877 canonical empty string when the requested size is 0.
19878
19879 * emacs.c (empty_unibyte_string): Rename from empty_string.
19880 (empty_multibyte_string): New canonical empty string.
19881 (syms_of_emacs): Don't initialize empty_string.
19882
19883 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
19884 string, if appropriate.
19885 (empty_unibyte_string, empty_multibyte_string): New externs.
19886 (empty_string): Remove extern.
19887
19888 * lread.c (syms_of_lread): Use empty_unibyte_string.
19889
198902007-06-07 Jason Rumney <jasonr@gnu.org>
19891
19892 * s/ms-w32.h: Don't define HAVE_TZNAME.
19893
19894 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
19895
198962007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19897
19898 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
19899
19900 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
19901 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
19902
19903 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19904 Don't call next handler.
19905 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
19906 Remove argument. Install handler to application.
19907 (set_frame_menubar): Don't change deep_p.
19908 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
19909 FRAME_OUTER_TO_INNER_DIFF_Y.
19910 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
19911 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
19912 [HAVE_DIALOGS]: New macros.
19913 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
19914 Use them.
19915 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
19916
19917 * macselect.c [MAC_OSX] (install_service_handler): Rename from
19918 init_service_handler. All callers changed. Return OSStatus value.
19919
19920 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
19921 All callers changed so as not to call SetPortWindowPort.
19922 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
19923 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
19924 mac_draw_string_common.
19925 (mac_draw_image_string_qd): Likewise.
19926 (mac_draw_string_common): Use them. Add INLINE.
19927 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
19928 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
19929 GetGlobalMouse.
19930 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
19931 and FRAME_OUTER_TO_INNER_DIFF_Y.
19932 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
19933 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
19934 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
19935 repositioning window to mac_handle_window_event.
19936 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
19937 saving window location to mac_handle_window_event
19938 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
19939 (install_menu_target_item_handler): Remove argument in extern.
19940 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
19941 Also accept command events.
19942 (do_keystroke): New function created from XTread_socket.
19943 (init_command_handler): Remove functions.
19944 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
19945 and save window location by kEventWindowShowing and kEventWindowHiding
19946 handlers here. Don't call next handler for window state change and
19947 focus events.
19948 (mac_handle_application_event, mac_handle_keyboard_event)
19949 [TARGET_API_MAC_CARBON]: New functions.
19950 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
19951 kEventWindowShowing and kEventWindowHiding events. Move installation
19952 of mouse, font, text input and menu target item handlers to
19953 install_application_handler.
19954 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
19955 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19956 New function.
19957 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19958 Register it.
19959 (XTread_socket) [TARGET_API_MAC_CARBON]:
19960 Consolidate SendEventToEventTarget calls.
19961 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
19962 Move application activation handler to mac_handle_application_event.
19963 Move keyboard handler to mac_handle_keyboard_event.
19964 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
19965 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
19966 init_command_handler. Call install_application_handler.
19967
19968 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
19969 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
19970
199712007-06-07 Glenn Morris <rgm@gnu.org>
19972
19973 * emacs.c (main): Use `emacs-copyright' in --version output.
19974
199752007-06-06 Chong Yidong <cyd@stupidchicken.com>
19976
19977 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
19978
199792007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19980
19981 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
19982
19983 * macgui.h: Replace WindowPtr with WindowRef.
19984
19985 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19986 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19987 Replace ControlHandle with ControlRef.
19988 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
19989
19990 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19991 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19992 Replace ControlHandle with ControlRef.
19993 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
19994 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
19995
19996 * macterm.h (struct scroll_bar): Rename member control_handle_low
19997 and control_handle_high to control_ref_low and control_ref_high.
19998 All uses changed.
19999 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
20000 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
20001 respectively. All uses changed.
20002 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
20003 (install_window_handler, remove_window_handler): Replace WindowPtr
20004 with WindowRef in externs.
20005
200062007-06-05 Juanma Barranquero <lekktu@gmail.com>
20007
20008 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
20009
200102007-06-03 Nick Roberts <nickrob@snap.net.nz>
20011
20012 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
20013
20014 * frame.c (Fmouse_position, Fmouse_pixel_position):
20015 Condition on HAVE_GPM too.
20016
20017 * term.c (term_mouse_highlight): Remove unused variables.
20018 (Fterm_open_connection): Set gpm_zerobased to 1.
20019 (term_mouse_movement, term_mouse_click, handle_one_term_event):
20020 Use zero based co-ordinates.
20021 (handle_one_term_event): Report a drag as mouse movement too.
20022
20023 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
20024
200252007-06-03 Chong Yidong <cyd@stupidchicken.com>
20026
20027 * image.c (search_image_cache): New function. Require background
20028 color match if background color is unspecified in the image spec.
20029 (uncache_image, lookup_image): Use it.
20030
200312007-06-01 Juanma Barranquero <lekktu@gmail.com>
20032
20033 * window.c (Fshrink_window): Reflow docstring.
20034
200352007-06-02 Chong Yidong <cyd@stupidchicken.com>
20036
20037 * Version 22.1 released.
20038
200392007-06-01 Richard Stallman <rms@gnu.org>
20040
20041 * xfns.c (x_encode_text): Add GCPRO.
20042
200432007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20044
20045 * xfns.c (x_set_name_internal): Save encoded name before
20046 x_encode_text in case string data is relocated.
20047
200482007-05-31 Richard Stallman <rms@gnu.org>
20049
20050 * buffer.c (syms_of_buffer): Doc fix.
20051
200522007-05-30 Nick Roberts <nickrob@snap.net.nz>
20053
20054 * sysdep.c (init_sys_modes): Add rather than replace with
20055 O_NONBLOCK.
20056
20057 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
20058 term_mouse_moveto.
20059
20060 * termhooks.h (term_mouse_moveto): New extern.
20061
20062 * term.c (mouse_face_window): Rename...
20063 (Qmouse_face_window): ...to this.
20064 (term_show_mouse_face, term_clear_mouse_face)
20065 (term_mouse_highlight): Use Qmouse_face_window.
20066 (term_mouse_moveto): New function.
20067 (term_mouse_position): Make it work.
20068 (syms_of_term): Uncomment assignment to mouse_position_hook.
20069 Staticpro Qmouse_face_window.
20070
200712007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20072
20073 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
20074 around current_column call.
20075
200762007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
20077
20078 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
20079 * xdisp.c (next_element_from_buffer):
20080 * window.c (delete_window):
20081 * term.c (term_mouse_highlight):
20082 * msdos.c (getdefdir):
20083 * macterm.c (mac_create_bitmap_from_bitmap_data)
20084 (init_font_name_table):
20085 * fns.c (Fsxhash):
20086 * data.c (Fmake_local_variable):
20087 * ccl.c (ccl_driver): Likewise.
20088
200892007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20090
20091 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
20092 Call mac_wakeup_from_rne on window size change.
20093
200942007-05-25 Chong Yidong <cyd@stupidchicken.com>
20095
20096 * image.c (uncache_image): Fix typo.
20097
200982007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
20099
20100 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
20101
201022007-05-22 Richard Stallman <rms@gnu.org>
20103
20104 * xterm.c (x_connection_closed): Remove NO_RETURN.
20105
201062007-05-22 Martin Rudalics <rudalics@gmx.at>
20107
20108 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
20109
201102007-05-21 Chong Yidong <cyd@stupidchicken.com>
20111
20112 * image.c (uncache_image): New function.
20113 (Fimage_refresh): New function.
20114
201152007-05-20 Jan Djärv <jan.h.d@swipnet.se>
20116
20117 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
20118
201192007-05-20 Nick Roberts <nickrob@snap.net.nz>
20120
20121 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
20122 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
20123
201242007-05-20 Nick Roberts <nickrob@snap.net.nz>
20125
20126 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
20127 conditional on [HAVE_GPM_H].
20128
201292007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
20130
20131 * syntax.c (skip_chars): Update syntax-table only after we checked that
20132 the new location is valid.
20133
201342007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20135
20136 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
20137 mac_get_window_bounds.
20138
201392007-05-20 Nick Roberts <nickrob@snap.net.nz>
20140
20141 * Makefile.in (LIBGPM): Allow it to be set from configure.
20142 If set then link Emacs with it.
20143
20144 * config.in: Regenerate.
20145
20146 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
20147 New externs.
20148
20149 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
20150 Include gpm.h.
20151 (handle_one_term_event, term_gpm): New externs.
20152
20153 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
20154 and allow it to be interrupted by SIGIO.
20155
20156 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
20157 (wait_reading_process_output): Wait on gpm_fd too.
20158 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
20159 (add_gpm_wait_descriptor_called_flag): New variable.
20160 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
20161
20162 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
20163 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
20164 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
20165 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
20166 (make_lispy_event): Add case GPM_CLICK_EVENT.
20167 (read_avail_input): Handle mouse input.
20168
20169 * term.c (write_glyphs_with_face): New function.
20170 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
20171 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
20172 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
20173 (mouse_face_face_id, term_gpm, pos_x, pos_y)
20174 (last_mouse_x, last_mouse_y): New variables.
20175 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
20176 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
20177 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
20178 (Fterm_close_connection): New functions.
20179 (term_init): Initialise mouse_face_window.
20180
201812007-05-19 Chong Yidong <cyd@stupidchicken.com>
20182
20183 * xdisp.c (redisplay_window): If first window line is a
20184 continuation line, recompute the new window start instead of
20185 recentering.
20186
201872007-05-18 Glenn Morris <rgm@gnu.org>
20188
20189 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
20190 Suggested by Alfred M. Szmidt <ams@gnu.org>.
20191
201922007-05-17 Glenn Morris <rgm@gnu.org>
20193
20194 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
20195
201962007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20197
20198 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
20199 dead key repeat and up events.
20200
202012007-05-14 Chong Yidong <cyd@stupidchicken.com>
20202
20203 * image.c (pbm_load): Check image size for monochrome pbm.
20204
202052007-05-13 Chong Yidong <cyd@stupidchicken.com>
20206
20207 * xterm.c (XTread_socket): Revert last change.
20208
202092007-05-12 Chong Yidong <cyd@stupidchicken.com>
20210
20211 * image.c (pbm_load): Correctly check image size for greyscale pbm.
20212
20213 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
20214
202152007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20216
20217 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
20218 mixup (YAILOM).
20219
202202007-05-07 Andreas Schwab <schwab@suse.de>
20221
20222 * keymap.c (Flookup_key): Fix typo in last change.
20223
202242007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20225
20226 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
20227 mapping for unibyte strings.
20228
202292007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20230
20231 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
20232 (Fx_popup_dialog) [MAC_OSX]: Likewise.
20233
202342007-04-29 Richard Stallman <rms@gnu.org>
20235
20236 * insdel.c (replace_range): For undo, record insertion first.
20237
202382007-04-29 Andreas Schwab <schwab@suse.de>
20239
20240 * lisp.h (VECSIZE): Use OFFSETOF.
20241
202422007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20243
20244 * xdisp.c (try_window_reusing_current_matrix): Fix number of
20245 disabled lines.
20246
202472007-04-28 Richard Stallman <rms@gnu.org>
20248
20249 * lread.c (read_escape): In a string, \s is always space.
20250
202512007-04-27 Jan Djärv <jan.h.d@swipnet.se>
20252
20253 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
20254
20255 * gtkutil.c (xg_update_menubar, create_menus): Create empty
20256 submenu for menu bar items.
20257
20258See ChangeLog.10 for earlier changes.
20259
20260;; Local Variables:
20261;; coding: utf-8
20262;; add-log-time-zone-rule: t
aac0c6e3
MR
20263;; End:
20264
76b6f707 20265 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
20266
20267 This file is part of GNU Emacs.
20268
20269 GNU Emacs is free software: you can redistribute it and/or modify
20270 it under the terms of the GNU General Public License as published by
20271 the Free Software Foundation, either version 3 of the License, or
20272 (at your option) any later version.
20273
20274 GNU Emacs is distributed in the hope that it will be useful,
20275 but WITHOUT ANY WARRANTY; without even the implied warranty of
20276 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20277 GNU General Public License for more details.
20278
20279 You should have received a copy of the GNU General Public License
20280 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20281
20282;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40