* cedet/semantic/util.el (semantic-recursive-find-nonterminal-by-name):
[bpt/emacs.git] / src / ChangeLog
CommitLineData
10d66ec0
AS
12009-10-24 Andreas Schwab <schwab@linux-m68k.org>
2
1cae01f7
AS
3 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
4 DBUS_TYPE_UINTnn separately to get proper sign extension.
5
58a12889
AS
6 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
7 can properly handle unsigned types.
8 (make_uid, make_gid): Removed.
9
987c9327
AS
10 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
11 types again.
12
10d66ec0
AS
13 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument
14 type.
15 (system_process_attributes): Likewise.
16
905a9ed3
DN
172009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
18
19 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
20
21 * eval.c (Fautoload): Purecopy the filename. Simplify.
22
23 * category.c (Fdefine_category): Purecopy docstring.
24
a599b3e8
AS
252009-10-23 Andreas Schwab <schwab@linux-m68k.org>
26
7b792fc9
AS
27 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
28
a599b3e8
AS
29 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
30
b35ac83e
CY
312009-10-23 Chong Yidong <cyd@stupidchicken.com>
32
33 * window.c (Fwindow_edges, Fwindow_pixel_edges)
34 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
35 (Bug#4775).
36
e8903e00
SM
372009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
38
39 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
40 (init_fileio_once):
41 * lisp.h (init_fileio_once): Remove.
42 * emacs.c (main): Don't call init_fileio_once.
43
8f43cbf3
DN
442009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
45
46 * puresize.h (BASE_PURESIZE): Increase to 1430000.
47
26898943
AS
482009-10-21 Andreas Schwab <schwab@linux-m68k.org>
49
50 * doprnt.c (doprnt): Fix overflow check.
51
5c646d5a
JD
522009-10-21 Jan Djärv <jan.h.d@swipnet.se>
53
3132a7ea
JD
54 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
55
5c646d5a
JD
56 * xterm.h (x_wait_for_event): Declare it.
57
58 * xterm.c (pending_event_wait): New variable.
59 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
60 see pending_event_wait.eventtype.
61 (handle_one_xevent): Don't change gravity when parent changes.
62 (x_new_font): Call change_frame_size with new rows/columns before we try
63 to resize the frame.
64 (x_wait_for_event): New function.
65 (x_set_window_size_1): Don't change gravity unless change_gravity is set.
66 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
67 don't change frame size, instead wait for the ConfigureNotify.
68 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
69 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
70 (x_initialize): Initialize pending_event_wait.
71
72 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
73 size.
74
75 * widget.c (EmacsFrameSetValues): Add comment.
76 (EmacsFrameSetCharSize): Just call x_set_window_size.
77
78 * gtkutil.c (xg_frame_set_char_size): Flush events and call
79 x_wait_for_event.
80 (flush_and_sync): Removed again.
81 (xg_get_font_name): Suggest monospace if no previous font is known.
82
e9c1637d
SM
832009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
84
85 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 86 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 87
5a72cccb
YM
882009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
89
90 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
91 processing pending events when event is filtered for input method.
ab04798f 92 (Bug#3681)
5a72cccb 93
2629aa37
JB
942009-10-20 Juanma Barranquero <lekktu@gmail.com>
95
96 * fns.c: Add #endif accidentally removed in previous change.
97
c3417a74
DN
982009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
99
100 * fns.c: Remove code for unsupported system: MAC_OS.
101 * image.c: Likewise. Include setjmp.h.
102
9685cef2
JD
1032009-10-19 Jan Djärv <jan.h.d@swipnet.se>
104
105 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
106 pixel -1 (bug #4742).
107
d7306fe6
DN
1082009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
109
019d2c4c
DN
110 * process.c (create_pty): Remove conditionals for no longer
111 supported systems: UNIPLUS and RTU.
112
ee6bacd4
DN
113 * xterm.c:
114 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
115
d7306fe6
DN
116 * alloc.c: Do not define struct catchtag.
117 * eval.c: Move struct catchtag definition ...
118 * lisp.h: ... here.
119
120 * image.c: Move png.h #include earlier to avoid warnings.
121
122 * xterm.c:
123 * xsmfns.c:
124 * xselect.c:
125 * xrdb.c:
126 * xmenu.c:
127 * xftfont.c:
128 * xfont.c:
129 * xfns.c:
130 * xfaces.c:
131 * xdisp.c:
132 * window.c:
133 * widget.c:
134 * w32xfns.c:
135 * w32uniscribe.c:
136 * w32term.c:
137 * w32select.c:
138 * w32reg.c:
139 * w32proc.c:
140 * w32menu.c:
141 * w32inevt.c:
142 * w32heap.c:
143 * w32font.c:
144 * w32fns.c:
145 * w32console.c:
146 * w32.c:
147 * w16select.c:
148 * vm-limit.c:
149 * unexsol.c:
150 * unexec.c:
151 * unexcw.c:
152 * unexaix.c:
153 * undo.c:
154 * tparam.c:
155 * textprop.c:
156 * terminfo.c:
157 * terminal.c:
158 * termcap.c:
159 * term.c:
160 * syntax.c:
161 * sound.c:
162 * sheap.c:
163 * search.c:
164 * scroll.c:
165 * region-cache.c:
166 * regex.c:
167 * ralloc.c:
168 * process.c:
169 * print.c:
b024548b
DN
170 * nsterm.m:
171 * nsselect.m:
172 * nsmenu.m:
173 * nsimage.m:
174 * nsfont.m:
175 * nsfns.m:
d7306fe6
DN
176 * msdos.c:
177 * minibuf.c:
178 * menu.c:
179 * marker.c:
180 * macros.c:
181 * keymap.c:
182 * keyboard.c:
183 * intervals.c:
184 * insdel.c:
185 * indent.c:
186 * gtkutil.c:
187 * ftxfont.c:
188 * ftfont.c:
189 * fringe.c:
190 * frame.c:
191 * fontset.c:
192 * font.c:
193 * fns.c:
194 * floatfns.c:
195 * filelock.c:
196 * fileio.c:
197 * emacs.c:
198 * editfns.c:
199 * dosfns.c:
200 * doprnt.c:
201 * doc.c:
202 * dispnew.c:
203 * dired.c:
204 * dbusbind.c:
205 * data.c:
206 * composite.c:
207 * coding.c:
208 * cmds.c:
209 * cm.c:
210 * chartab.c:
211 * charset.c:
212 * character.c:
213 * ccl.c:
214 * category.c:
215 * casetab.c:
216 * casefiddle.c:
217 * callproc.c:
218 * callint.c:
219 * bytecode.c:
220 * buffer.c:
221 * atimer.c: Include setjmp.h. (Bug#4643)
222
fd5f21e6
SM
2232009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
224
4c0354d7
SM
225 Remove leftover table unibyte_to_multibyte_table.
226 * character.c (unibyte_to_multibyte_table): Remove.
227 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
228 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
229 * character.h (UNIBYTE_TO_CHAR): New macro.
230 (MAKE_CHAR_MULTIBYTE): Use it.
231 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
232 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
233 (message_dolog, set_message_1):
234 * search.c (Freplace_match):
235 * editfns.c (Fcompare_buffer_substrings):
236 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
237 (concat):
238 * insdel.c (copy_text, count_size_as_multibyte):
239 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
240 * term.c (produce_glyphs):
241 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
242 * regex.c (RE_CHAR_TO_MULTIBYTE):
243 * cmds.c (internal_self_insert):
244 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
245
fd5f21e6
SM
246 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
247
4418646e
DN
2482009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
249
250 * puresize.h (BASE_PURESIZE): Increase to 1310000.
251
35f5c1d2
JB
2522009-10-16 Juanma Barranquero <lekktu@gmail.com>
253
254 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
255
a0cd8f6b
AR
2562009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
257
258 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
259 still needed under Tiger.
260
261 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
262
263 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
264 __Apple__.
265
266 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
267
01a8d3fa
KH
2682009-10-15 Kenichi Handa <handa@m17n.org>
269
270 * print.c (print_object): Escape a symbol like "2E10" too.
271
bf6c75c9 2722009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
273
274 Cleanups and changes for 64-bit compile under Snow Leopard.
275 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
276
277 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
278
c5959062 279 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
280 (ns_findfonts, nsfont_list_family): Use long format in printf, and
281 cast argument.
282 (nsfont_open): Use ns_char_width() everywhere.
283 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where
284 appropriate.
285
286 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
287
288 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
289 where appropriate.
290
291 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
292 where appropriate.
6e4780c5
JB
293 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
294 Use stringWithUTF8String.
bf6c75c9
AR
295 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
296
6e4780c5
JB
297 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
298 Add formal protocol mention to inheritance.
bf6c75c9
AR
299 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
300
6e4780c5
JB
301 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
302 Fix printf format.
bf6c75c9
AR
303 (ns_query_color): Use CGFloat where appropriate.
304 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
305 (EmacsScroller-mouseDown:) Use long format in printf, and cast
306 argument.
307
3d87f118
AR
308 * config.in (NS_HAVE_NSINTEGER): Drop.
309
a95c8102
AR
310 * dbusbind.c (dbus-method-return-internal)
311 (dbus-method-error-internal): Use long format in printf, and cast
312 argument.
313
314 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
315 in printf, and cast argument.
316
6873acca 317 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
318 cast argument.
319
9ec6f100
GM
3202009-10-11 Glenn Morris <rgm@gnu.org>
321
322 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
323
5be883cd
JD
3242009-10-08 Jan Djärv <jan.h.d@swipnet.se>
325
326 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
327 menu bar with a small width so it doesn't enlarge the frame.
328
d7a39b51
JB
3292009-10-08 Juanma Barranquero <lekktu@gmail.com>
330
331 * fontset.c (Fset_fontset_font): Fix typos in error messages.
332
0c2b6f8e
GM
3332009-10-06 Glenn Morris <rgm@gnu.org>
334
335 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
336 SOME_MACHINE_LISP (this enters indirectly via DOC).
337
e02131a2
EZ
3382009-10-05 Eli Zaretskii <eliz@gnu.org>
339
340 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
341
b4744254
EZ
3422009-10-04 Eli Zaretskii <eliz@gnu.org>
343
344 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
345 Doc fix.
346
dbf64827
JB
3472009-10-03 Martin Rudalics <rudalics@gmx.at>
348
349 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
350
e9a0aef8
MA
3512009-10-02 Michael Albinus <michael.albinus@gmx.de>
352
353 * lisp.h (Qdelete_directory_internal): Removed, because it is not
354 used anymore outside fileio.c.
355
356 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
357
64eb2b56
JB
3582009-10-01 Juanma Barranquero <lekktu@gmail.com>
359
360 * lisp.h (Qdelete_directory_internal):
361 Declare, instead of Qdelete_directory.
362
363 * w32fns.c (Fsystem_move_file_to_trash): Use it.
364
9d28c33e
SM
3652009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
366
367 * eval.c (Fcalled_interactively_p): Add `kind' argument.
368
9d8f3bd9
MA
3692009-10-01 Michael Albinus <michael.albinus@gmx.de>
370
9d28c33e 371 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
372 Fdelete_directory. It is not a command anymore. It has no file
373 name handler.
374
9694740b
SM
3752009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
376
377 * xdisp.c (get_next_display_element): Use an enum in last change.
378
748e162f
KH
3792009-09-28 Kenichi Handa <handa@m17n.org>
380
9694740b 381 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
382 unibyte_display_via_language_environment in handling
383 Vnobreak_char_display.
384
17efd58d
AR
3852009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
386
387 * nsterm.h (ns_app_name): New extern variable.
388
389 * nsterm.m (ns_app_name): New variable.
390 (ns_term_init): Set and use it.
391 (ns_term_shutdown): Use it.
392
393 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
394 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
395
396 * nsfns.m (ns_set_name_iconic, ns_set_name)
397 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
398 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
399
9694740b
SM
400 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
401 Remove double-casting in client_data comparison.
31c2d412 402
3208cb35
YM
4032009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
404
405 * keyboard.c (make_lispy_event): Remember last wheel direction.
406 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
407
b7d552d6
GM
4082009-09-26 Glenn Morris <rgm@gnu.org>
409
410 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
411 internal.elc. Add term/pc-win.elc.
412 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
413 term/x-win.elc.
414 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
415 term/w32-win.elc.
416 (NS_SUPPORT): New.
417 (lisp): Add NS_SUPPORT.
418 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
419
4ff670a8
DR
4202009-09-25 David Reitter <david.reitter@gmail.com>
421
422 * nsmenu.m (EmacsMenu-clear): Recognize application menu
423 on Mac OS X 10.6+ (bug#4513).
424
feabfb6c
JB
4252009-09-24 Juanma Barranquero <lekktu@gmail.com>
426
427 * frame.c (xrdb_get_resource): Return nil for empty string resources;
428 some parts of Emacs code (like font selection) don't grok them. See
429 http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
430
de59072a
AS
4312009-09-24 Andreas Schwab <schwab@redhat.com>
432
433 * coding.c (decode_coding_iso_2022): Fix operator precedence.
434
a489517b
JB
4352009-09-24 Juanma Barranquero <lekktu@gmail.com>
436
437 * dired.c (Fdirectory_files): Fix typo in docstring.
438
0592970c
AR
4392009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
440
441 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
442 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
443 (EmacsScroller-setPosition:portion:whole:): Remove -display call
444 under GNUstep.
445 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
446
447 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
448 glyph advancement.
449
48e8a88b
AR
4502009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
451
452 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 453 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
454
455 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
456 deleted (bug #4492).
457
e14f0a78
AR
458 * nsfont.m (Vns_reg_to_script): New lisp variable.
459 (syms_of_nsfont): Declare it.
460 (ns_registry_to_script): New function.
461 (ns_get_req_script): Call it.
462 (ns_findfonts): Don't give up on non-unicode registry.
463
464 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
465
5b650faa
SM
4662009-09-20 Tom Tromey <tromey@redhat.com>
467
468 * eval.c (find_handler_clause): Make stack-trace-on-error work in
469 batch mode (bug#4228).
470
a489517b 4712009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
472
473 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 474 carefully. (Bug #4339)
0bae4e09 475
fcfe06f3
CY
4762009-09-18 Chong Yidong <cyd@stupidchicken.com>
477
d798ba87 478 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 479
31642728
AR
4802009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
481
482 * emacs.c (inhibit_x_resources): Update doc string for NS.
483 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 484 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
485
486 * nsterm.h (ns_no_defaults): Remove.
487
488 * nsterm.m (ns_no_defaults): Remove.
489 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
490 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
491 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
492 don't update the NSWindow itself.
493 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 494 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
495
496 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
497 ns_use_qd_smoothing.
498
499 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
500 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 501 (x-close-connection): Drop PSFlush() under OS X.
a489517b 502 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 503
8686ac71
JB
5042009-09-17 Juanma Barranquero <lekktu@gmail.com>
505
506 * emacs.c (inhibit_x_resources): New variable.
507 (main) [HAVE_NS]: Don't process --quick command line option.
508 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
509
510 * lisp.h (inhibit_x_resources): Declare it extern.
511
512 * w32reg.c (x_get_string_resource):
513 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
514
e227ba05
EZ
5152009-09-17 Eli Zaretskii <eliz@gnu.org>
516
517 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP): Add
518 lisp/term/internal.elc.
519
742d40e8
SM
5202009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
521
522 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
523 (bug#4461).
524
005bd5a2
DN
5252009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
526
527 * puresize.h (BASE_PURESIZE): Increase to 1290000.
528
529 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
530 (OBJECTS_MACHINE): Remove, unused.
531
f9af9719
SM
5322009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
533
534 * frame.c (x_get_resource_string): Remove unused.
535
0307c7d2
JD
5362009-09-15 Jan Djärv <jan.h.d@swipnet.se>
537
538 * xterm.c (x_new_font): Call change_frame_size before calling
539 x_set_window_size, in case frame size won't change.
540
541 * frame.c (x_set_font): Remove dead code.
542
428b13d6
SM
5432009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
544
545 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
546
5766c380
SM
5472009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
548
549 * lread.c (Fload): Don't output a message after loading an obsolete
550 package any more (done in Lisp now).
551
2fd0161b
CY
5522009-09-12 Chong Yidong <cyd@stupidchicken.com>
553
554 * fns.c (syms_of_fns): Doc fix (Bug#4227).
555
bc5e75b6
SM
5562009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
557
558 * keymap.c (Fwhere_is_internal): Use nconc2.
559
c31c985e
AM
5602009-09-11 Alan Mackenzie <acm@muc.de>
561
562 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
563 batch mode.
564
78012bd2
AS
5652009-09-11 Andreas Schwab <schwab@linux-m68k.org>
566
567 * xdisp.c (display_mode_element): Detect cycles.
568
9d889332
SM
5692009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
570
571 * keymap.c (where_is_internal): Don't erroneously return nil right after
572 filling the cache.
573 (where_is_internal_1): Fix up typo.
574
7ab5d780
GM
5752009-09-11 Glenn Morris <rgm@gnu.org>
576
577 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
578 share a common doc-string.
579
5238a749
SM
5802009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
581
66d77eda
SM
582 * keymap.c (get_keymap): Return the actual keymap symbol rather than
583 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
584
5238a749
SM
585 * keymap.c (QCadvertised_binding): New constant.
586 (syms_of_keymap): Initialize it.
587 (Fwhere_is_internal): Try and use bindings from :advertised-binding
588 if applicable.
589
19f48442
SM
5902009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
591
50d4ba39
SM
592 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
593 (parse_menu_item): Streamline since bindings are recomputed all the
594 time anyway. Don't bother checking Vdefine_key_rebound_commands any
595 more and don't support lmenu's menu-alias any more either.
596
a88a5372
SM
597 * keymap.c (where_is_internal_data): Make noindirect a boolean.
598 (where_is_internal): Strip it down to only traverse the keymaps.
599 Move the cache handling from Fwhere_is_internal to here.
600 (Fwhere_is_internal): Move the handling of remapping and the choice of
601 the best binding from where_is_internal to here.
602 Unify the cached/noncached paths, so remapping is also handled
603 correctly when the cache is used, and so the cache can be used to
604 speed up remap-handling when applicable.
605 Give preference to non-remapped bindings.
606 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
607 non-remapped bindings.
608 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
609 command remapping.
610
19f48442
SM
611 * xdisp.c (display_mode_element): Move list length limit from 50 to
612 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
613
599498c3 6142009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
615
616 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
617
f9b7b5ac
SM
6182009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
619
a53af587
JB
620 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
621 (Bug#4334)
622
f9b7b5ac
SM
623 * keymap.c (where_is_internal): Filter out shadowed remappings.
624 Assume that where_is_internal returns unshadowed bindings to simplify
625 the code and get rid of the gotos. Use ASIZE.
626
04f4b72d
JD
6272009-09-04 Jan Djärv <jan.h.d@swipnet.se>
628
4da146f2
JD
629 * xterm.c (x_focus_changed): If we get a focusout and pointer
630 is invisible, make it visible.
631
04f4b72d
JD
632 * xterm.h: Remove condition for declaration of
633 x_*_window_to_frame.
634
7cef7ce3
SM
6352009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
636
637 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
638 initial terminal as well.
639
a54fa5b7
JD
6402009-09-02 Jan Djärv <jan.h.d@swipnet.se>
641
642 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 643 x_menubar_window_to_frame.
a54fa5b7
JD
644
645 * xterm.c: Remove declarations also in xterm.h
646 (XTmouse_position): Do not return valid positions
647 for clicks in the menubar and the toolbar for Gtk+.
648
649 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
650 if the widget for the event has the same top level as a frame,
651 return the frame.
652 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
653 internal windows, bug #4122.
654 (x_non_menubar_window_to_frame): Remove.
655
5a021dd0
GM
6562009-09-02 Glenn Morris <rgm@gnu.org>
657
658 * buffer.c (default-major-mode): Move most of the doc from here...
659 (major-mode): ... to here.
660
548fe2f3
NR
6612009-08-30 Nick Roberts <nickrob@snap.net.nz>
662
663 * process.c (wait_reading_process_output): Keep the descriptor
664 when pty is used by a non-child process, e.g., in I/O buffer of
665 GDB this allows inferior to be restarted.
666
e0840eef
EZ
6672009-08-29 Eli Zaretskii <eliz@gnu.org>
668
669 * xdisp.c (redisplay_internal): Remove redundant test and collapse
670 both branches into one.
671
82e98df4
SM
6722009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
673
674 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
675 (main): Use enable-multibyte-characters rather than
676 default-enable-multibyte-characters. Output a warning message when
677 running a unibyte session.
678
890617cb
YM
6792009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
680
681 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
682 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
683 (copy_data_segment): Also copy __program_vars section.
684 (copy_dyld_info) [LC_DYLD_INFO]: New function.
685 (dump_it) [LC_DYLD_INFO]: Use it.
686
687 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
688
e7adeadc
EZ
6892009-08-28 Eli Zaretskii <eliz@gnu.org>
690
691 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
692 $(SRC)/buildobj.h.
693 (buildobj.h): Renamed from $(SRC)/buildobj.h.
694 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
695 $(SRC)/buildobj.h.
696 (clean): Add buildobj.h.
697
3ed8bbdc
TZ
6982009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
699
700 * print.c (print_object): Set escapeflag to 1 when printing
701 hashtable keys and values.
702
155a6764
SM
7032009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
704
705 * lread.c (read_integer): Use doubles (and potentially return a float
706 number) as we do in string-to-number.
707 (read1): Use strtol to read integers, signal errors on strtol's
708 overflow and use floats if strtol's output is too large for
709 Elisp integers.
710
877610de
EZ
7112009-08-27 Eli Zaretskii <eliz@gnu.org>
712
713 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
714 (make-buildobj-SH): Fix last change.
715 (SRC): Move to before where it's first used.
716
ef73e7be
KH
7172009-08-27 Kenichi Handa <handa@m17n.org>
718
550c8289
KH
719 * process.c (send_process): Use encode_coding_object instead of
720 encode_coding_string to perform eol-conversion even if the string
721 is unibyte.
722
60afa08d
KH
723 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
724 character.
725
ef73e7be 726 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 727 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 728
7b3a82d7
DN
7292009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
730
5654bf63
DN
731 * callproc.c (Fcall_process): Remove always true #if.
732
7b3a82d7
DN
733 * lisp.h: Replace #if 0 code for checking with text pointing to
734 the --enable-checking configure flag.
735
736 * emacs.c (main): Mention the --enable-profiling configure flag
737 instead of using CFLAGS.
738
878bde49
KR
7392009-08-26 Ken Raeburn <raeburn@raeburn.org>
740
741 * Makefile.in (buildobj.h): New target.
742 (doc.o): Depend on it.
743 (temacs${EXEEXT}): Don't generate buildobj.lst.
744 (mostlyclean): Delete buildobj.h, not buildobj.lst.
745 * makefile.w32-in ($(SRC)/buildobj.h): New target.
746 ($(BLD)/doc.$(O)): Depend on it.
747 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
748 provided by Eli Zaretskii.)
749 ($(TEMACS)): Don't generate buildobj.lst.
750 * doc.c: Include buildobj.h.
751 (buildobj): New static variable.
752 (Fsnarf_documentation): Use it, instead of opening and reading
753 buildobj.lst.
754
1574224c
MA
7552009-08-25 Michael Albinus <michael.albinus@gmx.de>
756
757 * dbusbind.c (Fdbus_call_method)
758 (Fdbus_call_method_asynchronously): Use English numeric format for
759 timeout values in doc string.
760
d9da2f45
KH
7612009-08-25 Kenichi Handa <handa@m17n.org>
762
ef73e7be
KH
763 * alloc.c (mark_char_table): New function.
764 (mark_object): Use mark_char_table for a char-table.
765
d9da2f45
KH
766 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
767 (CHAR_TABLE_REF): Use it.
768
c8edcc01
KR
7692009-08-23 Ken Raeburn <raeburn@raeburn.org>
770
771 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
772 before invoking the newly build emacs to check for load-path
773 shadowing.
774
7763401b
GM
7752009-08-22 Glenn Morris <rgm@gnu.org>
776
777 * Makefile.in (bootstrap_exe): New variable.
778 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
779 Use ${bootstrap_exe}.
780
729eadda
EZ
7812009-08-22 Eli Zaretskii <eliz@gnu.org>
782
783 * coding.h (encode_coding_string): Don't encode unibyte strings.
784 (Bug#4047)
785
eb4c6ace
MA
7862009-08-22 Michael Albinus <michael.albinus@gmx.de>
787
788 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
789
790 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
791 intended as hotfix only.
792 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
793
36e34d1b
AR
7942009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
795
796 * nsterm.m (ns_get_color): Update documentation properly for last
797 change, and clean up loose ends in the code left by it. Fix
798 longstanding bug with 16-bit hex parsing, and add support for
799 yet another X11 format (rgb:r/g/b) for compatibility.
800 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
801 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
802
f983eb8a
SM
8032009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
804
805 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
806
3f56d3c6
MA
8072009-08-20 Michael Albinus <michael.albinus@gmx.de>
808
809 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
810 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
811 (xd_initialize, xd_pending_messages): Check, whether
812 $DBUS_SESSION_BUS_ADDRESS is set.
813
fb641d68
YM
8142009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
815
816 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
817
818 * nsterm.m (ns_get_color): Remove incompatible color formats again.
819
cf59a374
GM
8202009-08-20 Glenn Morris <rgm@gnu.org>
821
822 * emacs.c (system-type): Doc fix.
823
1373f3be
SM
8242009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
825
826 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
827 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
828
058ed861
MA
8292009-08-18 Michael Albinus <michael.albinus@gmx.de>
830
1373f3be
SM
831 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
832 New functions.
058ed861
MA
833 (xd_initialize): Revert change from 2009-08-16.
834
563a866e 8352009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
836
837 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 838 font-group vector, return nil.
5fc05db0 839
e42bdf01
CY
8402009-08-17 Chong Yidong <cyd@stupidchicken.com>
841
842 * process.c (status_notify): Don't perform redisplay.
843 (Fdelete_process, list_processes_1, process_send_signal):
844 Expliticly perform redisplay.
845 (wait_reading_process_output): Always check process status, but
846 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
847
4230ab74
KR
8482009-08-17 Ken Raeburn <raeburn@raeburn.org>
849
1373f3be 850 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
851 (XFLOAT_INIT): New macro for storing a float value.
852 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
853 * fns.c (sxhash): Copy out the value of a float in order to
854 examine its bytes.
855 * dbusbind.c (xd_append_arg): Likewise.
856
4230ab74
KR
857 * emacs.c (main): Don't call syms_of_data twice.
858
a0645cdd
MA
8592009-08-16 Michael Albinus <michael.albinus@gmx.de>
860
861 * dbusbind.c (xd_initialize): Add connection file descriptor to
862 input_wait_mask, in order to let select() detect, whether a new
863 message has been arrived.
ca4f31ea 864 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 865
485db0ba
MA
8662009-08-15 Michael Albinus <michael.albinus@gmx.de>
867
1373f3be
SM
868 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
869 New functions.
485db0ba
MA
870
871 * lisp.h (xd_pending_messages): Declare.
872
873 * keyboard.c (readable_events): Call xd_pending_messages.
874
b5b98ff4
CY
8752009-08-15 Chong Yidong <cyd@stupidchicken.com>
876
1373f3be 877 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 878
f8354c6e
CY
879 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
880
b5b98ff4
CY
881 * buffer.c (set_buffer_internal_1)
882 (swap_out_buffer_local_variables): Check for unbound local
883 variables (Bug#4138).
884
8b9fc636
EZ
8852009-08-14 Eli Zaretskii <eliz@gnu.org>
886
887 * process.c (create_pty): Fix last change.
888
ce959360
CY
8892009-08-13 Chong Yidong <cyd@stupidchicken.com>
890
891 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
892 (xbm_load_image): Caller changed.
64b807c9 893 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 894
c7baf7e9
NR
8952009-08-13 Nick Roberts <nickrob@snap.net.nz>
896
897 * process.c (create_pty): New function.
898 (Fstart_process): Use it to allow Emacs to just associate a pty
899 with the buffer. See associated change in gdb-mi.el.
900 (list_processes_1): Deal with no program name.
901 (start_process_unwind): Use pid == -2 to mean no process.
902
1ac9108a
SM
9032009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
904
905 * cmds.c (nonundocount): New global variable.
906 (keys_of_cmds): Initialize it.
907 (Fself_insert_command): Use it to combine upto 20 sequential chars
908 into a single undo entry, just like the Qself_insert_command code in
909 keyboard.c does.
910 Call frame_make_pointer_invisible, also like the Qself_insert_command
911 code in keyboard.c does.
912 * keyboard.c (command_loop_1): Use the new global nonundocount rather
913 than its own local replacement for it.
914
e267324c
KR
9152009-08-10 Ken Raeburn <raeburn@raeburn.org>
916
1ac9108a 917 * fns.c (concat): Don't re-set string length to its current value.
77437343 918
1ac9108a
SM
919 * coding.h (decode_coding_string, encode_coding_string):
920 Use SBYTES macro.
f0bed503 921
1ac9108a 922 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
923 (doprnt): Merge with doprnt1, discarding lispstrings code.
924 * lisp.h (doprnt_lisp): Don't declare.
925
416e006d
JL
9262009-08-07 Juri Linkov <juri@jurta.org>
927
928 * puresize.h (BASE_PURESIZE): Increase to 1270000.
929
6f7d5780
DN
9302009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
931
932 * print.c (syms_of_print): Undo previous change.
933
f19a0f5b
TZ
9342009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
935
936 * lread.c (read1, syms_of_lread): Read hashtables back from the
937 readable format.
938
939 * print.c (print_preprocess, print_object): Print hashtables fully
940 and readably.
941 (syms_of_print): Provide 'hashtable-print-readable.
942
b9173dc2
AR
9432009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
944
945 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
946 no family set.
947 (nsfont_open): Handle case when entity has no family.
948
1586503c
AR
9492009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
950
951 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
952 element, not a list, for match case.
953
087048cd
KH
9542009-07-28 Kenichi Handa <handa@m17n.org>
955
956 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
957 rigidly.
958
959 * xfont.c (xfont_list_pattern): Don't ignore the return value of
960 font_parse_xlfd. Check font properties more rigidly.
961
780c2506
DN
9622009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
963
31fd7c5c
JB
964 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
965 bsd-common.h.
780c2506 966
a8c0cc18
KH
9672009-07-27 Kenichi Handa <handa@m17n.org>
968
969 * xfaces.c (face_with_height): Call font_clear_prop.
970
4fbe2306
CY
9712009-07-26 Chong Yidong <cyd@stupidchicken.com>
972
111d9af3
CY
973 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
974
975 * xterm.c (x_term_init): Use Qx.
976
4fbe2306
CY
977 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
978
1ac9108a 979 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
980 (ns_get_color): Revert 2009-07-16 change.
981
beb0b7f9
EZ
9822009-07-25 Eli Zaretskii <eliz@gnu.org>
983
984 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 985 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 986
2baf5e76
KR
9872009-07-25 Ken Raeburn <raeburn@raeburn.org>
988
1ac9108a
SM
989 * coding.h (decode_coding_string, encode_coding_string):
990 Use SCHARS macro.
8890e5f5 991
2baf5e76 992 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 993 (load_depth): Delete.
2baf5e76
KR
994 (Qload_in_progress): New variable.
995 (load_unwind): Don't reference load_depth or load_in_progress.
996 (Fload): Likewise; specbind Qload_in_progress instead.
997 (init_lread): Don't initialize load_depth.
998 (syms_of_lread): Initialize and protect Qload_in_progress.
999
1395c6f5
AR
10002009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1001
1002 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1003
4e2f36cf
AR
10042009-07-23 Yavor Doganov <yavor@gnu.org>
1005
1006 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1007
5dd9a6f7
AR
10082009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1009
1010 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
1011 Bugs 3792, 3720, 2402.
1012 (ns_lookup_indexed_color): Check for bad index.
1013 (ns_index_color): Init unused slot to 0.
1014 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
1015 Bug 3714, possibly 3082.
5dd9a6f7 1016
c902b920
JR
10172009-07-22 Jason Rumney <jasonr@gnu.org>
1018
1ac9108a
SM
1019 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
1020 Position IME window at cursor (Bug#2570).
c902b920
JR
1021 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
1022 (globals_of_w32fns): Dynamically load functions required above.
1023
1024 * w32term.c (w32_draw_window_cursor): Send message to reposition
1025 any IME window.
1026
090101cf
CY
10272009-07-21 Chong Yidong <cyd@stupidchicken.com>
1028
1029 * fileio.c: Revert 2009-07-16 changes.
1030 (Vauto_save_include_big_deletions): New variable.
1031 (Fdo_auto_save): Disable auto-save only if
1032 auto-save-include-big-deletions is nil.
1033
e6583e3d
CY
10342009-07-21 Chong Yidong <cyd@stupidchicken.com>
1035
1036 * xdisp.c (move_it_to): For continued lines ending in a tab, take
1037 the overflowed pixels into account (Bug#3879).
1038
ece435a5
KR
10392009-07-21 Ken Raeburn <raeburn@raeburn.org>
1040
1041 * lread.c (load_depth): New variable.
1042 (Fload, load_unwind, init_lread): Set it to the load recursion
1043 depth; set load_in_progress as a simple boolean based on the
1044 current load_depth. (Bug#3892)
1045
40b2d973
AR
10462009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1047
1048 * nsfont.m (ns_has_attribute): Remove.
1049 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
1050
10be7e0d
JL
10512009-07-18 Juri Linkov <juri@jurta.org>
1052
1053 * process.c (Fset_process_query_on_exit_flag): Mention killing
1054 a buffer in docstring.
1055
fa055055
KH
10562009-07-17 Kenichi Handa <handa@m17n.org>
1057
1058 * casetab.c (shuffle): Fix the logic of setting up the cycle.
1059
042f7b69
YM
10602009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1061
1062 * nsfns.m (Fns_set_alpha): Remove function.
1063 (syms_of_nsfns): Don't defsubr it.
1064
1065 * nsterm.m (ns_get_color): Remove incompatible color formats.
1066 (ns_color_to_lisp): Generate #rrggbb color format string.
1067
4be941e3
RS
10682009-07-16 Richard Stallman <rms@gnu.org>
1069
1070 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
1071 (Fset_buffer_auto_saved): Handle save_length = -2.
1072
4e6b227d
CY
10732009-07-16 Chong Yidong <cyd@stupidchicken.com>
1074
1075 * xterm.c (Qx_gtk_map_stock): New var.
1076
1077 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
1078 of calling intern each time.
1079
a1856973
YM
10802009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1081
1082 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
1083 does tiling.
1084
1085 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
1086
497e54d8
KH
10872009-07-14 Kenichi Handa <handa@m17n.org>
1088
72d36834
KH
1089 * font.c (font_vconcat_entity_vectors): New function.
1090 (struct font_sort_data): New member font_driver_preference.
1091 (font_compare): Check font_driver_preference.
1092 (font_sort_entities): The format of the first argument changed.
1093 (font_delete_unmatched): Likewise.
1094 (font_list_entities): The return type changed.
1095 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
1096 (font_find_for_lface): Adjuste for the above changes.
1097 Don't suppress the checking of C even if the repertory supports it.
1098 (Flist_fonts): Adjust for the above changes.
72d36834 1099
1ac9108a
SM
1100 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
1101 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
1102 Reject a font who has adstyle property that is different from a
1103 langname derived from registry property.
1ac9108a 1104 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 1105
b6046155
EZ
11062009-07-13 Eli Zaretskii <eliz@gnu.org>
1107
1108 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
1109 local copy of dirfilename.
1110
fb6b6049
KH
11112009-07-13 Kenichi Handa <handa@m17n.org>
1112
e2402a5e
KH
1113 * chartab.c (sub_char_table_ref_and_range): Fix the range check
1114 against max_char.
1115
fb6b6049
KH
1116 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
1117 calling XSYMBOL (sym).
1118
65156807
EZ
11192009-07-11 Eli Zaretskii <eliz@gnu.org>
1120
1ac9108a
SM
1121 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
1122 New function.
1123 (directory_files_internal) [WINDOWSNT]:
1124 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
1125 the filesystem of the directory is fast or slow.
1126
1127 * w32.c (logon_network_drive): Don't assume PATH is an absolute
1128 file name.
1129 (is_slow_fs): New function.
1130 (stat): Use it to determine whether to issue more system calls to
1131 get accurate file attributes, when w32-get-true-file-attributes is
1132 `local'.
1133
e0ab5fcf
JD
11342009-07-10 Jan Djärv <jan.h.d@swipnet.se>
1135
1136 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 1137 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
1138 parameter font-parameter as default to the font dialog.
1139
784ceded
KH
11402009-07-10 Kenichi Handa <handa@m17n.org>
1141
1142 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
1143
fb8edc0b
EZ
11442009-07-09 Eli Zaretskii <eliz@gnu.org>
1145
1ac9108a 1146 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 1147
fb8edc0b
EZ
1148 * w32.c (stat): Treat UNC file names as residing on remote
1149 drives. (Bug#3542)
1150
635c75b1
KH
11512009-07-09 Kenichi Handa <handa@m17n.org>
1152
1153 * fontset.c (fontset_find_font): Fix previous change.
1154
c1d5ce94
MA
11552009-07-08 Michael Albinus <michael.albinus@gmx.de>
1156
1157 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
1158 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
1159 error flag.
1160
edb61b39
KH
11612009-07-08 Kenichi Handa <handa@m17n.org>
1162
374bf7e4
KH
1163 * fontset.c (fontset_find_font): Fix the logic of handling
1164 charset_matched.
1165 (font_for_char): Delete unused var.
1166 (generate_ascii_font_name): Delete it.
1167
edb61b39
KH
1168 * coding.h (JIS_TO_SJIS2): Fix the code range check.
1169
1170 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
1171 (encode_coding_sjis): Fix the code range check.
1172
0f3f018c
CY
11732009-07-07 Chong Yidong <cyd@stupidchicken.com>
1174
1175 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
1176 (Fexpand_file_name): Copy string data properly (Bug#3772).
1177
fcaf6f3a
JD
11782009-07-07 Jan Djärv <jan.h.d@swipnet.se>
1179
1180 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
1181 first MapNotify.
1182
6809ca75
KH
11832009-07-07 Kenichi Handa <handa@m17n.org>
1184
1185 * character.h (unibyte_has_multibyte_table): Delete extern.
1186 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
1187
1188 * charset.c (Fset_charset_priority): Update charset_unibyte.
1189 (syms_of_charset): Initialize charset_unibyte.
1190
1191 * character.c (unibyte_has_multibyte_table): Delete it.
1192 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
1193 charset_unibyte.
1194 (multibyte_char_to_unibyte_safe): Likewise.
1195 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
1196
1ac9108a 1197 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
1198 (x_produce_glyphs): Likewise.
1199
1200 * .gdbinit (xcharset): Fix the treating $arg0.
1201
ad9e2d54
EZ
12022009-07-04 Eli Zaretskii <eliz@gnu.org>
1203
1204 Emulation of `getloadavg' on MS-Windows.
1205 * w32.c: Include float.h
1206 (g_b_init_get_native_system_info, g_b_init_get_system_times)
1207 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
1208 (get_native_system_info, get_system_times): New functions.
1209 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
1210 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
1211 (globals_of_w32): Initialize g_b_init_get_native_system_info,
1212 g_b_init_get_system_times, and num_of_processors.
1213
0a3472c7
JR
12142009-07-03 Jason Rumney <jasonr@gnu.org>
1215
1216 * w32term.c (w32_initialize): Use standard types.
1217
80904120
EZ
12182009-07-03 Eli Zaretskii <eliz@gnu.org>
1219
1220 * dired.c (Ffile_attributes): Decode user and group names by the
1221 locale's encoding. (Bug#3443)
1222
6978862d
DN
12232009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
1224
f8d23104
DN
1225 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
1226 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
1227
1228 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
1229
1230 * term.c (init_tty): Remove spurious #ifdef.
1231
6978862d
DN
1232 * m/mips.h: Mention this file is also used for netbsd.
1233 * m/pmax.h: Remove file.
1234
e044e4fc
JD
12352009-07-03 Jan Djärv <jan.h.d@swipnet.se>
1236
1237 * xterm.h (struct x_display_info): Add invisible_cursor.
1238 (struct x_output): Add current_cursor.
1239
1240 * xterm.c (XTtoggle_invisible_pointer): New function.
1241 (x_define_frame_cursor): Don't define cursor if invisible or the
1242 same as before. Set current_cursor.
1243 (x_create_terminal): Set toggle_invisible_pointer_hook.
1244
1245 * xfns.c (make_invisible_cursor): New function.
1246 (x_set_mouse_color): Call make_invisible_cursor.
1247 Set current_cursor.
1248 (x_window): Set current_cursor.
1249
1250 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
1251
1252 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
1253 inserting a character.
1254 (read_avail_input): Call frame_make_pointer_visible.
1255
1256 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
1257 (frame_make_pointer_invisible, frame_make_pointer_visible):
1258 New functions.
e044e4fc
JD
1259 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
1260
1261 * frame.h: Declare frame_make_pointer_invisible and
1262 frame_make_pointer_visible.
1263 (struct frame): Add pointer_invisible.
1264
574c8efa
JD
12652009-07-02 Jan Djärv <jan.h.d@swipnet.se>
1266
7b507248
JD
1267 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
1268 frame isn't visible.
1269 (xg_frame_resized): If width/height is -1, get size of window
1270 from X server.
1271
1272 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
1273 for MapNotify.
1274
835bdaa7 1275 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 1276 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 1277 (flush_and_sync): Reintroduce.
574c8efa 1278
3f1c6666 12792009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 1280
31fd7c5c 1281 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
1282
1283 * xterm.c (x_handle_net_wm_state): Also look for sticky.
1284 (x_term_init): Initialize Xatom_net_wm_state_sticky.
1285
1286 * frame.h: Declare Qsticky.
1287
cad9ef74
JD
1288 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
1289
1290 * nsfns.m (ns_frame_parm_handlers): Ditto.
1291
1292 * frame.c: Declare Qsticky.
1293 (frame_parms): Add sticky.
1294
1295 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
1296
1297 * xterm.h: Declare x_set_sticky.
1298
1299 * xterm.c (x_set_sticky): New function.
1300
69b16610
JD
1301 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
1302 (xg_tool_bar_menu_proxy): Attach enter/leave events to
1303 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
1304
1305 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
1306
1307 * frame.c: Qmaximized is new.
1308 (x_set_frame_parameters): Do not handle fullscreen specially.
1309 Only set width and height if explicitly set.
1310 (x_set_fullscreen): Handle Qmaximized.
1311 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
1312 (syms_of_frame): Initialize Qmaximized.
1313
1ac9108a
SM
1314 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
1315 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
1316
1317 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
1318 for Expose event. Add call to x_check_fullscreen for MapNotify event.
1319 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
1320 set gravity to NorthWestGravity when USE_GTK.
1321 (set_wm_state): New function.
31fd7c5c 1322 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
1323 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
1324 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 1325 or the case when no window manager is running. That means remove calls
3f1c6666
JD
1326 to x_real_positions and x_fullscreen_adjust.
1327
1328 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
1329 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
1330 flush_and_sync.
1331 (xg_height_changed): New function.
1332 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
1333 and gtk_window_set_policy. Set frame gravity after parsing the
1334 geometry string.
3f1c6666
JD
1335 (xg_update_frame_menubar, free_frame_menubar)
1336 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
1337 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
1338 Remove calls to xg_frame_set_char_size.
1339
fd503d99
KH
13402009-07-01 Kenichi Handa <handa@m17n.org>
1341
1342 * keyboard.c (decode_keyboard_code): New function.
1343 (tty_read_avail_input): Decode the input bytes if necessary.
1344
1ac9108a
SM
1345 * coding.c (setup_coding_system):
1346 Initialize coding->carryover_bytes to 0.
fd503d99
KH
1347 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
1348 use Qno_conversion.
1349
24ed93fb
YM
13502009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1351
1352 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
1353
99061dfc
CY
13542009-06-30 Chong Yidong <cyd@stupidchicken.com>
1355
1ac9108a 1356 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 1357
ff90fbde
JR
13582009-06-30 Jason Rumney <jasonr@gnu.org>
1359
1360 * w32term.c (w32_initialize): Use GetModuleHandle for library that
1361 is already loaded.
1362 Set user model ID if supported (bug#1849).
1363
5f445726
JM
13642009-06-29 Jim Meyering <meyering@redhat.com>
1365
1366 Remove useless if-before-xfree test.
1367 * nsfont.m (nsfont_close): Remove useless test.
1368 * term.c (delete_tty): Likewise.
1369 * w32.c (system_process_attributes): Likewise.
1370 * w32font.c (w32font_close): Likewise.
1371 * xfaces.c (x_free_gc): Likewise.
1372 * xselect.c (buffer): Likewise.
1373
b9607587
AS
13742009-06-28 Andreas Schwab <schwab@linux-m68k.org>
1375
1376 * process.c (send_process): Keep decoded string in a local
1377 variable and protect it from GC. (Bug#3521)
1378
89ba96f4
EZ
13792009-06-28 Eli Zaretskii <eliz@gnu.org>
1380
1381 * term.c (create_tty_output) [MSDOS]: #ifdef away.
1382 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
1383
098a1589
CY
13842009-06-28 Chong Yidong <cyd@stupidchicken.com>
1385
485422be
CY
1386 * xdisp.c (start_display, handle_face_prop)
1387 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
1388 (redisplay_window, try_window_id, produce_image_glyph):
1389 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 1390
098a1589
CY
1391 * xterm.c (x_update_window_begin, x_new_focus_frame)
1392 (x_scroll_bar_handle_click, handle_one_xevent)
1393 (handle_one_xevent, XTread_socket, x_focus_on_frame)
1394 (x_make_frame_visible, x_make_frame_invisible)
1395 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
1396 code chunks that are now obsolete.
1397
78c38319
MA
13982009-06-28 Michael Albinus <michael.albinus@gmx.de>
1399
1400 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
1401 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
1402 for hours, when optimzation is enabled.
1403 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
1404 (xd_read_message): Make them static.
1405
4189ed40
CY
14062009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
1407
1408 * term.c (turn_on_face): Allow simultaneously bold and dim
1409 terminal faces (Bug#3530).
1410
cd9b5e16
CY
14112009-06-27 Chong Yidong <cyd@stupidchicken.com>
1412
4e23bedb
CY
1413 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
1414
cd9b5e16
CY
1415 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
1416 truncation glyphs (Bug#3686).
1417
07cc3c35
GM
14182009-06-27 Glenn Morris <rgm@gnu.org>
1419
1420 * m/pmax.h: Restore file, with only netbsd portions.
1421
31fd7c5c 14222009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 1423
cd9b5e16 1424 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 1425
42d4a64f
KH
14262009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
1427
1428 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
1429 the arg FORCE_SYMBOL.
1430
930fe55b 14312009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
1432
1433 * fontset.c (fontset_find_font): When a usable rfont_def is found
1434 in a fallback font-group, make it the first element of the group.
1435
57ebc3fd
CY
14362009-06-24 Chong Yidong <cyd@stupidchicken.com>
1437
1438 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
1439
f084f942
KH
14402009-06-24 Kenichi Handa <handa@m17n.org>
1441
1442 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
1443 set for C.
1444 (fontset_font): Record the availability of a font for C both in
1445 the realized fontsets of the current one and the default one.
1446
2f686c87
DN
14472009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
1448
1449 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
1450 conditional, it is always defined on AIX.
1451
666e158e
MB
14522009-06-23 Miles Bader <miles@gnu.org>
1453
1454 * window.c (Vrecenter_redisplay): New variable.
1455 (syms_of_window): Initialize it.
1456 (Qtty): New extern declaration.
1457 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
1458
c6da7cd2
JM
14592009-06-23 Jim Meyering <meyering@redhat.com>
1460
1ac9108a
SM
1461 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
1462 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 1463 pointer dereferences are guaranteed to be valid.
c6da7cd2 1464
678dca3d
KH
14652009-06-23 Kenichi Handa <handa@m17n.org>
1466
74d75424
KH
1467 * emacs.c (main): Call init_font ().
1468
1469 * font.h (Vfont_log): Extern it.
1470 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
1471
1472 * font.c (font_sort_entities, font_list_entities)
1473 (font_matching_entity, font_open_entity)
1474 (font_close_object): Change font_add_log to FONT_ADD_LOG.
1475 (Vfont_log): Delete static.
1476 (font_log_env_checked): Delete this variable.
1477 (font_add_log): Don't check font_log_env_checked.
1478 (font_deferred_log): Check Vfont_log.
1479 (init_font): New function.
1480
678dca3d
KH
1481 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
1482
1483 * w32font.c: Change font_add_log to FONT_ADD_LOG.
1484
1485 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
1486
1487 * xfont.c: Change font_add_log to FONT_ADD_LOG.
1488
1489 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
1490 (face_for_char): Don't call font_deferred_log here.
1491 (font_for_char): Likewise.
1492
8a668709
CY
14932009-06-22 Chong Yidong <cyd@stupidchicken.com>
1494
9a01ee33
CY
1495 * w32term.c (x_draw_glyph_string): Use the glyph string's width
1496 rather than its background_width for drawing the overline and
1497 underline (Bug#489).
1498
1499 * xterm.c (x_draw_glyph_string): Use the glyph string's width
1500 rather than its background_width for drawing the overline and
1501 underline (Bug#489).
ec7c9926
CY
1502 (xg_default_icon_file): New variable.
1503 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
1504 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 1505
8a668709
CY
1506 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
1507 (load_overlay_strings): Remove externs.
1508 (fast_find_position): Function deleted.
1509 (mouse_face_from_buffer_pos): New function, based on
1510 fast_find_position. Correctly handle before-strings,
1511 display-strings, and after-strings (Bug#1220).
1512 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
1513
4d4c02d8
CY
15142009-06-21 Chong Yidong <cyd@stupidchicken.com>
1515
1ac9108a 1516 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
1517 (move_it_in_display_line_to, move_it_in_display_line_to)
1518 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
1519
70243478
CY
15202009-06-21 Chong Yidong <cyd@stupidchicken.com>
1521
1522 * Branch for 23.1.
1523
13087e59
JR
15242009-06-21 Jason Rumney <jasonr@gnu.org>
1525
1526 * w32term.c (keyboard_codepage): New static variable.
1527 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
1528 (w32_read_socket) [WM_CHAR]: Use it to decode character
1529 input (bug#3237).
1530 (w32_initialize): Initialize it.
1531 (codepage_for_locale): New function.
1532
4735b74e
KR
15332009-06-20 Ken Raeburn <raeburn@raeburn.org>
1534
1535 * process.c (status_message): Pass Faset index argument as a lisp
1536 object, so as to work with USE_LISP_UNION_TYPE.
1537
0e727afa
YM
15382009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1539
1540 * coding.c (Ffind_coding_systems_region_internal):
1541 Cache checked characters.
1542
cf299835
KH
15432009-06-18 Kenichi Handa <handa@m17n.org>
1544
1ac9108a 1545 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 1546
90f20d94
AS
15472009-06-18 Andreas Schwab <aschwab@redhat.com>
1548
1549 * xdisp.c (redisplay_internal): Check that the frame is still
1550 live after redisplay of its windows.
1551 (redisplay_windows): Check that the window is still live.
1552
7f1faf1c
KH
15532009-06-17 Andreas Schwab <schwab@linux-m68k.org>
1554
1555 * coding.c (detect_coding_utf_16): Fix previous change.
1556
cc13543e
KH
15572009-06-16 Kenichi Handa <handa@m17n.org>
1558
1559 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
1560 UTF-16 by checking the dispersion of Eth and Oth bytes.
1561
977b85f4
AS
15622009-06-15 Andreas Schwab <schwab@linux-m68k.org>
1563
1564 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
1565
66bd43d1
KH
15662009-06-15 Kenichi Handa <handa@m17n.org>
1567
1568 * process.c (status_message): Fix previous change. Be sure to
1569 decode a localized string.
1570
cb5ca9c5
YM
15712009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1572
1573 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
1574 add comment explaining why.
1575
ec7709ba 15762009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 1577
ec7709ba 1578 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 1579
4b7f335c
AR
15802009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
1581
1582 * nsfont.m (ns_attribute_value): Remove.
1583 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
1584 (ns_has_attribute): Shrink the normal range.
1585 (ns_findfonts): Don't worry about requested spec in determining
1586 need for synthItal.
e41820ee 1587 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 1588
73b26103
SZ
15892009-06-14 Seiji Zenitani <zenitani@mac.com>
1590
1591 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
1592
5753e4da
KH
15932009-06-11 Kenichi Handa <handa@m17n.org>
1594
1595 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1596 overhang for the static composition case.
1597
3561b671
KH
15982009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1599
5753e4da
KH
1600 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1601 overhang for the automatic composition case.
1602
3561b671
KH
1603 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
1604 composition case.
1605
852bbd41
CY
16062009-06-10 Chong Yidong <cyd@stupidchicken.com>
1607
1608 * xdisp.c (get_next_display_element): When handling wrap-prefix
1609 and line-prefix, treat \n as a control character (bug#3502).
1610
9903d1e6
KH
16112009-06-10 Kenichi Handa <handa@m17n.org>
1612
1613 * font.c (font_parse_family_registry): Fix for one-char foundry.
1614 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
1615
0bcbaaaa
CY
16162009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
1617
1618 * process.c (status_message): Fix handling of multibyte signal
1619 string (Bug#3499).
1620
40aa3f13
JM
16212009-06-09 Jim Meyering <meyering@redhat.com>
1622
1f80c7e2
CY
1623 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
1624 color name is missing.
40aa3f13 1625
72d51285
KH
16262009-06-09 Kenichi Handa <handa@m17n.org>
1627
1628 * charset.c (Fmap_charset_chars): In docstring, state clearly that
1629 FROM-CODE and TO-CODE are codepoints of CHARSET.
1630
c1d04d84
AR
16312009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1632
1633 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
1634
16352009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1636
1637 Changes to support :script/:lang/:otf in NS font driver.
1638 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
1639 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
1640 indicate not part of font driver interface, and change callers.
1641 (ns_get_family): Remove pointless null check.
1642 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
1643 ns_spec_to_descriptor, ns_descriptor_to_entity.
1644 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
1645 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
1646 (ns_spec_to_descriptor, ns_descriptor_to_entity)
1647 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
1648 (ns_get_req_script, ns_accumulate_script_ranges)
1649 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
1650 New functions.
1651 (nsfont_list, nsfont_match): Use ns_findfonts.
1652 (nsfont_open): Use font descriptor instead of traits.
1653 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
1654 (dump_glyphstring): Rename to ns_dump_glyphstring.
1655
c7eb9816
AR
1656 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
1657
c1d04d84
AR
1658 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
1659
1660 * fontset.c (fontset_from_font): Remove NS-specific code.
1661
ec7709ba 16622009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
1663
1664 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
1665 nonactive windows.
1666
31fd7c5c 16672009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 1668
1ac9108a 1669 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 1670
68852c13 16712009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
1672
1673 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
1674
6756cd1d
CY
16752009-06-07 Chong Yidong <cyd@stupidchicken.com>
1676
1677 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
1678 account for the overflowing of newlines into the last glyph on the
1679 display line (Bug#3482).
1680
28bf482a
DR
16812009-06-05 David Reitter <david.reitter@gmail.com>
1682
ec7709ba
JB
1683 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
1684 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
1685 Fns_selection_exists_p, Fns_selection_owner_p.
1686
fdb55376
JR
16872009-06-03 Jason Rumney <jasonr@gnu.org>
1688
1689 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
1690 available. (Bug#3379)
1691
05129fbe
KH
16922009-05-29 Kenichi Handa <handa@m17n.org>
1693
1ac9108a
SM
1694 * coding.c (get_translation_table):
1695 Check Venable_character_translation.
05129fbe 1696
ec7709ba 16972009-05-26 David Reitter <david.reitter@gmail.com>
15891144 1698
ec7709ba
JB
1699 * nsterm.m (ns_raise_frame): Only raise frame if visible.
1700 (x_make_frame_visible): Move frame to front rather than calling
15891144 1701 ns_raise_frame().
ec7709ba 1702 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 1703 isn't key window.
ec7709ba 1704 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
1705 drawRect may be called by NSView even if the frame is hidden.
1706
ec7709ba
JB
1707 * nsfns.m (Fx_create_frame): Follow other ports in
1708 determining visibility; default to t. Ensure async_visible is set.
15891144 1709
21f73755
EZ
17102009-05-23 Eli Zaretskii <eliz@gnu.org>
1711
1712 * dired.c (Ffile_attributes): Doc fix.
1713
34001e41
CY
17142009-05-22 Chong Yidong <cyd@stupidchicken.com>
1715
1716 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
1717
46306a17
SM
17182009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
1719
1720 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
1721 and xfont_scratch_props.
1722 (syms_of_xfont): Do it here instead.
1723 (xfont_find_ccl_program): Delete, unused.
1724 (xfont_open): Delete unused var `i'.
1725
ef6e0694
KH
17262009-05-21 Kenichi Handa <handa@m17n.org>
1727
1728 * fontset.c (Qlatin): Don't make it static.
1729
46306a17
SM
1730 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
1731 New functions.
ef6e0694
KH
1732 (xfont_scripts_cache, xfont_scratch_props): New variables.
1733 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
1734 (xfont_list_pattern): Argument changed. Callers changed.
1735 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
1736 (xfont_list): Don't reject a font spec with :script property.
1737 (xfont_has_char): Fix setting of encoding.
1738 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
1739 xfont_scratch_props.
1740
17412009-05-19 Kenichi Handa <handa@m17n.org>
1742
46306a17 1743 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
1744 Callers changed.
1745
17462009-05-18 Kenichi Handa <handa@m17n.org>
1747
1748 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
1749
ac71ced7
SM
17502009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
1751
1752 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
1753 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
1754
1c6d1051
YM
17552009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1756
1757 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
1758 (x_delete_terminal): Dissociate resource database from display and
1759 then call XrmDestroyDatabase before closing display.
1760
9b9b779c
AR
17612009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1762
1763 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
1764 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
1765 whether selected frame is viable before raising it (based on patch
1766 by David Reitter), and improve commentary.
1767 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 1768
cccd42d5
KH
17692009-05-15 Kenichi Handa <handa@m17n.org>
1770
1771 * font.c (Ffont_spec): Check arguments.
1772
337fbd17
CY
17732009-05-14 Chong Yidong <cyd@stupidchicken.com>
1774
1775 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
1776 weight when testing attributes (Bug#3282).
1777
47a6002f
JD
17782009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1779
1780 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
1781 what we expect to get in the next ConfigureNotify event.
1782
9cb363db
YM
1783 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
1784 before Xft one (Bug#1696).
1785
b9126609
CY
17862009-05-07 David Reitter <david.reitter@gmail.com>
1787
1788 * nsfns.m (Fx_display_planes): Compute bitplanes using
1789 NSBitsPerPixelFromDepth (Bug#3207).
1790
27a69fd9
CY
17912009-05-10 Chong Yidong <cyd@stupidchicken.com>
1792
1793 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
1794
00f37552
TTN
17952009-05-10 Ulrich Mueller <ulm@gentoo.org>
1796
1797 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
1798
2d82a920
DR
17992009-05-07 David Reitter <david.reitter@gmail.com>
1800
ec7709ba
JB
1801 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
1802 Respect mouse face background.
2d82a920 1803
46b0d52d
DR
18042009-05-07 David Reitter <david.reitter@gmail.com>
1805
ec7709ba
JB
1806 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
1807 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
1808 in ns_update_begin and ns_update_end.
1809
ce1b23bb
SM
18102009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1811
5996e1b7
SM
1812 * nsfns.m (ns_get_screen): Rewrite.
1813 Don't presume selected-frame is of type `ns'.
1814
ba98e3a0
SM
1815 * font.c (font_update_drivers): Sanity fallback to avoid disabling
1816 all drivers.
1817
ce1b23bb
SM
1818 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
1819
bcda200f
YM
18202009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1821
1822 * keyboard.h (add_user_signal): Fix typo in extern.
1823
1824 * lisp.h (add_user_signal): Remove extern.
1825
1826 * unexelf.c (unexec): Consider a section to precede the .bss section
1827 if its addresses overlap that of .bss.
1828 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
1829 instead of dumping process.
1830
864660a2
SM
18312009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1832
1833 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
1834
50da4e56
SM
18352009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
1836
1837 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
1838
51520a1a
DN
18392009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1840
1841 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
1842 any statements.
1843
409ea3a1
AS
18442009-05-02 Andreas Schwab <schwab@linux-m68k.org>
1845
59c4c60f
AS
1846 * process.c (read_process_output): Make sure the current buffer is
1847 always restored.
1848
409ea3a1
AS
1849 * coding.c (record_conversion_result): Don't modify
1850 Vlast_code_conversion_error for successful result.
1851 (alloc_destination): Don't clobber conversion result. (Bug#1650)
1852
56f00ed2
KH
18532009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1854
1855 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 1856 (load_charset_map): Remove unnecessary code.
56f00ed2 1857
4491c9d2
DR
18582009-04-30 David Reitter <david.reitter@gmail.com>
1859
35f5b128 1860 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
1861 through f24.
1862
6970f632
CY
18632009-04-30 Chong Yidong <cyd@stupidchicken.com>
1864
1865 * xfaces.c (face_at_buffer_position): New arg base_face_id.
1866
1867 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
1868 face_at_buffer_position.
1869 (face_before_or_after_it_pos, get_next_display_element)
1870 (note_mouse_highlight): Update face_at_buffer_position call.
1871
1872 * term.c (term_mouse_highlight):
1873 * msdos.c (IT_note_mouse_highlight):
1874 * fontset.c (Finternal_char_font):
35f5b128 1875 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
1876
1877 * dispextern.h (face_at_buffer_position): Update prototype.
1878
0c616f63
KH
18792009-04-30 Kenichi Handa <handa@m17n.org>
1880
35f5b128 1881 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 1882
ad3aaf33
AS
18832009-04-29 Andreas Schwab <schwab@linux-m68k.org>
1884
1885 * callproc.c (Fcall_process): Fix GC protection. Make sure
1886 current buffer is always restored.
1887
c3c963a0
YM
18882009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1889
1890 * atimer.c (init_atimer): Also clear stopped_atimers.
1891
1892 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
1893
7e3386cb
YM
1894 * process.c (create_process): Clean up merger residues of
1895 2008-07-17 change.
1896
91f68422
CY
18972009-04-29 Ulrich Mueller <ulm@gentoo.org>
1898
1899 * lread.c (Vread_circle): New variable.
1900 (read1): Disable recursive read if Vread_circle is nil.
1901
24b34550
KH
19022009-04-29 Kenichi Handa <handa@m17n.org>
1903
1904 * fontset.h (set_default_ascii_font): Delete extern.
1905
1906 * fontset.c (set_default_ascii_font): Delete this unused function.
1907
1908 * frame.c (x_set_font): When ARG is a font-object, check if the
1909 font-object matches with the ASCII font-spec of the frame's
9c358bda 1910 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 1911
77bf07e1
AS
19122009-04-28 Andreas Schwab <schwab@linux-m68k.org>
1913
1914 * fns.c (Flocale_info): Protect vector from GC during decoding.
1915
1916 * process.c (Fstart_process): Protect argv strings from GC during
1917 encoding.
1918
2c55aacf
AS
19192009-04-27 Andreas Schwab <schwab@linux-m68k.org>
1920
1921 * sysdep.c: Include <ctype.h>.
1922
b892d3c9
DR
19232009-04-27 David Reitter <david.reitter@gmail.com>
1924
35f5b128 1925 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
1926 Remove commented-out code.
1927
9d0644c4
JB
19282009-04-26 Johan Bockgård <bojohan@gnu.org>
1929
1930 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1931
b7053016
JR
19322009-04-25 Jason Rumney <jasonr@gnu.org>
1933
1934 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
1935
4e8231f3
YM
19362009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1937
1938 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
1939 Swap bytes in short integer if fringe bitmap width > 8.
1940
493dcf2c
KH
19412009-04-23 Kenichi Handa <handa@m17n.org>
1942
1943 * xfaces.c (Fx_list_fonts): If a font size is specified in
1944 PATTERN, set it in returned scalable fonts.
1945
401e9e57
CY
19462009-04-22 Chong Yidong <cyd@stupidchicken.com>
1947
708e05dc
CY
1948 * keyboard.c (Fset_input_meta_mode): Doc fix.
1949
1950 * dispnew.c (Fsend_string_to_terminal): Doc fix.
1951
1ac9108a 1952 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
1953
1954 * coding.c (Fterminal_coding_system): Doc fix.
1955
1956 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
1957 (Fx_display_pixel_height, Fx_display_planes)
1958 (Fx_display_color_cells, Fx_server_max_request_size)
1959 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1960 (Fx_display_mm_height, Fx_display_mm_width)
1961 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
1962 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
1963 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
1964 (check_x_display_info): Handle terminal objects instead of
1965 terminal ids.
1966
401e9e57
CY
1967 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
1968 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
1969 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
1970 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 1971
df80c7f0
KH
19722009-04-21 Kenichi Handa <handa@m17n.org>
1973
5a8f12af 1974 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 1975 (font_score): Check AVGWIDTH too.
908567ef 1976
df80c7f0
KH
1977 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
1978 worst case.
1ac9108a
SM
1979 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
1980 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 1981
705af33f
JR
19822009-04-19 Jason Rumney <jasonr@gnu.org>
1983
1984 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 1985 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
1986
1987 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
1988 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
1989 get_phys_cursor_geometry.
1990
b71ac3dd 1991 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
1992 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
1993 using get_phys_cursor_geometry.
1994
1995 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
1996 correctly calculated.
1997
dc2933eb
JD
19982009-04-19 Jan Djärv <jan.h.d@swipnet.se>
1999
1ac9108a
SM
2000 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2001 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2002 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2003 is deprecated.
2004
973e7849
AS
20052009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2006
2007 * font.c (font_put_frame_data): Use xfree instead of free.
2008
314d66f4
JB
20092009-04-17 Juanma Barranquero <lekktu@gmail.com>
2010
2011 * w32font.c (Qja, Qko): Remove declarations.
2012 (syms_of_w32font): Don't DEFSYM them.
2013
cf702558
CY
20142009-04-17 Chong Yidong <cyd@stupidchicken.com>
2015
2016 * font.c (Qja, Qko): Move definitions here from ftfont.c.
2017
2018 * font.h (Qja, Qko): Extern them.
2019
2020 * ftfont.c (Qja, Qko): Remove declarations.
2021
2022 * xfont.c (Qja, Qko): Remove declarations.
2023
b50504f5
KH
20242009-04-17 Kenichi Handa <handa@m17n.org>
2025
bde25748
KH
2026 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
2027 string from a vector to handle Latin-1 characters correctly.
2028
b50504f5
KH
2029 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
2030 entity even if the cache hits.
2031
f4646fff
AS
20322009-04-16 Andreas Schwab <schwab@linux-m68k.org>
2033
2034 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 2035 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 2036
e7deaab0
AS
2037 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
2038 * lisp.h: Adjust prototypes.
2039
0a0e7d49
CY
20402009-04-16 Chong Yidong <cyd@stupidchicken.com>
2041
2042 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
2043 change (Bug#3003).
2044
3c908a57
KH
20452009-04-16 Kenichi Handa <handa@m17n.org>
2046
1ac9108a 2047 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
2048
2049 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
2050 adstyle.
2051
2052 * ftfont.c (Qja, Qko): Don't make them static.
2053 (enum ftfont_cache_for): New enum.
2054 (fc_charset_table): Undo the previous change.
2055 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
2056 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
2057 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
2058 non-scarable font, try to get AVERAGE_WIDTH.
2059 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
2060 Change ft_face_cache from a list of a hash-table. Don't check
2061 `ja' and `ko' adstyle here.
2062 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
2063 FTFONT_CACHE_FOR_CHARET.
2064 (ftfont_get_charset): Undo the previous change.
1ac9108a 2065 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
2066 (ftfont_close): Likewise.
2067 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
2068
2069 * font.c (font_sort_entites): Change the meaning of the arg
2070 BEST-ONLY. Don't optimize for VEC of lenght 1.
2071 (font_select_entity): Just return the value of font_sort_entites.
2072
2073 * xfaces.c (merge_face_vectors): Reflect font properties in
2074 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
2075 font_clear_prop if a face attribute doesn't change.
2076
3c908a57
KH
2077 * charset.h (charset_ksc5601): Extern it.
2078
2079 * charset.c (charset_ksc5601): New variable.
2080 (Fdefine_charset_internal): Set charset_ksc5601.
2081 (init_charset_once): Initialize charset_ksc5601 to -1.
2082
d65859c3
DN
20832009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2084
2085 * fileio.c (history_delete_duplicates): Remove unused declaration.
2086
2087 * callint.c (history_delete_duplicates): New declaration.
2088 (Fcall_interactively): Remove command history duplicates when
2089 history_delete_duplicates is true.
2090
3ba010e5
EZ
20912009-04-14 Eli Zaretskii <eliz@gnu.org>
2092
2093 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
2094
06f19b91
KH
20952009-04-14 Kenichi Handa <handa@m17n.org>
2096
2097 * font.c (Ffont_info): Fix docstring. Fix the second element of
2098 the returned value (bug#2949).
2099
2cce8bfc
CY
21002009-04-14 Chong Yidong <cyd@stupidchicken.com>
2101
2102 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
2103
d156542d
KH
21042009-04-14 Kenichi Handa <handa@m17n.org>
2105
2106 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
2107 encoding charset is ascii_compatible.
2108
2109 * charset.c (Fdefine_charset_internal): Make charset
2110 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
2111 code_offset is 0, and covers all ASCII characters.
2112
86fa089e
SM
21132009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2114
2115 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
2116 (ns_string_to_pasteboard_internal):
2117 * nsmenu.m (process_dialog):
2118 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
2119 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
2120 * lisp.h (Fx_load_color_file): Declare.
2121
a8a3728b
KH
21222009-04-13 Kenichi Handa <handa@m17n.org>
2123
1ac9108a 2124 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
2125 (font_select_entity): Suppress the code to optimize for the same
2126 kind of fonts.
2127 (font_load_for_lface): Get a font that supports at least ASCII
2128 characters.
2129
2130 * ftfont.c (Qja, Qko): New variables.
2131 (fc_charset_table): Delete uniquifier data for iso8859-1.
2132 (ftfont_get_latin1_charset): New function.
2133 (get_adstyle_property): New function.
2134 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
2135 bitmap fonts.
2136 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
2137 Delete iso-8859-1 range from the charset of fonts whose adstyle is
2138 `ko' or `ja'.
2139 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 2140 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
2141 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
2142 property.
2143 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
2144 (syms_of_ftfont): DEFSYM Qja and Qko.
2145
483670b5
KH
21462009-04-09 Kenichi Handa <handa@m17n.org>
2147
12b55765
KH
2148 * charset.c (map_charset_chars): For a charset of `superset'
2149 method, fix calculation of code range.
2150
483670b5
KH
2151 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
2152 from the list of extra properties.
2153 (font_clear_prop): Be sure to delete `:name' font property.
2154
57d3b93b
KH
21552009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2156
b4b2c2ca
YM
2157 * dispnew.c (redraw_overlapping_rows): Fix detection of
2158 overlapping for topmost and bottommost rows.
2159
1ac9108a 2160 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 2161
472c3609
JR
21622009-04-06 Jason Rumney <jasonr@gnu.org>
2163
2164 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
2165
ab193662
KH
21662009-04-06 Kenichi Handa <handa@m17n.org>
2167
2168 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
2169
2170 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
2171
0c26f026
KH
21722009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2173
2174 * ftfont.c (ftfont_open): Fix checking of the return value of
2175 FT_Load_Char. Fix setting font->underline_thickness.
2176
e173bbce
CY
21772009-04-04 Chong Yidong <cyd@stupidchicken.com>
2178
2179 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
2180 (Fterminal_parameters, Fterminal_parameter)
2181 (Fset_terminal_parameter): In doc string, refer to terminal
2182 objects rather than terminal ids.
2183
693a2698
EZ
21842009-04-04 Eli Zaretskii <eliz@gnu.org>
2185
2186 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
2187 ret_lim_data. (Bug#2867)
2188
d5221487
CY
21892009-04-03 Chong Yidong <cyd@stupidchicken.com>
2190
2191 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
2192 so they don't get wider than the window, matching 2006-01-23
2193 change to the partner function in xdisp.c (Bug#2800).
2194
223509a3
KH
21952009-04-03 Kenichi Handa <handa@m17n.org>
2196
2197 * print.c (print_object): Make each lowest sub_char_table start a
2198 new line (Bug#2866).
2199
74fcd0b1
KH
22002009-04-02 Kenichi Handa <handa@m17n.org>
2201
2202 * fontset.c (fontset_font): Record no-font when a fontset
2203 explicitly tells not to try another font-specs.
2204
c542407d
SM
22052009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
2206
2207 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
2208
e3869731
KH
22092009-03-30 Kenichi Handa <handa@m17n.org>
2210
d8d2f142
KH
2211 * fontset.c (fontset_from_font): Specify only registry in a
2212 font-spec for all characters supported by that registry.
2213
e3869731
KH
2214 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
2215 even if HAVE_M17N_FLT is not defined.
2216
5da5f805
CY
22172009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
2218
2219 * ftfont.c: Conditionalize prototyping and use of
2220 ftfont_variation_glyphs.
2221
ab226c50
SM
22222009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2223
9628fed7
SM
2224 * frame.c (delete_frame): Work around compiler bug.
2225
2226 * editfns.c (general_insert_function): Adjust to insdel.c changes.
2227 * insdel.c (prepare_to_modify_buffer, signal_before_change):
2228 Some more EMACS_INT.
2229 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
2230
2231 * xdisp.c (dump_glyph): Fix typo.
2232
ae19ba7c
SM
2233 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
2234 (adjust_markers_gap_motion, adjust_markers_for_delete)
2235 (adjust_markers_for_insert, adjust_point)
2236 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
2237 (make_gap, copy_text, count_size_as_multibyte, insert)
2238 (insert_and_inherit, insert_before_markers)
2239 (insert_before_markers_and_inherit, insert_1)
2240 (count_combining_before, count_combining_after, insert_1_both)
2241 (insert_from_string, insert_from_string_before_markers)
2242 (insert_from_string_1, insert_from_gap, insert_from_buffer)
2243 (insert_from_buffer_1, adjust_after_replace)
2244 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
2245 (replace_range_2, del_range, del_range_1, del_range_byte)
2246 (del_range_both, del_range_2, modify_region)
2247 (prepare_to_modify_buffer, signal_before_change)
2248 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
2249 for buffer positions and sizes.
2250 * lisp.h: Adjust prototypes accordingly.
2251
2252 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
2253 (non_regular_inserted, non_regular_nbytes, read_non_regular)
2254 (Finsert_file_contents): Use EMACS_INT for buffer positions.
2255
ab226c50
SM
2256 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
2257
46dfb8fb
JD
22582009-03-27 Jan Djärv <jan.h.d@swipnet.se>
2259
2260 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
2261 lines and columns so we keep the same pixel height and width.
2262
2263 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
2264 the property _NET_WM_STATE has changed.
46dfb8fb
JD
2265 (x_handle_net_wm_state): New function to update frame parameter
2266 fullscreen.
2267 (x_term_init): Initialize atoms for _NET_WM_STATE.
2268
2269 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
2270
d347e494
SM
22712009-03-27 Kevin Ryde <user42@zip.com.au>
2272
2273 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
2274 Gpm_GetEvent as an error that justifies closing the filedescriptor.
2275 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
2276 (Fgpm_mouse_stop): Pass that new parameter.
2277 * termhooks.h (close_gpm): Adjust prototype.
2278
84db11d6
SM
22792009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
2280
c95a5008
SM
2281 * lisp.h (Fx_focus_frame): Declare.
2282
84db11d6
SM
2283 * callint.c (Fcall_interactively): For '^' just delegate the work to
2284 handle-shift-selection.
2285 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
2286
0a1958d6
CY
22872009-03-24 Chong Yidong <cyd@stupidchicken.com>
2288
0bfdff23
CY
2289 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
2290
0a1958d6
CY
2291 * data.c (Qinteractive_form): New variable.
2292 (Finteractive_form): Use it.
2293
2294 * eval.c (Fcommandp): Use Qinteractive_form.
2295
58aec0d6
JR
22962009-03-24 Jason Rumney <jasonr@gnu.org>
2297
2298 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
2299 Calculate total size precisely. Decode environment variables
2300 before substituting. (Bug#38)
2301
553dd618
KH
23022009-03-24 Kenichi Handa <handa@m17n.org>
2303
2304 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 2305 encoding (Bug#2722).
553dd618 2306
c39ea606
JD
23072009-03-23 Jan Djärv <jan.h.d@swipnet.se>
2308
2309 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
2310 that gdpy is set.
2311
bc9b2b5e
AM
23122009-03-22 Alan Mackenzie <acm@muc.de>
2313
2314 * callint.c (Finteractive): Clarify the doc string - even
2315 promptless elements need \n separators.
2316
9f995a76
JR
23172009-03-22 Jason Rumney <jasonr@gnu.org>
2318
2319 * w32term.c (syms_of_w32term): Doc fix for
2320 x-use-underline-position-properties.
2321
22749e9a
EZ
23222009-03-21 Eli Zaretskii <eliz@gnu.org>
2323
2324 * w32.c (getpwuid): Change argument type to unsigned.
2325 (struct w32_id): Change type of `rid' member to unsigned.
2326 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
2327 argument ID to unsigned. All callers changed.
2328 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
2329
e00553bf
EZ
23302009-03-20 Eli Zaretskii <eliz@gnu.org>
2331
2332 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
2333 negative, produce a float value.
2334
2335 * dired.c (make_uid, make_gid): New functions.
2336 (Ffile_attributes): Use them to avoid negative UID and GID.
2337
f761d6b6
JB
23382009-03-20 Juanma Barranquero <lekktu@gmail.com>
2339
2340 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
2341 (syms_of_keyboard) <command-hook-internal, input-method-function>:
2342 Fix typos in docstrings.
2343
d507f8d7
KH
23442009-03-19 Kenichi Handa <handa@m17n.org>
2345
2346 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
2347 changed, use font_load_for_lface to get a new font object.
2348 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
2349
2350 * frame.c (x_set_font): Handle the case that ARG is a cons.
2351
c68845e0
GM
23522009-03-19 Glenn Morris <rgm@gnu.org>
2353
2354 * fileio.c (Fsubstitute_in_file_name): Doc fix.
2355
bfa49dd1
CY
23562009-03-19 Chong Yidong <cyd@stupidchicken.com>
2357
2358 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
2359
8458d4c1
KH
23602009-03-19 Kenichi Handa <handa@m17n.org>
2361
2362 * charset.c (load_charset_map_from_file): When a mapfile can't be
2363 loaded, signal an error.
2364
78e7d1fe
EZ
23652009-03-18 Eli Zaretskii <eliz@gnu.org>
2366
2367 * dired.c (Ffile_attributes): Make sure UID and GID are always
2368 positive, even if the value is too large for a positive EMACS_INT.
2369 Doc fix.
2370
2371 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
2372
5da9fdfa
YM
23732009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2374
2375 * xmenu.c (xdialog_show): Move Fredisplay call ...
2376 (Fx_popup_dialog): ... here.
2377
7519c40d
SM
23782009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
2379
2380 * dired.c (file_name_completion): Disable the first optimization just
2381 installed, since it is not implemented correctly.
2382
2cd298e2
SM
23832009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2384
2385 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 2386 only if the entry can affect bestmatch.
2cd298e2
SM
2387 Stop the search early, as Ftry_completion already does.
2388
48d37adf
CY
23892009-03-17 Chong Yidong <cyd@stupidchicken.com>
2390
e10c9c93 2391 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 2392
9286b16a
CY
23932009-03-15 Chong Yidong <cyd@stupidchicken.com>
2394
2395 * keyboard.c (parse_menu_item): Don't display remappings as menu
2396 equivalent bindings (Bug#788).
2397
f7b146dc
JR
23982009-03-15 Jason Rumney <jasonr@gnu.org>
2399
2400 * w32term.h (WM_EMACS_PAINT): New message.
2401 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
2402 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
2403 before passing to lisp thread. (Bug#950)
2404
f761d6b6 24052009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 2406
d93f9575
CY
2407 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
2408 variable as it was never reset.
2409 (ns_term_init): Remove initialization of Lisp-settable defaults
2410 and ns_expand_space.
2411 (-setPanelFromDefaultValues): Remove ns_expand_space.
2412 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
2413 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
2414 i.e. no additional spacing, similar to Carbon port.
2415
d93f9575
CY
2416 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
2417 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 2418
305018ec
JD
24192009-03-14 Jan Djärv <jan.h.d@swipnet.se>
2420
2421 * sound.c (alsa_configure): Remove call to deprecated
2422 snd_pcm_sw_params_set_xfer_align.
2423
f761d6b6 24242009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
2425
2426 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
2427 after clicking in a detached tool bar.
2428 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
2429
46e722a9
SM
24302009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
2431
348db3dd
SM
2432 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
2433 int/Lisp_Object mixup).
46e722a9 2434
a3d16f39
KH
24352009-03-13 Kenichi Handa <handa@m17n.org>
2436
2437 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 2438 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
2439 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
2440 (set_fontset_font): Change ARG to a vector. Handle range_list in
2441 ARG correctly.
2442 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 2443 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
2444 the above change.
2445 (fontset_from_font): Fix previous change.
fe24f56a 2446 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
2447 entry. If FONTSET is the default fontset, don't set the extra
2448 slot of the returning char-table.
2449
b066e6b6
JB
24502009-03-12 Juanma Barranquero <lekktu@gmail.com>
2451
2452 * nsfns.m (Fx_close_connection): Doc fix.
2453 (Fns_do_applescript): Reflow docstring.
2454 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
2455 (Fx_display_pixel_width, Fx_display_pixel_height)
2456 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
2457 Fix typos in docstrings.
2458 (Fns_set_alpha): Fix typos in error messages.
2459
d472514e 24602009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 2461
d472514e 2462 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
2463 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
2464 were used for such events.
2465
d472514e
JB
2466 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
2467 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 2468
d472514e 2469 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
2470 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
2471
fb930676
KH
24722009-03-11 Kenichi Handa <handa@m17n.org>
2473
ff85581a
KH
2474 * font.h (font_open_by_spec): Extern it.
2475
c50b7e98
KH
2476 * font.c (font_open_by_spec): New function.
2477 (font_open_by_name): Use font_open_by_spec.
2478
fb930676
KH
2479 * frame.c (x_set_font): When ARG is a font-object, don't alter the
2480 fontset of the frame.
2481
2482 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
2483 modify the default font of frames that use this fontset.
2484 (num_auto_fontsets): New variable.
2485 (fontset_from_font): Use num_auto_fontsets to decide a fontset
2486 name. Be sure to set FONTSET_ASCII to the correct font name.
2487 (update_auto_fontset_alist): New function.
2488
df4e8455
JB
24892009-03-11 Juanma Barranquero <lekktu@gmail.com>
2490
2491 * makefile.w32-in: Update dependencies.
2492
0a375797
AR
24932009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2494
2495 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
2496
61313fa3
SM
24972009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2498
2499 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
2500
b55103fb
CY
25012009-03-10 Chong Yidong <cyd@stupidchicken.com>
2502
2503 * lread.c (Feval_buffer): Doc fix.
2504
dde2559c
KH
25052009-03-09 Kenichi Handa <handa@m17n.org>
2506
2507 * charset.c (Qfile_name_handler_alist): Extern it.
2508 (load_charset_map_from_file): Temporarily bind
2509 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
2510
df4e8455 25112009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 2512
47f588bb
GM
2513 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
2514 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 2515
4ddf94bd
AR
25162009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2517
4c9bdfc2
AR
2518 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
2519 (x_set_window_size): Change back to calculated method of setting
2520 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
2521 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
2522 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
2523
fe41ae9e
AR
2524 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
2525
4c9bdfc2
AR
2526 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
2527 accelerator in parens under GNUstep.
2528
825d0875
KH
25292009-03-06 Kenichi Handa <handa@m17n.org>
2530
2531 These changes are to detect incorrect composition sequence without
f3b3be74 2532 looking ahead the source. (Bug#2370)
825d0875
KH
2533
2534 * coding.h: Include "composite.h".
2535 (enum compisition_state): New enum.
2536 (struct compisition_status): New struct.
2537 (struct iso_2022_spec): New member cmp_status.
2538 (struct emacs_mule_spec): New struct.
2539 (struct coding_system): New members ctext_extended_segment_len and
2540 embedded_utf_8. Change the union member
2541 spec.emacs_mule_full_support to spec.emacs_mule.
2542
2543 * coding.c (CODING_ISO_CMP_STATUS): New macro.
2544 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 2545 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
2546 (ADD_COMPOSITION_DATA): New arg nbytes.
2547 (emacs_mule_char): New arg cmp_status.
2548 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
2549 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
2550 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
2551 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
2552 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
2553 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
2554 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
2555 (EMACS_MULE_COMPOSITION_END): New macro.
2556 (emacs_mule_finish_composition): New function.
2557 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
2558 (decode_coding_emacs_mule): Avoid long looking ahead while
2559 handling composition.
2560 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
2561 (ENCODE_COMPOSITION_RULE): New macro.
2562 (finish_composition): New function.
2563 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
2564 (DECODE_COMPOSITION_START): New implementation.
2565 (DECODE_COMPOSITION_END): Likewise.
2566 (STORE_COMPOSITION_RULE): New macro.
2567 (decode_coding_iso_2022): Avoid long looking ahead while handling
2568 composition, CTEXT extended segment, and embedded UTF-8.
2569 (setup_coding_system): For a coding of type iso-2022, reset
2570 CODING_ISO_EXTSEGMENT_LEN (coding) and
2571 CODING_ISO_EMBEDDED_UTF_8 (coding).
2572 (get_translation): Delete arguments last_block, from_nchars,
2573 to_nchars. Callers changed.
2574 (produce_chars): Don't modify charbuf. Adjusted for the change of
2575 get_translation.
98a326f7 2576 (produce_composition): Adjust for the new annotation sequence.
825d0875 2577 (handle_composition_annotation): Likewise.
98a326f7 2578 (consume_chars): Adjust for the change of get_translation.
825d0875 2579
ccbc4452
AR
25802009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
2581
4ddf94bd 2582 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 2583
988a7ddb
KH
25842009-03-05 Kenichi Handa <handa@m17n.org>
2585
2586 * font.c (font_select_entity): New function.
2587 (font_find_for_lface): Use font_select_entity to select a font.
2588
2589 * fontset.c (fontset_find_font): If a font found without
a8a3728b 2590 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
2591 font with C restriction.
2592
98a326f7 25932009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 2594
be1bce46 2595 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 2596
10ea2b82
JR
25972009-03-04 Jason Rumney <jasonr@gnu.org>
2598
2c93b248 2599 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 2600 characters that have already been read. (Bug#2569)
2c93b248 2601
10ea2b82
JR
2602 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
2603 Log an error message if check_image_size failed.
2604 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 2605 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 2606
71a0c011
EZ
26072009-03-02 Eli Zaretskii <eliz@gnu.org>
2608
2609 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
2610 when decoding process output.
2611
2f63bba8
RS
26122009-03-01 Richard M Stallman <rms@gnu.org>
2613
2614 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
2615
2616 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
2617
0a9564cb
EZ
26182009-02-28 Eli Zaretskii <eliz@gnu.org>
2619
2620 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
2621 (decode_coding_emacs_mule, decode_coding_iso_2022)
2622 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2623 (decode_coding_raw_text, decode_coding_charset)
2624 (setup_coding_system, decode_eol, decode_coding, consume_chars):
2625 Honor inhibit-eol-conversion. (Bug #2186)
2626
449148b3
JR
26272009-02-28 Jason Rumney <jasonr@gnu.org>
2628
2629 * coding.c (detect_coding_charset): If not checking latin extra,
2630 fail on characters between 0x80 and 0xA0. (Bug#2354)
2631
a4aee864
EZ
26322009-02-28 Eli Zaretskii <eliz@gnu.org>
2633
2634 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 2635 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 2636
d88bee5a
GM
26372009-02-27 Glenn Morris <rgm@gnu.org>
2638
2639 * callint.c (Finteractive): Doc fix.
2640
a808f22d
KH
26412009-02-27 Kenichi Handa <handa@m17n.org>
2642
2643 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
2644
caf8d60c
CY
26452009-02-27 Chong Yidong <cyd@stupidchicken.com>
2646
2647 * font.c (font_style_to_value): Set value for unknown symbols to
2648 100 instead of 255.
b61137ea
CY
2649 (weight_table, slant_table, width_table): Treat "unspecified" as
2650 the default value.
caf8d60c 2651
1a0de25c
JB
26522009-02-26 Juanma Barranquero <lekktu@gmail.com>
2653
2654 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
2655
8fc45744
JB
26562009-02-25 Juanma Barranquero <lekktu@gmail.com>
2657
107bd7d1
JB
2658 * lread.c (Fload): Stop checking Vloads_in_progress and signal
2659 error as soon as a recursive load is detected.
8fc45744 2660
f097e223
AR
26612009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2662
2663 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
2664 before caching.
2665
8810a12f
KH
26662009-02-24 Kenichi Handa <handa@m17n.org>
2667
2668 * fontset.c (fontset_find_font): Fix the condition for checking
2669 unavailable font.
2670
2c7d1565
GM
26712009-02-24 Glenn Morris <rgm@gnu.org>
2672
2673 * xfaces.c (Finternal_set_font_selection_order): Remove leading
2674 whitespace that confuses documentation.
2675
a20878b6
MB
26762009-02-23 Miles Bader <miles@gnu.org>
2677
2678 * process.c (Flist_system_processes, Fprocess_attributes)
2679 (syms_of_process): Rename `system-process-attributes' to
2680 `process-attributes'.
2681
b3b58c01
AS
26822009-02-22 Andreas Schwab <schwab@linux-m68k.org>
2683
1b3b981b
AS
2684 * coding.h (struct coding_system): Make safe_charsets a pointer to
2685 unsigned char.
2686 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
2687 being 255.
2688 (SAFE_CHARSET_P): Likewise.
2689 (setup_iso_safe_charsets): Properly setup safe_charsets.
2690 (Fdefine_coding_system_internal): Likewise.
2691 (setup_coding_system): Likewise. Remove unneeded casts.
2692 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
2693 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
2694 unneeded casts.
2695
b3b58c01
AS
2696 * insdel.c (del_range_2): Don't modify gap contents when called
2697 from decode_coding_object. (Bug#1809)
2698
0b6f228c
CY
26992009-02-21 Chong Yidong <cyd@stupidchicken.com>
2700
2701 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
2702 Qfont_object.
2703 (Ftype_of): Recognize font objects.
2704
2705 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
2706
2707 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
2708 moved to data.c.
2709
52f8870b
AR
27102009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2711
2712 * nsterm.m (x_make_frame_invisible): Unset async_visible,
2713 async_iconified. Based on a patch by Christian Lynbech
2714 <christian.lynbech@tieto.com>.
2715 (EmacsView-windowDidMiniaturize:): Unset async_visible.
2716
7087d5e9
GM
27172009-02-20 Glenn Morris <rgm@gnu.org>
2718
2719 * syntax.c (Fskip_chars_forward): Fix doc typo.
2720
41d2ceef
CY
27212009-02-20 Chong Yidong <cyd@stupidchicken.com>
2722
2723 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
2724
1a3b7ca6
CY
27252009-02-19 Chong Yidong <cyd@stupidchicken.com>
2726
2727 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
2728
73cce38d
KH
27292009-02-19 Kenichi Handa <handa@m17n.org>
2730
2731 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 2732 Don't overflow coding->carryover. (Bug#2370)
73cce38d 2733
a51092ee
DN
27342009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
2735
2736 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
2737
c423ecca
KH
27382009-02-18 Kenichi Handa <handa@m17n.org>
2739
2740 * font.c (font_check_otf_features): Fix handling of `nil' element.
2741 (Ffont_spec): Describe :lang and :otf in the docstring.
2742
4c1958f4
AS
27432009-02-16 Andreas Schwab <schwab@suse.de>
2744
2745 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
2746 string.
2747
5704f39a
KH
27482009-02-16 Kenichi Handa <handa@m17n.org>
2749
2750 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 2751 (Bug#1723)
5704f39a 2752
8f0085aa
CY
27532009-02-14 Chong Yidong <cyd@stupidchicken.com>
2754
a057d86a 2755 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
2756
2757 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
2758 (handle_line_prefix): Suppress wrapping of wrap prefixes.
2759
aff01dd9
EZ
27602009-02-14 Eli Zaretskii <eliz@gnu.org>
2761
2762 * msdos.c (MAX_SCREEN_BUF): New macro.
2763 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
2764 Encode the entire run of glyphs sharing the same face, instead of
2765 doing that one glyph at a time (fixes a bug with displaying
2766 double-size characters).
2767
ba301db3
AR
27682009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
2769
2770 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
2771
2772 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
2773 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 2774 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
2775
2776 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 2777 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 2778
51d861de
SM
27792009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
2780
2781 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
2782 invisible areas.
2783
7fed8996
JR
27842009-02-12 Jason Rumney <jasonr@gnu.org>
2785
631ea4fb
JR
2786 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
2787 (add_font_entity_to_list): Call check_face_name even when family
2788 is unspecified.
2789
cb4a3e42
JR
2790 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2791 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 2792 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 2793
7fed8996 2794 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 2795 raster fonts. (Bug#2219)
7fed8996 2796
895416e3
KH
27972009-02-12 Kenichi Handa <handa@m17n.org>
2798
2799 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
2800 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
2801 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 2802 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2803 (find_automatic_composition): While looking forward and backward,
2804 check static composition. Fix where to stop looking forward.
2805 (composition_adjust_point): Fix checking of static composition.
2806 (Fcomposition_get_gstring): Pay attention to
1dacf998 2807 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2808
2809 * lisp.h (fast_looking_at): Extern it.
2810
2811 * search.c (fast_looking_at): New function.
2812
51d861de 2813 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
2814 <struct glyph>.u.cmp.to.
2815 (append_composite_glyph): Likewise.
2816
51d861de 2817 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
2818 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
2819 composition.
51d861de 2820 (append_composite_glyph): Adjust for the change of
895416e3
KH
2821 <strcut glyph>.u.cmp.to.
2822
8510724d
JB
28232009-02-11 Juanma Barranquero <lekktu@gmail.com>
2824
2825 * casetab.c (init_casetab_once):
2826 * coding.c (ALLOC_CONVERSION_WORK_AREA):
2827 * font.c (font_update_lface):
2828 * fontset.c (Fnew_fontset):
2829 * ftfont.c (ftfont_drive_otf):
2830 * xfont.c (xfont_open):
2831 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
2832
294fa707
SM
28332009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
2834
2835 * fileio.c (Fwrite_region): !NILP -> CONSP.
2836
b5bfebec
AS
28372009-02-10 Andreas Schwab <schwab@suse.de>
2838
2839 * process.c (send_process): Properly relocate pointer into data
adab88bd 2840 when using encoded data. (Bug#2272)
b5bfebec 2841
cb84a2be
KH
28422009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
2843
2844 * coding.c (detect_coding_charset): Fix previous change.
2845
89e09428
JR
28462009-02-08 Jason Rumney <jasonr@gnu.org>
2847
2848 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 2849 disappeared while hourglass was displayed. (Bug #2193)
89e09428 2850
4470a277
AS
28512009-02-07 Andreas Schwab <schwab@suse.de>
2852
2853 * unexelf.c (unexec): Fix error message.
2854
3175b12a
AR
28552009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
2856
2857 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 2858 when modal window is active. (Bug #2152)
3175b12a
AR
2859 (applicationShouldTerminate:): Remove now-unneeded while loop
2860 around NSRunAlertPanel.
2861
2862 * nsmenu.m (popupSession): New file-global variable.
2863 (pop_down_menu): End the popupSession before closing dialog.
2864 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
2865 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
2866 don't query NSApp for events (just sleep instead).
2867
8434d0b8
EZ
28682009-02-07 Eli Zaretskii <eliz@gnu.org>
2869
51d861de
SM
2870 * coding.c (syms_of_coding) <translation-table-for-input>:
2871 Modify doc string to discourage use for character code unification.
8434d0b8 2872
aa82edfd
CY
28732009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2874
2875 * atimer.c (run_timers): Update pending_atimers.
2876
2d283c7c
CY
28772009-02-06 Chong Yidong <cyd@stupidchicken.com>
2878
eb306cab
CY
2879 * image.c (svg_load_image): Fix last change.
2880
2d283c7c
CY
2881 * xfns.c (Fx_create_frame): Signal an error if no font is
2882 found (Bug#2147).
2883
4d8e170e
JB
28842009-02-05 Juanma Barranquero <lekktu@gmail.com>
2885
2886 * character.c (syms_of_character) <script-representative-chars>:
2887 Fix typo in docstring.
2888
c96169a0
AR
28892009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2890
2891 * nsmenu.m (pop_down_menu): New function.
2892 (ns_popup_dialog): Call it on unwind.
2893 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
2894 call timer_check() (Bug#2154).
2895 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
2896 handling_signal is set.
2897 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
2898
31fd7c5c 2899 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
2900
2901 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
2902
2903 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
2904
51d861de
SM
2905 * keyboard.c (poll_for_input_1, handle_async_input):
2906 Set handling_signal under HAVE_NS.
c96169a0 2907
aacd8ba1
GM
29082009-02-04 Glenn Morris <rgm@gnu.org>
2909
2910 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
2911
4cb75c4b
KH
29122009-02-04 Kenichi Handa <handa@m17n.org>
2913
2914 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
2915
2916 * charset.c (Fchar_charset): New optional arg restriction.
2917
2918 * coding.h (coding_system_charset_list): Extern it.
2919
2920 * coding.c (coding_system_charset_list): New function.
2921
2922 * composite.c: Include coding.h and termhooks.h.
2923 (composition_gstring_p): Fix for the terminal case.
2924 (composition_gstring_width): Likewise.
2925 (fill_gstring_body): Likewise.
2926 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
2927 the frame.
2928 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
2929 is within a composition.
867d4bb3 2930 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
2931
2932 * term.c (encode_terminal_code): Fix handling of composition.
2933 (produce_composite_glyph): For static composition, get pixel_width
2934 from struct composition.
2935
826ba17e
AS
29362009-02-02 Andreas Schwab <schwab@suse.de>
2937
2938 * unexelf.c (unexec): Handle unaligned bss offset.
2939
8ad093db
AR
29402009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2941
2942 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
2943 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 2944
8ad093db
AR
2945 * keyboard.c (handle_interrupt): Don't call
2946 quit_throw_to_read_char() under NS.
d0a76a6e 2947
8ad093db
AR
2948 * blockinput.h: Remove NS-specific code.
2949
4d18a7a2
DN
29502009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
2951
db878925
DN
2952 * dispnew.c (window_change_signal): Don't try to get the size of a
2953 suspended tty frame.
2954 * term.c (Fresume_tty): Resize if the size has changed while the
2955 tty was suspended.
2956
4d18a7a2
DN
2957 * alloc.c (mark_stack): Properly conditionalize previous change.
2958
8984df7c
JB
29592009-01-30 Juanma Barranquero <lekktu@gmail.com>
2960
2961 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
2962 * w32term.c (w32_read_socket) [SYNC_INPUT]:
2963 Remove; this code is not used on Windows.
2964
75f4f1ac
EZ
29652009-01-30 Eli Zaretskii <eliz@gnu.org>
2966
2967 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
2968 EOLs that also has stray ^M characters.
2969
07a1e794
JB
29702009-01-30 Juanma Barranquero <lekktu@gmail.com>
2971
2972 * atimer.c (run_timers, alarm_signal_handler):
2973 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
2974 * w32inevt.c (w32_console_read_socket):
2975 * w32term.c (w32_read_socket):
2976 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
2977
a8b11cc9
CY
29782009-01-30 Chong Yidong <cyd@stupidchicken.com>
2979
2980 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
2981 Initialize it as a relative filename pattern.
2982 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
2983 (Fcall_process_region): Simplify temp file creation using
2984 temporary-file-directory.
2985
c279587b
EZ
29862009-01-29 Eli Zaretskii <eliz@gnu.org>
2987
2988 * msdos.c: Rename pending_signals to msdos_pending_signals.
2989 (sig_suspender, sigprocmask): Adjust.
2990
a8fe3242
CY
29912009-01-29 Chong Yidong <cyd@stupidchicken.com>
2992
2993 * keyboard.c (pending_signals): New var.
2994 (poll_for_input, input_available_signal, init_keyboard): Set it.
2995 (process_pending_signals): New function.
2996
2997 * lisp.h (QUIT): Check pending_signals instead of
2998 interrupt_input_pending. Use process_pending_signals.
2999
51d861de 3000 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3001
51d861de 3002 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3003
3004 * sysdep.c (emacs_write): Use process_pending_signals.
3005
3006 * xterm.c (XTread_socket): Update pending_signals.
3007
3008 * w32term.c (w32_read_socket): Update pending_signals.
3009
3010 * w32inevt.c (w32_console_read_socket): Update pending_signals.
3011
6570a1c4
KH
30122009-01-29 Kenichi Handa <handa@m17n.org>
3013
3014 * xftfont.c (xftfont_has_char): New function.
3015 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
3016
d72a4afa
AR
30172009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3018
3019 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
3020 under GNUstep.
3021 (ns_query_color): New declaration.
3022
3023 * nsterm.m (ns_confirm_quit): New variable.
3024 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
3025 (EmacsApp-applicationShouldTerminate:): Use it.
3026 (EmacsPrefsController): Let user set it.
3027 (ns_query_color): New function.
3028 (ns_defined_color): Use it.
3029 (ns_initialize): Drop.
3030 (ns_term_init): Add two lines from ns_initialize(), and set
3031 input_interrupt_mode to nil.
3032
3033 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 3034 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 3035
9fe78804
KH
30362009-01-28 Kenichi Handa <handa@m17n.org>
3037
3038 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
3039 (fontset_get_font_group): Remember that no font-group is specified
3040 for C.
9fe78804 3041
fa57de36
CY
30422009-01-27 Chong Yidong <cyd@stupidchicken.com>
3043
930600e9
CY
3044 * fns.c (concat): Check for string overflow (bug#1787).
3045
fa57de36
CY
3046 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
3047 Quadruple undo limits (bug#1501).
3048
7179ce7b
KH
30492009-01-27 Kenichi Handa <handa@m17n.org>
3050
3051 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
3052 directly use GT_Get_Char_index.
3053
3054 * xftfont.c (struct xftfont_info): New member `index'.
3055
3056 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 3057 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 3058
5be8fcc0
CY
30592009-01-26 Kenichi Handa <handa@m17n.org>
3060
3061 * fontset.c (fontset_find_font): Fix handling of non-cons return
3062 value of fontset_get_font_group.
3063 (fontset_font): Revert last change.
3064
19ae3e61
JR
30652009-01-26 Jason Rumney <jasonr@gnu.org>
3066
3067 * w32font.c (w32font_list_internal): Return quickly if registry is
3068 unknown. Simplify final return.
3069 (add_font_entity_to_list): Break complex logic down into more
3070 manageable chunks. Move unknown registry check to
3071 w32font_list_internal.
3072
8612b71a
AR
30732009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
3074
3075 Changes to remove Feval calls from GUI under NS.
3076
d8038940
JB
3077 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
3078 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
3079 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
3080
3081 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
3082 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
3083 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
3084 instead of NON_ASCII_KEYSTROKE_EVENT.
3085 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
3086 (EmacsApp-applicationShouldTerminate:): Query user.
3087 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
3088 instead of Feval.
3089
3090 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
3091
3092 * keyboard.c (kbd_buffer_get_event): Check for it.
3093 (keys_of_keyboard): Define lispy keys for
3094 ns-put/unput-working-text.
3095
3096 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
3097 versions.
3098 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
3099
6288ae55
CY
31002009-01-25 Chong Yidong <cyd@stupidchicken.com>
3101
3102 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 3103 setting current_buffer directly. (Bug#2044)
6288ae55 3104
289e7f8f
CY
31052009-01-24 Chong Yidong <cyd@stupidchicken.com>
3106
5ce87308 3107 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 3108 any work. (Bug#1952, bug#1990).
5ce87308 3109
64cc3cf6 3110 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 3111
b3243e6f
AR
31122009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3113
3114 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
3115 (ns_no_defaults): New declaration.
3116 (main): Use it.
e0d2e69a 3117
d900b2af 3118 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 3119
d900b2af 3120 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 3121
d900b2af
AR
3122 * nsterm.m (ns_no_defaults): New variable.
3123 (ns_initialize): Don't read defaults when ns_no_defaults.
3124 (EmacsView-readSelectionFromPasteboard:)
3125 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 3126 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
3127 (ns_dumpglyphs_stretch): New function.
3128 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 3129 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 3130
e0d2e69a
AR
3131 * nsimage.m (setPixmapData:): Set to ignore image DPI.
3132
3ac71f5d
CY
31332009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
3134
3135 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
3136 call for Sparc64.
3137
3fe53a83
AR
31382009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3139
3140 * nsfns.m:
3141 * nsgui.h:
3142 * nsmenu.m:
3143 * nsselect.m:
3144 * nsterm.h:
3145 * nsterm.m: Remove '23' comments that indicated code added during
3146 update from emacs-20 -> emacs-23.
3147
10f87c6f 31482009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
3149
3150 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 3151 ns_alternate_modifier. (Bug#1217)
a3b53a85 3152
c7cef62d
AR
3153 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
3154 Display all shortcuts, including those w/o super modifier.
3155
575fb8bd
AR
3156 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
3157
918b848b
CY
31582009-01-22 Chong Yidong <cyd@stupidchicken.com>
3159
3160 * fileio.c (Vwrite_region_post_annotation_function)
3161 (Vwrite_region_annotation_buffers): New vars.
3162 (build_annotations_unwind): Just reset
3163 Vwrite_region_annotation_buffers.
3164 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
3165 Call write-region-post-annotation-function.
3166 (build_annotations): Add to Vwrite_region_annotation_buffers if
3167 buffer changes.
3168
a39e2539
AR
31692009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3170
3171 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
3172 Tiger.
51d861de
SM
3173 * nsfns.m (ns_do_applescript):
3174 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 3175
35ed44db
AR
31762009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
3177
3178 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
3179
cbe0b5bf
AR
31802009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3181
3182 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 3183
6049d3a0
AR
3184 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
3185
3186 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
3187 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
3188 handle Ctrl-tab. (Bug#1841)
3189 (ns_get_color): Use unsigned long long for scanned hex string value.
3190 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 3191 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 3192 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 3193 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 3194 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 3195 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 3196 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 3197
d3810c21 3198 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 3199 DPI. (Bug#1316)
d3810c21
AR
3200 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
3201 values in onTiger section.
4c7077c3 3202
e301e634
CY
32032009-01-19 Chong Yidong <cyd@stupidchicken.com>
3204
7f82490b
CY
3205 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
3206 Check return value of font_spec_from_name.
64cc3cf6 3207 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
3208
3209 * font.c (font_spec_from_name): Return Qnil if font name could not
3210 be parsed.
3211 (font_parse_name): Treat a `?' character as part of an XLFD.
3212
e301e634
CY
3213 * fns.c (Fsubstring): Doc fix.
3214
1c0db158
KH
32152009-01-19 Kenichi Handa <handa@m17n.org>
3216
51d861de 3217 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
3218 (ftfont_list): Likewise.
3219
acf20901
JB
32202009-01-18 Juanma Barranquero <lekktu@gmail.com>
3221
fff4e459
JB
3222 * dbusbind.c (Fdbus_register_signal):
3223 * process.c (conv_sockaddr_to_lisp):
3224 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
3225
acf20901
JB
3226 * callproc.c (Fgetenv_internal): Doc fix.
3227
e7abcdfb
CY
32282009-01-16 Chong Yidong <cyd@stupidchicken.com>
3229
3230 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
3231 it is not even used.
3232
b60861e6
GM
32332009-01-16 Glenn Morris <rgm@gnu.org>
3234
3235 * font.c (Ffont_variation_glyphs): Silence compiler.
3236
8db52afe
JB
32372009-01-15 Juanma Barranquero <lekktu@gmail.com>
3238
3239 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
3240 Reported by David Robinow <drobinow@gmail.com>.
3241
4cddb209
KH
32422009-01-15 Kenichi Handa <handa@m17n.org>
3243
51d861de 3244 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 3245
f247f67b
JR
32462009-01-14 Jason Rumney <jasonr@gnu.org>
3247
3248 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 3249 never a fontset. (Bug#1562)
f247f67b 3250
f56a4450
KH
32512009-01-14 Kenichi Handa <handa@m17n.org>
3252
3253 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 3254 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 3255
4e99855e
CY
32562009-01-13 Chong Yidong <cyd@stupidchicken.com>
3257
3258 * font.c (font_clear_prop): If clearing the family, clear the font
3259 width index too.
3260
fff4e459 3261 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 3262
24f01470
JB
32632009-01-12 Juanma Barranquero <lekktu@gmail.com>
3264
3265 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
3266 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
3267 functions, use sizeof.
3268
a41240a3
MR
32692009-01-12 Martin Rudalics <rudalics@gmx.at>
3270
3271 * keyboard.c (read_char): Fix case where last_nonmenu_event
3272 returned a bad value with submenus. (Bug#447)
3273
944636b8
CY
32742009-01-12 Chong Yidong <cyd@stupidchicken.com>
3275
3276 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
3277 family, clear the font width index too.
3278
0dad7c6f
JR
32792009-01-11 Jason Rumney <jasonr@gnu.org>
3280
3281 * keyboard.c (cmd_error_internal): Exit when errors occur before
3282 frame creation and not in daemon mode. (Bug#1836)
3283
7c2363af
CY
32842009-01-10 Chong Yidong <cyd@stupidchicken.com>
3285
3286 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
3287 of a display vector, backtrack.
3288 (try_window_reusing_current_matrix): Check glyph type before
3289 referencing charpos member.
3290
97b1b294
EZ
32912009-01-10 Eli Zaretskii <eliz@gnu.org>
3292
3293 Fix Bug #876:
3294
3295 * coding.c (inhibit_null_byte_detection): New variable.
3296 (detect_coding, detect_coding_system): Don't pay attention to null
3297 bytes if inhibit_null_byte_detection is non-zero.
51d861de 3298 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
3299 <inhibit-iso-escape-detection>: Doc fix.
3300
4624b6e3
JR
33012009-01-09 Jason Rumney <jasonr@gnu.org>
3302
3303 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 3304 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
3305 Only report Unicode Plane 2 fonts as unicode-sip.
3306
323b840c
CY
33072009-01-09 Chong Yidong <cyd@stupidchicken.com>
3308
51d861de
SM
3309 * xfaces.c (Fx_font_family_list): Delete function.
3310 Move compatibility version to faces.el.
323b840c 3311
51d861de 3312 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 3313
eba7400d
MR
33142009-01-09 Martin Rudalics <rudalics@gmx.at>
3315
3316 * frame.c (x_set_frame_parameters): Remember requested value for
3317 fullscreen before it's reset by the parameter handler.
3318
4b09796d
GM
33192009-01-09 Glenn Morris <rgm@gnu.org>
3320
3321 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 3322 (last_command_event): ... and update all users.
4b09796d
GM
3323 (last_input_char): For clarity, rename to...
3324 (last_input_event): ... and update all users.
3325 (last-command-char, last-input-char): Move to subr.el as aliases.
3326 * cmds.c, commands.h: Update for last_command_char rename.
3327
14ccea62
CY
33282009-01-08 Chong Yidong <cyd@stupidchicken.com>
3329
51d861de 3330 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 3331
5f004711
JR
33322009-01-08 Jason Rumney <jasonr@gnu.org>
3333
3334 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
3335 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
3336 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
3337 Don't declare.
fff4e459 3338 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
3339 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
3340
b71f6f73
KH
33412009-01-07 Kenichi Handa <handa@m17n.org>
3342
50b06221 3343 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 3344 remember the coding system used for decoding in
50b06221
KH
3345 coding_system (Bug#1039).
3346
b71f6f73 3347 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 3348 breaking the loop. (Bug#870)
b71f6f73
KH
3349 (decode_coding_utf_16, decode_coding_emacs_mule)
3350 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3351 (decode_coding_charset): Likewise.
3352
56f668f7
MR
33532009-01-05 Martin Rudalics <rudalics@gmx.at>
3354
3355 * frame.c (x_set_frame_parameters): Make sure height (width) get
3356 applied when fullwidth (fullheight) is set. (Bug#1522)
3357
5da9424d
JB
33582009-01-04 Juanma Barranquero <lekktu@gmail.com>
3359
3360 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
3361 (utc_base): Declare as ULONGLONG, not long double.
3362 (convert_time_raw): Delete.
3363 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
3364 (initialize_utc_base): New function.
3365 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
3366 (convert_from_time_t): Use initialize_utc_base; compute result with
3367 64-bit arithmetic.
3368 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
3369
c4605e09
EZ
33702009-01-03 Eli Zaretskii <eliz@gnu.org>
3371
9acef61c 3372 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
3373 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
3374 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
3375 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
3376 [!subprocesses]: Define.
3377 (syms_of_process) [!subprocesses]: Intern and staticpro them.
3378 (Flist_system_processes, Fsystem_process_attributes)
3379 [!subprocesses]: Call list_system_processes and
3380 system_process_attributes instead of returning Qnil.
3381
9acef61c
JB
3382 * dosfns.c (system_process_attributes, list_system_processes):
3383 New functions.
c4605e09
EZ
3384
3385 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
3386
3387 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
3388 Don't use the default (no-op) implementation.
3389
8b7d0a16
JR
33902009-01-03 Jason Rumney <jasonr@gnu.org>
3391
a6d46bc1
JR
3392 * keyboard.c (parse_modifiers_uncached): Wheel events are
3393 clicks (bug#687).
3394
8b7d0a16
JR
3395 * w32term.c (x_query_colors, x_query_color): New functions.
3396
3397 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
3398 (svg_load_image): Cast returned pointers from dynamically loaded
3399 functions. Eliminate W32 specific code.
3400
bfe11752
DN
34012009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
3402
89e2438a
DN
3403 * nsfns.m (x_set_foreground_color, x_set_background_color)
3404 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
3405 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
3406 x_ prefix instead of ns_. Update references.
3407 (syms_of_nsfns): Add a FIXME comment.
3408
3409 * nsterm.m (x_set_cursor_type): New prototype.
3410 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
3411
bfe11752
DN
3412 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
3413 for Solaris instead of incorrectly providing Qutime and Qcutime.
3414
031da700
EZ
34152009-01-02 Eli Zaretskii <eliz@gnu.org>
3416
3417 * w32.c (process_times): Compute sum of utime and stime.
3418 (system_process_attributes): Add Qtime to the alist.
3419
3420 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
3421 and add them to the alist.
3422
3423 * process.c (top level) <Qtime, Qctime>: New variables.
3424 (syms_of_process): staticpro them.
3425 (Fsystem_process_attributes): Add their documentation to the doc
3426 string.
3427
3428 * process.h: Declare Qtime and Qctime.
3429
df23bf08
JR
34302009-01-02 Jason Rumney <jasonr@gnu.org>
3431
9acef61c 3432 * image.c (Qgobject): New symbol.
df23bf08
JR
3433 (syms_of_image): Initialize it.
3434 (init_svg_functions): Load some functions from gobject library.
3435
5bbdf7aa
DN
34362009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
3437
3438 * frame.c (make_terminal_frame): Remove redundant code and useless
3439 block.
3440
63136da6
AS
34412009-01-01 Andreas Schwab <schwab@suse.de>
3442
3443 * process.c (conv_sockaddr_to_lisp): Add workaround for
3444 getsockname bug on BSD.
3445
9ef69046
CY
34462009-01-01 Chong Yidong <cyd@stupidchicken.com>
3447
d6fafbe0
CY
3448 * xfns.c (x_create_tip_frame): Set border width of the X window.
3449
51d861de 3450 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 3451
f9c34147
JR
34522009-01-01 Jason Rumney <jasonr@gnu.org>
3453
9acef61c 3454 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
3455 Don't block input, as per earlier xterm.c changes.
3456
f5497e45
AR
34572008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
3458
3459 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
3460 (ns_appkit_version_int): New function.
3461 (x-server-version): Use ns_appkit_version_int and follow 21+
3462 convention of returning 3 integers.
3463
c19cab20
KH
34642008-12-30 Kenichi Handa <handa@m17n.org>
3465
3466 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
3467 (CHAR_SURROGATE_PAIR_P): New macro.
3468
3469 * font.h (struct font_driver): New member get_variation_glyphs.
3470
9acef61c 3471 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
3472 (Ffont_variation_glyphs): New function.
3473 (syms_of_font): Defsubr it.
3474
3475 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
3476 ftfont_variation_glyphs.
3477 (setup_otf_gstring): New function.
3478 (ftfont_drive_otf): Use it.
3479 (ftfont_shape_by_flt): Handle variation selector.
3480 (ftfont_variation_glyphs): New function.
3481
28cd591f
MR
34822008-12-30 Martin Rudalics <rudalics@gmx.at>
3483
3484 * frame.c (Vemacs_iconified): Remove.
3485
7f714baf
JR
34862008-12-30 Jason Rumney <jasonr@gnu.org>
3487
3488 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 3489 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 3490
9d2d22ab
CY
34912008-12-30 Chong Yidong <cyd@stupidchicken.com>
3492
3493 * indent.c (Fvertical_motion): Don't advance iterator if we have
3494 reseated to the desired position.
3495
3496 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
3497 checking for pos match.
3498
545312c2
KH
34992008-12-30 Kenichi Handa <handa@m17n.org>
3500
1ede3eb6
KH
3501 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
3502 just get the low 8-bit of the code.
3503
545312c2
KH
3504 * font.c (font_intern_prop): Validate str as multibyte.
3505
bd7bbf29
DN
35062008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3507
31e0750e
DN
3508 * dispextern.h (struct face): Move lface and hash from the middle
3509 of bitfields.
3510
bd7bbf29
DN
3511 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
3512
b5672e7c
DN
35132008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3514
3515 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
3516 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
3517 instead of intervals.h.
3518
d704470f
AS
35192008-12-26 Andreas Schwab <schwab@suse.de>
3520
3521 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
3522 cons.
3523
54b33868
MR
35242008-12-26 Martin Rudalics <rudalics@gmx.at>
3525
3526 * textprop.c (Qminibuffer_prompt): New variable.
3527 (syms_of_textprop): Initialize it.
3528 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
3529 in minibuffer-prompt face. (Bug#1662)
3530
40b615d6
JR
35312008-12-25 Jason Rumney <jasonr@gnu.org>
3532
3533 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
3534
baae5c2d
JR
35352008-12-24 Jason Rumney <jasonr@gnu.org>
3536
3537 * ralloc.c (r_alloc_reset_variable): New function.
3538
3539 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 3540 record of what points where. (Bug#716)
baae5c2d 3541
a9051c88
DN
35422008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
3543
3544 * minibuf.c (read_minibuf): Follow the non-interactive case when
3545 running as a daemon, before detaching.
3546
8b146312
AS
35472008-12-22 Andreas Schwab <schwab@suse.de>
3548
3549 * buffer.c (init_buffer): Use realloc instead of xrealloc.
3550 * gtkutil.c (free_widget_value): Use xfree instead of free.
3551
56f2de10
MR
35522008-12-22 Martin Rudalics <rudalics@gmx.at>
3553
3554 * frame.c (delete_frame): New function derived from
3555 Fdelete_frame to handle Qnoelisp value for FORCE argument.
3556 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
3557 (Fdelete_frame): Call delete_frame. Remove line from doc-string
3558 saying that FORCE non-nil doesn't run `delete-frame-functions'.
3559 * frame.h: Extern delete_frame.
3560 * window.c (window_loop):
3561 * terminal.c (delete_terminal):
3562 * xterm.c (x_connection_closed):
3563 * xfns.c (Fx_hide_tip):
9acef61c 3564 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 3565
1fc200d6
JR
35662008-12-21 Jason Rumney <jasonr@gnu.org>
3567
3568 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
3569 when character maps to .notdef character.
3570
5e252df2
SM
35712008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
3572
3573 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
3574
99b72cc4
JR
35752008-12-20 Jason Rumney <jasonr@gnu.org>
3576
3577 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 3578 a graphical frame on Windows. (Bug#1325)
99b72cc4 3579
acc49a52
JD
35802008-12-20 Jan Djärv <jan.h.d@swipnet.se>
3581
3582 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
3583
6ea15123
CY
35842008-12-20 Chong Yidong <cyd@stupidchicken.com>
3585
3586 * minibuf.c (Fread_buffer): Doc fix.
3587
b2dab6c8
JR
35882008-12-20 Jason Rumney <jasonr@gnu.org>
3589
54ea0c87 3590 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 3591 server name in UNC paths. (Bug#719)
54ea0c87 3592
b2dab6c8 3593 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 3594 charbuf. (Bug#1035)
b2dab6c8 3595
6d1921be
DN
35962008-12-19 Daniel Engeler <engeler@gmail.com>
3597
3598 * sysdep.c (serial_configure): Fix typo.
3599
53934c98
DN
36002008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3601
3602 * sysdep.c: Include alloca.h.
f4f634e8
DN
3603 (system_process_attributes): Add implementation for Solaris.
3604
3605 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 3606
06e111a6
DN
36072008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3608
3609 Reorganize implementation of Flist_system_processes and
3610 Fsystem_process_attributes. No functional changes.
3611 * process.c: Don't #include pwd.h, grp.h and limits.h.
3612 (Flist_system_processes): Just call list_system_processes.
3613 (Fsystem_process_attributes): Just call system_process_attributes.
3614 (procfs_list_system_processes, time_from_jiffies)
3615 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
3616 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
3617
3618 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
3619 (list_system_processes): Rename from
3620 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
3621 Provide a do nothing implementation.
3622 (system_process_attributes): Rename from
3623 procfs_list_system_processes.
3624 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 3625 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
3626
3627 * w32.c (list_system_processes): Rename from
3628 w32_list_system_processes.
3629 (system_process_attributes): Rename from
3630 w32_system_process_attributes.
3631
3632 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
3633
3634 * process.h (w32_list_system_processes)
3635 (w32_system_process_attributes): Remove.
3636 (list_system_processes, system_process_attributes): New
3637 prototypes.
3638
6a705b23
KH
36392008-12-19 Kenichi Handa <handa@m17n.org>
3640
3641 * xfont.c (xfont_decode_coding_xlfd): New function.
3642 (xfont_encode_coding_xlfd): New function.
3643 (xfont_list_pattern): Decode XLFD by iso-8859-1.
3644 (xfont_list): Decode and encode XLFD by iso-8859-1.
3645 (xfont_match): Likewise.
3646 (xfont_list_family): Likewise.
3647 (xfont_open): Likewise.
3648
d66c0241 3649 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
3650 names are utf-8.
3651
d66c0241 3652 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
3653 names are utf-8.
3654
5a130941
JD
36552008-12-18 Jan Djärv <jan.h.d@swipnet.se>
3656
3657 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
3658 changed.
bfd20325
JD
3659 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
3660 clicked on a detached tool bar button.
5a130941 3661
fd95644b
DN
36622008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
3663
3664 * emacs.c (main): Print and error and exit when no data is read
3665 from the pipe.
3666
e6eee6ae
JR
36672008-12-17 Jason Rumney <jasonr@gnu.org>
3668
3669 * w32font.c (w32font_has_char): Always return -1.
3670
a35dd56b
KH
36712008-12-16 Kenichi Handa <handa@m17n.org>
3672
3673 * font.c (font_open_entity): Fix previous change.
3674
0e3635c2
DN
36752008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
3676
3677 * process.c: Include <limits.h>.
3678
d4835507 36792008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
3680
3681 * font.c (font_update_drivers): Fix mistake in reconstructing the
3682 driver list.
3683
36842008-12-16 Chong Yidong <cyd@stupidchicken.com>
3685
3686 * font.c (font_clear_cache): Fix format of font cache data.
3687
e2cbc401
CY
36882008-12-15 Chong Yidong <cyd@stupidchicken.com>
3689
3690 * xftfont.c (xftfont_open): Free Xft font pattern if
3691 XftFontOpenPattern fails.
3692
3693 * xterm.c (x_free_frame_resources): Remove extraneous call to
3694 free_frame_faces.
3695
b131d535
CY
36962008-12-13 Chong Yidong <cyd@stupidchicken.com>
3697
3698 * xterm.c (x_delete_display): Move xim_close_dpy call to
3699 x_delete_terminal.
3700 (x_delete_terminal): Call xim_close_dpy.
3701
e6df5336
JR
37022008-12-13 Jason Rumney <jasonr@gnu.org>
3703
3704 * w32font.c (intern_font_name): New function.
3705 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
3706 (w32font_open_internal, Fx_select_font): Decode font name.
3707 (fill_in_logfont, list_all_matching_fonts): Encode font name.
3708
3709 * w32font.h (intern_font_name): Declare new function.
3710
3711 * w32uniscribe.c (add_opentype_font_name_to_list):
3712 Use intern_font_name.
3713
20d68145
CY
37142008-12-13 Chong Yidong <cyd@stupidchicken.com>
3715
9f2554de
CY
3716 * frame.c (Fdelete_frame): Call free_font_driver_list.
3717
3d9bec9a
CY
3718 * font.c (free_font_driver_list): Implement missing function.
3719
20d68145
CY
3720 * w32term.c (w32_term_init): Don't initialize the image cache
3721 here; it will be done in init_frame_faces.
3722
3723 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
3724 (struct x_display_info): Remove unused member null_pixel. New
3725 member xim_callback_data.
3726
3727 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
3728 (xim_initialize): Save pointer to callback function data.
3729 (xim_close_dpy): Free callback function data. Call XCloseIM,
3730 reverting 2008-11-04 change by David Smith.
3731 (x_term_init): Don't initialize the image cache here; it will be
3732 done in init_frame_faces. Remove ancient "null_pixel" cruft.
3733 (x_delete_display): Free x_dnd_atoms member.
3734
96f9306b
KH
37352008-12-13 Kenichi Handa <handa@m17n.org>
3736
6dec9044
JB
3737 * font.c (font_rescale_ratio): Moved from xfaces.c.
3738 Argument type changed. Handle a font-spec too.
96f9306b 3739 (font_score): Check Vface_font_rescale_alist.
6dec9044 3740 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
3741
3742 * xfaces.c (font_rescale_ratio): Moved to font.c.
3743
8d5b4964
CY
37442008-12-13 Chong Yidong <cyd@stupidchicken.com>
3745
3746 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
3747
e6df5336
JR
37482008-12-12 Jason Rumney <jasonr@gnu.org>
3749
3750 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
3751 Vwindow_system_version to the real w32 major version.
3752
97c6058a
DN
37532008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
3754
3755 * term.c (init_tty): Move setting the terminal name before the
3756 potential user: maybe_fatal.
3757
ec4e88d7
CY
37582008-12-11 Chong Yidong <cyd@stupidchicken.com>
3759
d4835507
JB
3760 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
3761 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 3762
b4233ec9
JR
37632008-12-11 Jason Rumney <jasonr@gnu.org>
3764
8ec71e23 3765 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 3766 SYMBOL_CHARSET. (Bug#547)
8ec71e23 3767
b4233ec9 3768 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 3769 size for surrogates. (Bug#1096, bug#872)
b4233ec9 3770
011a0143
JB
37712008-12-11 Juanma Barranquero <lekktu@gmail.com>
3772
3773 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
3774
3c309f34
JB
37752008-12-11 Juanma Barranquero <lekktu@gmail.com>
3776
3777 * process.c (Fsystem_process_attributes, syms_of_process):
3778 Fix typo in name of Ssystem_process_attributes.
3779 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
3780
fedc6ab5
JB
37812008-12-11 Juanma Barranquero <lekktu@gmail.com>
3782
3783 * syntax.c (Fmodify_syntax_entry): Doc fix.
3784
ba3de0e8
JB
37852008-12-10 Juanma Barranquero <lekktu@gmail.com>
3786
3787 * font.c (Ffont_spec): Move usage to end of docstring.
3788
174f1c74
JR
37892008-12-10 Jason Rumney <jasonr@gnu.org>
3790
3791 * w32font.c (Qcham): New symbol.
3792 (font_supported_scripts): Add cham, and comments for other new
3793 scripts in bitfield from OpenType spec.
9d32f818
JR
3794 (add_font_entity_to_list): Limit unicode-sip fonts to those that
3795 contain characters beyond the bmp.
174f1c74 3796
7b649478
KH
37972008-12-10 Kenichi Handa <handa@m17n.org>
3798
3799 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 3800 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
3801 Qunicode_sip.
3802
2133e2d1
JB
38032008-12-10 Juanma Barranquero <lekktu@gmail.com>
3804
3805 * coding.c (QCdefault_char): Rename from QCdefalut_char.
3806 (Fcoding_system_put): Use QCdefault_char.
3807 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
3808
9af886ee
CY
38092008-12-09 Chong Yidong <cyd@stupidchicken.com>
3810
74d819eb
CY
3811 * xftfont.c (syms_of_xftfont): Fix typo.
3812
4ccfa1c0 3813 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 3814
7c19d3ae
DN
38152008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
3816
3817 * emacs.c (main): Close daemon_pipe on exec.
3818
567826bb
CY
38192008-12-08 Chong Yidong <cyd@stupidchicken.com>
3820
3821 * termchar.h (struct tty): New members termcap_term_buffer and
3822 termcap_strings_buffer.
3823
3824 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 3825 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
3826 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
3827 All callers changed.
3828 (init_tty): Store termcap data and string buffers in new struct
3829 tty members termcap_term_buffer and termcap_strings_buffer.
3830 (delete_tty): Free them.
4ccfa1c0 3831 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 3832
aa96c42b
SZ
38332008-12-07 Seiji Zenitani <zenitani@mac.com>
3834
3835 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 3836 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 3837
b7e1d896
CY
38382008-12-06 Chong Yidong <cyd@stupidchicken.com>
3839
3840 * coding.c (make_conversion_work_buffer): Disable buffer
3841 modification hooks in the work buffer.
3842
b5ec91a5
EZ
38432008-12-05 Eli Zaretskii <eliz@gnu.org>
3844
3845 * process.c (procfs_system_process_attributes): If `nread' has a
3846 negative value, assign zero to it.
3847
a5d2a52b
CY
38482008-12-05 Chong Yidong <cyd@stupidchicken.com>
3849
68c5540b 3850 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 3851
7bf1bb21
KH
38522008-12-05 Kenichi Handa <handa@m17n.org>
3853
3854 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
3855 second character is a combining character.
3856
2fdc7d00
EZ
38572008-12-05 Eli Zaretskii <eliz@gnu.org>
3858
3859 * process.c (procfs_system_process_attributes): Don't use cmd,
3860 cmdsize, and q without initializing them first.
3861
bf6bfba8
JR
38622008-12-04 Jason Rumney <jasonr@gnu.org>
3863
3864 * w32font.c (w32font_draw): Initialize orig_clip before getting
3865 it, and delete it when finished.
3866
a3b1a468
DN
38672008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
3868
3869 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
3870 case when running as a daemon before detaching.
3871
8b8be8eb
JB
38722008-12-03 Juanma Barranquero <lekktu@gmail.com>
3873
805f2638 3874 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 3875
b1bde622
KH
38762008-12-03 Kenichi Handa <handa@m17n.org>
3877
e500c47d
KH
3878 * font.c (font_at): Set `multibyte' at first.
3879
ca516334
KH
3880 * coding.c (decode_coding_charset): Check type of an element of
3881 vector VALIDS.
7bf1bb21 3882 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 3883
4ccfa1c0 3884 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
3885 (font_for_char): Likewise.
3886
1e5ecd37
CY
38872008-12-03 Chong Yidong <cyd@stupidchicken.com>
3888
d5b01609 3889 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
3890 (font_update_lface): Handle fonts with corrupted size specs,
3891 i.e. non-int and non-float.
d5b01609 3892
11e3a6e4 3893 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 3894 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 3895 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 3896
ab06788b
CY
3897 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
3898
1e5ecd37 3899 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 3900 underline_minimum_offset for underline position.
1e5ecd37 3901
63c125ab
DN
39022008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
3903
3904 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
3905
3906 * character.c (c_string_width): Specify the type for LEN.
3907
3a8406e1
KH
39082008-12-03 Kenichi Handa <handa@m17n.org>
3909
4ccfa1c0 3910 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 3911 (decode_coding_utf_8): Likewise.
4ccfa1c0 3912 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 3913 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 3914
651df7d9
CY
39152008-12-02 Chong Yidong <cyd@stupidchicken.com>
3916
3917 * keyboard.c (make_lispy_position): Only use PT if the selected
3918 window is current.
3919
1f625c6c
AS
39202008-12-02 Andreas Schwab <schwab@suse.de>
3921
f7741ce9
AS
3922 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
3923
1f625c6c
AS
3924 * doprnt.c (doprnt1): Fix size of charbuf.
3925
92bc2678
CY
39262008-12-02 Chong Yidong <cyd@stupidchicken.com>
3927
3928 * keyboard.c (timer_check): Revert last change.
3929
93b9e8cc
JB
39302008-12-02 Juanma Barranquero <lekktu@gmail.com>
3931
3932 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
3933
fd7a37d5
JB
39342008-12-01 Juanma Barranquero <lekktu@gmail.com>
3935
3936 * makefile.w32-in: Update dependencies.
3937 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
3938
c115043b
AS
39392008-12-01 Andreas Schwab <schwab@suse.de>
3940
3941 * font.c (register_font_driver): Use xmalloc.
3942 (font_put_frame_data): Likewise.
3943
f5668d2a
CY
39442008-12-01 Chong Yidong <cyd@stupidchicken.com>
3945
860d96be
CY
3946 * xfaces.c (realize_x_face): Make abort condition clearer.
3947
f5668d2a
CY
3948 * gtkutil.c (update_frame_tool_bar): Initialize variable.
3949
379c17e7
CY
39502008-11-30 Chong Yidong <cyd@stupidchicken.com>
3951
3952 * keyboard.c (timer_check): After a timer runs, ensure that the
3953 selected window's buffer is current.
3954
35f36d65
JB
39552008-11-30 Juanma Barranquero <lekktu@gmail.com>
3956
f952c61c
JB
3957 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
3958 It was accidentally restored by the Unicode merge.
3959
35f36d65
JB
3960 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
3961
b23077df
JB
39622008-11-29 Juanma Barranquero <lekktu@gmail.com>
3963
3964 * w32proc.c: Include "coding.h".
3965 (Fw32_short_file_name): Encode filename passed to Windows API.
3966 (Fw32_long_file_name): Encode filename passed to Windows API and
3967 decode back the result. (Bug#1433)
3968
b8ebe9dd
KH
39692008-11-29 Kenichi Handa <handa@m17n.org>
3970
8cc53f96
KH
3971 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
3972 not before accessing it.
3973
b8ebe9dd
KH
3974 * charset.c (Fdefine_charset_internal): After calculating
3975 min_char, max_char, and fastmap, copy the charset structure again.
3976 (encode_char): Fix the previous change.
3977
59bc82c0
SZ
39782008-11-28 Seiji Zenitani <zenitani@mac.com>
3979
3980 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
3981
3982 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
3983
3984 * nsterm.m (x_set_frame_alpha): New function.
3985
32247e3d
EZ
39862008-11-27 Eli Zaretskii <eliz@gnu.org>
3987
3988 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
3989
b003e5ff
JB
39902008-11-27 Juanma Barranquero <lekktu@gmail.com>
3991
3992 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
3993 pointer to check_face_name.
3994
708550f5
KH
39952008-11-27 Kenichi Handa <handa@m17n.org>
3996
3997 * category.h (SET_CATEGORY_SET): Call set_category_set.
3998 (set_category_set): Extern it.
3999
4000 * category.c (hash_get_category_set): New function.
4001 (Fmodify_category_entry): Adjusted for the change of
4002 char_table_ref_and_range. Call hash_get_category_set to get a
4003 category set to store in the table.
4004
4005 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4006 Funify_charset.
4007
2ae37cf0 4008 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
4009 (DECODE_CHAR): Check if the decoder vector is ready.
4010 (ENCODE_CHAR): Check if the encoder char-table is ready.
4011 (maybe_unify_char): Extern it.
4012
4013 * charset.c (Vchar_unified_charset_table): Delete it.
4014 (inhibit_load_charset_map): New variable.
4015 (temp_charset_work): New variable.
4016 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
4017 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
4018 New macros.
4019 (load_charset_map): Meaning of control_flag changed. If
4020 inhibit_load_charset_map is nonzero, setup a table in
4021 temp_charset_work.
4022 (load_charset): New argument control_flag.
4023 (map_charset_for_dump): New function.
4024 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
4025 map_charset_for_dump.
4026 (Fdefine_charset_internal): If the charset method is MAP, load
4027 mapping tables by calling load_charset.
4028 (Funify_charset): Don't load a mapping table but directly set
4029 Vchar_unify_table.
4030 (maybe_unify_char): New function.
4031 (decode_char): Don't handle the deleted method MAP_DEFERRED.
4032 Handle the case of inhibit_load_charset_map being nonzero.
4033 (encode_char): Don't handle the deleted method MAP_DEFERRED.
4034 Handle the case of inhibit_load_charset_map being nonzero.
4035 (Fclear_charset_maps): Just free temp_charset_work.
4036 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
4037 variable.
4038
4039 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
4040 change of char_table_ref_and_range.
4041 (char_table_ref_and_range): Change the meaning of argument FROM
4042 and TO. Now the caller must provide initial values for *FROM
4043 and *TO.
4044
4045 * fontset.c (fontset_add): Adjusted for the change of
4046 char_table_ref_and_range.
4047 (fontset_get_font_group): Likewise.
4048 (Ffontset_info): Likewise.
4049
4050 * keymap.c (describe_vector): Adjusted for the change of
4051 char_table_ref_and_range. For char-table, put boundary between
4052 non-ASCII and 8-bit characters.
4053
4054 * print.c (print_object): For bool-vector, delete unnecessary
4055 check of ASCII_BYTE_P.
4056
9196133b
JR
40572008-11-26 Jason Rumney <jasonr@gnu.org>
4058
4059 * w32font.c (w32font_open_internal): Don't include external
9acef61c 4060 leading in font height. (Bug#879)
9196133b 4061
9f688acf
GM
40622008-11-26 Glenn Morris <rgm@gnu.org>
4063
4064 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
4065 redefinition with ifdef. (Bug#1383)
4066
90d19aff
AR
40672008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4068
4069 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
4070
4ccfa1c0 40712008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
4072
4073 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
4074 New EmacsView methods.
4075 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
4076 Fixes bug #1048,1357,1414.
4077
40782008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4079
4080 Fix bug #1362.
4081 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
4082 is not an indexed color.
4083 * nsterm.m (free_indexed_color): Add argument checking.
4084 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
4085
e7d5ecb3
CY
40862008-11-24 Chong Yidong <cyd@stupidchicken.com>
4087
4088 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
4089 Document confirm-after-completion value for
4090 minibuffer-completion-confirm.
4091
c285743c
JR
40922008-11-24 Jason Rumney <jasonr@gnu.org>
4093
4094 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
4095 warning.
4096
b0857706
JR
40972008-11-23 Jason Rumney <jasonr@gnu.org>
4098
4099 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
4100 restored before returning.
4101
4102 * w32font.c (check_face_name): New function.
4103 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 4104 fonts. (Bug#642)
b0857706 4105
ee50ff07
MR
41062008-11-22 Martin Rudalics <rudalics@gmx.at>
4107
4108 * buffer.c (Fswitch_to_buffer): Reword and mention new option
4109 confirm-nonexistent-file-or-buffer in doc-string.
4110
b8ff72fa
SM
41112008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
4112
4113 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
4114 Fix copy/paste typo. Add checks.
4115
cee53ed4
KH
41162008-11-21 Kenichi Handa <handa@m17n.org>
4117
4118 * coding.c (detect_coding_iso_2022): Reject invalid composition
4119 sequence.
4120 (DECODE_COMPOSITION_START): If the current source is the last
4121 block, and the current composition doesn't end, regard this
4122 sequence as invalid.
4123 (decode_coding_iso_2022): Handle invalid composition sequence.
4124
f6ef1e65
MR
41252008-11-20 Martin Rudalics <rudalics@gmx.at>
4126
4127 * window.c (coordinates_in_window): Don't return
4128 ON_VERTICAL_BORDER for the rightmost position of a mode/header
4129 line when the window is not the rightmost one. (Bug#1372)
4130
e08b1705
MR
41312008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
4132
4133 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
4134
ad98e89f
EZ
41352008-11-15 Eli Zaretskii <eliz@gnu.org>
4136
4137 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
4138 and bright_bg if noninteractive is non-zero.
4139
fb098a4b
CY
41402008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4141
4142 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
4143 x_draw_glyph_string_background.
4144
4145 * w32term.c (x_draw_glyph_string): Likewise.
4146
ce952b6e
CY
41472008-11-15 Chong Yidong <cyd@stupidchicken.com>
4148
4149 * xterm.c (x_draw_glyph_string): Stop drawing the background of
4150 the next glyph string once past the overhang width.
4151
4152 * nsterm.m (ns_draw_glyph_string): Likewise.
4153
4154 * w32term.c (x_draw_glyph_string): Likewise.
4155
26ea7079
CY
41562008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
4157
4158 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
4159 double file close.
4160
1c33c906
MR
41612008-11-14 Martin Rudalics <rudalics@gmx.at>
4162
4163 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
4164 dedicated status of window before attempting to display another
4165 buffer in it.
4166
8fc29035
JB
41672008-11-14 Juanma Barranquero <lekktu@gmail.com>
4168
4169 * msdos.c (Fmsdos_long_file_names):
4170 (syms_of_msdos) <dos-unsupported-char-glyph>:
4171 * dosfns.c (Fint86): Fix typos in docstrings.
4172
55fb4286
EZ
41732008-11-14 Eli Zaretskii <eliz@gnu.org>
4174
4175 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
4176
3fda0315
KY
41772008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
4178
4179 * puresize.h (BASE_PURESIZE): Increase to 1260000.
4180
7e849c17
CY
41812008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
4182
4183 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
4184
4185 * frame.h: Negative alpha means "don't touch".
4186
4187 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
4188
4189 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
4190
b9fd67bd
DN
41912008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
4192
4193 * hftctl.c:
4194 * chpdef.h:
4195 * acldef.h: Remove files used only for systems no longer supported.
4196
4197 * Makefile.in: Fix .o alphabetical ordering.
4198 (hftctl.o): Remove dependency, file removed.
4199 (keymap.o, print.o): Depend on charset.h.
4200
d5998e03
KH
42012008-11-10 Kenichi Handa <handa@m17n.org>
4202
2ae37cf0 4203 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 4204
be70e183
CY
42052008-11-08 Chong Yidong <cyd@stupidchicken.com>
4206
4207 * dired.c (file_name_completion): If completion_ignore_case is
4208 enabled, ignore case when checking completion-regexp-list.
4209
7cf94eac
EZ
42102008-11-08 Eli Zaretskii <eliz@gnu.org>
4211
4212 * vm-limit.c (get_lim_data): Fix last change.
4213
ee107a89
KH
42142008-11-08 Kenichi Handa <handa@m17n.org>
4215
4216 * character.c (Fget_byte): New function.
4217 (syms_of_character): Defsubr Fget_byte.
4218
5fd15622
CY
42192008-11-07 Chong Yidong <cyd@stupidchicken.com>
4220
4221 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
4222 cursor position is valid after scrolling.
4223
13d62fad
JB
42242008-11-06 Juanma Barranquero <lekktu@gmail.com>
4225
4226 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
4227
a1dd2936
GM
42282008-11-06 Glenn Morris <rgm@gnu.org>
4229
4230 * xterm.c (handle_one_xevent): Don't let popup menus cause
4231 mouse-autoselect-window related window switching. (Bug#1261)
4232
860cd236
CY
42332008-11-04 David Smith <davidsmith@acm.org> (tiny change)
4234
4235 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
4236
653a3150
AS
42372008-11-04 Andreas Schwab <schwab@suse.de>
4238
4239 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
4240
870f5cac
CY
42412008-11-03 Chong Yidong <cyd@stupidchicken.com>
4242
4243 * xfns.c (Fx_wm_set_size_hint): New function.
4244
1e02f3cb
MR
42452008-11-03 Martin Rudalics <rudalics@gmx.at>
4246
4247 * textprop.c (Fprevious_single_char_property_change): Return 0
4248 when there's no change in a string. (Bug#1301)
4249
e630dfc6
MR
42502008-11-02 Martin Rudalics <rudalics@gmx.at>
4251
4252 * frame.c (do_switch_frame): New argument NORECORD passed to
4253 Fselect_window.
4254 (Fselect_frame): New argument NORECORD passed to
4255 do_switch_frame.
4256 (Fset_frame_selected_window): New argument NORECORD passed to
4257 Fselect_frame.
4258 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
4259 in call of do_switch_frame.
4260 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
4261 Handle NORECORD argument in call of Fselect_frame.
4262 * lisp.h (do_switch_frame, Fselect_frame)
4263 (Fset_frame_selected_window): Adjust declarations.
4264 * window.c (select_frame_norecord): New function.
4265 (run_window_configuration_change_hook): Use it and call
4266 Fselect_frame with NORECORD set.
4267 (Fselect_window): Pass NORECORD to Fselect_frame.
4268 (Fset_window_configuration): Handle NORECORD argument in call of
4269 do_switch_frame.
4270 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
4271 Fset_frame_selected_window.
4272 * keyboard.c (command_loop_1): Handle NORECORD in call of
4273 Fselect_frame (currently ifdefd).
4274
9020b223
GM
42752008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
4276
4277 * emacs.c (USAGE2): Untabify.
4278
793ffee8
SM
42792008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
4280
4281 * composite.c (fill_gstring_header): Fix copy/paste typo.
4282
ab6d1131
MR
42832008-10-31 Martin Rudalics <rudalics@gmx.at>
4284
4285 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
4286 (Fother_window): Rename argument and rewrite doc-string.
4287 (select_window_norecord): Fix return value. (Bug#1276)
4288
601a9cf1
JB
42892008-10-30 Juanma Barranquero <lekktu@gmail.com>
4290
4291 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
4292 new frames overriding foreground for tooltips. Based on similar patch
4293 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
4294
813b0652
CY
42952008-10-29 Chong Yidong <cyd@stupidchicken.com>
4296
4297 * emacs.c (Fdaemon_initialized): Initialize nfd.
4298
4414f58f
MR
42992008-10-29 Martin Rudalics <rudalics@gmx.at>
4300
4301 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
4302 (Fwindow_text_height): Clarify doc-strings.
4303 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
4304 doc-string of window-scroll-functions.
4305
ecdcaa09
RS
43062008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
4307
4308 * category.c (syms_of_category): Fix typo in docstring.
4309
23fe745a
JB
43102008-10-28 Juanma Barranquero <lekktu@gmail.com>
4311
4312 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
4313 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
4314 Fix typos in docstrings.
4315
ff808935
DN
43162008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
4317
4318 * emacs.c (daemon_pipe): Make non-static.
4319 (IS_DAEMON): Move definition ...
4320 * lisp.h (IS_DAEMON): ... here.
4321 (daemon_pipe): Declare.
4322 (is_daemon): Remove.
4323 * dispnew.c (init_display): Use IS_DAEMON.
4324
fc012771
SM
43252008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
4326
4327 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
4328 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
4329
4330 * emacs.c (is_daemon): Remove.
4331 (main): Don't set is_daemon.
4332 (IS_DAEMON): New macro.
4333 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 4334 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
4335 parent exits.
4336 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
4337
d8bdbe6f
CY
43382008-10-27 Chong Yidong <cyd@stupidchicken.com>
4339
d1a072bf
CY
4340 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
4341 over-sized glyph, draw it with the default glyph width.
4342
e2e325aa
CY
4343 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4344 glyph, draw it with the default glyph width.
4345
4346 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4347 glyph, draw it with the default glyph width.
4348
d8bdbe6f
CY
4349 * xdisp.c (try_scrolling): When computing the distance from the
4350 scroll margin to PT, try moving some distance past the window
4351 bottom before giving up.
4352
7bfac547
MR
43532008-10-27 Martin Rudalics <rudalics@gmx.at>
4354
4355 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
4356 (Fset_window_buffer): Explain in doc-string that a window can be
4357 "strongly" dedicated to its buffer.
4358
4ff029f6
DN
43592008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
4360
4361 * emacs.c (daemon_name): New variable.
4362 (main): Deal with --daemon=SERVER_NAME.
4363 (Fdaemonp): Return a name if one was passed to --daemon.
4364
5790ef40
DN
43652008-10-26 Romain Francoise <romain@orebokech.com>
4366
f9bd0df9 4367 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
4368 (main): Create a pipe before forking, make the parent exit only after
4369 the child has closed its end of the pipe. Move closing the
4370 descriptors ...
4371 (Fdaemon_initialized): ... here. New function.
4372
f5385255
SM
43732008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
4374
4d632321
SM
4375 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
4376 the previous unoptimized table.
4377
f5385255
SM
4378 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
4379 the distinction between non-nil and non-t value of `dedicated'.
4380
6c56a0f3
CY
43812008-10-25 Chong Yidong <cyd@stupidchicken.com>
4382
4383 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 4384 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 4385
fec89261
MR
43862008-10-25 Martin Rudalics <rudalics@gmx.at>
4387
4388 * window.c (Fget_buffer_window, Fdelete_windows_on)
4389 (Freplace_buffer_in_windows): Make buffer argument optional and
4390 rename to buffer_or_name.
4391
34fcddd0
CY
43922008-10-24 Chong Yidong <cyd@stupidchicken.com>
4393
f5385255
SM
4394 * xdisp.c (handle_single_display_spec, handle_display_prop):
4395 Undo 2005-05-16 change.
34fcddd0
CY
4396 (handle_stop): Pop iterator if it's loaded with an empty string.
4397 (get_overlay_strings_1): Don't save iterator if it's loaded with
4398 an empty string (bug#1201).
4399
064766f2
KH
44002008-10-24 Kenichi Handa <handa@m17n.org>
4401
4402 * ftfont.c (ftfont_otf_features): Fix previous change.
4403 (ftfont_otf_capability): Check FeatureList.FeatureCount before
4404 calling ftfont_otf_features.
4405
f9bd0df9 44062008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
4407
4408 * font.c (font_match_p): Fix for the case that a vector of
4409 characters is in script-representative-chars.
4410
1dae9197
MA
44112008-10-24 Michael Albinus <michael.albinus@gmx.de>
4412
4413 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 4414 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
4415 (xd_read_queued_messages): Catch Qdbus_error from the macros.
4416 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
4417 macro. (Bug#1186).
4418
f9bd0df9 44192008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
4420
4421 * s/sol2-10.h: New file.
4422
878a4584
JB
44232008-10-23 Juanma Barranquero <lekktu@gmail.com>
4424
4425 * xdisp.c (fill_glyph_string): Fix typo in source (though the
4426 poor beast has survived 9+ years and the jump from xterm.c!).
4427
cd265ca6
MR
44282008-10-23 Martin Rudalics <rudalics@gmx.at>
4429
4430 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
4431 Reword doc-string.
f5385255 4432 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 4433
472a4dc9
JB
44342008-10-23 Juanma Barranquero <lekktu@gmail.com>
4435
4436 * character.c (syms_of_character) <script-representative-chars>:
4437 <unicode-category-table>: Doc fixes.
4438
159bd5a2
NF
44392008-10-23 Noah Friedman <friedman@splode.com>
4440
4441 * coding.c (make_conversion_work_buffer): Check that
4442 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
4443 Fget_buffer_create.
4444
49f9c344
KH
44452008-10-23 Kenichi Handa <handa@m17n.org>
4446
4447 * font.c (font_add_log): Check the values of extra properties.
4448
12bb3111
MR
44492008-10-22 Martin Rudalics <rudalics@gmx.at>
4450
4451 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4452 Reword doc-string.
4453 (Fset_window_parameter): Use NILP.
4454 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 4455 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 4456
bbeb4e99
JB
44572008-10-22 Juanma Barranquero <lekktu@gmail.com>
4458
4459 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
4460
44612008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
4462
4463 * nsfns.m (ns_appkit_version): New function.
4464 (x-server-version): Use it.
4465 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
4466 (x-server-vendor): Don't check_ns().
4467
4468 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
4469
a9b555d3
JB
44702008-10-22 Juanma Barranquero <lekktu@gmail.com>
4471
4472 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4473 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
4474
4626499f
KH
44752008-10-22 Kenichi Handa <handa@m17n.org>
4476
e3681952
KH
4477 * syntax.c (scan_words): Call word_boundary_p instead of comparing
4478 scripts.
4479
4626499f
KH
4480 * category.c (word_boundary_p): Check scripts instead of charset.
4481 Handle nil value in word-separating-categories and
4482 word-combining-categories.
4483 (syms_of_category): Fix docstrings of word-separating-categories
4484 and word-combining-categories.
4485
1560f91a
EZ
44862008-10-21 Eli Zaretskii <eliz@gnu.org>
4487
4488 * coding.c (Fencode_coding_region, Fdecode_coding_region)
4489 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
4490
f4668441
MR
44912008-10-21 Martin Rudalics <rudalics@gmx.at>
4492
4493 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
4494 Rename arg "buffer" to "buffer_or_name".
4495 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
4496 it optional.
4497 (no_switch_window): Remove since the return value is not used.
a9b555d3 4498 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
4499 Consider window as dedicated when Fwindow_dedicated_p returns a
4500 non-nil value.
4501 * lisp.h: Remove prototype for no_switch_window.
4502
fd75ddb2
JD
45032008-10-21 Jan Djärv <jan.h.d@swipnet.se>
4504
4505 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 4506 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 4507
07295713
KH
45082008-10-21 Kenichi Handa <handa@m17n.org>
4509
4510 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
4511 check Vlatin_extra_code_table.
4512
712adc82
EZ
45132008-10-20 Eli Zaretskii <eliz@gnu.org>
4514
4515 * fileio.c (Fset_file_modes): Doc fix.
4516
f549eb0b
MA
45172008-10-19 Michael Albinus <michael.albinus@gmx.de>
4518
4519 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
4520 in arrays.
4521
aac0c6e3
MR
45222008-10-19 Martin Rudalics <rudalics@gmx.at>
4523
4524 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4525 Mention kill-buffer in doc-string.
4526 (Fset_window_buffer): Reinsert tem check removed in last commit.
4527 (Fenlarge_window, Fshrink_window): Have argument names and
4528 doc-string follow Elisp manual more closely.
4529
45302008-10-18 Eli Zaretskii <eliz@gnu.org>
4531
4532 * fileio.c (Fset_file_modes): Doc fix.
4533
45342008-10-18 Martin Rudalics <rudalics@gmx.at>
4535
4536 * window.c (Fwindow_width, Fset_window_start)
4537 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
4538 (Fdelete_windows_on, Freplace_buffer_in_windows):
4539 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
4540 (Fwindow_dedicated_p): Make window argument optional.
4541 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
4542 (Fset_window_buffer): Respect any non-nil dedicated value for
4543 window. Rename "buffer" argument to "buffer_or_name".
4544
45452008-10-18 Ulrich Mueller <ulm@gentoo.org>
4546
4547 * m/sh3.h: New file, machine description for SuperH.
4548
45492008-10-17 Martin Rudalics <rudalics@gmx.at>
4550
4551 * window.c (Fsplit_window): Rename arg horflag to horizontal.
4552
45532008-10-17 Kenichi Handa <handa@m17n.org>
4554
4555 * ftfont.c (ftfont_otf_features): Fix indexing
4556 gsub_gpos->FeatureList.Feature. Check the validity of indices.
4557
45582008-10-16 Magnus Henoch <mange@freemail.hu>
4559
4560 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
4561 (Fdbus_call_method_asynchronously): Ditto.
4562 This change makes C-h f display the argument list.
4563
45642008-10-16 Chong Yidong <cyd@stupidchicken.com>
4565
4566 * fileio.c (Fexpand_file_name): Doc fix.
4567
4568 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
4569 of :foreground and :background equivalent to unspecified (20.x
4570 compatibility).
4571
45722008-10-15 Eli Zaretskii <eliz@gnu.org>
4573
4574 * buffer.c (syms_of_buffer): Doc fix.
4575
45762008-10-14 Kenichi Handa <handa@m17n.org>
4577
4578 * font.c (font_clear_prop): When clearing font width, clear the
4579 average width field too.
4580
45812008-10-12 Andreas Schwab <schwab@suse.de>
4582
4583 * ftfont.c (ftfont_shape_by_flt): Make static.
4584 * ftfont.h (ftfont_shape_by_flt): Don't declare.
4585
4586 * font.c: Don't include <m17n-flt.h>.
4587
45882008-10-10 Eli Zaretskii <eliz@gnu.org>
4589
4590 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
4591
45922008-10-09 Eli Zaretskii <eliz@gnu.org>
4593
4594 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
4595 away code.
4596
45972008-10-09 Chong Yidong <cyd@stupidchicken.com>
4598
4599 * dispnew.c (update_text_area): Avoid looping due to large glyph
4600 overhangs (bug#1070).
4601
46022008-10-09 Kenichi Handa <handa@m17n.org>
4603
4604 * fontset.c (face_for_char): If face->fontset is negative, just
4605 return ascii_face.
4606
f5385255
SM
4607 * font.c (font_delete_unmatched): Fix previous change.
4608 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
4609
46102008-10-09 Martin Rudalics <rudalics@gmx.at>
4611
4612 * frame.c (Fraise_frame): On text-only terminals select frame in
4613 order to make it visible. (Bug#1061)
4614
46152008-10-08 Chong Yidong <cyd@stupidchicken.com>
4616
4617 * fontset.c (fontset_find_font): Check frame validity.
4618
46192008-10-07 Chong Yidong <cyd@stupidchicken.com>
4620
a9b555d3 4621 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
4622 (xg_display_close): Allow Emacs to close all displays (bug#985).
4623
46242008-10-06 Andreas Schwab <schwab@suse.de>
4625
f5385255 4626 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
4627
46282008-10-06 Chong Yidong <cyd@stupidchicken.com>
4629
f5385255 4630 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 4631
a9b555d3 4632 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
4633
4634 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
4635 during initialization.
4636
46372008-10-04 Eli Zaretskii <eliz@gnu.org>
4638
4639 * xdisp.c (redisplay_internal): If frame switched, redisplay the
4640 whole thing on MSDOS frames as well as on a TTY.
4641
4642 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
4643 well as for TTY.
4644 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
4645 well as on a TTY.
4646
4647 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
4648 as well as for TTY.
4649
4650 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
4651
4652 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
4653 MSDOS frames as well.
4654
46552008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4656
4657 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
4658 correct arguments.
b71ac3dd 4659 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
4660
46612008-10-03 Glenn Morris <rgm@gnu.org>
4662
4663 * emacs.c (USAGE1): Add --daemon.
4664
46652008-10-02 Eli Zaretskii <eliz@gnu.org>
4666
4667 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
4668 100, so it's in percents as advertised.
4669
46702008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4671
4672 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
4673 (ns_output.current_cursor, ns_output.desired_cursor)
4674 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
4675 (FRAME_NEW_CURSOR_COLOR): Remove.
4676
4677 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 4678 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
4679 enumeration (HOLLOW_BOX_CURSOR, etc.).
4680
4681 * nsterm.m (ns_frame_rehighlight): Remove commented code.
4682 (draw_window_cursor): Simplify code.
f5385255
SM
4683 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
4684 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 4685 updates manually.
a9b555d3
JB
4686 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
4687 Use core Emacs cursor types.
aac0c6e3 4688
b8ff72fa 4689 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
4690
46912008-10-02 Martin Rudalics <rudalics@gmx.at>
4692
4693 * process.c (Faccept_process_output): Fix doc-string.
4694
46952008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
4696
4697 * gmalloc.c (__sbrk): Also define for uClibc.
4698
4699 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
4700 for uClibc.
4701
47022008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4703
4704 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
4705 styles.
4706 (nsfont_open): Reenable the cache.
4707
47082008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4709
4710 * font.c (font_matching_entity): Reflect ATTRS in font selection.
4711 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
4712
47132008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
4714
4715 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
4716 a suspended terminal.
4717
47182008-09-30 Michael Albinus <michael.albinus@gmx.de>
4719
4720 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
4721
47222008-09-30 Eli Zaretskii <eliz@gnu.org>
4723
4724 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
4725
47262008-09-30 Chong Yidong <cyd@stupidchicken.com>
4727
4728 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
4729 in a continued line coincides with a line beginning.
4730
47312008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4732
4733 * nsfont.m (nsfont_trait_distance): Fix bug.
4734 (nsfont_list): Return a list rather than a vector (syncs with Handa
4735 changes of 2008-05-14).
4736 (nsfont_open): Improve logging.
4737
47382008-09-29 Andreas Schwab <schwab@suse.de>
4739
4740 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4741
47422008-09-28 Martin Rudalics <rudalics@gmx.at>
4743
4744 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
4745 name as char-resolve-modifiers.
4746 Reported by: Markus Triska <markus.triska@gmx.at>
4747
47482008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
4749
4750 * dispnew.c (init_display): Return earlier when running as a daemon.
4751
47522008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4753
4754 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
4755
47562008-09-27 Eli Zaretskii <eliz@gnu.org>
4757
4758 * composite.c (Fcomposition_get_gstring)
4759 (Fcompose_region_internal, Fcompose_string_internal)
4760 (Ffind_composition_internal): Doc fix.
4761 (syms_of_composite) <compose-chars-after-function>: Doc fix.
4762 (syms_of_composite) <auto-composition-function>: Doc fix.
4763 (syms_of_composite) <composition-function-table>: Doc fix.
4764
47652008-09-25 Chong Yidong <cyd@stupidchicken.com>
4766
4767 * search.c (wordify): New argument for lax word-ends.
4768 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
4769
47702008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
4771
4772 * lisp.h (is_daemon): Declare.
4773 * dispnew.c (init_display): Do not try to initialize the terminal
4774 when running as a daemon.
4775
47762008-09-22 Chong Yidong <cyd@stupidchicken.com>
4777
4778 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
4779 x_display_pixel_height.
4780
47812008-09-22 Martin Rudalics <rudalics@gmx.at>
4782
4783 * undo.c (record_point): Don't call Fundo_boundary for first
4784 change. (Bug#731)
4785
47862008-09-22 Juanma Barranquero <lekktu@gmail.com>
4787
4788 * emacs.c (Fdaemonp): Doc fix.
4789
47902008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
4791
4792 * emacs.c (main): Place #ifdef in the proper place.
4793
47942008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
4795
4796 * emacs.c (standard_args): Add --daemon.
4797 (main): Disconnect from the terminal when --daemon is passed.
4798 (is_daemon): New variable.
4799 (Fdaemonp): New function.
4800 (syms_of_emacs): Defsubr it.
4801
48022008-09-20 Chong Yidong <cyd@stupidchicken.com>
4803
4804 * xdisp.c (get_next_display_element): Handle string display
4805 correctly when checking for the end of a box run.
4806
48072008-09-20 Glenn Morris <rgm@gnu.org>
4808
4809 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
4810 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
4811 (Frename_file): Avoid copying to trash if a rename involves
4812 a delete. (Bug#964).
4813
48142008-09-20 Eli Zaretskii <eliz@gnu.org>
4815
4816 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
4817 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
4818 frames as well as termcap frames.
4819 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
4820 get_named_tty.
4821
48222008-09-19 Eli Zaretskii <eliz@gnu.org>
4823
4824 * process.c (procfs_system_process_attributes): Fix cmdline in
4825 case /proc/PID/cmdline is empty.
4826
4827 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
4828 x_display_pixel_height.
4829
48302008-09-19 Juanma Barranquero <lekktu@gmail.com>
4831
4832 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
4833
4834 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
4835 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
4836
48372008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
4838
4839 * dispextern.h (struct it): Move line_wrap away from the middle of
4840 bitfields. Move voffset in struct iterator_stack_entry after the
4841 bitfields. Move tab_width near after another short.
4842
48432008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
4844
4845 * frame.h (struct frame): Move alpha from the middle of bitfields.
4846
4847 * window.h (struct window): Move frozen_window_start_p after the
4848 rest of the bitfields to reduce padding.
4849
48502008-09-18 Chong Yidong <cyd@stupidchicken.com>
4851
4852 * xterm.h (x_display_info): Remove `height' and `width' members.
4853
4854 * nsterm.h (ns_display_info): Remove `height' and `width' members.
4855
4856 * w32term.h (w32_display_info): Remove `height', `width',
4857 `height_in', and `width_in' members.
4858
b8ff72fa
SM
4859 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4860 New functions.
aac0c6e3
MR
4861 (x_calc_absolute_position): Use them.
4862 (x_term_init): Omit removed `height' and `width' members.
4863
b8ff72fa
SM
4864 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4865 New functions.
aac0c6e3
MR
4866 (w32_read_socket, x_calc_absolute_position): Use them.
4867 (w32_initialize_display_info, w32_term_init): Omit removed members
4868 of w32_display_info.
4869
b8ff72fa
SM
4870 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
4871 New functions.
4872 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 4873
b8ff72fa
SM
4874 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4875 New functions.
aac0c6e3
MR
4876 (x_calc_absolute_position): Use them.
4877 (x_term_init): Omit removed `height' and `width' members.
4878
4879 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
4880 (compute_tip_xy):
4881 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
4882 * xmenu.c (menu_position_func): Use x_display_pixel_height and
4883 x_display_pixel_width.
4884
48852008-09-18 Kenichi Handa <handa@m17n.org>
4886
4887 * composite.c (fill_gstring_header): Don't check FROM and TO here.
4888 (composition_compute_stop_pos): Fix handling of static composition.
4889 (Fcomposition_get_gstring): Check FROM and TO at first.
4890
48912008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4892
46e722a9 4893 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
4894 mixup (YAILOM).
4895
48962008-09-17 Chong Yidong <cyd@stupidchicken.com>
4897
4898 * indent.c (Fvertical_motion): Use position reported by iterator
4899 instead of PT for determining screen motion (bug#943).
4900
49012008-09-17 Romain Francoise <romain@orebokech.com>
4902
4903 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
4904
49052008-09-17 Kenichi Handa <handa@m17n.org>
4906
4907 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
4908
4909 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
4910 if necessary.
4911
49122008-09-16 Kenichi Handa <handa@m17n.org>
4913
4914 * coding.c (make_conversion_work_buffer): Avoid calling
4915 Fget_buffer_create if it is not necessary.
4916
49172008-09-15 Martin Rudalics <rudalics@gmx.at>
4918
4919 * window.c (Fselect_window): Don't update window_select_count and
4920 use_time when norecord is not nil.
4921
49222008-09-14 Kenichi Handa <handa@m17n.org>
4923
4924 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
4925 specpdl_ptr.
4926
49272008-09-12 Kenichi Handa <handa@m17n.org>
4928
4929 * indent.c (scan_for_column): Don't handle automatic composition
4930 if the current buffer is not associated with a window.
4931
4932 * composite.c (composition_reseat_it): If the current buffer is
4933 not associated with a window, ignore the automatic composition.
4934 (find_automatic_composition): Likewise.
4935
49362008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4937
4938 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
4939 (Fgpm_mouse_stop): Use it.
4940 * termhooks.h (close_gpm): Declare.
4941 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
4942 connection if Gpm_GetEvent fails.
4943
4944 * window.c (set_window_buffer): Always preserve current-buffer.
4945
49462008-09-12 Glenn Morris <rgm@gnu.org>
4947
4948 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
4949
49502008-09-11 Glenn Morris <rgm@gnu.org>
4951
4952 * charset.c (charset-map-path): Doc fix.
4953
49542008-09-10 Kenichi Handa <handa@m17n.org>
4955
4956 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
4957
4958 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
4959 compose a grapheme cluster with the preceding base glyph.
4960
4961 * composite.c (composition_compute_stop_pos): Fix previous change.
4962 Reset cmp_it->id to -1 at first.
4963
49642008-09-10 Glenn Morris <rgm@gnu.org>
4965
4966 * Makefile.in (character.o, chartab.o): Fix config.h typo.
4967
49682008-09-09 Chong Yidong <cyd@stupidchicken.com>
4969
4970 * keyboard.c (read_key_sequence): Reapply translation maps when
4971 switching keyboards.
4972
49732008-09-09 Kenichi Handa <handa@m17n.org>
4974
4975 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
4976 characters.
4977
4978 * composite.c (FORWARD_CHAR): Fix calculation
4979 of (POSITION).pos_byte.
4980 (composition_compute_stop_pos): Limit the search of composition to
4981 at most 500 characters ahead. If we reach the limit or find a
4982 newline, set cmp_it->ch to -2 and return 0.
4983 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
4984
49852008-09-08 Kenichi Handa <handa@m17n.org>
4986
4987 * indent.c (Fvertical_motion): Be sure to set
4988 it_overshoot_expected if it.cmp_it.id is non-negative.
4989
49902008-09-07 Andreas Schwab <schwab@suse.de>
4991
4992 * callproc.c (Fcall_process): Don't hold references to string data
4993 across garbage collection. Move initialisation of new_argv down
4994 to avoid compiler bug.
4995
49962008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4997
4998 * process.c (Fsystem_process_attributes): Doc fix.
4999
50002008-09-07 Chong Yidong <cyd@stupidchicken.com>
5001
5002 * callproc.c (Fcall_process): Canonicalize current directory name.
5003
5004 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5005 iterator advances to the next line if the current line ends in a
5006 continued tab.
5007
50082008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
5009
5010 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
5011 member to point to cmp_from.
5012
5013 * xdisp.c: Doc fix for references to gidx data member.
5014
50152008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5016
5017 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
5018
50192008-09-07 Kenichi Handa <handa@m17n.org>
5020
5021 * composite.c (FORWARD_CHAR): Check STOP after
5022 incrementing (POSITION).pos.
5023
50242008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5025
5026 * process.c (Fsystem_process_attributes): Doc fix.
5027
50282008-09-06 Chong Yidong <cyd@stupidchicken.com>
5029
5030 * keyboard.c (Ftop_level): Doc fix.
5031
50322008-09-06 Eli Zaretskii <eliz@gnu.org>
5033
5034 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
5035 minibuffer, don't let lower part of menu invade the echo area.
5036
5037 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
5038 "char *q" to access menu text and advance through it. Revert the
5039 change that displayed ">" instead of ASCII character 0x10.
5040
50412008-09-05 Eli Zaretskii <eliz@gnu.org>
5042
5043 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
5044 toggle boxes and radio buttons on MS-DOS as well.
5045
50462008-09-05 Kenichi Handa <handa@m17n.org>
5047
5048 * composite.c (autocmp_chars): Check lookback count.
5049 (composition_compute_stop_pos): Set cmp_it->lookback.
5050 (composition_reseat_it): Check lookback count.
5051 (struct position_record): New struct.
5052 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
5053 (find_automatic_composition): New function.
5054 (composition_adjust_point): Use find_automatic_composition.
5055
5056 * dispextern.h (struct composition_it): New member lookback.
5057
50582008-09-02 Chong Yidong <cyd@stupidchicken.com>
5059
5060 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
5061 if moving by a single line.
5062
50632008-09-02 Andreas Schwab <schwab@suse.de>
5064
5065 * xterm.c (x_delete_display): Fix merge error.
5066
5067 * fileio.c (Fexpand_file_name): Remove unused variables.
5068
50692008-09-02 Eli Zaretskii <eliz@gnu.org>
5070
5071 * fileio.c (Fexpand_file_name): Copy argument `name' into local
5072 storage on all platforms, not just on DOS_NT.
5073
50742008-09-02 Jason Rumney <jasonr@gnu.org>
5075
b8ff72fa
SM
5076 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
5077 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
5078
50792008-09-01 Chong Yidong <cyd@stupidchicken.com>
5080
5081 * xfaces.c (Finternal_set_alternative_font_family_alist)
5082 (Finternal_set_alternative_font_registry_alist): Properly copy
5083 entire alist structure.
5084
50852008-09-01 Kenichi Handa <handa@m17n.org>
5086
d66c0241 5087 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 5088 representative chars of the script is a vector.
d66c0241
JB
5089 (ftfont_list): Handle the case where the representative chars of
5090 the script is a vector.
aac0c6e3
MR
5091
5092 * character.c (syms_of_character): Docstring of
5093 script-representative-chars fixed.
5094
50952008-08-31 Eli Zaretskii <eliz@gnu.org>
5096
5097 * msdos.c (BUILD_CHAR_GLYPH): New macro.
5098 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
5099 the menu. Allocate larger buffer for `text', to account for
5100 possible ^C characters.
5101
51022008-08-31 Martin Rudalics <rudalics@gmx.at>
5103
5104 * xdisp.c (prepare_menu_bars): Don't call
5105 Vwindow_size_change_functions with arg Qt.
5106
51072008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
5108
5109 * font.h (font_range):
5110 * fileio.c (report_file_error):
46e722a9
SM
5111 * composite.c (composition_update_it): Yet another int/Lisp_Object
5112 mixup (YAILOM).
aac0c6e3
MR
5113
51142008-08-30 Glenn Morris <rgm@gnu.org>
5115
5116 * data.c (Fmake_variable_frame_local): Doc fix.
5117
5118 * frame.c (Fmodify_frame_parameters): Doc fix.
5119
51202008-08-30 Eli Zaretskii <eliz@gnu.org>
5121
5122 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
5123 needed by GetTokenInformation.
5124 (w32_system_process_attributes): Check return values of all system
5125 APIs.
5126
5127 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
5128 only when the state changes.
5129 (IT_update_begin, IT_update_end): Add termscript trace.
5130
5131 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
5132 clipboard is unavailable. Set dst to NULL if it doesn't point to
5133 malloc'ed data.
5134 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
5135 passing random values to xfree.
5136
5137 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 5138 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
5139
51402008-08-29 Jason Rumney <jasonr@gnu.org>
5141
5142 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
5143
51442008-08-29 Eli Zaretskii <eliz@gnu.org>
5145
5146 * composite.c (fill_gstring_body): Avoid compiler warnings.
5147
5148 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
5149 LGLYPH_SET_CODE to avoid compiler warnings.
5150
2ae37cf0 5151 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
5152
5153 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
5154
5155 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
5156 LGLYPH_SET_CODE.
5157
51582008-08-29 Kenichi Handa <handa@m17n.org>
5159
5160 * fileio.c (report_file_error): Don't downcase the first character
5161 of errstring if it is still unibyte.
5162
51632008-08-29 Kenichi Handa <handa@m17n.org>
5164
5165 These changes are to re-implement the automatic composition so
5166 that it doesn't use text properties.
5167
5168 * Makefile.in (ftfont.o): Depend on composite.h.
5169 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
5170
5171 * character.h (Vunicode_category_table): Extern it.
5172
5173 * character.c (Vunicode_category_table): New variable.
5174 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
5175
5176 * chartab.c (optimize_sub_char_table): Perform more greedy
5177 optimization.
5178
b8ff72fa
SM
5179 * composite.h (enum composition_method):
5180 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
5181 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
5182 (Vcomposition_function_table): Extern it.
5183 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
5184 (composition_gstring_put_cache, composition_gstring_from_id)
5185 (composition_gstring_p, composition_gstring_width)
5186 (composition_compute_stop_pos, composition_reseat_it)
5187 (composition_update_it, composition_adjust_point): Extern them.
5188 (Fcomposition_get_gstring): EXFUN it.
5189
d66c0241 5190 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
5191 (Vcomposition_function_table)
5192 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
5193 (gstring_hash_table, gstring_work, gstring_work_headers):
5194 New variables.
aac0c6e3
MR
5195 (gstring_lookup_cache, composition_gstring_put_cache)
5196 (composition_gstring_from_id, composition_gstring_p)
5197 (composition_gstring_width, fill_gstring_header)
5198 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
5199 (composition_reseat_it, composition_update_it)
b8ff72fa 5200 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
5201 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
5202 and gstring_work_headers. DEFVAR_LISP composition-function-table.
5203 Defsubr compostion_get_gstring.
5204
5205 * dispextern.h (struct glyph): New union u.cmp. Delete the member
5206 cmp_id.
5207 (struct glyph_string): Delete the member gidx. New members
5208 cmp_id, cmp_from, and cmp_to.
5209 (enum it_method): Delete GET_FROM_COMPOSITION.
5210 (struct composition_it): New struct.
5211 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
5212 Delete c, len, cmp_id, cmp_len in u.comp.
5213
5214 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 5215 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 5216 (enum lglyph_indices): Likewise.
b8ff72fa 5217 (font_range): Adjust extern.
aac0c6e3
MR
5218 (font_fill_lglyph_metrics): Extern it.
5219
5220 * font.c (QCf): New variable.
5221 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5222 (font_prepare_composition): Delete this function.
5223 (font_range): Type and arguments changed.
5224 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
5225 (font_fill_lglyph_metrics): New function.
b8ff72fa 5226 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 5227 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
5228 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
5229 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
5230
5231 * fontset.h (font_for_char): Extern it.
5232
5233 * fontset.c (font_for_char): New function.
5234
5235 * ftfont.c: Include composite.h.
5236 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 5237 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
5238
5239 * indent.c: Include composite.h and dispextern.h.
5240 (check_composition): Delete this function.
5241 (scan_for_column): Handle composition by
5242 composition_compute_stop_pos, composition_reseat_it, and
5243 composition_update_it.
5244 (compute_motion): Likewise.
5245 (Fvertical_motion): Fix checking of composition.
5246
5247 * keyboard.c (adjust_point_for_property): Check composition by
5248 composition_adjust_point.
5249
b8ff72fa 5250 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
5251 struct glyph_string.
5252
b8ff72fa
SM
5253 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
5254 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
5255 struct glyph.
5256 (produce_composite_glyph): Likewise.
5257
b8ff72fa
SM
5258 * w32term.c (x_draw_composite_glyph_string_foreground):
5259 Adjust for the change of struct glyph_string.
aac0c6e3
MR
5260 (x_draw_glyph_string): Likewise.
5261
5262 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
5263 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5264
5265 * xdisp.c: Include font.h.
5266 (it_props): Delete the entry for Qauto_composed.
5267 (init_iterator): Initialize it->cmp_it.id to -1.
5268 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 5269 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
5270 (handle_auto_composed_prop): Delete it.
5271 (handle_composition_prop): Handle only static composition.
5272 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
5273 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 5274 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
5275 (pop_it): Likewise.
5276 (get_next_element): Delete next_element_from_composition.
5277 (CHAR_COMPOSED_P): New macro.
5278 (get_next_display_element): For automatic composition, get a face
5279 from the font in the glyph-string.
5280 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 5281 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
5282 (next_element_from_string): Check if the character at the current
5283 position is composed by CHAR_COMPOSED_P.
5284 (next_element_from_buffer): Likewise.
d66c0241
JB
5285 (next_element_from_composition): Adjust for the change of struct it.
5286 Update it->cmp_it.
b8ff72fa
SM
5287 (dump_glyph): Adjust for the change of struct glyph.
5288 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
5289 it and struct glyph. Don't handle automatic composition here.
5290 (fill_gstring_glyph_string): New function.
5291 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 5292 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
5293 (BUILD_GSTRING_GLYPH_STRING): New macro.
5294 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
5295 automatic composition.
b8ff72fa 5296 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 5297 struct glyph.
b8ff72fa 5298 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 5299
b8ff72fa 5300 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
5301 the change of struct glyph_string.
5302 (x_draw_glyph_string): Likewise.
5303
53042008-08-29 Glenn Morris <rgm@gnu.org>
5305
5306 * buffer.c (word-wrap): Doc fix.
5307 * xdisp.c (truncate-partial-width-windows): Doc fix.
5308 Increase default to 50.
5309
53102008-08-29 Chong Yidong <cyd@stupidchicken.com>
5311
5312 * xdisp.c (update_tool_bar_unwind): New function.
5313 (update_tool_bar): Temporarily set selected frame before building
5314 tool-bar items.
5315
53162008-08-28 Michael Albinus <michael.albinus@gmx.de>
5317
5318 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
5319 snprintf, respectively.
5320 (xd_append_arg): Convert strings with Fstring_make_unibyte.
5321
53222008-08-28 Chong Yidong <cyd@stupidchicken.com>
5323
5324 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
5325 LDFLAGS to GNUstep CC invocation.
5326
53272008-08-27 Chong Yidong <cyd@stupidchicken.com>
5328
5329 * indent.c (Fvertical_motion): Revert last change. Handle the
5330 general case where we are moving forward, and PT spans multiple
5331 screen lines.
5332
5333 * eval.c (find_handler_clause): Temporarily increase
5334 max-lisp-eval-depth while printing the backtrace buffer, to
5335 guarantee that help-mode code can run.
5336
53372008-08-27 Eli Zaretskii <eliz@gnu.org>
5338
5339 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
5340 colors under -rv.
5341 (IT_set_frame_parameters): Don't swap foreground and background
5342 colors if `(reverse . t)' is present in the frame properties.
5343 (internal_terminal_init): Call init_frame_faces only for the
5344 initial frame.
5345
53462008-08-27 Andreas Schwab <schwab@suse.de>
5347
5348 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
5349
53502008-08-27 Andreas Schwab <schwab@suse.de>
5351
5352 * search.c (search_buffer): Set char_base to zero only at the end.
5353
53542008-08-27 Kenichi Handa <handa@m17n.org>
5355
b8ff72fa 5356 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
5357
53582008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
5359
5360 * xterm.c (x_term_init): Temporarily hide the partially
5361 initialized terminal while calling vendor-specific-keysyms.
5362
53632008-08-26 Eli Zaretskii <eliz@gnu.org>
5364
5365 * msdos.c (internal_terminal_init): Most initializations done only
5366 once, especially initial_screen_colors[] and termscript open.
5367
53682008-08-26 Chong Yidong <cyd@stupidchicken.com>
5369
5370 * eval.c (Fcondition_case): Doc fix.
5371
5372 * widgetprv.h (EmacsFramePart): Change font member to the new font
5373 struct.
5374
5375 * widget.c: Include character.h and font.h for XSETFONT.
5376 (setup_frame_gcs): Compute X font id from font struct, just once.
5377
53782008-08-26 Eli Zaretskii <eliz@gnu.org>
5379
5380 * term.c (get_named_tty): Fix last change.
5381
53822008-08-26 Chong Yidong <cyd@stupidchicken.com>
5383
5384 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 5385 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
5386
53872008-08-25 Eli Zaretskii <eliz@gnu.org>
5388
5389 * frame.c (do_switch_frame): Mark previously displayed frame as
5390 obscured for FRAME_MSDOS_P frames as well.
5391
53922008-08-24 Eli Zaretskii <eliz@gnu.org>
5393
5394 * frame.c (make_terminal_frame): Initialize f->terminal,
5395 f->terminal->reference_count, and scroll bars on MS-DOS as well.
5396 Set the top frame to newly created frame.
5397 (Fmake_terminal_frame): Reuse the_only_display_info.
5398
5399 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
5400 estimating available memory.
5401
b97439ce 54022008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
5403
5404 * nsterm.m (ns_draw_window_cursor): Don't call
5405 NSDisableScreenUpdates and NSEnableScreenUpdates on
5406 non-NS_IMPL_COCOA systems.
5407
54082008-08-23 Andreas Schwab <schwab@suse.de>
5409
5410 * process.c (procfs_system_process_attributes): Fix use of
5411 uninitialized variables.
5412
54132008-08-23 Eli Zaretskii <eliz@gnu.org>
5414
5415 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
5416
5417 * dispnew.c (init_display): Remove MS-DOS specific conditions for
5418 calling tty-set-up-initial-frame-faces.
5419
b8ff72fa
SM
5420 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
5421 Allow MSDOS frames along with X frames.
aac0c6e3
MR
5422
5423 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
5424 addition to output_termcap.
5425
5426 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
5427
5428 * termchar.h (FRAME_TTY): Support output_msdos_raw.
5429 (struct tty_display_info) [MSDOS]: Add fields related to mouse
5430 highlight.
5431
5432 * process.c [!subprocesses]: Define QCname.
5433 (syms_of_process): Intern and staticpro it.
5434
5435 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
5436 Adjust for changes in encoding/decoding routines.
5437 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
5438 encode_coding and decode_coding.
5439
b8ff72fa 5440 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
5441
5442 * dosfns.c: Include frame.h before termhooks.h.
5443 (dos_cleanup): Use CURTTY ()->termscript instead of a global
5444 variable termscript.
5445
5446 * s/msdos.h (USER_FULL_NAME): Define.
5447 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
5448
5449 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
5450 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
5451 pw->pw_gecos.
5452
5453 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
5454 SELECTED_FRAME as additional (1st) argument.
5455 (tty_read_avail_input): Handle output_msdos_raw in
5456 addition to output_termcap.
5457
5458 * msdos.c: Include frame.h before termhooks.h.
5459 (mouse_on, mouse_off, mouse_moveto, mouse_init)
5460 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
5461 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
5462 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
5463 (IT_set_terminal_modes, IT_reset_terminal_modes)
5464 (IT_set_frame_parameters): Use tty->termscript instead of a global
5465 variable termscript.
5466 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
5467 global variable terminal_coding. Don't refer to
5468 Vnonascii_translation_table.
5469 (internal_terminal_init): Set Vwindow_system in current_kboard.
5470 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
5471 Announce date and time of session start, if termscript is open.
5472 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
5473 term.c:init_tty). Open termscript only of not already open.
5474 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
5475 here instead of dos_ttraw. Don't initialize display if this is an
5476 initial tty. Don't set FRAME_FONT.
5477 (Vwindow_system_version): Bump to 23.
5478 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
5479 is available, set up mouse_position_hook.
5480 (dos_ttraw, IT_set_terminal_modes): If called with initial
5481 terminal, do nothing.
5482 (IT_set_frame_parameters): Handle the Qtty_type frame
5483 parameter by calling internal_terminal_init.
5484 (dos_set_window_size, show_mouse_face)
5485 (clear_mouse_face, IT_note_mode_line_highlight)
5486 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
5487 (dos_rawgetc): Use tty_display_info instead of x_display_info.
5488 (initialize_msdos_display): New function.
5489 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
5490 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
5491 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
5492 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 5493 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
5494 (request_sigio, unrequest_sigio): Don't define, now defined on
5495 sysdep.c.
5496 (IT_write_glyphs): Rewrite to use encode_terminal_code.
5497
5498 * term.c [MSDOS]: Include msdos.h.
5499 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
5500 conditional to DOS_NT. Allow only one call to this function in a
5501 session. Don't allocate a new struct tty_display_info; instead,
5502 reuse the_only_display_info. Call get_tty_size to get screen
5503 dimensions. Call init_baud_rate to set bad_rate.
5504 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
5505 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 5506 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
5507 (get_tty_terminal, get_named_tty, Ftty_type)
5508 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
5509 output_termcap.
b8ff72fa
SM
5510 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
5511 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 5512 only when subprocesses are supported.
aac0c6e3
MR
5513
5514 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
5515 f->output_data.x.
5516 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
5517 terminal devices.
5518
5582fbc7 5519 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
5520 x_output.
5521 (FRAME_FONT): Use output_data.tty.
5522 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
5523 (struct x_display_info): Rename from display_info. Update all users in
5524 msdos.c.
aac0c6e3 5525 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 5526 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
5527 (dos_ttraw): Update prototype.
5528
5529 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
5530 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
5531
55322008-08-23 Jason Rumney <jasonr@gnu.org>
5533
5534 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
5535 (fn_TIFFSetDirectory): New library function used.
5536 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
5537 (tiff_load): Use :index to select among multiple images. Set count
5538 property when multiple images exist.
5539 (gif_format): Use :index, not :image.
5540
55412008-08-23 Chong Yidong <cyd@stupidchicken.com>
5542
5543 * xdisp.c (try_scrolling): Check INT_MAX instead of
5544 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
5545 to obtain INT_MAX.
5546
55472008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
5548
5549 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
5550
55512008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
5552
5553 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
5554 GNUstep library location.
5555
55562008-08-21 Chong Yidong <cyd@stupidchicken.com>
5557
5558 * xfaces.c (x_update_menu_appearance): Check validity of menu font
5559 before using it.
5560
5561 * puresize.h (BASE_PURESIZE): Increase to 1250000.
5562
55632008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5564
5565 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
5566 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
5567 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
5568 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
5569 (EmacsApp-cursor_blink_handler): Remove declaration.
5570 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
5571 match 01 Feb 2008 changes in xterm.c.
5572 (ns_read_socket): Add cast to avoid warning.
5573 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
5574 GNUstep.
5575
55762008-08-20 Chong Yidong <cyd@stupidchicken.com>
5577
5578 * xselect.c (x_get_foreign_selection): Return nil if desired
5579 selection could not be obtained, instead of signalling an error.
5580
55812008-08-20 David Reitter <david.reitter@gmail.com>
5582
5583 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
5584 * nsterm.m: Remove ns-specific code for cursor blinking.
5585 (ns_draw_window_cursor): Clear cursor properly rather than
5586 redrawing the area. Respect width of bar cursors.
5587 These changes enable the use of generic blink-cursor-mode and
5588 generic cursor types in NS and support smooth cursor movements (do
5589 not blink off after command).
5590 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
5591 Nextstep, too.
5592
55932008-08-19 Kenichi Handa <handa@m17n.org>
5594
5595 * font.c (Vfont_log_deferred): New variable.
5596 (font_add_log): Check Vfont_log_deferred.
5597 (font_deferred_log): New function.
5598
5599 * font.h (font_deferred_log): Extern it.
5600
5601 * fontset.c (reorder_font_vector): Use encoding charset of fonts
5602 for sorting.
5603 (face_for_char): Use deferred log.
5604
56052008-08-18 Kenichi Handa <handa@m17n.org>
5606
5607 * fontset.c (face_for_char): Add font log.
5608
5609 * font.c (font_add_log): Add the font properties :script, :lang,
5610 and :otf in the log.
5611
56122008-08-17 Chong Yidong <cyd@stupidchicken.com>
5613
5614 * xdisp.c: Remove dead code.
5615 (handle_invisible_prop, next_overlay_string): Defer call to
5616 setup_for_ellipsis.
5617 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
5618
56192008-08-15 Chong Yidong <cyd@stupidchicken.com>
5620
5621 * xfaces.c (lookup_derived_face): Properly handle possible zero
5622 return value of get_lface_attributes.
5623 (merge_faces): Don't tell lookup_derived_face to signal an error
5624 if face is not found.
5625
5626 * dired.c (Fdirectory_files): Doc fix.
5627
5628 * process.c (make_process): Initialize kill_without_query struct
5629 member.
5630
56312008-08-15 Eli Zaretskii <eliz@gnu.org>
5632
5633 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
5634 Alternative calculation of totphys for Visual Studio 6.
5635
5636 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
5637
5638 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
5639 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
5640 All users changed.
5641 (stat): Only root directory passed to GetDriveType. Allow RAM
5642 disk as well as local fixed disk when w32-get-true-file-attributes
5643 is set to `local'.
5644 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
5645 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
5646 (w32_cached_id, w32_add_to_cache): New functions.
5647 (get_name_and_id): Look account names in the cache before calling
5648 lookup_account_sid.
5649 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
5650 New initialization flags.
5651 (globals_of_w32): Initialize them to zero.
5652 (w32_system_process_attributes): Use w32_cached_id and
5653 w32_add_to_cache.
5654
56552008-08-14 Lawrence Mitchell <wence@gmx.li>
5656
5657 * lread.c (Fread_char, Fread_char_exclusive): If no character
5658 event is read before timeout is reached, return nil, rather than
5659 converting to a number.
5660
56612008-08-14 Chong Yidong <cyd@stupidchicken.com>
5662
5663 * fns.c (use_dialog_box): Doc fix.
5664
5665 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
5666 on OS X.
5667
56682008-08-13 Chong Yidong <cyd@stupidchicken.com>
5669
5670 * frame.c (Qns_parse_geometry): New var.
5671 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
5672
56732008-08-11 Chong Yidong <cyd@stupidchicken.com>
5674
5675 * xdisp.c (x_produce_glyphs): Handle the case when font has no
5676 space character in calculating tabs.
5677
56782008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
5679
5680 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
5681
56822008-08-10 Glenn Morris <rgm@gnu.org>
5683
5684 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
5685 silence gcc "limited range of data type" warnings in some
5686 make_fixnum_or_float calls.
5687
56882008-08-09 Eli Zaretskii <eliz@gnu.org>
5689
5690 * w32.c (w32_system_process_attributes): If the process does not
5691 exist, return nil.
5692
5693 * w32.c: Include thelp32.h, psapi.h and coding.h.
5694 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
5695 declarations.
5696 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
5697 (Process32Next_Proc): New typedefs.
5698 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
5699 (g_b_init_process32_next, g_b_init_open_thread_token)
5700 (g_b_init_impersonate_self, g_b_init_revert_to_self)
5701 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
5702 (g_b_init_get_process_working_set_size)
5703 (g_b_init_global_memory_status_ex): New static variables.
5704 (globals_of_w32): Initialize them.
5705 (create_toolhelp32_snapshot, process32_first, process32_next)
5706 (open_thread_token, impersonate_self, revert_to_self)
5707 (get_process_memory_info, get_process_working_set_size)
5708 (global_memory_status, global_memory_status_ex): New wrapper
5709 functions.
5710 (w32_list_system_processes, w32_system_process_attributes)
5711 (enable_privilege, restore_privilege, ltime, process_times):
5712 New functions.
5713 (convert_time_raw): New function.
5714 (convert_time): Remove conversion of FILETIME into time in 100
5715 nsec units, call convert_time_raw instead.
5716
5717 * process.h (w32_list_system_processes, w32_system_process_attributes):
5718 Add prototypes.
5719 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
5720 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
5721 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
5722 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
5723
5724 * process.c (Fsystem_process_attributes): Doc fix.
5725
57262008-08-08 Chong Yidong <cyd@stupidchicken.com>
5727
5728 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
5729 a continued multi-char glyph; if so, advance to the actual glyph.
5730
57312008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
5732
5733 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
5734
5735 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
5736 (.m.o): Use it.
5737 * config.in: Regenerate.
5738
57392008-08-07 Chong Yidong <cyd@stupidchicken.com>
5740
5741 * xdisp.c (redisplay_window): Revert last change.
5742 (try_window): Check bottom scroll margin too.
5743
57442008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5745
5746 * config.in: Regenerate.
5747
5748 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
5749 -list-load-path-shadows'.
5750 (nsgui.h): Reduce number of things depending on it.
5751
57522008-08-06 Chong Yidong <cyd@stupidchicken.com>
5753
5754 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
5755 instead of window-end which does the wrong thing at eob.
5756 (try_cursor_movement): Minor optimization.
5757 (redisplay_window): If scroll margin is defined, don't assume
5758 window doesn't need scrolling.
5759
57602008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5761
5762 * config.in: Regenerate.
5763
5764 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
5765 (mostlyclean): Don't delete *.d under NS.
5766
5767 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
5768
57692008-08-06 Kenichi Handa <handa@m17n.org>
5770
5771 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
5772
57732008-08-06 Andreas Schwab <schwab@suse.de>
5774
5775 * config.in: Regenerate.
5776
57772008-08-05 Chong Yidong <cyd@stupidchicken.com>
5778
5779 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
5780 forcing a window start.
5781
5782 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
5783 (auto_save_1): Update modtime when auto-save-list-file-name is on.
5784
57852008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5786
5787 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
5788 argument.
5789
57902008-08-05 Juanma Barranquero <lekktu@gmail.com>
5791
5792 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
5793 <scroll-down-aggressively, before-change-functions>:
5794 <after-change-functions>: Reflow docstrings.
5795
57962008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5797 Ken Raeburn <raeburn@gnu.org>
5798
5799 Dock menu customization, based on a patch by Ken Raeburn, plus some
5800 other fixes.
5801 * nsmenu.m (dockMenu): New variable.
5802 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
5803
5804 * nsterm.h (dockMenu): Declare.
5805
5806 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
5807 (ns_term_init): Initialize dockMenu.
5808 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
5809 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
5810 left.
5811
5812 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
5813
58142008-08-04 Chong Yidong <cyd@stupidchicken.com>
5815
5816 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
5817
5818 * config.in: Regenerate.
5819
58202008-08-04 Seiji Zenitani <zenitani@mac.com>
5821
5822 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
5823
58242008-08-04 Chong Yidong <cyd@stupidchicken.com>
5825
5826 * nsterm.h (find_and_call_menu_selection): Fix prototype.
5827
58282008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5829
5830 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
5831
5832 * keyboard.h: Comment an #endif.
5833
5834 * lisp.h (have_menus_p): Adjust comment.
5835
5836 * menu.c (find_and_return_menu_selection): Fix comparison with
5837 client_data.
5838
5839 * nsmenu.m (popup_activated_flag): New variable.
5840 (popup_activated): New function.
5841 (menu-or-popup-active-p): New exported lisp definition.
5842 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
5843 when popup done.
5844 (ns_popup_dialog): Set popup_activated_flag.
5845
5846 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
5847 version for GNUstep (handled by conditional typedef in nsterm.m).
5848 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
5849 in rgb.txt).
5850
5851 * process.c (init_process): Use DARWIN_OS, not DARWIN.
5852
5853 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
5854
5855 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
5856
5857 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
5858 shortcircuit if popup_activated like GTK and X toolkit.
5859
5860 * m/inter386.h: Change DARWIN to DARWIN_OS.
5861
5862 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
5863 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
5864 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
5865 comment on NO_SOCK_SIGIO.
5866
58672008-08-03 Chong Yidong <cyd@stupidchicken.com>
5868
5869 * nsterm.m (windowDidResize): Remove stopModal call.
5870
58712008-08-03 Andreas Schwab <schwab@suse.de>
5872
5873 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
5874 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
5875
58762008-08-02 Chong Yidong <cyd@stupidchicken.com>
5877
5878 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
5879 Don't use uninitialized pointer variable when using getrlimit.
5880
58812008-08-02 Jason Rumney <jasonr@gnu.org>
5882
5883 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
5884
58852008-08-02 Eli Zaretskii <eliz@gnu.org>
5886
5887 * alloc.c (NSTATICS): Bump to 0x640.
5888
5889 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
5890
5891 * lisp.h: Add prototype for directory_files_internal.
5892
5893 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
5894 New functions.
5895 (syms_of_process): Defsubr them. Add initializations for various
5896 Q* symbols used in procfs_system_process_attributes.
5897 (procfs_list_system_processes, procfs_system_process_attributes)
5898 [HAVE_PROCFS]: New functions.
5899 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
5900 (procfs_get_total_memory): New functions.
5901
59022008-08-01 Juanma Barranquero <lekktu@gmail.com>
5903
5904 * xfaces.c (Fx_load_color_file): Fix previous change;
5905 it is #ifdef WINDOWSNT, not WINDOWS_NT.
5906
59072008-08-01 Michael Albinus <michael.albinus@gmx.de>
5908
5909 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
5910
59112008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5912
5913 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
5914
59152008-08-01 Chong Yidong <cyd@stupidchicken.com>
5916
5917 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
5918
5919 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
5920 define NSApplicationDelegateReplySuccess.
5921 (EmacsView -converstationIdentifier): Use long instead of
5922 NSInteger for GNUstep, since it doesn't have NSInteger.
5923
5924 * xmenu.c: Revert last change.
5925
5926 * keyboard.h: Fix last change.
5927
59282008-08-01 Juanma Barranquero <lekktu@gmail.com>
5929
5930 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
5931 on Windows.
5932
59332008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5934
5935 Warning clearing and clean-up in NS port.
5936 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
5937 Add prototypes.
5938 * nsgui.h (FACE_DEFAULT): Remove, unused.
5939 (XGCValues): Change colors to unsigned long.
5940 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
5941 nsterm.m.
5942 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
5943 (ns_list_fonts): Remove, unused.
5944 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
5945 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
5946 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
5947 (nsfont_draw): Compare face colors to 0, not nil.
5948 * nsmenu.m (struct widget_value): Drop unneeded declaration.
5949 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
5950 (-addSubmenuWithTitle:): Use NSMenuItem class.
5951 (ns_popup_menu): Use NO, not NULL, for enabled setting.
5952 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
5953 (ns_clip_to_row): Make gc arg a BOOL.
5954 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
5955 ns_clip_to_row() call.
5956 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
5957 used). Cast FRAME_FONT assignments.
5958 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
5959 (ns_string_to_lispmod): Change arg to const char.
5960 (ns_term_init): Use NSMenuItem class.
5961 (EmacsApp -openFile:): Move to different section of file.
5962 (EmacsApp -application:openFiles:): Don't return a value, call
5963 -replyToOpenOrPrint:.
5964 (EmacsView -keyDown:): Fix up cast.
5965 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
5966 (EmacsView -menuDown:): Cast tag in call to
5967 find_and_call_menu_selection().
5968 (ns_list_fonts): Remove, unused.
5969 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
5970 (ns_fontname_to_xlfd): Make static.
5971 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
5972 Remove prototypes (now in keyboard.h).
5973 (next_menubar_widget_id): Remove, unused.
5974 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
5975 Remove prototypes (now in keyboard.h).
5976 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
5977
59782008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
5979
5980 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
5981 (floatfns.o): Depend on syssignal.h.
5982 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
5983
5984 * systty.h: Fix previous change that removed BSD_TERMIOS.
5985 Add comments to #ifdefs.
5986
59872008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5988
5989 * w32fns.c (w32-load-color-file): Remove.
5990 (x-open-connection): Use renamed Fx_load_color_file.
5991 * xfaces.c (x-load-color-file): Add.
5992 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
5993 Emacs.clr.
5994 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
5995
59962008-07-31 Michael Albinus <michael.albinus@gmx.de>
5997
5998 * dbusbind.c (Fdbus_call_method_asynchronously)
5999 (Fdbus_method_error_internal): New defuns.
6000 (xd_read_message): Handle also reply messages.
6001 (Vdbus_registered_functions_table): Extend docstring.
6002
60032008-07-31 Juanma Barranquero <lekktu@gmail.com>
6004
6005 * keyboard.c (gobble_input): Fix previous change.
6006
60072008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6008
6009 * bitmaps/README:
6010 * xfns.c:
6011 * termcap.c:
6012 * term.c:
6013 * syswait.h:
6014 * systty.h:
6015 * systime.h:
6016 * syssignal.h:
6017 * sysdep.c:
6018 * process.h:
6019 * process.c:
6020 * print.c:
6021 * ndir.h:
6022 * lread.c:
6023 * keyboard.c:
6024 * getpagesize.h:
6025 * floatfns.c:
6026 * fileio.c:
6027 * emacs.c:
6028 * doc.c:
6029 * dispnew.c:
6030 * dired.c:
6031 * data.c:
6032 * callproc.c:
6033 * buffer.c:
6034 * README:
6035 * Makefile.in:
6036 * s/template.h:
6037 * s/msdos.h:
6038 * m/vax.h: Remove VMS support.
6039 * s/vms.h:
6040 * vlimit.h:
6041 * uaf.h:
6042 * temacs.opt:
6043 * param.h:
6044 * ioctl.h: Remove file.
6045
60462008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6047
6048 * s/ms-w32.h (MULTI_KBOARD): Remove.
6049 * xterm.c:
6050 * xselect.c:
6051 * xfns.c:
6052 * window.c:
6053 * w32term.c:
6054 * w32fns.c:
6055 * terminal.c:
6056 * termhooks.h:
6057 * term.c:
6058 * sysdep.c:
6059 * keyboard.h:
6060 * keyboard.c:
6061 * frame.h:
6062 * frame.c:
6063 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
6064 * config.in: Regenerate.
6065
60662008-07-30 Jason Rumney <jasonr@gnu.org>
6067
6068 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
6069
6070 * w32font.c (w32font_encode_char): Leave as unicode if in range.
6071 (w32font_open_internal): Get unicode version of textmetrics.
6072 Don't enable or disable glyph indices here.
6073 (w32font_open): Disable use of glyph indices.
6074
6075 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
6076
60772008-07-30 Chong Yidong <cyd@stupidchicken.com>
6078
6079 * minibuf.c (Vread_buffer_function): Doc fix.
6080
60812008-07-30 John Paul Wallington <jpw@pobox.com>
6082
6083 * minibuf.c (read_buffer_completion_ignore_case): New var.
6084 (Fread_buffer): Use it.
6085
60862008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
6087
6088 * systty.h (sensemode): Remove empty #if. Remove reference to
6089 BSD_TERMIOS, unused.
6090
6091 * sysdep.c: Remove reference to DGUX.
6092 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
6093
6094 * config.in: Regenerate.
6095
60962008-07-30 Jason Rumney <jasonr@gnu.org>
6097
6098 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
6099
61002008-07-29 Jason Rumney <jasonr@gnu.org>
6101
6102 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
6103 is populated.
6104 (uniscribe_encode_char): Always use uniscribe.
6105 Avoid using context if cache is populated.
6106
61072008-07-29 Jan Djärv <jan.h.d@swipnet.se>
6108
6109 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
6110 open menu.
6111
6112 * gtkutil.c (menu_nav_ended): Remove.
6113 (create_menus): Remove signal connect for menu_nav_ended.
6114
61152008-07-28 Chong Yidong <cyd@stupidchicken.com>
6116
6117 * xdisp.c (redisplay_window): Check return value of
6118 compute_window_start_on_continuation_line before forcing a window
6119 start.
6120
61212008-07-28 Jason Rumney <jasonr@gnu.org>
6122
6123 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
6124
6125 * w32term.c (w32_enable_unicode_output, cleartype_active):
6126 Remove obsolete display options.
6127 (x_draw_glyph_string_background): Don't use old cleartype_active
6128 workaround.
6129 (w32_initialize): Remove cleartype_active initialization.
6130 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
6131
61322008-07-28 Andreas Schwab <schwab@suse.de>
6133
6134 * lisp.h (init_weak_hash_tables, syms_of_font)
6135 (xd_read_queued_messages, syms_of_dbusbind): Declare.
6136 (remove_hash_entry): Don't declare.
6137 * eval.c (maybe_call_debugger): Make static and move before use.
6138 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
6139 * xdisp.c: Include "gtkutil.h" if USE_GTK.
6140 * xterm.h (x_set_frame_alpha): Declare.
6141
61422008-07-28 Jan Djärv <jan.h.d@swipnet.se>
6143
6144 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
6145 (create_menus): Connect selection-done to menu_nav_ended.
6146
61472008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6148
6149 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
6150 Set Vx_resource_name to a fallback. Replace read of 'buffered'
6151 parameter with read of 'alpha' one.
6152 (Qns_frame_parameter): Remove.
5582fbc7 6153 * nsselect.m (selection-coding-system)
aac0c6e3
MR
6154 (next-selection-coding-system, Vselection_coding_system)
6155 (Vnext_selection_coding_system): Drop.
6156
61572008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6158
6159 * nsfns.m (do-applescript, do_applescript): Rename to
6160 ns-do-applescript, ns_do_applescript, and move within file.
6161
61622008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
6163
6164 Remove support for Mac Carbon.
6165 * mactoolbox.c:
6166 * macterm.h:
6167 * macterm.c:
6168 * macselect.c:
6169 * macmenu.c:
6170 * macgui.h:
6171 * macfns.c:
6172 * mac.c: Remove file.
6173 * s/darwin.h:
6174 * m/intel386.h:
6175 * xfaces.c:
6176 * xdisp.c:
6177 * window.c:
6178 * tparam.c:
6179 * termhooks.h:
6180 * termcap.c:
6181 * term.c:
6182 * syssignal.h:
6183 * sysselect.h:
6184 * sysdep.c:
6185 * process.c:
6186 * lread.c:
6187 * lisp.h:
6188 * keyboard.c:
6189 * image.c:
6190 * fringe.c:
6191 * frame.h:
6192 * frame.c:
6193 * fontset.c:
6194 * font.h:
6195 * font.c:
6196 * fns.c:
6197 * fileio.c:
6198 * emacs.c:
6199 * dispnew.c:
6200 * dispextern.h:
6201 * config.in:
6202 * atimer.c:
2ae37cf0 6203 * Makefile.in: Remove code for Carbon.
aac0c6e3 6204
f0131492 62052008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
6206
6207 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
6208
62092008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6210
6211 * macterm.h (kCGBitmapByteOrder32Host): New define for
6212 non-universal SDKs.
6213
6214 * image.c (mac_create_cg_image_from_image, image_load_image_io)
6215 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6216
6217 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
6218 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6219
62202008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
6221
6222 * w32inevt.c: Include dispextern.h.
6223
62242008-07-26 Andreas Schwab <schwab@suse.de>
6225
6226 * print.c (print_object): Fix off-by-one in last change.
6227
62282008-07-25 Juanma Barranquero <lekktu@gmail.com>
6229
6230 * term.c (syms_of_term): Don't initialize default_orig_pair,
6231 default_set_foreground and default_set_background on Windows.
6232
62332008-07-25 Jason Rumney <jasonr@gnu.org>
6234
6235 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
6236 ScriptItemize. Clean up return value checking. Remove unused
6237 variables.
6238 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
6239 shaping engine.
6240
6241 * w32font.c (w32font_has_char): Handle the case where we can't
6242 determine the script for a character.
6243
62442008-07-25 Chong Yidong <cyd@stupidchicken.com>
6245
6246 * term.c (syms_of_term): Initialize default_orig_pair,
6247 default_set_foreground, and default_set_background.
6248
6249 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
6250 clash (bug#86).
6251 (getloadavg): Callers changed.
6252
6253 * image.c (svg_load_image): Fix last change.
6254 (svg_load_image): Use rsvg_handle_get_dimensions to check that
6255 image size is valid. Use g_object_unref instead of deprecated
6256 rsvg_handle_free to free rsvg handle.
6257 (x_from_xcolors): Don't initialize pixmap (silence compiler).
6258
62592008-07-25 Jason Rumney <jasonr@gnu.org>
6260
6261 * w32font.c (w32font_encode_char): Encode characters outside BMP as
6262 surrogates before looking up glyph index.
6263 (w32font_text_extents): Encode as surrogates if falling back to
6264 functions that need UTF-16 wide chars.
6265
6266 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
6267 BMP as surrogates before looking up glyph index.
6268
62692008-07-25 Chong Yidong <cyd@stupidchicken.com>
6270
6271 * image.c (svg_load_image): Check for failure in return value of
6272 rsvg_handle_get_pixbuf. Free rsvg handle when done.
6273
62742008-07-25 Jason Rumney <jasonr@gnu.org>
6275
6276 * w32font.c (Fx_select_font): Reverse sense of second arg.
6277
62782008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
6279
6280 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
6281 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
6282
6283 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
6284 (PURESIZE): Use it.
6285
62862008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
6287
6288 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
6289 * m/alpha.h (TEXT_END):
6290 * m/ibmrs6000.h (TEXT_END):
6291 * m/macppc.h (TEXT_END):
6292 * s/darwin.h (TEXT_END):
6293 * s/msdos.h (TEXT_END): Remove, unused.
6294 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
6295 * s/cygwin.h: Remove comment.
6296
6297 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
6298 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
6299 * m/intel386.h (DOT_GLOBAL_START):
6300 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
6301 (USG): Remove, file not used on USG platforms.
6302
6303 * Makefile.in (HAVE_X11): Remove empty #else.
6304
63052008-07-24 Andreas Schwab <schwab@suse.de>
6306
6307 * fileio.c (Finsert_file_contents): Properly adjust undo list
6308 after format conversion.
6309
63102008-07-24 Jan Djärv <jan.h.d@swipnet.se>
6311
6312 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
6313 (menu_nav_ended): Remove.
6314 (create_menus): Remove signal connect for menu_nav_ended.
6315 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
6316 create_menus.
6317 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
6318
63192008-07-23 Jason Rumney <jasonr@gnu.org>
6320
6321 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
6322 with opened font.
6323 (w32font_open): Set font type to gdi.
6324
6325 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
6326
63272008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
6328
6329 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
6330 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
6331 defines it.
6332 * unexec.c (ADDR_CORRECT): Define unconditionally.
6333
6334 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
6335
6336 * unexec.c: Remove code depending on !COFF and USG, the file is
6337 not used for such systems.
6338
6339 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
6340 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
6341 (LD_SWITCH_SYSTEM_1): Remove, update users.
6342
6343 * s/darwin.h (DATA_END):
6344 * m/intel386.h (DATA_END):
6345 * m/ibmrs6000.h (DATA_END):
6346 * m/alpha.h (DATA_END): Remove, unused.
6347
6348 * config.in: Regenerate.
6349 * s/ms-w32.h (subprocesses): Define unconditionally.
6350 * s/template.h (subprocesses): Update comment.
6351 * s/vms.h (subprocesses):
6352 * s/usg5-4.h (subprocesses):
6353 * s/hpux10-20.h (subprocesses):
6354 * s/gnu-linux.h (subprocesses):
6355 * s/cygwin.h (subprocesses):
6356 * s/bsd-common.h (subprocesses):
6357 * s/aix4-2.h (subprocesses):
6358 * s/darwin.h (subprocesses): Do not define, defined by default now.
6359
6360 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
6361 Remove all references.
6362 (temacs): Add GNUstep specific ld flags.
6363
6364 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
6365 similarly to what X does.
6366
63672008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6368
6369 * nsfns.m (x-list-fonts): Remove.
6370 (syms_of_nsfns): Drop the x-list-fonts declaration.
6371 * nsterm.m: Get rid of remaining "//" comments.
6372
63732008-07-22 Chong Yidong <cyd@stupidchicken.com>
6374
6375 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
6376
6377 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
6378 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
6379 (Fns_own_selection_internal, Fx_disown_selection_internal)
6380 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
6381
6382 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
6383 ... */' style of docstrings. Doc fixes.
6384
63852008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6386
6387 * terminfo.c (UP, BC, PC): Undo previous change.
6388
6389 * nsfns.m: Rename ns prefixed functions/variables to the
6390 corresponding x versions. Update references.
6391
63922008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
6393
6394 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
6395
63962008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6397
6398 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
6399 Remove forwarding functions.
6400 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
6401 non-static.
6402 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
6403 non-static.
6404 (ns_frame_parm_handlers): Use the new names.
6405 (syms_of_nsfns): Move to the end of file.
6406
6407 * nsterm.m (syms_of_nsterm): Move to the end of file.
6408
6409 * dispnew.c (init_display): Remove code for X10.
6410
64112008-07-22 Jason Rumney <jasonr@gnu.org>
6412
6413 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
6414 bare drive.
6415
64162008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6417
6418 * nsterm.m (syms_of_nsterm): Remove debugging println.
6419
64202008-07-22 David Reitter <david.reitter@gmail.com>
6421
6422 * nsfns.m (do_applescript, F_do_applescript): NS version of the
6423 Carbon implementation of the same functionality: execute arbitrary
6424 AppleScript code.
6425
64262008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6427
6428 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
6429 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
6430 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
6431 (Fx_display_mm_height, Fx_display_mm_width)
6432 (Fx_display_backing_store, Fx_display_visual_class)
6433 (Fx_display_save_under, Fx_open_connection)
6434 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
6435 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
6436 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6437 (Fx_display_pixel_width, Fx_display_pixel_height)
6438 (Fx_display_usable_bounds, Fx_display_planes)
6439 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
6440 ... */' style of docstrings.
6441
64422008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
6443
6444 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
6445 on this platform.
6446 (mips):
6447 * m/iris4d.h (mips): Do not define.
6448 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
6449
6450 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
6451
6452 * image.c:
6453 * nsfns.m:
6454 * nsselect.m:
6455 * nsterm.h:
6456 * nsterm.m: Rename ns prefixed functions/variables to the
6457 corresponding x versions. Update references.
6458
6459 * m/ibms390x.h (NO_REMAP): Do not undefine.
6460
6461 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
6462
64632008-07-21 Chong Yidong <cyd@stupidchicken.com>
6464
6465 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
6466 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
6467 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
6468 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
6469 (Fns_display_mm_height, Fns_display_mm_width)
6470 (Fns_display_backing_store, Fns_display_visual_class)
6471 (Fns_display_save_under, Fns_open_connection)
6472 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
6473 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
6474 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6475 (Fns_display_pixel_width, Fns_display_pixel_height)
6476 (Fns_display_usable_bounds, Fx_display_planes)
6477 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
6478
64792008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
6480
6481 * print.c (print_object): Check print_depth before searching for
6482 circularities.
6483
64842008-07-21 Michael Albinus <michael.albinus@gmx.de>
6485
6486 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
6487 only sprintf.
6488
64892008-07-21 Kenichi Handa <handa@m17n.org>
6490
6491 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
6492
64932008-07-20 Andreas Schwab <schwab@suse.de>
6494
6495 * syntax.c (find_start_pos, find_start_value)
6496 (find_start_value_byte, find_start_begv, find_defun_start)
6497 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
6498
64992008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6500
6501 * s/sol2-3.h: Insert contents of s/sol2.h.
6502 (LD_SWITCH_SYSTEM): Remove redundant definition.
6503 * s/sol2.h: Remove, unused.
6504
65052008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6506
6507 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
6508
65092008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6510
6511 * Makefile.in (ns_appdir): Fix typo in find command.
6512
65132008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6514
6515 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
6516
6517 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
6518 added not supported anymore.
6519
6520 * s/usg5-4-2.h (LIBS_SYSTEM):
6521 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
6522
6523 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6524 * s/lynxos.h (GETPGRP_NO_ARG):
6525 * s/hpux10-20.h (NO_SIOCTL_H):
6526 * s/gnu.h (GETPGRP_NO_ARG):
6527 * s/gnu-linux.h (NO_SIOCTL_H):
6528 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6529 * s/cygwin.h (GETPGRP_NO_ARG):
6530 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
6531 (C_DEBUG_SWITCH): Remove duplicate definition.
6532
6533 * m/ibms390.h: Remove boilerplate comments.
6534
6535 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
6536
6537 * process.c (HAVE_SERIAL): Consolidate ifdefs.
6538 (wait_reading_process_output): Remove code for SunOS, platform not
6539 supported anymore. Use SOLARIS2 instead of sun.
6540
65412008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6542
6543 * font.c (font_open_by_name): Under NS, default lface height to zero.
6544 (font_open_for_lface): Under NS, set size based on frame fontsize.
6545 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
6546 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
6547
65482008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6549
6550 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
6551 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
6552 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
6553 YES/NO.
6554 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
6555 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
6556 * Makefile.in (clean): Clear out build destination dir.
6557
65582008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6559
6560 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
6561 xterm, xselect.
6562 * lisp.h: Remove declaration of hash_remove.
6563 * nsgui.h: Remove redefinitions of hash_remove.
6564 * fns.c (hash_remove): Rename to hash_remove_from_table.
6565
65662008-07-19 Seiji Zenitani <zenitani@mac.com>
6567
6568 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
6569 strdup() the family UTF8String before modifying it.
6570
65712008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6572
6573 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
6574 NS_FACE_BACKGROUND with 0 instead of nil.
6575 * nsfont.m (nsfont_draw): Same.
6576
65772008-07-19 Chong Yidong <cyd@stupidchicken.com>
6578
6579 * nsfns.m (ns_set_background_color): Fix crash.
6580
65812008-07-18 Chong Yidong <cyd@stupidchicken.com>
6582
6583 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
6584
65852008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
6586
6587 * puresize.h (BASE_PURESIZE): Increase to 1240000.
6588
65892008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6590
6591 * gtkutil.c: Include <config.h> instead of "config.h".
6592
6593 * lisp.h (Foverlay_buffer): Add EXFUN.
6594
6595 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
6596 child process to complete child_setup. Undo 2005-09-21 change.
6597
6598 * s/darwin.h: Mention setsid after vfork.
6599
66002008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6601
6602 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
6603 Depend on macgui.h.
6604
6605 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
6606 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
6607
6608 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
6609 and f19.
6610 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
6611
6612 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
6613 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
6614 Remove enumerators.
6615
6616 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
6617 Check if FACE_FROM_ID returns NULL.
6618
66192008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
6620
6621 * w32inevt.c (change_frame_size): Remove extern declaration.
6622 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
6623 change_frame_size.
6624
66252008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6626
6627 * getloadavg.c: Revert last change (2008-07-15).
6628
66292008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6630
6631 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
6632 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
6633 from configure.
6634
66352008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
6636
6637 * s/sol2.h:
6638 * s/sol2-4.h: Reorganize conditionals.
6639
6640 * ecrt0.c: Remove code depending on m68000, not used anymore.
6641
6642 * fns.c (hash_remove): Make static.
6643 * lisp.h (hash_remove): Don't prototype.
6644
6645 * m/ibmrs6000.h:
6646 * m/ibms390x.h:
6647 * m/macppc.h: Remove boilerplate comments.
6648
6649 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
6650 Solaris, which does not need them.
6651
6652 * m/vax.h: Remove comments about unsupported systems.
6653
6654 * s/darwin.h: Reorganize ifdefs.
6655
66562008-07-17 Andreas Schwab <schwab@suse.de>
6657
6658 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
6659
66602008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
6661
6662 Use SDATA. Follow coding convention of placing operators at
6663 beginning of next line rather than end of previous line, and placing
6664 spaces around infix operators.
6665
6666 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
6667 in case it was defined already.
6668 USE @GNUSTEP_MAKEFILES@ rather than envvars.
6669 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
6670 ns_default.
6671 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
6672 Lisp_Objects.
6673 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
6674 (ns_defined_color, ns_color_to_lisp): Declare.
6675 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
6676 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
6677 it's accepted even with USE_LISP_UNION_TYPE.
6678 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
6679 (update_frame_tool_bar): Remove apparently obsolete tests for
6680 non-integerness of f->tool_bar_lines.
6681 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
6682 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
6683 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
6684 (nsfont_open): Don't confuse NULL for Qnil.
6685 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
6686 * menu.h (find_and_call_menu_selection):
6687 * menu.c (find_and_call_menu_selection): Use just int for vector size.
6688 (find_and_return_menu_selection): Always return something.
6689 * frame.h: Include dispextern.h for Display_Info.
6690 (display_x_get_resource): Declare.
6691
66922008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
6693
6694 * syntax.c: Remove stdio.h include accidentally introduced in
6695 Emacs.app commit.
6696 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
6697 NS_IMPL_COCOA.
6698 * keyboard.c (handle_async_input, input_available_signal): Remove
6699 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
6700
67012008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6702
6703 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
6704 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
6705 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
6706 Use SDATA.
6707
6708 * keymap.c: Remove all NS-specific code.
6709 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
6710 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
6711 where_is_preferred_modifier, return a different value depending on how
6712 preferred is the binding.
6713 (where_is_internal): Adjust accordingly.
6714 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
6715 Adjust to new preferred_sequence_p.
6716 (syms_of_keymap): Declare `where-is-preferred-modifier'.
6717 * keyboard.c (parse_solitary_modifier): Not static any more.
6718 * keyboard.h (parse_solitary_modifier): Declare.
6719
67202008-07-16 Andreas Schwab <schwab@suse.de>
6721
6722 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
6723 of easymenu.
6724
67252008-07-16 Chong Yidong <cyd@stupidchicken.com>
6726
6727 * xdisp.c (move_it_in_display_line): Account for word wrap, so
6728 that we don't move off the line.
6729
67302008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6731
6732 * keyboard.c (Qsuper): Remove.
6733 (parse_menu_item): Don't call where_is_internal specially for NS.
6734
67352008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6736
6737 * s/gnu-linux.h: Remove boilerplate comments.
6738
6739 * m/alpha.h (__ELF__): Consolidate conditions.
6740
6741 * m/m68k.h (linux): Use GNU_LINUX instead.
6742 Remove boilerplate comments.
6743
6744 * m/intel386.h: Undo refactoring from previous change.
6745 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
6746 too, remove dead code.
6747 (linux): Use GNU_LINUX instead.
6748
67492008-07-16 Jason Rumney <jasonr@gnu.org>
6750
6751 * w32gui.h: Repeat 26 June changes lost by last change.
6752
67532008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6754
6755 * systty.h: Remove code for Aix on 386, unsupported platform.
6756
6757 * s/ms-w32.h: Remove boilerplate comments.
6758 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
6759
6760 * s/gnu-linux.h (TERM): Remove support.
6761 (HAVE_SYSVIPC): Remove, unused.
6762 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
6763 for this system.
6764
6765 * process.c: Remove support for IRIS, unused.
6766 Remove support for TERM, not relevant anymore.
6767
6768 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
6769 used with the definition.
6770
6771 * s/aix4-2.h (static): Do not undef.
6772
6773 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
6774 only used on Aix.
6775 (HAVE_SYSVIPC): Remove, unused.
6776
6777 * m/hp800.h (CANNOT_DUMP): Do not undef.
6778
6779 * m/alpha.h: Fix comment.
6780
6781 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
6782 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
6783 used by this configuration.
6784 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
6785 * unexec.c: Remove code depending on HPUX and
6786 USG_SHARED_LIBRARIES, not used with this file. Remove code
6787 depending on IRIS, unused. Remove if 0-ed code.
6788
6789 * s/template.h: Remove comments about static.
6790
6791 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
6792 Remove if 0-ed code.
6793 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
6794 were the same as the default.
6795 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
6796 Remove boilerplate comments.
6797 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
6798 (HAVE_SYSVIPC): Remove, unused.
6799 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
6800
6801 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6802 Remove boilerplate comments.
6803 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6804 Remove boilerplate comments.
6805 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6806 Remove boilerplate comments.
6807 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
6808
6809 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
6810 USG systems which do not use DATA_SEG_BITS.
6811 Refactor code. Remove boilerplate comments.
6812
6813 * m/ibms390.h:
6814 * m/m68k.h:
6815 * s/bsd-common.h:
6816 * s/cygwin.h:
6817 * s/darwin.h:
6818 * s/freebsd.h:
6819 * s/gnu.h:
6820 * s/msdos.h: Remove boilerplate comments.
6821
6822 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 6823 do not use this file.
aac0c6e3
MR
6824 (IRIS_4D): Remove, unused.
6825
6826 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 6827 do not use this file.
aac0c6e3
MR
6828 (SIGN_EXTEND_CHAR):
6829 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
6830 * unexmips.c: Remove file, unused.
6831
6832 * editfns.c (Fuser_full_name): Replace the only use of
6833 USER_FULL_NAME with its value.
6834 * config.in: Regenerate.
6835
68362008-07-16 David Reitter <david.reitter@gmail.com>
6837
6838 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
6839 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6840
68412008-07-16 Glenn Morris <rgm@gnu.org>
6842
6843 * emacs.c (system-type): Doc fix.
6844
68452008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
6846
6847 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
6848 If the cache doesn't work, let's fix it, rather than work around it.
6849
68502008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6851
6852 * Makefile.in: Correct additions for nsfont.o in last commit.
6853 * nsfont.m: New file (forgot last commit).
6854
68552008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6856
6857 * callproc.c (set_initial_environment): Initialize
6858 Vprocess_environment under CANNOT_DUMP (fixes crash when
6859 batch-compiling for bootstrap).
6860
68612008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6862 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6863
6864 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
6865 fix crash due to different init order.
6866
68672008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6868
6869 Changes and additions for NeXTstep windowing system (Cocoa and
6870 GNUstep) support.
6871
6872 * Makefile.in:
6873 * config.in: Support defines and build commands for NS port.
6874 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
6875 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
6876 * dispextern.h: Include nsgui.h and add needed typedefs under NS
6877 windowing.
6878 (struct face): Add synth_ital field.
6879 * dispnew.c: Include nsterm.h when compiling under NS windowing.
6880 (init_display): Initialize Vinitial_window_system to "ns" when so
6881 compiled.
6882 * emacs.c: Include GSConfig.h when compiling under GNUstep.
6883 (display_arg): Use under NS.
6884 (main): Under NS, allocate autorelease pool and handle command line
6885 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
6886 (standard_args): Add NS-specific args.
6887 (shut_down_emacs): Shut down NS terminal if compiled under NS.
6888 * font.c (DEFAULT_ENCODING): New variable.
6889 (font_find_for_lface): Use it.
6890 (syms_of_font): Load syms_of_nsfont under NS.
6891 * font.h: Declare nsfont_driver when compiled under NS.
6892 * fontset.c: When compiling under NS, include nsterm.h.
6893 (fontset_from_font): Autoconstruct fontset under NS.
6894 * frame.c (various): Under NS, include nsterm.h, add Qns window system
6895 symbol, document and use it.
6896 (do_switch_frame): When for_deletion under Cocoa, add
6897 Fraise_frame(Qnil).
6898 (x_set_frame_parameters): Ensure font attribute changes are picked up.
6899 (x_get_arg): Allow "yes" and "no" as boolean values.
6900 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
6901 Qright under Cocoa.
6902 (focus-follows-mouse): Default to 0 under NS.
6903 * frame.h (enum output_method): Add output_ns.
6904 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
6905 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
6906 (FRAME_WINDOW_P): NS-specific definition.
6907 * fringe.c (max_used_fringe_bitmap): Make public.
6908 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
6909 (getloadavg): Use NeXT code under descendant OS's.
6910 * image.c (includes and header section, x_create_bitmap_from_data)
6911 (x_create_bitmap_from_file, free_bitmap_record, image_background)
6912 (image_background_transparent, x_clear_image_1)
6913 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6914 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
6915 (x_to_xcolors, x_from_xcolors, x_disable_image)
6916 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
6917 other GUIs, including XPM support using code originally written for
6918 Carbon GUI.
6919 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
6920 using NS API.
6921 (image_ascent): Use font metrics macros instead of direct struct field
6922 access.
6923 * keyboard.c (includes): Add nsterm.h when compiling under NS.
6924 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
6925 Also, handle NS as GTK for menu bar purposes.
6926 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
6927 toolkit where they differ.
6928 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
6929 use cachelist, still needed under NS.
6930 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
6931 (struct widget_value): Define it here for menu.c.
6932 * keymap.c (includes): Include modifier internals.
6933 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
6934 NS.
6935 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
6936 support for preferring sequences using certain modifiers, specified by
6937 the FIRSTONLY argument.
6938 * lisp.h (hash_remove): Rename to avoid name clash when compiling
6939 under NS GNUstep implementation.
6940 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
6941 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
6942 * menu.c: Include nsterm.h under NS.
6943 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
6944 (free_menubar_widget_tree_value, update_submenu_strings)
6945 (find_and_call_menu_selection): Treat NS as X and NT.
6946 (find_and_return_menu_selection): New function, used for popup menus.
6947 * nsgui.h:
6948 * nsterm.h:
6949 * nsfns.m:
6950 * nsimage.m:
6951 * nsmenu.m:
6952 * nsselect.m:
6953 * nsterm.m: New files.
6954 * process.c (wait_reading_process_output): Under NS, call ns_select()
6955 instead of plain select().
6956 * syntax.c (char_quoted): Under NS, avoid a crash when called near
6957 beginning of buffer.
6958 * sysselect.h (init_process): Rename when compiling under Cocoa to
6959 avoid name conflict.
6960 * termhooks.h (display_info): Add ns_display_info to union.
6961 * terminal.c (Fterminal_live_p): Add ns to terminal types.
6962 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
6963 COCOA environment.
6964 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
6965 unexec() signature. (Note, this will dump, but the resulting file
6966 crashes; unexosx is used instead; keeping around for reference and
6967 possible aid in getting dump working under GNUstep.)
6968 * w32gui.h (button_type, widget_value): Remove definitions (now in
6969 keyboard.h).
6970 * window.c: Include nsterm.h when compiling under NS.
6971 * xdisp.c (includes): Include nsterm.h when compiling under NS.
6972 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
6973 other GUI windowing systems.
6974 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
6975 GTK.
6976 (x_consider_frame_title): Under NS, set icon type and frame
6977 modified-state indicator; use ns_set_name_as_filename() when using
6978 formatted title.
6979 (update_window_cursor): Make public when compiling under NS.
6980 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
6981 (hourglass_atimer, Vhourglass_delay
6982 * xfaces.c (header section, init_frame_faces, clear_font_table)
6983 (defined_color, unload_color, x_face_list_fonts)
6984 (prepare_face_for_display): Add NS support parallel to other GUIs.
6985 Emulate GCs like other non-X GUIs.
6986 (split_font_name): Don't lowercase font name under NS.
6987 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
6988 under NS.
6989 * s/darwin.h: Add support for compilation under NS.
6990
69912008-07-15 Jason Rumney <jasonr@gnu.org>
6992
6993 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
6994 (w32_show_hourglass): Rename from show_hourglass.
6995 (w32_hide_hourglass): Rename from hide_hourglass.
6996 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
6997 (Vhourglass_delay): Declare extern.
6998 (hourglass_started): Remove.
6999
7000 * xdisp.c (Vhourglass_delay): Remove static.
7001 (hourglass_started, start_hourglass, cancel_hourglass):
7002 Don't include these versions on WINDOWSNT.
7003
70042008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7005
7006 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7007 variables (formerly in xfns.c).
7008 (show_hourglass, hide_hourglass): New prototypes (same).
7009 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
7010 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
7011 in xfns.c).
7012 (syms_of_xdisp): Declare/initialize display-hourglass,
7013 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
7014 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
7015 formerly in xfns.c.
7016 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7017 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7018 (start_hourglass, cancel_hourglass): Remove.
7019 (show_hourglass, hide_hourglass): Remove prototypes and static
7020 modifiers.
7021 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
7022 hourglass_atimer, hourglass_shown_p declaration/initialization.
7023 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7024 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7025 (start_hourglass, cancel_hourglass): Remove.
7026 (show_hourglass, hide_hourglass): Remove prototypes and static
7027 modifiers.
7028 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
7029 hourglass_atimer, hourglass_shown_p declaration/initialization.
7030 * w32fns.c (display_hourglass_p, Vhourglass_delay)
7031 (DEFAULT_HOURGLASS_DELAY): Remove.
7032 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
7033 hourglass_shown_p declaration/initialization.
7034
70352008-07-14 Jason Rumney <jasonr@gnu.org>
7036
7037 * w32fns.c (w32_get_arg): Remove wrapper function.
7038 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
7039 directly.
7040 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
7041
70422008-07-14 Kenichi Handa <handa@m17n.org>
7043
7044 * xfont.c (xfont_open): Add workaround for X's bug.
7045
70462008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7047
7048 * fontset.c: Include <stdio.h> unconditionally.
7049
70502008-07-13 Michael Albinus <michael.albinus@gmx.de>
7051
7052 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
7053 for filtering.
7054
70552008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
7056
7057 * s/vms.h: Use __GNUC__ instead of _GNUC_.
7058
7059 * m/macppc.h:
7060 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
7061
7062 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
7063 (SPECIAL_EMACS_INT):
7064 * m/ia64.h (SPECIAL_EMACS_INT):
7065 * m/amdx86-64.h (SPECIAL_EMACS_INT):
7066 * s/gnu.h (NLIST_STRUCT):
7067 * s/aix4-2.h (X11R5_INHIBIT_I18N):
7068 * s/gnu-linux.h (LINUX):
7069 * s/msdos.h (HAVE_FACES):
7070 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
7071
7072 * systty.h:
7073 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
7074 anymore.
7075
70762008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
7077
7078 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
7079 always defined as int.
7080
7081 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
7082 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
7083 * s/gnu-linux.h (HAVE_WAIT_HEADER):
7084 * s/freebsd.h (HAVE_WAIT_HEADER):
7085 * s/bsd-common.h (HAVE_UNION_WAIT):
7086 * s/aix4-2.h (HAVE_WAIT_HEADER):
7087 * m/mips.h (HAVE_UNION_WAIT):
7088 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
7089 (COFF, static): Do not define, they are undefined later in the file.
7090
7091 * process.c (update_status): Don't use a union.
7092 (status_convert):
7093 (sigchld_handler): Use int instead of WAITTYPE.
7094
70952008-07-12 Chong Yidong <cyd@stupidchicken.com>
7096
7097 * indent.c (Fvertical_motion): Restore hscroll before moving to
7098 goal column.
7099
71002008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7101
7102 * lisp.h: Remove left over code.
7103
71042008-07-11 Andreas Schwab <schwab@suse.de>
7105
7106 * lisp.h: Fix logic in last change.
7107
7108 * menu.h: New file.
7109 * menu.c: Include it.
7110 * xmenu.c: Likewise.
7111 * Makefile.in: Update dependencies.
7112
71132008-07-11 Kenichi Handa <handa@m17n.org>
7114
7115 * fontset.c (fontset_from_font): Cancel the previous change.
7116
71172008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7118
7119 * lisp.h:
7120 * w32heap.c:
7121 * emacs.c:
7122 * alloc.c: Replace all references of NO_UNION_TYPE with
7123 USE_LISP_UNION_TYPE.
7124
7125 * m/xtensa.h (NO_UNION_TYPE):
7126 * m/vax.h (NO_UNION_TYPE):
7127 * m/template.h (NO_UNION_TYPE):
7128 * m/sparc.h (NO_UNION_TYPE):
7129 * m/mips.h (NO_UNION_TYPE):
7130 * m/macppc.h (NO_UNION_TYPE):
7131 * m/m68k.h (NO_UNION_TYPE):
7132 * m/iris4d.h (NO_UNION_TYPE):
7133 * m/intel386.h (NO_UNION_TYPE):
7134 * m/ibms390x.h (NO_UNION_TYPE):
7135 * m/ibms390.h (NO_UNION_TYPE):
7136 * m/ibmrs6000.h (NO_UNION_TYPE):
7137 * m/ia64.h (NO_UNION_TYPE):
7138 * m/hp800.h (NO_UNION_TYPE):
7139 * m/arm.h (NO_UNION_TYPE):
7140 * m/amdx86-64.h (NO_UNION_TYPE):
7141 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
7142 defining it the same.
7143
71442008-07-10 Chong Yidong <cyd@stupidchicken.com>
7145
7146 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
7147
71482008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7149
7150 * fileio.c:
7151 * sysdep.c
7152 * systty.h:
7153 * m/ibmrs6000.h:
7154 * m/iris4d.h:
7155 * s/aix4-2.h:
7156 * s/freebsd.h:
7157 * s/gnu-linux.h:
7158 * s/hpux10-20.h:
7159 * s/hpux11.h:
7160 * s/netbsd.h:
7161 * s/sol2-3.h:
7162 * s/sol2-4.h:
7163 * s/sol2.h:
7164 * s/usg5-4.h:
7165 * s/vms.h: Remove references to unused variables.
7166
71672008-07-10 Andreas Schwab <schwab@suse.de>
7168
7169 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
7170 pattern before matching the generic family.
7171
71722008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7173
7174 * unexec.c:
7175 * s/vms.h:
7176 * s/usg5-4-2.h:
7177 * s/sol2-5.h:
7178 * s/freebsd.h:
7179 * s/darwin.h: Remove dead code.
7180
7181 * m/template.h:
7182 * m/sparc.h:
7183 * m/mips.h:
7184 * m/m68k.h:
7185 * m/iris4d.h:
7186 * m/intel386.h:
7187 * m/ibms390x.h:
7188 * m/ibms390.h:
7189 * m/ia64.h:
7190 * m/hp800.h:
7191 * m/arm.h:
7192 * m/amdx86-64.h: Remove dead code and references to unused
7193 and compiler defined symbols.
7194
7195 * unexmips.c:
7196 * unexelf.c: Remove references to desupported systems.
7197
7198 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
7199
7200 * m/powermac.h: Remove boilerplate comments.
7201 (NO_REMAP): Remove unused definition.
7202
7203 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
7204 define them.
7205
72062008-07-10 Kenichi Handa <handa@m17n.org>
7207
7208 * xfont.c (xfont_open): Log the reason of failure.
7209
72102008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
7211
7212 * fontset.c (fontset_get_font_group):
7213 * font.c (font_check_otf): Specify argument types.
7214
72152008-07-09 Kenichi Handa <handa@m17n.org>
7216
7217 * coding.c (detect_coding_utf_8): Set detect_info->found only when
7218 non-ASCII char is found.
7219
7220 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
7221 (reorder_font_vector): Change the arg preferred_family to font.
7222 Prefer the spec matching with font.
7223 (fontset_get_font_group): New function.
7224 (fontset_find_font): Change the format of an element of a realized
7225 fontset. Use fontset_get_font_group.
7226 (fontset_font): Try the current fontset, the default fontset, the
7227 fallbacks of the current fontset, and the fallbacks of the default
7228 fontset in this order.
7229 (face_for_char): Delete the shortcut to use the current font.
7230 (fontset_from_font): Don't set fonts for Latin in the fontset.
7231
7232 * font.h (font_make_object, font_match_p): Adjust prototypes.
7233
7234 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
7235
7236 * font.c (font_make_object): New arg entity and pixelsize.
7237 (font_check_otf_features, font_check_otf): New functions.
7238 (font_match_p): Check :lang, :script, and :otf properties.
7239
7240 * xfont.c (xfont_open): Adjust it for the change of
7241 font_make_object.
7242 (xfont_text_extents): Fix initial setting of metrics.
7243
7244 * ftfont.c (struct ftfont_info): New member index, delete member
7245 fc_charset_idx. Make the member order compatible with struct
7246 xftfont_info.
7247 (fc_charset_table): Change charset names to registry names.
7248 (ftfont_pattern_entity): Delete the args registry and
7249 fc_charset_idx. Change the value of :font-entity property
7250 to (FONTNAME . INDEX). Always set :registry property to
7251 `iso10646-1'.
7252 (struct ftfont_cache_data): New struct.
7253 (ftfont_lookup_cache): New arg for_face.
7254 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
7255 (ftfont_driver): Set the member otf_capability.
7256 (ftfont_get_charset): Adjust it for the change of
7257 fc_charset_table.
7258 (OTF_TAG_SYM): New macro.
7259 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
7260 for the change of fc_charset_table.
7261 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
7262 ftfont_pattern_entity. Add FC_INDEX to objset.
7263 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
7264 and ftfont_pattern_entity.
7265 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
7266 font_make_object, struct ftfont_info.
7267 (ftfont_has_char): Use ftfont_get_fc_charset.
7268 (ftfont_otf_features, ftfont_otf_capability): New functions.
7269 (ftfont_shape): Use ftfont_get_otf.
7270 (ftfont_text_extents): Fix initial setting of metrics.
7271
7272 * xftfont.c (struct xftfont_info): New member ft_size. Make the
7273 member order compatible with struct ftfont_info.
7274 (xftfont_open): Add FC_CHARSET to the pattern. Set
7275 xftfont_info->ft_size. Don't unlock the face. Check BDF
7276 properties if appropriate.
7277 (xftfont_close): Unlock the face.
7278 (xftfont_anchor_point, xftfont_shape): Deleted.
7279 (syms_of_xftfont): Don't set members anchor_point and shape of
7280 xftfont_driver.
7281
7282 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
7283 font_make_object.
7284
7285 * w32font.c (w32font_open): Adjust it for the change of
7286 font_make_object.
7287 (w32font_open_internal): Don't set properties of font_object here.
7288
72892008-07-08 Chong Yidong <cyd@stupidchicken.com>
7290
7291 * macfns.c (x_create_tip_frame):
7292 * w32fns.c (x_create_tip_frame):
7293 * xfns.c (x_create_tip_frame): Pass parameter argument to
7294 face-set-after-frame-default.
7295
7296 * xfaces.c (Finternal_merge_in_global_face): Save merged
7297 attributes for the default face back into the face vector.
7298
72992008-07-08 Andreas Schwab <schwab@suse.de>
7300
7301 * fontset.h: Declare fontset_from_font. Don't declare
7302 new_fontset_from_font and fontset_from_font_name.
7303 * xterm.c: Include "fontset.h".
7304 * Makefile.in (xterm.o): Update dependencies.
7305
73062008-07-08 Glenn Morris <rgm@gnu.org>
7307
7308 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
7309 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
7310
73112008-07-07 Chong Yidong <cyd@stupidchicken.com>
7312
7313 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
7314 (x_set_frame_parameters): Don't bind it.
7315
73162008-07-07 Juanma Barranquero <lekktu@gmail.com>
7317
7318 * w32fns.c (map_w32_filename): Declare extern.
7319
73202008-07-07 Jason Rumney <jasonr@gnu.org>
7321
7322 * w32term.c (WS_EX_LAYERED): Define if not already.
7323
73242008-07-06 Chong Yidong <cyd@stupidchicken.com>
7325
7326 * xfaces.c (set_font_frame_param): Don't try to set the font
7327 parameter if it is still unspecified in the lface.
7328
73292008-07-05 Chong Yidong <cyd@stupidchicken.com>
7330
7331 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
7332 face if it didn't already exist.
7333
7334 * xdisp.c (try_window_id): Give up if word-wrapping is on.
7335
73362008-07-05 Andreas Schwab <schwab@suse.de>
7337
7338 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
7339
73402008-07-05 Chong Yidong <cyd@stupidchicken.com>
7341
7342 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
7343 word-wrapping.
7344 (IT_DISPLAYING_WHITESPACE): New macro.
7345 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
7346 when word-wrapping. Simplify word-wrapping logic. Use correct
7347 pixel positions when saving copies of the iterator.
7348 (display_line): Use proper wrap point if the last character on a
7349 line was preceded by whitespace.
7350
73512008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
7352
7353 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
7354
73552008-07-04 Kenichi Handa <handa@m17n.org>
7356
7357 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
7358
7359 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
7360
73612008-07-02 Jason Rumney <jasonr@gnu.org>
7362
7363 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 7364 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
7365
7366 * xdisp.c (next_element_from_display_vector): Move assignment out
7367 of if statement.
7368
73692008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
7370
7371 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
7372
7373 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
7374 (syms_of_fileio): Initialize and export them.
7375 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
7376
7377 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
7378 (Fsystem_move_file_to_trash): New function.
7379 (syms_of_w32fns): Export it to lisp.
7380
73812008-07-01 Jason Rumney <jasonr@gnu.org>
7382
7383 * w32font.c (w32font_text_extents): Don't count overhang as part
7384 of width.
7385
73862008-06-30 Miles Bader <miles@gnu.org>
7387
7388 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
7389 Add `avoid_cursor_p' field.
7390
7391 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
7392 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
7393 (append_glyph, append_composite_glyph, produce_image_glyph)
7394 (append_stretch_glyph): Initialize avoid_cursor_p.
7395 (get_it_property): Rename from `get_line_height_property'.
7396 (x_produce_glyphs): Use get_it_property.
7397 (handle_line_prefix, push_display_prop): New functions.
7398 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
7399 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
7400 New variables.
7401 (syms_of_xdisp): Initialize them.
7402
74032008-06-30 Kenichi Handa <handa@m17n.org>
7404
7405 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
7406 XftDefaultSubstitute (they are called in XftFontMatch).
7407 (xftfont_open): Fix args to ftfont_font_format.
7408
7409 * ftfont.c (fc_charset_table): New member lang.
7410 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 7411 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
7412 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
7413 (ftfont_open): Fix args to ftfont_font_format.
7414 (ftfont_font_format): New arg filename.
7415
74162008-06-30 Chong Yidong <cyd@stupidchicken.com>
7417
7418 * xfaces.c (Finternal_merge_in_global_face): If default face was
7419 modified, realize it again. Update the font face attribute.
7420
74212008-06-29 Jason Rumney <jasonr@gnu.org>
7422
7423 * w32term.c (x_set_frame_alpha): Fix logic.
7424
74252008-06-29 Kenichi Handa <handa@m17n.org>
7426
7427 * fontset.c (Finternal_char_font): Return font-object instead of
7428 font-name.
7429
7430 * composite.c (get_composition_id): Fix the width calculation for TAB.
7431
74322008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
7433
7434 * indent.c (Fvertical_motion): Properly handle float column arg.
7435
74362008-06-28 Jason Rumney <jasonr@gnu.org>
7437
7438 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
7439 (pfnSetLayeredWindowAttributes): New function pointer.
7440 (w32_initialize): Initialize it when supported.
7441 (x_set_frame_alpha): New function.
7442
7443 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
7444 (w32_frame_parm_handlers): Set alpha handler.
7445
7446 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
7447
74482008-06-27 Jason Rumney <jasonr@gnu.org>
7449
7450 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
7451 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
7452 (w32_to_x_charset, x_to_w32_charset)
7453 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7454 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7455 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7456 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7457 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7458 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7459 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
7460 (Qw32_charset_unicode): Remove.
7461 (syms_of_w32fns): Update for above changes.
7462
7463 * w32font.c (w32_to_x_charset, x_to_w32_charset)
7464 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7465 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7466 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7467 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7468 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7469 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7470 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
7471 (syms_of_w32font): Update for above changes.
7472
74732008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
7474
7475 * s/usg5-4.h: Fix previous change: keep the correct branch of a
7476 removed #if.
7477 (USG_SHARED_LIBRARIES): Remove duplicate definition.
7478
74792008-06-26 Juanma Barranquero <lekktu@gmail.com>
7480 Eli Zaretskii <eliz@gnu.org>
7481
7482 * makefile.w32-in (LOCAL_FLAGS):
7483 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
7484
7485 * sysdep.c (_spawnlp, _getpid):
7486 Declare with explicit _cdecl instead of _CRTAPI1.
7487
7488 * editfns.c (Fget_internal_run_time):
7489 Check for WINDOWSNT with #ifdef, not #if.
7490
74912008-06-26 Jason Rumney <jasonr@gnu.org>
7492
7493 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
7494
7495 * w32term.c (x_draw_glyph_string_foreground)
7496 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
7497 Use FONT_HANDLE macro.
7498 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
7499
7500 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7501 (uniscribe_encode_char): Use FONT_HANDLE macro.
7502
7503 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
7504 (w32font_text_extents): Use precast w32_font.
7505 (w32font_close): Free cached metrics.
7506 (w32font_open_internal): Allocate space for name on stack.
7507
75082008-06-26 Chong Yidong <cyd@stupidchicken.com>
7509
7510 * xdisp.c (extend_face_to_end_of_line): Fix last change.
7511
75122008-06-26 Jason Rumney <jasonr@gnu.org>
7513
7514 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
7515 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
7516
75172008-06-26 Juanma Barranquero <lekktu@gmail.com>
7518
7519 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
7520
75212008-06-26 Jason Rumney <jasonr@gnu.org>
7522
7523 * w32bdf.c, w32bdf.h: Remove obsolete files.
7524
7525 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
7526
7527 * w32gui.h: Don't include w32bdf.h.
7528 (XCharStruct, enum w32_char_font_type, W32FontStruct):
7529 Remove obsolete font support.
7530
7531 * w32font.h (struct w32font_info): Remove compat_w32_font.
7532 Add hfont member.
7533 (FONT_COMPAT): Remove obsolete macro.
7534
7535 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
7536 (w32font_encode_char, w32font_text_extents): Use new hfont member.
7537 (w32font_open_internal): Remove compat code. Set new hfont member.
7538 (Fx_select_font): Use new hfont member.
7539
7540 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7541 (uniscribe_encode_char): Use new hfont member.
7542
7543 * w32term.c (x_draw_glyph_string_foreground)
7544 (x_draw_composite_glyph_string_foreground): Use new hfont member.
7545 (x_draw_glyph_string): Use metrics in w32font_info.
7546
75472008-06-26 Kenichi Handa <handa@m17n.org>
7548
7549 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
7550
75512008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
7552
7553 * unexnext.c:
7554 * m/ews4800.h:
7555 * m/hp9000s300.h:
7556 * m/ibm370aix.h:
7557 * m/mips-siemens.h:
7558 * m/ncr386.h:
7559 * m/next.h:
7560 * m/pmax.h:
7561 * m/powerpcle.h:
7562 * m/tandem-s2.h:
7563 * s/386bsd.h:
7564 * s/bsd386.h:
7565 * s/bsd4-1.h:
7566 * s/bsd4-2.h:
7567 * s/bsdos2-1.h:
7568 * s/bsdos2.h:
7569 * s/bsdos3.h:
7570 * s/bsdos4.h:
7571 * s/nextstep.h:
7572 * s/ultrix4-3.h:
7573 * s/usg5-0.h:
7574 * s/usg5-2-2.h:
7575 * s/usg5-2.h:
7576 * s/usg5-4-3.h:
7577 * s/ux4800.h:
7578 * s/uxpds.h:
7579 * s/uxpv.h: Remove support for obsolete systems.
7580 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 7581 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
7582 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
7583 Remove, insert contents in s/aix4-2.h.
7584 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
7585 * s/bsd4-3.h: Rename to ...
7586 * s/bsd-common.h: ... this.
7587 * data.c:
7588 * doc.c:
7589 * ecrt0.c:
7590 * emacs.c:
7591 * fileio.c:
7592 * floatfns.c:
7593 * keyboard.c:
7594 * mem-limits.h:
7595 * print.c:
7596 * process.c:
7597 * sysdep.c:
7598 * syssignal.h:
7599 * systty.h:
7600 * syswait.h:
7601 * term.c:
7602 * unexec.c:
7603 * unexelf.c:
7604 * unexhp9k800.c:
7605 * m/hp800.h:
7606 * m/ibmrs6000.h:
7607 * m/mips.h:
7608 * m/vax.h:
7609 * s/darwin.h:
7610 * s/freebsd.h:
7611 * s/gnu.h:
7612 * s/ms-w32.h:
7613 * s/msdos.h:
7614 * s/netbsd.h:
7615 * s/template.h: Remove references to obsolete variables.
7616
7617 * Makefile.in: Add dependencies for all unexec files.
7618 (admindir): Remove unused variable.
7619 (UNEXEC_SRC): Remove references.
7620
76212008-06-25 Chong Yidong <cyd@stupidchicken.com>
7622
7623 * xfns.c (x_default_font_parameter): If Xft is available, first
7624 try Monospace-12 for the default font.
7625
76262008-06-25 Jason Rumney <jasonr@gnu.org>
7627
7628 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
7629
76302008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
7631
7632 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
7633
7634 * buffer.c (syms_of_buffer): Remove default-word-wrap.
7635
76362008-06-25 Juanma Barranquero <lekktu@gmail.com>
7637
7638 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
7639 <scroll-conservatively>: Fix typo in docstring.
7640
7641 * xselect.c (Fx_send_client_event): Doc fix.
7642
76432008-06-25 Kenichi Handa <handa@m17n.org>
7644
7645 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
7646
7647 * font.c (font_parse_fcname): Remove unused variables.
7648 (font_sort_entites): Delete the arg SPEC. Caller changed.
7649 Fix for the case of ! best_only.
7650 (font_delete_unmatched): Check DPI and AVGWIDTH too.
7651
7652 * lisp.h (Fstring_to_unibyte): EXFUN it.
7653
7654 * character.h (str_to_unibyte): Extern it.
7655
7656 * character.c (str_to_unibyte): New function.
7657
7658 * fns.c (Fstring_to_unibyte): New function.
7659 (syms_of_fns): Defsubr it.
7660
76612008-06-24 Kenichi Handa <handa@m17n.org>
7662
7663 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
7664 DPI too.
7665 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
7666
76672008-06-24 Andreas Schwab <schwab@suse.de>
7668
7669 * Makefile.in (${lispsource}loaddefs.el): Rename from
7670 ../lisp/loaddefs.el.
7671 (bootstrap-clean): Do what distclean does but don't remove
7672 Makefile.
7673 (distclean): Depend on bootstrap-clean and remove Makefile.
7674
76752008-06-24 Chong Yidong <cyd@stupidchicken.com>
7676
7677 * buffer.h (struct buffer): New member word_wrap.
7678
7679 * buffer.c (syms_of_buffer): New variables default-word-wrap and
7680 word-wrap.
7681 (init_buffer_once): Initialize them.
7682
7683 * dispextern.h (struct it): Replace bool truncate_lines_p with a
7684 line_wrap enum possessing three possible values.
7685
7686 * termopts.h: Replace truncate_partial_width_windows with
7687 Vtruncate_partial_width_windows.
7688
7689 * dispnew.c (direct_output_for_insert): Avoid direct output when
7690 inserting a space with word wrap on.
7691
7692 * indent.c (compute_motion): Obey integer values of
7693 truncate-partial-width-windows.
7694
7695 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
7696 replacing truncate_partial_width_windows.
7697 (init_iterator): If Vtruncate_partial_width_windows is an integer,
7698 truncate only if the window width is below that integer.
7699 (start_display, resize_mini_window, produce_stretch_glyph)
7700 (display_string, move_it_in_display_line_to): Use line_wrap.
7701 (back_to_previous_visible_line_start, reseat_1): Reset
7702 string_from_display_prop_p.
7703 (display_line): Extend default face to end of line when wrapping.
7704
77052008-06-24 Kim F. Storm <storm@cua.dk>
7706
7707 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
7708 to wrap continued lines at word boundaries.
7709
77102008-06-24 Jason Rumney <jasonr@gnu.org>
7711
7712 * font.c (Ffont_face_attributes): Multiply pixel size before point
7713 conversion to avoid multiplying rounding error.
7714
77152008-06-23 Jason Rumney <jasonr@gnu.org>
7716
7717 * w32term.c (x_draw_glyph_string_background)
7718 (x_draw_glyph_string): Remove old bdf font code.
7719
7720 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
7721
77222008-06-22 Kenichi Handa <handa@m17n.org>
7723
7724 * font.c (font_find_for_lface): Try the adstyle specified in
7725 the property of LFACE_FONT of LFACE (if any).
7726
77272008-06-21 Seiji Zenitani <zenitani@mac.com>
7728 Ryo Yoshitake <ryo@shiftmode.net>
7729
7730 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
7731
77322008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
7733
7734 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
7735 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
7736 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
7737 (witness-emacs): Remove.
7738 (lisp, shortlisp): Move loaddefs.el earlier.
7739 (mostlyclean): Forget about witness-emacs.
7740
77412008-06-22 Glenn Morris <rgm@gnu.org>
7742
7743 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
7744 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
7745
77462008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7747
7748 * Makefile.in (PRECOMP): Remove.
7749 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
7750 (witness-emacs): Run `compile-first'.
7751 (.el.elc): Use the new compile-onefile target.
7752
77532008-06-21 Kenichi Handa <handa@m17n.org>
7754
7755 * xftfont.c (xftfont_open): Handle QCembolden only when
7756 FC_EMBOLDEN is defined.
7757
77582008-06-21 Andreas Schwab <schwab@suse.de>
7759
7760 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
7761 (.el.elc): Likewise.
7762
77632008-06-21 Miles Bader <miles@gnu.org>
7764
7765 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
7766 build dir, not the lisp source dir.
7767
77682008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7769
7770 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
7771 (bootstrapclean): Remove.
7772 (.el.elc): New rule.
7773 (PRECOMP): New var.
7774 (../lisp/subdirs.el): Remove.
7775 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
7776 (witness-emacs): New target.
7777 (mostlyclean): Remove witness-emacs as well.
7778 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
7779 Add witness-emacs dependency.
7780
77812008-06-20 Chong Yidong <cyd@stupidchicken.com>
7782
7783 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
7784 defined by the font.
7785
77862008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7787
7788 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
7789 (bootstrap-clean): New target that keeps TAGS around.
7790 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
7791 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
7792
77932008-06-20 Jason Rumney <jasonr@gnu.org>
7794
7795 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
7796 Remove obsolete font code.
7797
7798 * w32font.c (font_matches_spec): Use csb bitfield from font signature
7799 to determine language support.
7800
78012008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7802
7803 * sysdep.c (cfsetspeed): New fun extracted from the code.
7804 (cfmakeraw): Move before first use.
7805
78062008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
7807
7808 * sysdep.c (cfmakeraw): Provide fallback implementation.
7809 (serial_configure): Provide fallback implementation of cfsetspeed.
7810
78112008-06-20 Kenichi Handa <handa@m17n.org>
7812
7813 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
7814 the pattern.
7815
7816 * fontset.c (fontset_from_font): Copy font_spec before changing
7817 the elements.
7818
7819 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
7820
78212008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7822
7823 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
7824 for explicit `font' parameters.
7825
7826 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
7827
78282008-06-19 Kenichi Handa <handa@m17n.org>
7829
7830 * frame.c: Include <ctype.h>.
7831 (x_set_font_backend): Allow spacing characters in the X resource
7832 for FontBackend.
7833
78342008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
7835
7836 * w32fns.c, xfns.c (Qfont_param): New var.
7837 (syms_of_w32fns): Initialize it.
7838 (x_default_font_parameter): Record explicit `font' into
7839 `font-parameter'.
7840
78412008-06-18 Kenichi Handa <handa@m17n.org>
7842
7843 * font.c (font_parse_xlfd): Fix previous change.
7844 (font_parse_fcname): Don't use :fc-unknown-spec.
7845 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
7846 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
7847 (font_add_log): Prepend the driver name to the resulting fonts.
7848
7849 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
7850 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
7851 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
7852
7853 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
7854 (QCembolden): New variables.
7855 (syms_of_xftfont): DEFSYM them.
7856 (xftfont_open): Call XftFontMatch. Don't trust the result of
7857 XftTextExtents8 if the pixel_size is less than 5.
7858
78592008-06-18 Andreas Schwab <schwab@suse.de>
7860
7861 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
7862 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
7863
78642008-06-18 Jason Rumney <jasonr@gnu.org>
7865
7866 * w32font.c (w32font_list, w32font_match): Add logging.
7867
7868 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
7869
78702008-06-17 Chong Yidong <cyd@stupidchicken.com>
7871
7872 * font.c (font_parse_fcname): Store divider characters for
7873 unknown-spec list. For known key symbols, intern using correct
7874 symbol name.
7875
78762008-06-17 Kenichi Handa <handa@m17n.org>
7877
7878 * xfaces.c (realize_default_face): If the frame is not on window
7879 system, set the fontset of face to nil.
7880
78812008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7882
7883 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
7884
78852008-06-16 Juanma Barranquero <lekktu@gmail.com>
7886
7887 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
7888 (build_font_name_from_vector): Delete externs.
7889
7890 * xfaces.c (struct font_name): Don't declare.
7891
78922008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
7893
7894 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
7895
78962008-06-16 Chong Yidong <cyd@stupidchicken.com>
7897
7898 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
7899
79002008-06-16 Juanma Barranquero <lekktu@gmail.com>
7901
7902 * font.c (Ffont_spec): Fix usage in docstring.
7903 (Ffont_face_attributes): Doc fix.
7904
79052008-06-16 Andreas Schwab <schwab@suse.de>
7906
7907 * font.c (Ffont_face_attributes): Fix definition.
7908
79092008-06-16 Jason Rumney <jasonr@gnu.org>
7910
7911 * font.h (font_style_symbolic_from_value): Remove.
7912
7913 * font.c (font_style_symbolic_from_value): Remove.
7914 (font_style_symbolic): Revert to pre 2008-06-13 version.
7915
7916 * w32font.c (w32_to_fc_weight): New function.
7917 (w32font_full_name, logfont_to_fcname): Use it.
7918
79192008-06-16 Kenichi Handa <handa@m17n.org>
7920
7921 * font.c (font_check_object): Delete it.
7922 (font_clear_cache): Check if a font-object is alive.
7923 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
7924 font-object to nil.
7925 (font_close_object): Don't check FONT_CLOSE_OBJECT.
7926 (font_at): Don't call font_check_object.
7927 (Ffont_get): Return a symbol for :weight, :slant, and :width.
7928
79292008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
7930
7931 * puresize.h (BASE_PURESIZE): Increase to 1230000.
7932
79332008-06-16 Chong Yidong <cyd@stupidchicken.com>
7934
7935 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
7936
79372008-06-15 Chong Yidong <cyd@stupidchicken.com>
7938
7939 * font.c (font_parse_fcname): Only one decimal point.
7940 (font_unparse_fcname): Handle data in family and foundry indices
7941 as symbols, not strings.
7942 (font_unparse_gtkname, Ffont_face_attributes): New functions.
7943
7944 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
7945
7946 * font.h (font_unparse_gtkname): Add prototype.
7947
79482008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7949
7950 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
7951
79522008-06-15 Andreas Schwab <schwab@suse.de>
7953
7954 * font.c (font_update_drivers): Fix crash when no drivers match.
7955
79562008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
7957
7958 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
7959 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
7960
79612008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
7962
7963 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
7964
79652008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
7966
7967 * process.c (Fserial_process_configure, Fprocess_send_eof):
7968 Use EQ to compare Lisp_Objects.
7969
79702008-06-13 Jason Rumney <jasonr@gnu.org>
7971
7972 * w32fns.c (Fw32_select_font): Remove old font API function.
7973
7974 * w32font.c (logfont_to_fcname): New function.
7975 (Fx_select_font): New font dialog function compatible with
7976 GTK/fontconfig version.
7977
7978 * font.c (font_style_symbolic_from_value): New function.
7979 (font_style_symbolic): Use it.
7980
7981 * font.h (font_style_symbolic_from_value): Declare new function.
7982
79832008-06-13 Juanma Barranquero <lekktu@gmail.com>
7984
7985 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
7986 <font-width-table>: Fix typos in docstrings.
7987
79882008-06-13 Daniel Engeler <engeler@gmail.com>
7989
7990 These changes add serial port access.
7991 * process.c: Add HAVE_SERIAL.
7992 (Fdelete_process, Fprocess_status, Fset_process_buffer)
7993 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
7994 (list_processes_1, select_wrapper, Fstop_process)
7995 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
7996 (status_notify): Modify to handle serial processes.
7997 [HAVE_SERIAL] (Fserial_process_configure)
7998 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
7999 New functions.
8000 * process.h (struct Lisp_Process): Add `type'.
8001 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8002 New functions.
8003 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8004 serial ports.
b71ac3dd 8005 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8006 * w32.h: Add FILE_SERIAL.
8007 (struct _child_process): Add ovl_read, ovl_write.
8008
80092008-06-13 Kenichi Handa <handa@m17n.org>
8010
8011 * dispextern.h (enum lface_attribute_index): New member
8012 LFACE_FOUNDRY_INDEX.
8013
8014 * font.c (font_score): Delete arg alternate_families. Check only
8015 weight, slant, width, and size. Ignore the difference of alias
8016 style symbols.
8017 (font_sort_entites): Adjust for the above change. Reflect the
8018 order of font-driver to scores.
8019 (font_list_entities): Don't check alternate_familes here.
8020 (font_clear_prop): Handle foundry.
8021 (font_update_lface): Don't parse "foundry-family" form here.
8022 Handle FONT_FOUNDRY_INDEX.
8023 (font_find_for_lface): Likewise. Handle alternate families here.
8024 If registry is nil, try iso8859-1 and ascii-0.
8025 (font_open_for_lface): Pay attention to size in ENTITY.
8026 (font_open_by_name): Simplify by calling font_load_for_lface.
8027 (free_font_driver_list): Delete it.
8028 (font_update_drivers): Preserve the order of backends.
8029 (syms_of_font): Setting of sort_shift_bits adjusted for the change
8030 of font_score and font_sort_entites.
8031 (font_update_sort_order): Likewise.
8032
8033 * xfaces.c (LFACE_FOUNDRY): New macro.
8034 (check_lface_attrs): Check foundry.
8035 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
8036 (merge_face_vectors): Check foundry.
8037 (merge_face_ref): Likewise.
8038 (Finternal_set_lisp_face_attribute): Likewise.
8039 (x_update_menu_appearance): Likewise.
8040 (Finternal_get_lisp_face_attribute): Likewise.
8041 (lface_hash): Likewise.
8042 (lface_same_font_attributes_p): Likewise.
8043 (x_supports_face_attributes_p): Likewise.
8044 (tty_supports_face_attributes_p): Likewise.
8045 (Finternal_set_alternative_font_family_alist): Intern strings.
8046 (Finternal_set_alternative_font_registry_alist): Downcase strings.
8047 (realize_default_face): Set LFACE_FOUNDRY (lface).
8048
8049 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
8050 font-driver at first.
8051
8052 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
8053
80542008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8055
8056 * lread.c (Fload): Use xfree, not free on saved_doc_string.
8057
80582008-06-12 Jim Meyering <meyering@redhat.com>
8059
8060 Make unexec_free handle NULL the same way free does.
8061 * unexmacosx.c (unexec_free): Ignore a NULL argument.
8062
80632008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
8064
8065 * character.h (CHAR_TO_BYTE_SAFE): New macro.
8066 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
8067 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
8068 (WEAK_ALIAS): Simplify.
8069 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
8070 when searching a unibyte buffer.
8071
80722008-06-12 Chong Yidong <cyd@stupidchicken.com>
8073
8074 * xfns.c (Fx_select_font): Rename from x-font-dialog.
8075
80762008-06-12 Juanma Barranquero <lekktu@gmail.com>
8077
8078 * w32font.c: Include ctype.h.
8079
80802008-06-11 Jason Rumney <jasonr@gnu.org>
8081
8082 * w32font.c (w32font_encode_char): Detect missing glyphs that are
8083 misreported as space.
8084 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
8085 as aliases for registry iso10646-1.
8086
80872008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
8088
8089 * buffer.c (clone_per_buffer_values): Skip `name'.
8090
80912008-06-11 Chong Yidong <cyd@stupidchicken.com>
8092
8093 * font.c (font_parse_fcname): Fix last change; accept decimal
8094 points in font size.
8095
80962008-06-10 Jason Rumney <jasonr@gnu.org>
8097
8098 * w32uniscribe.c (add_opentype_font_name_to_list):
8099 Skip non unicode fonts.
8100
81012008-06-10 Chong Yidong <cyd@stupidchicken.com>
8102
8103 * xfns.c (Fx_font_dialog): New function.
8104
8105 * gtkutil.c (xg_dialog_response_cb): Rename from
8106 xg_file_response_callback.
8107 (pop_down_dialog): Rename from pop_down_file_dialog.
8108 (xg_get_file_name): Callers changed.
8109 (xg_get_font_name): New function.
8110
8111 * gtkutil.h (xg_get_font_name): Insert prototype.
8112
81132008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8114
8115 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
8116 x_underline_minimum_display_offset.
8117 (syms_of_xdisp): Declare it here rather than in xterm.c.
8118 * dispextern.h (underline_minimum_offset): Declare it.
8119 * w32term.c (x_draw_glyph_string): Use it.
8120 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
8121 (syms_of_xterm): Don't declare it any more.
8122 (x_draw_glyph_string): Adjust to the new name.
8123
81242008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
8125
8126 * xterm.c (x_underline_minimum_display_offset): New var.
8127 (x_draw_glyph_string): Use it.
8128 (syms_of_xterm): Declare it.
8129
81302008-06-10 Chong Yidong <cyd@stupidchicken.com>
8131
8132 * font.c (font_parse_fcname): Accept GTK-style font names too.
8133
81342008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8135
8136 * dired.c (file_name_completion): Don't return t if the match is exact
8137 but with different capitalization.
8138 * minibuf.c (Ftry_completion): Simplify.
8139
8140 * window.c (Vwindow_point_insertion_type): New var.
8141 (set_window_buffer): Use it.
8142 (syms_of_window): Init and export it to Lisp.
8143
81442008-06-10 Kenichi Handa <handa@m17n.org>
8145
8146 * font.h (font_intern_prop): Prototype adjusted.
8147
8148 * font.c (font_intern_prop): New arg force_symbol.
8149 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
8150 Adjust for the change of font_intern_prop.
8151
8152 * ftfont.c (ftfont_pattern_entity):
8153 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
8154 (w32_registry):
8155 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
8156 the change of font_intern_prop.
8157
81582008-06-09 Juanma Barranquero <lekktu@gmail.com>
8159
8160 * w32menu.c (digest_single_submenu): Declare extern.
8161
81622008-06-09 Jason Rumney <jasonr@gnu.org>
8163
8164 * w32term.c (x_make_frame_visible): Use alternate restore flags.
8165
8166 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
8167 (parse_single_submenu): Remove.
8168 (digest_single_submenu): Remove.
8169 (syms_of_w32menu): Don't initialise variables that have moved
8170 to menu.c.
8171 (set_frame_menubar): Sync with version in xmenu.c.
8172 (w32_menu_show): Sync with xmenu_show in xmenu.c.
8173
8174 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
8175 Make static again.
8176
81772008-06-09 Jason Rumney <jasonr@gnu.org>
8178
8179 Changes to w32 files related to the move of common menu code
8180 to menu.c on 2008-06-08 by Chong Yidong.
8181
8182 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
8183 defs to w32gui.h.
8184 (single_keymap_panes, push_menu_item, push_menu_pane):
8185 Make globally visible.
8186
8187 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
8188 (local_free, malloc_widget_value, free_widget_value)
8189 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
8190 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
8191 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
8192 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
8193 (menu_items, menu_items_allocated, menu_items_used)
8194 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
8195 (init_menu_items, finish_menu_items, discard_menu_items)
8196 (grow_menu_items, push_submenu_start, push_submenu_end)
8197 (push_left_right_boundary, push_menu_pane, push_menu_item)
8198 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
8199 (free_menubar_widget_tree_value, parse_single_submenu)
8200 (update_submenu_strings): Remove functions.
8201 (xmalloc_widget_value): Remove and declare extern.
8202
8203 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
8204 (OBJ1): Build it.
8205
8206 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
8207 (local_heap, local_alloc, local_free, malloc_widget_value)
8208 (free_widget_value): Define here.
8209
82102008-06-09 Kenichi Handa <handa@m17n.org>
8211
8212 * font.h (Qascii_0): Extern it.
8213
8214 * font.c (Qascii_0): New variable.
8215 (syms_of_font): DEFSYM it.
8216 (font_open_by_name): If the registry "iso8859-1" fails, try also
8217 "ascii-0".
8218
8219 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
8220
82212008-06-08 Kenichi Handa <handa@m17n.org>
8222
8223 * .gdbinit (xfont): New command.
8224
82252008-06-08 Andreas Schwab <schwab@suse.de>
8226
8227 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
8228 * Makefile.in (menu.o): Update dependencies.
8229
8230 * Makefile.in (obj): Always add menu.o.
8231 * emacs.c (main): Always call syms_of_menu.
8232 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
8233
82342008-06-08 Chong Yidong <cyd@stupidchicken.com>
8235
8236 * Makefile.in: Compile menu.c.
8237
8238 * lisp.h: Declare syms_of_menu.
8239
8240 * emacs.c (main): Call syms_of_menu.
8241
8242 * keyboard.h: Relocate platform-independent menu definitions from
8243 xmenu.c.
8244
8245 * menu.c: New file. Relocate platform-independent menu
8246 definitions from xmenu.c. Suggested by Adrian Robert.
8247
8248 * xmenu.c: Remove platform-independent menu definitions.
8249 (menu_items menu_items_inuse, menu_items_allocated)
8250 (menu_items_used, menu_items_n_panes)
8251 (menu_items_submenu_depth): Move to keyboard.h.
8252 (init_menu_items, finish_menu_items, unuse_menu_items)
8253 (discard_menu_items, restore_menu_items, save_menu_items)
8254 (grow_menu_items, push_submenu_start, push_submenu_end)
8255 (push_left_right_boundary, push_menu_pane, push_menu_item)
8256 (keymap_panes, single_keymap_panes, single_menu_item)
8257 (list_of_panes, list_of_items, find_and_call_menu_selection)
8258 (xmalloc_widget_value, free_menubar_widget_value_tree)
8259 (parse_single_submenu, digest_single_submenu)
8260 (update_submenu_strings): Move to menu.c.
8261
82622008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
8263
8264 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
8265
82662008-06-06 Miles Bader <miles@gnu.org>
8267
8268 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
8269 face, not frame default.
8270
82712008-06-05 Martin Rudalics <rudalics@gmx.at>
8272
8273 * window.c (pop_up_windows, pop_up_frames)
8274 (display_buffer_reuse_frames, Vpop_up_frame_function)
8275 (Vdisplay_buffer_function, Veven_window_heights)
8276 (Vspecial_display_buffer_names, Vspecial_display_regexps)
8277 (Vspecial_display_function, Vsame_window_buffer_names)
8278 (Vsame_window_regexps, split_height_threshold)
8279 (Vsplit_window_preferred_function): Move those vars to window.el.
8280 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
8281 (Fdisplay_buffer): Move those functions to window.el.
8282 (syms_of_window): Remove corresponding declarations.
8283 (display_buffer): New function.
8284 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
8285 * dispnew.c (Flast_nonminibuf_frame): New function.
8286 * buffer.c (Fpop_to_buffer): Move to window.el.
8287
82882008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8289
8290 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
8291
82922008-06-05 Kenichi Handa <handa@m17n.org>
8293
8294 * coding.c (detect_coding): Fix previous change.
8295 (detect_coding_system): Likewise.
8296
82972008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8298
8299 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
8300
8301 * keymap.c (Vminibuffer_local_filename_must_match_map):
8302 Rename from Vminibuffer_local_must_match_filename_map.
8303 (syms_of_keymap):
8304 * minibuf.c (Fcompleting_read): Adjust accordingly.
8305 * commands.h: Rename declaration as well.
8306
83072008-06-05 Kenichi Handa <handa@m17n.org>
8308
8309 * font.c (Ffont_spec): Don't use font_parse_family_registry for
8310 family name.
8311 (Ffont_put): Likewise.
8312
8313 * fontset.c (fontset_find_font): Call font_open_for_lface with the
8314 current font-spec.
8315
8316 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
8317 is unspecified.
8318
8319 * xfaces.c (realize_x_face): If the font-related face attributes
8320 are the same as those of default face, realize a new fontset from
8321 default->fontset.
8322 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
8323
83242008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8325
8326 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
8327 (move_it_in_display_line): New wrapper.
8328
8329 * window.c (window_scroll_pixel_based_preserve_x)
8330 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
8331 (window_scroll_pixel_based, window_scroll_line_based):
8332 Use them to preserve column positions.
8333 (syms_of_window): Initialize them.
8334
8335 * indent.c (Fvertical_motion): Extend first arg to allow passing an
8336 (HPOS . VPOS) pair.
8337
8338 * dispextern.h (move_it_in_display_line): Declare.
8339
83402008-06-05 Juanma Barranquero <lekktu@gmail.com>
8341
8342 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
8343 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
8344 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
8345
83462008-06-04 Juanma Barranquero <lekktu@gmail.com>
8347
8348 * window.c (Fset_window_parameter): Doc fix.
8349 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
8350
83512008-06-04 Joakim Verona <joakim@verona.se>
8352
8353 * window.h (struct window): Add new member window_parameters.
8354
8355 * window.c (Fwindow_parameters, Fwindow_parameter)
8356 (Fset_window_parameter): New defuns.
8357 (syms_of_window): Defsubr the new defuns.
8358 (make_window): Initialize window_parameters to nil.
8359
83602008-06-04 John Paul Wallington <jpw@pobox.com>
8361
8362 * eval.c (Fdefmacro): Doc fix.
8363
83642008-06-04 Kenichi Handa <handa@m17n.org>
8365
8366 * coding.c (detect_coding): Fix handling of coding->head_ascii.
8367 Be sure to call setup_coding_system when we find a proper coding system.
8368 (detect_coding_system): Fix handling of coding->head_ascii.
8369
83702008-06-03 Andreas Schwab <schwab@suse.de>
8371
8372 * font.c (font_prop_validate_spacing): Fix last change.
8373
83742008-06-03 Kenichi Handa <handa@m17n.org>
8375
8376 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
8377 (font_parse_fcname): Fix handling of unknown key.
8378
8379 * xfont.c (xfont_list): Try an alias.
8380
8381 * charset.c (char_charset): Return NULL if the arg charset_list is
8382 specified and C doesn't belong to any of them.
8383
83842008-06-02 Chip Coldwell <coldwell@redhat.com>
8385
8386 * font.c (font_pixel_size): Don't take cdr of an integer.
8387
83882008-06-02 Jim Meyering <meyering@redhat.com>
8389
8390 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
8391 * alloc.c (xfree): Return right away for a NULL arg.
8392 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
8393 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
8394 * mac.c (create_apple_event_from_event_ref): Likewise.
8395 (create_apple_event_from_drag_ref, cfstring_create_normalized):
8396 Likewise.
8397 * doprnt.c (doprnt1): Likewise.
8398 * frame.c (frame): Likewise.
8399 * keyboard.c (wipe_kboard): Likewise.
8400 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
8401 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
8402 * term.c (tty_default_color_capabilities, maybe_fatal)
8403 (delete_tty): Likewise.
8404 * w16select.c (string): Likewise.
8405 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
8406 * w32bdf.c (w32_free_bdf_font): Likewise.
8407 * w32fns.c (w32_unload_font): Likewise.
8408 * w32font.c (w32font_close): Likewise.
8409 * window.c (size_window): Likewise.
8410 * xselect.c (receive_incremental_selection): Likewise.
8411 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
8412 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
8413 * w32.c (stat): Likewise.
8414
8415 Remove useless if-before-free tests.
8416 * editfns.c (Fset_time_zone_rule): Likewise.
8417 * lread.c (nosuffix): Likewise.
8418 * ralloc.c (get_bloc): Likewise.
8419 * regex.c (reg_free): Likewise.
8420 * xftfont.c (xftfont_open, xftfont_close): Likewise.
8421 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
8422 * xsmfns.c (smc_save_yourself_CB): Likewise.
8423
84242008-06-02 Kenichi Handa <handa@m17n.org>
8425
8426 * font.c (font_find_for_lface): Handle float font size.
8427 (font_open_for_lface): Likewise.
8428
8429 * xfaces.c (x_supports_face_attributes_p): Check face->font before
8430 comparing the properties.
8431
84322008-06-01 Jason Rumney <jasonr@gnu.org>
8433
8434 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
8435 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
8436 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
8437 Don't add empty script list.
8438 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
8439
84402008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
8441
8442 * Makefile.in (dot, dotdot): Remove, update users.
8443 ".." has been used elsewhere in the file for a long time.
8444 (LIBXT_STATIC): Remove conditional based on unused variable.
8445
84462008-06-01 Miles Bader <miles@gnu.org>
8447
8448 * xfaces.c (Vface_remapping_alist): New variable.
8449 (syms_of_xfaces): Initialize it.
8450 (enum named_merge_point_kind): New type.
8451 (struct named_merge_point): Add `named_merge_point_kind' field.
8452 (push_named_merge_point): Make cycle detection respect different
8453 named-merge-point kinds.
8454 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
8455 Remove face-name alias resolution.
8456 (lface_from_face_name): New definition using
8457 `lface_from_face_name_no_resolve'.
8458 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
8459 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
8460 (get_lface_attributes): New definition that layers face-remapping on
8461 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
8462 (lookup_basic_face): New function.
8463 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
8464 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
8465 `get_lface_attributes'.
8466 (face_at_buffer_position): Use `lookup_basic_face' to lookup
8467 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
8468 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
8469
8470 * xdisp.c (init_iterator): Pass base_face_id through
8471 `lookup_basic_face' when we actually use it as a face-id.
8472 (handle_single_display_prop): Use `lookup_basic_face' to lookup
8473 DEFAULT_FACE_ID.
8474
8475 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
8476 lookup the initial face-id.
8477
8478 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
8479
84802008-06-01 Juanma Barranquero <lekktu@gmail.com>
8481
8482 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
8483 (Fremove_text_properties): Fix typos in docstrings.
8484
84852008-05-31 Kenichi Handa <handa@m17n.org>
8486
8487 * font.c (font_list_entities): Fix the car part of data to be
8488 stored in the cache.
8489
8490 * ftfont.c (ftfont_font_format): Don't use strcasestr.
8491
84922008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8493
8494 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
8495 Add a `test' argument so another predicate than `equal' can be used.
8496 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
8497 (map_char_table): Remove unused vars `c' and `i'.
8498 * lisp.h (Foptimize_char_table): Adjust declaration.
8499 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
8500
85012008-05-30 Kenichi Handa <handa@m17n.org>
8502
8503 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
8504 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
8505 defined.
8506
85072008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8508
8509 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
8510 (Fmake_variable_frame_local): Disallow mixing buffer-local and
8511 frame-local settings for the same variable.
8512
85132008-05-30 Kenichi Handa <handa@m17n.org>
8514
8515 * fontset.c (Ffont_info): Move to font.c.
8516 (syms_of_fontset): Delete defsubr of Sfont_info.
8517
8518 * font.c (font_style_to_value, font_score): Delete casting of the
8519 args to xstcasecmp.
8520 (register_font_driver): Increment num_font_drivers only when
8521 registering the driver globally.
8522 (Ffont_info): Move from fontset.c. Handle a font object too.
8523 (syms_of_font): Defsubr Sfont_info.
8524
85252008-05-29 Kenichi Handa <handa@m17n.org>
8526
8527 * coding.h (enum define_coding_utf8_arg_index): New enum.
8528 (enum coding_attr_index): Change coding_attr_utf_16_bom to
8529 coding_attr_utf_bom.
8530 (enum utf_bom_type): Rename from utf_16_bom_type.
8531 (struct utf_16_spec): Adjust for the above change.
8532 (struct coding_system): Add utf_8_bom in `spec' union.
8533
8534 * coding.c (CODING_UTF_8_BOM): New macro.
8535 (enum coding_category): Delete coding_category_utf_8, add
8536 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
8537 coding_category_utf_8_sig.
8538 (CATEGORY_MASK_UTF_8): Delete it.
8539 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
8540 (CATEGORY_MASK_UTF_8_SIG): New macros.
8541 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
8542 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
8543 CATEGORY_MASK_UTF_8_SIG.
8544 (CATEGORY_MASK_UTF_8): New macro.
8545 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
8546 (detect_coding_utf_8): Check BOM.
8547 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
8548 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
8549 (encode_coding_utf_16): Likewise.
8550 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
8551 (detect_coding, detect_coding_system): Handle utf-8-auto.
8552 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
8553 (syms_of_coding): Fix setting up of Vcoding_category_table.
8554
85552008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
8556
8557 * process.c (Faccept_process_output): If `millisec' is non-nil,
8558 `seconds' default to 0.
8559 (wait_reading_process_output): Also return non-nil if we read output
8560 from a non-running process.
8561
85622008-05-29 Jason Rumney <jasonr@gnu.org>
8563
8564 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
8565 `raster' specified.
8566 (add_font_entity_to_list): Allow non-opentype truetype fonts back
8567 in the uniscribe backend, but disallow any font that has no
8568 unicode subrange support.
8569
85702008-05-29 Juanma Barranquero <lekktu@gmail.com>
8571
8572 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
8573 Fix typos in docstrings.
8574
85752008-05-29 Kenichi Handa <handa@m17n.org>
8576
8577 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
8578 (Fx_family_fonts): Set frame correctly.
8579
85802008-05-28 Jason Rumney <jasonr@gnu.org>
8581
8582 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
8583
85842008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8585
8586 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
8587 calling build_annotations.
8588
85892008-05-28 Juanma Barranquero <lekktu@gmail.com>
8590
8591 * coding.c (Fdecode_coding_region, Fencode_coding_region)
8592 (Fencode_coding_string):
8593 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
8594 <latin-extra-code-table>: Fix typos in docstrings.
8595 (syms_of_coding) <coding-system-alist>: Doc fix.
8596 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
8597
85982008-05-28 Kenichi Handa <handa@m17n.org>
8599
8600 * fontset.c (Ffont_info): Don't call font_close_object.
8601
8602 * font.c (font_parse_family_registry): Use Ffont_put to validate
8603 foundry and family.
8604 (font_delete_unmatched): Don't check spacing.
8605 (font_list_entities): Add spacing to the spec to list fonts.
8606
8607 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
8608 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
8609
8610 * coding.c (encode_coding_raw_text): Fix previous change.
8611 (encode_coding_object): When the dst_object is a buffer and is
8612 different from src_object, move gap to PT.
8613
86142008-05-27 Chong Yidong <cyd@stupidchicken.com>
8615
8616 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
8617
86182008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8619
8620 * coding.c (encode_coding_raw_text): Set coding->produced_char for
8621 all branches. Compute it differently.
8622
8623 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
8624
86252008-05-27 Juanma Barranquero <lekktu@gmail.com>
8626
8627 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
8628 into "else if () ... else ...".
8629
86302008-05-27 Jason Rumney <jasonr@gnu.org>
8631
8632 * w32font.c (w32font_open_internal): Determine if glyph indices
8633 are likely to work here.
8634
86352008-05-27 Chong Yidong <cyd@stupidchicken.com>
8636
8637 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
8638 draw overlap glyphs with appropriate highlighting.
8639
86402008-05-27 Kenichi Handa <handa@m17n.org>
8641
8642 * xfont.c (xfont_open): Fix calculation of font->average_width.
8643
86442008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8645
8646 * casefiddle.c (casify_object): Try to guess better whether the
8647 argument is a byte or a char.
8648
86492008-05-26 Andreas Schwab <schwab@suse.de>
8650
8651 * xselect.c (x_reply_selection_request): Properly handle format == 32.
8652 Always send multiples of format size.
8653
8654 * xterm.c (x_set_frame_alpha): Fix type mismatch.
8655
86562008-05-26 Jason Rumney <jasonr@gnu.org>
8657
8658 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
8659 (compute_metrics): Don't set failure if we just cleared the cache.
8660 (w32_weight_table): Remove unused variable.
8661 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
8662 backwards compatibility.
8663
86642008-05-25 Kenichi Handa <handa@m17n.org>
8665
8666 * w32term.c (x_draw_glyph_string):
8667 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
8668
8669 * xfaces.c: Delete unused function prototypes.
8670 (xstrlwr, font_frame): Delete them.
8671 (clear_face_cache): Delete unused variable.
8672
8673 * xftfont.c (xftfont_open): Delete unused variable.
8674 If underline_thickness is not 1, adjust underline_position.
8675
8676 * ftxfont.c (ftxfont_open): Delete unused variable.
8677
8678 * fontset.c (face_for_char): Optimize for the case of no charset
8679 property.
8680
8681 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
8682 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
8683 (otf_open, font_otf_capability, generate_otf_features)
8684 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
8685 Comment out by surrounding "#if 0" and "#endif" for the moment.
8686 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
8687 (syms_of_font): Codes for accessing above commented out.
8688
86892008-05-24 Eli Zaretskii <eliz@gnu.org>
8690
8691 * w32proc.c: Include dispextern.h.
8692
8693 * w32.c: Include dispextern.h.
8694
86952008-05-23 Juanma Barranquero <lekktu@gmail.com>
8696
8697 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
8698 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
8699 Fix typos in docstrings.
8700
87012008-05-23 Jason Rumney <jasonr@gnu.org>
8702
8703 * xsmfns.c: Remove includes that are already included by config.h.
8704
87052008-05-23 Kenichi Handa <handa@m17n.org>
8706
8707 * charset.c (Qemacs, charset_emacs): New variables.
8708 (char_charset): Fix for non-Unicode characters.
8709 (syms_of_charset): Define charset_emacs.
8710
8711 * w32term.c (x_draw_glyph_string): Be sure to update
8712 s->underline_thickness and s->underline_position. Be sure to draw
8713 underline within the current line area.
8714
8715 * xterm.c (x_draw_glyph_string): Be sure to update
8716 s->underline_thickness and s->underline_position. Be sure to draw
8717 underline within the current line area.
8718
8719 * fontset.c: Delete unused variables and add casting for char *
8720 throughout the file.
8721 (fontset_font): Try the fallback fonts of the current fontset
8722 before consulting the default fontset.
8723
8724 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
8725
8726 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
8727
87282008-05-22 Jason Rumney <jasonr@gnu.org>
8729
8730 * font.c: Don't include strings.h.
8731
8732 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
8733
8734 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
8735 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
8736 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
8737 to call xstrcasecmp.
8738
8739 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
8740
8741 * fontset.c (fs_query_fontset): Use xstrcasecmp.
8742
8743 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
8744
8745 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
8746
87472008-05-22 Kenichi Handa <handa@m17n.org>
8748
8749 * puresize.h (BASE_PURESIZE): Increase to 1220000.
8750
8751 * font.c (font_prop_validate_style): Adjust for the format
8752 change of font_style_table.
8753
8754 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
8755 two args.
8756
8757 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
8758 two args.
8759
87602008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
8761
8762 * minibuf.c (keys_of_minibuf): Delete.
8763 * lisp.h (keys_of_minibuf): Delete.
8764 * emacs.c (main): Don't call keys_of_minibuf.
8765
87662008-05-22 Kenichi Handa <handa@m17n.org>
8767
8768 * ftfont.c (ftfont_resolve_generic_family): Rename from
8769 ftfont_list_generic_family. Return a single family for each
8770 generic family.
8771 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
8772 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
8773 Call font_add_log.
8774 (ftfont_match): Call font_add_log.
8775
8776 * font.h (Ffont_xlfd_name): EXFUN adjusted.
8777 (FONT_DEBUG): Define it.
8778 (font_add_log): Extern it.
8779 (font_assert): Rename from xassert.
8780
8781 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
8782 (xfont_list_family): Call font_add_log.
8783 (xfont_match): Likewise.
8784 (memq_no_quit): Delete.
8785
8786 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
8787 call of Ffont_xlfd_name.
8788
8789 * xfaces.c (struct table_entry, slant_table, weight_table)
8790 (swidth_table): Move to font.c.
8791
8792 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
8793 xassert are changed to font_assert. Delete many unused variables.
8794 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
8795 New variables.
8796 (struct table_entry): Move from xfaces.c and modified.
8797 (weight_table, slant_table, width_table): Move from xfaces.c and
8798 contents adjusted for the change of struct table_entry.
8799 (font_style_to_value, font_style_symbolic): Adjust for the
8800 format change of font_style_table.
8801 (font_parse_family_registry): Don't overwrite existing foundry and
8802 family of font_spec.
8803 (font_score): Fix calculation of diff for sizes.
8804 (font_sort_entites): Call font_add_log.
8805 (font_delete_unmatched): Return a newly created list.
8806 (font_list_entities): Fix previous change. Call font_add_log.
8807 (font_matching_entity, font_open_entity, font_close_entity):
8808 Call font_add_log.
8809 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
8810 (Finternal_set_font_style_table): Delete.
8811 (BUILD_STYLE_TABLE): New macro.
8812 (build_style_table): New function.
8813 (Vfont_log, font_log_env_checked): New variables.
8814 (font_add_log): New function.
8815 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
8816 Declare Lisp variables "font-weight-table", "font-slant-table",
8817 "font-width-table", and "font-log". Initialize font_style_table.
8818
88192008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
8820
8821 * xterm.c (x_set_frame_alpha): Move declarations before statements.
8822
88232008-05-21 Seiji Zenitani <zenitani@mac.com>
8824 Ryo Yoshitake <ryo@shiftmode.net>
8825
8826 * frame.c (Qalpha): Add a new frame parameter `alpha'.
8827 (Vframe_alpha_lower_limit): New variable.
8828 (x_set_alpha): New function.
8829
8830 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
8831
8832 * xfns.c (x-create-frame, Qalpha):
8833 Initialize the frame parameter `alpha'.
8834 * xterm.c (OPAQUE, OPACITY): New.
8835 (x_set_frame_alpha): New function.
8836 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
8837
8838 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
8839 * w32fns.c (w32_frame_parm_handlers): Likewise.
8840
88412008-05-20 Jason Rumney <jasonr@gnu.org>
8842
8843 * w32font.c (add_font_entity_to_list): Don't add non-opentype
8844 truetype fonts to opentype list.
8845
88462008-05-20 Juanma Barranquero <lekktu@gmail.com>
8847
8848 * fontset.c (Ffontset_info): Doc fix.
8849 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
8850 <ignore-relative-composition>: Fix typos in docstrings.
8851
8852 * font.c (syms-of-font) <font-encoding-alist>:
8853 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
8854 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
8855 (Ffont_otf_alternates): Doc fixes.
8856
88572008-05-20 Kenichi Handa <handa@m17n.org>
8858
8859 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
8860 font.h through out the file.
8861 (FONT_DRIVERS): Rename from FONTOBJ.
8862 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
8863 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
8864
8865 * emacs.c (main): Call syms_of_font unconditionally.
8866
8867 * font.h (find_font_encoding): Extern it.
8868
8869 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
8870 fontset.c.
8871 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
8872 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
8873 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
8874 only when HAVE_WINDOW_SYSTEM is defined.
8875 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
8876 when HAVE_WINDOW_SYSTEM is defined.
8877
8878 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
8879 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
8880
8881 * xfaces.c: Include font.h unconditionally.
8882 (merge_face_ref, merge_face_vectors)
8883 (Finternal_set_lisp_face_attribute): Cancel the previous change.
8884
88852008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
8886
8887 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
8888 indirect_variable.
8889 * eval.c (lisp_indirect_variable): New fun.
8890 (Fuser_variable_p): Use it.
8891
88922008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
8893
8894 * lisp.h (indirect_variable):
8895 * data.c (indirect_variable, let_shadows_buffer_binding_p):
8896 Use Lisp_Symbol pointers rather than Lisp_Object.
8897 Adjust callers.
8898 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
8899 To this end, change calling-convention.
8900
8901 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
8902 if some non-hidden buffers are selected by string&pred.
8903
89042008-05-19 Chong Yidong <cyd@stupidchicken.com>
8905
8906 * process.c (wait_reading_process_output): Always check status
8907 when in batch mode.
8908
89092008-05-19 Kenichi Handa <handa@m17n.org>
8910
8911 * font.c (font_list_entities): Fix handling of cache.
8912 (font_matching_entity): Likewise.
8913
8914 * ftfont.c (cs_iso8859_1): Delete.
8915 (ft_face_cache): New variable.
8916 (struct ftfont_info): New member fc_charset_idx.
8917 (ftfont_build_basic_charsets): Delete.
8918 (fc_charset_table): New variable.
8919 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
8920 . FC_CHARSET_IDX) as :font-entity property in the font entity.
8921 Callers changed.
8922 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8923 (ftfont_spec_pattern): New argument fc_charset_idx.
8924 Check registry more rigidly. Change callers.
8925 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
8926 change of :font-entity property of the font.
8927
8928 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
8929 property of the font.
8930
89312008-05-18 Juanma Barranquero <lekktu@gmail.com>
8932
8933 * coding.c (Fcoding_system_p): Rename argument to match docstring.
8934 (Funencodable_char_position, Fcheck_coding_systems_region)
8935 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
8936 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
8937 (Ffind_operation_coding_system, Fset_coding_system_priority)
8938 (Fcoding_system_eol_type): Doc fixes.
8939
89402008-05-17 Glenn Morris <rgm@gnu.org>
8941
8942 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
8943
89442008-05-16 Eli Zaretskii <eliz@gnu.org>
8945
8946 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
8947 and st_gid.
8948
8949 * frame.c (Fdelete_frame): Don't call font_update_drivers if
8950 HAVE_WINDOW_SYSTEM is not defined.
8951
8952 * xfaces.c (merge_face_ref, merge_face_vectors)
8953 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
8954 HAVE_WINDOW_SYSTEM is defined.
8955 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
8956
89572008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
8958
8959 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
8960
89612008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8962
8963 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
8964
89652008-05-15 Kenichi Handa <handa@m17n.org>
8966
8967 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
8968 preference.
8969
89702008-05-15 Glenn Morris <rgm@gnu.org>
8971
8972 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
8973
89742008-05-15 Chong Yidong <cyd@stupidchicken.com>
8975
8976 * fns.c (init_fns): Don't initialize weak_hash_tables here.
8977 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
8978
8979 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
8980
89812008-05-15 Kenichi Handa <handa@m17n.org>
8982
8983 * ftfont.c (ftfont_list): Downcase family name to check generic
8984 families.
8985
8986 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
8987 font-spec for QCfont value.
8988
8989 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
8990 buffer. Check the return value of it.
8991
89922008-05-14 Jason Rumney <jasonr@gnu.org>
8993
8994 * w32term.c (w32_get_glyph_overhangs): Remove.
8995 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
8996
89972008-05-14 Kenichi Handa <handa@m17n.org>
8998
8999 * font.c (font_prop_validate): Make nil a valid value.
9000 (font_clear_cache): Check if the cached vector of entities is nil
9001 or not.
9002
90032008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9004
9005 * emacs.c (main_thread): Conditionalize on
9006 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9007 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9008
9009 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
9010 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
9011 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9012
90132008-05-14 Kenichi Handa <handa@m17n.org>
9014
9015 * coding.c (detect_coding_iso_2022): Ignore a coding category that
9016 has no corresponding coding system.
9017
90182008-05-14 Jason Rumney <jasonr@gnu.org>
9019
9020 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
9021
9022 * w32font.h (w32font_open_internal): Update declaration.
9023
9024 * w32font.c (w32font_open_internal): Change last argument from
9025 w32font_info struct to font object. Fill in font object from
9026 font_entity. Get Outline metrics if possible. Use them to
9027 calculate underline position and thickness. Use xlfd name as name
9028 property. Don't set codepage.
9029 (w32font_open): Pass font_object to w32font_open_internal. Don't
9030 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
9031 (w32font_draw): Use s->font.
9032 (clear_cached_metrics): Don't clear non-existent blocks.
9033
9034 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
9035 font was not found.
9036 (x_draw_glyph_string): Use underline position and thickness from font.
9037
9038 * w32uniscribe.c (uniscribe_open): Pass font_object to
9039 w32font_open_internal.
9040
90412008-05-14 Kenichi Handa <handa@m17n.org>
9042
9043 These changes are to delete all legacy font-handling codes, and
9044 make Emacs use only font-backends.
9045
9046 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
9047 (frame.o, image.o, print.o): Depend on $(FONTSRC).
9048
9049 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
9050
9051 * charset.h (Vcharset_non_preferred_head)
9052 (Vcurrent_iso639_language): Extern them.
9053
9054 * charset.c (Vcharset_non_preferred_head): New variable.
9055 (Vcurrent_iso639_language): New variable.
9056 (syms_of_charset): Declare it as a Lisp variable.
9057 (char_charset): Don't check non preferred charsets. As a last
9058 resort, return charset_unicode.
9059 (Fset_charset_priority): Update Vcharset_non_preferred_head.
9060
9061 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
9062 conditionals. Don't check enable_font_backend. Delete all codes
9063 used only when USE_FONT_BACKEND is not defined.
9064
9065 * dispextern.h (struct glyph_string): Change type of `font' to
9066 `struct font *'.
9067 (struct glyph_string): New member underline_position and
9068 underline_thickness.
9069 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
9070 (struct face): Change type of `font' to `struct font *'. Remove
9071 members `font_name', `font_info_id'.
9072 (per_char_metric, encode_char): Delete externs.
9073 (calc_pixel_width_or_height): Adjust the prototype.
9074
9075 * emacs.c (enable_font_backend): Delete extern.
9076 (main): Don't set enable_font_backend. Don't check the command
9077 line argument "-disable-font-backend".
9078
9079 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
9080 (enum font_property_index): New members FONT_DPI_INDEX,
9081 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
9082 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
9083 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
9084 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
9085 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
9086 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
9087 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
9088 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
9089 (struct font_spec, struct font_entity): New structs.
9090 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
9091 (struct font): Many members from old "struct font_info" moved to
9092 here. Members font and entity deleted.
9093 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
9094 the new font-related objects.
9095 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
9096 (CHECK_FONT_GET_OBJECT): Likewise.
9097 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
9098 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
9099 (struct font_driver): New members case_sensitive anc check. Type
9100 of the member list and open changed.
9101 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
9102 (font_symbolic_width, font_find_object, font_get_spec)
9103 (font_set_lface_from_name): Delete extern.
9104 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
9105
9106 * font.c: Include <strings.h>.
9107 (enable_font_backend): Delete it.
9108 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
9109 (CHECK_VALIDATE_FONT_SPEC): Delete it.
9110 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
9111 (null_string): Delete it.
9112 (null_vector): Make it static.
9113 (font_family_alist): Delete it.
9114 (Qnormal): Extern it.
9115 (QCextra, QClanguage): Delete it.
9116 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
9117 (font_make_spec, font_make_entity, font_make_object)
9118 (font_intern_prop): Renamed from intern_downcase. Don't downcase
9119 the string. Callers changed.
9120 (font_pixel_size): Adjusted for the format change of font-related
9121 objects.
9122 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
9123 (font_style_to_value, font_style_symbolic): New function.
9124 (build_font_family_alist): Delete it.
9125 (font_registry_charsets): Use Fassoc_string instead of
9126 assq_no_quit.
9127 (font_prop_validate_symbol): Don't return null_string.
9128 (font_prop_validate_style): Adjusted for the change of
9129 style-related values in a font vector.
9130 (font_property_table): Delete entries for QClanguage and
9131 QCantialias, add entries for QCavgwidth.
9132 (get_font_prop_index): Delete the 2nd argument FROM.
9133 (font_prop_validate): Arguments changed.
9134 (font_put_extra): Adjusted for the change of font-related objects.
9135 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
9136 (font_parse_fcname, font_unparse_fcname)
9137 (font_prepare_composition): Likewise.
9138 (font_parse_family_registry): Renamed from font_merge_old_spec.
9139 (otf_open): Delete the 1st arg entity.
9140 (font_otf_capability): Adjusted for the above change.
9141 (font_score): New arg alternate_families. Adjusted for the change
9142 of font-related objects.
9143 (font_sort_entites): New arg best_only.
9144 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
9145 Delete them.
9146 (font_match_p): Check alternate families.
9147 (font_find_object): Delete it.
9148 (font_check_object): New function.
9149 (font_clear_cache): Adjusted for the change of font-related objects.
9150 (font_delete_unmatched): New arg.
9151 (font_list_entities): Call font_driver->list with a spec that
9152 doesn't specify style-related properties.
9153 (font_matching_entity): Arguments changed. Caller changed.
9154 (font_open_entity): Adjusted for the change of font-related objects.
9155 (font_close_object, font_has_char, font_encode_char)
9156 (font_get_name, font_get_spec): Likewise.
9157 (font_spec_from_name, font_clear_prop, font_update_lface):
9158 New functions.
9159 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
9160 (font_prepare_for_face, font_done_for_face, font_open_by_name)
9161 (font_at): Adjusted for the change of font-related objects.
9162 (font_range): New function.
9163 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
9164 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
9165 (Fcopy_font_spec, Fmerge_font_spec): New function.
9166 (Ffont_family_list): Renamed from list-families.
9167 (Finternal_set_font_style_table): Arguments changed.
9168 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
9169 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
9170 change of font-related objects.
9171 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
9172
9173 * fontset.h (struct font_info): Delete it. Most members go to
9174 struct font.
9175 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
9176 (enum FONT_SPEC_INDEX): Delete it.
9177 (font_info, list_fonts_func, load_font_func, query_font_func)
9178 (set_frame_fontset_func, find_ccl_program_func)
9179 (get_font_repertory_func, new_fontset_from_font_name): Delete
9180 externs.
9181 (fontset_from_font_name): Extern it.
9182 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
9183 (FONT_INFO_FROM_FACE): Deleted.
9184 (face_for_font): Adjust prototype.
9185
9186 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
9187 conditionals. Don't check enable_font_backend. Delete all codes
9188 used only when USE_FONT_BACKEND is not defined.
9189 (get_font_info_func, list_font_func, load_font_func)
9190 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
9191 (get_font_repertory_func): Delete them.
9192 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
9193 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
9194 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
9195 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
9196 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
9197 (fontset_compare_rfontdef): New function.
9198 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
9199 rfont-defs by qsort. Adjusted for the change of font-group vector.
9200 (load_font_get_repertory): Deleted.
9201 (fontset_find_font): Use new macros to ref/set elements of
9202 font-def and rfont-def.
9203 (fontset_font): Fix the timing of remembering that no font for C.
9204 (free_face_fontset): Do nothing if the face has no fontset.
9205 (face_suitable_for_char_p): Use new macros to ref/set elements of
9206 rfont-def.
9207 (face_for_char): Likewise. Call face_for_char with font_object.
9208 (fs_load_font): Delete. Delete #pragma surrounding it.
9209 (fs_query_fontset): Use strcasecmp instead of strcmp.
9210 (generate_ascii_font_name): Adjusted for the format change of
9211 font-spec.
9212 (Fset_fontset_font): Likewise. Use new macros to set elements of
9213 font-def.
9214 (Fnew_fontset): Use font_unparse_xlfd to generate
9215 FONTSET_ASCII (fontset).
9216 (new_fontset_from_font_name): Deleted.
9217 (fontset_from_font): Renamed from new_fontset_from_font. Check if
9218 a fontset is already created for the font. FIx updating of
9219 Vfontset_alias_alist.
9220 (fontset_ascii_font): Deleted.
9221 (Ffont_info): Adjusted for the format change of font-spec.
9222 (Finternal_char_font): Likewise.
9223 (Ffontset_info): Likewise.
9224 (syms_of_fontset): Don't check load_font_func.
9225
9226 * fns.c (internal_equal): Handle PREV_FONT.
9227
9228 * frame.h: Delete USE_FONT_BACKEND conditional.
9229
9230 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
9231 conditionals. Don't check enable_font_backend. Delete all codes
9232 used only when USE_FONT_BACKEND is not defined.
9233 (x_set_font): Call x_new_font, not x_new_fontset2.
9234 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
9235 already set for the frame.
9236
9237 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
9238 a font-entity by font_make_entity. Use font_intern_prop instead
9239 of intern_downcase. Use FONT_SET_STYLE to set a style-related
9240 font property. If a font is scalable, set avgwidth property to 0.
9241 Set font-entity property by font_put_extra.
9242 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
9243 (ffont_driver): Adjusted for the change of struct font_driver.
9244 (ftfont_spec_pattern): New function.
9245 (ftfont_list): Return a list, not vector.
9246 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
9247 (ftfont_list_family): Don't downcase names.
9248 (ftfont_free_entity): Deleted.
9249 (ftfont_open): Return a font-object. Adjusted for the change of
9250 struct font. Get underline_thickness and underline_position from
9251 font property. Don't update dpyinfo->smallest_font_height and
9252 dpyinfo->smallest_char_width.
9253 (ftfont_close): Don't free `struct font'.
9254 (ftfont_has_char): Adjusted for the format change of font-entity.
9255 (ftfont_encode_char, ftfont_text_extents): Likewise.
9256
9257 * ftxfont.c (ftxfont_list): Return a list, not vector.
9258 (ftxfont_open): Return a font-object. Adjusted for the change of
9259 struct font. Get underline_thickness and underline_position from
9260 font property. Don't update dpyinfo->smallest_font_height and
9261 dpyinfo->smallest_char_width.
9262 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
9263 (ftxfont_draw): Adjusted for the change of struct font.
9264
9265 * image.c (image_ascent): Don't include "charset.h". Include
9266 "character.h" and "font.h".
9267
9268 * lisp.h (enum pvec_type): New member PREV_FONT.
9269 (Fassoc_string): EXFUN it.
9270
9271 * print.c: Include font.h.
9272 (print_object): Handle font-related objects.
9273
9274 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
9275 conditionals. Don't check enable_font_backend. Delete all codes
9276 used only when USE_FONT_BACKEND is not defined.
9277 (handle_auto_composed_prop): Do nothing if it->f is not on a
9278 window system. Check how many following characters can be
9279 displayed by the same font.
9280 (calc_pixel_width_or_height): Type of the 4th arg is changed to
9281 'struct font *'.
9282 (get_char_face_and_encoding): Assign the whole encoding task to
9283 the `encode-char' method of a font driver.
9284 (fill_composite_glyph_string): Adjusted for the change of `struct
9285 face' and `struct glyph_string'.
9286 (fill_glyph_string): Likewise.
9287 (get_per_char_metric): Arguments changed.
9288 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
9289 and `struct glyph_string'.
9290 (produce_stretch_glyph, calc_line_height_property)
9291 (x_produce_glyphs): Likewise.
9292
9293 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
9294 conditionals. Don't check enable_font_backend. Delete all codes
9295 used only when USE_FONT_BACKEND is not defined. Use
9296 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
9297 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
9298 (Qp): Extern them.
9299 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
9300 Deleted.
9301 (struct font_name): Deleted.
9302 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
9303 (compare_fonts_by_sort_order): New function.
9304 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
9305 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
9306 Deleted.
9307 (Fx_family_fonts): Use font_list_entities, and sort fonts by
9308 compare_fonts_by_sort_order.
9309 (Fx_font_family_list): Call Ffont_family_list.
9310 (face_numeric_value, face_numeric_weight, face_numeric_slant)
9311 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
9312 (face_symbolic_slant, face_symbolic_swidth)
9313 (split_font_name_into_vector, build_font_name_from_vector)
9314 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
9315 (font_rescale_ratio, split_font_name, build_font_name)
9316 (free_font_names, sort_fonts, x_face_list_fonts)
9317 (face_font_available_p, sorted_font_list, cmp_font_names)
9318 (font_list_1, concat_font_list, font_list, remove_duplicates):
9319 Deleted.
9320 (Fx_list_fonts): Use Ffont_list.
9321 (LFACE_AVGWIDTH): Deleted.
9322 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
9323 by FONTP.
9324 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
9325 (set_lface_from_font_name): Delete it.
9326 (set_lface_from_font): Renamed from
9327 set_lface_from_font_and_fontset. Caller changed. Don't set
9328 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
9329 for face.
9330 (merge_face_vectors): Copy font-spec if necessary.
9331 Clear properties of the font-spec if necessary.
9332 (merge_face_ref): Clear properties of the font-spec if necessary.
9333 (Finternal_set_lisp_face_attribute): Likewise.
9334 (set_font_frame_param): Use font_load_for_lface to load a
9335 font-object, and call Fmodify_frame_parameters with it.
9336 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
9337 font name by Ffont_xlfd_name.
9338 (Finternal_lisp_face_attribute_values): Don't check QCweight,
9339 QCslant, and QCwidth.
9340 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
9341 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
9342 Compare fonts by EQ.
9343 (lookup_non_ascii_face): Deleted.
9344 (face_for_font): The 2nd argument changed.
9345 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
9346 Check atomic font properties by case insensitive.
9347 (realize_non_ascii_face): Set face->overstrike correctly.
9348 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
9349 (dump_realized_face): Get font name from
9350 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
9351
9352 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
9353 conditionals. Don't check enable_font_backend. Delete all codes
9354 used only when USE_FONT_BACKEND is not defined.
9355 (xic_create_xfontset): Original code deleted and renamed from
9356 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
9357 (x_make_gc): Don't set GCFont in GCs.
9358 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
9359 opened by "fixed".
9360 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
9361 find_ccl_program_func, query_font_func, set_frame_fontset_func,
9362 get_font_repertory_func.
9363
9364 * xfont.c: Include <stdlib.h> and "ccl.h".
9365 (struct xfont_info): New structure.
9366 (xfont_query_font): Deleted.
9367 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
9368 moved from xterm.c.
9369 (xfont_driver): Adjusted for the change of struct font_driver.
9370 (compare_font_names): New function.
9371 (xfont_list_pattern): Sort font names case insensitively. Make
9372 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
9373 (xfont_list): Return a list, not vector.
9374 (xfont_match): If the font doesn't have QCname property, generate
9375 a name from the other font properties.
9376 (xfont_open): Return a font-object. Adjusted for the change of
9377 struct font. Get underline_thickness and underline_position from
9378 font property. Don't update dpyinfo->smallest_font_height and
9379 dpyinfo->smallest_char_width.
9380 (xfont_close): Don't free struct font.
9381 (xfont_prepare_face): Adjusted for the change of struct font.
9382 (xfont_done_face): Deleted.
9383 (xfont_has_char): Adjusted for the change of struct font.
9384 (xfont_encode_char, xfont_draw): Likewise.
9385 (xfont_check): New function.
9386
9387 * xftfont.c (xftfont_list): Adjusted for the change of `list'
9388 callback function.
9389 (xftfont_match): Adjusted for the format change of font-entity.
9390 (xftfont_open): Adjusted for the format change of font-entity and
9391 font-object. Adjusted for the change of struct font. Return a
9392 font-object. Don't update dpyinfo->smallest_font_height and
9393 dpyinfo->smallest_char_width.
9394 (xftfont_close): Block input while calling XftFontClose.
9395 (xftfont_prepare_face): Don't block input while calling
9396 xftfont_get_colors. Adjusted for the change of struct font.
9397 (xftfont_shape): Return value of error case fixed.
9398
9399 * xrdb.c (x_load_resources): Don't setup a fontset resource.
9400
9401 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
9402 conditionals.
9403 (FONT_WIDTH): Return (f)->max_width.
9404 (struct x_display_info): Delete member `font'.
9405 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
9406 (x_find_ccl_program, x_get_font_repertory): Delete externs.
9407 (struct x_output): Change type of `font' to `struct font *'.
9408
9409 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
9410 conditionals. Don't check enable_font_backend. Delete all codes
9411 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
9412 (x_per_char_metric, x_encode_char): Deleted.
9413 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
9414 (x_compute_glyph_string_overhangs): Adjusted for the change of
9415 `struct face'.
9416 (x_draw_glyph_string_foreground)
9417 (x_draw_composite_glyph_string_foreground): Likewise.
9418 (x_draw_glyph_string): Likewise. Use font->underline_position and
9419 font->underline_thickness.
9420 (x_new_font): Renamed from x_new_fontset2.
9421 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
9422 (x_check_font): Call `check' method of a font driver.
9423 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
9424 (x_query_font, x_get_font_repertory): Deleted.
9425 (x_find_ccl_program): Renamed and moved to xfont.c.
9426 (x_redisplay_interface): Adjusted for the change of `struct
9427 redisplay_interface'.
9428
9429 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
9430 conditionals. Don't check enable_font_backend. Delete all codes
9431 used only when USE_FONT_BACKEND is not defined. Surround non-used
9432 code by "#ifdef OLD_FONT" and "endif".
9433 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
9434
9435 * w32font.h (struct w32font_info): New member.
9436 (FONT_COMPAT): New macro.
9437 (w32font_open_internal): Prototype adjusted.
9438
9439 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
9440 OLD_FONT" and "endif".
9441
9442 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
9443 conditionals. Don't check enable_font_backend. Delete all codes
9444 used only when USE_FONT_BACKEND is not defined.
9445 (w32font_open): Return a font-object. Make a font-object by
9446 font_make_object. Adjusted for the change of struct w32font_info.
9447 (w32font_close): Don't free struct font. Adjusted for the change
9448 of struct w32font_info.
9449 (w32font_encode_char, w32font_text_extents, w32font_draw):
9450 Adjusted for the change of struct w32font_info.
9451 (w32font_draw): Likewise.
9452 (w32font_list_internal): Return a list, not vector.
9453 (w32font_open_internal): Change the 4th arg to font-object.
9454 Adjusted for the change of struct w32font_info and font-object format.
9455 (add_font_name_to_list): Don't downcase names.
9456 (w32_enumfont_pattern_entity): Make a font-entity by
9457 font_make_entity. Adjusted for the format change of font-entity.
9458 Use FONT_SET_STYLE to set a style-related font property. If a
9459 font is scalable, set avgwidth property to 0. Set font-entity
9460 property by font_put_extra.
9461 (font_matches_spec): Adjusted for the format change of font-entity.
9462 (w32_weight_table, w32_decode_weight): New variables.
9463 (w32_encode_weight): New function.
9464 (fill_in_logfont): Adjusted for the format change of font-spec.
9465 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
9466 weight value.
9467 (w32font_driver): Adjusted for the change of struct font_driver.
9468
9469 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
9470 conditionals. Don't check enable_font_backend. Surround non-used
9471 code by "#ifdef OLD_FONT" and "endif".
9472 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
9473 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
9474
9475 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
9476 conditionals. Don't check enable_font_backend. Delete all codes
9477 used only when USE_FONT_BACKEND is not defined. Surround non-used
9478 code by "#ifdef OLD_FONT" and "endif".
9479
9480 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
9481 (uniscribe_open): Return value changed to font-object.
9482 Adjusted for the format change of font-object.
9483 (uniscribe_otf_capability): Adjusted for the change of struct font.
9484 (add_opentype_font_name_to_list): Don't downcase names.
9485 (uniscribe_font_driver): Adjusted for the change of struct
9486 font_driver.
9487
94882008-05-13 Chong Yidong <cyd@stupidchicken.com>
9489
9490 * dispnew.c (update_frame_1): Check if tty output is still valid
9491 before flushing it.
9492
94932008-05-13 Jan Djärv <jan.h.d@swipnet.se>
9494
9495 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
9496 to Gtk+ menus.
9497
94982008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
9499
9500 * dired.c (file_name_completion): Tweak the code so as to always do it
9501 in a single pass. Tighten the scope of some variables.
9502
9503 * dired.c (Qdefault_directory): New var.
9504 (file_name_completion): Use it instead of Fexpand_file_name.
9505 (syms_of_dired): Initialize it.
9506
95072008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
9508
9509 * fileio.c (double_dollars): Remove dead code.
9510
95112008-05-10 Eli Zaretskii <eliz@gnu.org>
9512
9513 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
9514 Mention w32-get-true-file-attributes in doc string.
9515
9516 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
9517
95182008-05-09 Glenn Morris <rgm@gnu.org>
9519
9520 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
9521 2008-04-23.
9522
95232008-05-09 Eli Zaretskii <eliz@gnu.org>
9524
9525 Support for reporting owner and group of each file on MS-Windows:
9526 * dired.c (stat_uname, stat_gname): New functions, with special
9527 implementation for w32.
9528 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
9529
9530 * w32.c: Rename the_passwd_* to dflt_passwd_*.
9531 (dflt_group_name): New static variable.
9532 (dflt_group): Rename from the_group.
9533 (init_user_info): Init dflt_group fields. Get user's group name
9534 from LookupAccountSid.
9535 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
9536 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
9537 New initialization states.
9538 (globals_of_w32): Initialize them to zero. Initialize the default
9539 group name to "None".
9540 (GetFileSecurity_Name): New global var, the name of the function
9541 to call for GetFileSecurity.
9542 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
9543 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
9544 (get_file_security, get_security_descriptor_owner)
9545 (get_security_descriptor_group, is_valid_sid)
9546 (get_file_security_desc, get_rid, get_name_and_id)
9547 (get_file_owner_and_group): New functions.
9548 (stat): Use get_file_security_desc and get_file_owner_and_group to
9549 report the owner and primary group of each file. Don't ignore the
9550 high 32 bits of file's size, now that st_size is 64-bit wide.
9551 Fix test when to get true file attributes.
9552 (init_user_info): Use get_rid instead of equivalent inline code.
9553 (fstat): Don't ignore the high 32 bits of file's size.
9554
95552008-05-09 Chong Yidong <cyd@stupidchicken.com>
9556
9557 * image.c (png_load): Use correct bit-depth for setting background
9558 color.
9559
95602008-05-08 Eli Zaretskii <eliz@gnu.org>
9561
9562 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
9563 epa-hook.elc.
9564
95652008-05-08 Juanma Barranquero <lekktu@gmail.com>
9566
9567 * font.c (Ffont_match_p): Don't use `iff' in docstring.
9568
95692008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
9570
9571 * macfns.c (Fx_create_frame): Make a copy of frame parameters
9572 because the original parameters are in pure storage now.
9573 (mac_window): Remove unused params. Update callers.
9574
95752008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
9576
9577 * lread.c (substitute_object_recurse): Use lower-level primitives.
9578 Don't signal errors when traversing sub-char-tables.
9579 Don't loop over all the possible characters when traversing char-tables.
9580
9581 * print.c (print_preprocess): Add sub-char-tables to the print-table,
9582 just like we do in print.c.
9583
95842008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
9585
9586 * minibuf.c (Ftry_completion): Remove code left over from when we used
9587 scmp instead of Fcompare_strings.
9588
95892008-05-04 Juanma Barranquero <lekktu@gmail.com>
9590
9591 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
9592
95932008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9594
9595 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
9596 Create bitmap context in native byte order.
9597
9598 * macterm.c (XDrawLine)
9599 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
9600 context in native byte order.
9601
96022008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9603
9604 * config.in: Regenerate.
9605
9606 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
9607 New definitions for Image I/O support.
9608 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9609 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
9610 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9611 (mac_data_provider_release_data, image_load_image_io)
9612 [USE_MAC_IMAGE_IO]: New functions.
9613 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
9614 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
9615 (init_image_func_pointer) [MAC_OSX]: Remove function.
9616 (image_load_quartz2d) [MAC_OSX]: Check availability of
9617 CGImageCreateWithPNGDataProvider at compile time.
9618 Use lowercase `false' for boolean constant.
9619 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
9620 Use image_load_image_io.
9621 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
9622 Don't check MyCGImageCreateWithPNGDataProvider.
9623 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
9624 Don't call init_image_func_pointer.
9625
9626 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
9627
9628 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
9629 Make variable non-static.
9630 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9631 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9632
9633 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
9634 (RED_FROM_ULONG): Mask off higher bits.
9635 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
9636
9637 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
9638 Include AvailabilityMacros.h.
9639 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
9640 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
9641
96422008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
9643
9644 * chartab.c (Fset_char_table_range): If range is t, really set all
9645 chars to that value.
9646
96472008-05-03 Eli Zaretskii <eliz@gnu.org>
9648
9649 * dired.c (Ffile_attributes): Don't allow the device number become
9650 negative.
9651
96522008-05-02 Daiki Ueno <ueno@unixuser.org>
9653
9654 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
9655
96562008-05-02 Juri Linkov <juri@jurta.org>
9657
9658 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
9659 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
9660 DEFAULT argument as a list of default values in docstrings.
9661
96622008-05-01 Chong Yidong <cyd@stupidchicken.com>
9663
9664 * puresize.h (BASE_PURESIZE): Increase to 1210000.
9665
96662008-05-01 Martin Rudalics <rudalics@gmx.at>
9667
9668 * dispnew.c (change_frame_size_1): Preserve small windows when
9669 shrinking frames by calling set_window_height|width with third
9670 arg 2.
9671
9672 * window.h (struct window): Replace field too_small_ok by field
9673 resize_proportionally.
9674
9675 * window.c (make_window): Initialize resize_proportionally.
9676 (enlarge_window): Temporarily set resize_proportionally to make
9677 sure that shrink_windows does scale the window proportionally.
9678 (shrink_windows): When window has resize_proportionally set try
9679 to shrink it proportionally by stealing from other windows.
9680 (struct saved_window, Fset_window_configuration)
9681 (compare_window_configurations): Handle resize_proportionally.
9682 (WINDOW_TOTAL_SIZE): New macro.
9683 (window_min_size, shrink_windows, size_window): Use it.
9684 (check_min_window_sizes): Remove. Invalid values of
9685 window-min-height|width are handled by window_min_size_2 now.
9686 (size_window, Fsplit_window, enlarge_window)
9687 (adjust_window_trailing_edge, grow_mini_window): Don't call
9688 check_min_window_sizes.
9689 (window_min_size_2, window_min_size_1, window_min_size):
9690 New argument safe_p for retrieving "safe" minimum sizes.
9691 (Fdisplay_buffer, Fsplit_window, enlarge_window)
9692 (adjust_window_trailing_edge, grow_mini_window):
9693 Adjust arguments of window_min_size... functions.
9694 (shrink_windows): Argument min_size removed. New argument
9695 safe_p allows shrinking windows to their safe minimum sizes.
9696 Calculate minimum size and decide whether a window shall be
9697 deleted for each window individually.
9698 (size_window): When nodelete_p equals 2, tell shrink_windows to
9699 delete windows only if their new minimum size is no more safe.
9700 (shrink_window_lowest_first): Call window_min_size_1 to make
9701 sure to preserve modeline of bottom-most window when resizing
9702 the minibuffer.
9703 (Fset_window_configuration, Fcurrent_window_configuration)
9704 (compare_window_configurations): Do not handle
9705 window-min-height|width any more.
9706 (syms_of_window): Clarify window-min-height|width doc-strings.
9707
97082008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
9709
9710 * dired.c (file_name_completion): Fix up the encoding/decoding issue
9711 some more. Copy some of the code from Ftry_completions.
9712 Remove special case code that dates back to initial revision when the
9713 slash was only added when necessary and that can't trigger nowadays.
9714
97152008-04-27 Kenichi Handa <handa@m17n.org>
9716
9717 * font.c (font_prop_validate): Signal `error' instead of `font'.
9718
97192008-04-29 Jason Rumney <jasonr@gnu.org>
9720
9721 * w32fns.c (Fw32_battery_status): New defun.
9722 (syms_of_w32fns): Defsubr it.
9723
97242008-04-28 Andreas Schwab <schwab@suse.de>
9725
9726 * dired.c (file_name_completion): Fix another mixing of encoded
9727 and decoded names.
9728
97292008-04-28 Juanma Barranquero <lekktu@gmail.com>
9730
9731 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
9732
97332008-04-27 Juanma Barranquero <lekktu@gmail.com>
9734
9735 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
9736
97372008-04-27 Andreas Schwab <schwab@suse.de>
9738
9739 * dired.c (file_name_completion): Fix inappropriate mixing of
9740 encoded and decoded names.
9741
9742 * xterm.c (XTread_socket): Fix use of uninitialized variable.
9743
9744 * puresize.h (BASE_PURESIZE): Increase to 1200000.
9745
97462008-04-26 Eli Zaretskii <eliz@gnu.org>
9747
9748 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
9749 2008-03-31, it's not needed anymore with `struct stat' definition
9750 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
9751 for the same reasons.
9752
97532008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
9754
9755 * m/sparc.h: Additional redefinitions for GNU/Linux.
9756
97572008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9758
9759 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
9760 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
9761 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
9762 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
9763 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9764 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
9765 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9766 Likewise.
9767
9768 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
9769 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
9770 (mac_ax_number_of_characters): Add externs.
9771 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9772 [USE_MAC_TSM]: Likewise.
9773 (mac_handle_text_input_event) [MAC_OSX]:
9774 Handle kEventTextInputOffsetToPos for no active input area case.
9775 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9776 (mac_handle_document_access_event)
9777 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
9778 (install_application_handler) [MAC_OSX]: Register handlers for
9779 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9780 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9781 Register mac_handle_document_access_event.
9782
9783 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
9784 Make functions non-static.
9785
97862008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
9787
9788 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
9789 (read_file_name_completion_ignore_case, insert_default_directory)
9790 (Qdefault_directory): Move to minibuffer.el.
9791 (Fread_file_name): Call the new `read-file-name' instead.
9792
97932008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9794
9795 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
9796 Make function non-static.
9797 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
9798 Remove function.
9799 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9800 Move to mactoolbox.c.
9801 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
9802
9803 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
9804 (mac_rect_make): New macro.
9805
9806 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
9807 instead of float.
9808 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9809 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
9810 (XSetBackground) [USE_CG_DRAWING]: Likewise.
9811 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
9812 CGRectMake.
9813 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9814 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
9815 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
9816 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9817 instead of WindowRef in argument type.
9818 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
9819 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
9820 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
9821 instead of DISPLAY. All uses changed.
9822 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
9823 (x_calc_absolute_position): Simplify so as not to use
9824 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
9825
9826 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9827 instead of WindowRef in argument type.
9828 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
9829 [TARGET_API_MAC_CARBON]: Remove externs.
9830 (create_apple_event, mac_event_parameters_to_lisp)
9831 [TARGET_API_MAC_CARBON]: Add externs.
9832
9833 * mactoolbox.c (Vmac_ts_script_language_on_focus)
9834 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
9835 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
9836 is clicked.
9837 (x_activate_menubar): Remove extern for saved_menu_event_location.
9838 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9839 Move from mac.c.
9840
98412008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9842
9843 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
9844 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
9845
98462008-04-23 Jason Rumney <jasonr@gnu.org>
9847
9848 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
9849 attributes only for local files.
9850
9851 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
9852 default to Qlocal.
9853
98542008-04-22 Juri Linkov <juri@jurta.org>
9855
9856 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
9857 read-buffer-to-switch instead of using the letter "B".
9858
98592008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9860
9861 * fileio.c (Qdefault_directory): New variable.
9862 (Fread_file_name): Use it to pass `dir' to the completion functions.
9863
98642008-04-20 Chong Yidong <cyd@stupidchicken.com>
9865
9866 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
9867
98682008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
9869
9870 * keyboard.c (Vpre_help_message): Remove.
9871 (show_help_echo): Remove default C code.
9872
9873 * dired.c (directory_files_internal, file_name_completion):
9874 Only call ENCODE_FILE if the string is indeed decoded.
9875
98762008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9877
9878 * Makefile.in (TOOLKIT_DEFINES): Remove.
9879 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
9880
98812008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9882
9883 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
9884 (mactoolbox.o): New target.
9885
9886 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
9887 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
9888
9889 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
9890 Use mac_set_frame_window_background instead of XSetWindowBackground.
9891 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
9892 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
9893 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
9894 instead of SetWindowTitleWithCFString.
9895 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
9896 Move function to mactoolbox.c.
9897 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
9898 Use mac_set_window_modified instead of SetWindowModified.
9899 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
9900 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
9901 (Fx_focus_frame): Use mac_front_non_floating_window instead of
9902 FrontNonFloatingWindow. Use mac_activate_window instead of
9903 ActivateWindow. Use mac_active_non_floating_window instead of
9904 ActiveNonFloatingWindow.
9905 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
9906 Use mac_show_hourglass and mac_hide_hourglass.
9907 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
9908 instead of GetGlobalMouse.
9909 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
9910 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
9911 Use mac_bring_window_to_front instead of BringToFront.
9912 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
9913 mactoolbox.c.
9914 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
9915 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
9916 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
9917 mactoolbox.c.
9918
9919 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
9920 (XtPointer): Move typedef from macmenu.c.
9921 (enum button_type): Move enum from macmenu.c.
9922 (widget_value): Move typedef from macmenu.c.
9923 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
9924 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9925 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9926 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9927 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9928 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9929 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9930 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
9931 (Selection): Move typedef from macselect.c.
9932 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
9933 macterm.c.
9934 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
9935 (mac_is_window_collapsed, mac_bring_window_to_front)
9936 (mac_send_window_behind, mac_hide_window, mac_show_window)
9937 (mac_collapse_window, mac_front_non_floating_window)
9938 (mac_active_non_floating_window, mac_activate_window)
9939 (mac_move_window_structure, mac_move_window, mac_size_window)
9940 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
9941
9942 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
9943 (enum mac_menu_kind): Move enum to mactoolbox.c.
9944 (min_menu_id): Move variable to mactoolbox.c.
9945 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
9946 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
9947 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
9948 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
9949 [TARGET_API_MAC_CARBON]: Likewise.
9950 (XtPointer): Move typedef to macgui.h.
9951 (enum button_type): Move enum to macgui.h.
9952 (widget_value): Move typedef to macgui.h.
9953 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9954 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9955 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9956 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9957 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9958 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9959 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
9960 (popup_activated_flag): Make variable non-static.
9961 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
9962 (add_menu_item, fill_menu, dispose_menus):
9963 Move functions to mactoolbox.c.
9964 (restore_show_help_function, menu_target_item_handler)
9965 (install_menu_target_item_handler, mac_handle_dialog_event)
9966 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
9967 [TARGET_API_MAC_CARBON]: Likewise.
9968 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
9969 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9970 (find_and_call_menu_selection, name_is_separator): Make function
9971 non-static.
9972 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
9973 to mactoolbox.c.
9974 (set_frame_menubar): Don't call install_menu_quit_handler.
9975 (menu_item_selection): New variable.
9976 (mac_menu_show): Use create_and_show_popup_menu.
9977 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
9978 selection but set variable menu_item_selection. All uses changed.
9979 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
9980 Call install_menu_quit_handler. Move to mactoolbox.c.
9981
9982 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
9983 (Selection): Move typedef to macgui.h.
9984 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
9985 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
9986 Make variables non-static.
9987 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9988 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
9989 Make functions non-static.
9990 (Vmac_service_selection) [MAC_OSX]: Likewise.
9991 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
9992 (mac_valid_selection_target_p, mac_clear_selection)
9993 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9994 (mac_put_selection_value, mac_selection_has_target_p)
9995 (mac_get_selection_value, mac_get_selection_target_list)
9996 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
9997 Move functions to mactoolbox.c.
9998 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
9999 Likewise.
10000 (copy_scrap_flavor_data, mac_handle_service_event)
10001 (install_service_handler) [MAC_OSX]: Likewise.
10002 (syms_of_macselect) <Vmac_dnd_known_types>:
10003 Use mac_dnd_default_known_types.
10004
10005 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10006 Move to mactoolbox.c.
10007 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10008 (Fx_selection_owner_p): Add EXFUN.
10009 (install_window_handler, remove_window_handler, XSetWindowBackground):
10010 Remove externs.
10011 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
10012 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
10013 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
10014 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
10015 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
10016 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
10017 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
10018 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
10019 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
10020 (create_and_show_popup_menu, mac_get_selection_from_symbol)
10021 (mac_valid_selection_target_p, mac_clear_selection)
10022 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10023 (mac_put_selection_value, mac_selection_has_target_p)
10024 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
10025 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
10026 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
10027 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10028 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
10029 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10030 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
10031 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10032 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10033
10034 * mactoolbox.c: New file.
10035
100362008-04-18 Jason Rumney <jasonr@gnu.org>
10037
10038 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
10039
100402008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10041
10042 * character.c (Fmultibyte_char_to_unibyte):
10043 Return latin1 chars unchanged.
10044
10045 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
10046 relocated if it points to `name'.
10047
100482008-04-17 Kenichi Handa <handa@m17n.org>
10049
10050 * data.c (Faset): Allow setting a multibyte character in an
10051 ASCII-only unibyte string.
10052
10053 * lisp.h (STRING_SET_MULTIBYTE): New macro.
10054
100552008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
10056
10057 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
10058 done in config.h.
10059
100602008-04-16 Juanma Barranquero <lekktu@gmail.com>
10061
10062 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
10063 (Fchar_direction): Add usage in the docstring.
10064
100652008-04-15 Chong Yidong <cyd@stupidchicken.com>
10066
10067 * keyboard.c (read_key_sequence): Remove always-true checks.
10068
100692008-04-14 Jason Rumney <jasonr@gnu.org>
10070
10071 * w32font.c (w32font_open_internal): Set max_bounds.descent in
10072 compatibility struct, for better underline positioning.
10073
100742008-04-13 David Hansen <david.hansen@gmx.net>
10075
10076 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
10077 string.
10078
100792008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
10080
10081 * m/hp800.h (XUINT, XSET): Remove.
10082
100832008-04-12 Juanma Barranquero <lekktu@gmail.com>
10084
10085 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
10086 previous change.
10087
100882008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
10089
10090 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
10091 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
10092
100932008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10094
10095 * keymap.h (map_keymap_canonical): Declare.
10096 * xmenu.c (single_keymap_panes): Use it.
10097
100982008-04-11 Glenn Morris <rgm@gnu.org>
10099
10100 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
10101 set the target's value to that of the alias.
10102
101032008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10104
10105 * term.c (set_tty_color_mode): Left over typo.
10106
101072008-04-10 Michael Albinus <michael.albinus@gmx.de>
10108
10109 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
10110 only after check for file name handler functions. Signal, when
10111 native functionality is not supported.
10112 (syms_of_fileio): Declare it unconditionally.
10113
101142008-04-10 Jason Rumney <jasonr@gnu.org>
10115
10116 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
10117 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
10118
10119 * w32.c (logon_network_drive): Also logon to remote drives that
10120 are mapped to drive letters.
10121
101222008-04-10 Glenn Morris <rgm@gnu.org>
10123
10124 * xdisp.c (truncate-partial-width-windows): Doc fix.
10125
101262008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
10127
10128 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
10129 Move functions to minibuffer.el.
10130 (syms_of_fileio): Don't declare them.
10131
101322008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10133
10134 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
10135 (syms_of_minibuf): Remove its initialization.
10136
10137 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
10138
101392008-04-09 Juanma Barranquero <lekktu@gmail.com>
10140
10141 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
10142
101432008-04-09 Jason Rumney <jasonr@gnu.org>
10144
10145 * makefile.w32-in (distclean): Delete makefile too.
10146 (maintainer-clean): New target.
10147
10148 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
10149
10150 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
10151 for new font backend and composite cases.
10152
101532008-04-09 Jan Djärv <jan.h.d@swipnet.se>
10154
10155 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
10156 Most of the code moved to run_timers.
10157 (do_pending_atimers): Call run_timers.
10158 (run_timers): New function.
10159
10160 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
10161 run atimers.
10162
10163 * process.c (wait_reading_process_output): The same as above.
10164
101652008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10166
10167 * minibuf.c (last_exact_completion): Remove variable.
10168 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
10169 (complete_and_exit_1, complete_and_exit_2)
10170 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
10171 (Fdisplay_completion_list, display_completion_list_1)
10172 (Fminibuffer_completion_help, Fself_insert_and_exit)
10173 (Fexit_minibuffer, Fminibuffer_message): Move functions to
10174 minibuffer.el.
10175 (syms_of_minibuf): Remove corresponding initializations.
10176
10177 * keyboard.c (Qdeactivate_mark): New var.
10178 (command_loop_1): Use it to call `deactivate-mark'.
10179 (syms_of_keyboard): Initialize it.
10180
10181 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
10182 to another frame.
10183 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
10184 Don't call set_tty_color_mode.
10185 (store_frame_param): Reset previous_frame rather than call
10186 set_tty_color_mode.
10187 * term.c (set_tty_color_mode): Rewrite.
10188 * dispextern.h (set_tty_color_mode): New type.
10189 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
10190
101912008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
10192
10193 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
10194 for generic chars, which do not exist any more in emacs-unicode.
10195
101962008-04-08 Michael Albinus <michael.albinus@gmx.de>
10197
10198 * coding.c (detect_coding_emacs_mule)
10199 (Ffind_operation_coding_system): Fix typo.
10200
102012008-04-08 Jason Rumney <jasonr@gnu.org>
10202
10203 * w32uniscribe.c (SNAME): Extract only symbol name.
10204
10205 * w32font.h (struct w32_metric_cache): New struct.
10206 (w32font_info): Use it.
10207 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
10208 (CACHE_BLOCKSIZE): New constants.
10209
10210 * w32font.c (Qja, Qko, Qzh): New symbols.
10211 (syms_of_w32font): Initialise them.
10212 (font_matches_spec): Use them to filter by language.
10213 (recompute_cached_metrics): Remove function.
10214 (compute_metrics, clear_cached_metrics): New functions.
10215 (w32font_encode_char): Use them to manage metric cache.
10216 (w32font_text_extents): Cache metrics for all glyphs on demand.
10217 Delay converting glyph indices to WORD until needed.
10218 (w32font_open_internal): Initialize metric cache to empty.
10219 (registry_to_w32_charset): Charset should always be a symbol.
10220 (fill_in_logfont, list_all_matching_fonts): Family should
10221 always be a symbol.
10222
102232008-04-06 Jason Rumney <jasonr@gnu.org>
10224
10225 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
10226 Give up if glyph indices not supported. Use uniscribe obtained
10227 ABC widths for individual metrics. Map glyph clusters back to
10228 characters using fClusterStart flag. Return number of glyphs
10229 produced, not chars processed.
10230 (uniscribe_shape): Map char at FROM to current glyph.
10231
102322008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10233
10234 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
10235 Use SetMenuItemHierarchicalMenu.
10236
102372008-04-05 Jason Rumney <jasonr@gnu.org>
10238
10239 * image.c (pbm_load): Allow color values up to 65535.
10240 Throw an error if max_color_idx is outside the supported range.
10241 Report an error when image size is invalid.
10242 Read two bytes at a time when raw images have max_color_idx above 255.
10243
102442008-04-05 Eli Zaretskii <eliz@gnu.org>
10245
10246 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10247 cFileName a file name that includes `?' characters, use the 8+3
10248 alias in cAlternateFileName instead.
10249
102502008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
10251
10252 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
10253 append "CCL: Quitted" when the CCL program is quitted.
10254 (setup_ccl_program): Initialize ccl->quit_silently to zero.
10255
10256 * ccl.h (struct ccl_program): New member quit_silently.
10257
102582008-04-05 Chong Yidong <cyd@stupidchicken.com>
10259
10260 * search.c (compile_pattern_1): Treat non-nil and non-string of
10261 search-spaces-regexp as nil.
10262
10263 * minibuf.c (Fassoc_string): Tweak docstring.
10264
102652008-04-05 Eli Zaretskii <eliz@gnu.org>
10266
10267 * dired.c (Ffile_attributes): Support inode numbers wider than 32
10268 bits. Remove ugly WINDOWSNT-specific kludge introduced on
10269 2008-03-14 to force inode be positive.
10270
10271 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
10272 _S_* ones, since we now use our own sys/stat.h.
10273 (stat, fstat): Don't mangle the inode number.
10274 (init_user_info): Don't restrict UID and GID to 0-60000 range.
10275
102762008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
10277
10278 * frame.h (struct frame): Give one more bit to `visible' since we use
10279 values larger than 1 to indicate obscured frames on ttys.
10280
10281 * keymap.c (Qkeymap_canonicalize): New var.
10282 (Fmap_keymap_internal): New fun.
10283 (describe_map): Use keymap-canonicalize.
10284
10285 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
10286 (Fundo_boundary): Set them.
10287 (syms_of_undo): Initialize them.
10288 (record_point): Use them instead of last_point_position*.
10289 (last_undo_buffer): Change type.
10290
102912008-04-04 Jason Rumney <jasonr@gnu.org>
10292
10293 * w32font.c (w32font_text_extents): Use font's ascent and descent.
10294 (recompute_cached_metrics): Don't set ascent and descent per char.
10295
10296 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
10297 (uniscribe_check_otf): Add GC protection before consing.
10298 Rearrange loop for counting features.
10299
103002008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10301
10302 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
10303 buffer with byte-size of source buffer.
10304
103052008-04-03 Chong Yidong <cyd@stupidchicken.com>
10306
10307 * callint.c (Fcall_interactively): Handle temporary region even
10308 when shift-select-mode is off.
10309
103102008-04-03 Jason Rumney <jasonr@gnu.org>
10311
10312 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
10313
103142008-04-03 Kenichi Handa <handa@m17n.org>
10315
10316 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
10317 (CATEGORY_MASK_UTF_16): Likewise.
10318 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
10319 binary file.
10320 (detect_coding): Add null-byte detection for a binary file.
10321 (detect_coding_system): Likewise.
10322
103232008-04-03 Jason Rumney <jasonr@gnu.org>
10324
10325 * w32uniscribe.c: New file.
10326
10327 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
10328
10329 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
10330
10331 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
10332 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
10333 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
10334 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
10335 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
10336 (Qphonetic): New symbols.
10337 (syms_of_w32font): Initialize them.
10338 (font_supported_scripts): Use them.
10339 (w32font_list_family): List all charsets.
10340 (w32font_text_extents, recompute_cached_metrics): Fix metric
10341 calculations.
10342 (w32_enumfont_pattern_entity): Make full_type a DWORD.
10343 Give opentype fonts their own format.
10344 (font_matches_spec): New arguments backend and logfont.
10345 Handle :otf spec for uniscribe backend.
10346 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
10347 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
10348
10349 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
10350 font backend.
10351 (globals_of_w32fns): Initialize uniscribe font backend.
10352
10353 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
10354 dependencies.
10355 (w32uniscribe.$(O)): New file to build.
10356 (FONT_OBJ): Include w32uniscribe.$(O).
10357 (LIBS): Add uniscribe libraries.
10358
10359 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
10360
103612008-04-02 Chong Yidong <cyd@stupidchicken.com>
10362
10363 * callint.c (Vshift_select_mode): New var.
10364 (Finteractive): Document new ^ spec.
10365 (Fcall_interactively): Call handle-shift-selection if the ^ spec
10366 is present.
10367
10368 * keyboard.c (Vthis_command_keys_shift_translated): New var.
10369 (command_loop_1): Avoid running the direct display versions of
10370 forward-char and backward-char if shift-selection may occur.
10371 (read_key_sequence): Set Vthis_command_keys_shift_translated if
10372 shift-translation takes place.
10373
10374 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
10375 avoid clobbering by define-minor-mode.
10376
10377 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
10378 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
10379
10380 * syntax.c (Fforward_word): Add ^ interactive spec.
10381
10382 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
10383 (Fscroll_right): Add ^ interactive spec.
10384
103852008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
10386
10387 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
10388
10389 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
10390
10391 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
10392
103932008-03-31 Juri Linkov <juri@jurta.org>
10394
10395 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
10396
103972008-03-30 Jan Djärv <jan.h.d@swipnet.se>
10398
10399 * gtkutil.c (xg_set_geometry): Fix indentation.
10400 (xg_resize_outer_widget): Remove.
10401 (x_wm_size_hint_off): Fix indentation.
10402 (xg_frame_set_char_size): Call flush_and_sync after
10403 gtk_window_resize.
10404 (x_wm_set_size_hint): Pass NULL as geometry window to
10405 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
10406 Add menu bar and tool bar height to base height.
10407 (xg_update_frame_menubar, free_frame_menubar)
10408 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
10409 (update_frame_tool_bar, free_frame_tool_bar):
10410 Change xg_resize_outer_widget to xg_frame_set_char_size.
10411
104122008-03-30 Michael Albinus <michael.albinus@gmx.de>
10413
10414 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
10415 (Fdbus_call_method): New parameter TIMEOUT.
10416 (dbus-send-signal): Optimize UNGCPRO call.
10417
104182008-03-29 Juri Linkov <juri@jurta.org>
10419
10420 * window.c (Fdisplay_buffer): Move call to
10421 Vsplit_window_preferred_function out of conditions that check
10422 if window is eligible for vertical splitting.
10423 When Vsplit_window_preferred_function is non-nil, call it and use
10424 its non-nil return value as window. Otherwise, continue doing
10425 vertical splitting using Fsplit_window with arg horflag=nil.
10426 (syms_of_window) <Vsplit_window_preferred_function>: Change the
10427 default value from `split-window' to nil.
10428
104292008-03-29 Juri Linkov <juri@jurta.org>
10430
10431 * callint.c (Fcall_interactively): Revert 2008-03-16 change
10432 for interactive code letters 'b' and 'B'.
10433
104342008-03-29 Eli Zaretskii <eliz@gnu.org>
10435
10436 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
10437 multibyte string.
10438
104392008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
10440
10441 * keyboard.c (pending_funcalls): New var.
10442 (timer_check): Run it.
10443 (syms_of_keyboard): Initialize it.
10444 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
10445 (Vdelete_terminal_functions): New vars.
10446 (syms_of_terminal): Initialize them.
10447 (Fdelete_terminal): Run delete-terminal-functions.
10448 * xdisp.c (safe_eval): Rewrite.
10449 (safe_call2): New fun.
10450 * frame.c (Qdelete_frame_functions): New var.
10451 (syms_of_frame): Initialize it.
10452 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
10453 * lisp.h (safe_call2, pending_funcalls): Declare.
10454
104552008-03-28 Andreas Schwab <schwab@suse.de>
10456
10457 * indent.c (Fmove_to_column): Move declaration before statements.
10458
104592008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
10460
10461 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
10462 (struct frame): Use bit fields for boolean vars.
10463
10464 * process.c (server_accept_connection): Simplify naming.
10465 (emacs_get_tty_pgrp): Use SDATA.
10466
10467 * coding.c (decode_coding_object): Fix last change.
10468
104692008-03-27 Jason Rumney <jasonr@gnu.org>
10470
10471 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
10472
104732008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
10474
10475 * charset.c (Fdefine_charset_internal): Change the way of
10476 registering charsets in Vcharset_order_list.
10477 (syms_of_charset): Make the charset `eight-bit' supplementary.
10478
104792008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
10480
10481 * regex.c (EXTEND_BUFFER): Change order of pointer addition
10482 operations, to avoid having the difference between pointers
10483 overflow.
10484
104852008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
10486
10487 * indent.c (check_display_width): New fun.
10488 (scan_for_column): Use it.
10489
10490 * data.c (syms_of_data): Mark most-positive-fixnum and
10491 most-negative-fixnum as constants.
10492
10493 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
10494
10495 * indent.c (scan_for_column): Extract from current_column_1.
10496 Merge with the same code from Fmove_to_column.
10497 (current_column_1, Fmove_to_column): Use it.
10498
104992008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
10500
10501 * keymap.c (map_keymap_internal): New fun.
10502 (map_keymap): Use it.
10503 (Fmap_keymap_internal): New fun.
10504 (Fmap_keymap): Remove left-out test from before make_save_value.
10505
10506 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
10507
10508 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
10509 Use XCAR/XCDR.
10510
10511 * process.h (struct Lisp_Process): Remove filter_multibyte.
10512 * process.c (QCfilter_multibyte): Remove.
10513 (setup_process_coding_systems): Don't use filter_multibyte.
10514 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
10515 (read_process_output): Don't adjust multibyteness to filter_multibyte.
10516 (Fset_process_filter_multibyte): Change the coding-system to
10517 approximate the previous behavior.
10518 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
10519 coding-system.
10520
10521 * coding.c (decode_coding_object): When not decoding into a buffer,
10522 obey the coding system's preference of (uni|multi)byte.
10523
105242008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
10525
10526 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
10527 every char is changed and has a different byte-length.
10528 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
10529 Fix int -> EMACS_INT.
10530
105312008-03-23 David Hansen <david.hansen@gmx.net>
10532
10533 * dbusbind.c (xd_read_message): Remove extra copying of message
10534 strings. Check for NULL `interface' or `member'.
10535
105362008-03-22 Eli Zaretskii <eliz@gnu.org>
10537
10538 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10539 cFileName a file name that includes `?' characters, use the 8+3
10540 alias in cAlternateFileName instead.
10541
105422008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
10543
10544 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
10545
105462008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10547
10548 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
10549 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
10550 work on current_buffer only instead (that was already the case
10551 for some of the code anyway).
10552 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
10553 (temp_set_point, temp_set_point_both): Use EMACS_INT.
10554 (SET_PT, SET_PT_BOTH): Adjust.
10555 * intervals.h (set_point, temp_set_point, set_point_both)
10556 (temp_set_point_both): Remove redundant declarations.
10557
105582008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10559
10560 * fileio.c (Finsert_file_contents):
10561 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
10562 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
10563 when buffer != current_buffer anyway.
10564
105652008-03-20 Andreas Schwab <schwab@suse.de>
10566
10567 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
10568 as default.
10569
105702008-03-19 Jason Rumney <jasonr@gnu.org>
10571
10572 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
10573 (syms_of_w32fns): Initialize them.
10574 (HOURGLASS_ID): New constant.
10575 (x_window_to_frame): Don't check hourglass_window.
10576 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
10577 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
10578 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
10579 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
10580 Only change the cursor if hourglass is not active.
10581 (Fx_create_frame): Initialize frame's current_cursor.
10582 (hourglass_atimer): Remove.
10583 (hourglass_started): New function.
10584 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
10585 (show_hourglass): Adapt to w32, changing argument to frame.
10586
10587 * w32term.h (struct w32_output): Remove hourglass_window.
10588 Add current_cursor.
10589
10590 * eval.c (call_debugger, Fsignal):
10591 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
10592 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
10593 (Fexecute_extended_command, cancel_hourglass_unwind):
10594 * minibuf.c (read_minibuf):
10595 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
10596
105972008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
10598
10599 * window.c (run_funs): New fun.
10600 (run_window_configuration_change_hook): Use it to run the buffer-local
10601 and the global part of the hook.
10602
10603 * xdisp.c (format_mode_line_unwind_data): Add window argument.
10604 (unwind_format_mode_line): Restore selected window.
10605 (x_consider_frame_title, Fformat_mode_line): Set selected window.
10606
106072008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
10608
10609 * editfns.c (Fchar_equal): Check they are valid characters.
10610
10611 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
10612
106132008-03-17 Andreas Schwab <schwab@suse.de>
10614
10615 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
10616 against a charset.
10617
10618 * lisp.h (Fbuffer_list): Declare.
10619
106202008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 10621
aac0c6e3
MR
10622 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
10623 handlebox_widget is != 0.
10624
106252008-03-16 Juri Linkov <juri@jurta.org>
10626
10627 * callint.c (Fcall_interactively): For interactive code letters
10628 'b' and 'B' put the buffer list into the list of default "future"
10629 values of the minibuffer.
10630
106312008-03-16 Andreas Schwab <schwab@suse.de>
10632
10633 * keyboard.c (read_key_sequence): Fix downcasing of letters with
10634 modifiers.
10635
10636 * regex.c (re_match_2_internal): Correct matching of a charset
10637 against latin-1 characters.
10638
106392008-03-16 Kenichi Handa <handa@m17n.org>
10640
10641 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
10642 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
10643 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
10644 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
10645 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
10646 CHAR_STRING_ADVANCE.
10647 (produce_chars): Fix for the case that the source and the
10648 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
10649 instead of CHAR_STRING_ADVANCE.
10650 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
10651 STRING_CHAR_ADVANCE.
10652
106532008-03-15 Andreas Schwab <schwab@suse.de>
10654
10655 * regex.c (re_match_2_internal): Correct matching of eight bit
10656 characters in unibyte strings.
10657
106582008-03-15 Martin Rudalics <rudalics@gmx.at>
10659
10660 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
10661 at end of range when it coincides with the end of the buffer.
10662
106632008-03-14 Eli Zaretskii <eliz@gnu.org>
10664
10665 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
10666
10667 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
10668
106692008-03-14 Jason Rumney <jasonr@gnu.org>
10670
10671 * editfns.c (initial_tz): New variable.
10672 (syms_of_editfns): Initialize it.
10673 (Fset_time_zone_rule): Set it when first called.
10674 Use it when TZSTRING is nil.
10675
10676 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
10677 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
10678 (monitor_from_point_fn, get_monitor_info_fn): New globals.
10679 (globals_of_w32fns): Initialize them.
10680 (compute_tip_xy): Use them to position tooltips.
10681
106822008-03-14 Glenn Morris <rgm@gnu.org>
10683
10684 * emacs.c (main): Revert previous change.
10685 (standard_args): Revert -internal-script back to -scriptload,
10686 and remove the long-option form.
10687
106882008-03-13 Glenn Morris <rgm@gnu.org>
10689
10690 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
10691 Remove option -enable-font-backend.
10692
106932008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
10694
10695 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
10696
106972008-03-11 Jan Djärv <jan.h.d@swipnet.se>
10698
10699 * xterm.c (x_connection_closed): For GTK: If this is the last
10700 terminal just exit without closing the display.
10701
107022008-03-11 Jason Rumney <jasonr@gnu.org>
10703
10704 * w32font.c (w32font_full_name): Use floor to round.
10705
f0131492 107062008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
10707
10708 * sound.c (alsa_configure): Declare vol at beginning of block.
10709
10710 * fontset.c (Ffontset_info): Remove extra semicolon.
10711
107122008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
10713
10714 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
10715 size of resulting string.
10716
107172008-03-10 Jason Rumney <jasonr@gnu.org>
10718
10719 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
10720
107212008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10722
10723 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
10724 Don't pretend as if characters with display property haven't been
10725 consumed for string-replacing-string case.
10726
107272008-03-08 Kim F. Storm <storm@cua.dk>
10728
10729 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
10730 (get_next_display_element, next_element_from_string)
10731 (next_element_from_ellipsis, next_element_from_buffer): Use it.
10732
107332008-03-08 Andreas Schwab <schwab@suse.de>
10734
10735 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
10736
107372008-03-06 Jason Rumney <jasonr@gnu.org>
10738
10739 * w32font.c (w32_registry): Take font_type argument. Use ANSI
10740 when charset not specified. Only translate ANSI to unicode when
10741 font_type is truetype.
10742 (w32font_coverage_ok): New function.
10743 (add_font_entity_to_list): Use it to filter unsuitable fonts.
10744
107452008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
10746
10747 * lread.c (Fread_char): Resolve modifiers.
10748 (Fread_char_exclusive): Likewise.
10749
10750 * character.c (char_resolve_modifier_mask): New function.
10751 (char_string): Use char_resolve_modifier_mask.
10752 (Fchar_resolve_modifiers): New function.
10753 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
10754 function.
10755
107562008-03-04 Jason Rumney <jasonr@gnu.org>
10757
10758 * makefile.w32-in: Always include w32font.c in the build.
10759 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
10760
107612008-03-04 Andreas Schwab <schwab@suse.de>
10762
10763 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
10764 (versionclean): Likewise.
10765
107662008-03-04 Juanma Barranquero <lekktu@gmail.com>
10767
10768 * .cvsignore: Add oo.
10769
107702008-03-03 Andreas Schwab <schwab@suse.de>
10771
10772 * coding.c (decode_coding_object): Inhibit gap shrinking while
10773 decoding in place.
10774
107752008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
10776
10777 * w32term.c: Remove unused include "gnu.h".
10778 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
10779
10780 * gnu.h: Rename to ...
10781 * emacs-icon.h: ... this.
10782 * xterm.c: Use emacs-icon.h instead of gnu.h.
10783 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
10784
107852008-03-03 Juanma Barranquero <lekktu@gmail.com>
10786
10787 * w32font.c: Include math.h.
10788
107892008-03-03 Jason Rumney <jasonr@gnu.org>
10790
10791 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
10792 Compute options separately.
10793 (w32font_open_internal): Set glyph_idx before caching metrics.
10794
10795 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
10796 Define if system headers don't.
10797 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
10798 (w32font_encode_char): Don't declare here.
10799
10800 * w32font.c (Quniscribe, QCformat): New symbols.
10801 (syms_of_w32font): Define them.
10802 (w32font_has_char): Indicate uncertainty.
10803 (w32font_encode_char): Encode as glyph point. Make static.
10804 (recompute_cached_metrics): New function.
10805 (w32font_open_internal): Use it. Set font to use glyph points
10806 initially. Set format based on type of font.
10807 (w32font_text_extents, w32font_draw): Optionally use glyph points.
10808 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
10809 on it. Set format based on information available here.
10810 (add_font_entity_to_list): Identify backend based on opentype_only.
10811
108122008-03-02 Andreas Schwab <schwab@suse.de>
10813
10814 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
10815
10816 * coding.c (decode_coding_big5, produce_chars):
10817 Fix typos in last change.
10818
108192008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
10820
10821 * gnu.h: New icon.
10822
108232008-03-02 Kenichi Handa <handa@m17n.org>
10824
10825 * coding.c (decode_coding_utf_8): When eol-type of CODING is
10826 `dos', don't decode '\r' if that is the last in the source.
10827 (decode_coding_utf_16, decode_coding_emacs_mule)
10828 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10829 (decode_coding_raw_text, decode_coding_charset): Likewise.
10830 (produce_chars): Don't decode EOL here. Use EMACS_INT.
10831
108322008-03-01 Jason Rumney <jasonr@gnu.org>
10833
10834 * w32font.c (w32font_full_name): Report point size for scalable fonts.
10835
108362008-03-01 Kim F. Storm <storm@cua.dk>
10837
10838 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
10839
108402008-03-01 Jason Rumney <jasonr@gnu.org>
10841
10842 * w32font.c (w32font_full_name): New function.
10843 (w32font_open_internal): Use it.
10844
108452008-03-01 Kim F. Storm <storm@cua.dk>
10846
10847 * dispnew.c (line_draw_cost): Fix invalid glyph check.
10848
108492008-03-01 Jason Rumney <jasonr@gnu.org>
10850
10851 * font.c (font_unparse_fcname): Increase len when style is a symbol.
10852
108532008-03-01 Jan Djärv <jan.h.d@swipnet.se>
10854
10855 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
10856 xg_frame_resized when the event is for the edit widget.
10857
10858 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
10859
10860 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
10861 set_char_size.
10862 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
10863 operations on widgets here. Just set frame size if needed.
10864 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
10865 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
10866 (x_wm_set_size_hint): Set size hints on the edit widget only, not
10867 the whole frame.
10868 (xg_create_tool_bar): Move attachment of the tool bar to
10869 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
10870 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
10871
108722008-03-01 Jason Rumney <jasonr@gnu.org>
10873
10874 * w32fns.c (w32_msg_pump): Disable debug code.
10875
108762008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10877
10878 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
10879
108802008-02-29 Chong Yidong <cyd@stupidchicken.com>
10881
10882 * xdisp.c (next_overlay_string): Don't set
10883 overlay_strings_at_end_processed_p if we're currently reading from
10884 a display string.
10885
108862008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
10887
10888 * xdisp.c (get_overlay_strings_1): Fix typo.
10889
108902008-02-29 Chong Yidong <cyd@stupidchicken.com>
10891
10892 * xdisp.c (get_overlay_strings_1): Add missing argument type.
10893
108942008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
10895
10896 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
10897
10898 * xdisp.c (display_mode_element): Cancel the previous change.
10899 (decode_mode_spec): Likewise.
10900 (handle_auto_composed_prop): Don't make composition if it->string
10901 is a string.
10902
109032008-02-27 Kim F. Storm <storm@cua.dk>
10904
10905 * lisp.h (GLYPH): Change type from int to struct with separate char
10906 and face_id members.
10907 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
10908 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
10909 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
10910 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
10911 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
10912 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
10913 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
10914 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
10915 handle new Lisp glyph code encoding, either an integer or a cons.
10916
10917 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
10918 (GLYPH_ALIAS): Delete.
10919 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
10920 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
10921 (GLYPH_FROM_CHAR): Replace macro by ...
10922 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
10923
10924 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
10925 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
10926 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
10927 (GLYPH_INVALID_P): New macro.
10928 (spec_glyph_lookup_face): Update prototype.
10929
10930 * dispnew.c (line_draw_cost): Adapt to new glyph type.
10931 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
10932 new glyph code encoding.
10933 (spec_glyph_lookup_face): No return value; update passed glyph instead.
10934 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
10935
10936 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10937 Adapt to new glyph type and new glyph code encoding.
10938
10939 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
10940
10941 * indent.c (current_column, current_column_1, Fmove_to_column)
10942 (compute_motion): Adapt to new glyph code encoding.
10943
10944 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
10945
109462008-02-27 Chong Yidong <cyd@stupidchicken.com>
10947
10948 * process.c (wait_reading_process_output): Check for window
10949 changes caused by timers.
10950 Suggested by Johan Bockgård.
10951
109522008-02-27 Glenn Morris <rgm@gnu.org>
10953
10954 * emacs.c (USAGE1): Add `--disable-font-backend'.
10955
109562008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
10957
10958 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
10959 is made to the buffer.
10960
109612008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
10962
10963 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
10964 (face_at_string_position):
10965 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
10966 (face_at_string_position):
10967 * xdisp.c (display_string, next_overlay_change):
10968 * buffer.h (overlays_at):
10969 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
10970 Update callers.
10971
109722008-02-26 Chong Yidong <cyd@stupidchicken.com>
10973
10974 * editfns.c (Fformat): Doc fix.
10975
109762008-02-26 Juanma Barranquero <lekktu@gmail.com>
10977
10978 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
10979 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
10980 (Ffont_otf_alternates, Fquery_font): Doc fixes.
10981
109822008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10983
10984 * buffer.c (Fbuffer_swap_text): New function.
10985 (syms_of_buffer): Defsubr it.
10986
109872008-02-25 Chong Yidong <cyd@stupidchicken.com>
10988
10989 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
10990
109912008-02-25 Jason Rumney <jasonr@gnu.org>
10992
10993 * w32font.c (w32font_draw): Draw one character at a time when padding.
10994
109952008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10996
10997 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
10998 Handle a nil arg. Use run_window_configuration_change_hook.
10999 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11000 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11001 Use run_window_configuration_change_hook.
11002
110032008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11004
11005 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11006 1-pixel width.
11007
110082008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11009
11010 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
11011 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
11012 if the glyph in the font is zero pixel with.
11013
11014 * dispextern.h (struct glyph_string): New member padding_p.
11015
11016 * w32font.c (w32font_draw): Pay attention to s->padding_p.
11017
11018 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
11019
11020 * xfont.c (xfont_draw): Pay attention to s->padding_p.
11021
11022 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
11023
11024 * font.c: If the font driver doesn't have `shape' function, return Qnil.
11025
110262008-02-25 Jason Rumney <jasonr@gnu.org>
11027
11028 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
11029
110302008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
11031
11032 Allow fine-grained image-cache flushing.
11033 * dispextern.h (struct image): Add `dependencies' field.
11034 (clear_image_caches): Change arg to Lisp_Object.
11035 * image.c (make_image): Initialize `dependencies' field.
11036 (clear_image_cache): Change arg to allow fine-grained flushing.
11037 Perform the flush even if image-cache-eviction-delay is nil.
11038 (clear_image_caches): Change arg to Lisp_Object.
11039 (Fclear_image_cache): Expand meaning of the argument.
11040 (mark_image): Mark `dependencies' field.
11041 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
11042 (lface_hash): Use XHASH rather than XFASTINT.
11043 (face_at_buffer_position): Fix int -> EMACS_INT position.
11044 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
11045 (select_frame_for_redisplay): Remove code duplication.
11046 (redisplay_internal): Adapt arg to call to clear_image_caches.
11047
110482008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
11049
11050 * s/vms4-0.h:
11051 * s/vms4-2.h:
11052 * s/vms4-4.h:
11053 * s/vms5-5.h: Remove, unused.
11054
11055 * s/irix5-2.h:
11056 * s/irix6-0.h:
11057 * s/riscos5.h:
11058 * s/mach-bsd4-3.h:
11059 * m/mips4.h: Remove files for obsolete systems.
11060
11061 * Makefile.in:
11062 * filelock.c:
11063 * unexmips.c:
11064 * m/hp9000s300.h:
11065 * m/iris4d.h:
11066 * s/aix3-1.h:
11067 * s/hpux.h:
11068 * s/msdos.h:
11069 * s/usg5-0.h:
11070 * s/usg5-2-2.h:
11071 * s/usg5-2.h:
11072 * s/usg5-3.h: Remove references to obsolete variables.
11073
11074 * s/irix5-0.h: Remove, move all the contents ...
11075 * s/irix6-5.h: ... here. Simplify.
11076 * config.in: Regenerate.
11077
110782008-02-24 Jason Rumney <jasonr@gnu.org>
11079
11080 * w32term.c (x_draw_glyph_string_background): Clear the background
11081 manually when cleartype is in use.
11082 (x_draw_glyph_string_foreground): Draw text transparently when
11083 cleartype is in use.
11084
11085 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
11086 a font into it unless we have to.
11087
110882008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11089
11090 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
11091 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 11092
aac0c6e3
MR
110932008-02-18 Jason Rumney <jasonr@gnu.org>
11094
11095 * w32fns.c (Fw32_shell_execute): Encode parameters.
11096
110972008-02-09 Eli Zaretskii <eliz@gnu.org>
11098
11099 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
11100
111012008-02-05 Juanma Barranquero <lekktu@gmail.com>
11102
11103 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
11104
111052008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
11106
11107 * xterm.c (x_set_offset): Don't change the gravity if
11108 CHANGE_GRAVITY is -1.
11109
111102008-02-23 Chong Yidong <cyd@stupidchicken.com>
11111
11112 * fileio.c (auto_save_error_occurred): New var.
11113 (auto_save_error): Set it.
11114 (Fdo_auto_save): Don't overwrite the error message if an auto-save
11115 error occurred.
11116
111172008-02-23 Eli Zaretskii <eliz@gnu.org>
11118
11119 * w32.c (globals_of_w32): Add initializations for
11120 g_b_init_get_sid_sub_authority and
11121 g_b_init_get_sid_sub_authority_count.
11122
111232008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
11124
11125 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
11126 (font_parse_xlfd): Use them for sanity check.
11127 (Finternal_set_font_style_table): Make sure the table is bijective.
11128
11129 Consolidate the image_cache to the terminal struct.
11130 * termhooks.h (P_): Remove redundant def.
11131 (struct terminal): New field `image_cache'.
11132 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
11133 of FRAME_X_IMAGE_CACHE.
11134 * xterm.h (struct x_display_info): Remove image_cache field.
11135 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11136 * w32term.h (struct w32_display_info): Remove image_cache field.
11137 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11138 * macterm.h (struct mac_display_info): Remove image_cache field.
11139 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11140 * xterm.c (x_term_init):
11141 * w32term.c (w32_term_init):
11142 * macterm.c (mac_term_init): Set the image_cache in the terminal.
11143 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
11144 Remove declarations.
11145 (clear_image_caches, mark_image_cache): New declarations.
11146 * xfaces.c (clear_face_cache):
11147 * xdisp.c (redisplay_internal): Use clear_image_caches.
11148 * image.c (clear_image_cache): Don't check that a frame is on
11149 a window-system before checking if it shares the same cache.
11150 (clear_image_caches): New function.
11151 (Fclear_image_cache): Use it.
11152 (mark_image): Move from allo.c.
11153 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
11154 * alloc.c (mark_image, mark_image_cache): Move to image.c.
11155 (mark_object): Don't call mark_image_cache for frames.
11156 (mark_terminals): Call mark_image_cache.
11157
11158 * lisp.h (Fdelete_terminal): Declare.
11159
11160 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
11161 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
11162 wrong_type_argument.
11163
111642008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
11165
11166 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
11167 malayalam.el, and tamil.el. Add sinhala.el.
11168
111692008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
11170
11171 * xterm.c (x_connection_closed): Consolidate identical tests.
11172 (x_delete_terminal): Don't crash if called via x_connection_closed.
11173
111742008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
11175
11176 * xdisp.c (decode_mode_spec): New arg string.
11177 (display_mode_element): Adjust for the above change.
11178
111792008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11180
11181 * callint.c (Fcall_interactively): Use AREF.
11182
111832008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
11184
11185 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
11186
111872008-02-18 Jan Djärv <jan.h.d@swipnet.se>
11188
11189 * xfns.c (Fx_show_tip): Set string to " " if empty.
11190
111912008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
11192
11193 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
11194 with Qt.
11195
111962008-02-17 Kenichi Handa <handa@m17n.org>
11197
11198 * ftfont.c (ftfont_shape): Return Lispy number.
11199
11200 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
11201 for GCs.
11202 (Finternal_set_font_selection_order): Call font_update_sort_order
11203 only when enable_font_backend is set.
11204 (realize_x_face): Set face->font_info to that of default face only
11205 when enable_font_backend is set.
11206
11207 * xdisp.c (handle_composition_prop): Set it->c to the fist
11208 character of the composed region.
11209 (fill_composite_glyph_string): Set base_face->font_info to
11210 s->font_info. Get a face for ascii from base_face->ascii_face.
11211 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
11212 with a face already decided.
11213 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
11214 non-negative.
11215 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
11216 call font_prepare_composition unconditionally.
11217
11218 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
11219
11220 * xterm.h (struct x_display_info): New member font.
11221
11222 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
11223 (x_set_mouse_face_gc, x_new_font): Likewise.
11224 (x_term_init): Setup display_info->font.
11225 (x_delete_terminal): Free display_info->font.
11226
11227 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
11228
11229 * ftxfont.c (ftxfont_default_fid): Delete it.
11230 (ftxfont_open): Set xfont->fid to 0.
11231 (ftxfont_end_for_frame): Clear data specific to the frame and the
11232 font-driver.
11233
11234 * xftfont.c (xftfont_default_fid): Delete it.
11235 (xftfont_open): Set xfont->fid to 0.
11236
11237 * fontset.c (FONTSET_OBJLIST): New macro.
11238 (fontset_find_font): Update font-object list of the fontset.
11239 (free_realized_fontset): New function.
11240 (free_face_fontset): Call free_realized_fontset.
11241 (Ffont_info): Call font_close_object only when enable_font_backend
11242 is set.
11243
11244 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
11245 [HAVE_NTGUI]: Include w32term.h.
11246 [MAC_OS]: Include macterm.ch.
11247 (font_otf_ValueRecord): Use make_number.
11248 (font_finish_cache): Fix handling of reference count.
11249 (font_clear_cache): Update num_fonts.
11250 (font_open_entity): Update smallest_char_width and
11251 smallest_font_height of the frame.
11252 (font_close_object): Update num_fonts.
11253 (Fclear_font_cache): Fix finding the target cache data.
11254
112552008-02-16 Glenn Morris <rgm@gnu.org>
11256
11257 * fontset.c (Finternal_char_font): Fix compilation warning.
11258
112592008-02-16 Eli Zaretskii <eliz@gnu.org>
11260
11261 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
11262 instead of char arrays. Enlarge the size of array passed to
11263 get_token_information.
11264
11265 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
11266 warnings.
11267
112682008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
11269
11270 * .gdbinit: Don't set `args', it breaks gdb --args.
11271
112722008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
11273
11274 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
11275 within a narrowed buffer.
11276
112772008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
11278
11279 * coding.c (decode_coding_object, encode_coding_object):
11280 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
11281
112822008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
11283
11284 * coding.c (coding_set_destination): Use BEG_BYTE rather than
11285 hardcoding 1.
11286 (detect_coding_system):
11287 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
11288 (string_char_to_byte, string_byte_to_char, insert_from_gap):
11289 * insdel.c (insert_from_gap):
11290 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
11291 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
11292 (string_to_multibyte):
11293 * character.c (chars_in_text, multibyte_chars_in_text):
11294 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
11295
11296 * character.h (FETCH_STRING_CHAR_ADVANCE)
11297 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
11298 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
11299 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
11300
11301 * casefiddle.c (casify_region): Only call after-change and composition
11302 functions on the part of the region that was changed.
11303
11304 * keyboard.c (read_avail_input):
11305 * frame.c (Fdelete_frame): Call Fdelete_terminal.
11306
113072008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11308
11309 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
11310 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
11311
113122008-02-11 Juanma Barranquero <lekktu@gmail.com>
11313
11314 * w32menu.c (push_submenu_start, push_submenu_end)
11315 (push_left_right_boundary, push_menu_pane, push_menu_item):
11316 * keyboard.c (read_key_sequence): Don't pass args with side effects
11317 to AREF, it fails when compiling with -DENABLE_CHECKING.
11318
113192008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
11320
11321 * Makefile.in (${lispsource}international/charprop.el):
11322 Delete this target.
11323
11324 * search.c (boyer_moore): Fix incorrect synching of the trunk and
11325 emacs-unicode-2.
11326
113272008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11328
11329 * terminal.c (Fdelete_terminal): Clean up the `force' path.
11330
113312008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11332
11333 * frame.c (Qnoelisp): New symbol.
11334 (syms_of_frame): Initialize it.
11335 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
11336 harmless Elisp code, from a strong `force' from x_connection_closed.
11337 * frame.h (Qnoelisp): Declare.
11338 * xterm.c (x_connection_closed): Pass `noelisp'.
11339
11340 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
11341 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
11342 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
11343 rather than `int' for the type of `type'.
11344
113452008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
11346
11347 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
11348
11349 * Makefile.in (GNUC): Remove support for gcc-1.x.
11350
113512008-02-10 Richard Stallman <rms@gnu.org>
11352
11353 * lisp.h (ASET): Use AREF, not ASLOT.
11354
113552008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11356
11357 * lisp.h (ASET): Check bounds.
11358
113592008-02-10 Glenn Morris <rgm@gnu.org>
11360
11361 * buffer.c (mode-name): Doc fix.
11362
113632008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11364
11365 * Makefile.in:
11366 * emacs.c:
11367 * gmalloc.c:
11368 * keyboard.c:
11369 * lisp.h:
11370 * m/ibm370aix.h:
11371 * process.c:
11372 * regex.c:
11373 * s/hpux.h:
11374 * sysdep.c:
11375 * sysselect.h:
11376 * systty.h:
11377 * unexec.c:
11378 * w32term.c:
11379 * xsmfns.c:
11380 * xterm.c: Remove code that deals with obsolete variables.
11381
11382 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
11383
11384 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
11385 nothing else needs it anymore.
11386
113872008-02-09 Eli Zaretskii <eliz@gnu.org>
11388
11389 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
11390 instead of unibyte_char_to_multibyte.
11391
113922008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11393
11394 * s/gnu-linux.h: Remove commented out code.
11395
11396 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
11397
11398 * Makefile.in: Update what RMS says about using autoconf.
11399 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
11400 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
11401 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
11402 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
11403
114042008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
11405
11406 * keymap.c (Fkey_description): Move side effect outside of macro call.
11407
11408 * xfaces.c (Finternal_make_lisp_face):
11409 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
11410
11411 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
11412 (syms_of_fontset): Use ASET.
11413
11414 * fns.c (concat): Move side effect outside of macro call.
11415 (hash_clear): Use ASET.
11416
114172008-02-08 Richard Stallman <rms@gnu.org>
11418
11419 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
11420 If FORCE, and frame has a surrogate minibuffer for another frame,
11421 delete the other frame first.
11422
114232008-02-07 Timo Savola <timo.savola@iki.fi>
11424
11425 * xterm.c (x_detect_focus_change): Handle embed client message.
11426 (handle_one_xevent): Ditto.
11427 (handle_one_xevent): If embedded and we get a button press/release,
11428 request focus.
11429 (xembed_set_info, xembed_send_message): New functions.
11430 (x_make_frame_visible): Call xembed_set_info if embedded.
11431 (x_make_frame_invisible): Call xembed_set_info if embedded.
11432 (x_term_init): Initialize Xatom_XEMBED.
11433 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
11434 (x_iconify_frame): Ditto.
11435
11436 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
11437 (enum xembed_info, enum xembed_message, enum xembed_focus)
11438 (enum xembed_modifier, enum xembed_accelerator): New.
11439 (xembed_set_info, xembed_send_message): Declare.
11440 (FRAME_X_EMBEDDED_P): New.
11441
11442 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
11443 gtk_plug_new.
11444
11445 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
11446 window ID of a frame.
11447 (x_window): Reparent frame if embedded.
11448 (Fx_create_frame): Don't set border width if embedded.
11449
11450 * emacs.c (USAGE3): Add --parent-id.
11451 (standard_args): Ditto.
11452
114532008-02-07 Jan Djärv <jan.h.d@swipnet.se>
11454
11455 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
11456
114572008-02-07 Jim Meyering <meyering@redhat.com>
11458
11459 Use "do...while (0)", not "if (1)...else" in macro definitions.
11460 The latter provokes a warning from gcc about the empty else, when
11461 followed by ";". Also, without that trailing semicolon, it would
11462 silently swallow up any following statement.
11463 * syntax.h (SETUP_SYNTAX_TABLE)
11464 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
11465 * buffer.h (DECODE_POSITION): Likewise.
11466 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
11467 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
11468 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
11469 (FETCH_CHAR_ADVANCE): Likewise.
11470 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
11471
114722008-02-07 Jim Meyering <meyering@redhat.com>
11473
11474 * lread.c [lint]: Don't include <sys/inode.h>.
11475
114762008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
11477
11478 * xselect.c (x_handle_dnd_message):
11479 * xmenu.c (digest_single_submenu, xmenu_show):
11480 * xdisp.c (with_echo_area_buffer_unwind_data)
11481 (format_mode_line_unwind_data, unwind_format_mode_line)
11482 (display_menu_bar):
11483 * eval.c (Ffetch_bytecode):
11484 * doc.c (store_function_docstring):
11485 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
11486 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
11487 * buffer.c (add_overlay_mod_hooklist): Use ASET.
11488
114892008-02-07 Kenichi Handa <handa@m17n.org>
11490
11491 * ftxfont.c (ftxfont_open): Don't set
11492 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
11493
11494 * ftfont.c (ftfont_open): Fix previous change.
11495
114962008-02-06 Jason Rumney <jasonr@gnu.org>
11497
11498 * w32font.c (w32font_text_extents): Fill in lbearing metric.
11499 Use cached metrics for ASCII characters.
11500 (w32font_open_internal): Don't set font's owning_frame.
11501 Cache metrics for ASCII characters.
11502
11503 * w32font.h (struct w32font_info): Add ascii_metrics.
11504 Remove owning_frame.
11505
115062008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
11507
11508 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
11509 to negative value.
11510
11511 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
11512
11513 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
11514
11515 * charset.c (syms_of_charset): Set QCtest and Qeq.
11516
115172008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
11518
11519 * process.c (Fstart_process):
11520 * callproc.c (Fcall_process): Handle the case where
11521 Funhandled_file_name_directory returns nil.
11522
11523 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
11524 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
11525 * font.c (check_gstring): Use them and AREF to access the vector before
11526 we know it's really a gstring.
11527 (Ffont_shape_text): Fix typo.
46e722a9 11528 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
11529
11530 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
11531 Declare.
11532
11533 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
11534
115352008-02-05 Jason Rumney <jasonr@gnu.org>
11536
11537 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
11538 Set smallest_font_height and smallest_char_width in display info.
11539
115402008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
11541
11542 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
11543
115442008-02-05 Miles Bader <miles@gnu.org>
11545
11546 * xfaces.c (get_lface_attributes, merge_named_face)
11547 (lookup_named_face, lookup_derived_face, realize_named_face):
11548 Revert 2008-02-01 change by cyd@stupidchicken.com.
11549
115502008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
11551
11552 * fontset.c (Ffontset_info): Handle the case of inhibitting the
11553 fallback fonts.
11554 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
11555
115562008-02-04 Jason Rumney <jasonr@gnu.org>
11557
11558 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
11559 set full_name.
11560 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
11561
115622008-02-03 Jason Rumney <jasonr@gnu.org>
11563
11564 * makefile.w32-in (OBJ1): Include font.o here.
11565 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
11566
115672008-02-02 Jason Rumney <jasonr@gnu.org>
11568
11569 * makefile.w32-in (temacs): Bump EMHEAP to 21.
11570
115712008-02-01 Jason Rumney <jasonr@gnu.org>
11572
11573 * s/cygwin.h: Define VIRT_ADDR_VARIES.
11574
11575 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
11576
115772008-02-01 Andreas Schwab <schwab@suse.de>
11578
11579 * Makefile.in (shortlisp, lisp): Update for rename of
11580 ../lisp/language/myanmar.el.
11581
115822008-02-01 Chong Yidong <cyd@stupidchicken.com>
11583
11584 * xfaces.c (get_lface_attributes): Delete function.
11585 (merge_named_face, lookup_named_face, lookup_derived_face)
11586 (realize_named_face): Call lface_from_face_name directly, and use
11587 the fact that merge_face_vectors does not alter its FROM argument.
11588
115892008-02-01 Jason Rumney <jasonr@gnu.org>
11590
11591 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
11592 input in the default locale. Handle non-Unicode multibyte input.
11593
115942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11595
11596 * fontset.c (reorder_font_vector): Exclude nil elements from the
11597 font group. Don't try multiple fonts.
11598 (fontset_font): Adjust for the above change.
11599 (Finternal_char_font): Return nil if the found font doesn't
11600 contain the character ch.
11601
11602 * Makefile.in (lisp, shortlisp): Add cham.el.
11603
116042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11605
11606 * font.h (FONTP): Make it return 1 also for a font-object.
11607
11608 * .gdbinit (xfontset): New function.
11609
11610 * font.c (font_find_for_lface): Check if the character C is
11611 supported or not only for the first font.
11612
11613 * fontset.c (reorder_font_vector): Fix typo.
11614 (fontset_find_font): Don't add a font-spec specifying a script.
11615 Use 0 (not Qt) for the indication of empty font-group. Change the
11616 format of RFONT-DEF. Return Qt if no font in the font-group
11617 support the character.
11618 (fontset_font): Adjust for the above change. If no font was
11619 found the character, remember that.
11620 (face_for_char): Adjust for the change of RFONT-DEF.
11621 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
11622 no font for the target.
11623 (Finternal_char_font): Adjust for the change of RFONT-DEF.
11624
116252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11626
11627 * font.c (font_load_for_face): Handle the case that the font in
11628 face->lface is a string.
11629
116302008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11631
11632 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
11633
116342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11635
11636 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
11637 Fix previous change. If the frame is not on a window system,
11638 signal an error.
11639
116402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11641
11642 * coding.c (decode_coding_object, encode_coding_object): Adjust
11643 marker positions after conversion.
11644
11645 * lisp.h (struct Lisp_Marker): New member need_adjustment.
11646
116472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11648
11649 * font.c (font_find_for_lface): Fix the handling of the return
11650 value of font_has_char.
11651 (Ffont_shape_text): Fix previous change.
11652
11653 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
11654 (fontset_ref_and_range): Delete it.
11655 (fontset_find_font): Call char_table_ref_and_range instead of
11656 FONTSET_REF_AND_RANGE.
11657 (make_fontset): Don't setup font groups of Latin here.
11658 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
11659 (new_fontset_from_font): Make the specified font the default for
11660 all Latin characters.
11661
116622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11663
11664 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
11665 is on a window system before accessing the fontset of the frame.
11666
116672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11668
11669 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
11670
11671 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
11672 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
11673
11674 * font.c (Ffont_shape_text): If the font driver doesn't have a
11675 shaper function, make zero-width glyphs to have at least one-pixel
11676 width. Fix setting of `to' field of glyphs.
11677
116782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11679
11680 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
11681 glyphs.
11682
11683 * font.h (struct font_driver): Improve docstring of member `shape'.
11684
116852008-02-01 Kenichi Handa <handa@m17n.org>
11686
11687 * composite.c (syms_of_composite): Fix docstring of
11688 auto-composition-function.
11689
11690 * font.h (LGLYPH_SIZE): New macro.
11691
11692 * font.c (Ffont_fill_gstring): Stop filling when a character not
11693 supported by the font is found.
11694 (Ffont_shape_text): When a shape callback function returns nil,
11695 try at most two more times with larger gstring.
11696 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
11697
11698 * xdisp.c (handle_auto_composed_prop): Change the argument to
11699 auto-composition-function.
11700
11701 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
11702 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
11703 Lispy glyph and store it in the lgstring.
11704
11705 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
11706
11707 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
11708
117092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11710
11711 * font.c (Ffont_shape_text): Avoid unnecessary composition.
11712
11713 * fontset.c (Vfont_encoding_charset_alist): New variable.
11714 (syms_of_fontset): DEFVAR it.
11715 (reorder_font_vector, fontset_find_font): Optimize for the case of
11716 no need of reordering.
11717 (face_for_char): Map the charset property by
11718 Vfont_encoding_charset_alist.
11719
117202008-02-01 Jason Rumney <jasonr@gnu.org>
11721
11722 * w32font.c (logfonts_match): Don't check adstyle here.
11723 (font_matches_spec): Check here against physical font instead.
11724 (add_font_entity_to_list): Avoid some substitutions.
11725
11726 * font.c (font_parse_fcname): Default weight and slant to normal.
11727 (font_score): Prefer normal fonts if weight or slant unspecified.
11728 (font_score) [WINDOWSNT]: Scale weight difference down to closer
11729 match freetype scores.
11730
117312008-02-01 Jason Rumney <jasonr@gnu.org>
11732
11733 * w32font.c (w32font_text_extents): Don't use the frame stored in the
11734 font, as it may have been deleted.
11735 (w32_enumfont_pattern_entity): Map generic family to adstyle using
11736 most common hyphenless variation.
11737 (logfonts_match): Check generic family.
11738 (font_matches_spec): Don't check generic family here.
11739 (fill_in_logfont): Set generic family based on adstyle.
11740
11741 * w32font.h (w32font_get_cache): Update declaration.
11742
117432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11744
11745 * ftfont.c (ftfont_get_cache): Adjust the argument type.
11746
11747 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
11748 If none of the new drivers are available, call font_update_drivers
11749 with the old drivers.
11750
11751 * w32font.c (w32font_get_cache): Adjust the argument type.
11752
11753 * xfont.c (xfont_get_cache): Adjust the argument type.
11754
11755 * font.h (struct font_driver): Change argument type of get_cache.
11756
11757 * xftfont.c (xftfont_start_for_frame): Delete prototype.
11758
11759 * font.c (Ffont_get): Fix arguments to Fassoc.
11760 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
11761 (font_clear_cache): New function.
11762 (font_list_entities, font_matching_entity): Use font_get_cache.
11763 (font_update_drivers): Call font_clear_cache when finishing a driver.
11764
11765 * fontset.c (fontset_find_font): Fix previous change.
11766
117672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11768
11769 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
11770 dpyinfo->font_table.
11771 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
11772 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
11773
11774 * font.c (font_at): Handle the case that the arg C is negative.
11775 Handle the unibyte case.
11776 (Ffont_at): Call font_at with the arg C -1.
11777
11778 * xdisp.c (handle_auto_composed_prop): Don't get a character at
11779 the position here, and call font_at with the arg C -1.
11780 Don't check the range of the existing composition at the point.
11781
117822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11783
11784 * fontset.c (fontset_add): New args charset_id and family.
11785 Change caller.
11786 (load_font_get_repertory, fontset_find_font): Assume that
11787 font_spec is always a font-spec object.
11788 (Fset_fontset_font): Always store a font-spec object in a fontset.
11789
11790 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
11791 instead of get_property_and_range.
11792
117932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11794
11795 * xftfont.c (struct xftfont_info): Delete the member ft_face.
11796 (xftfont_open): Don't keep locking face.
11797 (xftfont_close): Don't unlock face.
11798 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
11799
11800 * fontset.c (fontset_find_font): Don't prefer a font of
11801 supplementary charset.
11802
118032008-02-01 Kenichi Handa <handa@m17n.org>
11804
11805 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
11806 script, langsys_tag to langsys, new member script.
11807 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 11808 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
11809 listing to the script specified in that property. Fix arg to
11810 OTF_check_features.
11811
118122008-02-01 Jason Rumney <jasonr@gnu.org>
11813
11814 * w32font.h: New file.
11815
11816 * w32font.c: Include it.
11817 (struct w32font_info): Add owning_frame field. Move to w32font.h.
11818 (w32font_open): Set owning_frame.
11819 (w32font_text_extents): Use owning_frame.
11820 (struct font_callback_data): Add opentype_only field.
11821 (add_font_entity_to_list): Use it to filter fonts.
11822 Don't check against full name.
11823 (w32font_list_internal): New function.
11824 (w32font_list): Use it.
11825 (w32font_match_internal): New function.
11826 (w32font_match): Use it.
11827 (w32font_open_internal): New function.
11828 (w32font_open): Use it.
11829 (w32font_get_cache, w32font_close, w32font_has_char)
11830 (w32font_encode_char, w32font_text_extents, w32font_draw):
11831 Make non-static.
11832
11833 * makefile.w32-in (w32font.o): Depend on w32font.h.
11834
118352008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11836
11837 * charset.c (Fdefine_charset_internal): Record a supplementary
11838 charset at the tail of Vcharset_order_list.
11839
11840 * font.c (Ffont_shape_text): Fix the return value.
11841
11842 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
11843
11844 * xdisp.c (handle_auto_composed_prop): Fix previous change.
11845
118462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11847
11848 * ftfont.c (struct OpenTypeSpec): New struct.
11849 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
11850 (ftfont_get_open_type_spec): New function.
11851 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
11852
11853 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
11854
118552008-02-01 Jason Rumney <jasonr@gnu.org>
11856
11857 * w32font.c (add_font_entity_to_list): Compare only the beginning
11858 of full name.
11859
118602008-02-01 Kenichi Handa <handa@m17n.org>
11861
11862 * xdisp.c (handle_auto_composed_prop): Simplify the code.
11863 Never return HANDLED_RECOMPUTE_PROPS.
11864
118652008-02-01 Kenichi Handa <handa@m17n.org>
11866
11867 * font.c (font_gstring_produce): Delete it.
11868
11869 * composite.h (COMPOSITION_METHOD):
11870 Handle COMPOSITION_WITH_GLYPH_STRING.
11871
118722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11873
11874 * xfont.c (Qx): Delete.
11875 (syms_of_xfont): Don't initialize Qx.
11876
11877 * composite.h (enum composition_method):
11878 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
11879
118802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11881
11882 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
11883 (choose_face_font): Accept new form of font-spec.
11884
11885 * frame.h (font_driver_list): Declare it unconditionally.
11886 (struct frame): Define members font_driver_list and font_data_list
11887 unconditionally.
11888
11889 * fontset.c: Include "font.h" unconditionally.
11890 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
11891 (Fset_fontset_font): Accept a font-spec object.
11892
11893 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
11894 PIXEL_SIZE part a wild card.
11895
11896 * dispextern.h (struct glyph_string): Define members clip and
11897 num_clips unconditionally.
11898 (struct face): Define members font_info and extra unconditionally.
11899
11900 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
11901 ftfont_info only when HAVE_LIBOTF is defined.
11902
119032008-02-01 Andreas Schwab <schwab@suse.de>
11904
11905 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
11906 and end.
11907
119082008-02-01 Jason Rumney <jasonr@gnu.org>
11909
11910 * w32font.c (w32font_driver): Add new fields.
11911
119122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11913
11914 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
11915 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
11916 (LIBES): Add @M17N_FLT_CFLAGS@.
11917
11918 * composite.c (compose_text): Don't treat the new style
11919 composition specially.
11920
11921 * emacs.c (main): Call syms_of_font unconditionally.
11922
11923 * font.h (FONT_ENTITY_NOT_LOADABLE)
11924 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
11925 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
11926 (struct font_driver): New member shape.
11927 (font_registry_charsets): Extern it.
11928 (font_find_for_lface, font_prepare_composition): Adjust prototype.
11929 (font_otf_capability, font_drive_otf): Delete their externs.
11930
11931 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
11932 (font_charset_alist, font_registry_charsets): Move from xfont.c
11933 and rename.
11934 (font_prop_validate_otf): New function.
11935 (font_property_table): Register it for QCotf.
11936 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
11937 (font_drive_otf): Delete.
11938 (font_prepare_composition): New arg F. Adjust for the change of
11939 lispy gstring.
11940 (font_find_for_lface): New arg C.
11941 (font_load_for_face): Adjust for the change of font_find_for_lface.
11942 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
11943 lispy gstring.
11944 (Ffont_shape_text): New function.
11945 (Fopen_font): If the font size is not given, use 12-pixel.
11946 (Ffont_at): New arg STRING.
11947 (syms_of_font): Initalize font_charset_alist.
11948 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
11949 conditionally.
11950
11951 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
11952 fonts of the same font-spec. Change the format of RFONT-DEF.
11953 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
11954 Adjust for the change of RFONT-DEF.
11955 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
11956
11957 * ftfont.h: New file.
11958
11959 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
11960 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11961 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11962 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
11963 font_otf_capability and font_drive_otf, set ftfont_shape.
11964 (ftfont_list): Adjust for the change of :otf property value.
11965 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
11966 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
11967 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
11968 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11969 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
11970 (otf_gstring, gstring, m17n_flt_initialized): New variables.
11971
11972 * w32term.c (x_draw_composite_glyph_string_foreground):
11973 Adjust for the change of lispy gstring.
11974
11975 * xdisp.c (handle_composition_prop): Adjust for the change of
11976 lispy gstring. Call a function for auto-composition with the
11977 third arg it->window.
11978 (fill_composite_glyph_string): Adjust for the change of lispy string.
11979 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
11980
11981 * xfaces.c (set_font_frame_param): Adjust for the change of
11982 font_find_for_lface.
11983
11984 * xfont.c (x_font_charset_alist): Move to font.c and rename.
11985 (xfont_registry_charsets): Likewise. Change caller.
11986 (syms_of_xfont): Don't handle x_font_charset_alist.
11987
11988 * xftfont.c: Include "ftfont.h".
11989 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11990 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11991 (xftfont_close) [HAVE_LIBOTF]: Close otf.
11992 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11993 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
11994 Set xftfont_driver.shape to xftfont_shape.
11995
11996 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
11997 the change of lispy gstring.
11998
119992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12000
12001 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12002
120032008-02-01 Jason Rumney <jasonr@gnu.org>
12004
12005 * w32font.c (w32font_draw): Fill background manually.
12006
120072008-02-01 Jason Rumney <jasonr@gnu.org>
12008
12009 * font.c (Qfontp): Remove unused symbol.
12010 (QCantialias): New symbol.
12011 (syms_of_font): Define it.
12012 (font_property_table): Set a validator for QCantialias.
12013
12014 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
12015 Define if not already.
12016 (QCfamily): Share with xfaces.c.
12017 (Qstandard, Qsubpixel, Qnatural): New symbols.
12018 (syms_of_w32font): Define them. Don't define QCfamily here.
12019 (w32_antialias_type, lispy_antialias_type): New functions.
12020 (w32_enumfont_pattern_entity): New arg requested_font.
12021 Set antialias parameter if non-default was requested.
12022 (fill_in_logfont): Fill in lfQuality if :antialias specified.
12023
120242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12025
12026 * lread.c (read1): Undo the previous change.
12027
120282008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
12029
12030 * frame.c (Fdelete_frame): Call font_update_drivers only when
12031 USE_FONT_BACKEND is defined.
12032
120332008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12034
12035 * font.h (struct font_bitmap): New member bits_per_pixel.
12036 (struct font_driver): New members start_for_frame and end_for_frame.
12037 (struct font_data_list): New struct.
12038 (font_put_frame_data, font_get_frame_data): Extern them.
12039
12040 * frame.h (struct frame): New member font_data_list.
12041
12042 * font.c (font_update_drivers): Call driver->start_for_frame and
12043 driver->end_for_frame at proper timings.
12044 (font_put_frame_data, font_get_frame_data): New functions.
12045 (Ffont_spec): Add usage in the docstring.
12046
12047 * frame.c (make_frame): Initialize f->font_data_list to NULL.
12048 (Fdelete_frame): Call font_update_drivers.
12049
12050 * xftfont.c (struct xftface_info): Delete the member xft_draw.
12051 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
12052 (xftfont_get_xft_draw): New function.
12053 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
12054 (xftfont_end_for_frame): New function.
12055 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
12056
12057 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
12058 Change argument. Cache GCs in the per-frame data.
12059 (struct ftxfont_frame_data): New struct.
12060 (ftxfont_draw_bitmap): New arg gc_fore and flush.
12061 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
12062 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
12063 (ftxfont_end_for_frame): New function.
12064 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
12065
12066 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
12067
120682008-02-01 Kenichi Handa <handa@m17n.org>
12069
12070 * xselect.c (Vselection_coding_system)
12071 (Vnext_selection_coding_system): Delete them.
12072 (syms_of_xselect): Don't declare selection-coding-system and
12073 next-selection-coding-system. They are declared in select.el.
12074
120752008-02-01 Jason Rumney <jasonr@gnu.org>
12076
12077 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
12078
12079 * w32fns.c: Include imm.h.
12080 (get_composition_string_fn, get_ime_context_fn): New optional
12081 system functions.
12082 (globals_of_w32fns): Load them from imm32.dll.
12083 (ignore_ime_char): New flag.
12084 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
12085 WM_IME_ENDCOMPOSITION messages.
12086
12087 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
12088 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
12089
120902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12091
12092 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
12093 (READCHAR_REPORT_MULTIBYTE): New macro.
12094 (readchar): New 2nd arg MULTIBYTE.
12095 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
12096 Make symbol's name multibyte according to the multibyteness of the
12097 source.
12098
120992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12100
12101 * xfaces.c (face_for_overlay_string): Call lookup_face with
12102 correct arguments (fix of synching with the trunk).
12103
121042008-02-01 Kenichi Handa <handa@m17n.org>
12105
12106 * font.c (font_prop_validate_symbol, font_prop_validate_style)
12107 (font_prop_validate_non_neg, font_prop_validate_spacing):
12108 Delete argument prop_index.
12109 (font_property_table): Change arguments to validater. Change Callers.
12110 (font_lispy_object): Delete.
12111 (font_at): Use font_find_object instead fo font_lispy_object.
12112
121132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12114
12115 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
12116 and file names.
12117
121182008-02-01 Jason Rumney <jasonr@gnu.org>
12119
12120 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
12121 (font_matches_spec): Remove debug output.
12122 (add_font_entity_to_list): Avoid using substituted fonts.
12123
121242008-02-01 Jason Rumney <jasonr@gnu.org>
12125
12126 * doc.c (Fsnarf_documentation):
12127 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
12128
121292008-02-01 Miles Bader <miles@gnu.org>
12130
12131 * dispextern.h (struct glyph_row): Only define "clip" field if
12132 HAVE_WINDOW_SYSTEM is defined.
12133
121342008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12135
12136 Fix up multi-tty merge.
12137
12138 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
12139 and indentation.
12140
12141 * xfaces.c (free_realized_face, clear_face_gcs):
12142 Include font_done_for_face in the input_blocked section, just in case.
12143
12144 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
12145 (get_char_face_and_encoding): Undo last change and remove the *other*
12146 duplicate definition (i.e. keep the one that's better scoped and that
12147 includes code for the font-backend).
12148
12149 * terminal.c (create_terminal): Default keyboard_coding to
12150 `no-conversion' and terminal_coding to `undecided'.
12151
12152 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
12153
12154 * fontset.c (free_realized_fontsets): Check that the table entry does
12155 contain a fontset before trying to compare it to `base'.
12156
12157 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
12158 syms_of_charset, and syms_of_coding earlier because init_window_once
12159 now needs Vcoding_system_hash_table to be setup.
12160
12161 * coding.h (default_buffer_file_coding): Remove.
12162
12163 * coding.c (default_buffer_file_coding): Remove.
12164 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
12165 than ->symbol, and use the terminal-local coding system.
12166 (syms_of_coding): Don't setup the coding-systems that are not
12167 terminal-local.
12168 (Fdefine_coding_system_internal): Use XCAR/XCDR.
12169
12170 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
12171 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
12172
12173 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
12174 in chartab.c and were re-added here by mistake.
12175 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
12176
12177 * doc.c (Fsnarf_documentation):
12178 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
12179 src to etc.
12180
12181 * ChangeLog.10: Add mistakenly removed entry.
12182
121832008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
12184
12185 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
12186
121872008-02-01 Miles Bader <miles@gnu.org>
12188
12189 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
12190 Add extra args to FACE_FOR_CHAR.
12191
121922008-02-01 Kenichi Handa <handa@m17n.org>
12193
12194 * keymap.c (where_is_internal_1): If key is a cons, store the copy
12195 in sequence.
12196
12197 * chartab.c (map_sub_char_table, map_char_table): If the range
12198 contains just one character, call the function with that character
12199 even if the depth is not 3.
12200
122012008-02-01 Jason Rumney <jasonr@gnu.org>
12202
12203 * w32font.c (w32font_text_extents): Calculate metrics for the
12204 whole string.
12205
122062008-02-01 Jason Rumney <jasonr@gnu.org>
12207
12208 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
12209
122102008-02-01 Jason Rumney <jasonr@gnu.org>
12211
12212 * w32term.c (x_set_glyph_string_clipping): Use
12213 get_glyph_string_clip_rects.
12214 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12215 Adjust for the change of struct glyph_string.
12216
12217 * w32font.c (w32font_draw): Do clipping here.
12218
122192008-02-01 Kenichi Handa <handa@m17n.org>
12220
12221 * xftfont.c (xftfont_draw): Adjust for the change of struct
12222 glyph_string.
12223
12224 * xterm.c (x_set_glyph_string_clipping): Use
12225 get_glyph_string_clip_rects.
12226 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12227 Adjust for the change of struct glyph_string.
12228
12229 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
12230 the resulting clip(s}.
12231 (expose_overlaps): Add arg r. Change callers. Set it to
12232 row->clip temporarily.
12233 (expose_window): Redraw rows overlapping the exposed area.
12234
12235 * dispextern.h (struct glyph_row): New member clip.
12236 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
12237 clip_height, new member clip, and num_clips.
12238
122392008-02-01 Kenichi Handa <handa@m17n.org>
12240
12241 * data.c (Fchar_or_string_p): Fix docstring.
12242
122432008-02-01 Kenichi Handa <handa@m17n.org>
12244
12245 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
12246 create a temporary XftDraw object.
12247
122482008-02-01 Kenichi Handa <handa@m17n.org>
12249
12250 * font.c (Ffontp): Fix docstring.
12251
12252 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
12253 strong evidence of ISO-2022.
12254
122552008-02-01 Kenichi Handa <handa@m17n.org>
12256
12257 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
12258 SYNTAX_ENTRY_FOLLOW_PARENT.
12259
122602008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12261
12262 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
12263 its type.
12264 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
12265 Update to the new type of weak_hash_tables and next_weak.
12266
12267 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
12268 a plain C pointer to Lisp_Hash_Table.
12269
12270 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
12271 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
12272 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
12273 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
12274 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
12275 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
12276 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
12277 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
12278 (GC_EQ): Remove since they've been identical to their non-GC_
12279 alter-egos ever since the markbit was eradicated.
12280
12281 * alloc.c:
12282 * buffer.c:
12283 * buffer.h:
12284 * data.c:
12285 * fileio.c:
12286 * filelock.c:
12287 * fns.c:
12288 * frame.h:
12289 * lisp.h:
12290 * macterm.c:
12291 * print.c:
12292 * process.c:
12293 * w32fns.c:
12294 * w32menu.c:
12295 * w32term.c:
12296 * xfns.c:
12297 * xmenu.c:
12298 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
12299
123002008-02-01 Kenichi Handa <handa@m17n.org>
12301
12302 * chartab.c (map_sub_char_table): Make it work for the top-level
12303 char-table. Fix handling of parent char-table.
12304 (map_char_table): Adjust for the above change.
12305
123062008-02-01 Jason Rumney <jasonr@gnu.org>
12307
12308 * w32font.c (Qgdi): Rename from Qw32.
12309
123102008-02-01 Jason Rumney <jasonr@gnu.org>
12311
12312 * w32bdf.c (get_quoted_string): Make function static.
12313
123142008-02-01 Kenichi Handa <handa@m17n.org>
12315
12316 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
12317 bigger ascent and descent than those of the font, use them as
12318 font's ascent and descent.
12319
123202008-02-01 Kenichi Handa <handa@m17n.org>
12321
12322 * Makefile.in (${lispsource}international/charprop.el): Move this
12323 target within "#ifdef HAVE_UNIDATA" and "#endif".
12324
123252008-02-01 Kenichi Handa <handa@m17n.org>
12326
12327 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
12328 (shortlisp): Add ../lisp/language/tai-viet.el.
12329
123302008-02-01 Ulrich Mueller <ulm@gentoo.org>
12331
12332 * Makefile.in (${lispsource}international/charprop.el): Depend on
12333 temacs${EXEEXT}.
12334
123352008-02-01 Jason Rumney <jasonr@gnu.org>
12336
12337 * w32font.c (w32font_close): Delete the GDI font object.
12338
12339 * w32menu.c: Include character.h.
12340
12341 * w32proc.c: Likewise.
12342
12343 * w32select.c: Likewise.
12344
12345 * makefile.w32-in (w32proc.o): Depend on character.h.
12346
123472008-02-01 Jason Rumney <jasonr@gnu.org>
12348
12349 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
12350
12351 * w32menu.c (syms_of_w32menu): Likewise.
12352
12353 * w32proc.c (syms_of_ntproc): Likewise.
12354
12355 * w32select.c (syms_of_w32select): Likewise.
12356
12357 * w32term.c (syms_of_w32term): Likewise.
12358
123592008-02-01 Jason Rumney <jasonr@gnu.org>
12360
12361 * w32font.c (w32font_draw): Delete brush after using it.
12362
123632008-02-01 Jason Rumney <jasonr@gnu.org>
12364
12365 * w32font.c (w32font_open): Don't set font_idx.
12366 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
12367 to font settings.
12368 (w32font_draw): Fill background explicitly.
12369
123702008-02-01 Jason Rumney <jasonr@gnu.org>
12371
12372 * w32term.c (w32_initialize): Don't call w32font_initialize.
12373
12374 * w32font.c (w32font_info): Remove subranges.
12375 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
12376 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
12377 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
12378 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
12379 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
12380 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
12381 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
12382 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
12383 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
12384 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
12385 New symbols.
12386 (font_callback_data): New struct.
12387 (w32font_list, w32font_match): Use it.
12388 (w32font_open): Don't populate subranges.
12389 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
12390 (w32font_encode_char): Always return unicode code-point as-is.
12391 (w32font_text_extents): Supply a transformation matrix to
12392 GetGlyphOutline. Never look up by glyph index. Avoid looping
12393 twice. Use unicode version of GetTexExtentPoint32 instead of
12394 glyph index version.
12395 (set_fonts_frame): Remove.
12396 (w32_enumfont_pattern_entity): Add frame parameter, use it to
12397 set frame parameter. Use backward compatible fake foundries.
12398 Save generic family in extra slot under QCfamily. Make width slot
12399 constant. Save QCspacing value. Save list of scripts instead of
12400 binary subranges.
12401 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
12402 (add_font_entity_to_list): Use font_callback_data struct. Filter
12403 unwanted fonts.
12404 (add_one_font_entity_to_list): Use font_callback_data struct.
12405 (w32_registry): Default to iso10646_1.
12406 (fill_in_logfont): Use dpi from extra slot. Don't bother with
12407 string font registries. Don't fill in font name if it is a generic
12408 family name, fill family instead. Use spacing, family and script
12409 extra info to fill pitch, family and charset fields.
12410 (list_all_matching_fonts): Use font_callback_data struct.
12411 (unicode_range_for_char): Remove.
12412 (font_supported_scripts): New function.
12413 (w32font_initialize): Remove.
12414 (syms_of_w32font): Update which symbols are defined.
12415
124162008-02-01 Jason Rumney <jasonr@gnu.org>
12417
12418 * font.c (font_pixel_size): Reverse assq_no_quit args.
12419
12420 * w32term.h (FONT_WIDTH): Report max width, not average.
12421 (FONT_MAX_WIDTH): Remove.
12422 (FONT_AVG_WIDTH): New macro.
12423
12424 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
12425 redefinition of FONT_WIDTH.
12426
12427 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
12428 (w32_cache_char_metrics): Use FONT_WIDTH.
12429
12430 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
12431
124322008-02-01 Jason Rumney <jasonr@gnu.org>
12433
12434 * w32font.c (w32font_open): Make lfHeight negative.
12435
12436 * w32fns.c (x_default_font_parameter): Use new style font name.
12437 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
12438
124392008-02-01 Jason Rumney <jasonr@gnu.org>
12440
12441 * w32font.c (QCsubranges): New symbol.
12442 (w32font_open, w32font_has_char): Get subranges from subproperty
12443 of extra.
12444 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
12445 (syms_of_w32font): Define :subranges symbol.
12446
12447 * font.c (font_put_extra): Expose externally.
12448
12449 * font.h (font_put_extra): Move declaration from font.c.
12450
12451 * font.c (Ffont_get): Use font driver to determine otf capability.
12452 (adjust_anchor): Check if driver defines anchor_point before using.
12453
12454 * w32font.c (w32font_open): Handle size, height and pixel_size better.
12455 (w32font_draw): Use options.
12456 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
12457 Fix detection of truetype fonts.
12458 (registry_to_w32_charset): Handle charsets other than iso8859-1
12459 expressed as lisp symbols.
12460 (w32_registry): Express charset as lisp symbol.
12461 (fill_in_logfont): Reverse pixel and point height logic.
12462 Don't set width here. Set quality to default.
12463
12464 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
12465 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
12466
12467 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12468 Remove redundant loop and allocation.
12469
12470 * makefile.w32-in (font.o, w32font.o): New objects.
12471 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
12472 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
12473
12474 * xdisp.c (fill_composite_glyph_string): Make the first arg to
12475 STORE_XCHARB a valid l-value.
12476
12477 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
12478 calculations for non-Truetype fonts.
12479 (x_draw_glyph_string): Sync with xterm.c.
12480 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12481 Remove redundant code.
12482 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
12483
12484 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
12485 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
12486
12487 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
12488 (x_to_w32_charset, w32_to_x_charset): Expose externally.
12489
12490 * w32font.c: New file for w32 font backend.
12491
124922008-02-01 Kenichi Handa <handa@m17n.org>
12493
12494 * term.c: Don't include "buffer.h" twice.
12495
124962008-02-01 Kenichi Handa <handa@m17n.org>
12497
12498 * character.c (Funibyte_string): New function.
12499 (syms_of_character): Defsubr it.
12500
125012008-02-01 Jason Rumney <jasonr@gnu.org>
12502
12503 * w32term.c [USE_FONT_BACKEND]:
12504 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
12505 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
12506 (x_draw_glyph_string, x_draw_glyph_string_foreground)
12507 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
12508 (x_free_frame_resources): Sync with xterm.c.
12509
125102008-02-01 Andreas Schwab <schwab@suse.de>
12511
12512 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
12513 char-table size.
12514
125152008-02-01 Kenichi Handa <handa@m17n.org>
12516
12517 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
12518
125192008-02-01 Kenichi Handa <handa@m17n.org>
12520
12521 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
12522 font_otf_gpos, add font_drive_otf.
12523
12524 * fontset.c (fontset_find_font): Pay attention to font size
12525 specified for a font.
12526 (reorder_font_vector): Check contents of font_def.
12527
12528 * font.c (struct otf_list): Delete it.
12529 (otf_list): Make it a lisp variable.
12530 (otf_open): Use lispy otf_list.
12531 (generate_otf_features): Rename from parse_gsub_gpos_spec.
12532 (check_otf_features): New function.
12533 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12534 New functions.
12535 (font_drive_otf): New function merging font_otf_gsub and
12536 font_otf_gpos.
12537 (font_open_for_lface): New arg spec. Change argument order.
12538 (font_load_for_face): Adjust for the change of font_open_for_lface.
12539 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
12540 Ffont_otf_gpos.
12541 (syms_of_font): Staticpro otf_list. Delete defsubr of
12542 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
12543
12544 * xfaces.c (set_font_frame_param): Adjust for the change of
12545 font_open_for_lface.
12546
12547 * font.h (font_open_for_lface): Adjust prototype.
12548 (struct font_driver): Delete members otf_gsub and otf_gpos, add
12549 member otf_drive.
12550 (font_otf_gsub, font_otf_gpos): Delete externs.
12551 (font_drive_otf): Extern it.
12552
125532008-02-01 Kenichi Handa <handa@m17n.org>
12554
12555 * font.c (font_at): If the window W is not on a window system,
12556 return Qnil.
12557
12558 * coding.c (produce_chars, encode_coding): Don't call
12559 insert_from_gap if no characters to produce.
12560
125612008-02-01 Kenichi Handa <handa@m17n.org>
12562
12563 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
12564 Fclear_face_cache.
12565
12566 * xfaces.c (face_for_font): Check also face->font==font->font.font.
12567
125682008-02-01 Miles Bader <miles@gnu.org>
12569
12570 * emacs.c (main): Change default value of `enable_font_backend' to 1.
12571 Parse "--disable-font-backend" option.
12572 (standard_args): Add "--disable-font-backend" option.
12573
125742008-02-01 Kenichi Handa <handa@m17n.org>
12575
12576 * fontset.c (fontset_find_font): New function.
12577 (fontset_font): Use fontset_find_font.
12578 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
12579 Register the specified font for all Latin characters.
12580 (new_fontset_from_font): Register the specified font for all Latin
12581 characters.
12582 (dump_fontset): For a realized fontset, include the base fontset
12583 name in the returned vector.
12584
125852008-02-01 Kenichi Handa <handa@m17n.org>
12586
12587 * character.h (CHAR_STRING): Cast C to unsigned on calling
12588 char_string.
12589
12590 * character.c (char_string): Type of arg C changed to unsigned.
12591 Signal an error if C is an invalid character code.
12592
12593 * editfns.c (general_insert_function, Fchar_to_string):
12594 Use CHARACTERP, not INTEGERP.
12595
125962008-02-01 Kenichi Handa <handa@m17n.org>
12597
12598 * character.h (MIN_MULTIBYTE_LEADING_CODE)
12599 (MAX_MULTIBYTE_LEADING_CODE): New macros.
12600
12601 * regex.c (analyse_first): Fix for multibyte characters in "case
12602 charset:" and "case categoryspec:".
12603
126042008-02-01 Andreas Schwab <schwab@suse.de>
12605
12606 * Makefile.in (LIBES): Move standard libraries to the end.
12607
126082008-02-01 Kenichi Handa <handa@m17n.org>
12609
12610 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
12611 nonzero, don't shrink the buffer nextb.
12612
12613 * buffer.h (struct buffer_text): New member inhibit_shrinking.
12614
12615 * coding.c (coding_alloc_by_making_gap): New arg offset.
12616 (alloc_destination): Call coding_alloc_by_making_gap with the arg
12617 offset.
12618 (decode_coding_iso_2022): Update coding->safe_charsets.
12619 (decode_coding_gap): Temporarily set
12620 current_buffer->text->inhibit_shrinking to 1.
12621
126222008-02-01 Kenichi Handa <handa@m17n.org>
12623
12624 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
12625 indexing into elements of s->cmp and s->char2b.
12626
126272008-02-01 Juanma Barranquero <lekktu@gmail.com>
12628
12629 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
12630
126312008-02-01 Kenichi Handa <handa@m17n.org>
12632
12633 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
12634 target_multibyte instead of multibyte.
12635 (re_match_2_internal): Call bcmp_translate with target_multibyte.
12636 (bcmp_translate): Change the argument name from multibyte to
12637 target_multibyte.
12638
126392008-02-01 Kenichi Handa <handa@m17n.org>
12640
12641 These changes are to compile a regexp into a pattern that can be
12642 used both for multibyte and unibyte targets.
12643
12644 * Makefile.in (search.o): Depend on charset.h.
12645
12646 * character.c (multibyte_char_to_unibyte_safe): New function.
12647
12648 * search.c: Include "charset.h".
12649 (compile_pattern_1): Delete argument multibyte. Don't set
12650 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
12651 (compile_pattern): Don't compare cp->buf.target_multibyte.
12652 Compare cp->buf.charset_unibyte.
12653 (compile_pattern): Set cp->buf.target_multibyte.
12654
12655 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
12656
12657 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
12658
12659 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
12660 multibyte. Change callers.
12661 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
12662 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
12663 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
12664 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
12665 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
12666 (regex_compile): Make the compiled pattern usable both for
12667 multibyte and unibyte targets.
12668 (analyse_first): Make the fastmap usable both for multibyte and
12669 unibyte targets.
12670 (TRANSLATE_VIA_MULTIBYTE): Delete.
12671 (re_match_2_internal): Pay attention to the case that the
12672 multibyteness of bufp and target may be different.
12673
126742008-02-01 Kenichi Handa <handa@m17n.org>
12675
12676 * xdisp.c (x_produce_glyphs): When a font is not found, make the
12677 empty box occupy at least one column width.
12678
126792008-02-01 Miles Bader <miles@gnu.org>
12680
12681 * Makefile.in: Remove redundant HAVE_XFT clause.
12682
126832008-02-01 Kenichi Handa <handa@m17n.org>
12684
12685 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
12686
126872008-02-01 Kenichi Handa <handa@m17n.org>
12688
12689 * fontset.c (Finternal_char_font): Fix for the case of POSITION
12690 being nil.
12691
126922008-02-01 Kenichi Handa <handa@m17n.org>
12693
12694 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
12695
126962008-02-01 Kenichi Handa <handa@m17n.org>
12697
12698 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
12699
127002008-02-01 Kenichi Handa <handa@m17n.org>
12701
12702 * search.c (simple_search): Fix previous change.
12703
127042008-02-01 Kenichi Handa <handa@m17n.org>
12705
12706 * xftfont.c (ftfont_font_format): Extern declaration.
12707
12708 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
12709
12710 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
12711 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
12712
12713 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
12714 (ftfont_font_format): Fix previous change.
12715
12716 * font.h (Ffont_xlfd_name): EXFUN it.
12717
12718 * font.c (font_parse_xlfd): Fix the array size of `f'.
12719 (register_font_driver): Use EQ to compare driver->type.
12720
12721 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
12722 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
12723 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
12724
127252008-02-01 Kenichi Handa <handa@m17n.org>
12726
12727 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
12728 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
12729
127302008-02-01 Kenichi Handa <handa@m17n.org>
12731
12732 * xfont.c (xfont_open): Set font->format.
12733
12734 * xftfont.c (xftfont_open): Set font->format.
12735
12736 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
12737 (ftfont_list): Include FC_FONTFORMAT in FcObject.
12738 (ftfont_open): Set font->format.
12739 (ftfont_font_format): New function.
12740
12741 * font.h (struct font): New member format.
12742
12743 * font.c (Qopentype): New variable.
12744 (syms_of_font): Defsym it.
12745 (Fquery_font): Change the format of the last element of the return
12746 value.
12747
127482008-02-01 Kenichi Handa <handa@m17n.org>
12749
12750 * xfns.c (xic_create_xfontset): Try the default fontset name as a
12751 last resort.
12752
127532008-02-01 Kenichi Handa <handa@m17n.org>
12754
12755 * coding.c (detect_coding_charset): Fix detection of multi-byte
12756 charset.
12757
127582008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
12759
12760 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
12761
127622008-02-01 Kenichi Handa <handa@m17n.org>
12763
12764 * xdisp.c (get_next_display_element): Set it->face_id for the
12765 first component of a composition.
12766 (x_produce_glyphs): Check if the font is changed or not for composition.
12767
127682008-02-01 Kenichi Handa <handa@m17n.org>
12769
12770 * fontset.c (Qlatin): New variable.
12771 (syms_of_fontset): Define it as a lisp symbol.
12772 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
12773
127742008-02-01 Kenichi Handa <handa@m17n.org>
12775
12776 * font.c (font_unparse_fcname): Pay attention to the case that
12777 some of font property is a null string.
12778
127792008-02-01 Kenichi Handa <handa@m17n.org>
12780
12781 * term.c: Include "composite.h".
12782 (encode_terminal_code): Output all components of composition.
12783 Check the size of encode_terminal_src.
12784 (produce_glyphs): For composition, call produce_composite_glyph.
12785 (append_composite_glyph, produce_composite_glyph): New functions.
12786
12787 * xdisp.c (x_produce_glyphs): In handling composition, if a font
12788 is not found, get font_info from the current ascii face.
12789
127902008-02-01 Kenichi Handa <handa@m17n.org>
12791
12792 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
12793 buffer-file-name to Qnil before calling insert_from_buffer.
12794
12795 * font.c (font_unparse_fcname): Pay attention to the case that
12796 foundry is a null string.
12797
127982008-02-01 Kenichi Handa <handa@m17n.org>
12799
12800 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
12801
12802 * font.c (Qunicode_sip): New variable.
12803 (syms_of_font): Declare it as a Lisp symbol.
12804
12805 * font.h (Qunicode_sip): Extern it.
12806
128072008-02-01 Kenichi Handa <handa@m17n.org>
12808
12809 * composite.c (get_composition_id): Pay attention to TAB component.
12810
12811 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
12812 TAB. Adjust for the change of s->char2b which always points to
12813 the first element of allocated memory.
12814
12815 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
12816
12817 * xdisp.c (handle_composition_prop): Set it->c to the first
12818 non-TAB component.
12819 (fill_composite_glyph_string): Change argument.
12820 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
12821 (x_produce_glyphs): Fix handling of left/right padding.
12822
128232008-02-01 Kenichi Handa <handa@m17n.org>
12824
12825 * coding.c (detect_coding_system): Fix for handling off
12826 inhibit_iso_escape_detection. Fix for the case that no coding
12827 system is defined for a specific coding category.
12828
128292008-02-01 Kenichi Handa <handa@m17n.org>
12830
12831 * font.c (font_matching_entity): Delete unused local var.
12832
12833 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
12834 opening a font.
12835
12836 * fileio.c (Finsert_file_contents): On recovering a file, assume
12837 Unix-like eol.
12838 (choose_write_coding_system): On auto-saving a file, force
12839 Unix-like eol.
12840
12841 * coding.c (setup_coding_system): Fix setting of
12842 coding->common_flags based on eol_type.
12843 (coding_inherit_eol_type): If PARENT is not nil, be sure to
12844 inherit from it.
12845
128462008-02-01 Kenichi Handa <handa@m17n.org>
12847
12848 * alloc.c (NSTATICS): Increas to 0x600.
12849
128502008-02-01 Kenichi Handa <handa@m17n.org>
12851
12852 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
12853 (ftfont_list): Don't check :name property.
12854 (ftfont_match): New function.
12855 (ftfont_pattern_entity): If the pattern doesn't contain
12856 FC_SPACING, don't assume FC_MONO.
12857
12858 * font.h (struct font_driver): New member `match'.
12859 (font_update_drivers): Adjust prototype.
12860
12861 * font.c (font_parse_fcname, font_parse_name): Don't change :name
12862 property of FONT.
12863 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
12864 them unconditionally.
12865 (font_matching_entity): New function.
12866 (font_open_by_name): Try font_matching_entity if exact match is
12867 not found.
12868 (font_update_drivers): Delete the arg FONT. Return a list of
12869 actually used backends. Don't free faces, font caches here.
12870 Don't store data in frame parameters. Don't call x_set_font.
12871 (Ffont_spec): Store :name property as is.
12872 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
12873 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
12874 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
12875 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
12876 Call font->driver->otf_gsub instead of font_otf_gsub.
12877
12878 * frame.c (x_set_font_backend): Do more works that were done in
12879 font_update_drivers before.
12880
12881 * xfont.c (xfont_match): New function.
12882 (xfont_driver): Set xfont_driver.match to xfont_match.
12883 (xfont_draw): Set font in GC if necessary.
12884
12885 * ftxfont.c (ftxfont_match): New function.
12886 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
12887
12888 * xftfont.c (xftfont_match): New function.
12889 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
12890
128912008-02-01 Kenichi Handa <handa@m17n.org>
12892
12893 * font.h (struct font): New member scalable.
12894 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
12895 (font_otf_gsub): Adjust prototype.
12896
12897 * font.c (font_otf_capability): Fix handling of the default langsys.
12898 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
12899 Check the contents of SPEC.
12900 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
12901 (check_gstring): New function.
12902 (REPLACEMENT_CHARACTER): New macro.
12903 (font_otf_gsub): New arg alternate_subst. Be sure to set all
12904 glyph codes of GSTRING.
12905 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
12906 (font_prepare_composition): Set cmp->glyph_len.
12907 (font_open_entity): Set font->scalable.
12908 (Ffont_get): Handle :otf property.
12909 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
12910 functions.
12911 (Fquery_font): Use font->font.full_name.
12912 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
12913 Sfont_otf_alternates.
12914
12915 * ftfont.c (ftfont_open): Set font->font.full_name and
12916 font->font.name properly. Fix calculation of font->font.height
12917 and font->min_width.
12918
12919 * ftxfont.c (ftxfont_create_gcs): New function.
12920 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
12921 (ftxfont_draw_backgrond): Fix filling region.
12922 (ftxfont_default_fid): New function.
12923 (ftxfont_open): Set xfont->fid to the return value of
12924 ftxfont_default_fid.
12925 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
12926 (ftxfont_done_face): Free only GCs that are created by
12927 ftxfont_create_gcs.
12928 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
12929
12930 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
12931 Clip to src->width, etc (not src->clip_XXX).
12932
12933 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
12934 FontBackend frame parameter.
12935
129362008-02-01 Kenichi Handa <handa@m17n.org>
12937
12938 * font.h (struct font_driver_list): New member `on'.
12939 (Fclear_font_cache): EXFUN it.
12940 (font_update_drivers): Extern it.
12941
12942 * font.c (font_unparse_fcname): Fix typo (swidth->width).
12943 (font_list_entities): Check driver_list->on.
12944 (register_font_driver): Initalize `on' member to 0.
12945 (font_update_drivers): New function.
12946 (Fclear_font_cache): Check driver_list->on.
12947
12948 * frame.h (Qfont_backend): Extern it.
12949 (x_set_font_backend): Extern it.
12950
12951 * frame.c (Qfont_backend): New variable.
12952 (frame_parms): New element for font-backend.
12953 (x_set_font_backend): New function.
12954
12955 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
12956 FontBackend frame parameter.
12957 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
12958 x_set_font_backend.
12959
12960 * xfont.c (xfont_list): Don't try listing by :name property if the
12961 name is not for XLFD.
12962
129632008-02-01 Kenichi Handa <handa@m17n.org>
12964
12965 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
12966 (LGLYPH_SET_TO): New macros.
12967 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
12968 element of G is vector or not.
12969 (font_at): Extern it.
12970
12971 * font.c: Include window.h.
12972 (font_lispy_object): New function.
12973 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
12974 end of valid glyph.
12975 (font_close_object): Fix getting (struct font *).
12976 (font_at): New function.
12977 (Ffont_get): If FONT is a font-object, get entity from it.
12978 (Ffont_make_gstring): Initialize elements of glyphs with nil.
12979 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
12980 range check.
12981 (Ffont_at): New function.
12982 (syms_of_font): Defsubr Sfont_at.
12983
12984 * xdisp.c (it_props): Move the entry for Qauto_composed to just
12985 before the entry for Qcomposition.
12986 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
12987 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
12988 the font in gstring.
12989 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
12990 LGLYPH_FORM (g) to detect the end of valid glyph.
12991 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
12992 we are composing with gstring.
12993
12994 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
12995 Check if adjustment is vector or not.
12996
12997 * Makefile.in (font.o): Make it depends on window.h.
12998
129992008-02-01 Kenichi Handa <handa@m17n.org>
13000
13001 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13002 adjustment is vector or not.
13003
130042008-02-01 Miles Bader <miles@gnu.org>
13005
13006 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13007
130082008-02-01 Kenichi Handa <handa@m17n.org>
13009
13010 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
13011 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
13012 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
13013
13014 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
13015 (DEVICE_DELTA): Fix typo.
13016 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
13017 LGLYPH format.
13018
13019 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13020 the change of LGLYPH format.
13021
130222008-02-01 Kenichi Handa <handa@m17n.org>
13023
13024 * ftfont.c (ftfont_list): Fix typo.
13025 (ftfont_build_basic_charsets): Don't include letters with diacritics.
13026
130272008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13028
13029 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
13030
13031 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
13032 xftface_info is non-NULL.
13033
130342008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13035
13036 * ftfont.c (ftfont_list): Move misplaced #endif.
13037
130382008-02-01 Kenichi Handa <handa@m17n.org>
13039
13040 * ftfont.c (ftfont_list): Pay attention to the case that
13041 FC_CAPABILITY is not defined.
13042
130432008-02-01 Kenichi Handa <handa@m17n.org>
13044
13045 * xftfont.c (xftfont_open): Set charset related members to -1.
13046
13047 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
13048 QCname.
13049 (ftfont_open): Set charset related members to -1.
13050
13051 * fontset.c (Votf_script_alist): New variable.
13052 (syms_of_fontset): Initialize it.
13053 (fontset_font): Delete unused variable.
13054
13055 * fontset.h (Votf_script_alist): Extern it.
13056
13057 * font.c (font_find_for_lface): Optimize code.
13058
13059 * font.h (font_close_object, font_merge_old_spec): Extern them.
13060
130612008-02-01 Kenichi Handa <handa@m17n.org>
13062
13063 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
13064 (syms_of_font): Initialize them.
13065 (font_pixel_size): Allow float value in dpi.
13066 (font_prop_validate_type): Delete.
13067 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
13068 Change caller.
13069 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
13070 (font_prop_validate_extra): Delete.
13071 (font_prop_validate_spacing): New function.
13072 (font_property_table): Add elements for all known properties.
13073 (get_font_prop_index): Rename from check_font_prop_name. New
13074 argument FROM. Change caller.
13075 (font_prop_validate): Validate all known properties.
13076 (font_put_extra): Delete argument force. Change caller.
13077 (font_expand_wildcards): Make it static. Fix the way of shrinking
13078 the possible range.
13079 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
13080 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
13081 Change caller.
13082 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
13083 (font_parse_fcname): Delete argument merge. Fix parsing of point
13084 size. Don't validate properties values here. Change caller.
13085 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
13086 (font_open_by_name): Delete unused variable.
13087 (Ffont_spec): Likewise. Validate property values.
13088 (Ffont_match_p): New function.
13089
13090 * font.h (QCscalable): Extern it.
13091 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
13092
13093 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
13094
13095 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
13096 (xfont_list_pattern): New function.
13097 (xfont_list): Use xfont_list_pattern.
13098
130992008-02-01 Kenichi Handa <handa@m17n.org>
13100
13101 * font.h (Flist_fonts): EXFUN it.
13102
131032008-02-01 Jason Rumney <jasonr@gnu.org>
13104
13105 * w32term.c (w32_initialize): Add back smoothing_type and
13106 smoothing_enabled definitions.
13107
131082008-02-01 Kenichi Handa <handa@m17n.org>
13109
13110 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
13111 s->face->font on determining underline position.
13112
131132008-02-01 Kenichi Handa <handa@m17n.org>
13114
13115 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
13116 (font_has_char): Accept font-object too.
13117 (font_find_for_lface): Try at first with a size specified in face.
13118
131192008-02-01 Kenichi Handa <handa@m17n.org>
13120
13121 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
13122 font_open_by_name.
13123
131242008-02-01 Kenichi Handa <handa@m17n.org>
13125
13126 * font.h (QCspacing, QCdpi): Extern them.
13127 (enum font_spacing): New enum.
13128 (FONT_PIXEL_SIZE_QUANTUM): New macro.
13129
13130 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
13131 (QCspacing, QCdpi): New variables.
13132 (syms_of_font): Initialize them.
13133 (font_pixel_size): New function.
13134 (font_put_extra): New function.
13135 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
13136 in FONT_EXTRA.
13137 (font_parse_fcname): Handle enumerated values (e.g. bold).
13138 Fix handling font size. Add QCname property that contains only
13139 unknown properties.
13140 (font_score): Change argument. Change caller. Pay attention to
13141 FONT_PIXEL_SIZE_QUANTUM.
13142 (font_sort_entites, font_list_entities, font_find_for_lface)
13143 (font_open_for_lface, font_open_by_name): Fix handling of font size.
13144 (Ffont_spec): Add QCname property that contains only unknown properties.
13145
13146 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
13147 include weight in listing pattern, instead check weight of each
13148 listed font. Don't include scalable in pattern. Pay attention to
13149 FONT_PIXEL_SIZE_QUANTUM.
13150
131512008-02-01 Kenichi Handa <handa@m17n.org>
13152
13153 * font.c (font_parse_fcname): Fix parsing of point-size.
13154 (font_unparse_fcname): Produce symbolic names for style properties.
13155 (font_list_entities): Handle float size correctly.
13156 (font_open_by_name): Prefer `normal' property values if the name
13157 doesn't specify them.
13158
13159 * fontset.c (Finternal_char_font): Use font_get_name, not
13160 Ffont_xlfd_name.
13161
13162 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
13163 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
13164 pattern. Don't force scalable.
13165
13166 * xftfont.c (xftfont_open): For generating a name, start from
13167 96-byte buffer.
13168
131692008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13170
13171 * frame.h (x_new_fontset2): Fix prototype.
13172
131732008-02-01 Kenichi Handa <handa@m17n.org>
13174
13175 * font.h (struct font_driver): Delete member parse_name.
13176 (font_match_p, font_get_spec, font_parse_fcname)
13177 (font_unparse_fcname): Extern them.
13178 (font_get_name): Adjust prototype.
13179
13180 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
13181 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
13182 (font_expand_wildcards): Fix handling ENCODING field. Avoid
13183 unnecessary checks for weight, slant, and swidth.
13184 (font_parse_fcname): New function.
13185 (font_unparse_fcname): New function.
13186 (font_parse_name): New function.
13187 (font_match_p): New function.
13188 (font_get_name): Change return value to Lisp string.
13189 (font_get_spec): New function.
13190 (Qunspecified, Qignore_defface): Don't extern them.
13191 (font_find_for_lface): Assume that LFACE is fully specified.
13192 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
13193 object, use it for FACE.
13194 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
13195 driver->parse_name.
13196 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
13197
13198 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
13199 prototype.
13200
13201 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
13202 argument F. Don't call Fnew_fontset. Instead, directly call
13203 make_fontset.
13204
13205 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
13206
13207 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
13208 of x_new_fontset2.
13209
13210 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
13211 (Qsans__serif): New variables.
13212 (ftfont_generic_family_list): New variable.
13213 (syms_of_ftfont): Initialize the above variables.
13214 (ftfont_pattern_entity): Delete argument NAME.
13215 (ftfont_list_generic_family): New function.
13216 (ftfont_parse_name): Delete this function.
13217 (ftfont_list): Try generic family only when FcFontList found no font.
13218 (ftfont_list_family): Fix args to FcObjectSetBuild.
13219
13220 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
13221 object in attrs[LFACE_FONT_INDEX].
13222 (set_lface_from_font_name): Cancel all changes for font-backend.
13223 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
13224 function.
13225 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
13226 font object in QCfont attribute.
13227 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
13228 (realize_default_face) [USE_FONT_BACKEND]: Call
13229 set_lface_from_font_and_fontset.
13230
13231 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
13232 "fixed", and signal error here if no suitable font was found.
13233
13234 * xfont.c (xfont_parse_name): Delete this function.
13235
13236 * xftfont.c (xftfont_open): Change coding style of error
13237 handling. Generate fontconfig's fontname pattern.
13238
13239 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
13240 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
13241
13242 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
13243 Both args FONTSET and FONT_OBJECT must be existing ones.
13244
132452008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13246
13247 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
13248
132492008-02-01 Kenichi Handa <handa@m17n.org>
13250
13251 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
13252
13253 * font.h (struct font): Fix typo.
13254
13255 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
13256 XLFD_XXX_INDEX.
13257 (enum xlfd_field_mask): New enum.
13258 (intern_font_field): Changed argument. Change caller. If digits
13259 are followed by non-digits, return a symbol.
13260 (font_expand_wildcards): New function.
13261 (font_parse_xlfd): Fix wildcard handling.
13262 (Ffont_spec): If :name is specified, reflect the info in the other
13263 properties.
13264
13265 * ftfont.c (ftfont_pattern_entity): Fix typo.
13266 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
13267 locale.
13268
132692008-02-01 Kenichi Handa <handa@m17n.org>
13270
13271 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
13272
13273 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
13274 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
13275 registry doesn't specify encoding part.
13276 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
13277 (font_open_by_name): At first try parsing the name.
13278 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
13279 as Lisp symbols.
13280
13281 * fontset.c (reorder_font_vector): Pay attention to the case that
13282 the 3rd element of font_def is nil.
13283 (fontset_font): For the default fontset, append one more fontset
13284 elements for a script-based font specification. Don't add script
13285 attribute on finding a font.
13286 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
13287 font name.
13288 (fontset_ascii_font): If a font can't be opened, return nil.
13289
13290 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
13291 (ftfont_pattern_entity): New function.
13292 (ftfont_get_cache): Assume that freetype_font_cache is already
13293 initialized.
13294 (ftfont_list): Handle the case that a file is specified in font
13295 name. Use ftfont_pattern_entity to generate entities.
13296 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
13297 (syms_of_ftfont): Initialize freetype_font_cache.
13298
13299 * xftfont.c (xftfont_open): Make the font name fontconfig's
13300 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
13301 (xftfont_close): Free font->font.name if not NULL.
13302
13303 * xfont.c (xfont_list): If script is specified for a font, return
13304 null_vector.
13305 (xfont_list_family): Declare argument type.
13306
13307 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
13308 name, set LFACE_FONT (lface) to nil.
13309
13310 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
13311 return Qnil.
13312
133132008-02-01 Kenichi Handa <handa@m17n.org>
13314
13315 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
13316 (standard_args): Add "-enable-font-backend".
13317
133182008-02-01 Kenichi Handa <handa@m17n.org>
13319
13320 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
13321 (struct xftdraw_list, xftdraw_list): Delete them.
13322 (register_xftdraw, check_xftdraw): Delete them.
13323 (xftfont_prepare_face): Don't call register_xftdraw.
13324 (xftfont_done_face): Don't call check_xftdraw.
13325 (xftfont_draw): Get background color only when with_background is
13326 nonzero.
13327
13328 * xfont.c (xfont_encode_char): Fix calculation of char2b.
13329
133302008-02-01 Kenichi Handa <handa@m17n.org>
13331
13332 These changes are for the new font handling codes.
13333
13334 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
13335 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
13336 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
13337 (FONTSRC, FONTOBJ): New variables.
13338 (obj): Add $(FONTOBJ).
13339 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
13340 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
13341 @LIBOTF_LIBS@.
13342 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
13343 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
13344
13345 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
13346
13347 * character.h (Vscript_representative_chars): Extern it.
13348
13349 * character.c (Vscript_representative_chars): New variable.
13350 (syms_of_character): Declare it as a Lisp variable.
13351
13352 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
13353 enable_font_backend is nonzero, accept the composition method
13354 COMPOSITION_WITH_GLYPH_STRING.
13355
13356 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
13357 enumeration COMPOSITION_WITH_GLYPH_STRING.
13358
13359 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
13360 members clip_x, clip_y, clip_width, and clip_height.
13361 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
13362
13363 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
13364 --enable-font-backend. Call syms_of_font.
13365
13366 * fns.c (assoc_no_quit): New function.
13367
13368 * fontset.h (FONT_INFO_FROM_FACE): New macro.
13369 (face_for_font, new_fontset_from_font)
13370 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
13371
13372 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
13373 (fontset_font, fontset_ascii, face_for_char)
13374 (make_fontset_for_ascii_face, Ffont_info)
13375 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
13376 is nonzero, use font-backend mechanism.
13377 (find_font_encoding): Make it non-static.
13378 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
13379 New functions.
13380
13381 * frame.h (struct frame): New members resx and resy.
13382 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
13383 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
13384
13385 * frame.c [USE_FONT_BACKEND]: Include "font.h".
13386 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
13387
13388 * lisp.h (assoc_no_quit): Extern it.
13389
13390 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
13391 Through out the file, use FONT_INFO_FROM_FACE instead of
13392 FONT_INFO_FROM_ID, use get_per_char_metric instead of
13393 rif->per_char_metric.
13394 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
13395 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
13396 (get_glyph_face_and_encoding, fill_composite_glyph_string)
13397 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13398 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
13399 nonzero, use font-backend mechanism.
13400 (get_per_char_metric): New function.
13401
13402 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
13403 (set_lface_from_font_name)
13404 (set_font_frame_param, free_realized_face)
13405 (prepare_face_for_display, clear_face_gcs)
13406 (Finternal_set_font_selection_order, realize_x_face)
13407 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
13408 font-backend mechanism.
13409 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
13410 (load_face_font) [USE_FONT_BACKEND]: Abort.
13411 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
13412 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
13413
13414 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
13415 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
13416 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
13417 nonzero, register all available font drivers. Call
13418 x_default_font_parameter for deciding a font.
13419 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
13420
13421 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
13422 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
13423 (x_set_glyph_string_clipping_exactly)
13424 (x_compute_glyph_string_overhangs)
13425 (x_draw_glyph_string_foreground)
13426 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
13427 (x_free_frame_resources) [USE_FONT_BACKEND]: If
13428 enable_font_backend is nonzero, use font-backend mechanism.
13429 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
13430
134312008-02-01 Kenichi Handa <handa@m17n.org>
13432
13433 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
13434 system_eol_type.
13435 (syms_of_coding): Initialize system_eol_type.
13436
13437 * process.c (Fset_process_coding_system): Inherit system's eol
13438 format if necessary.
13439
134402008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13441
13442 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
13443
134442008-02-01 Kenichi Handa <handa@m17n.org>
13445
13446 * coding.c (decode_eol): Pay attention to buffer relocation in
13447 del_range_2.
13448 (decode_coding): Call decode_eol before restoring undo_list.
13449
134502008-02-01 Kenichi Handa <handa@m17n.org>
13451
13452 * charset.c (Fdefine_charset_internal): Fix setting of
13453 emacs_mule_bytes.
13454
134552008-02-01 Kenichi Handa <handa@m17n.org>
13456
13457 * keyboard.c (read_char): Check if C is a character or not before
13458 looking up Vkeyboard_translate_table.
13459
134602008-02-01 Kenichi Handa <handa@m17n.org>
13461
13462 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
13463 condition to terminate the loop.
13464
134652008-02-01 Kenichi Handa <handa@m17n.org>
13466
13467 * coding.c (produce_composition): Compare charbuf[i] instead of
13468 args[i] against 0.
13469 (Fterminal_coding_system): Use EQ to compare Lisp objects.
13470
134712008-02-01 Kenichi Handa <handa@m17n.org>
13472
13473 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
13474 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
13475 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
13476 detect_coding.
13477 (emacs_mule_char): Handle old style (Emacs 20) component character
13478 of a composition.
13479 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
13480 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
13481 composition rule.
13482 (decode_coding_emacs_mule): Handle invalid bytes correctly.
13483
134842008-02-01 Kenichi Handa <handa@m17n.org>
13485
13486 * coding.c (encode_coding_ccl): Allocate destination dynamically
13487 when necessary.
13488
134892008-02-01 Kenichi Handa <handa@m17n.org>
13490
13491 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
13492 the loop. When quitted, show a proper error message.
13493
134942008-02-01 Kenichi Handa <handa@m17n.org>
13495
13496 * xterm.c (x_set_glyph_string_clipping_exactly): Set
13497 src->clip_head and src->clip_tail temporarily instead of src->hl.
13498
13499 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
13500 character sequence.
13501 (Fccl_execute_on_string): Use ASET, not XSET.
13502
135032008-02-01 Kenichi Handa <handa@m17n.org>
13504
13505 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
13506
135072008-02-01 Kenichi Handa <handa@m17n.org>
13508
13509 * coding.c (decode_coding): Fix the condition of terminating the
13510 decoding loop.
13511
135122008-02-01 Kenichi Handa <handa@m17n.org>
13513
13514 * data.c (Faset): On setting a character bigger than 255 in a
13515 unibyte string, signal an error instead of make the string multibyte.
13516
135172008-02-01 Kenichi Handa <handa@m17n.org>
13518
13519 * charset.c (map_charset_chars): Fix for ascii-compatible charset
13520 made by a mapping table.
13521
135222008-02-01 Kenichi Handa <handa@m17n.org>
13523
13524 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
13525 not.
13526 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
13527 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
13528
13529 * xterm.c (x_draw_composite_glyph_string_foreground): Check
13530 s->face is NULL or not.
13531
135322008-02-01 Kenichi Handa <handa@m17n.org>
13533
13534 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
13535 (x_draw_glyph_string): Fix drawing of right_overhang and
13536 left_overhang around/on cursor.
13537
13538 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
13539
135402008-02-01 Kenichi Handa <handa@m17n.org>
13541
13542 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
13543
135442008-02-01 Kenichi Handa <handa@m17n.org>
13545
13546 * coding.c (Fdefine_coding_system_internal)
13547 (Fdefine_coding_system_alias): Avoid a duplicated element in
13548 Vcoding_system_alist.
13549
135502008-02-01 Kenichi Handa <handa@m17n.org>
13551
13552 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
13553
13554 * coding.c (Qcoding_system_define_form): New variable.
13555 (syms_of_coding): Intern and staticpro it.
13556 (Fcoding_system_p): Check Qcoding_system_define_form.
13557 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
13558
13559 * coding.h (CODING_SYSTEM_P): If ID is not available, call
13560 Fcoding_system_p.
13561 (CHECK_CODING_SYSTEM): If ID is not available, call
13562 Fcheck_coding_system.
13563 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
13564 Try also Fcheck_coding_system.
13565
135662008-02-01 Kenichi Handa <handa@m17n.org>
13567
13568 * coding.c (code_conversion_restore): GCPRO arg.
13569
135702008-02-01 Kenichi Handa <handa@m17n.org>
13571
13572 * character.c (lisp_string_width): Check multibyteness of STRING.
13573
135742008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13575
13576 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
13577 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
13578 (decode_mac_font_name): Use decode_coding_c_string instead of
13579 decode_coding.
13580 (x_load_font): Initialize fontp->fontset to -1. Set
13581 fontp->encoding_type.
13582
135832008-02-01 Kenichi Handa <handa@m17n.org>
13584
13585 * search.c (search_buffer): Give up BM search on case-fold-search
13586 if one of a target character has a case-equivalence of different
13587 byte length even if that target charcter is an ASCII.
13588 (simple_search): Fix calculation of byte length of matched text.
13589 (boyer_moore): Fix handling of case-equivalent multibyte characters.
13590
135912008-02-01 Kenichi Handa <handa@m17n.org>
13592
13593 * coding.c (decode_coding): Fix handling of invalid bytes.
13594
135952008-02-01 Kenichi Handa <handa@m17n.org>
13596
13597 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
13598 Unicode characters.
13599
136002008-02-01 Kenichi Handa <handa@m17n.org>
13601
13602 * coding.c (encode_coding_object): If a pre-write-conversion
13603 function makes a new buffer, kill it.
13604
136052008-02-01 Kenichi Handa <handa@m17n.org>
13606
13607 * coding.c (QCascii_compatible_p): New variable.
13608 (syms_of_coding): Initialize it.
13609 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
13610 calling string_char.
13611 (record_conversion_result): Add `default:' case.
13612 (coding_charset_list): Delete unused variable `coding_type'.
13613 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
13614 property in the plist of the coding system.
13615 (Fcoding_system_put): Check QCascii_compatible_p.
13616
136172008-02-01 Miles Bader <miles@gnu.org>
13618
13619 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
13620 removed calculation of frame `f', as it's now used.
13621
136222008-02-01 Kenichi Handa <handa@m17n.org>
13623
13624 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
13625 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
13626 (UNIDATA): New variable.
13627 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
13628 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
13629 $(RUN_TEMACS) unconditionally.
13630
136312008-02-01 Kenichi Handa <handa@m17n.org>
13632
13633 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
13634 (admindir): New variable.
13635 ($(lispsource)international/charprop.el): New target.
13636
136372008-02-01 Miles Bader <miles@gnu.org>
13638
13639 * character.c (chars-in-region): Remove obsolete function.
13640 (syms_of_character): Remove its initialization.
13641
136422008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
13643
13644 * w32select.c (validate_coding_system)
13645 (setup_windows_coding_system): New functions.
13646 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
13647 setup_windows_coding_system.
13648 (setup_config, Fw32_get_clipboard_data): Use
13649 validate_coding_system.
13650 (Fx_selection_exists): Move call to setup_config to a place
13651 where signals are allowed.
13652
13653 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
13654 (Fcheck_coding_system): Add declarations.
13655
136562008-02-01 Kenichi Handa <handa@m17n.org>
13657
13658 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
13659
136602008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13661
13662 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
13663 string as the second argument for x_new_fontset.
13664
136652008-02-01 Kenichi Handa <handa@m17n.org>
13666
13667 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
13668 (encode_coding_object): Use safe_call instead of call2.
13669
136702008-02-01 Kenichi Handa <handa@m17n.org>
13671
13672 * fontset.c (Fset_fontset_font): Check family element of a given vector.
13673
13674 * Makefile.in (lisp): Include charprop.el.
13675
136762008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13677
13678 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
13679 Not sure if it's unnecessary.
13680
136812008-02-01 Steven Tamm <steventamm@mac.com>
13682
13683 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
13684 some possibly unnecessary fontset checking code that crashed
13685 when creating a new frame.
13686
136872008-02-01 Kenichi Handa <handa@m17n.org>
13688
13689 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
13690 lookup_face.
13691
13692 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
13693
13694 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
13695
136962008-02-01 Kenichi Handa <handa@m17n.org>
13697
13698 * coding.c: Cancel the change done in HEAD on 2008-02-01.
13699 (coding_charset_list): New function.
13700
13701 * coding.h (coding_charset_list): Extern it.
13702
137032008-02-01 Kenichi Handa <handa@m17n.org>
13704
13705 * fontset.c (Fset_fontset_font): Call find_font_encoding with
13706 concatenation of family and registry.
13707
137082008-02-01 Kenichi Handa <handa@m17n.org>
13709
13710 * character.h (BYTE8_STRING): Fix typo.
13711
13712 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
13713 string to multibyte (sync to HEAD).
13714
13715 * casefiddle.c (casify_region): Handle changes in byte-length
13716 using replace_range_2 (sync to HEAD).
13717
137182008-02-01 Andreas Schwab <schwab@suse.de>
13719
13720 * chartab.c (map_char_table): GCPRO table and arg.
13721
137222008-02-01 Kenichi Handa <handa@m17n.org>
13723
13724 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
13725 already at limit.
13726
137272008-02-01 Kenichi Handa <handa@m17n.org>
13728
13729 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
13730 instead of fast_c_string_match_ignore_case.
13731 (find_font_encoding): Change argument to Lisp_Object. Use
13732 fast_string_match_ignore_case instead of
13733 fast_c_string_match_ignore_case. Change caller.
13734
137352008-02-01 Kenichi Handa <handa@m17n.org>
13736
13737 * xdisp.c (get_next_display_element): In unibyte case, decide to
13738 display in octal form by checking a character by
13739 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
13740
13741 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
13742
13743 * character.c (unibyte_has_multibyte_table): New variable.
13744
13745 * character.h (unibyte_has_multibyte_table): Extern it.
13746 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
13747
137482008-02-01 Kenichi Handa <handa@m17n.org>
13749
13750 * coding.c (encode_coding_iso_2022): Fix handling of charset
13751 annotation.
13752
137532008-02-01 Kenichi Handa <handa@m17n.org>
13754
13755 * coding.c (setup_coding_system): If coding_system is nil, use
13756 Qundecided.
13757 (Fterminal_coding_system): Return nil if terminal coding system is
13758 `undecided'.
13759 (syms_of_coding): Define coding-system `undecided' here. Setup
13760 terminal_coding as `undecided'.
13761
137622008-02-01 Kenichi Handa <handa@m17n.org>
13763
13764 * xdisp.c (message_dolog, set_message_1): Call
13765 unibyte_char_to_multibyte with arg type int.
13766
13767 * lread.c (read1): Fix reading of a char-table.
13768
13769 * print.c (print_object): Include sub char-table in circularities
13770 detection.
13771
137722008-02-01 Kenichi Handa <handa@m17n.org>
13773
13774 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
13775 Append the found sequences in car of ARGS instead of prepending.
13776
137772008-02-01 Kenichi Handa <handa@m17n.org>
13778
13779 * fileio.c (report_file_error): Make a unibyte string from
13780 strerror (errorno).
13781 (Fsubstitute_in_file_name): Fix the arg to
13782 unibyte_char_to_multibyte. It is evaluated twice.
13783
137842008-02-01 Kenichi Handa <handa@m17n.org>
13785
13786 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
13787
137882008-02-01 Kenichi Handa <handa@m17n.org>
13789
13790 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
13791 BOM is not found.
13792 (detect_coding, detect_coding_system): Optimization for ISO-2022
13793 when no 8-bit data is found.
13794
137952008-02-01 Jason Rumney <jasonr@gnu.org>
13796
13797 * w32fns.c (x_to_w32_font): Update to use new coding struct.
13798
137992008-02-01 Kenichi Handa <handa@m17n.org>
13800
13801 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
13802 CHARS.
13803
138042008-02-01 Steven Tamm <steventamm@mac.com>
13805
13806 * macterm.c (mac_encode_char): Add charset argument and update
13807 to use encoding_type.
13808 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
13809 switch to pure fontset.
13810 (decode_mac_font_name): Temporarily remove decoding.
13811 (x_font_name_to_mac_font_name): Temporarily remove encoding.
13812 (x_load_font): Temporarily remove encoding.
13813
138142008-02-01 Kenichi Handa <handa@m17n.org>
13815
13816 * xfaces.c (Fface_font): If frame is not on a window system,
13817 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
13818 refer to face->font.
13819 (split_font_name_into_vector, build_font_name_from_vector)
13820 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
13821 when HAVE_WINDOW_SYSTEM is defined.
13822
138232008-02-01 Kenichi Handa <handa@m17n.org>
13824
13825 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
13826 (x_produce_glyphs): Fix setting of members of cmp in case
13827 cmp->glyph_len is zero.
13828
13829 * fontset.c (Fset_fontset_font): Fix docstring.
13830 (Ffontset_info): Make it backward compatible. New arg ALL.
13831
138322008-02-01 Kim F. Storm <storm@cua.dk>
13833
13834 * process.c (read_process_output): Grow decoding_buf when needed;
13835 this could cause a crash in allocate_string and compact_small_strings.
13836
138372008-02-01 Kenichi Handa <handa@m17n.org>
13838
13839 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
13840
138412008-02-01 Kenichi Handa <handa@m17n.org>
13842
13843 * coding.c (setup_coding_system): Set coding->common_flags
13844 correctly for raw-text.
13845 (consume_chars): On encoding unibyte text by raw-text, don't check
13846 multibyte form.
13847 (encode_coding): On encoding by raw-text, never use translation tables.
13848
13849 * fileio.c (e_write): Short cut for the case of no encoding.
13850
138512008-02-01 Kenichi Handa <handa@m17n.org>
13852
13853 * coding.c (detect_coding, detect_coding_system): Delete unused
13854 variables.
13855
138562008-02-01 Kenichi Handa <handa@m17n.org>
13857
13858 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
13859 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
13860
138612008-02-01 Kenichi Handa <handa@m17n.org>
13862
13863 * coding.c (Ffind_coding_systems_region_internal): Include
13864 raw-text and no-conversion in the result.
13865
138662008-02-01 Kenichi Handa <handa@m17n.org>
13867
13868 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
13869 (load_font_get_repertory): Delete unnecessary check of ENCODING of
13870 FONT_DEF.
13871 (font_def_arg, add_arg, from_arg, to_arg): New args.
13872 (set_fontset_font): Change argument.
13873 (Fset_fontset_font): Fix for the case that TARGET is a script
13874 name and charset name.
13875 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
13876
138772008-02-01 Kenichi Handa <handa@m17n.org>
13878
13879 * fontset.c (fontset_font): Rename from fontset_face. Change return
13880 value.
13881 (face_suitable_for_char_p, face_for_char): Adjust for the change
13882 of fontset_font.
13883 (make_fontset_for_ascii_face): Fix setting of the fontset element
13884 for ASCII.
13885 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
13886 to get a font name.
13887 (Ffontset_info): Adjust for the change of fontset_font.
13888
13889 * coding.c (emacs_mule_char): Check invalid code more rigidly.
13890
13891 * character.h (LEADING_CODE_LATIN_1_MIN)
13892 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
13893
138942008-02-01 Kenichi Handa <handa@m17n.org>
13895
13896 * editfns.c (check_translation): New function.
13897 (Ftranslate_region_internal): Handle M:N mapping.
13898
138992008-02-01 Kenichi Handa <handa@m17n.org>
13900
13901 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
13902
139032008-02-01 Kenichi Handa <handa@m17n.org>
13904
13905 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
13906 goto invalid_code.
13907 (decode_coding_iso_2022): Fix handling of invalid designation.
13908
13909 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
13910 after calling code_conversion_save.
13911
139122008-02-01 Kenichi Handa <handa@m17n.org>
13913
13914 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
13915
13916 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
13917
13918 * fontset.c: Include "intervals.h".
13919 (fontset_face): Fix comparing of Lisp_Objects.
13920 (free_face_fontset, new_fontset_from_font_name): Fix
13921 Lisp_Object/int mixup.
13922
13923 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
13924
13925 * coding.c: Add many prototypes for static functions.
13926 (get_translation_table): Allow max_lookup to be NULL.
13927 (decode_coding, Ffind_coding_systems_region_internal)
13928 (Funencodable_char_position, Fcheck_coding_systems_region): Call
13929 get_translation_table with max_lookup NULL.
13930
139312008-02-01 Kenichi Handa <handa@m17n.org>
13932
13933 * coding.c (get_translation_table): Declare it as Lisp_Object.
13934 (LOOKUP_TRANSLATION_TABLE): New macro.
13935 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
13936 instead of CHAR_TABLE_REF.
13937
139382008-02-01 Kenichi Handa <handa@m17n.org>
13939
13940 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
13941 annotation data format.
13942 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
13943 Change arguments FROM and TO to single argument NCHARS. Change caller.
13944 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
13945 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13946 (decode_coding_ccl, decode_coding_charset): Pay attention to
13947 coding->charbuf_used.
13948 (get_translation): New function.
13949 (produce_chars): New arguments translation_table and last_block.
13950 Translate characters here. Return number of carryover chars.
13951 Change caller.
13952 (produce_composition): New argument pos. Change caller.
13953 Adjust for the change of annotation data format.
13954 (produce_charset, produce_annotation): Likewise.
13955 (decode_coding, encode_coding): Don't call translate_chars.
13956 (consume_chars): New arg translation_table. Change caller.
13957 (translate_chars): Delete.
13958 (syms_of_coding): Make translation-table's number of extra slots 2.
13959
139602008-02-01 Kenichi Handa <handa@m17n.org>
13961
13962 * search.c (simple_search): Fix setting this_pos_byte in backward
13963 search.
13964
13965 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
13966 byte sequence.
13967 (detect_coding_ccl): Fix setting of the variable valids.
13968
139692008-02-01 Kenichi Handa <handa@m17n.org>
13970
13971 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
13972
13973 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
13974
13975 * editfns.c (Ftranslate_region_internal): Rename from
13976 Ftranslate_region. Accept a char-table in TABLE.
13977 (syms_of_editfns): Defsubr Stranslate_region_internal.
13978
13979 * xfaces.c (set_lface_from_font_name): If a font is specified for
13980 a frame, generate a fontset from the font.
13981 (build_scalable_font_name): If the scalable font is requested for
13982 a specific size, don't change that size.
13983 (try_font_list): Try a scalable font also in the case that a
13984 pattern string is specified.
13985
139862008-02-01 Kenichi Handa <handa@m17n.org>
13987
13988 * xfaces.c (Fface_font): New optional arg CHARACTER.
13989
139902008-02-01 Kenichi Handa <handa@m17n.org>
13991
13992 * charset.h (CHARSET_OFFSET): New macro.
13993
139942008-02-01 Kenichi Handa <handa@m17n.org>
13995
13996 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
13997
13998 * fontset.c (fontset_face): Handle the case that repertory is a
13999 char-table.
14000 (find_font_encoding): Return nil for unknown encoding.
14001 (Fset_fontset_font): Ignore a font of unknown encoding.
14002
140032008-02-01 Kenichi Handa <handa@m17n.org>
14004
14005 * keymap.c (describe_vector): Handle default value of a char table.
14006
14007 * fontset.c (fontset_face): Handle fallback fonts correctly.
14008 (Ffontset_info): Return infomation about fallback fonts.
14009
140102008-02-01 Kenichi Handa <handa@m17n.org>
14011
14012 * fontset.c (FONTSET_DEFAULT): New macro.
14013 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
14014 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
14015 the case that it is nil.
14016 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
14017 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
14018
14019 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
14020 subset or superset.
14021
140222008-02-01 Kenichi Handa <handa@m17n.org>
14023
14024 * emacs.c (main): Call init_charset after syms_of_XXX.
14025
14026 * charset.c (Vcharset_map_directory): Delete.
14027 (Vcharset_map_path): New variable.
14028 (load_charset_map_from_file): Use Vcharset_map_path instead.
14029 (init_charset): Initialize Vcharset_map_path.
14030 (syms_of_charset): Delete declaration of "charset-map-directory",
14031 add declaration of "charset-map-path".
14032
140332008-02-01 Kenichi Handa <handa@m17n.org>
14034
14035 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
14036 ASCII only string.
14037
14038 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
14039
14040 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
14041 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
14042
140432008-02-01 Kenichi Handa <handa@m17n.org>
14044
14045 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
14046
14047 * coding.c (QCmnemonic, QCdefalut_char)
14048 (QCdecode_translation_table, QCencode_translation_table)
14049 (QCpost_read_conversion, QCpre_write_conversion): New variables.
14050 (get_translation_table): Return a list of translation tables if
14051 necessary.
14052 (decode_coding): Call get_translation_table with ENCODEP 0.
14053 (char_encodable_p): If translation_table is non-nil, always call
14054 translate_char.
14055 (Fdefine_coding_system_internal): Accept list of translation
14056 tables as :encode-translation-table and :decode-translation-table.
14057 (Fcoding_system_put): New function.
14058 (syms_of_coding): Declare new symbols. Defsubr
14059 Scoding_system_put.
14060 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
14061 typically JISX0212.
14062
14063 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
14064 when the charset is superset type.
14065
14066 * character.c (translate_char): Accept list of translation tables.
14067
140682008-02-01 Kenichi Handa <handa@m17n.org>
14069
14070 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
14071 (CODING_ATTR_TRANS_TBL): New macro.
14072
14073 * coding.c (get_translation_table): New function.
14074 (translate_chars): Fix the bug of skipping annotation data.
14075 (decode_coding, encode_coding): Utilize get_translation_table.
14076 (char_encodable_p, Funencodable_char_position): Translate char if
14077 necessary.
14078 (Ffind_coding_systems_region_internal)
14079 (Fcheck_coding_systems_region): Setup translation table for encode
14080 in a coding system attribute vector in advance.
14081 (Fdefine_coding_system_internal): Allow a symbol as translation
14082 table. For shift-jis type coding system, allow 4th charset.
14083
140842008-02-01 Kenichi Handa <handa@m17n.org>
14085
14086 * coding.c (decode_coding_sjis): Check the first byte rigidly.
14087
14088 * xdisp.c (get_next_display_element): Pass -1 as POS to
14089 FACE_FOR_CHAR if displaying a C-string.
14090
140912008-02-01 Kenichi Handa <handa@m17n.org>
14092
14093 * composite.c (get_composition_id): Handle xoff and yoff in a
14094 composition rule.
14095
14096 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
14097 (struct composition): New member lbearing and rbearing.
14098
14099 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
14100 (x_get_glyph_overhangs): Handle a composition glyph.
14101 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
14102
14103 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
14104 composition glyph.
14105
141062008-02-01 Kenichi Handa <handa@m17n.org>
14107
14108 * print.c: Include charset.h.
14109 (Vprint_charset_text_property): New variable.
14110 (Qdefault): Extern it.
14111 (PRINT_STRING_NON_CHARSET_FOUND)
14112 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
14113 (print_check_string_result): New variable.
14114 (print_check_string_charset_prop): New function.
14115 (print_prune_charset_plist): New variable.
14116 (print_prune_string_charset): New function.
14117 (print_object): Call print_prune_string_charset if
14118 Vprint_charset_text_property is not t.
14119 (print_interval): Print nothing if interval->plist is nil.
14120 (syms_of_print): Declare Vprint_charset_text_property as a lisp
14121 variable. Init and staticpro print_prune_charset_plist.
14122
141232008-02-01 Kenichi Handa <handa@m17n.org>
14124
14125 * fontset.c (new_fontset_from_font_name): Use the specified font
14126 for all characters in the new fontset.
14127
14128 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14129 OBJECT args.
14130
14131 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
14132 OBJECT args for composition too.
14133
14134 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14135 OBJECT args.
14136
141372008-02-01 Kenichi Handa <handa@m17n.org>
14138
14139 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
14140
14141 * fontset.c (reorder_font_vector): Adjust for the change of
14142 FONT_DEF format.
14143 (fontset_face): New arg id. Change caller.
14144 (face_for_char): New args pos and object.
14145 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
14146 (fs_query_fontset): Check NAME by Fassoc too.
14147 (Fset_fontset_font): Allow non-XLFD font name.
14148 (Ffontset_info): Adjust for the change of FONT_DEF format.
14149
14150 * fontset.h (face_for_char): Adjust prototype.
14151
14152 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
14153 (append_space, extend_face_to_end_of_line)
14154 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14155 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
14156
14157 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
14158 POS and OBJECT args.
14159
14160 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
14161 POS and OBJECT args.
14162
141632008-02-01 Jason Rumney <jasonr@gnu.org>
14164
14165 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
14166 of GlobalAlloc'ed memory.
14167
141682008-02-01 Kenichi Handa <handa@m17n.org>
14169
14170 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
14171
14172 * charset.h (charset_table_used): Delete extern.
14173
14174 * charset.c (charset_table_used): Make it static.
14175 (map_charset_chars): Fix args to c_function with.
14176
14177 * chartab.c (map_sub_char_table_for_charset): Fix args to
14178 c_function with.
14179
14180 * coding.h (enum coding_result_code): Delete
14181 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
14182
14183 * coding.c (Qinsufficient_source, Qinconsistent_eol)
14184 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
14185 (Vlast_code_conversion_error): New variables.
14186 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
14187 (ONE_MORE_BYTE): Record error if any instead of signaling an
14188 error. If non-ASCII multibyte char is found, return the negative
14189 value of the code. All callers changed to check it.
14190 (ONE_MORE_BYTE_NO_CHECK): Likewise.
14191 (record_conversion_result): New function. Change all codes setting
14192 coding->result to call this function.
14193 (detect_coding_utf_8, decode_coding_utf_8)
14194 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
14195 Don't use the local variable incomplete.
14196 (emacs_mule_char): Change the second arg to `const'.
14197 (decode_coding): Fix of flushing out unprocessed data.
14198 (make_conversion_work_buffer): Fix making of a work buffer.
14199 (decode_coding_object): Return coding->dst_object.
14200
14201 * fontset.c (set_fontset_font): Fix args.
14202
14203 * lisp.h (CHARACTERBITS): Define as 22.
14204
14205 * process.c (send_process): Be sure to set coding->src_multibyte.
14206
14207 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
14208
142092008-02-01 Kenichi Handa <handa@m17n.org>
14210
14211 * xdisp.c (handle_auto_composed_prop): Give limit to
14212 Fnext_single_char_property_change.
14213
142142008-02-01 Kenichi Handa <handa@m17n.org>
14215
14216 * composite.c (syms_of_composite): Don't make the composition hash
14217 table weak.
14218
14219 * fontset.c (Fset_fontset_font): Fix docstring.
14220
14221 * lisp.h (detect_coding_system): Adjust prototype.
14222
14223 * fileio.c (kill_workbuf_unwind): Delete this function.
14224 (Finsert_file_contents): Adjust the call of detect_coding_system.
14225 Get conversion_buffer by code_conversion_save. Use the macro
14226 CODING_MAY_REQUIRE_DECODING. After decoding, update
14227 coding_system.
14228
14229 * coding.h (make_conversion_work_buffer): Delete extern.
14230 (code_conversion_save): Extern it.
14231
14232 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
14233 (CODING_GET_INFO): Delete argument eol_type. Change callers.
14234 (decode_coding_utf_8): Don't do eol converion.
14235 (detect_coding_utf_16): Check coding->src_chars, not
14236 coding->src_bytes. Add heuristics for those that have no signature.
14237 (decode_coding_emacs_mule, decode_coding_iso_2022)
14238 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14239 Don't do eol converion.
14240 (adjust_coding_eol_type): Return a new coding system.
14241 (detect_coding): Don't detect eol. Fix for utf-16 detection.
14242 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
14243 each change.
14244 (decode_coding): Pay attention to undo_list. Do eol conversion for
14245 all types of coding-systems (if necessary).
14246 (Vcode_conversion_work_buf_list): Delete it.
14247 (Vcode_conversion_reused_workbuf): Rename from
14248 Vcode_conversion_reused_work_buf.
14249 (Vcode_conversion_workbuf_name): New variable.
14250 (reused_workbuf_in_use): New variable.
14251 (make_conversion_work_buffer): Delete the arg DEPTH.
14252 (code_conversion_restore): Change argument to cons.
14253 (code_conversion_save): Delete the argument BUFFER. Change callers.
14254 (detect_coding_system): New argument src_chars. Change callers.
14255 Fix for utf-16 detection.
14256 (init_coding_once): Don't use ISO_carriage_return.
14257 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
14258 reused_workbuf_in_use.
14259
142602008-02-01 Kenichi Handa <handa@m17n.org>
14261
14262 * keymap.c (store_in_keymap): Pay attention to the case that idx
14263 is a cons specifying a character range.
14264
142652008-02-01 Kenichi Handa <handa@m17n.org>
14266
14267 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
14268 HANDLED_RECOMPUTE_PROPS.
14269
14270 * coding.c (Fdefine_coding_system_internal): Fix checking of
14271 ascii compatibility.
14272
142732008-02-01 Kenichi Handa <handa@m17n.org>
14274
14275 * charset.c (find_charsets_in_text): Delete unused locale variable.
14276 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
14277
14278 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
14279 Resync charset_list to Vemacs_mule_charset_list.
14280
14281 * keymap.c (store_in_keymap): Pay attention to the case that idx
14282 is a cons specifying a character range.
14283
142842008-02-01 Kenichi Handa <handa@m17n.org>
14285
14286 * composite.c (update_compositions): Bind inhibit-read-only, etc
14287 to t before calling remove-list-of-text-properties.
14288
14289 * print.c (print_object): Always print ASCII chars as is.
14290
142912008-02-01 Kenichi Handa <handa@m17n.org>
14292
14293 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
14294
14295 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
14296 is a char table.
14297
142982008-02-01 Kenichi Handa <handa@m17n.org>
14299
14300 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
14301
143022008-02-01 Kenichi Handa <handa@m17n.org>
14303
14304 * xfaces.c (set_lface_from_font_name): Fix for the case that
14305 FONTNAME is not fontset name.
14306
143072008-02-01 Kenichi Handa <handa@m17n.org>
14308
14309 * fns.c (base64_encode_1): Fix previous change.
14310
143112008-02-01 Kenichi Handa <handa@m17n.org>
14312
14313 * fontset.c (set_fontset_font): New function.
14314 (Fset_fontset_font): If a font is specified for a charset, use
14315 map_charset_chars to store the font spec in a fontset.
14316
143172008-02-01 Kenichi Handa <handa@m17n.org>
14318
14319 * fontset.c (fontset_face): Create a fallback fontset on demand.
14320 (make_fontset): Don't create a fallback fontset here.
14321 (free_face_fontset): Free a fallback fontset (if any) too.
14322 (n_auto_fontsets): Delete this variable.
14323 (auto_fontset_alist): New variable.
14324 (new_fontset_from_font_name): Check auto_fontset_alist.
14325 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
14326 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
14327 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
14328 Defsubr Sfontset_list_all.
14329
143302008-02-01 Kenichi Handa <handa@m17n.org>
14331
14332 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
14333
143342008-02-01 Kenichi Handa <handa@m17n.org>
14335
14336 * fontset.c (Fnew_fontset): Check NAME more rigidly.
14337
143382008-02-01 Kenichi Handa <handa@m17n.org>
14339
14340 * editfns.c (Fgoto_char): Fix docstring.
14341
143422008-02-01 Kenichi Handa <handa@m17n.org>
14343
14344 * insdel.c (insert_from_gap): Adjust intervals correctly.
14345
143462008-02-01 Jason Rumney <jasonr@gnu.org>
14347
14348 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
14349 (pfnGetFontUnicodeRanges): New dynamically loaded function.
14350 (w32_initialize): Try to load it.
14351 (x_get_font_repertory): Use it if available.
14352 (w32_encode_char): Add shortcut for unicode output.
14353
14354 * w32fns.c (w32_load_system_font): Default charset to -1.
14355 (x_to_w32_charset): Match all fonts for unicode.
14356 (w32_to_x_charset): New parameter matching. Don't return partial
14357 or wildcard charsets.
14358 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
14359 (w32_codepage_for_font): Return CP_UNICODE for unicode.
14360 (w32_to_x_font): Match charset to real charset.
14361 (enum_font_cb2): Always list unicode versions.
14362
14363 * makefile.w32-in (temacs): Increase EMHEAP.
14364
143652008-02-01 Jason Rumney <jasonr@gnu.org>
14366
14367 * w32term.c (w32_encode_char): New charset parameter.
14368 font_info.encoding becomes encoding_type.
14369 (x_get_font_repertory): New function. Warning: stub only!
14370 (x_new_font): Return quickly if font already set.
14371 (x_new_fontset): fontsetname parameter is Lisp_Object.
14372 Use new fs_query_fontset. Try new_fontset_from_font_name.
14373 Use fontset_name for return value.
14374
14375 * w32term.h: Declare x_get_font_repertory.
14376
14377 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
14378 place of find_charset_in_text. Use encode_coding_object in place
14379 of encode_coding.
14380 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
14381 decode_coding.
14382
14383 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
14384 of x_new_fontset.
14385 (w32_load_system_font): Initialize charset as unicode.
14386 font_info.encoding becomes encoding_type.
14387 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
14388 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
14389 (syms_of_w32fns): Set get_font_repertory_func.
14390
14391 * w32console.c: Include character.h. Use terminal_encode_buffer
14392 from term.c.
14393 (write_glyphs): Use new version of encode_terminal_code. Use
14394 encode_coding_object in place of encode_coding.
14395
14396 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
14397 encoding becomes encoding_type.
14398
14399 * term.c (terminal_encode_buffer): Make externally visible.
14400
14401 * makefile.w32-in: Add character.h dependancies.
14402 (character.o, chartab.o): New targets.
14403
144042008-02-01 Kenichi Handa <handa@m17n.org>
14405
14406 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
14407 CODING_ID_EOL_TYPE.
14408
144092008-02-01 Andreas Schwab <schwab@suse.de>
14410
14411 * coding.c (produce_chars): Revert last change.
14412
144132008-02-01 Kenichi Handa <handa@m17n.org>
14414
14415 * charset.h (charset_unicode): Extern it.
14416
14417 * charset.c (string_xstring_p): Check by (C >= 0x100).
14418 (find_charsets_in_text): Change format of the arc CHARSETS. New
14419 arg MULTIBYTE.
14420 (Ffind_charset_region, Ffind_charset_string): Adjust for the
14421 change of find_charsets_in_text.
14422 (Fsplit_char): Fix doc. Never return unknown.
14423
14424 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
14425
14426 * coding.c (Fdefine_coding_system_alias): Update
14427 Vcoding_system_list.
14428
14429 * fontset.c (load_font_get_repertory): Pay attention to the case
14430 that ENCODING of a font is specified by a char-table.
14431
14432 * xterm.c (x_get_font_repertory): Handle the case that the
14433 encoding of font is other than Unicode.
14434
144352008-02-01 Kenichi Handa <handa@m17n.org>
14436
14437 * term.c (encode_terminal_code): Don't handle glyph-table. Check
14438 if a character is encodable by the terminal coding system. If
14439 not, produces proper number of `?'s. Update
14440 terminal_encode_buffer and terminal_encode_buf_size if necessary.
14441 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
14442
144432008-02-01 Kenichi Handa <handa@m17n.org>
14444
14445 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
14446 variables.
14447 (encode_terminal_code): Change argument. Encode multiple
14448 characters at once. Store the result of encoding in
14449 terminal_encode_buffer.
14450 (write_glyphs, insert_glyphs): Adjust for the change of
14451 encode_terminal_code.
14452 (term_init): Initialize terminal_encode_buffer and
14453 terminal_encode_buf_size.
14454
14455 * coding.c (consume_chars): If coding->src_object is nil, don't
14456 check annotation.
14457
144582008-02-01 Kenichi Handa <handa@m17n.org>
14459
14460 * character.c (char_string): Use ASCII_CHAR_P instead of
14461 SINGLE_BYTE_CHAR_P.
14462
144632008-02-01 Kenichi Handa <handa@m17n.org>
14464
14465 * xdisp.c (handle_auto_composed_prop): Check if the last
14466 characters of auto-composed region is newly composed with the
14467 following characters.
14468 (handle_composition_prop): Fix checking of point being inside
14469 composition.
14470
144712008-02-01 Kenichi Handa <handa@m17n.org>
14472
14473 * fns.c (concat): Don't change multibyteness of the result by
14474 concatenating an 8-bit character.
14475
14476 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
14477 multibyteness of the result when newelt is an 8-bit character.
14478
144792008-02-01 Dave Love <fx@gnu.org>
14480
14481 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
14482 EMACS_INT.
14483
14484 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
14485
14486 * xfaces.c (face_numeric_value): Declare dim size_t.
14487 (Finternal_lisp_face_equal_p): Remove unused f.
14488
14489 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
14490 (MATRIX_ROW): Remove unused vars.
14491 (draw_glyphs, x_insert_glyphs, fast_find_position)
14492 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
14493 byte/char counts.
14494
14495 * regex.c (regex_compile): Remove unused var.
14496
14497 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14498
14499 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14500 (Faccessible_keymaps, where_is_internal): Remove unused vars.
14501
14502 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
14503
14504 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
14505
14506 * fileio.c (Fwrite_region): Remove unused var.
14507
14508 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
14509 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
14510
14511 * composite.c (Fremove_list_of_text_properties): Declare.
14512
14513 * coding.c (inhibit_pre_post_conversion): Remove (unused).
14514 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
14515 (coding_inherit_eol_type): Remove unused attrs.
14516 (detect_coding): Cast arg of detect_eol.
14517
14518 * charset.c (syms_of_charset): Remove unused var p.
14519 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
14520 byte/char counts.
14521
14522 * casetab.c (set_case_table): Remove unused var.
14523
14524 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
14525 unused vars.
14526
145272008-02-01 Dave Love <fx@gnu.org>
14528
14529 * xterm.c (x_bitmap_mask): Declare.
14530
145312008-02-01 Dave Love <fx@gnu.org>
14532
14533 * xterm.c (x_term_init): Fix type error.
14534
14535 * lisp.h: Add Funibyte_char_to_multibyte.
14536
14537 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
14538 (Fset_coding_system_priority): Doc fix.
14539
14540 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
14541
14542 * indent.c (check_composition): Make start and end EMACS_INT.
14543
14544 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
14545
14546 * xdisp.c (handle_composition_prop, check_point_in_composition):
14547 Make buffer positions EMACS_INT.
14548
14549 * composite.c (find_composition, run_composition_function)
14550 (update_compositions, Ffind_composition_internal): Make buffer
14551 positions EMACS_INT.
14552
14553 * composite.h (find_composition, update_compositions): Make
14554 position args EMACS_INT.
14555
14556 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
14557
14558 * intervals.c (get_property_and_range):
14559 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
14560
14561 * unexalpha.c: Don't include varargs.h.
14562
145632008-02-01 Dave Love <fx@gnu.org>
14564
14565 * coding.h (ENCODE_UTF_8): New.
14566
14567 * Makefile.in (gtkutil.o): Depend on coding.h.
14568
14569 * coding.c (Fset_coding_system_priority): Doc fix.
14570
145712008-02-01 Kenichi Handa <handa@m17n.org>
14572
14573 * fileio.c (Finsert_file_contents): Call setup_coding_system in
14574 the case of auto saving.
14575
145762008-02-01 Andreas Schwab <schwab@suse.de>
14577
14578 * chartab.c (map_char_table, map_char_table_for_charset): Protect
14579 `range' from GC.
14580
145812008-02-01 Kenichi Handa <handa@m17n.org>
14582
14583 * coding.c (decode_coding_sjis): Check bytes more rigidly.
14584
145852008-02-01 Kenichi Handa <handa@m17n.org>
14586
14587 * fileio.c (choose_write_coding_system): Return a decided coding system.
14588 (Fwrite_region): Set Vlast_coding_system_used to the return value
14589 of choose_write_coding_system.
14590
145912008-02-01 Kenichi Handa <handa@m17n.org>
14592
14593 * charset.c (Fset_charset_priority): Pay attention to duplicated
14594 arguments.
14595
14596 * coding.c (QCcategory): New variable.
14597 (syms_of_coding): Defsym it. Set all elements of
14598 Vcoding_category_table and their symbol values.
14599 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
14600 coding-category-XXX, and coding-category-list.
14601 (Fdefine_coding_system_internal): Add category in the plist.
14602
146032008-02-01 Kenichi Handa <handa@m17n.org>
14604
14605 * callproc.c (Fcall_process): Handle carryover correctly.
14606
14607 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
14608 (raw_text_coding_system): Check NILP (coding_system).
14609 (coding_inherit_eol_type): Check NILP (coding_system) and
14610 NILP (parent).
14611 (consume_chars): Fix for the case of raw-text.
14612
14613 * process.c (read_process_output): Handle carryover correctly.
14614
146152008-02-01 Dave Love <fx@gnu.org>
14616
14617 * regex.c (re_search_2): Fix last change.
14618
146192008-02-01 Kenichi Handa <handa@m17n.org>
14620
14621 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
14622 target_multibyte. Even in a unibyte case, return a converted
14623 multibyte char.
14624 (GET_CHAR_AFTER): New macro.
14625 (PATFETCH): Translate via multibyte char.
14626 (HANDLE_UNIBYTE_RANGE): Delete this macro.
14627 (SETUP_MULTIBYTE_RANGE): New macro.
14628 (regex_compile): Setup compiled code so that its multibyteness
14629 matches that of a target. Fix the handling of "[X-YZ]" using
14630 SETUP_MULTIBYTE_RANGE.
14631 (analyse_first) <charset>: For filling fastmap for all multibyte
14632 characters, don't check by BASE_LEADING_CODE_P.
14633 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
14634 the same as RE_MULTIBYTE_P (bufp) now.
14635 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
14636 (TARGET_CHAR_AND_LENGTH): Delete this macro.
14637 (TRANSLATE_VIA_MULTIBYTE): New macro.
14638 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
14639 It is the same as RE_MULTIBYTE_P (bufp) now.
14640 <exactn>: Translate via multibyte.
14641 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
14642 translate it.
14643 <charset, charset_not>: Fetch a character by
14644 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
14645 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
14646 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
14647 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
14648 by GET_CHAR_AFTER.
14649 (bcmp_translate): Likewise.
14650
14651 * search.c (compile_pattern): Check the member target_multibyte,
14652 not the member multibyte of buf.
14653
14654 * lread.c (read1): While reading a string, set force_singlebyte
14655 and force_multibyte correctly.
14656
14657 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
14658 up of unibyte_to_multibyte_table.
14659
146602008-02-01 Kenichi Handa <handa@m17n.org>
14661
14662 * coding.c (setup_coding_system): If coding has
14663 post-read-conversion or pre-write-conversion, set
14664 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
14665 respectively.
14666 (decode_coding_gap): Run post-read-conversion if any.
14667
14668 * fileio.c (Finsert_file_contents): Even if we read into a
14669 unibyte buffer, check if we must decode the result or not.
14670
146712008-02-01 Kenichi Handa <handa@m17n.org>
14672
14673 * coding.c (make_conversion_work_buffer): Change the work buffer
14674 name to the same one as that of Emacs 21.
14675
146762008-02-01 Kenichi Handa <handa@m17n.org>
14677
14678 * coding.h (make_conversion_work_buffer): Adjust prototype.
14679 (code_conversion_restore): Don't extern it.
14680
14681 * coding.c (detected_mask): Delete unused variable.
14682 (decode_coding_iso_2022): Pay attention to the byte sequence of
14683 CTEXT extended segment, and retain those bytes as is.
14684 (decode_coding_ccl): Delete unused variable `valids'.
14685 (setup_coding_system): Delete unused variable `category'.
14686 (consume_chars): Delete unused variable `category'. Make it work
14687 for non-multibyte case.
14688 (make_conversion_work_buffer): Change argument.
14689 (saved_coding): Delete unused variable.
14690 (code_conversion_restore): Don't check saved_coding->destination.
14691 (code_conversion_save): New function.
14692 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
14693 instead of record_unwind_protect.
14694 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
14695 (detect_coding_system): Delete unused variable `mask'.
14696 (Fdefine_coding_system_internal): Delete unused variable id.
14697
14698 * fileio.c (kill_workbuf_unwind): New function.
14699 (Finsert_file_contents): On replacing, call
14700 make_conversion_work_buffer with correct args, and call
14701 record_unwind_protect with the first arg kill_workbuf_unwind.
14702
14703 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
14704
147052008-02-01 Kenichi Handa <handa@m17n.org>
14706
14707 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
14708 (fontset_add): Fix for the case that TO is less than TO1.
14709 (Ffontset_info): Don't use fallback fontset on checking the
14710 default fontset.
14711 (dump_fontset): New function for debugging.
14712
14713 * coding.c (Fdefine_coding_system_internal): Fix for the case that
14714 coding_type is Qcharset.
14715
147162008-02-01 Kenichi Handa <handa@m17n.org>
14717
14718 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
14719 (map_char_table): Don't inherit the value from the parent on
14720 initializing VAL. Adjust for the above change.
14721
147222008-02-01 Kenichi Handa <handa@m17n.org>
14723
14724 * coding.c (Qsignature, Qendian): Delete these variables.
14725 (syms_of_coding): Don't initialize them.
14726 (CATEGORY_MASK_UTF_16_AUTO): New macro.
14727 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
14728 detect_info->found.
14729 (decode_coding_utf_16): Don't detect BOM here.
14730 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
14731 is NOT utf_16_without_bom.
14732 (setup_coding_system): For a coding system of type utf-16, check
14733 if the attribute :endian is Qbig or not (not nil or not), and set
14734 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
14735 (detect_coding): If coding type is utf-16 and BOM detection is
14736 required, detect it.
14737 (Fdefine_coding_system_internal): For a coding system of type
14738 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
14739
147402008-02-01 Kenichi Handa <handa@m17n.org>
14741
14742 * coding.c (coding_set_source): Fix for the case that the current
14743 buffer is different from coding->src_object.
14744 (decode_coding_object): Don't use the conversion work buffer if
14745 DST_OBJECT is a buffer.
14746
147472008-02-01 Dave Love <fx@gnu.org>
14748
14749 * lread.c (read_emacs_mule_char) [len==2]: Index
14750 emacs_mule_charset correctly.
14751
147522008-02-01 Dave Love <fx@gnu.org>
14753
14754 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
14755 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
14756 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
14757 treated specially.)
14758 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
14759 (detected_mask): Remove Big5 bits.
14760
147612008-02-01 Kenichi Handa <handa@m17n.org>
14762
14763 The following changes are to make the font rescaling facility
14764 compatible with Emacs 21.
14765
14766 * xfaces.c (Vface_font_rescale_alist): Rename from
14767 Vface_resizing_fonts.
14768 (struct font_name): Rename member resizing_ratio to rescale_ratio.
14769 (font_rescale_ratio): Rename from font_resizing_ratio.
14770 (split_font_name): Set font->rescale_ratio.
14771 (better_font_p): Pay attention to font->rescale_ratio.
14772 (build_scalable_font_name): Likewise. Change RESX, and RESY
14773 fields.
14774 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14775
147762008-02-01 Kenichi Handa <handa@m17n.org>
14777
14778 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
14779 (Qutf_16_le): Remove these variables.
14780 (syms_of_coding): Don't DEFSYM them.
14781 (decode_coding_utf_16): Fix handling of BOM.
14782 (encode_coding_utf_16): Fix handling of BOM.
14783
147842008-02-01 Kenichi Handa <handa@m17n.org>
14785
14786 * fileio.c (Finsert_file_contents): On replacing, before decoding
14787 the file into the work buffer, set point of the work buffer to the end.
14788
147892008-02-01 Dave Love <fx@gnu.org>
14790
14791 * coding.c (Fcheck_coding_systems_region): Fix type errors.
14792
147932008-02-01 Dave Love <fx@gnu.org>
14794
14795 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14796 and fix C types.
14797
147982008-02-01 Kenichi Handa <handa@m17n.org>
14799
14800 * xdisp.c (SKIP_GLYPHS): New macro.
14801 (set_cursor_from_row): Pay attention to string display properties.
14802
14803 * category.c (copy_category_entry): Fix for the case that RANGE
14804 is an integer.
14805
14806 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
14807
14808 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
14809
148102008-02-01 Kenichi Handa <handa@m17n.org>
14811
14812 * charset.c (Fcharset_id_internal): New function.
14813 (syms_of_charset): Defsubr it.
14814
14815 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
14816 with the last arg charset_list acquired from coding.
14817 (Fdefine_coding_system_internal): For ccl-based coding system, fix
14818 the attribute coding_attr_ccl_valids.
14819
14820 * coding.h (enum define_coding_ccl_arg_index): Set the first
14821 member coding_arg_ccl_decoder to coding_arg_max.
14822
14823 * ccl.h (ccl_driver): Adjust prototype.
14824
14825 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
14826 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 14827 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
14828 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
14829 last arg Qnil.
14830
148312008-02-01 Kenichi Handa <handa@m17n.org>
14832
14833 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
14834 call encode_char.
14835
14836 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
14837
148382008-02-01 Dave Love <fx@gnu.org>
14839
14840 * composite.c (syms_of_composite): Make composition_hash_table weak.
14841
148422008-02-01 Kenichi Handa <handa@m17n.org>
14843
14844 * dispextern.h (check_face_attributes, generate_ascii_font_name)
14845 (font_name_registry): Don't extern them.
14846 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
14847
14848 * fontset.h (Qfontset): Don't extern it.
14849 (new_fontset_from_font_name): Extern it.
14850
14851 * fontset.c: Give 8 extra slots to fontset objects.
14852 (Qfontset_info): New variable.
14853 (syms_of_fontset): Defsym it.
14854 (FONTSET_FALLBACK): New macro.
14855 (fontset_face): Try also the default fontset.
14856 (make_fontset): Realize a fallback fontset from the default fontset.
14857 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
14858 using split_font_name_into_vector and build_font_name_from_vector.
14859 (Fset_fontset_font): Access the elements of font_spec by enum
14860 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
14861 name by using split_font_name_into_vector.
14862 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
14863 generate a proper font name from the fontset name. Update
14864 Vfontset_alias_alist.
14865 (n_auto_fontsets): New variable.
14866 (new_fontset_from_font_name): New function.
14867 (Ffont_info): Store the information about fonts generated from the
14868 default fontset in the first extra slot of the returned char-table.
14869
14870 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
14871 (font_name_registry): Delete function.
14872 (split_font_name_into_vector): New function.
14873 (build_font_name_from_vector): New function.
14874 (font_list): The argument REGISTRY is now a list of registry names.
14875 (choose_face_font): If we are choosing an ASCII font, and ATTRS
14876 specifies an explicit font name, return the name as is. Make a
14877 list of registy names.
14878
14879 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
14880 of x_new_fontset.
14881 (Fx_create_frame): Don't call x_new_fontset here. Just use
14882 x_list_fonts to check the existence of fonts.
14883
14884 * xterm.h (x_new_fontset): Adjust prototype.
14885
14886 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
14887 string. Use new_fontset_from_font_name to create a fontset from a
14888 font name.
14889
148902008-02-01 Kenichi Handa <handa@m17n.org>
14891
14892 * syntax.c (Vfind_word_boundary_function_table): New name for
14893 Vnext_word_boundary_function_table.
14894 (find-word-boundary-function-table): New name for
14895 next-word-boundary-function-table.
14896
148972008-02-01 Dave Love <fx@gnu.org>
14898
14899 * Makefile.in: Fix some dependencies.
14900
14901 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
14902 set it to nil before returning.
14903
14904 * composite.c (update_compositions): Fix type error.
14905
14906 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
14907
149082008-02-01 Kenichi Handa <handa@m17n.org>
14909
14910 * xterm.c (x_new_font): Optimize for the case that the font is
14911 already set for the frame.
14912
149132008-02-01 Kenichi Handa <handa@m17n.org>
14914
14915 * chartab.c (char_table_ascii): Check if the char table contents
14916 is sub-char-table or not.
14917 (char_table_set, char_table_set_range): Fix argument to
14918 char_table_ascii.
14919
14920 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
14921 (detect_coding_utf_8, detect_coding_utf_16)
14922 (detect_coding_emacs_mule, detect_coding_iso_2022)
14923 (detect_coding_sjis, detect_coding_big5)
14924 (detect_coding_ccl, detect_coding_charset): Change argument MASK
14925 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
14926 sequence is valid in this coding system. Change callers.
14927 (MAX_ANNOTATION_LENGTH): New macro.
14928 (ADD_ANNOTATION_DATA): New macro.
14929 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
14930 ADD_ANNOTATION_DATA. Change the format of annotation data.
14931 (ADD_CHARSET_DATA): New macro.
14932 (emacs_mule_char): New argument ID. Change callers.
14933 (decode_coding_emacs_mule, decode_coding_iso_2022)
14934 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14935 Produce charset annotation data in coding->charbuf.
14936 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
14937 to charset annotation data in coding->charbuf.
14938 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
14939 coding->common_flags if the coding system is iso-2022 based and
14940 uses designation.
14941 (produce_composition): Adjust for the new annotation data format.
14942 (produce_charset): New function.
14943 (produce_annotation): Handle charset annotation.
14944 (handle_composition_annotation, handle_charset_annotation): New
14945 functions.
14946 (consume_chars): Handle charset annotation. Utilize the above two
14947 functions.
14948 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
14949 buffer, get the deleted text as a string and set
14950 coding->src_object to that string.
14951 (detect_coding, detect_coding_system): Use the new struct
14952 coding_detection_info.
14953
14954 * coding.h (struct coding_detection_info): New structure.
14955 (struct coding_system): Adjust prototype of the member `detector'.
14956 (CODING_ANNOTATE_CHARSET_MASK): New macro.
14957
149582008-02-01 Kenichi Handa <handa@m17n.org>
14959
14960 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
14961
149622008-02-01 Dave Love <fx@gnu.org>
14963
14964 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
14965 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
14966 to new local and nullify apropos_accumulate before returning.
14967 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
14968
149692008-02-01 Kenichi Handa <handa@m17n.org>
14970
14971 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
14972 correctly.
e3eea1fc 14973
aac0c6e3
MR
149742008-02-01 Dave Love <fx@gnu.org>
14975
14976 * fns.c (Flanginfo): Call synchronize_system_time_locale.
14977
149782008-02-01 Kenichi Handa <handa@m17n.org>
14979
14980 The following changes are to make character composition happen
14981 automatically on displaying.
14982
14983 * Makefile.in (lisp, shortlisp): Add composite.elc.
14984
14985 * composite.h (Qauto_composed, Vauto_composition_function)
14986 (Qauto_composition_function): Extern them.
14987
14988 * composite.c (Vcomposition_function_table)
14989 (Qcomposition_function_table): Delete variables.
14990 (Qauto_composed, Vauto_composition_function)
14991 (Qauto_composition_function): New variables.
14992 (run_composition_function): Don't call
14993 compose-chars-after-function.
14994 (update_compositions): Clear `auto-composed' text property.
14995 (compose_chars_in_text): Delete this function.
14996 (syms_of_composite): Staticpro Qauto_composed and
14997 Qauto_composition_function. Declare Vauto_composition_function as
14998 a Lisp variable.
14999
15000 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15001
15002 * xdisp.c (it_props): Add an entry for Qauto_composed.
15003 (handle_auto_composed_prop): New function.
15004
15005 * xselect.c (selection_data_to_lisp_data): Don't call
15006 compose_chars_in_text.
15007
150082008-02-01 Dave Love <fx@gnu.org>
15009
15010 * keyboard.c (read_char): Modify checking around use of
15011 Vkeyboard_translate_table.
15012
15013 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15014 and fix C types.
15015
150162008-02-01 Kenichi Handa <handa@m17n.org>
15017
15018 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
15019 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15020 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
15021 the case that the last byte is '\r' correctly.
15022 (decode_coding): Flush out the unprocessed data correctly.
15023 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
15024
150252008-02-01 Dave Love <fx@gnu.org>
15026
15027 * xterm.c (XTread_socket): Fix changes for defined keysyms.
15028 Add XK_ISO... case.
15029 (xaw_scroll_callback): Revert last change.
15030
150312008-02-01 Kenichi Handa <handa@m17n.org>
15032
15033 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
15034
150352008-02-01 Kenichi Handa <handa@m17n.org>
15036
15037 * xfaces.c (Vface_resizing_fonts): New variable.
15038 (struct font_name): New member `resizing_ratio'.
15039 (font_resizing_ratio): New function.
15040 (split_font_name): Set font->resizing_ratio.
15041 (better_font_p): Pay attention to font->resizing_ratio.
15042 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
15043 RESX, and RESY fields.
15044 (try_alternative_families): Try scalable fonts if
15045 Vscalable_fonts_allowed is not Qt.
15046 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
15047
150482008-02-01 Dave Love <fx@gnu.org>
15049
15050 * xterm.c (xaw_scroll_callback): Cast correctly.
15051
150522008-02-01 Dave Love <fx@gnu.org>
15053
15054 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
15055 (lispy_kana_keys): Comment out.
15056 (make_lispy_event) [XK_kana_A]: Comment out.
15057
15058 * xterm.c (xaw_scroll_callback): Cast call_data.
15059 (XTread_socket): Deal with ASCII keysyms.
15060 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
15061
150622008-02-01 Dave Love <fx@gnu.org>
15063
15064 * xterm.c (Vx_keysym_table): New.
15065 (syms_of_xterm): Initialize it.
15066 (XTread_socket): Use it.
15067 From head: Eliminate incorrect optimization that tried to avoid
15068 decoding the output of X*LookupString.
15069 (x_get_font_repertory): Delete charset declaration.
15070
150712008-02-01 Kenichi Handa <handa@m17n.org>
15072
15073 * coding.c (detect_coding_charset): If only ASCII bytes are found,
15074 return 0.
15075 (Fdefine_coding_system_internal): Setup
15076 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
15077
150782008-02-01 Dave Love <fx@gnu.org>
15079
15080 * coding.c (Fcheck_coding_system): Doc fix.
15081
15082 * editfns.c (Finsert_byte): Return a proper value.
15083
150842008-02-01 Kenichi Handa <handa@m17n.org>
15085
15086 * coding.c (decode_coding): Fix args to translate_chars. Pay
15087 attention to Vstandard_translation_table_for_decode.
15088 (encode_coding): Fix args to translate_chars. Pay attention to
15089 Vstandard_translation_table_for_encode.
15090
15091 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
15092 SINGLE_BYTE_CHAR_P.
15093
15094 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
15095 not by SINGLE_BYTE_CHAR_P.
15096
15097 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
15098 SINGLE_BYTE_CHAR_P.
15099
15100 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
15101 SINGLE_BYTE_CHAR_P.
15102
15103 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
15104 by SINGLE_BYTE_CHAR_P.
15105
15106 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
15107 SINGLE_BYTE_CHAR_P.
15108
151092008-02-01 Dave Love <fx@gnu.org>
15110
15111 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
15112
151132008-02-01 Dave Love <fx@gnu.org>
15114
15115 * fns.c (Flanginfo): Fix typo.
15116
15117 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
15118
151192008-02-01 Kenichi Handa <handa@m17n.org>
15120
15121 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
15122 (detect_coding_emacs_mule, detect_coding_iso_2022)
15123 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
15124 incomplete byte sequence. Don't update *mask when correctly detected.
15125 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
15126 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
15127 (detect_coding, detect_coding_system): Adjust for the changes above.
15128
151292008-02-01 Kenichi Handa <handa@m17n.org>
15130
15131 * character.c (char_string): Rename from
15132 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
15133 (string_char): Rename from string_char.
15134
15135 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
15136 if C is greater than MAX_3_BYTE_CHAR.
15137 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
15138 string_char instead of string_char_with_unification.
15139
151402008-02-01 Dave Love <fx@gnu.org>
15141
15142 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
15143
151442008-02-01 Kenichi Handa <handa@m17n.org>
15145
15146 * keymap.c (push_key_description): Pay attention to force_multibyte.
15147
15148 * regex.c (re_search_2): Fix for the case of unibyte buffer.
15149
151502008-02-01 Dave Love <fx@gnu.org>
15151
15152 * charset.c (define_charset_internal): Rename `supprementary'.
15153
15154 * Makefile.in (lisp, shortlisp): Remove latin-N.
15155
151562008-02-01 Dave Love <fx@gnu.org>
15157
15158 * xfns.c (x_window, x_window): Use use_xim.
15159
15160 * xterm.c (use_xim): Initialize.
15161 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
15162 (x_term_init): Maybe set use_xim.
15163
15164 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
15165
151662008-02-01 Kenichi Handa <handa@m17n.org>
15167
15168 * search.c (search_buffer): Fix case-fold-search of multibyte
15169 characters.
15170 (boyer_moore): Rename the last argument to char_high_bits.
15171
151722008-02-01 Kenichi Handa <handa@m17n.org>
15173
15174 * xdisp.c (display_string): Fix for the case of zero width glyph.
15175
15176 * xfns.c (x_set_font): Change the error message of the case that
15177 x_new_fontset returns Qt.
15178
15179 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
15180 (Finternal_set_lisp_face_attribute): Use signal_error for the
15181 error of invalid fontset.
15182
15183 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
15184 fontset, return Qt.
15185
151862008-02-01 Dave Love <fx@gnu.org>
15187
15188 * unexelf.c (unexec): Make .got handling not SGI-specific.
15189
15190 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
15191
15192 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
15193
15194 * keyboard.c (read_key_sequence): Fix type error.
15195
15196 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
15197 type error.
15198
15199 * fontset.c (fontset_add): Return Lisp_Object.
15200
152012008-02-01 Dave Love <fx@gnu.org>
15202
15203 * charset.h (charset_ordered_list_tick): Declare extern.
15204
152052008-02-01 Kenichi Handa <handa@m17n.org>
15206
15207 The following changes (and some of 2008-02-01 changes of mine) are
15208 for handling syntax, category, and case conversion for unibyte
15209 characters by converting them to multibyte on the fly. With these
15210 changes, we don't have to setup syntax and case tables for unibyte
15211 characters in each language environment.
15212
15213 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
15214 multibyte if necessary.
15215
15216 * bytecode.c (Fbyte_code): Likewise.
15217
15218 * character.h (LEADING_CODE_LATIN_1_MIN)
15219 (LEADING_CODE_LATIN_1_MAX): New macros.
15220 (unibyte_to_multibyte_table): Extern it.
15221 (unibyte_char_to_multibyte): New macro.
15222 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
15223 (CHAR_LEADING_CODE): New macro.
15224 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
15225
15226 * character.c (unibyte_to_multibyte_table): New variable.
15227 (unibyte_char_to_multibyte): Move to character.h and define as macro.
15228 (multibyte_char_to_unibyte): If C is an eight-bit character,
15229 convert it to the corresponding byte value.
15230
15231 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
15232 not 1, signals an error. Update the elements of
15233 unibyte_to_multibyte_table.
15234 (init_charset_once): Initialize unibyte_to_multibyte_table.
15235 (syms_of_charset): Define the charset `iso-8859-1'.
15236
15237 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
15238 as is without converting it to unibyte. In a unibyte buffer,
15239 convert C to multibyte before checking the syntax.
15240
15241 * lisp.h (unibyte_char_to_multibyte): Delete extern.
15242
15243 * minibuf.c (Fminibuffer_complete_word): Use the macro
15244 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
15245
15246 * regex.h (struct re_pattern_buffer): New member target_multibyte.
15247
15248 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
15249 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
15250 that is zero, convert an eight-bit char to multibyte.
15251 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
15252 non-emacs case.
15253 (PATFETCH): Convert an eight-bit char to multibyte.
15254 (HANDLE_UNIBYTE_RANGE): New macro.
15255 (regex_compile): Setup the compiled pattern for multibyte chars
15256 even if the given regex string is unibyte. Use PATFETCH_RAW
15257 instead of PATFETCH in many places. To handle `charset'
15258 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
15259 only for ASCII chars.
15260 (analyse_first) <exactn>: Simplify because the compiled pattern
15261 is multibyte.
15262 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
15263 <charset>: Use CHAR_LEADING_CODE to get leading codes.
15264 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
15265 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
15266 multibyte always 1.
15267 (re_search_2): In emacs, set the locale variable multibyte to 1,
15268 otherwise to 0. New local variable target_multibyte. Check it
15269 to decide the multibyteness of STR1 and STR2. If
15270 target_multibyte is zero, convert unibyte chars to multibyte
15271 before translating and checking fastmap.
15272 (TARGET_CHAR_AND_LENGTH): New macro.
15273 (re_match_2_internal): In emacs, set the locale variable multibyte
15274 to 1, otherwise to 0. New local variable target_multibyte. Check
15275 it to decide the multibyteness of STR1 and STR2. Use
15276 TARGET_CHAR_AND_LENGTH to fetch a character from D.
15277 <charset, charset_not>: If multibyte is nonzero, check fastmap
15278 only for ASCII chars. Call bcmp_translate with
15279 target_multibyte, not with multibyte.
15280 <begline>: Declare the local variable C as `unsigned'.
15281 (bcmp_translate): Change the last arg name to target_multibyte.
15282
15283 * search.c (compile_pattern_1): Don't adjust the multibyteness of
15284 the regexp pattern and the matching target. Set cp->buf.multibyte
15285 to the multibyteness of the regexp pattern. Set
15286 cp->but.target_multibyte to the multibyteness of the matching target.
15287 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
15288 FETCH_STRING_CHAR_ADVANCE.
15289 (Freplace_match): Convert unibyte chars to multibyte.
15290
15291 * syntax.c (char_quoted, back_comment, scan_words)
15292 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
15293 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
15294 unibyte chars to multibyte.
15295 (skip_chars): Delete the arg syntaxp, and move the code for
15296 handling syntaxes to skip_syntaxes. Change callers.
15297 Fix the case that the multibyteness of STRING and the current
15298 buffer doesn't match.
15299 (skip_syntaxes): New function.
15300 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
15301 SINGLE_BYTE_CHAR_P.
15302
153032008-02-01 Kenichi Handa <handa@m17n.org>
15304
15305 * xfaces.c (QCfontset): New variable.
15306 (LFACE_FONTSET): New macro.
15307 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
15308 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
15309 (Finternal_set_lisp_face_attribute)
15310 (Finternal_get_lisp_face_attribute): Handle QCfontset.
15311 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
15312 check also LFACE_FONTSET_INDEX.
15313 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
15314 attrs[LFACE_FONT_INDEX].
15315 (syms_of_xfaces): Intern and staticpro QCfontset.
15316
15317 * dispextern.h (enum lface_attribute_index): New member
15318 LFACE_FONTSET_INDEX.
15319
15320 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
15321
153222008-02-01 Kenichi Handa <handa@m17n.org>
15323
15324 * coding.c (coding_set_destination): Fix coding->destination for
15325 the case converting a region.
15326 (encode_coding_utf_8): Encode eight-bit chars as single byte.
15327 (encode_coding_object): Fix coding->dst_pos and
15328 coding->dst_pos_byte for the case converting a region.
15329
15330 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
15331
15332 * character.h (BYTE8_STRING): New macro.
15333
15334 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
15335
153362008-02-01 Kenichi Handa <handa@m17n.org>
15337
15338 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
15339 characters by octal form.
15340
15341 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15342
15343 * buffer.h (_fetch_multibyte_char_len): Delete extern.
15344 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
15345 _fetch_multibyte_char_len.
15346 (FETCH_CHAR_AS_MULTIBYTE): New macro.
15347
15348 * casetab.c (set_canon, set_identity, shuffle): Simplify.
15349
15350 * casefiddle.c (casify_object): Simplify. Handle the case that
15351 the case conversion change the byte length.
15352 (casify_region): Likewise.
15353
15354 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
15355
15356 * character.c (_fetch_multibyte_char_len): Delete this variable.
15357 (syms_of_character): Setup Vprintable_chars.
15358
15359 * editfns.c (Fchar_equal): Fix for the unibyte case.
15360 (Finsert_byte): New function.
15361 (syms_of_editfns): Defsubr it.
15362
15363 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
15364 of direct code 0x3ffff.
15365
15366 * search.c (Freplace_match): Fix for the unibyte case.
15367
153682008-02-01 Kenichi Handa <handa@m17n.org>
15369
15370 * lread.c (safe_to_load_p): Fix the logic.
15371
15372 * syntax.c (scan_words): Don't treat characters belonging to
15373 different scripts as constituting a word.
15374
15375 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15376
15377 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
15378
15379 * emacs.c (main): In the case of --unibyte, instead of aborting on
15380 finding non-empty buffer, make it unibyte.
15381
153822008-02-01 Kenichi Handa <handa@m17n.org>
15383
15384 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
15385 to create a fontset.
15386
153872008-02-01 Dave Love <fx@gnu.org>
15388
15389 * character.c (Funibyte_char_to_multibyte): Doc fix.
15390
15391 * xfns.c [HAVE_STDLIB_H]: Fix last change.
15392
153932008-02-01 Kenichi Handa <handa@m17n.org>
15394
15395 * fontset.c (fontset_add): Make the type `int'.
15396 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
15397
15398 * character.c (unibyte_char_to_multibyte)
15399 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
15400 charset_unibyte, not charset_primary.
15401
15402 * charset.h (charset_unibyte): Extern it instead of charset_primary.
15403
15404 * charset.c (charset_unibyte): Rename from charset_primary.
15405 (Funibyte_charset): Rename from Fprimary_charset.
15406 (Fset_unibyte_charset): Rename from Fset_primary_charset.
15407 (syms_of_charset): Adjust for the above changes.
15408
15409 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15410 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15411 it->multibyte_p is zero.
15412
15413 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
15414 Delete extern.
15415
154162008-02-01 Kenichi Handa <handa@m17n.org>
15417
15418 * coding.c (Fdefine_coding_system_internal): Fix category setting
15419 for a coding system of type iso-2022.
15420
154212008-02-01 Kenichi Handa <handa@m17n.org>
15422
15423 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
15424
154252008-02-01 Kenichi Handa <handa@m17n.org>
15426
15427 * syntax.c (Vnext_word_boundary_function_table): New variable.
15428 (next-word-boundary-function-table): Declare it as a Lisp variable
15429 in syms_of_syntax.
15430 (scan_words): Call functions in Vnext_word_boundary_function_table
15431 if any.
15432
15433 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
15434
15435 * fontset.c (fs_load_font): If fontp->charset is not negative,
15436 return fontp without setting its members.
15437
154382008-02-01 Dave Love <fx@gnu.org>
15439
15440 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
15441
15442 * m/sparc.h (HAVE_ALLOCA): Delete.
15443
15444 * s/irix6-5.h: Don't include strings.h.
15445 (bcopy, bzero, bcmp): Don't undef.
15446
15447 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
15448
15449 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
15450 (TIOCSIGSEND): Don't test IRIX6.
15451 (bcopy, bzero, bcmp): Define conditionally.
15452
154532008-02-01 Kenichi Handa <handa@m17n.org>
15454
15455 * buffer.c (Qas, Qmake, Qto): New variables.
15456 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
15457 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
15458
15459 * callproc.c (Fcall_process): Don't call insert_1_both directly if
15460 we are inserting a process output into a multibyte buffer.
15461
15462 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
15463 multibyte_char_to_unibyte.
15464
15465 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
15466 by the primary charset, make it eight-bit char.
15467 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
15468
15469 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
15470 (charset_8_bit__control, charset_8_bit_graphic)
15471 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
15472 (define_charset_internal): New function.
15473 (syms_of_charset): Call define_charset_internal for pre-defined
15474 charsets.
15475
15476 * charset.h (charset_8_bit): Extern it.
15477
15478 * coding.c (make_conversion_work_buffer): Adjust for the change
15479 of Fset_buffer_multibyte.
15480 (encode_coding_raw_text): Increment p0 in the loop.
15481
15482 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
15483
15484 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
15485 for the change of Fset_buffer_multibyte.
15486
15487 * fns.c (Fstring_to_multibyte): New function.
15488 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
15489
154902008-02-01 Dave Love <fx@gnu.org>
15491
15492 * xfns.c (x_put_x_image): Declare args.
15493
15494 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
15495 (try_font_list): Declare an arg.
15496
15497 * xdisp.c (message2_nolog, set_message): Declare an arg.
15498
15499 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
15500
15501 * syntax.c (scan_sexps_forward): Declare an arg.
15502
15503 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15504 Declare an arg.
15505
15506 * lisp.h (Fnew_fontset): Declare.
15507
15508 * keymap.c (push_key_description): Call CHARACTERP correctly.
15509
15510 * fontset.c (fontset_add): Declare args. Call make_number correctly.
15511 (face_for_char): Delete unused vars.
15512 (Fset_fontset_font): Doc fix. Delete unused vars.
15513
15514 * doc.c (Fsubstitute_command_keys): Delete unused vars.
15515
15516 * composite.c (update_compositions): Declare arg.
15517
15518 * cm.c (calccost, cmgoto): Declare args.
15519
15520 * charset.c: Remove `emacs' conditional. Doc fixes.
15521 (map_char_table_for_charset): Declare.
15522
15523 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
15524
15525 * ccl.c: Remove `emacs' conditional.
15526
155272008-02-01 Kenichi Handa <handa@m17n.org>
15528
15529 The following changes are to allow specifying multiple font
15530 patterns for a character range (specified by script or charset).
15531
15532 * Makefile.in (abbrev.o): Depend on syntax.h.
15533 (xfaces.o): Depend on charset.h.
15534
15535 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
15536 SINGLE_BYTE_CHAR_P.
15537
15538 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
15539
15540 * character.h (Vchar_script_table): Extern it.
15541
15542 * character.c (Vscript_alist): Delete.
15543 (Vchar_script_table, Qchar_script_table): New variable.
15544 (syms_of_character): Declare Vchar_script_table as a lisp variable
15545 and initialize it.
15546
15547 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
15548 have property char-table-extra-slots, make no extra slot.
15549
15550 * dispextern.h (struct face): Delete member `charset'.
15551 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
15552 SINGLE_BYTE_CHAR_P.
15553 (choose_face_font, lookup_non_ascii_face, font_name_registry):
15554 Add prototypes.
15555 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
15556 (generate_ascii_font_name): Rename from generate_ascii_font.
15557
15558 * fontset.h (get_font_repertory_func): New prototype.
15559 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
15560 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
15561
15562 * fontset.c (Qprepend, Qappend): New variables.
15563 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
15564 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
15565 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
15566 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
15567 (fontset_ref_and_range, fontset_add, reorder_font_vector)
15568 (load_font_get_repertory): New functions.
15569 (fontset_set): Delete.
15570 (fontset_face): New arg FACE. Return face ID, not face.
15571 Complete re-write to handle new fontset structure. Change caller.
15572 (free_face_fontset): Use ASET istead of AREF (X) = Y.
15573 (face_for_char): Don't call lookup_face.
15574 (make_fontset_for_ascii_face): New arg FACE.
15575 (fs_load_font): New arg CHARSET_ID. Don't check
15576 Vfont_encoding_alist here.
15577 (find_font_encoding): New function.
15578 (list_fontsets): Use STRINGP, not ! NILP.
15579 (accumulate_script_ranges): New function.
15580 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
15581 re-written to handle new fontset structure.
15582 (Ffontset_font): Return a copy of element.
15583 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
15584 docstring of font-encoding-alist.
15585
15586 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
15587 (Fset_fotset_font): Fix arguments to 5.
15588
15589 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
15590
15591 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
15592 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15593 (highlight_trailing_whitespace): Adjust for the change of
15594 lookup_named_face.
15595
15596 * xfaces.c: Include charset.h.
15597 (load_face_font): Delete argument C. Change caller.
15598 (generate_ascii_font_name): Rename from generate_ascii_font.
15599 (font_name_registry): New function.
15600 (cache_face): Store ascii faces before non-ascii faces in buckets.
15601 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
15602 Lookup only ascii faces.
15603 (lookup_non_ascii_face): New function.
15604 (lookup_named_face): Delete argument C. Change caller.
15605 (lookup_derived_face): Delete argument C. Change caller.
15606 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
15607 a string, just call font_list with it.
15608 (choose_face_font): Delete arguments FACE and C. New arg
15609 FONT_SPEC. Change caller.
15610 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
15611 Change caller.
15612 (realize_non_ascii_face): New function.
15613 (realize_x_face): Call load_face_font here.
15614 (realize_tty_face): Delete argument C. Change caller.
15615 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
15616 get a face ID.
15617 (dump_realized_face): Don't print charset of FACE.
15618
15619 * xfns.c (x_set_font): Always call x_new_fontset and
15620 store_frame_parameter.
15621 (Fx_create_frame): Call x_new_fontset, not x_new_font.
15622 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
15623
15624 * xterm.h (x_get_font_repertory): Extern it.
15625
15626 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15627 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15628 it->multibyte_p is zero.
15629 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15630 (x_new_fontset): If FONTSETNAME doesn't match any existing
15631 fontsets, create a new one.
15632 (x_get_font_repertory): New function.
15633
156342008-02-01 Kenichi Handa <handa@m17n.org>
15635
15636 * coding.c (Ffind_coding_systems_region_internal): Detect an
15637 ASCII only string correctly.
15638
15639 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
15640 version is 0.
15641
156422008-02-01 Kenichi Handa <handa@m17n.org>
15643
15644 * lread.c: Include "coding.h".
15645 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
15646 (load_each_byte, unread_char): New variables.
15647 (readchar_backlog): Delete.
15648 (readchar): Return a character unless load_each_byte is nonzero.
15649 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
15650 cons. If unread_char is not -1, simply return it.
15651 (unreadchar): Handle the case that readcharfun is
15652 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
15653 (read_multibyte): Delete.
15654 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
15655 (read_emacs_mule_char): New functions.
15656 (Fload): Even if the file doesn't have the extension ".elc", if
15657 safe_to_load_p returns a positive version number, assume that the
15658 file contains bytecompiled code. If the version is less than 22,
15659 load the file while decoding multibyte sequences by emacs-mule.
15660 (readevalloop): Don't use readchar_backlog.
15661 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
15662 (Fread_from_string): Pay attention to the case that STREAM is a cons.
15663 (read_escape): Delete the arg BYTEREP.
15664 (read1): Set load_each_byte to 1 temporarily while handling
15665 #@NUMBER. Don't call read_multibyte.
15666 (read_vector): Call Fread with a cons. If readcharfun is
15667 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
15668 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
15669 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
15670 and Qload_force_doc_strings.
15671
156722008-02-01 Kenichi Handa <handa@m17n.org>
15673
15674 * xdisp.c (face_before_or_after_it_pos): Call
15675 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15676
156772008-02-01 Kenichi Handa <handa@m17n.org>
15678
15679 * character.h (TRAILING_CODE_P): New macro.
15680 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
15681 (string_char_with_unification): Fix prototype.
15682 (Vscript_alist): Extern it.
15683
15684 * character.c (Vscript_alist): New variable.
15685 (string_char_with_unification, str_as_unibyte)
15686 (string_escape_byte8): Add `const' to local variables.
15687 (syms_of_character): Declare script-alist as a Lisp variable.
15688
15689 * charset.h (Vcharset_ordered_list): Extern it.
15690 (charset_ordered_list_tick): Extern it.
15691 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
15692 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
15693 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
15694 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
15695 (Funify_charset): Adjust for the change of Funify_charset.
15696
15697 * charset.c (charset_ordered_list_tick): New variable.
15698 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
15699 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
15700 deunify intead of unify a charset.
15701 (string_xstring_p): Add `const' to local variables.
15702 (find_charsets_in_text): Add `const' to arguments and local variables.
15703 (encode_char): Adjust for the change of Funify_charset. Fix
15704 detecting of invalid code.
15705 (Fset_charset_priority): Increment charset_ordered_list_tick.
15706 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
15707 and TO_CODE.
15708
15709 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
15710 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
15711 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
15712 (decode_coding_ccl, consume_chars)
15713 (Ffind_coding_systems_region_internal)
15714 (Fcheck_coding_systems_region): Add `const' to local variables.
15715
15716 * print.c (print_object): Use octal form for printing the
15717 contents of a bool vector.
15718
157192008-02-01 Dave Love <fx@gnu.org>
15720
15721 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
15722 <version == 20>: Refuse to load.
15723
157242008-02-01 Dave Love <fx@gnu.org>
15725
15726 * fns.c: Move coding.h.
15727 (Qcodeset, Qdays, Qmonths): New.
15728 (concat): Use CHARACTERP instead of INTEGERP.
15729 (Flocale_codeset): Delete.
15730 (Flanginfo): New function.
15731 (syms_of_fns): Change accordingly.
15732
15733 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
15734
157352008-02-01 Dave Love <fx@gnu.org>
15736
15737 * casetab.c (init_casetab_once, init_casetab_once): Fix
15738 CHAR_TABLE_SET call.
15739
15740 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
15741
15742 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
15743
15744 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
15745 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
15746 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
15747
15748 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
15749
15750 * coding.c (ENCODE_DESIGNATION, decode_eol)
15751 (make_conversion_work_buffer, code_conversion_restore)
15752 (Fdefine_coding_system_internal): Convert Lisp types.
15753 (code_conversion_restore): Use EQ, not ==.
15754 (Fencode_coding_string): Fix code_convert_string call.
15755
15756 * coding.h (code_convert_region): Fix prototype.
15757
15758 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
15759
15760 * fontset.c (fontset_ref, fontset_set, fs_load_font)
15761 (Ffontset_info): Convert Lisp types.
15762
15763 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
15764
15765 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
15766
15767 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
15768
15769 * chartab.c: Include "...h", not <...h> in some cases.
15770
15771 * callproc.c (Fcall_process): Remove unused variables.
15772
157732008-02-01 Dave Love <fx@gnu.org>
15774
15775 * coding.c (Fset_coding_system_priority): Allow null arg list.
15776
157772008-02-01 Dave Love <fx@gnu.org>
15778
15779 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15780 (Fself_insert_and_exit): Use CHARACTERP.
15781
15782 * callproc.c (Fcall_process): Remove unused vars.
15783
15784 * xterm.c (XTread_socket): Add extra dead keysyms.
15785
15786 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
15787
15788 * dispextern.h: Remove prototypes for redraw_frame,
15789 redraw_garbaged_frames.
15790
15791 * cmds.c (Fself_insert_command): Use CHARACTERP.
15792
15793 * chartab.c (make_sub_char_table): Remove unused var.
15794 (Fset_char_table_default, Fmap_char_table): Doc fix.
15795
15796 * keymap.c (access_keymap): Remove generic char code.
15797 (push_key_description): Use CHARACTERP.
15798
157992008-02-01 Dave Love <fx@gnu.org>
15800
15801 * charset.c: Doc fixes.
15802 (Funify_charset): Extra checking.
15803
158042008-02-01 Dave Love <fx@gnu.org>
15805
15806 * lread.c: Remove some unused variables.
15807 (safe_to_load_p): If safe, return the magic number version byte.
15808 (Fload): Maybe use load-with-code-conversion.
15809
158102008-02-01 Kenichi Handa <handa@m17n.org>
15811
15812 * category.c (Fmodify_category_entry): Don't modify the contents
15813 of category_set for characters out of the range. Avoid
15814 unnecessary modification.
15815
15816 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
15817 Vchar_unify_table. The default value of the table is now nil.
15818
15819 * character.c (syms_of_character): Setup Vchar_width_table for
15820 eight-bit-control and raw-byte chars.
15821
15822 * charset.h (enum define_charset_arg_index): Delete
15823 charset_arg_parents and add charset_arg_subset and
15824 charset_arg_superset.
15825 (enum charset_attr_index): Delete charset_parents and add
15826 charset_subset and charset_superset.
15827 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
15828 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
15829 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
15830 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
15831 (CHARSET_SUPERSET): New macros.
15832 (charset_work): Extern it.
15833 (ENCODE_CHAR): Use charset_work.
15834 (CHAR_CHARSET_P): Adjust for the change of encoder format.
15835 (map_charset_chars): Extern it.
15836
15837 * charset.c (load_charset_map): Set the default value of encoder
15838 and deunifier char-tables to nil.
15839 (map_charset_chars): Change argument. Change callers. Use
15840 map_char_table_for_charset instead of map_char_table.
15841 (Fmap_charset_chars): New optional args from_code and to_code.
15842 (Fdefine_charset_internal): Adjust for the change of
15843 `define-charset' (:parents -> :subset or :superset).
15844 (charset_work): New variable.
15845 (encode_char, syms_of_charset): Adjust for the change of
15846 Fdefine_charset_internal.
15847 (Ffind_charset_string): Setup the vector `charsets' correctly.
15848
15849 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
15850 the previous change.
15851 (char_table_ref_and_range): Adjust for the above change.
15852 (map_sub_char_table_for_charset): New function.
15853 (map_char_table_for_charset): New function.
15854
15855 * keymap.c (describe_vector): Handle a char-table directly here.
15856 (describe_char_table): Delete.
15857
15858 * lisp.h (map_charset_chars): Delete.
15859
158602008-02-01 Dave Love <fx@gnu.org>
15861
15862 * fns.c (count_combining): Comment out (unused).
15863 (Flocale_codeset): New.
15864 (syms_of_fns): Defsubr it.
15865
15866 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
15867 (size_t): Remove.
15868
158692008-02-01 Dave Love <fx@gnu.org>
15870
15871 * Makefile.in (chartab.o): Depend on charset.h.
15872
158732008-02-01 Kenichi Handa <handa@m17n.org>
15874
15875 * character.c (syms_of_character): Set the default value of
15876 Vprintable_chars to Qnil.
15877
158782008-02-01 Dave Love <fx@gnu.org>
15879
15880 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
15881
158822008-02-01 Kenichi Handa <handa@m17n.org>
15883
15884 * charset.c (load_charset_map): Handle the case that from < to
15885 correctly.
15886
15887 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
15888 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
15889 Pay attention to raw-8-bit chars.
15890
158912008-02-01 Kenichi Handa <handa@m17n.org>
15892
15893 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
15894 It is not bytecompiled now.
15895
15896 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
15897 (charset_jisx0208): New variables.
15898 (Fdefine_charset_internal): Setup them if appropriate.
15899 (init_charset_once): Initialize them to -1.
15900
15901 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
15902 (charset_jisx0208): Extern them.
15903
15904 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
15905 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
15906 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
15907 (setup_iso_safe_charsets): Fix arguments to Fassq.
15908 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
15909 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
15910 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
15911 (encode_coding_iso_2022): Change the 1st arg to
15912 ENCODE_ISO_CHARACTER to a variable.
15913
159142008-02-01 Kenichi Handa <handa@m17n.org>
15915
15916 * charset.h (enum define_charset_arg_index): New enums
15917 charset_arg_min_code and charset_arg_max_code.
15918 (struct charset): New member char_index_offset.
15919
15920 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
15921 Take charset->char_index_offset into account.
15922 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
15923 args[charset_arg_max_code]. Setup charset.char_index_offset.
15924 (syms_of_charset): Fix args to Fdefine_charset_internal.
15925
159262008-02-01 Dave Love <fx@gnu.org>
15927
15928 * coding.c (decode_coding_utf_8): Reject overlong sequences.
15929
159302008-02-01 Dave Love <fx@gnu.org>
15931
15932 * coding.c: Doc fixes.
15933 (Fcoding_system_aliases): Fix return value.
15934 (Qmac): Remove (duplicated) definition.
15935
159362008-02-01 Dave Love <fx@gnu.org>
15937
15938 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
15939 functions.
15940
15941 * character.c (Fstring): Doc fix.
15942
15943 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
15944
15945 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
15946 ids.
15947 (font-encoding-alist): Doc fix.
15948
159492008-02-01 Dave Love <fx@gnu.org>
15950
15951 * term.c (costs_set): Declare static, non-initialized for pcc.
15952 (encode_terminal_code): Remove unused var.
15953
15954 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15955 for K&R.
15956
15957 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
15958
15959 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
15960 (suffixes): Move out of make_subsidiaries for K&R.
15961
15962 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
15963
15964 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
15965
159662008-02-01 Dave Love <fx@gnu.org>
15967
15968 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
15969
15970 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
15971
159722008-02-01 Yong Lu <lyongu@asia-infonet.com>
15973
15974 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
15975
15976 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
15977
159782008-02-01 Kenichi Handa <handa@m17n.org>
15979
15980 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
15981 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
15982
159832008-02-01 Kenichi Handa <handa@m17n.org>
15984
15985 * coding.c (decode_coding_charset): Adjust for the change of
15986 Fdefine_coding_system_internal.
15987 (Fdefine_coding_system_internal): For a coding system of
15988 `charset' type, store a list of charset IDs in
15989 `charset_attr_charset_valids' element of coding attributes.
15990
159912008-02-01 Kenichi Handa <handa@m17n.org>
15992
15993 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
15994 (emacs_mule_char): New arg src. Delete arg `composition'. Change
15995 caller. Handle 2-byte and 3-byte charsets correctly.
15996 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
15997 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
15998 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
15999 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16000 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16001 sequence.
16002 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16003 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16004 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16005 and alt&rule composition.
16006 (decode_coding_iso_2022): Handle composition correctly.
16007 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16008
16009 * charset.c (Fdefine_charset_internal): Fix bug for the case of
16010 re-defining a charset. If the charset has :emacs-mule-id, setup
16011 emacs_mule_bytes.
16012 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
16013
160142008-02-01 Kenichi Handa <handa@m17n.org>
16015
16016 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
16017 (encode_coding_big5, encode_coding_charset): If coding requires safe
16018 encoding, produce a character specified by
16019 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
16020
160212008-02-01 Dave Love <fx@gnu.org>
16022
16023 * xterm.c (XSetIMValues): Declare.
16024
16025 * process.c: Conditionally include sys/wait.h, pty.h.
16026
16027 * print.c (print_object): Fix print format for 64-bit systems.
16028
16029 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
16030
16031 * buffer.c (emacs_strerror): Declare.
16032
16033 * fontset.c (Fclear_face_cache): Declare.
16034 (accumulate_font_info): Comment-out (unused).
16035 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
16036 variables.
16037
16038 * character.h (string_escape_byte8): Declare.
16039
16040 * charset.c (load_charset_map, load_charset_map_from_file): Remove
16041 unused vars.
16042 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
16043 (Fmap_charset_chars): Doc fix.
16044
16045 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
16046 (Fset_coding_system_priority, Fset_coding_system_priority)
16047 (Fdefine_coding_system_internal): Doc fix.
16048
160492008-02-01 Dave Love <fx@gnu.org>
16050
16051 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
16052
160532008-02-01 Kenichi Handa <handa@m17n.org>
16054
16055 * character.c (string_escape_byte8): Make multibyte string with
16056 correct size.
16057
16058 * charset.c (Fmake_char): Delete unnecessary code.
16059
160602008-02-01 Kenichi Handa <handa@m17n.org>
16061
16062 * xfns.c (x_encode_text): Allocate coding.destination here, and
16063 call encode_coding_object with dst_object Qnil.
16064
16065 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
16066 multibyte form correctly.
16067
16068 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
16069 against Vfont_encoding_alist.
16070
16071 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
16072 handling of charset list.
16073 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
16074 (decode_coding_object): Move point to coding->dst_pos before
16075 calling post-read-conversion function.
16076 (encode_coding_object): Give correct arguments to
16077 pre-write-conversion. Ignore the return value of
16078 pre-write-conversion function. Pay attention to the case that
16079 pre-write-conversion changes the current buffer. If dst_object is
16080 Qt, even if coding->src_bytes is zero, allocate at least one byte
16081 to coding->destination.
16082
16083 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
16084
16085 * charset.c (Fmake_char): Make it more backward compatible.
16086 (Fmap_charset_chars): Fix docstring.
16087
160882008-02-01 Dave Love <fx@gnu.org>
16089
16090 * coding.c: Doc fixes.
16091 (Fdefine_coding_system_alias): Use names, not symbols, in
16092 coding-system-alist.
16093
160942008-02-01 Kenichi Handa <handa@m17n.org>
16095
16096 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
16097 of calling free_realized_face.
16098
160992008-02-01 Yong Lu <lyongu@asia-infonet.com>
16100
16101 * charset.c (read_hex): Don't treat SPC as a comment starter.
16102 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
16103 (Fdecode_char): Fix typo.
16104
161052008-02-01 Kenichi Handa <handa@m17n.org>
16106
16107 * charset.h (struct charset): New member `code_space_mask'.
16108
16109 * coding.c (coding_set_source): Delete the local variable beg_byte.
16110 (encode_coding_charset, Fdefine_coding_system_internal):
16111 Delete the local variable charset.
16112 (Fdefine_coding_system_internal): Setup
16113 attrs[coding_attr_charset_valids] correctly.
16114
16115 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
16116 member to check if CODE is valid or not.
16117 (Fdefine_charset_internal): Initialize `code_space_mask' member.
16118 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
16119 is within the range of charset->min_code and carset->max_code.
16120
161212008-02-01 Dave Love <fx@gnu.org>
16122
16123 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
16124
16125 * dispextern.h (generate_ascii_font): Fix return type.
16126
16127 * xfaces.c (generate_ascii_font): Fix arg declaration.
16128
16129 * coding.c (coding_inherit_eol_type)
16130 (Fset_terminal_coding_system_internal)
16131 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
16132
161332008-02-01 Kenichi Handa <handa@m17n.org>
16134
16135 * coding.c (decode_coding_charset, encode_coding_charset): Handle
16136 multiple charsets correctly.
16137
161382008-02-01 Kenichi Handa <handa@m17n.org>
16139
16140 * search.c (boyer_moore): Fix handling of multibyte character
16141 translation.
16142
16143 * xdisp.c (display_mode_element): When the variable `elt' is
16144 changed, update `this' and `lisp_string'.
16145
161462008-02-01 Kenichi Handa <handa@m17n.org>
16147
16148 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
16149
16150 * callproc.c (Fcall_process): Be sure to give the current buffer
16151 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
16152
16153 * charset.c (struct charset_map_entries): New struct.
16154 (load_charset_map): Rename from parse_charset_map. New args
16155 entries and n_entries. Change caller.
16156 (load_charset_map_from_file): Rename from load_charset_map.
16157 Change caller. New arg control_flag. Call load_charset_map at
16158 the tail.
16159 (load_charset_map_from_vector): New function.
16160 (Fdefine_charset_internal): Setup charset.compact_codes_p.
16161 (encode_char): If the charset is compact, change a character index
16162 to a code point.
16163
16164 * coding.c (coding_alloc_by_making_gap): Check the case that the
16165 source and destination are the same correctly.
16166 (decode_coding_raw_text): Set coding->consumed_char and
16167 coding->consumed to 0.
16168 (produce_chars): If coding->chars_at_source is nonzero, update
16169 coding->consumed_char and coding->consumed before calling
16170 alloc_destination.
16171 (Fdefine_coding_system_alias): Register ALIAS in
16172 Vcoding_system_alist.
16173 (syms_of_coding): Define `no-conversion' coding system at the tail.
16174
16175 * fileio.c (Finsert_file_contents): Set coding_system instead of
16176 val. If the current buffer is multibyte, always call
16177 decode_coding_gap.
16178
16179 * xfaces.c (try_font_list): Give higher priority to fontset's
16180 family than face's family.
16181
161822008-02-01 Kenichi Handa <handa@m17n.org>
16183
16184 * callproc.c (Fcall_process): Be sure to give the current buffer
16185 to decode_coding_c_string.
16186
16187 * xfaces.c (try_font_list): Give a family specified in a fontset
16188 higher priority than a family specified in a face.
16189
161902008-02-01 Kenichi Handa <handa@m17n.org>
16191
16192 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
16193 Fix arguments to insert_from_buffer.
16194
16195 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
16196
161972008-02-01 Kenichi Handa <handa@m17n.org>
16198
16199 * coding.c (produce_chars): Set the variable `multibytep' correctly.
16200 (decode_coding_gap): Set coding->dst_multibyte correctly.
16201
162022008-02-01 Kenichi Handa <handa@m17n.org>
16203
16204 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
16205 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
16206 (encode_coding_utf_16): Substitute coding->default_char for
16207 non-Unicode characters.
16208 (decode_coding): Don't call record_insert here.
16209 (setup_coding_system): Initialize `surrogate' of
16210 coding->spec.utf_16 to 0.
16211 (EMIT_ONE_BYTE): Fix for multibyte case.
16212
16213 * insdel.c (insert_from_gap): Call record_insert.
16214
162152008-02-01 Kenichi Handa <handa@m17n.org>
16216
16217 * casefiddle.c (casify_region): Fix multibyte case.
16218
16219 * character.c (c_string_width): Add return type `int'.
16220 (char_string_with_unification): Delete arg ADVANCED.
16221
16222 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
16223 (CHAR_STRING): Adjust for the change of char_string_with_unification.
16224 (CHAR_STRING_ADVANCE): Make it do-while statement.
16225
16226 * chartab.c (sub_char_table_set_range): Optimize for the case
16227 DEPTH == 3. Add workaround code for a GCC optimization bug.
16228
16229 * charset.c (parse_charset_map): Remove an unused variable.
16230
16231 * coding.c: Delete unused variables.
16232
16233 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
16234 earlier. If inserted is zero and the coding system doesn't
16235 require flushing, don't call decode_coding_gap.
16236
16237 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
16238
162392008-02-01 Kenichi Handa <handa@m17n.org>
16240
16241 The following changes are for using Unicode as an internal
16242 character model, and use UTF-8 format for buffer/string
16243 representation.
16244
16245 * .gdbinit (xchartable): Adjust for the change of char table structure.
16246 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
16247
16248 * Makefile.in (obj): Add character.o and chartab.o.
16249 (lisp, shortlisp): Remove utf-8.elc.
16250 (*.o): For many files, change dependency on charset.h to
16251 character.h, and add dependency on character.h.
16252 (character.o, chartab.o): New targets.
16253
16254 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
16255 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
16256 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
16257 of "charset.h".
16258
16259 * dired.c, filelock.c: Include "character.h".
16260
16261 * alloc.c: Include "character.h" instead of "charset.h".
16262 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
16263 (syms_of_alloc): Remove defsubr for Smake_char_table.
16264
16265 * buffer.c: Include "character.h" instead of "charset.h", don't
16266 include "coding.h".
16267 (Fset_buffer_multibyte): Adjust for UTF-8.
16268
16269 * buffer.h: EXFUN Fbuffer_live_p.
16270
16271 * callproc.c: Include "character.h" instead of "charset.h".
16272 (Fcall_process): Big change for the new code-conversion APIs.
16273
16274 * casetab.c: Include "character.h" instead of "charset.h".
16275 (set_canon, set_identity, shuffle): Adjust for the new
16276 map_char_table spec.
16277 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
16278 accessing the char table structure.
16279
16280 * chartab.c: New file that implements char table.
16281
16282 * category.c: Include "character.h".
16283 (copy_category_entry): New function.
16284 (copy_category_table): Call map_char_table and copy_category_entry.
16285 (Fmake_category_table): Initialize all top-level slots.
16286 (char_category_set): New function.
16287 (modify_lower_category_set): Delete.
16288 (Fmodify_category_entry): Call char_table_ref_and_range.
16289
16290 * category.h (CATEGORY_SET): Just call char_category_set.
16291
16292 * ccl.c: Include "character.h".
16293 (Qccl, Qcclp): New variables.
16294 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
16295 it's less than 256.
16296 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
16297 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
16298 and DST type.
16299 (ccl_driver): Change types of argument, adjust code accordingly.
16300 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
16301 ccl_driver.
16302 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
16303
16304 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
16305 New members src_multibyte, dst_multibyte, consumed, and produced.
16306 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
16307 (CODING_SPEC_CCL_PROGRAM): New macro.
16308 (ccl_driver): Update prototype.
16309 (Qccl, Qcclp, Fccl_program_p): Extern them.
16310 (CHECK_CCL_PROGRAM): New macro.
16311
16312 * character.c, character.h, chartab.c: New files.
16313
16314 * charset.c: Mostly re-written. Move character and multibyte sequence
16315 handling codes to character.c.
16316
16317 * charset.h: Mostly re-written. Move character and multibyte sequence
16318 handling codes to character.h.
16319
16320 * coding.c, coding.h: Mostly re-written.
16321
16322 * composite.c: Include "character.h" instead of "charset.h".
16323 (CHAR_WIDTH): Move to character.h.
16324 (HASH_KEY, HASH_VALUE): Delete.
16325
16326 * composite.h (enum composition_method): Change order of enumeration
16327 symbols.
16328
16329 * data.c: Include "character.h" instead of "charset.h".
16330 (Faref): Call CHAR_TABLE_REF for a char table.
16331 (Faset): Call CHAR_TABLE_SET for a char table.
16332
16333 * dispextern.h (free_realized_face, check_face_attribytes)
16334 (generate_ascii_font): Extern them.
16335 (free_realized_multibyte_face): Delete extern.
16336
16337 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
16338 table structure.
16339
16340 * editfns.c: Include "character.h" instead of "charset.h".
16341 (Fchar_to_string): Always call CHAR_STRING.
16342
16343 * emacs.c (main): Call init_charset_once, init_charset,
16344 syms_of_chartab, and syms_of_character.
16345
16346 * fileio.c: Include "character.h" instead of "charset.h".
16347 (Finsert_file_contents): Big change for the new code-conversion API.
16348 (choose_write_coding_system, Fwrite_region): Likewise.
16349 (build_annotations_2): Delete.
16350 (e_write): Big change for the new code-conversion API.
16351
16352 * fns.c: Include "character.h" instead of "charset.h".
16353 (copy_sub_char_table): Move to chartab.c.
16354 (Fcopy_sequence): Call copy_char_table for a char table.
16355 (concat): Delete codes calling count_multibyte.
16356 (string_char_to_byte, string_byte_to_char): Adjust for the new
16357 multibyte form.
16358 (internal_equal): Adjust for the change of char table structure.
16359 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
16360 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
16361 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
16362 (char_table_translate, optimize_sub_char_table)
16363 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
16364 chartab.c.
16365 (char_table_ref_and_index): Delete.
16366 (HASH_KEY, HASH_VALUE): Move to lisp.h.
16367 (Fmd5): Call preferred_coding_system instead of accessing
16368 Vcoding_category_list. Adjust for the new code-conversion API.
16369 (syms_of_fns): Move defsubr for char table related functions to
16370 chartab.c.
16371
16372 * fontset.c: Mostly re-written.
16373
16374 * fontset.h (struct font_info): Change type of the member encoding_type.
16375 (enum FONT_SPEC_INDEX): New enum.
16376 (fontset_font_pattern, fs_load_font): Update prototype.
16377 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
16378
16379 * indent.c: Include "character.h" instead of "charset.h".
16380 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
16381
16382 * insdel.c: Include "character.h" instead of "charset.h".
16383 (copy_text): Don't refer to Vnonascii_translation_table.
16384 (insert_from_gap): New function.
16385
16386 * keyboard.c: Include "character.h" instead of "charset.h".
16387 (command_loop_1): Never call direct_output_forward_char before
16388 a non-ASCII character.
16389 (read_char): If Vkeyboard_translate_table is a char table, always
16390 translate a character.
16391
16392 * keymap.c: Include "character.h".
16393 (store_in_keymap): Handle the case that IDX is a cons.
16394 (Fdefine_key): Handle the case that KEY is a cons and the car part
16395 is also a cons (range).
16396 (push_key_description): Adjust for the new character code.
16397 (describe_vector): Call describe_char_table for a char table.
16398 (describe_char_table): New function.
16399
16400 * keymap.h (describe_char_table): Extern it.
16401
16402 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
16403 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
16404 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
16405 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
16406 Delete.
16407 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
16408 structure.
16409 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
16410 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
16411 (CHARTAB_SIZE_BITS_3): New macros.
16412 (chartab_size): Extern it.
16413 (struct Lisp_Char_Table): Re-design.
16414 (struct Lisp_Sub_Char_Table): New structure.
16415 (HASH_KEY, HASH_VALUE): Move from fns.c.
16416 (CHARACTERBITS): Define as 22.
16417 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
16418 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
16419 (GC_SUB_CHAR_TABLE_P): New macro.
16420 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
16421 (code_convert_string_norecord): Deleted extern.
16422 (init_character_once, syms_of_character, init_charset)
16423 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
16424
16425 * lread.c: Include "character.h".
16426 (read_multibyte): New arg NBYTES.
16427 (read_escape): Change the meaning of returned *BYTEREP.
16428 (to_multibyte): Delete.
16429 (read1): Adjust the handling of char table and string.
16430
16431 * print.c: Include "character.h" instead of "charset.h".
16432 (print_string): Convert 8-bit raw bytes to octal form by
16433 string_escape_byte8.
16434 (print_object): Adjust for the new multibyte form. Print 8-bit
16435 raw bytes always in octal form. Handle sub char table correctly.
16436
16437 * process.c: Include "character.h" instead of "charset.h".
16438 (read_process_output, send_process): Adjust for the new
16439 code-conversion API.
16440
16441 * puresize.h (BASE_PURESIZE): Increase.
16442
16443 * regex.c: Include "character.h" instead of "charset.h".
16444 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
16445 (regex_compile): Accept a range whose starting and ending
16446 character have different leading bytes.
16447 (analyse_first): Adjust for the above change.
16448
16449 * search.c: Include "character.h" instead of "charset.h".
16450 (search_buffer, boyer_moore): Adjust for the new multibyte form.
16451 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
16452
16453 * syntax.c: Include "character.h" instead of "charset.h".
16454 (syntax_parent_lookup): Delete.
16455 (Fmodify_syntax_entry): Accept a cons as CHAR.
16456 (skip_chars): Adjust for the new multibyte form.
16457 (init_syntax_once): Call char_table_set_range instead of directly
16458 accessing the structure of a char table.
16459
16460 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
16461 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
16462 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
16463 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
16464
16465 * term.c: Include "buffer.h" and "character.h".
16466 (encode_terminal_code, write_glyphs): Adjust for the new
16467 code-conversion API.
16468 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
16469
16470 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
16471
16472 * xdisp.c: Include "character.h".
16473 (get_next_display_element): Adjust for the new multibyte form.
16474 (disp_char_vector): Adjust for the new char table structure.
16475 (decode_mode_spec_coding): Adjust for the new structure of
16476 coding system.
16477 (decode_mode_spec): Adjust for the new code-conversion API.
16478
16479 * xfaces.c: Include "character.h" instead of "charset.h".
16480 (load_face_font): Adjust for the change of choose_face_font and
16481 FS_LOAD_FONT.
16482 (generate_ascii_font): New function.
16483 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
16484 (set_font_frame_param): Adjust for the change of choose_face_font.
16485 (free_realized_face): Make it public.
16486 (free_realized_faces_for_fontset): Rename from
16487 free_realized_multibyte_face. Free also faces realized for ASCII.
16488 (choose_face_font): Change arguments. Adjust for the change of
16489 fontset_font_pattern and FS_LOAD_FONT.
16490
16491 * xfns.c: Include "character.h".
16492 (x_encode_text): Adjust for the new code-conversion API.
16493
16494 * xselect.c: Don't include "charset.h".
16495 (selection_data_to_lisp_data): Adjust for the new code conversion API.
16496
16497 * xterm.c: Include "character.h".
16498 (x_encode_char): New argument CHARSET. Change caller.
16499 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
16500 Call ENCODE_CHAR instead of SPLIT_CHAR.
16501 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
16502 CHAR_WIDTH instead of CHARSET_WIDTH.
16503 (XTread_socket): Adjust for the new code-conversion API.
16504 (x_new_font): Adjust for the change of FS_LOAD_FONT.
16505 (x_load_font): Adjust for the change of struct font.
16506
165072008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16508
16509 * xfaces.c (face_at_buffer_position): Remove unused vars.
16510
165112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16512
16513 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
16514 Fix overflow checking.
16515
165162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16517
16518 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
16519 Cancel previous change.
16520
165212008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16522
16523 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
16524 ccl->eight_bit_control. Fix check for buffer overflow.
16525 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
16526 (ccl_driver): Initialize extra_bytes to 0.
16527
165282008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16529
16530 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
16531 return it ORed with ctrl_modifier.
16532
165332008-01-29 Miles Bader <miles@gnu.org>
16534
16535 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
16536
165372008-01-28 Jason Rumney <jasonr@gnu.org>
16538
16539 * w32.c (stat): Don't double check for networked drive.
16540
165412008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
16542
16543 * window.c (run_window_configuration_change_hook): New function.
16544 Code extracted from set_window_buffer. Set the selected frame.
16545 (set_window_buffer): Use it.
16546 * window.h (run_window_configuration_change_hook): Declare.
16547 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
16548
16549 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
16550
165512008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
16552
16553 * Makefile.in: Remove references to unused macros.
16554
165552008-01-26 Eli Zaretskii <eliz@gnu.org>
16556
16557 * w32.c (g_b_init_get_sid_sub_authority)
16558 (g_b_init_get_sid_sub_authority_count): New static variables.
16559 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
16560 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
16561 (init_user_info): Use them to retrieve uid and gid.
16562 Use 500/513, the Windows defaults, as Administrator's uid/gid.
16563 (fstat): Use pw_uid and pw_gid from the_passwd structure for
16564 st_uid and st_gid of the file.
16565
165662008-01-26 Jason Rumney <jasonr@gnu.org>
16567
16568 * w32.c (logon_network_drive): New function.
16569 (stat): Use it.
16570
165712008-01-26 Chong Yidong <cyd@stupidchicken.com>
16572
16573 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
16574 invisible text covered with an ellipsis.
16575
165762008-01-25 Richard Stallman <rms@gnu.org>
16577
16578 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
16579 jump back to beginning. Move some other initializations after that.
16580 (Qwindow_text_change_functions, Vwindow_text_change_functions):
16581 New variables.
16582 (syms_of_xdisp): Init them.
16583
16584 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
16585
16586 * buffer.c (reset_buffer_local_variables):
16587 Implement `permanent-local-hook'.
16588 (Qpermanent_local_hook): New variable.
16589 (syms_of_buffer): Init and staticpro it.
16590
165912008-01-25 Michael Albinus <michael.albinus@gmx.de>
16592
16593 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
16594
165952008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
16596
16597 * fns.c (Fclrhash): Return TABLE.
16598
165992008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16600
16601 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
16602 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
16603 is set even without positional changes.
16604 (x_scroll_bar_clear): Set bar->redraw_needed_p.
16605
16606 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
16607
166082008-01-23 Jason Rumney <jasonr@gnu.org>
16609
16610 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
16611
16612 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
16613 the unicode range available in MULE by locale-coding-system.
16614 Improve dbcs lead byte detection. Set event timestamp and modifiers
16615 earlier.
16616
166172008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16618
16619 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
16620 [MAC_OSX] (init_mac_osx_environment): Initialize it.
16621 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
16622 when used on child processes.
16623
166242008-01-21 Michael Albinus <michael.albinus@gmx.de>
16625
16626 * dbusbind.c (Fdbus_method_return_internal): Rename from
16627 Fdbus_method_return.
16628 (Fdbus_unregister_object): Move to dbus.el.
16629 (Fdbus_call_method, Fdbus_method_return_internal)
16630 (Fdbus_send_signal): Improve debug messages.
16631
166322008-01-20 Martin Rudalics <rudalics@gmx.at>
16633
16634 * undo.c (undo_inhibit_record_point): New variable.
16635 (syms_of_undo): Initialize it.
16636 (record_point): Don't record point when undo_inhibit_record_point
16637 is set.
16638
166392008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
16640
16641 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
16642
16643 * xdisp.c (Qauto_hscroll_mode): New var.
16644 (syms_of_xdisp): Initialize it.
16645 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
16646 window's buffer.
16647 (hscroll_windows): Don't check automatic_hscrolling_p here.
16648
16649 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
16650 vscroll if we're setting window-buffer to the value it already has.
16651
166522008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
16653
16654 * m/intel386.h: Remove references to XENIX.
16655
166562008-01-17 Andreas Schwab <schwab@suse.de>
16657
16658 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
16659 instead of HAVE_X86_64_LIB64_DIR.
16660 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
16661
166622008-01-17 Glenn Morris <rgm@gnu.org>
16663
16664 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
16665 to HAVE_X86_64_LIB64_DIR.
16666
166672008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
16668
16669 * s/irix3-3.h:
16670 * s/irix4-0.h:
16671 * s/386-ix.h:
16672 * s/domain.h:
16673 * s/hpux9-x11r4.h:
16674 * s/hpux9shxr4.h: Remove files for systems no longer supported.
16675
16676 * sysdep.c: Remove code containing references to symbols defined
16677 by unsupported systems.
16678
166792008-01-16 Glenn Morris <rgm@gnu.org>
16680
16681 * coding.c (select-safe-coding-system-function): Doc fix.
16682
166832008-01-15 Glenn Morris <rgm@gnu.org>
16684
16685 * config.in: Revert 2008-01-13 change: this is a generated file.
16686
166872008-01-13 Tom Tromey <tromey@redhat.com>
16688
16689 * lisp.h: Fix typo.
16690
166912008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16692
16693 * m/sequent-ptx.h:
16694 * m/sequent.h:
16695 * s/ptx.h:
16696 * s/ptx4-2.h:
16697 * s/ptx4.h: Remove files for systems no longer supported.
16698
16699 * callproc.c (Fcall_process): Fix previous change.
16700
167012008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16702
16703 * unexsunos4.c: Remove file, system not supported anymore.
16704
16705 * m/mips.h:
16706 * m/intel386.h:
16707 * callproc.c:
16708 * config.in:
16709 * ecrt0.c:
16710 * emacs.c:
16711 * fileio.c:
16712 * frame.c:
16713 * getpagesize.h:
16714 * keyboard.c:
16715 * lread.c:
16716 * process.c:
16717 * puresize.h:
16718 * sysdep.c:
16719 * systty.h:
16720 * syswait.h:
16721 * unexec.c:
16722 * xdisp.c:
16723 * alloc.c: Remove code containing references to symbols defined by
16724 unsupported systems.
16725
167262008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
16727
16728 * coding.c (detect_coding_mask): Fix previous change.
16729
167302008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
16731
16732 * coding.c (detect_coding_iso2022): New arg
16733 latin_extra_code_state. Allow Latin extra codes only
16734 when *latin_extra_code_state is nonzero.
16735 (detect_coding_mask): If there is a NULL byte, detect the encoding
16736 as UTF-16 or binary. If Latin extra codes exist, detect the
16737 encoding as ISO-2022 only when there's no other proper encoding is
16738 found.
16739
167402008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16741
16742 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
16743 #ifdef MAC_OS.
16744
167452008-01-08 Richard Stallman <rms@gnu.org>
16746
16747 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
16748
167492008-01-06 Nick Roberts <nickrob@snap.net.nz>
16750
16751 * keyboard.c (parse_menu_item): Don't enclose key bindings on
16752 menu bar in parentheses.
16753
167542008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
16755
16756 * m/7300.h:
16757 * m/acorn.h:
16758 * m/alliant-2800.h:
16759 * m/alliant.h:
16760 * m/alliant1.h:
16761 * m/alliant4.h:
16762 * m/altos.h:
16763 * m/amdahl.h:
16764 * m/apollo.h:
16765 * m/att3b.h:
16766 * m/aviion-intel.h:
16767 * m/aviion.h:
16768 * m/celerity.h:
16769 * m/clipper.h:
16770 * m/cnvrgnt.h:
16771 * m/convex.h:
16772 * m/cydra5.h:
16773 * m/delta88k.h:
16774 * m/dpx2.h:
16775 * m/dual.h:
16776 * m/elxsi.h:
16777 * m/f301.h:
16778 * m/gould-np1.h:
16779 * m/gould.h:
16780 * m/i860.h:
16781 * m/ibmps2-aix.h:
16782 * m/ibmrt-aix.h:
16783 * m/ibmrt.h:
16784 * m/irist.h:
16785 * m/is386.h:
16786 * m/isi-ov.h:
16787 * m/mega68.h:
16788 * m/mg1.h:
16789 * m/news-r6.h:
16790 * m/news-risc.h:
16791 * m/news.h:
16792 * m/nh3000.h:
16793 * m/nh4000.h:
16794 * m/ns16000.h:
16795 * m/ns32000.h:
16796 * m/nu.h:
16797 * m/orion.h:
16798 * m/orion105.h:
16799 * m/paragon.h:
16800 * m/pfa50.h:
16801 * m/plexus.h:
16802 * m/pyramid.h:
16803 * m/pyrmips.h:
16804 * m/sh3el.h:
16805 * m/sps7.h:
16806 * m/sr2k.h:
16807 * m/stride.h:
16808 * m/sun1.h:
16809 * m/sun2.h:
16810 * m/sun3-68881.h:
16811 * m/sun3-fpa.h:
16812 * m/sun3-soft.h:
16813 * m/sun3.h:
16814 * m/sun386.h:
16815 * m/symmetry.h:
16816 * m/tad68k.h:
16817 * m/tahoe.h:
16818 * m/targon31.h:
16819 * m/tek4300.h:
16820 * m/tekxd88.h:
16821 * m/tower32.h:
16822 * m/tower32v3.h:
16823 * m/ustation.h:
16824 * m/wicat.h:
16825 * m/xps100.h:
16826 * s/cxux.h:
16827 * s/cxux7.h:
16828 * s/dgux.h:
16829 * s/dgux4.h:
16830 * s/dgux5-4-3.h:
16831 * s/dgux5-4r2.h:
16832 * s/esix.h:
16833 * s/esix5r4.h:
16834 * s/hiuxmpp.h:
16835 * s/hiuxwe2.h:
16836 * s/iris3-5.h:
16837 * s/iris3-6.h:
16838 * s/isc2-2.h:
16839 * s/isc3-0.h:
16840 * s/isc4-0.h:
16841 * s/isc4-1.h:
16842 * s/newsos5.h:
16843 * s/newsos6.h:
16844 * s/osf1.h:
16845 * s/osf5-0.h:
16846 * s/riscix1-1.h:
16847 * s/riscix12.h:
16848 * s/sco4.h:
16849 * s/sco5.h:
16850 * s/sunos4-0.h:
16851 * s/sunos4-1.h:
16852 * s/sunos413.h:
16853 * s/sunos4shr.h:
16854 * s/umax.h:
16855 * s/unipl5-2.h:
16856 * s/xenix.h:
16857 * cxux-crt0.s:
16858 * unexapollo.c:
16859 * unexconvex.c:
16860 * unexenix.c:
16861 * unexsni.c: Remove files for systems no longer supported.
16862
16863 * m/intel386.h: Remove references to unsupported systems.
16864
16865 * w32.c (get_emacs_configuration): Remove reference to i860.
16866
16867 * sysdep.c: Remove dead code.
16868
168692008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
16870
16871 * s/rtu.h:
16872 * m/masscomp.h: Remove files. Platform is obsolete.
16873
168742008-01-04 Michael Albinus <michael.albinus@gmx.de>
16875
16876 * dbusbind.c (Fdbus_method_return): New function.
16877 (xd_read_message): Add the serial number to the event.
16878 (Fdbus_register_method): Activate the function.
16879
168802008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
16881
16882 * keyboard.c (read_key_sequence): Fix typo.
16883
168842008-01-03 Michael Albinus <michael.albinus@gmx.de>
16885
16886 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
16887 (xd_signature, xd_append_arg): Handle element type detection for
16888 empty arrays.
16889 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
16890 SDATA () calls; this must be solved more general.
16891 (Fdbus_register_signal): Use SBYTES instead of strlen.
16892
168932008-01-03 Magnus Henoch <magnus@zemdatav>
16894
16895 * dbusbind.c (xd_append_arg): Use unsigned char instead of
16896 unsigned int for byte values (necessary for big-endian platform).
16897 (Fdbus_call_method): Handle the case of no returned arguments.
16898
168992007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
16900
16901 * dbusbind.c (xd_read_message): Use non-static input_event struct.
16902
169032007-12-31 Magnus Henoch <mange@freemail.hu>
16904
16905 * dbusbind.c (xd_signature): Signature of variant is just "v".
16906
169072007-12-30 Michael Albinus <michael.albinus@gmx.de>
16908
16909 * dbusbind.c: Fix several errors and compiler warnings.
16910 Reported by Tom Tromey <tromey@redhat.com>.
16911 (XD_ERROR, XD_DEBUG_MESSAGE)
16912 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
16913 (xd_append_arg): Part for basic D-Bus types rewritten.
16914 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
16915 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
16916 appropriate.
16917 (xd_read_message): Return Qnil. Don't signal an error; it is not
16918 useful during event reading.
16919 (Fdbus_register_signal): Signal an error if the check for
16920 FUNCTIONP fails.
16921 (Fdbus_register_method): New function. The implementation is not
16922 complete, the call of the function signals an error therefore.
16923 (Fdbus_unregister_object): New function, renamed from
16924 Fdbus_unregister_signal. The initial check signals an error, if
16925 the object is not well formed.
16926
169272007-12-30 Richard Stallman <rms@gnu.org>
16928
16929 * textprop.c (get_char_property_and_overlay):
16930 Signal error if POSITION is out of range in a buffer.
16931
169322007-12-29 Martin Rudalics <rudalics@gmx.at>
16933
16934 * w32fns.c (Fx_create_frame): Make copy of frame parameters
16935 because the original parameters are in pure storage now.
16936
169372007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16938
16939 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
16940
169412007-12-22 Eli Zaretskii <eliz@gnu.org>
16942
16943 * callint.c (syms_of_callint) <command-history>: Add reference to
16944 history-length in the doc string.
16945
169462007-12-17 Jason Rumney <jasonr@gnu.org>
16947
16948 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16949 before passing as wParam.
16950
169512007-12-22 Michael Albinus <michael.albinus@gmx.de>
16952
16953 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
16954 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
16955 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
16956 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
16957 as number.
16958 (Fdbus_call_method): Fix docstring.
16959
169602007-12-21 Michael Albinus <michael.albinus@gmx.de>
16961
16962 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
16963 New macros.
16964 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
16965 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
16966 Simplify.
16967 (xd_signature): New function.
16968 (xd_append_arg): Compute also signatures. Major rewrite.
16969 (xd_retrieve_arg): Make debug messages friendly.
16970 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
16971 Check for signatures of arguments.
16972
169732007-12-19 Michael Albinus <michael.albinus@gmx.de>
16974
16975 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
16976 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
16977 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
16978 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
16979 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
16980 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
16981 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
16982 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
16983 (xd_retrieve_value): Remove. Functionality included in ...
16984 (xd_append_arg): New function.
16985 (Fdbus_call_method, Fdbus_send_signal): Apply it.
16986
169872007-12-16 Michael Albinus <michael.albinus@gmx.de>
16988
16989 * dbusbind.c (top): Include <stdio.h>.
16990 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
16991 dbus_message_new_method_call and dbus_message_new_signal.
16992 (Fdbus_register_signal): Rename unique_name to uname.
16993 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
16994 non-existing unique name. Fix typos in matching rule. Return an
16995 object which is useful in Fdbus_unregister_signal.
16996 (Fdbus_unregister_signal): Reimplementation, in order to remove
16997 only the corresponding entry.
16998 (Vdbus_registered_functions_table): Change the order of entries.
16999 Apply these changes in xd_read_message and Fdbus_register_signal.
17000
170012007-12-16 Andreas Schwab <schwab@suse.de>
17002
17003 * fileio.c (Finsert_file_contents): Fix overflow check to not
17004 depend on undefined integer overflow.
17005
170062007-12-14 Jason Rumney <jasonr@gnu.org>
17007
17008 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17009 for characters above 127.
17010
170112007-12-13 Jason Rumney <jasonr@gnu.org>
17012
17013 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
17014 before dereferencing array.
17015 (lookup_vk_code): Remove zero comparison.
17016
170172007-12-14 Michael Albinus <michael.albinus@gmx.de>
17018
17019 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
17020 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
17021 Use `unsigned int' instead of `uint'.
17022 (xd_read_message, Fdbus_register_signal): Split expressions into
17023 multiple lines before operators "&&" and "||", according to the
17024 GNU Coding Standards.
17025
170262007-12-14 Eli Zaretskii <eliz@gnu.org>
17027
17028 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
17029
170302007-12-12 Juri Linkov <juri@jurta.org>
17031
17032 * buffer.c (Frename_buffer): In interactive spec replace
17033 `read-buffer' with `read-string' that uses `buffer-name-history'
17034 as history, and the current buffer's name as default.
17035
170362007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
17037
17038 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
17039 manipulating the backtrace manually.
17040 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
17041 (struct backtrace, backtrace_list): Remove.
17042 (command_loop_1): Remove dead var `no_direct'.
17043
17044 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
17045 preserve non-built-in buffer-local variables.
17046 (Fkill_all_local_variables): Don't re-create&re-set permanent
17047 buffer-local variables.
17048
170492007-12-09 Juri Linkov <juri@jurta.org>
17050
17051 * buffer.c (Frename_buffer): Change interactive spec from "s" to
17052 Lisp code that uses `read-buffer' with current buffer as default.
17053
170542007-12-08 Michael Albinus <michael.albinus@gmx.de>
17055
17056 * dbusbind.c (xd_read_message): Generate an event for every
17057 registered handler. There might be several handlers registered
17058 for the same signal.
17059 (Fdbus_register_signal): Don't overwrite a registration for the
17060 same signal. Add a new registration if handlers are different.
17061 (Vdbus_registered_functions_table): Rework doc string.
17062
170632007-12-07 Michael Albinus <michael.albinus@gmx.de>
17064
17065 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
17066 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
17067 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
17068 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
17069 Unify argument lists.
17070 (xd_read_message, Fdbus_register_signal): Reorder and extend event
17071 arguments and hash table keys. Use unique name for service.
17072 (Fdbus_unregister_signal): Remove checks.
17073 (Vdbus_registered_functions_table): Fix doc string.
17074
170752007-12-05 Magnus Henoch <mange@freemail.hu>
17076
17077 * process.c (make_process): Initialize pty_flag to 0.
17078
170792007-12-05 Jason Rumney <jasonr@gnu.org>
17080
17081 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
17082 specified XBMs.
17083
170842007-12-05 Richard Stallman <rms@gnu.org>
17085
17086 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
17087
170882007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17089
17090 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
17091 New variable.
17092 (mac_try_close_socket) [MAC_OSX]: New function.
17093 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
17094 Update cfsockets_for_select. Replace invalid CFRunLoop source.
17095
17096 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
17097 Use mac_try_close_socket.
17098
170992007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17100
17101 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
17102 reloc_base.
17103 (copy_dysymtab): Compute relocation base here.
17104 (rebase_reloc_address) [__ppc64__]: New function.
17105 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
17106 changed.
17107
171082007-12-05 Jason Rumney <jasonr@gnu.org>
17109
17110 * w32proc.c (sys_spawnve): Quote args with wildcards.
17111
171122007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17113
17114 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
17115 __objc_* sections.
17116 (unrelocate) [_LP64]: Set relocation base to address of data segment.
17117
171182007-12-05 Michael Albinus <michael.albinus@gmx.de>
17119
17120 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
17121 Move check for Vdbus_registered_functions_table to
17122 xd_read_queued_messages.
17123 (xd_read_queued_messages): Protect xd_read_message calls by
17124 internal_condition_case_1.
17125
171262007-12-04 Michael Albinus <michael.albinus@gmx.de>
17127
17128 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
17129 Qdbus_system_bus and Qdbus_session_bus, respectively.
17130 (Vdbus_intern_symbols): Remove.
17131 (Vdbus_registered_functions_table): New hash table.
17132 (XD_SYMBOL_INTERN_SYMBOL): Remove.
17133 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
17134 Rewrite in order to manage registered functions by hash table
17135 Vdbus_registered_functions_table.
17136
171372007-12-03 Jan Djärv <jan.h.d@swipnet.se>
17138
17139 * xterm.c: Update URL to Window Manager Specification in comment.
17140
171412007-12-02 Michael Albinus <michael.albinus@gmx.de>
17142
17143 * config.in (HAVE_DBUS): Add.
17144
17145 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
17146 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
17147 (obj): Add $(DBUS_OBJ).
17148 (LIBES): Add $(DBUS_LIBS).
17149 (dbusbind.o): New target.
17150
17151 * dbusbind.c: New file.
17152
17153 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
17154
17155 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
17156 (Qdbus_event): New Lisp symbol.
17157 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
17158 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 17159 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
17160
17161 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
17162
171632007-12-01 Richard Stallman <rms@gnu.org>
17164
17165 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
17166
171672007-11-30 Jason Rumney <jasonr@gnu.org>
17168
17169 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
17170 (w32con_reset_terminal_modes): Clear screen buffer.
17171 (w32_face_attributes): Don't use color indexes that are out of range.
17172 Only reverse the default colors.
17173
17174 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
17175 WINDOWSNT.
17176
17177 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
17178
171792007-11-29 Jason Rumney <jasonr@gnu.org>
17180
17181 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
17182 (w32_face_attributes): Use Vtty_defined_color_alist to determine
17183 if the terminal colors are initialized.
17184 (unspecified_fg, unspecified_bg): Remove unused declarations.
17185
171862007-11-29 Andreas Schwab <schwab@suse.de>
17187
17188 * keyboard.c (apply_modifiers): Fix typo.
17189
171902007-11-29 Richard Stallman <rms@gnu.org>
17191
17192 * keymap.c (Fcurrent_local_map): Doc fix.
17193
171942007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
17195
17196 * s/gnu-kfreebsd.h: New file.
17197
171982007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
17199
17200 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
17201 Don't cast redundantly.
17202
17203 * keyboard.c (KEY_TO_CHAR): New macro.
17204 (parse_modifiers, apply_modifiers): Accept integer arguments.
17205 (read_key_sequence): Use them to unify the "shift->unshift" mapping
17206 for chars and symbol keys.
17207 After doing such remapping, apply function-key-map again.
17208
172092007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
17210
17211 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
17212 compiled anymore.
17213
172142007-11-26 Andreas Schwab <schwab@suse.de>
17215
17216 * process.c (list_processes_1): Fix indentation level of the
17217 command column.
17218
172192007-11-23 Andreas Schwab <schwab@suse.de>
17220
17221 * editfns.c (Fformat): Handle %c specially since it requires the
17222 argument to be of type int.
17223
172242007-11-23 Markus Triska <markus.triska@gmx.at>
17225
17226 * emacs.c (main): Call init_editfns before init_process, since
17227 init_process sets Vprocess_connection_type depending on OS release.
17228
172292007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
17230
17231 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
17232 (find_symbol_value): Use do_symval_forwarding.
17233
17234 * data.c (set_internal): Set the value in the `cons-cell' (for
17235 Buffer_Local_values) not only for frame-local variables.
17236
172372007-11-22 Andreas Schwab <schwab@suse.de>
17238
17239 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
17240 values to sprintf.
17241 * keymap.c (Fsingle_key_description): Likewise.
17242 * print.c (print_object): Likewise.
17243
172442007-11-22 Jan Djärv <jan.h.d@swipnet.se>
17245
17246 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
17247 file for image is nil.
17248
172492007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
17250
17251 * term.c: Include stdarg.h.
17252 (fatal): Implement using varargs.
17253 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
17254
172552007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17256
17257 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
17258 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
17259 Update call to buffer_slot_type_mismatch.
17260 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
17261 (buffer_slot_type_mismatch): Update.
17262 * buffer.c (buffer_local_types): Remove.
17263 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
17264 (defvar_per_buffer): Set the type in the buffer_objfwd.
17265
172662007-11-21 Jason Rumney <jasonr@gnu.org>
17267
17268 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
17269 CreateFileMapping returns NULL on failure.
17270
172712007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17272
17273 * search.c (Fset_match_data): Remove the `evaporate' feature.
17274 (unwind_set_match_data): Don't use the `evaporate' feature.
17275
172762007-11-21 Jason Rumney <jasonr@gnu.org>
17277
17278 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
17279
17280 * w32console.c (w32con_write_glyphs): Remove unused variables.
17281
172822007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
17283
17284 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
17285
17286 * s/darwin.h (MULTI_KBOARD): Remove.
17287
17288 * macfns.c (x_create_tip_frame, Fx_create_frame)
17289 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
17290
172912007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
17292
17293 * buffer.c (Fbuffer_local_value): Remove redundant test.
17294 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
17295 than in `current-buffer' to match the comment.
17296 Do the swap using swap_in_global_binding.
17297
17298 * data.c (store_symval_forwarding, set_internal):
17299 * eval.c (specbind): Remove dead code.
17300
17301 * coding.c (detect_coding, Fupdate_coding_systems_internal):
17302 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
17303 Since we do not want to see internal Lisp_*fwd objects here.
17304
173052007-11-18 Jan Djärv <jan.h.d@swipnet.se>
17306
17307 * sysdep.c (init_system_name): Use getaddrinfo if available.
17308
17309 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
17310 (x_scroll_bar_note_movement): start, end, with, height in struct
17311 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
17312
173132007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
17314
17315 * puresize.h (BASE_PURESIZE): Increase to 1190000.
17316
173172007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
17318
17319 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
17320 This undoes Richard's change of 14-Oct-2002.
17321
17322 * alloc.c (allocate_other_vector):
17323 * lisp.h (allocate_other_vector): Remove.
17324
17325 * window.c (struct save_window_data): Move non-lisp data to the end
17326 and make it `int' rather than Lisp_Object.
17327 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
17328 Done wrap/unwrap integer values.
17329 (Fset_window_configuration, compare_window_configurations):
17330 Update use of fields to their new types.
17331
17332 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
17333 Turn integer fields into `int'. Merge x_window_low and x_window_high.
17334 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
17335 (SET_SCROLL_BAR_X_WINDOW): Remove.
17336 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
17337 Access the new x_window field directly.
17338 * xterm.c (x_scroll_bar_create): Use a pseudovector.
17339 Don't wrap/unwrap integers into Lisp_Objects.
17340 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
17341 (x_scroll_bar_report_motion):
17342 Don't wrap/unwrap integers into Lisp_Objects.
17343 (x_term_init): Use SDATA.
17344 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
17345 (x_scroll_bar_set_handle, x_scroll_bar_remove)
17346 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
17347 (x_scroll_bar_report_motion, x_scroll_bar_clear):
17348 * xfns.c (x_set_background_color):
17349 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
17350 Access the new x_window field directly.
17351
17352 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
17353 (allocate_pseudovector): Make non-static.
17354
17355 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
17356 (allocate_pseudovector): Declare.
17357 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
17358
173592007-11-15 Andreas Schwab <schwab@suse.de>
17360
17361 * editfns.c (Fformat): Correctly format EMACS_INT values.
17362 Also take precision into account when formatting an integer.
17363
17364 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
17365
173662007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
17367
17368 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
17369 (syms_of_keyboard): Defsubr it.
17370
17371 * data.c (swap_in_global_binding): Fix longstanding bug where
17372 store_symval_forwarding was not called with the right second argument,
17373 thus causing objfwd-ing from being dropped.
17374
173752007-11-14 Juanma Barranquero <lekktu@gmail.com>
17376
17377 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
17378 (Fx_display_pixel_height, Fx_display_planes)
17379 (Fx_display_color_cells, Fx_server_max_request_size)
17380 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17381 (Fx_display_visual_class, Fx_display_save_under):
17382 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
17383 (Fx_display_pixel_height, Fx_display_planes)
17384 (Fx_display_color_cells, Fx_server_max_request_size)
17385 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
17386 (Fx_display_mm_height, Fx_display_mm_width)
17387 (Fx_display_backing_store, Fx_display_visual_class)
17388 (Fw32_select_font, Fx_display_save_under):
17389 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
17390 (Fx_display_pixel_height, Fx_display_planes)
17391 (Fx_display_color_cells, Fx_server_max_request_size)
17392 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17393 (Fx_display_save_under): Fix typos in docstrings.
17394
173952007-11-14 Juanma Barranquero <lekktu@gmail.com>
17396
17397 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
17398 corresponding to deleted entries; they are an implementation detail.
17399 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
17400 Remove variables.
17401 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
17402 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
17403 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
17404 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
17405 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
17406 (Fw32_define_rgb_color, Fw32_load_color_file)
17407 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
17408 Fix typos in docstrings.
17409 (Fx_server_version): Reflow docstring.
17410 (Fw32_shell_execute): Doc fixes.
17411
174122007-11-13 Juanma Barranquero <lekktu@gmail.com>
17413
17414 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
17415 if w32_parse_hot_key returned nil.
17416
174172007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
17418
17419 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
17420
174212007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 17422
aac0c6e3
MR
17423 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
17424
17425 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
17426
17427 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
17428 Remove W32_SCROLL_BAR_CLICK_EVENT.
17429
17430 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
17431 Add MULTIMEDIA_KEY_EVENT.
17432
17433 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
17434 (lispy_multimedia_keys) [WINDOWSNT]: New array.
17435 (make_lispy_event) [WINDOWSNT]: Use it to translate
17436 MULTIMEDIA_KEY_EVENT.
17437
17438 * w32term.h (WM_APPCOMMAND): Define if not already.
17439 (GET_APPCOMMAND_LPARAM): Likewise.
17440
17441 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
17442 WM_APPCOMMAND.
17443
17444 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
17445 (syms_of_w32fns): Export and initialize it.
17446 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
17447
174482007-11-09 Chong Yidong <cyd@stupidchicken.com>
17449
17450 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
17451 twice.
17452
17453 * xdisp.c (handle_face_prop): Fix last change.
17454
174552007-11-09 Richard Stallman <rms@gnu.org>
17456
17457 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
17458 not just for after-strings and before-strings.
17459 Call face_for_overlay_string and pass the overlay to it.
17460 (handle_display_prop): Determine whether property came from an overlay.
17461 Pass OVERLAY arg to handle_single_display_spec.
17462 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
17463 (load_overlay_strings): Fill in it->string_overlays.
17464 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
17465
17466 * xfaces.c (face_for_overlay_string): Function renamed from
17467 face_at_buffer_position_no_overlays, and add arg OVERLAY.
17468
17469 * dispextern.h (struct it): New elt string_overlays.
17470 New elt from_overlay, also in stack.
17471 Rearrange a few elements.
17472 (face_for_overlay_string): Decl renamed from
17473 face_at_buffer_position_no_overlays, and add argument.
17474
174752007-11-09 Richard Stallman <rms@gnu.org>
17476
17477 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
17478 to get the base face for an overlay string.
17479
17480 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
17481
17482 * xfaces.c (face_at_buffer_position_no_overlays): New function.
17483
17484 * xdisp.c (handle_stop): Move some code out of loop.
17485
174862007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17487
17488 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
17489 Fix conversion from Lisp object to ATSUFontID.
17490
174912007-11-09 Jason Rumney <jasonr@gnu.org>
17492
17493 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
17494
174952007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17496
17497 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
17498 Don't assume regions are aligned to page boundary.
17499 (print_load_command_name): Add LC_UUID if defined.
17500
175012007-11-09 Richard Stallman <rms@gnu.org>
17502
17503 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
17504
175052007-11-07 Jason Rumney <jasonr@gnu.org>
17506
17507 * s/windows95.h: Remove.
17508
175092007-11-06 Jan Djärv <jan.h.d@swipnet.se>
17510
17511 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
17512 abort with a message on unhandled store_type values.
17513
175142007-11-01 Jan Djärv <jan.h.d@swipnet.se>
17515
17516 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
17517 Remove HAVE_X11R5 and HAVE_X11R4.
17518
175192007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17520
17521 * Makefile.in: Remove references to sunfns.c and sunfns.o.
17522
175232007-11-01 Johan Bockgård <bojohan@gnu.org>
17524
17525 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
17526 Don't set s->stippled_p here, since it has already been set by
17527 x_set_glyph_string_gc from x_draw_glyph_string.
17528
175292007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17530
17531 * sunfns.c: Remove file.
17532
17533 * m/sun386.h:
17534 * m/sun2.h:
17535 * m/sparc.h: Remove Sun windows code.
17536
175372007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
17538
17539 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
17540 (init_keyboard): Set current_kboard's window-system to nil.
17541 (tty_read_avail_input): Typo.
17542 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
17543
175442007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
17545
17546 * s/usg5-4.h:
17547 * s/usg5-3.h:
17548 * s/ptx.h:
17549 * m/is386.h:
17550 * m/ibmps2-aix.h:
17551 * Makefile.in: Remove all mentions of X10.
17552
17553 * dispnew.c (syms_of_display): Don't mention version 10.
17554
175552007-10-28 Juanma Barranquero <lekktu@gmail.com>
17556
17557 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
17558 ($(BLD)/abbrev.$(O)): Remove.
17559
175602007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
17561
17562 Rewrite abbrev.c in Elisp.
17563 * image.c (Qcount): Don't declare as extern.
17564 (syms_of_image): Initialize and staticpro `Qcount'.
17565 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
17566 * emacs.c (main): Don't call syms_of_abbrev.
17567 * Makefile.in (obj): Remove abbrev.o.
17568 (abbrev.o): Remove.
17569 * abbrev.c: Remove.
17570
175712007-10-26 Martin Rudalics <rudalics@gmx.at>
17572
17573 * window.c (window_min_size_2): Don't count header-line.
17574
175752007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
17576
17577 * frame.h (struct frame): Move all bit fields after the first bit
17578 field to take advantage of the available space. Group all the
17579 chars together to reduce wasted space due to padding.
17580
175812007-10-26 Juanma Barranquero <lekktu@gmail.com>
17582
17583 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
17584
17585 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
17586 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
17587 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
17588 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
17589 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
17590 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
17591 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
17592 (last_marked, mark_object_loop_halt): Make static.
17593
17594 * frame.c (syms_of_frame) <delete-frame-functions>:
17595 Fix typo in docstring.
17596
175972007-10-25 Juanma Barranquero <lekktu@gmail.com>
17598
17599 * w32.c (init_environment): Fix tiny memory leak.
17600 (w32_get_resource): Remove unused variable `ok'.
17601
176022007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
17603
17604 Make `window-system' into a keyboard-local variable (rather than
17605 frame-local as done originally by multi-tty).
17606
17607 * keyboard.h (struct kboard): Add Vwindow_system.
17608 * keyboard.c (init_kboard): Set a default for Vwindow_system.
17609 (mark_kboards): Mark Vwindow_system.
17610
17611 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
17612 (init_display): Don't set the obsolete `window-system' frame-param.
17613
17614 * xterm.c (x_term_init):
17615 * w32term.c (w32_create_terminal):
17616 * term.c (init_tty): Set Vwindow_system.
17617 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
17618 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
17619
17620 * xfns.c (Fx_create_frame, x_create_tip_frame):
17621 * w32fns.c (Fx_create_frame, x_create_tip_frame):
17622 * macfns.c (Fx_create_frame):
17623 Don't set the obsolete `window-system' frame-param.
17624
17625 * frame.h (Qwindow_system): Remove.
17626 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
17627 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
17628
176292007-10-24 Richard Stallman <rms@gnu.org>
17630
17631 * frame.c (x_figure_window_size): For fullscreen case,
17632 set USPosition | PPosition without clobbering rest of window_prompting.
17633
17634 * keyboard.c (Fcurrent_idle_time): Doc fix.
17635
17636 * print.c (Fwith_output_to_temp_buffer): Doc fix.
17637
176382007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
17639
17640 * process.c (unwind_request_sigio): Only define if __ultrix__.
17641
17642 * callproc.c (child_setup): Remove spurious *.
17643
17644 * lisp.h (Fget_text_property): Declare.
17645 (have_menus_p): Declare it here rather than in sys-dep header files.
17646 * macterm.h (have_menus_p):
17647 * msdos.h (have_menus_p):
17648 * xterm.h (have_menus_p): Remove.
17649
17650 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
17651 (Fmake_variable_frame_local): Just check the variable's const-ness
17652 rather than checking nil or t.
17653
176542007-10-22 Jason Rumney <jasonr@gnu.org>
17655
17656 * w32fns.c: Include math.h.
17657 (w32_abort): Declaration moved to nt/config.nt.
17658
17659 * s/ms-w32.h (HAVE_STDLIB_H): Define.
17660 (abort): Redefinition moved to nt/config.nt.
17661
17662 * m/windowsnt.h: Remove.
17663
176642007-10-22 Juanma Barranquero <lekktu@gmail.com>
17665
17666 * emacs.c (Fdump_emacs): Fix typo in message.
17667 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
17668 <installation-directory>: Reflow docstring.
17669
176702007-10-22 Juri Linkov <juri@jurta.org>
17671
17672 * minibuf.c: Allow minibuffer default to be a list of default values.
17673 With empty input use the first element of this list as returned default.
17674 (string_to_object)
17675 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
17676 (read_minibuf): If defalt is cons, set histstring to its car.
17677 (Fread_string): If default_value is cons, set val to its car.
17678 (Fread_buffer): If def is cons, use its car.
17679 (Fcompleting_read): If defalt is cons, set val to its car.
17680
176812007-10-21 Michael Albinus <michael.albinus@gmx.de>
17682
17683 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
17684
176852007-10-20 Juanma Barranquero <lekktu@gmail.com>
17686
17687 * doc.c (Fdocumentation): Check for advice in all cases.
17688
176892007-10-19 Chong Yidong <cyd@stupidchicken.com>
17690
17691 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
17692
176932007-10-19 Richard Stallman <rms@gnu.org>
17694
17695 * doc.c (Fdocumentation): Check for and handle an advised function.
17696
176972007-10-19 Juanma Barranquero <lekktu@gmail.com>
17698
17699 * process.c (Fset_process_filter): Doc fix.
17700
177012007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
17702
17703 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
17704 which caused key-translation-map to applied repeatedly (thus breaking
17705 double-mode).
17706
177072007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17708
17709 * xselect.c (x_own_selection, x_handle_selection_clear)
17710 (x_clear_frame_selections):
17711 * w32menu.c (list_of_panes, list_of_items):
17712 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
17713 * textprop.c (validate_plist, interval_has_all_properties)
17714 (interval_has_some_properties, interval_has_some_properties_list)
17715 (add_properties, text_property_list):
17716 * process.c (Fget_buffer_process, list_processes_1, status_notify):
17717 * minibuf.c (Fassoc_string):
17718 * macselect.c (x_own_selection, x_clear_frame_selections)
17719 (Fx_disown_selection_internal):
17720 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
17721 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
17722
177232007-10-17 Chong Yidong <cyd@stupidchicken.com>
17724
17725 * process.c: Link to libs for calling res_init() if available.
17726 (Fmake_network_process): Call res_init() before getaddrinfo or
17727 gethostbyname, if possible.
17728
177292007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17730
17731 * lread.c (read1): Set pvectype for char_tables.
17732
17733 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
17734 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
17735 Add type checks.
17736 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
17737
17738 * alloc.c (free_misc): Use XMISCTYPE.
17739 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
17740
177412007-10-17 Glenn Morris <rgm@gnu.org>
17742
17743 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
17744 (syms_of_minibuf): Add Qcompletion_ignore_case.
17745 * dired.c (Qcompletion_ignore_case): Change to external.
17746 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
17747 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
17748 (Fread_file_name): Use it rather than intern'ing.
17749
17750 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
17751 (Fread_coding_system): Ignore case of user input.
17752
177532007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17754
17755 * xdisp.c (handle_display_prop): Ignore display specs after
17756 replacing one when string text is being replaced.
17757 (handle_single_display_spec): Pretend as if characters with display
17758 property haven't been consumed only when buffer text is being replaced.
17759
177602007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
17761
17762 * xfns.c (Fx_create_frame, Fx_display_list):
17763 * window.c (window_fixed_size_p, enlarge_window)
17764 (shrink_window_lowest_first):
17765 * macterm.c (init_font_name_table):
17766 * macfns.c (Fx_create_frame, Fx_display_list):
17767 * lread.c (close_load_descs):
17768 * keyboard.c (read_char_x_menu_prompt):
17769 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
17770 * coding.c (code_convert_region_unwind): Test the type of an object
17771 rather than just !NILP before extracting data from it.
17772
17773 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
17774
17775 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
17776 (XMISCANY): New macro.
17777 (XMISCTYPE): Use it.
17778 (struct Lisp_Misc_Any): New type.
17779 (union Lisp_Misc): Use it.
17780 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
17781 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
17782 (find_symbol_value, set_internal, default_value, Fset_default)
17783 (Fmake_variable_buffer_local, Fmake_local_variable)
17784 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
17785 (Flocal_variable_if_set_p, Fvariable_binding_locus):
17786 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
17787 * alloc.c (allocate_buffer): Set the size and tag.
17788 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
17789 Use XMISCANY.
17790 (die): Follow the GNU convention for error messages.
17791 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
17792 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
17793 tag any more.
17794 (set_buffer_internal_1):
17795 * frame.c (store_frame_param):
17796 * eval.c (specbind):
17797 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
17798
17799 * doc.c (Fsnarf_documentation): Simplify.
17800
178012007-10-14 Juanma Barranquero <lekktu@gmail.com>
17802
17803 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
17804 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
17805
178062007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
17807
17808 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
17809
178102007-10-14 Juanma Barranquero <lekktu@gmail.com>
17811
17812 * eval.c (do_autoload): Don't save autoloads.
17813
17814 * data.c (Ffset): Save autoload of the function being set.
17815
178162007-10-07 John Paul Wallington <jpw@pobox.com>
17817
17818 * xfns.c (x_create_tip_frame): Set the `display-type' frame
17819 parameter before setting up faces.
17820
178212007-10-13 Eli Zaretskii <eliz@gnu.org>
17822
17823 * ccl.c (Fregister_code_conversion_map):
17824 * keyboard.c (append_tool_bar_item): Reformat last change.
17825
17826 * lisp.h (eabs): Rename from `abs'. All callers changed.
17827
178282007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
17829
17830 * buffer.c (add_overlay_mod_hooklist):
17831 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
17832 * fontset.c (make_fontset):
17833 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
17834 (append_tool_bar_item):
17835 * macmenu.c (grow_menu_items):
17836 * w32menu.c (grow_menu_items):
17837 * xmenu.c (grow_menu_items): Use larger_vector.
17838
178392007-10-13 Eli Zaretskii <eliz@gnu.org>
17840
17841 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
17842 selected frame'' on MSDOS).
17843
178442007-10-12 Martin Rudalics <rudalics@gmx.at>
17845
17846 * frame.c (Qexplicit_name): New variable.
17847 (x_report_frame_params): Report it in parameter alist.
17848 (syms_of_frame): Intern and staticpro it.
17849
178502007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
17851
17852 * macfns.c (x_create_tip_frame): Set terminal for frame.
17853
178542007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
17855
17856 * frame.c (Qenvironment): Remove.
17857 (syms_of_frame) <Qenvironment>: Don't initialize.
17858 (Fdelete_frame): Don't treat the `environment' param specially.
17859 * frame.h (Qenvironment): Don't declare.
17860 * callproc.c (set_initial_environment): Don't set unused frame param.
17861
17862 * frame.c (Fframe_with_environment): Remove.
17863 (syms_of_frame) <Sframe_with_environment>: Don't declare.
17864
17865 * lisp.h (Fframe_with_environment): Don't declare.
17866
178672007-10-10 Juanma Barranquero <lekktu@gmail.com>
17868
17869 * indent.c (indent_tabs_mode, last_known_column)
17870 (last_known_column_modified): Make static.
17871 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
17872
178732007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
17874
17875 * puresize.h (BASE_PURESIZE): Increase to 1170000.
17876
178772007-10-09 Jason Rumney <jasonr@gnu.org>
17878
17879 * w32term.c (x_set_window_size): Disable code that attempts to tell
17880 Lisp code about a size change before it actually happens.
17881
178822007-10-09 Richard Stallman <rms@gnu.org>
17883
17884 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
17885 return HANDLED_RETURN.
17886
178872007-10-08 Martin Rudalics <rudalics@gmx.at>
17888
17889 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
17890 when there's an unread command event.
17891
17892 * frame.c (focus_follows_mouse): Move here from frame.el to allow
17893 window autoselection act appropriately when leaving selected frame.
17894 (syms_of_frame): Initialize focus_follows_mouse.
17895 * frame.h (focus_follows_mouse): Extern it.
17896 * macterm.c (XTread_socket): When focus_follows_mouse is nil
17897 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
17898 * msdos.c (dos_rawgetc): Likewise.
17899 * w32term.c (w32_read_socket): Likewise.
17900 * xterm.c (handle_one_xevent): Likewise.
17901 * xdisp.c (syms_of_xdisp): In doc-string of
17902 mouse-autoselect-window mention focus-follows-mouse.
17903
179042007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17905
17906 * macterm.c (mac_load_query_font): Fix missing return value.
17907 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
17908 Add BLOCK_INPUT.
17909
179102007-10-08 Richard Stallman <rms@gnu.org>
17911
17912 * xdisp.c (get_window_cursor_type): Implement documented behavior
17913 for cursor-in-non-selected-windows = t.
17914
179152007-10-08 Jason Rumney <jasonr@gnu.org>
17916
17917 * w32.c (w32_get_resource): Always close registry keys.
17918
179192007-10-08 Jason Rumney <jasonr@gnu.org>
17920
17921 * makefile.w32-in (LIBS): Add COMCTL32.
17922
17923 * w32fns.c (globals_of_w32fns): Init common controls.
17924
179252007-10-08 Richard Stallman <rms@gnu.org>
17926
17927 * image.c (our_memory_buffer): Rename from omfib_buffer.
17928
179292007-10-08 Richard Stallman <rms@gnu.org>
17930
17931 * buffer.c (Foverlays_at): Doc fix.
17932
179332007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
17934
17935 * fns.c (Fplist_put): Preserve uneven tail data.
17936
179372007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
17938
17939 * termhooks.h (enum event_kind): Remove trailing comma.
17940
17941 * frame.h (enum): Remove trailing comma.
17942
179432007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
17944
17945 * w32proc.c (delete_child): Don't terminate threads of zombies.
17946
179472007-10-08 Martin Rudalics <rudalics@gmx.at>
17948
17949 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
17950
17951 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
17952 last-repeatable-command.
17953 (init_kboard): Initialize Vlast_repeatable_command.
17954 (command_loop_1): Set it to real_this_command unless that was
17955 bound to an input event.
17956 (mark_kboards): Mark it.
17957
179582007-10-08 Richard Stallman <rms@gnu.org>
17959
17960 * eval.c (condition-case): Doc fix.
17961
179622007-10-08 Masatake YAMATO <jet@gyve.org>
17963
17964 * xfaces.c (tty_supports_face_attributes_p): Fix code
17965 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
17966 was copied and not edited.
17967
179682007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
17969
17970 Add new `input-decode-map' keymap and use it for terminal
17971 escape sequences.
17972 * keyboard.h (struct kboard): Add Vinput_decode_map.
17973 Remove Vlocal_key_translation_map.
17974 * keyboard.c (read_key_sequence): Add support for input-decode-map.
17975 (init_kboard): Init input-decode-map.
17976 Replace local-key-translation-map back with key-translation-map.
17977 (syms_of_keyboard): Declare input-decode-map.
17978 Remove local-key-translation-map. Update docstrings.
17979 (mark_kboards): Mark Vinput_decode_map.
17980 Don't mark Vlocal_key_translation_map.
17981 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
17982 Replace local-key-translation-map back with key-translation-map.
17983 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
17984 Bind in input-decode-map rather than function-key-map.
17985
17986 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
17987 This was made redundant by the previous introduction of XSETPVECTYPE.
17988
179892007-10-09 Richard Stallman <rms@gnu.org>
17990
17991 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
17992
179932007-09-29 Richard Stallman <rms@gnu.org>
17994
17995 * eval.c (internal_condition_case_2, internal_condition_case_1)
17996 (internal_condition_case): Reenable abort if x_catching_errors ()
17997 to see if that really happens and why.
17998
179992007-10-06 Andreas Schwab <schwab@suse.de>
18000
18001 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18002
180032007-10-04 Juanma Barranquero <lekktu@gmail.com>
18004
18005 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18006
180072007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18008
18009 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
18010
180112007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
18012
18013 * window.h (struct window):
18014 * window.c (struct save_window_data, struct saved_window):
18015 * termhooks.h (struct terminal):
18016 * process.h (struct Lisp_Process):
18017 * frame.h (struct frame):
18018 * buffer.h (struct buffer):
18019 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
18020 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
18021 The size field of (pseudo)vectors is now unsigned.
18022 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
18023
18024 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
18025 Turn `count' into an integer.
18026
18027 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
18028 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
18029 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
18030 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
18031 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
18032
18033 * alloc.c (allocate_pseudovector): New fun.
18034 (ALLOCATE_PSEUDOVECTOR): New macro.
18035 (allocate_window, allocate_terminal, allocate_frame)
18036 (allocate_process): Use it.
18037 (mark_vectorlike): New function.
18038 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
18039 (mark_terminals): Use it.
18040 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
18041 (Fmake_byte_code): Use XSETPVECTYPE.
18042
18043 * frame.c (Fframe_parameters): Minor simplification.
18044
18045 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
18046
18047 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
18048
18049 * buffer.c (Fget_buffer_create, init_buffer_once):
18050 * lread.c (defsubr):
18051 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
18052
18053 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
18054 defined differently in the m/*.h files.
18055 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
18056 (XSETPVECTYPE): New macro.
18057 (XSETPSEUDOVECTOR): Use it.
18058
18059 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
18060 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
18061
18062 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
18063 * lread.c (defvar_per_buffer):
18064 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
18065
18066 * window.c (candidate_window_p): Only consider as visible frames that
18067 are on the same terminal.
18068
18069 * m/ibms390x.h (MARKBIT): Remove unused macro.
18070
180712007-10-01 Juanma Barranquero <lekktu@gmail.com>
18072
18073 * lread.c (Fload): Fix typo in docstring.
18074
180752007-10-01 Michaël Cadilhac <michael@cadilhac.name>
18076
18077 * floatfns.c (Fexpt): Manually check for overflows, so that a power
18078 of a non-zero value can't yield zero.
18079
180802007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
18081
18082 * term.c (term_clear_mouse_face, term_mouse_highlight)
18083 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
18084
18085 * print.c (safe_debug_print): Use XHASH.
18086
18087 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
18088 Lisp elements such as tags.
18089 (XHASH): New macro.
18090 (EQ): Use it.
18091 (SREF, SSET, STRING_COPYIN): Use SDATA.
18092 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
18093
18094 * alloc.c (mark_terminal): Remove left-over declaration.
18095 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
18096 (allocate_vectorlike): Remove type argument. Adjust callers.
18097 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
18098 Only handle the one remaining MEM_TYPE_VECTORLIKE.
18099
18100 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
18101 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
18102 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
18103 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
18104 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
18105 Use them.
18106
18107 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
18108 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
18109 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
18110
181112007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
18112
18113 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
18114 loaded by default.
18115
181162007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
18117
18118 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
18119 on this tty.
18120 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
18121
18122 * term.c (mouse_face_window): Rename from Qmouse_face_window.
18123 Update all users.
18124 (handle_one_term_event): Use Gpm_DrawPointer.
18125 (Fgpm_mouse_start): Rename from Fterm_open_connection.
18126 Signal errors instead of returning nil. Always return nil.
18127 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
18128 Make it a noop if gpm-mouse was not activated.
18129 (syms_of_term): Update names.
18130
181312007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
18132
18133 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
18134 (init_sys_modes): Check that gpm_tty is the current tty.
18135
18136 * alloc.c (allocate_terminal): Set the vector size to only count the
18137 lisp fields. Initialize those to nil.
18138 (mark_object): Don't treat terminals specially.
18139 (mark_terminal): Remove.
18140 (mark_terminals): Use mark_object instead.
18141
18142 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
18143 the GC to the beginning.
18144
18145 * indent.h:
18146 * indent.c: Use EMACS_INT for ints coming from Elisp data.
18147
18148 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
18149
181502007-09-25 Jason Rumney <jasonr@gnu.org>
18151
18152 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
18153
18154 * w32console.c (create_w32cons_output): Remove.
18155
18156 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
18157
18158 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
18159 (reset_sys_modes): Use reset_terminal_modes_hook.
18160
181612007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
18162
18163 * eval.c (do_autoload): Don't output any message.
18164
181652007-09-24 Juri Linkov <juri@jurta.org>
18166
18167 * emacs.c (standard_args): Change priority of "--no-splash"
18168 from 40 to 3. Add "--no-desktop" with the same priority.
18169
181702007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
18171
18172 * alloc.c (gc_sweep): Check cons cell mark bits word by word
18173 and optimize the case where they are all 1.
18174
181752007-09-23 Johannes Weiner <hannes@saeurebad.de>
18176
18177 * lisp.h (abs): Define if not defined.
18178 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
18179 Don't define `abs', since it's defined in lisp.h.
18180
181812007-09-22 Eli Zaretskii <eliz@gnu.org>
18182
18183 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
18184 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
18185 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
18186 (init_tty): Use DEV_TTY instead of "/dev/tty".
18187 [WINDOWSNT]: No need to protect from NAME arg being null.
18188
181892007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
18190
18191 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
18192 up the tty state.
18193
181942007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18195
18196 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
18197 (gpm_tty): Change its type.
18198 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
18199 (gpm_tty): Change its type and initialize it.
18200 (Fterm_open_connection): Check the frame is indeed a tty.
18201 Use the new gpm_tty.
18202 (Fterm_close_connection): Use the new gpm_tty.
18203 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
18204 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
18205
182062007-09-21 Juanma Barranquero <lekktu@gmail.com>
18207
18208 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
18209 underline_color, to draw strike-through.
18210
182112007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18212
18213 * lisp.h (allocate_terminal): Declare.
18214
18215 * window.c (candidate_window_p): Consider frames that are being placed
18216 by the user as somewhere between visible and iconified.
18217 (window_loop): Prefer windows on the current frame.
18218 (Fselect_window): Move the use of select-frame to the beginning so we
18219 can just delegate all the work (it'll call us back anyway).
18220
18221 * frame.c (Qdisplay_environment_variable):
18222 * frame.h (Qdisplay_environment_variable): Delete.
18223
18224 * .gdbinit (xbacktrace): Print the arg's address rather than the value
18225 of the first arg, since that value may be a union.
18226
18227 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
18228 parameter rather than Qdisplay_environment_variable. If all else
18229 fails, look for DISPLAY in initial-environment.
18230
182312007-09-21 Glenn Morris <rgm@gnu.org>
18232
18233 * Makefile.in (emacstool): Remove target.
18234 (lisp, shortlisp): Remove termdev.elc.
18235
182362007-09-21 Markus Triska <markus.triska@gmx.at>
18237
18238 * xterm.c (x_delete_display): Compile session management conditionally.
18239
182402007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
18241
18242 * callproc.c (getenv_internal_1): New function.
18243 (getenv_internal): Use it.
18244 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
18245
18246 * terminal.c (get_terminal): Don't accept ints to represent terminals.
18247 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
18248 (Fset_terminal_parameter): Work with dead terminals as well.
18249 (Fmodify_terminal_parameters): Remove.
18250
18251 * terminal.c (get_terminal): Handle terminals.
18252 Make sure the terminal returned is live.
18253 (create_terminal): Use allocate_terminal.
18254 (mark_terminals): Move to alloc.c.
18255 (delete_terminal): Use terminal->name as liveness status.
18256 NULL out fields after freeing their contents.
18257 Don't deallocate the object.
18258 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
18259 rather than an int.
18260 (Fterminal_live_p): Accept non-integer arguments.
18261 (Fterminal_list): Return terminal objects rather than an ints.
18262
18263 * alloc.c (enum mem_type): New member for `terminal' objects.
18264 (allocate_terminal): New function.
18265 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
18266 Handle terminals.
18267 (mark_terminal): New fun.
18268 (mark_terminals): Move from terminal.c.
18269
18270 * term.c (get_tty_terminal): Don't treat output_initial specially.
18271 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
18272 (delete_tty): Use terminal->name as liveness status.
18273
18274 * termhooks.h (struct terminal): Make it into a pseudovector.
18275 Remove `deleted' replaced by checking `name's nullness.
18276
18277 * print.c (print_object): Handle terminals.
18278
18279 * lisp.h (enum pvec_type): New `terminal' pseudovector.
18280 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
18281
18282 * frame.c (make_terminal_frame):
18283 * keyboard.c (tty_read_avail_input):
18284 * w32term.c (x_delete_terminal):
18285 * xfns.c (Fx_create_frame, x_create_tip_frame):
18286 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
18287
182882007-09-20 Glenn Morris <rgm@gnu.org>
18289
18290 * process.c (Fmake_network_process): Doc fix.
18291
182922007-09-19 Jason Rumney <jasonr@gnu.org>
18293
18294 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
18295
182962007-09-19 Michaël Cadilhac <michael@cadilhac.name>
18297
18298 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
18299 Fix a C warning regarding variable constness.
18300
18301 * xterm.c (handle_one_xevent): Fix a C warning.
18302
183032007-09-18 Jason Rumney <jasonr@gnu.org>
18304
18305 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
18306
183072007-09-17 Jan Djärv <jan.h.d@swipnet.se>
18308
18309 * gtkutil.c (gdpy_def): New variable.
18310 (xg_initialize): Initialize gdpy_def.
18311 (xg_display_close): If no other display exists, set gdpy_def to a
18312 new connection.
18313
183142007-09-16 Jan Djärv <jan.h.d@swipnet.se>
18315
18316 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
18317 when we have no file name for the icon.
18318 (xg_tool_bar_expose_callback): Remove.
18319 (xg_create_tool_bar): Don't connect expose signal to
18320 xg_tool_bar_expose_callback.
18321 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
18322
183232007-09-16 Andreas Schwab <schwab@suse.de>
18324
18325 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
18326 values instead of zapping them.
18327
183282007-09-14 Glenn Morris <rgm@gnu.org>
18329
18330 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
18331 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
18332 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
18333 scope and rename to omfib_buffer for clarity.
18334 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
18335
183362007-09-14 Kenichi Handa <handa@m17n.org>
18337
18338 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
18339
183402007-09-13 Jason Rumney <jasonr@gnu.org>
18341
18342 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
18343
18344 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
18345
18346 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
18347 (mac_term_init): Call here instead, passing rif.
18348
183492007-09-13 Glenn Morris <rgm@gnu.org>
18350
18351 * s/hpux.h: No longer define `static' as nothing.
18352
183532007-09-13 Johan Bockgård <bojohan@gnu.org>
18354
18355 * callint.c (Fcall_interactively): Remove unused var `fun'.
18356
183572007-09-12 Romain Francoise <romain@orebokech.com>
18358
18359 * window.c (prefer_window_split_horizontally, display_buffer):
18360 Revert 2007-09-08 change.
18361
183622007-09-12 Glenn Morris <rgm@gnu.org>
18363
18364 * alloca.c: Remove file.
18365 * Makefile.in (alloca): Do not undef.
18366 (allocaobj, alloca.o): Remove.
18367 (otherobj): Remove allocaobj.
18368 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
18369 * regex.c (C_ALLOCA): Remove all references and code that was only
18370 used when this was defined.
18371 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
18372 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
18373 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
18374
18375 * Makefile.in (SOURCES, unlock, relock): Delete.
18376
18377 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
18378 (menu_grab_callback): All uses changed.
18379
18380 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
18381 (x_reply_selection_request): All uses changed.
18382
183832007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
18384
18385 * lread.c (load_warn_old_style_backquotes): Change message to look
18386 better when it appears in the middle of byte-compiler messages.
18387
183882007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
18389
18390 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
18391
18392 * xterm.c (x_create_terminal): Add comment.
18393
18394 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
18395
183962007-09-10 Richard Stallman <rms@gnu.org>
18397
18398 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
18399
184002007-09-10 Michaël Cadilhac <michael@cadilhac.name>
18401
18402 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
18403 (DEFUN): Document `intspec', use it instead of `prompt'.
18404
18405 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
18406
18407 * data.c (Finteractive_form): If the interactive specification starts
18408 with a `(', use it as a Lisp form.
18409
18410 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
18411 name and file modes.
18412
18413 * callint.c (Fcall_interactively): Comment fixes.
18414
184152007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
18416
18417 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
18418 and compiled functions.
18419
184202007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
18421
18422 * window.c (prefer_window_split_horizontally): New variable.
18423 (display_buffer): Consider splitting window horizontally depending
18424 on prefer_window_split_horizontally.
18425
184262007-09-08 Eli Zaretskii <eliz@gnu.org>
18427
18428 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
18429
184302007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18431
18432 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
18433
18434 * frame.c (x_set_frame_parameters): Check number is positive before
18435 using XFASTINT.
18436
18437 * window.c (freeze_window_start): Don't presume selected_window holds
18438 a window object.
18439 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
18440
184412007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
18442
18443 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
18444
184452007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18446
18447 * window.c (Vsplit_window_preferred_function): New var.
18448 (Fdisplay_buffer): Use it.
18449 (syms_of_window): Export, and initialize it.
18450
184512007-09-06 Pixel <pixel@mandriva.com> (tiny change)
18452
18453 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
18454
184552007-09-06 Glenn Morris <rgm@gnu.org>
18456
18457 * gtkutil.c (menu_grab_callback) <cnt>:
18458 * xselect.c (x_reply_selection_request) <cnt>: Move static
18459 variable to file scope.
18460
184612007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
18462
18463 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
18464 consistent values of selected_frame and selected_window.
18465
184662007-09-04 Jason Rumney <jasonr@gnu.org>
18467
18468 * w32console.c (initialize_w32_display): Zero unused hooks.
18469
184702007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18471
18472 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
18473 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
18474
184752007-09-04 Jason Rumney <jasonr@gnu.org>
18476
18477 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
18478 in w32console.c. Set up input. Remove XXX comments that have been
18479 confirmed as correct.
18480
18481 * s/ms-w32.h (MULTI_KBOARD): Define.
18482
18483 * w32console.c (one_and_only_w32cons): Remove.
18484 (initialize_w32_display): Take terminal argument.
18485
18486 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
18487 initialize_w32_display.
18488 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
18489
18490 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
18491
18492 * keyboard.c (discard_mouse_events): Discard it.
18493 (make_lispy_event): Translate it to a lisp event.
18494 (lispy_wheel_names): Add wheel-left and right events.
18495 (syms_of_keyboard): Enlarge wheel_syms.
18496
18497 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
18498 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
18499
18500 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
18501
18502 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
18503 from WM_MOUSEHWHEEL.
18504 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
18505
18506 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
18507 terminal.
18508
18509 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
18510 keyboard for the terminal.
18511
185122007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18513
18514 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
18515 (Vresume_tty_hook): Rename from Vresume_tty_functions.
18516 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
18517 and resume-tty-function to resume-tty-hook.
18518 (Fsuspend_tty, Fresume_tty): Use new names.
18519
185202007-09-02 Jan Djärv <jan.h.d@swipnet.se>
18521
18522 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
18523 if it starts with "n:".
18524
185252007-08-31 Jan Djärv <jan.h.d@swipnet.se>
18526
18527 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
18528
185292007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
18530
18531 * frame.h:
18532 * frame.c (Qterm_environment_variable): Remove.
18533 (syms_of_frame): Don't init and staticpro it.
18534
18535 * callproc.c (getenv_internal): Remove special case for $TERM.
18536
18537 * callproc.c (Vinitial_environment): New variable.
18538 (set_initial_environment): Initialize it.
18539 (syms_of_callproc): Declare it.
18540 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
18541 TERM under which a process runs is never related to the TERM in which
18542 Emacs is running.
18543
185442007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18545
18546 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
18547 * s/darwin.h: ... do it here.
18548
185492007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
18550
18551 * lisp.h (set_initial_environment): Rename from set_global_environment.
18552
18553 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
18554 removed by mistake on the multi-tty branch.
18555
18556 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
18557 (Fmodify_frame_parameters): Return a value.
18558
18559 * image.c (png_load): Comment-out var only used in commented-out code.
18560
18561 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
18562 before passing it to mark_object.
18563
18564 * xfaces.c (internal_resolve_face_name): Return a value.
18565 (internal_resolve_face_name, resolve_face_name_error): Comment out.
18566
18567 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
18568 (x_icon): Comment-out var only used in commented-out code.
18569
185702007-08-29 Romain Francoise <romain@orebokech.com>
18571
18572 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
18573 QUIT hasn't been provided.
18574
185752007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18576
18577 * callproc.c (child_setup, getenv_internal): Use the
18578 display-environment-variable and term-environment-variable frame params.
18579 (set_initial_environment): Initialise Vprocess_environment.
18580
18581 * config.in: Disable multi-keyboard support on a mac.
18582
18583 * frame.c (Qterm_environment_variable)
18584 (Qdisplay_environment_variable): New variables.
18585 (syms_of_frame): Intern and staticpro them.
18586 (Fmake_terminal_frame): Disable output method test.
18587
18588 * frame.h: Declare them here.
18589
18590 * macfns.c (x_set_mouse_color): Get rif from the frame.
18591 (x_set_tool_bar_lines): Don't use updating_frame.
18592 (mac_window): Add 2 new parameters for consistency with other systems.
18593 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
18594 frame parameters following what is done in X11 and w32. Don't use
18595 FRAME_MAC_DISPLAY_INFO.
18596 (Fx_open_connection, start_hourglass): Remove window-system check.
18597 (x_create_tip_frame): Get the keyboard from the terminal.
18598
18599 * macmenu.c: Reorder includes.
18600 (Fx_popup_menu): Use terminal specific mouse_position_hook.
18601
18602 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
18603 terminal parameter.
18604 (x_clear_frame): Add a frame parameter.
18605 (note_mouse_movement): Get rif from the frame.
18606 (mac_term_init): Initialize the terminal.
18607 (mac_initialize): Make static and move terminal initialization ...
18608 (mac_create_terminal): ... to this new function.
18609
18610 * macterm.h (struct mac_display_info): Add terminal.
18611 (mac_initialize): Delete declaration.
18612
18613 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
18614
18615 * sysdep.c: Comment out text after #endif.
18616
18617 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
18618 is defined. Better initialize ttys in windows. Use terminal
18619 specific mouse_position_hook.
18620
18621 * termhooks.h (union display_info): Add mac_display_info.
18622
18623 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
18624 Set the default minibuffer frame, window_system and the rest of the
18625 frame parameters following what is done in X11.
18626
18627 * w32term.c (w32_initialize): Make static.
18628
18629 * xselect.c (x_handle_selection_clear): Only access
18630 terminal->kboard when MULTI_KBOARD is defined.
18631
18632 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
18633 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
18634
186352007-08-29 Jason Rumney <jasonr@gnu.org>
18636
18637 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
18638 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
18639
18640 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
18641 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
18642
18643 * keyboard.c (restore_kboard_configuration): Only define when
18644 MULTI_KBOARD defined.
18645
18646 * makefile.w32-in: Update dependancies from Makefile.in.
18647 (OBJ1): Add terminal.$(O)
18648
18649 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
18650 Don't define function body.
18651 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
18652
18653 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
18654
18655 * w32.c (request_sigio, unrequest_sigio): Remove.
18656
18657 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
18658 (w32con_clear_frame, w32con_clear_end_of_line)
18659 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
18660 (w32con_delete_glyphs, w32con_set_terminal_window)
18661 (scroll_line, w32_sys_ring_bell): Add frame arg.
18662 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
18663 Add terminal arg.
18664 (PICK_FRAME): Remove.
18665 (w32con_write_glyphs): Use frame specific terminal coding.
18666 (one_and_only_w32cons): New global variable.
18667 (initialize_w32_display): Use it for storing hooks.
18668 (create_w32cons_output): New function.
18669
18670 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
18671 arg a frame.
18672
18673 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
18674 Set window_system.
18675 (x_set_tool_bar_lines): Don't use updating_frame.
18676 (Fx_create_frame): Set terminal and ref count.
18677 (Fx_open_connection): Remove window-system check.
18678
18679 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
18680
18681 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
18682 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
18683 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
18684 Add frame arg.
18685 (x_delete_terminal, w32_create_terminal): New functions.
18686 (w32_term_init): Create a terminal.
18687 (w32_initialize): Move terminal specific initialization to
18688 w32_create_terminal.
18689
18690 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
18691 (w32_clear_rect, w32_clear_area): Use background from frame.
18692 (w32_display_info): Add terminal.
18693 (w32_sys_ring_bell, x_delete_display): Declare here.
18694
18695 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
18696
18697 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
18698
186992007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
18700
18701 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
18702 Fix get_named_tty calls for the controlling tty.
18703
187042007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
18705
18706 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
18707
187082007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
18709
18710 * term.c (tty_insert_glyphs): Add missing first parameter.
18711
187122007-08-29 Károly Lőrentey <karoly@lorentey.hu>
18713
18714 * buffer.c (Fbuffer_list, Fbury_buffer):
18715 Take frame->buried_buffer_list into account.
18716
18717 * cm.c (current_tty): New variable, for cmputc().
18718 (cmputc): Use it.
18719 (cmcheckmagic): Add tty parameter, look up terminal streams there.
18720 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
18721 (cmgoto): Add tty parameter. Pass it on to calccost().
18722 Use emacs_tputs() instead of tputs().
18723
18724 * cm.h (emacs_tputs): New macro to set current_tty, and then call
18725 tputs().
18726 (current_tty): New variable, for cmputc().
18727 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
18728
18729 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
18730 (internal_condition_case, internal_condition_case_1)
18731 (internal_condition_case_2): Don't abort when x_catching_errors.
18732
18733 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
18734 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
18735 prevent crashes caused by bogus longjmps in read_char.
18736
18737 * keymap.h (Fset_keymap_parent): Add EXFUN.
18738
18739 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
18740 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18741 Remove redundant definition.
18742
18743 * macfns.c (x_set_mouse_color, x_make_gc):
18744 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18745
18746 * w32term.c (x_free_frame_resources):
18747 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18748 (w32_initialize): Use the accessor macros for terminal characteristics.
18749
18750 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
18751 Use the accessor macros for terminal characteristics.
18752 * msdos.c (internal_terminal_init): Use the accessor macros for
18753 terminal characteristics.
18754 (ScreenVisualBell, internal_terminal_init):
18755 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18756
18757 * termopts.h (no_redraw_on_reenter): Declare.
18758
18759 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
18760 (mark_terminals, mark_ttys): Declare.
18761 (Fgarbage_collect): Call them.
18762 (mark_object): Mark buried_buffer_list.
18763
18764 * prefix-args.c: Include stdlib.h for exit.
18765
18766 * syssignal.h: Add comment.
18767
18768 * indent.c: Include stdio.h.
18769
18770 * window.h (Vinitial_window_system): Declare.
18771 (Vwindow_system): Delete declaration.
18772
18773 * fontset.c (Finternal_char_font): Use FRAME_RIF.
18774
18775 * image.c (lookup_image): Don't initialize `c' until the xasserts
18776 have been run.
18777
18778 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
18779 FRAME_FOREGROUND_PIXEL.
18780
18781 * print.c (print_preprocess): Don't lose print_depth levels while
18782 iterating.
18783
18784 * widget.c (update_from_various_frame_slots):
18785 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18786
18787 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
18788 frames.
18789 (window_internal_height): Remove bogus make_number call.
18790 (init_window_once): Call make_terminal_frame with two zero parameters.
18791
18792 * fileio.c (Fread_file_name): Update comment.
18793
18794 * callint.c (Fcall_interactively):
18795 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
18796 Make sure it is correctly unwound.
18797
18798 * xsmfns.c (x_session_close): New function.
18799
18800 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
18801 Delete declarations.
18802
18803 * xterm.h: Remove declaration for x_fully_uncatch_errors.
18804 (x_output): Remove background_pixel and foreground_pixel fields.
18805 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
18806 (x_delete_device, x_session_close): Declare.
18807
18808 * lread.c: Include setjmp.h. Update declaration of `read_char'.
18809 (read_filtered_event): Call `read_char' with a local
18810 `wrong_kboard_jmpbuf'.
18811
18812 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
18813 Don't call single_kboard_state. Use FRAME_RIF.
18814
18815 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
18816 systems.
18817
18818 * lisp.h (set_process_environment): Rename to `set_global_environment'.
18819 (Fframe_with_environment, Fset_input_meta_mode)
18820 (Fset_quit_char): EXFUN.
18821 (x_create_device, tty_output, terminal, tty_display_info): Declare.
18822 (init_sys_modes, reset_sys_modes): Update prototypes.
18823 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
18824
18825 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
18826 Vlocal_key_translation_map, and Vkeyboard_translate_table.
18827 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
18828 Delete declarations.
18829 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
18830 (temporarily_switch_to_single_kboard, tty_read_avail_input):
18831 New declarations.
18832
18833 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
18834 already does that during init_display(). Call syms_of_keymap
18835 before syms_of_keyboard. Call `syms_of_terminal'.
18836 Call set_initial_environment, not set_process_environment.
18837 (shut_down_emacs): Call reset_all_sys_modes() instead of
18838 reset_sys_modes().
18839
18840 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
18841 (internal_resolve_face_name, resolve_face_name_error): New functions.
18842 (resolve_face_name): Protect against loops and errors thrown by Fget.
18843 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
18844 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
18845
18846 * scroll.c: Replace CURTTY() with local variables throughout the
18847 file (where applicable).
18848 (calculate_scrolling, calculate_direct_scrolling)
18849 (scrolling_1, scroll_cost): Use the accessor macros for terminal
18850 characteristics.
18851
18852 * keymap.c (Vfunction_key_map): Remove.
18853 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
18854 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
18855 (Vkey_translation_map): Remove.
18856 (syms_of_keymap): Remove DEFVAR for key-translation-map.
18857 (Fdescribe_buffer_bindings)
18858 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
18859 Update for terminal-local key-translation-map.
18860
18861 * Makefile.in (callproc.o): Update dependencies.
18862 (lisp, shortlisp): Add termdev.elc.
18863 (obj): Add terminal.o.
18864 (terminal.o): Add dependencies.
18865 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
18866 (data.o, fns.o): Add termhooks.h dependency.
18867 (SOME_MACHINE_LISP): Add dnd.elc.
18868 (minibuf.o): Fix typo.
18869 Update dependencies.
18870
18871 * data.c (do_symval_forwarding, store_symval_forwarding)
18872 (find_symbol_value): Use the selected frame's keyboard, not
18873 current_kboard.
18874
18875 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
18876 Vwindow_system.
18877
18878 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
18879 Fmenu_bar_open.
18880 (syms_of_xmenu): Update defsubr.
18881 (mouse_position_for_popup, Fx_popup_menu)
18882 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
18883 (set_frame_menubar, free_frame_menubar)
b97439ce 18884 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
18885 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
18886 an X frame.
18887
18888 * xselect.c (x_own_selection): Abort if not an X frame.
18889 (some_frame_on_display): Check if it is an X frame.
18890 (x_handle_selection_clear): Deal with MULTI_KBOARD.
18891
18892 * coding.c: Include frame.h and termhooks.h.
18893 (terminal_coding, keyboard_coding): Delete.
18894 (Fset_terminal_coding_system_internal)
18895 (Fset_keyboard_coding_system_internal)
18896 (Fkeyboard_coding_system)
18897 (Fterminal_coding_system): Add a terminal parameter.
18898 Get terminal_coding from the terminal.
18899 (init_coding_once): Don't call setup_coding_system here.
18900
18901 * dispextern.h (set_scroll_region, turn_off_insert)
18902 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
18903 (tty_clear_end_of_line, tty_setup_colors)
18904 (delete_tty, updating_frame)
18905 (produce_special_glyphs, produce_glyphs, write_glyphs)
18906 (insert_glyphs): Remove.
18907 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
18908 (tty_turn_off_highlight, get_tty_size): Add declaration.
18909 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
18910
18911 * frame.h (enum output_method): Add output_initial.
18912 (struct x_output): Delete.
18913 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18914 Access foreground_pixel and background_pixel directly from the frame.
18915 (tty_display): Delete.
18916 (struct frame): Add buried_buffer_list, foreground_pixel,
18917 background_pixel and terminal. Delete kboard.
18918 (union output_data): Add tty.
18919 (FRAME_KBOARD): Get the kboard from the terminal.
18920 (FRAME_INITIAL_P): New macro.
18921 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
18922 (Qterm_environment_variable, Qdisplay_environment_variable)
18923 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
18924 New declarations.
18925
18926 * termchar.h (tty_output, tty_display_info): New structures.
18927 (tty_list): Declare.
18928 (FRAME_TTY, CURTTY): New macros.
18929 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
18930 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
18931 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
18932 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
18933
18934 * callproc.c: Include frame.h and termhooks.h, for terminal
18935 parameters.
18936 (add_env): New function.
18937 (child_setup): Use it.
18938 (child_setup, getenv_internal): Handle the new Vprocess_environment.
18939 (getenv_internal): Fix get_terminal_param call.
18940 (Fgetenv_internal, egetenv): Update doc.
18941 (syms_of_callproc): Initialize Vprocess_environment to nil.
18942 Register and initialize them. Remove obsolete defvars. Update doc
18943 strings.
18944 (child_setup): Handle Vlocal_environment_variables.
18945 (getenv_internal): Add terminal parameter.
18946 Handle Vlocal_environment_variables.
18947 (Fgetenv_internal): Add terminal parameter.
18948 (child_setup, getenv_internal, Fgetenv_internal): Store the local
18949 environment in a frame (not terminal) parameter. Update doc strings.
18950 (set_initial_environment): Rename from set_global_environment.
18951 Store Emacs environment in initial frame parameter.
18952
18953 * xdisp.c (redisplay_internal): Update references to
18954 `previous_terminal_frame'.
18955 (display_mode_line, Fformat_mode_line): Replace calls to
18956 `push_frame_kboard' with `push_kboard'.
18957 (get_glyph_string_clip_rects): Add extra parentheses and
18958 braces to prevent compiler warnings.
18959 (calc_pixel_width_or_height): Add xassert to check that the
18960 frame is alive. Don't call `lookup_image' on a termcap frame.
18961 (message2_nolog, message3_nolog, redisplay_internal)
18962 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
18963 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
18964 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
18965 (Fx_display_pixel_width, Fx_display_pixel_height)
18966 (Fx_display_planes, Fx_display_color_cells)
18967 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
18968 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
18969 (Fx_display_backing_store, Fx_display_visual_class)
18970 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
18971 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
18972
18973 * xfns.c (x_set_foreground_color x_set_background_color)
18974 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
18975 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18976 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
18977 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
18978 terminal that is being deleted.
18979 (Fx_create_frame): Use `store_frame_param' to set `window-system'
18980 frame parameter, and make sure it overrides any user-supplied setting.
18981 (Fx_close_connection, Fx_synchronize): Unify argument names with
18982 the rest of the DEFUNs.
18983
18984 * dispnew.c (Fsend_string_to_terminal): Update call to
18985 `get_tty_terminal'.
18986 (Fredraw_frame, Fsend_string_to_terminal)
18987 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
18988 FRAME_TERMCAP_P and FRAME_TTY.
18989 (window_change_signal): Don't believe width/height values that are
18990 impossibly small.
18991 (Vinitial_window_system): Rename from Vwindow_system.
18992 (termscript, Wcm, rif): Delete.
18993
18994 * termhooks.h (struct terminal): New struct containing the
18995 previously global text display hooks and new members NAME,
18996 DELETED and PARAM_ALIST.
18997 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
18998 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
18999 (FRAME_RIF): New macros.
19000 (get_terminal_param, get_device): New declarations.
19001 (termscript): Delete declaration.
19002
19003 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19004 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19005 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19006 FRAME_FOREGROUND_PIXEL.
19007 (x_fully_uncatch_errors): Disable definition.
19008 (x_scroll_bar_expose): Fix reference to foreground pixel.
19009 (XTread_socket): Disable loop on all X displays.
19010 (x_delete_terminal): Don't set terminal->deleted and let
19011 delete_terminal delete the frames on the terminal.
19012 (x_delete_display): Doc update to reflect changes in
19013 delete_terminal.
19014 (x_display_info) <terminal>: Move member earlier in the struct.
19015 (deleting_tty): Remove old variable.
19016 (Fsuspend_tty): Call clear_tty_hooks.
19017 (Fresume_tty, init_tty): Call set_tty_hooks.
19018 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
19019 errors on X frames.
19020 (x_catch_errors_unwind): Abort if x_error_message is NULL.
19021 (handle_one_xevent): Initialize `f' to NULL.
19022 (x_delete_terminal, x_create_terminal): New functions.
19023 (XTset_terminal_modes, XTreset_terminal_modes)
19024 (XTread_socket, x_connection_closed, x_term_init)
19025 (x_term_init, x_delete_display): Add terminal parameter.
19026 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
19027 X connections.
19028
19029 * frame.c: Include termchar.h.
19030 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
19031 (Qwindow_system, Qenvironment, Qterm_environment_variable)
19032 (Qdisplay_environment_variable): New vars.
19033 (Fframep): Deal with output_initial.
19034 (Fframe-live-p): Doc fix.
19035 (Fwindow-system): New function.
19036 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
19037 (make_terminal_frame): Don't create frames on a terminal that is
19038 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19039 (store_frame_param): Check for found_for_frame before calling XFRAME.
19040 (Fmake_terminal_frame): Handle NULL tty names correctly.
19041 (syms_of_frame): Enhance doc string of `default-frame-alist'.
19042 (Fdelete_frame): Remove unused variable `count'. Don't allow other
19043 frames to refer to a deleted frame in their 'environment parameter.
19044 (Fframe_with_environment): New function.
19045 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
19046 (get_future_frame_param): New function.
19047 (Fmake_terminal_frame): Use it.
19048 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
19049
19050 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
19051 * sysdep.c (reset_sys_modes): Update for renames.
19052
19053 * keyboard.c (tty_read_avail_input): New function.
19054 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
19055 (syms_of_keyboard): Defsubr them.
19056 (Fset_input_meta_mode, Fset_quit_char): New functions.
19057 (Fset_input_mode): Split to above functions.
19058 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
19059 parameter. Use it in call to `read_char'.
19060 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
19061 Set wrong_kboard_jmpbuf correctly in recursive calls.
19062 Use current_kboard to access Vkeyboard_translate_table.
19063 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
19064 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
19065 Update longjmp invocations. Remember the original current_kboard,
19066 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
19067 changes it. Comment out unnecessary calls to
19068 `record_single_kboard_state' and `any_kboard_state'.
19069 Update recursive calls.
19070 (wrong_kboard_jmpbuf): Remove global variable.
19071 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
19072 Handle deleted interrupted_kboards correctly; that is a legal
19073 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
19074 and read_char calls. Abort if interrupted_kboard died in read_char.
19075 (any_kboard_state, single_kboard_state)
19076 (push_frame_kboard): Remove function.
19077 (pop_kboard): Switch out of single_kboard mode if the kboard has
19078 been deleted. Remove unused variable. Help debugging by not
19079 changing current_kboard unnecessarily. Set current_kboard to the
19080 kboard of the selected frame when the stored kboard object has
19081 been deleted before pop_kboard.
19082 (temporarily_switch_to_single_kboard): Change first parameter to a
19083 frame pointer. Throw an error when caller wants to change kboards
19084 while in single_kboard mode. Don't push_kboard if we weren't in
19085 single kboard state. Don't pop_kboard if we popped into any
19086 kboard state.
19087 (restore_kboard_configuration): Abort if pop_kboard changed the
19088 kboard in single_kboard mode. Call pop_kboard only after setting
19089 up single_kboard mode.
19090 (Frecursive_edit): Switch to single_kboard mode only in nested
19091 command loops.
19092 (cmd_error, command_loop, command_loop_1, timer_check):
19093 Comment out unnecessary call to `any_kboard_state' and
19094 `record_single_kboard_state'.
19095 (delete_kboard): Exit single_kboard mode if we have just deleted
19096 that kboard. Use FRAME_KBOARD.
19097 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
19098 `fatal_error_signal'.
19099 (record_single_kboard_state): Don't push_kboard if we weren't in
19100 single kboard state. Don't pop_kboard if we popped into any
19101 kboard state.
19102 (push_frame_kboard): Rename to push_kboard.
19103 (kbd_buffer_get_event): Use FRAME_TERMINAL.
19104 (read_avail_input): Read input from all terminals.
19105 (mark_kboards): Also mark Vkeyboard_translate_table.
19106 (kbd_buffer_store_event_hold): Simplify condition.
19107 (read_key_sequence): Reinitialize fkey and keytran at each replay.
19108 (Vkeyboard_translate_table): Move to struct kboard.
19109 (init_kboard): Initialize Vkeyboard_translate_table.
19110 (syms_of_keyboard): Use DEFVAR_KBOARD to define
19111 Vkeyboard_translate_table. Update doc strings. Update docs of
19112 local-function-key-map and function-key-map.
19113
19114 * terminal.c: New file.
19115
19116 * term.c: Include errno.h.
19117 (Vring_bell_function, device_list, initial_device)
19118 (next_device_id, ring_bell, update_begin, update_end)
19119 (set_terminal_window, cursor_to, raw_cursor_to)
19120 (clear_to_end, clear_frame, clear_end_of_line)
19121 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
19122 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
19123 (syms_of_term): Move their initialization to terminal.c.
19124 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
19125 (Ftty_display_color_cells)
19126 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
19127 (clear_tty_hooks, set_tty_hooks)
19128 (init_tty, maybe_fatal): New functions.
19129 (Ftty_type): Return nil if terminal is not on a tty instead of
19130 throwing an error. Doc update.
19131 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
19132 Doc update. Initialize new subrs and variables.
19133 (delete_tty): Use terminal->deleted.
19134 (tty_set_terminal_modes): Rename from set_terminal_modes.
19135 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
19136 (set_scroll_region): Rename to `tty_set_scroll_region'.
19137 (turn_on_insert): Rename to `tty_turn_on_insert'.
19138 (turn_off_insert): Rename to `tty_turn_off_insert'.
19139 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
19140 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
19141 (toggle_highligh): Rename to `tty_toggle_highlight'.
19142 (background_highlight): Rename to `tty_background_highlight'.
19143 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
19144 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
19145 (tty_set_scroll_region, tty_background_highlight)
19146 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
19147 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
19148 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
19149 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
19150 Add static modifier.
19151 (tty_reset_terminal_modes, tty_set_terminal_window)
19152 (tty_set_scroll_region, tty_background_highlight)
19153 (tty_highlight_if_desired, tty_cursor_to)
19154 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
19155 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
19156 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
19157 renames.
19158
191592007-08-28 Jan Djärv <jan.h.d@swipnet.se>
19160
19161 * keyboard.c: Qrtl is new.
19162 (parse_tool_bar_item): Handle :rtl keyword.
19163 (syms_of_keyboard): Intern :rtl keyword.
19164
19165 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
19166
19167 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
19168 so no Lisp code is executed.
19169 (file_for_image, find_rtl_image): New functions.
19170 (xg_get_image_for_pixmap): Use file_for_image.
19171 (update_frame_tool_bar): If direction is RTL, use RTL image if
19172 defined. Use Gtk stock images if defined.
19173
191742007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19175
19176 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
19177 for nonexistent or zero-width glyph in composition glyph.
19178
191792007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
19180
19181 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
19182
19183 * xdisp.c (Finvisible_p): New function.
19184 (syms_of_xdisp): defsubr it.
19185
191862007-08-24 Juanma Barranquero <lekktu@gmail.com>
19187
19188 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
19189 Doc fixes.
19190
191912007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19192
19193 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
19194
191952007-08-24 Martin Rudalics <rudalics@gmx.at>
19196
19197 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
19198 whether decoding has modified buffer contents.
19199
192002007-08-24 Jason Rumney <jasonr@gnu.org>
19201
19202 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
19203 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
19204 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
19205 (init_svg_functions) [HAVE_NTGUI]: New function.
19206 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
19207 (svg_load_image): Use them.
19208 (svg_load_image) [HAVE_NTGUI]: Implement background.
19209
192102007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19211
19212 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
19213 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
19214 (LIBX): Remove @RSVG_LIBS@.
19215 (LIBES): Add $(RSVG_LIBS).
19216
19217 * image.c (svg_load_image): Blend with specified background if exists.
19218 Use IMAGE_BACKGROUND. Add Mac OS Support.
19219
19220 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
19221 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
19222 Remove macros.
19223 [MAC_OSX] (socket_callback): Do nothing.
19224 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
19225 ReceiveNextEvent.
19226 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
19227 socket_callback.
19228 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
19229
192302007-08-22 Glenn Morris <rgm@gnu.org>
19231
19232 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
19233
192342007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
19235
19236 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
19237
19238 * image.c: Add support for SVG images. Some additional comments
19239 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
19240 (svg_image_p): New function to test for SVG image.
19241 (svg_load): New function to load SVG image.
19242 (svg_load_image): New function, helper for svg_load.
19243 (Qsvg): New Lisp_object.
19244 (svg_keyword_index): New enum.
19245 (svg_format): New static `image_keyword' struct.
19246 (svg_type): New static `image_type' struct.
19247 (librsvg/rsvg.h): Include it.
19248
192492007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
19250
19251 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
19252
192532007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
19254
19255 * lread.c (Qold_style_backquotes): New var.
19256 (syms_of_lread): Init and staticpro it.
19257 (load_warn_old_style_backquotes): New fun.
19258 (Fload): Use them to warn about old style backquotes.
19259 (end_of_file_error, Fload): Remove unused vars.
19260
19261 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
19262
19263 * lread.c (Vold_style_backquotes): New var.
19264 (syms_of_lread): Init and export it to Elisp.
19265 (read1): Set it when we find an old-style (back)quote.
19266
192672007-08-22 Jason Rumney <jasonr@gnu.org>
19268
19269 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
19270
192712007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
19272
19273 * puresize.h (BASE_PURESIZE): Increase to 1140000.
19274
192752007-08-19 Richard Stallman <rms@gnu.org>
19276
19277 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
19278
192792007-08-19 Andreas Schwab <schwab@suse.de>
19280
19281 * alloc.c (pure): Round PURESIZE up.
19282
192832007-08-17 Jan Djärv <jan.h.d@swipnet.se>
19284
19285 * xterm.c (handle_one_xevent): Remove check that mouse click is in
19286 active frame.
19287
192882007-08-16 Richard Stallman <rms@gnu.org>
19289
19290 * eval.c (Fcommandp): Add parens to clarify.
19291
19292 * minibuf.c (Fall_completions): Use enum for type of table.
19293
19294 * emacs.c (USAGE2): Improve text.
19295
192962007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
19297
19298 * term.c (tty_default_color_capabilities): Declare static
19299 variables in file scope, to avoid HPUX compiler problem.
19300
193012007-08-13 Jan Djärv <jan.h.d@swipnet.se>
19302
19303 * gtkutil.c (update_frame_tool_bar): Use -1 as index
19304 to gtk_toolbar_insert.
19305
193062007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
19307
19308 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
19309
19310 * insdel.c (reset_var_on_error): New fun.
19311 (signal_before_change, signal_after_change):
19312 Use it to reset (after|before)-change-functions to nil in case of error.
19313 Bind inhibit-modification-hooks to t.
19314 Don't bind (after|before)-change-functions to nil while they run.
19315
193162007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19317
19318 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
19319 filling pixmap with stippled background.
19320
193212007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19322
19323 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
19324 Don't use invisible frame as parent window for repositioning.
19325
193262007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
19327
19328 * print.c (new_backquote_output): Rename from old_backquote_output.
19329 (print): Inverse its logic (according to its name) so as to match the
19330 behavior of new_backquote_flag in lread.c.
19331
193322007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19333
19334 * gmalloc.c (posix_memalign): New function.
19335
19336 * macterm.c (frame_highlight, frame_unhighlight): Don't call
19337 ActivateControl/DeactivateControl here.
19338 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
19339 frame-notice-user-settings is non-nil.
19340 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
19341 for kEventParamFMFontStyle.
19342 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
19343 mac_pass_command_to_system and mac_pass_control_to_system here.
19344 (XTread_socket): Call ActivateControl/DeactivateControl here.
19345 (XTread_socket) [TARGET_API_MAC_CARBON]:
19346 Check mac_pass_command_to_system and mac_pass_control_to_system here.
19347 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
19348 for window repositioning.
19349
193502007-08-08 Glenn Morris <rgm@gnu.org>
19351
19352 * Replace `iff' in doc-strings and comments.
19353
193542007-08-07 Chong Yidong <cyd@stupidchicken.com>
19355
19356 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
19357
193582007-08-07 Martin Rudalics <rudalics@gmx.at>
19359
19360 * fileio.c (Finsert_file_contents): Run format-decode and
19361 after_insert_file_functions on entire buffer when REPLACE is
19362 non-nil and inhibit modification_hooks and point_motion_hooks.
19363 For consistency, run after_insert_file_functions iff something
19364 got inserted. Move signal_after_change and update_compositions
19365 after code running after_insert_file_functions. Make sure that
19366 undo_list doesn't record intermediate steps of the decoding process.
19367
193682007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19369
19370 * emacs.c (main)
19371 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
19372 Call malloc_enable_thread on interactive startup.
19373
19374 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
19375 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
19376 [USE_PTHREAD]: Conditionalize with it.
19377 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
19378 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
19379 New functions.
19380
193812007-08-06 Chong Yidong <cyd@stupidchicken.com>
19382
19383 * xdisp.c (redisplay_window): When restoring original buffer
19384 position, make sure it is still valid.
19385
19386 * image.c (png_load): Ignore png-supplied background color.
19387
193882007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19389
19390 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
19391 Use kCFAbsoluteTimeIntervalSince1970.
19392
19393 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
19394 New variable.
19395 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
19396 event loop should be quit.
19397 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
19398 Quit dialog event loop if quit_dialog_event_loop is set.
19399
19400 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
19401 (Selection): New typedef. Use instead of ScrapRef.
19402 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
19403 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
19404 (mac_clear_selection): Rename from clear_scrap.
19405 (get_flavor_type_from_symbol): New argument SEL and subsume function of
19406 scrap_has_target_type. All uses changed.
19407 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
19408 (mac_selection_has_target_p): New functions.
19409 (mac_put_selection_value): Rename from put_scrap_string.
19410 (mac_get_selection_value): Rename from get_scrap_string.
19411 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
19412 (put_scrap_private_timestamp, scrap_has_target_type)
19413 (get_scrap_private_timestamp): Remove functions.
19414 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
19415 (x_own_selection, x_get_local_selection):
19416 Use mac_valid_selection_value_p.
19417 (x_own_selection): Don't use put_scrap_private_timestamp.
19418 Record OWNERSHIP-INFO into Vselection_alist instead.
19419 (x_get_local_selection): Don't check type if request is local.
19420 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
19421 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
19422
194232007-08-04 Jan Djärv <jan.h.d@swipnet.se>
19424
19425 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
19426 add comment explaining why.
19427
194282007-08-03 Richard Stallman <rms@gnu.org>
19429
19430 * fileio.c (Fvisited_file_modtime): Use make_time.
19431
194322007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
19433
19434 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
19435 build.
19436
194372007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
19438
19439 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
19440
194412007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
19442
19443 * puresize.h (BASE_PURESIZE): Increase to 1130000.
19444
194452007-07-30 Richard Stallman <rms@gnu.org>
19446
19447 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
19448
194492007-07-29 Jan Djärv <jan.h.d@swipnet.se>
19450
19451 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
19452
194532007-07-28 Nick Roberts <nickrob@snap.net.nz>
19454
19455 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
19456 remote default-directory.
19457
19458 * buffer.c (mode-line-format): Update doc string.
19459
194602007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19461
19462 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
19463 scroll bar gap.
19464 (x_scroll_bar_create): Set bar->fringe_extended_p.
19465 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
19466 on frame edge. Check fringe background extension. Don't clear
19467 extended fringe background area.
19468
19469 * w32term.h (struct scroll_bar): New member fringe_extended_p.
19470 (w32_fill_area): Enclose multiple statements with do ... while (0).
19471
19472 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
19473 Extend fringe background to scroll bar gap.
19474 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
19475 Set bar->fringe_extended_p.
19476 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19477 Put leftmost/rightmost scroll bars on frame edge. Check fringe
19478 background extension. Don't clear extended fringe background area.
19479
19480 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19481 New member fringe_extended_p.
19482
194832007-07-25 Glenn Morris <rgm@gnu.org>
19484
19485 * Relicense all FSF files to GPLv3 or later.
19486
19487 * COPYING: Switch to GPLv3.
19488
194892007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
19490
19491 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
19492
19493 * data.c (Finteractive_form): Check for the presence of an
19494 `interactive-form' symbol property more thoroughly.
19495
19496 * data.c (Finteractive_form): Use an `interactive-form' property if
19497 present, analogous to the function-documentation property.
19498
194992007-07-24 Jason Rumney <jasonr@gnu.org>
19500
19501 * w32fns.c (x_real_positions): Get real position from OS instead of
19502 calculating it.
19503
195042007-07-23 Jason Rumney <jasonr@gnu.org>
19505
19506 * filelock.c (current_lock_owner): Allow for @ sign in username.
19507
195082007-07-22 Nick Roberts <nickrob@snap.net.nz>
19509
19510 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
19511 remote default-directory.
19512
19513 * buffer.c (mode-line-format): Describe above case in doc string.
19514
195152007-07-20 Eli Zaretskii <eliz@gnu.org>
19516
19517 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
19518 Define if not defined.
19519
195202007-07-18 Jason Rumney <jasonr@gnu.org>
19521
19522 * w32proc.c (w32_executable_type): Handle 64 bit executables.
19523
195242007-07-18 Richard Stallman <rms@gnu.org>
19525
19526 * data.c (Fsetq_default): Doc fix.
19527
19528 * eval.c (Fsetq): Doc fix.
19529
195302007-07-18 Juanma Barranquero <lekktu@gmail.com>
19531
19532 * coding.c (Ffind_operation_coding_system):
19533 * eval.c (For, Fand): Doc fixes.
19534 Reported by Johan Bockgård.
19535
195362007-07-18 Jan Djärv <jan.h.d@swipnet.se>
19537
19538 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
19539
19540 * xterm.h: Declare x_ewmh_activate_frame.
19541
19542 * xterm.c (x_ewmh_activate_frame): New function.
19543 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
19544
195452007-07-17 Martin Rudalics <rudalics@gmx.at>
19546
19547 * window.c (Fdisplay_buffer): If largest or LRU window is the
19548 only window, split it even if it is not eligible for splitting.
19549 This restores the original behavior broken by the 2007-07-15
19550 change.
19551
195522007-07-17 Glenn Morris <rgm@gnu.org>
19553
19554 * abbrev.c (abbrev_check_chars): New function.
19555 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19556 Call abbrev_check_chars to check abbrev characters are word
19557 constituents. Doc fix.
19558
195592007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
19560
19561 * process.c (Fstart_process, Fmake_network_process)
19562 (read_process_output): Fix up last changes.
19563
195642007-07-16 Eli Zaretskii <eliz@gnu.org>
19565
19566 * makefile.w32-in (clean): Don't delete *~.
19567
195682007-07-16 Andreas Schwab <schwab@suse.de>
19569
19570 * window.c (Fdisplay_buffer): Use NILP.
19571 (Fset_window_scroll_bars): Likewise.
19572
195732007-07-15 Martin Rudalics <rudalics@gmx.at>
19574
19575 * window.c (window_min_size_2): New function.
19576 (window_min_size_1, size_window, Fdisplay_buffer)
19577 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
19578 windows without mode- or header-lines when window-min-height is
19579 too small.
19580 (size_window): Reset nodelete_p after testing it, following an
19581 earlier note by Kim F. Storm.
19582 (display_buffer): Do not set split_height_threshold to twice the
19583 value of window_min_height to avoid changing the value of a
19584 customizable variable. Rather explicitly check whether the
19585 height of the window that shall be splitted is at least as large
19586 as split_height_threshold.
19587 (Fwindow_full_width_p): New defun.
19588 (syms_of_window): Defsubr it.
19589
19590 * window.h: Add EXFUN for Fwindow_full_width_p.
19591
195922007-07-14 Jason Rumney <jasonr@gnu.org>
19593
19594 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
19595
195962007-07-14 Richard Stallman <rms@gnu.org>
19597
19598 * eval.c (maybe_call_debugger): New function.
19599 (find_handler_clause): Use maybe_call_debugger.
19600 Call it when the handler says `debug'.
19601 Eliminate DEBUGGER_VALUE_PTR.
19602 (Fsignal): Eliminate debugger_value.
19603 (Qdebug): New variable.
19604 (syms_of_eval): Initialize it.
19605
196062007-07-14 Juanma Barranquero <lekktu@gmail.com>
19607
19608 * eval.c (Fprogn):
19609 * keyboard.c (Ftrack_mouse):
19610 * print.c (Fwith_output_to_temp_buffer):
19611 * window.c (Fsave_window_excursion): Doc fix.
19612
196132007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
19614
19615 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
19616
196172007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
19618
19619 * process.h (struct Lisp_Process): Turn slots infd, outfd,
19620 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
19621 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
19622 read_output_delay, and read_output_skip from Lisp_Objects to ints.
19623 Remove unused encoding_carryover.
19624 * process.c: Adjust all functions accordingly.
19625
196262007-07-12 Richard Stallman <rms@gnu.org>
19627
19628 * term.c: Include unistd.h only if HAVE_UNISTD_H.
19629
196302007-07-11 Jason Rumney <jasonr@gnu.org>
19631
19632 * makefile.w32-in (LIBS): Include OLE32.
19633
19634 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
19635 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
19636
196372007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
19638
19639 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
19640 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
19641 from a Lisp_Object into a bare pointer.
19642 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
19643 Adjust the code correspondingly.
19644
19645 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
19646
19647 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
19648 (term_show_mouse_face): Remove unused var `j'.
19649 (handle_one_term_event): Remove unused vars `i' and `j'.
19650 Don't cast return value of ttyname since it's not necessary.
19651
196522007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
19653
19654 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
19655 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
19656
19657 * fns.c (map_char_table): Use an array of int for `indices' rather than
19658 an array of Lisp_Objects (which are only ever integers anyway).
19659 (Fmap_char_table): Update caller.
19660 * lisp.h: Update prototype.
19661 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
19662 * fontset.c (Ffontset_info):
19663 * casetab.c (set_case_table): Update callers.
19664
19665 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
19666
19667 * keymap.c (struct accessible_keymaps_data)
19668 (struct where_is_internal_data): New structures.
19669 (accessible_keymaps_1, where_is_internal_1): Use them to change
19670 interface to adhere to the one used by map_keymap.
19671 (Faccessible_keymaps, where_is_internal): Use map_keymap.
19672 (accessible_keymaps_char_table, where_is_internal_2): Remove.
19673
19674 * keymap.h (map_keymap_function_t): More informative prototype.
19675
196762007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
19677
19678 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
19679 (looking_at_1): Don't change search_regs and last_thing_searched
19680 if `inhibit-changing-match-data' is non-nil.
19681 (string_match_1, search_buffer, set_search_regs): Likewise.
19682 (syms_of_search): Add Lisp level definition for
19683 `inhibit-changing-match-data' and set it to nil.
19684 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
19685 start and end of the match, instead of using values in search_regs.
19686
196872007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19688
19689 * minibuf.c (Fcompleting_read): New value `confirm-only'
19690 for `require-match'.
19691
196922007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
19693
19694 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
19695 part of the 2007-06-27 change to syms_of_fileio.
19696
196972007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19698
19699 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
19700 Check WINDOWP before using XWINDOW. Consolidate return statements.
19701
197022007-06-27 Richard Stallman <rms@gnu.org>
19703
19704 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
19705
197062007-06-27 Juanma Barranquero <lekktu@gmail.com>
19707
19708 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
19709
197102007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19711
19712 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
19713 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
19714 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
19715 (_free_internal, memalign): Use them.
19716 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
19717 Initialize to PTHREAD_MUTEX_INITIALIZER.
19718 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
19719 (morecore_nolock): Rename from morecore. All uses changed.
19720 Use only nolock versions of internal allocation functions.
19721 (_malloc_internal_nolock, _realloc_internal_nolock)
19722 (_free_internal_nolock): New functions created from
19723 _malloc_internal, _realloc_internal, and _free_internal.
19724 (_malloc_internal, _realloc_internal, _free_internal): Use them.
19725 Copy hook value to automatic variable before its use.
19726 (memalign): Copy hook value to automatic variable before its use.
19727
197282007-06-26 Kenichi Handa <handa@m17n.org>
19729
19730 * coding.c (Ffind_operation_coding_system): Docstring improved.
19731 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
19732
197332007-06-25 David Kastrup <dak@gnu.org>
19734
19735 * keymap.c (Fcurrent_active_maps): Add `position' argument.
19736 (Fwhere_is_internal): Adjust call to `current-active-maps' to
19737 cater for additional parameter.
19738
19739 * keymap.h: Adjust number of parameters to `current-active-maps'.
19740
19741 * doc.c (Fsubstitute_command_keys): Adjust call of
19742 `current-active-maps'.
19743
197442007-06-25 David Kastrup <dak@gnu.org>
19745
19746 * callint.c (Fcall_interactively): Make the parsing of interactive
19747 specs somewhat more readable.
19748
197492007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19750
19751 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
19752 to scroll bar gap also when bitmap fills fringe. Draw only foreground
19753 if extended background has already been filled.
19754
197552007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19756
19757 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
19758 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
19759
19760 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
19761 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
19762 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
19763 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
19764 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
19765 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
19766 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
19767 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
19768 Run timers during dialog popup.
19769 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
19770
197712007-06-21 Jason Rumney <jasonr@gnu.org>
19772
19773 * image.c (convert_mono_to_color_image): Swap fore and background.
19774
197752007-06-20 Jason Rumney <jasonr@gnu.org>
19776
19777 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
19778 (w32_free_bdf_font): Unmap memory not handle.
19779
197802007-06-20 Sam Steingold <sds@gnu.org>
19781
19782 * gmalloc.c (__morecore): Fix the declaration to comply with the
19783 definition.
19784
197852007-06-20 Juanma Barranquero <lekktu@gmail.com>
19786
19787 * w32term.c (w32_delete_display): Remove leftover declaration.
19788 (w32_define_cursor, w32_initialize): Make static.
19789
19790 * w32.c (_wsa_errlist): Fix typo in error message.
19791 (init_environment): Ignore any environment variable from the
19792 registry having a null value.
19793
197942007-06-20 Glenn Morris <rgm@gnu.org>
19795
19796 * Makefile.in (LIBGIF): Default to -lgif.
19797
197982007-06-17 Jason Rumney <jasonr@gnu.org>
19799
19800 * w32menu.c (add_menu_item): Don't use multibyte string functions on
19801 unicode strings.
19802
198032007-06-16 Juanma Barranquero <lekktu@gmail.com>
19804
19805 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
19806 Fix typo in docstring.
19807
198082007-06-16 Eli Zaretskii <eliz@gnu.org>
19809
19810 * w32menu.c (add_menu_item): Escape `&' characters in menu items
19811 and their keybindings.
19812
198132007-06-15 Chong Yidong <cyd@stupidchicken.com>
19814
19815 * composite.c (update_compositions): Fix last fix.
19816
198172007-06-14 Jason Rumney <jasonr@gnu.org>
19818
19819 * w32.c (get_process_times_fn): New function pointer.
19820 (globals_of_w32): Intialize it if present in kernel32.dll.
19821 (w32_get_internal_run_time): New function.
19822
19823 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
19824
198252007-06-14 Kenichi Handa <handa@etlken.m17n.org>
19826
19827 * composite.c (update_compositions): Check the validness of
19828 compositions.
19829
198302007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19831
19832 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
19833 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
19834
19835 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
19836 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
19837
19838 * macgui.h (USE_MAC_TOOLBAR): New define.
19839
19840 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19841 Return immediately unless popup is activated.
19842
19843 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
19844 background to scroll bar gap.
19845 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
19846 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
19847 scroll bars on frame edge. Check fringe background extension.
19848 Don't clear extended fringe background area.
19849 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
19850 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
19851 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
19852 [USE_MAC_TOOLBAR]: New macros.
19853 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
19854 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
19855 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
19856 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
19857 [USE_MAC_TOOLBAR]: New functions.
19858 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
19859 manually if previous repositioning has failed.
19860 (mac_handle_keyboard_event): Use precomputed event kind.
19861 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
19862 as tool bar item click. Handle mouse movement over tool bar items.
19863
19864 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
19865 toolbar_win_gravity.
19866 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
19867 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
19868 Add externs.
19869
19870 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
19871 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
19872
198732007-06-14 Chong Yidong <cyd@stupidchicken.com>
19874
19875 * image.c (search_image_cache): Remove unused variable.
19876
198772007-06-13 Chong Yidong <cyd@stupidchicken.com>
19878
19879 * xfns.c, xmenu.c: Link to xaw3d if available.
19880
198812007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19882
19883 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
19884 frame_foreground and frame_background.
19885
19886 * image.c (lookup_image): Save frame foreground and background colors.
19887 (search_image_cache): Check if saved and current frame colors match.
19888
198892007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
19890
19891 * regex.c (regex_compile): Remove the `regnum' counter.
19892 Use bufp->re_nsub instead. Add support for \(?N:RE\).
19893
198942007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19895
19896 * term.c: Include intervals.h to declare Fget_text_property.
19897
198982007-06-10 Jason Rumney <jasonr@gnu.org>
19899
19900 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
19901
199022007-06-08 Juanma Barranquero <lekktu@gmail.com>
19903
19904 * callint.c (Fcall_interactively):
19905 * editfns.c (Fdelete_and_extract_region):
19906 * fileio.c (Fread_file_name):
19907 * fns.c (Fmapconcat):
19908 * keyboard.c (cmd_error_internal):
19909 * keymap.c (Fkey_description):
19910 * lread.c (openp):
19911 * minibuf.c (read_minibuf):
19912 * search.c (wordify):
19913 * sunfns.c (sel_read):
19914 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
19915 * xfns.c (x_default_scroll_bar_color_parameter):
19916 * xmenu.c (menu_help_callback):
19917 * xselect.c (Fx_get_atom_name):
19918 * xterm.c (x_term_init): Use empty_unibyte_string.
19919
199202007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
19921
19922 * alloc.c (init_strings): Initialize canonical empty strings.
19923 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
19924 canonical empty string when the requested size is 0.
19925
19926 * emacs.c (empty_unibyte_string): Rename from empty_string.
19927 (empty_multibyte_string): New canonical empty string.
19928 (syms_of_emacs): Don't initialize empty_string.
19929
19930 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
19931 string, if appropriate.
19932 (empty_unibyte_string, empty_multibyte_string): New externs.
19933 (empty_string): Remove extern.
19934
19935 * lread.c (syms_of_lread): Use empty_unibyte_string.
19936
199372007-06-07 Jason Rumney <jasonr@gnu.org>
19938
19939 * s/ms-w32.h: Don't define HAVE_TZNAME.
19940
19941 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
19942
199432007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19944
19945 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
19946
19947 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
19948 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
19949
19950 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19951 Don't call next handler.
19952 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
19953 Remove argument. Install handler to application.
19954 (set_frame_menubar): Don't change deep_p.
19955 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
19956 FRAME_OUTER_TO_INNER_DIFF_Y.
19957 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
19958 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
19959 [HAVE_DIALOGS]: New macros.
19960 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
19961 Use them.
19962 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
19963
19964 * macselect.c [MAC_OSX] (install_service_handler): Rename from
19965 init_service_handler. All callers changed. Return OSStatus value.
19966
19967 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
19968 All callers changed so as not to call SetPortWindowPort.
19969 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
19970 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
19971 mac_draw_string_common.
19972 (mac_draw_image_string_qd): Likewise.
19973 (mac_draw_string_common): Use them. Add INLINE.
19974 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
19975 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
19976 GetGlobalMouse.
19977 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
19978 and FRAME_OUTER_TO_INNER_DIFF_Y.
19979 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
19980 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
19981 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
19982 repositioning window to mac_handle_window_event.
19983 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
19984 saving window location to mac_handle_window_event
19985 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
19986 (install_menu_target_item_handler): Remove argument in extern.
19987 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
19988 Also accept command events.
19989 (do_keystroke): New function created from XTread_socket.
19990 (init_command_handler): Remove functions.
19991 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
19992 and save window location by kEventWindowShowing and kEventWindowHiding
19993 handlers here. Don't call next handler for window state change and
19994 focus events.
19995 (mac_handle_application_event, mac_handle_keyboard_event)
19996 [TARGET_API_MAC_CARBON]: New functions.
19997 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
19998 kEventWindowShowing and kEventWindowHiding events. Move installation
19999 of mouse, font, text input and menu target item handlers to
20000 install_application_handler.
20001 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20002 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20003 New function.
20004 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20005 Register it.
20006 (XTread_socket) [TARGET_API_MAC_CARBON]:
20007 Consolidate SendEventToEventTarget calls.
20008 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20009 Move application activation handler to mac_handle_application_event.
20010 Move keyboard handler to mac_handle_keyboard_event.
20011 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
20012 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
20013 init_command_handler. Call install_application_handler.
20014
20015 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
20016 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
20017
200182007-06-07 Glenn Morris <rgm@gnu.org>
20019
20020 * emacs.c (main): Use `emacs-copyright' in --version output.
20021
200222007-06-06 Chong Yidong <cyd@stupidchicken.com>
20023
20024 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
20025
200262007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20027
20028 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20029
20030 * macgui.h: Replace WindowPtr with WindowRef.
20031
20032 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20033 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20034 Replace ControlHandle with ControlRef.
20035 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
20036
20037 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20038 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20039 Replace ControlHandle with ControlRef.
20040 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
20041 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
20042
20043 * macterm.h (struct scroll_bar): Rename member control_handle_low
20044 and control_handle_high to control_ref_low and control_ref_high.
20045 All uses changed.
20046 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
20047 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
20048 respectively. All uses changed.
20049 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
20050 (install_window_handler, remove_window_handler): Replace WindowPtr
20051 with WindowRef in externs.
20052
200532007-06-05 Juanma Barranquero <lekktu@gmail.com>
20054
20055 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
20056
200572007-06-03 Nick Roberts <nickrob@snap.net.nz>
20058
20059 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
20060
20061 * frame.c (Fmouse_position, Fmouse_pixel_position):
20062 Condition on HAVE_GPM too.
20063
20064 * term.c (term_mouse_highlight): Remove unused variables.
20065 (Fterm_open_connection): Set gpm_zerobased to 1.
20066 (term_mouse_movement, term_mouse_click, handle_one_term_event):
20067 Use zero based co-ordinates.
20068 (handle_one_term_event): Report a drag as mouse movement too.
20069
20070 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
20071
200722007-06-03 Chong Yidong <cyd@stupidchicken.com>
20073
20074 * image.c (search_image_cache): New function. Require background
20075 color match if background color is unspecified in the image spec.
20076 (uncache_image, lookup_image): Use it.
20077
200782007-06-01 Juanma Barranquero <lekktu@gmail.com>
20079
20080 * window.c (Fshrink_window): Reflow docstring.
20081
200822007-06-02 Chong Yidong <cyd@stupidchicken.com>
20083
20084 * Version 22.1 released.
20085
200862007-06-01 Richard Stallman <rms@gnu.org>
20087
20088 * xfns.c (x_encode_text): Add GCPRO.
20089
200902007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20091
20092 * xfns.c (x_set_name_internal): Save encoded name before
20093 x_encode_text in case string data is relocated.
20094
200952007-05-31 Richard Stallman <rms@gnu.org>
20096
20097 * buffer.c (syms_of_buffer): Doc fix.
20098
200992007-05-30 Nick Roberts <nickrob@snap.net.nz>
20100
20101 * sysdep.c (init_sys_modes): Add rather than replace with
20102 O_NONBLOCK.
20103
20104 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
20105 term_mouse_moveto.
20106
20107 * termhooks.h (term_mouse_moveto): New extern.
20108
20109 * term.c (mouse_face_window): Rename...
20110 (Qmouse_face_window): ...to this.
20111 (term_show_mouse_face, term_clear_mouse_face)
20112 (term_mouse_highlight): Use Qmouse_face_window.
20113 (term_mouse_moveto): New function.
20114 (term_mouse_position): Make it work.
20115 (syms_of_term): Uncomment assignment to mouse_position_hook.
20116 Staticpro Qmouse_face_window.
20117
201182007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20119
20120 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
20121 around current_column call.
20122
201232007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
20124
20125 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
20126 * xdisp.c (next_element_from_buffer):
20127 * window.c (delete_window):
20128 * term.c (term_mouse_highlight):
20129 * msdos.c (getdefdir):
20130 * macterm.c (mac_create_bitmap_from_bitmap_data)
20131 (init_font_name_table):
20132 * fns.c (Fsxhash):
20133 * data.c (Fmake_local_variable):
20134 * ccl.c (ccl_driver): Likewise.
20135
201362007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20137
20138 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
20139 Call mac_wakeup_from_rne on window size change.
20140
201412007-05-25 Chong Yidong <cyd@stupidchicken.com>
20142
20143 * image.c (uncache_image): Fix typo.
20144
201452007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
20146
20147 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
20148
201492007-05-22 Richard Stallman <rms@gnu.org>
20150
20151 * xterm.c (x_connection_closed): Remove NO_RETURN.
20152
201532007-05-22 Martin Rudalics <rudalics@gmx.at>
20154
20155 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
20156
201572007-05-21 Chong Yidong <cyd@stupidchicken.com>
20158
20159 * image.c (uncache_image): New function.
20160 (Fimage_refresh): New function.
20161
201622007-05-20 Jan Djärv <jan.h.d@swipnet.se>
20163
20164 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
20165
201662007-05-20 Nick Roberts <nickrob@snap.net.nz>
20167
20168 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
20169 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
20170
201712007-05-20 Nick Roberts <nickrob@snap.net.nz>
20172
20173 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
20174 conditional on [HAVE_GPM_H].
20175
201762007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
20177
20178 * syntax.c (skip_chars): Update syntax-table only after we checked that
20179 the new location is valid.
20180
201812007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20182
20183 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
20184 mac_get_window_bounds.
20185
201862007-05-20 Nick Roberts <nickrob@snap.net.nz>
20187
20188 * Makefile.in (LIBGPM): Allow it to be set from configure.
20189 If set then link Emacs with it.
20190
20191 * config.in: Regenerate.
20192
20193 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
20194 New externs.
20195
20196 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
20197 Include gpm.h.
20198 (handle_one_term_event, term_gpm): New externs.
20199
20200 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
20201 and allow it to be interrupted by SIGIO.
20202
20203 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
20204 (wait_reading_process_output): Wait on gpm_fd too.
20205 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
20206 (add_gpm_wait_descriptor_called_flag): New variable.
20207 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
20208
20209 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
20210 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
20211 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
20212 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
20213 (make_lispy_event): Add case GPM_CLICK_EVENT.
20214 (read_avail_input): Handle mouse input.
20215
20216 * term.c (write_glyphs_with_face): New function.
20217 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
20218 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
20219 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
20220 (mouse_face_face_id, term_gpm, pos_x, pos_y)
20221 (last_mouse_x, last_mouse_y): New variables.
20222 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
20223 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
20224 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
20225 (Fterm_close_connection): New functions.
20226 (term_init): Initialise mouse_face_window.
20227
202282007-05-19 Chong Yidong <cyd@stupidchicken.com>
20229
20230 * xdisp.c (redisplay_window): If first window line is a
20231 continuation line, recompute the new window start instead of
20232 recentering.
20233
202342007-05-18 Glenn Morris <rgm@gnu.org>
20235
20236 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
20237 Suggested by Alfred M. Szmidt <ams@gnu.org>.
20238
202392007-05-17 Glenn Morris <rgm@gnu.org>
20240
20241 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
20242
202432007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20244
20245 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
20246 dead key repeat and up events.
20247
202482007-05-14 Chong Yidong <cyd@stupidchicken.com>
20249
20250 * image.c (pbm_load): Check image size for monochrome pbm.
20251
202522007-05-13 Chong Yidong <cyd@stupidchicken.com>
20253
20254 * xterm.c (XTread_socket): Revert last change.
20255
202562007-05-12 Chong Yidong <cyd@stupidchicken.com>
20257
20258 * image.c (pbm_load): Correctly check image size for greyscale pbm.
20259
20260 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
20261
202622007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20263
20264 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
20265 mixup (YAILOM).
20266
202672007-05-07 Andreas Schwab <schwab@suse.de>
20268
20269 * keymap.c (Flookup_key): Fix typo in last change.
20270
202712007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20272
20273 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
20274 mapping for unibyte strings.
20275
202762007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20277
20278 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
20279 (Fx_popup_dialog) [MAC_OSX]: Likewise.
20280
202812007-04-29 Richard Stallman <rms@gnu.org>
20282
20283 * insdel.c (replace_range): For undo, record insertion first.
20284
202852007-04-29 Andreas Schwab <schwab@suse.de>
20286
20287 * lisp.h (VECSIZE): Use OFFSETOF.
20288
202892007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20290
20291 * xdisp.c (try_window_reusing_current_matrix): Fix number of
20292 disabled lines.
20293
202942007-04-28 Richard Stallman <rms@gnu.org>
20295
20296 * lread.c (read_escape): In a string, \s is always space.
20297
202982007-04-27 Jan Djärv <jan.h.d@swipnet.se>
20299
20300 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
20301
20302 * gtkutil.c (xg_update_menubar, create_menus): Create empty
20303 submenu for menu bar items.
20304
20305See ChangeLog.10 for earlier changes.
20306
20307;; Local Variables:
20308;; coding: utf-8
20309;; add-log-time-zone-rule: t
aac0c6e3
MR
20310;; End:
20311
76b6f707 20312 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
20313
20314 This file is part of GNU Emacs.
20315
20316 GNU Emacs is free software: you can redistribute it and/or modify
20317 it under the terms of the GNU General Public License as published by
20318 the Free Software Foundation, either version 3 of the License, or
20319 (at your option) any later version.
20320
20321 GNU Emacs is distributed in the hope that it will be useful,
20322 but WITHOUT ANY WARRANTY; without even the implied warranty of
20323 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20324 GNU General Public License for more details.
20325
20326 You should have received a copy of the GNU General Public License
20327 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20328
20329;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40