* window.c (grow_mini_window): Comment out "delta >= 0" assertion.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
522d013a
JB
12009-10-26 Juanma Barranquero <lekktu@gmail.com>
2
3 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
4 For delta < 0, skip check that only makes sense when the mini-window
5 is going to be enlarged. (Bug#4534)
6
18060980
CY
72009-10-25 Chong Yidong <cyd@stupidchicken.com>
8
9 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
10 string in menu maps (Bug#4471).
11
fec8f0fe
CY
122009-10-24 Chong Yidong <cyd@stupidchicken.com>
13
14 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
15 FRAME_NS_VIEW on terminal frames (Bug#4765).
16
10d66ec0
AS
172009-10-24 Andreas Schwab <schwab@linux-m68k.org>
18
1cae01f7
AS
19 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
20 DBUS_TYPE_UINTnn separately to get proper sign extension.
21
58a12889
AS
22 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
23 can properly handle unsigned types.
24 (make_uid, make_gid): Removed.
25
987c9327
AS
26 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
27 types again.
28
522d013a 29 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
30 (system_process_attributes): Likewise.
31
905a9ed3
DN
322009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
33
34 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
35
36 * eval.c (Fautoload): Purecopy the filename. Simplify.
37
38 * category.c (Fdefine_category): Purecopy docstring.
39
a599b3e8
AS
402009-10-23 Andreas Schwab <schwab@linux-m68k.org>
41
7b792fc9
AS
42 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
43
a599b3e8
AS
44 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
45
b35ac83e
CY
462009-10-23 Chong Yidong <cyd@stupidchicken.com>
47
48 * window.c (Fwindow_edges, Fwindow_pixel_edges)
49 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
50 (Bug#4775).
51
e8903e00
SM
522009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
53
54 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
55 (init_fileio_once):
56 * lisp.h (init_fileio_once): Remove.
57 * emacs.c (main): Don't call init_fileio_once.
58
8f43cbf3
DN
592009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
60
61 * puresize.h (BASE_PURESIZE): Increase to 1430000.
62
26898943
AS
632009-10-21 Andreas Schwab <schwab@linux-m68k.org>
64
65 * doprnt.c (doprnt): Fix overflow check.
66
5c646d5a
JD
672009-10-21 Jan Djärv <jan.h.d@swipnet.se>
68
3132a7ea
JD
69 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
70
5c646d5a
JD
71 * xterm.h (x_wait_for_event): Declare it.
72
73 * xterm.c (pending_event_wait): New variable.
74 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
75 see pending_event_wait.eventtype.
76 (handle_one_xevent): Don't change gravity when parent changes.
77 (x_new_font): Call change_frame_size with new rows/columns before we try
78 to resize the frame.
79 (x_wait_for_event): New function.
80 (x_set_window_size_1): Don't change gravity unless change_gravity is set.
81 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
82 don't change frame size, instead wait for the ConfigureNotify.
83 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
84 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
85 (x_initialize): Initialize pending_event_wait.
86
87 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
88 size.
89
90 * widget.c (EmacsFrameSetValues): Add comment.
91 (EmacsFrameSetCharSize): Just call x_set_window_size.
92
93 * gtkutil.c (xg_frame_set_char_size): Flush events and call
94 x_wait_for_event.
95 (flush_and_sync): Removed again.
96 (xg_get_font_name): Suggest monospace if no previous font is known.
97
e9c1637d
SM
982009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
99
100 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 101 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 102
5a72cccb
YM
1032009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
104
105 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
106 processing pending events when event is filtered for input method.
ab04798f 107 (Bug#3681)
5a72cccb 108
2629aa37
JB
1092009-10-20 Juanma Barranquero <lekktu@gmail.com>
110
111 * fns.c: Add #endif accidentally removed in previous change.
112
c3417a74
DN
1132009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
114
115 * fns.c: Remove code for unsupported system: MAC_OS.
116 * image.c: Likewise. Include setjmp.h.
117
9685cef2
JD
1182009-10-19 Jan Djärv <jan.h.d@swipnet.se>
119
120 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
121 pixel -1 (bug #4742).
122
d7306fe6
DN
1232009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
124
019d2c4c
DN
125 * process.c (create_pty): Remove conditionals for no longer
126 supported systems: UNIPLUS and RTU.
127
ee6bacd4
DN
128 * xterm.c:
129 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
130
d7306fe6
DN
131 * alloc.c: Do not define struct catchtag.
132 * eval.c: Move struct catchtag definition ...
133 * lisp.h: ... here.
134
135 * image.c: Move png.h #include earlier to avoid warnings.
136
137 * xterm.c:
138 * xsmfns.c:
139 * xselect.c:
140 * xrdb.c:
141 * xmenu.c:
142 * xftfont.c:
143 * xfont.c:
144 * xfns.c:
145 * xfaces.c:
146 * xdisp.c:
147 * window.c:
148 * widget.c:
149 * w32xfns.c:
150 * w32uniscribe.c:
151 * w32term.c:
152 * w32select.c:
153 * w32reg.c:
154 * w32proc.c:
155 * w32menu.c:
156 * w32inevt.c:
157 * w32heap.c:
158 * w32font.c:
159 * w32fns.c:
160 * w32console.c:
161 * w32.c:
162 * w16select.c:
163 * vm-limit.c:
164 * unexsol.c:
165 * unexec.c:
166 * unexcw.c:
167 * unexaix.c:
168 * undo.c:
169 * tparam.c:
170 * textprop.c:
171 * terminfo.c:
172 * terminal.c:
173 * termcap.c:
174 * term.c:
175 * syntax.c:
176 * sound.c:
177 * sheap.c:
178 * search.c:
179 * scroll.c:
180 * region-cache.c:
181 * regex.c:
182 * ralloc.c:
183 * process.c:
184 * print.c:
b024548b
DN
185 * nsterm.m:
186 * nsselect.m:
187 * nsmenu.m:
188 * nsimage.m:
189 * nsfont.m:
190 * nsfns.m:
d7306fe6
DN
191 * msdos.c:
192 * minibuf.c:
193 * menu.c:
194 * marker.c:
195 * macros.c:
196 * keymap.c:
197 * keyboard.c:
198 * intervals.c:
199 * insdel.c:
200 * indent.c:
201 * gtkutil.c:
202 * ftxfont.c:
203 * ftfont.c:
204 * fringe.c:
205 * frame.c:
206 * fontset.c:
207 * font.c:
208 * fns.c:
209 * floatfns.c:
210 * filelock.c:
211 * fileio.c:
212 * emacs.c:
213 * editfns.c:
214 * dosfns.c:
215 * doprnt.c:
216 * doc.c:
217 * dispnew.c:
218 * dired.c:
219 * dbusbind.c:
220 * data.c:
221 * composite.c:
222 * coding.c:
223 * cmds.c:
224 * cm.c:
225 * chartab.c:
226 * charset.c:
227 * character.c:
228 * ccl.c:
229 * category.c:
230 * casetab.c:
231 * casefiddle.c:
232 * callproc.c:
233 * callint.c:
234 * bytecode.c:
235 * buffer.c:
236 * atimer.c: Include setjmp.h. (Bug#4643)
237
fd5f21e6
SM
2382009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
239
4c0354d7
SM
240 Remove leftover table unibyte_to_multibyte_table.
241 * character.c (unibyte_to_multibyte_table): Remove.
242 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
243 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
244 * character.h (UNIBYTE_TO_CHAR): New macro.
245 (MAKE_CHAR_MULTIBYTE): Use it.
246 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
247 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
248 (message_dolog, set_message_1):
249 * search.c (Freplace_match):
250 * editfns.c (Fcompare_buffer_substrings):
251 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
252 (concat):
253 * insdel.c (copy_text, count_size_as_multibyte):
254 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
255 * term.c (produce_glyphs):
256 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
257 * regex.c (RE_CHAR_TO_MULTIBYTE):
258 * cmds.c (internal_self_insert):
259 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
260
fd5f21e6
SM
261 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
262
4418646e
DN
2632009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
264
265 * puresize.h (BASE_PURESIZE): Increase to 1310000.
266
35f5c1d2
JB
2672009-10-16 Juanma Barranquero <lekktu@gmail.com>
268
269 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
270
a0cd8f6b
AR
2712009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
272
273 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
274 still needed under Tiger.
275
276 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
277
278 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
279 __Apple__.
280
281 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
282
01a8d3fa
KH
2832009-10-15 Kenichi Handa <handa@m17n.org>
284
285 * print.c (print_object): Escape a symbol like "2E10" too.
286
bf6c75c9 2872009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
288
289 Cleanups and changes for 64-bit compile under Snow Leopard.
290 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
291
292 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
293
c5959062 294 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
295 (ns_findfonts, nsfont_list_family): Use long format in printf, and
296 cast argument.
297 (nsfont_open): Use ns_char_width() everywhere.
298 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where
299 appropriate.
300
301 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
302
303 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
304 where appropriate.
305
306 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
307 where appropriate.
6e4780c5
JB
308 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
309 Use stringWithUTF8String.
bf6c75c9
AR
310 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
311
6e4780c5
JB
312 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
313 Add formal protocol mention to inheritance.
bf6c75c9
AR
314 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
315
6e4780c5
JB
316 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
317 Fix printf format.
bf6c75c9
AR
318 (ns_query_color): Use CGFloat where appropriate.
319 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
320 (EmacsScroller-mouseDown:) Use long format in printf, and cast
321 argument.
322
3d87f118
AR
323 * config.in (NS_HAVE_NSINTEGER): Drop.
324
a95c8102
AR
325 * dbusbind.c (dbus-method-return-internal)
326 (dbus-method-error-internal): Use long format in printf, and cast
327 argument.
328
329 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
330 in printf, and cast argument.
331
6873acca 332 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
333 cast argument.
334
9ec6f100
GM
3352009-10-11 Glenn Morris <rgm@gnu.org>
336
337 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
338
5be883cd
JD
3392009-10-08 Jan Djärv <jan.h.d@swipnet.se>
340
341 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
342 menu bar with a small width so it doesn't enlarge the frame.
343
d7a39b51
JB
3442009-10-08 Juanma Barranquero <lekktu@gmail.com>
345
346 * fontset.c (Fset_fontset_font): Fix typos in error messages.
347
0c2b6f8e
GM
3482009-10-06 Glenn Morris <rgm@gnu.org>
349
350 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
351 SOME_MACHINE_LISP (this enters indirectly via DOC).
352
e02131a2
EZ
3532009-10-05 Eli Zaretskii <eliz@gnu.org>
354
355 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
356
b4744254
EZ
3572009-10-04 Eli Zaretskii <eliz@gnu.org>
358
359 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
360 Doc fix.
361
dbf64827
JB
3622009-10-03 Martin Rudalics <rudalics@gmx.at>
363
364 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
365
e9a0aef8
MA
3662009-10-02 Michael Albinus <michael.albinus@gmx.de>
367
368 * lisp.h (Qdelete_directory_internal): Removed, because it is not
369 used anymore outside fileio.c.
370
371 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
372
64eb2b56
JB
3732009-10-01 Juanma Barranquero <lekktu@gmail.com>
374
375 * lisp.h (Qdelete_directory_internal):
376 Declare, instead of Qdelete_directory.
377
378 * w32fns.c (Fsystem_move_file_to_trash): Use it.
379
9d28c33e
SM
3802009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
381
382 * eval.c (Fcalled_interactively_p): Add `kind' argument.
383
9d8f3bd9
MA
3842009-10-01 Michael Albinus <michael.albinus@gmx.de>
385
9d28c33e 386 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
387 Fdelete_directory. It is not a command anymore. It has no file
388 name handler.
389
9694740b
SM
3902009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
391
392 * xdisp.c (get_next_display_element): Use an enum in last change.
393
748e162f
KH
3942009-09-28 Kenichi Handa <handa@m17n.org>
395
9694740b 396 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
397 unibyte_display_via_language_environment in handling
398 Vnobreak_char_display.
399
17efd58d
AR
4002009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
401
402 * nsterm.h (ns_app_name): New extern variable.
403
404 * nsterm.m (ns_app_name): New variable.
405 (ns_term_init): Set and use it.
406 (ns_term_shutdown): Use it.
407
408 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
409 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
410
411 * nsfns.m (ns_set_name_iconic, ns_set_name)
412 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
413 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
414
9694740b
SM
415 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
416 Remove double-casting in client_data comparison.
31c2d412 417
3208cb35
YM
4182009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
419
420 * keyboard.c (make_lispy_event): Remember last wheel direction.
421 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
422
b7d552d6
GM
4232009-09-26 Glenn Morris <rgm@gnu.org>
424
425 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
426 internal.elc. Add term/pc-win.elc.
427 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
428 term/x-win.elc.
429 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
430 term/w32-win.elc.
431 (NS_SUPPORT): New.
432 (lisp): Add NS_SUPPORT.
433 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
434
4ff670a8
DR
4352009-09-25 David Reitter <david.reitter@gmail.com>
436
437 * nsmenu.m (EmacsMenu-clear): Recognize application menu
438 on Mac OS X 10.6+ (bug#4513).
439
feabfb6c
JB
4402009-09-24 Juanma Barranquero <lekktu@gmail.com>
441
442 * frame.c (xrdb_get_resource): Return nil for empty string resources;
443 some parts of Emacs code (like font selection) don't grok them. See
444 http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
445
de59072a
AS
4462009-09-24 Andreas Schwab <schwab@redhat.com>
447
448 * coding.c (decode_coding_iso_2022): Fix operator precedence.
449
a489517b
JB
4502009-09-24 Juanma Barranquero <lekktu@gmail.com>
451
452 * dired.c (Fdirectory_files): Fix typo in docstring.
453
0592970c
AR
4542009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
455
456 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
457 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
458 (EmacsScroller-setPosition:portion:whole:): Remove -display call
459 under GNUstep.
460 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
461
462 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
463 glyph advancement.
464
48e8a88b
AR
4652009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
466
467 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 468 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
469
470 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
471 deleted (bug #4492).
472
e14f0a78
AR
473 * nsfont.m (Vns_reg_to_script): New lisp variable.
474 (syms_of_nsfont): Declare it.
475 (ns_registry_to_script): New function.
476 (ns_get_req_script): Call it.
477 (ns_findfonts): Don't give up on non-unicode registry.
478
479 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
480
5b650faa
SM
4812009-09-20 Tom Tromey <tromey@redhat.com>
482
483 * eval.c (find_handler_clause): Make stack-trace-on-error work in
484 batch mode (bug#4228).
485
a489517b 4862009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
487
488 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 489 carefully. (Bug #4339)
0bae4e09 490
fcfe06f3
CY
4912009-09-18 Chong Yidong <cyd@stupidchicken.com>
492
d798ba87 493 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 494
31642728
AR
4952009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
496
497 * emacs.c (inhibit_x_resources): Update doc string for NS.
498 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 499 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
500
501 * nsterm.h (ns_no_defaults): Remove.
502
503 * nsterm.m (ns_no_defaults): Remove.
504 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
505 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
506 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
507 don't update the NSWindow itself.
508 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 509 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
510
511 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
512 ns_use_qd_smoothing.
513
514 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
515 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 516 (x-close-connection): Drop PSFlush() under OS X.
a489517b 517 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 518
8686ac71
JB
5192009-09-17 Juanma Barranquero <lekktu@gmail.com>
520
521 * emacs.c (inhibit_x_resources): New variable.
522 (main) [HAVE_NS]: Don't process --quick command line option.
523 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
524
525 * lisp.h (inhibit_x_resources): Declare it extern.
526
527 * w32reg.c (x_get_string_resource):
528 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
529
e227ba05
EZ
5302009-09-17 Eli Zaretskii <eliz@gnu.org>
531
532 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP): Add
533 lisp/term/internal.elc.
534
742d40e8
SM
5352009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
536
537 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
538 (bug#4461).
539
005bd5a2
DN
5402009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
541
542 * puresize.h (BASE_PURESIZE): Increase to 1290000.
543
544 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
545 (OBJECTS_MACHINE): Remove, unused.
546
f9af9719
SM
5472009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
548
549 * frame.c (x_get_resource_string): Remove unused.
550
0307c7d2
JD
5512009-09-15 Jan Djärv <jan.h.d@swipnet.se>
552
553 * xterm.c (x_new_font): Call change_frame_size before calling
554 x_set_window_size, in case frame size won't change.
555
556 * frame.c (x_set_font): Remove dead code.
557
428b13d6
SM
5582009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
559
560 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
561
5766c380
SM
5622009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
563
564 * lread.c (Fload): Don't output a message after loading an obsolete
565 package any more (done in Lisp now).
566
2fd0161b
CY
5672009-09-12 Chong Yidong <cyd@stupidchicken.com>
568
569 * fns.c (syms_of_fns): Doc fix (Bug#4227).
570
bc5e75b6
SM
5712009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
572
573 * keymap.c (Fwhere_is_internal): Use nconc2.
574
c31c985e
AM
5752009-09-11 Alan Mackenzie <acm@muc.de>
576
577 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
578 batch mode.
579
78012bd2
AS
5802009-09-11 Andreas Schwab <schwab@linux-m68k.org>
581
582 * xdisp.c (display_mode_element): Detect cycles.
583
9d889332
SM
5842009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
585
586 * keymap.c (where_is_internal): Don't erroneously return nil right after
587 filling the cache.
588 (where_is_internal_1): Fix up typo.
589
7ab5d780
GM
5902009-09-11 Glenn Morris <rgm@gnu.org>
591
592 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
593 share a common doc-string.
594
5238a749
SM
5952009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
596
66d77eda
SM
597 * keymap.c (get_keymap): Return the actual keymap symbol rather than
598 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
599
5238a749
SM
600 * keymap.c (QCadvertised_binding): New constant.
601 (syms_of_keymap): Initialize it.
602 (Fwhere_is_internal): Try and use bindings from :advertised-binding
603 if applicable.
604
19f48442
SM
6052009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
606
50d4ba39
SM
607 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
608 (parse_menu_item): Streamline since bindings are recomputed all the
609 time anyway. Don't bother checking Vdefine_key_rebound_commands any
610 more and don't support lmenu's menu-alias any more either.
611
a88a5372
SM
612 * keymap.c (where_is_internal_data): Make noindirect a boolean.
613 (where_is_internal): Strip it down to only traverse the keymaps.
614 Move the cache handling from Fwhere_is_internal to here.
615 (Fwhere_is_internal): Move the handling of remapping and the choice of
616 the best binding from where_is_internal to here.
617 Unify the cached/noncached paths, so remapping is also handled
618 correctly when the cache is used, and so the cache can be used to
619 speed up remap-handling when applicable.
620 Give preference to non-remapped bindings.
621 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
622 non-remapped bindings.
623 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
624 command remapping.
625
19f48442
SM
626 * xdisp.c (display_mode_element): Move list length limit from 50 to
627 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
628
599498c3 6292009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
630
631 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
632
f9b7b5ac
SM
6332009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
634
a53af587
JB
635 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
636 (Bug#4334)
637
f9b7b5ac
SM
638 * keymap.c (where_is_internal): Filter out shadowed remappings.
639 Assume that where_is_internal returns unshadowed bindings to simplify
640 the code and get rid of the gotos. Use ASIZE.
641
04f4b72d
JD
6422009-09-04 Jan Djärv <jan.h.d@swipnet.se>
643
4da146f2
JD
644 * xterm.c (x_focus_changed): If we get a focusout and pointer
645 is invisible, make it visible.
646
04f4b72d
JD
647 * xterm.h: Remove condition for declaration of
648 x_*_window_to_frame.
649
7cef7ce3
SM
6502009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
651
652 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
653 initial terminal as well.
654
a54fa5b7
JD
6552009-09-02 Jan Djärv <jan.h.d@swipnet.se>
656
657 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 658 x_menubar_window_to_frame.
a54fa5b7
JD
659
660 * xterm.c: Remove declarations also in xterm.h
661 (XTmouse_position): Do not return valid positions
662 for clicks in the menubar and the toolbar for Gtk+.
663
664 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
665 if the widget for the event has the same top level as a frame,
666 return the frame.
667 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
668 internal windows, bug #4122.
669 (x_non_menubar_window_to_frame): Remove.
670
5a021dd0
GM
6712009-09-02 Glenn Morris <rgm@gnu.org>
672
673 * buffer.c (default-major-mode): Move most of the doc from here...
674 (major-mode): ... to here.
675
548fe2f3
NR
6762009-08-30 Nick Roberts <nickrob@snap.net.nz>
677
678 * process.c (wait_reading_process_output): Keep the descriptor
679 when pty is used by a non-child process, e.g., in I/O buffer of
680 GDB this allows inferior to be restarted.
681
e0840eef
EZ
6822009-08-29 Eli Zaretskii <eliz@gnu.org>
683
684 * xdisp.c (redisplay_internal): Remove redundant test and collapse
685 both branches into one.
686
82e98df4
SM
6872009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
688
689 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
690 (main): Use enable-multibyte-characters rather than
691 default-enable-multibyte-characters. Output a warning message when
692 running a unibyte session.
693
890617cb
YM
6942009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
695
696 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
697 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
698 (copy_data_segment): Also copy __program_vars section.
699 (copy_dyld_info) [LC_DYLD_INFO]: New function.
700 (dump_it) [LC_DYLD_INFO]: Use it.
701
702 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
703
e7adeadc
EZ
7042009-08-28 Eli Zaretskii <eliz@gnu.org>
705
706 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
707 $(SRC)/buildobj.h.
708 (buildobj.h): Renamed from $(SRC)/buildobj.h.
709 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
710 $(SRC)/buildobj.h.
711 (clean): Add buildobj.h.
712
3ed8bbdc
TZ
7132009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
714
715 * print.c (print_object): Set escapeflag to 1 when printing
716 hashtable keys and values.
717
155a6764
SM
7182009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
719
720 * lread.c (read_integer): Use doubles (and potentially return a float
721 number) as we do in string-to-number.
722 (read1): Use strtol to read integers, signal errors on strtol's
723 overflow and use floats if strtol's output is too large for
724 Elisp integers.
725
877610de
EZ
7262009-08-27 Eli Zaretskii <eliz@gnu.org>
727
728 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
729 (make-buildobj-SH): Fix last change.
730 (SRC): Move to before where it's first used.
731
ef73e7be
KH
7322009-08-27 Kenichi Handa <handa@m17n.org>
733
550c8289
KH
734 * process.c (send_process): Use encode_coding_object instead of
735 encode_coding_string to perform eol-conversion even if the string
736 is unibyte.
737
60afa08d
KH
738 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
739 character.
740
ef73e7be 741 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 742 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 743
7b3a82d7
DN
7442009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
745
5654bf63
DN
746 * callproc.c (Fcall_process): Remove always true #if.
747
7b3a82d7
DN
748 * lisp.h: Replace #if 0 code for checking with text pointing to
749 the --enable-checking configure flag.
750
751 * emacs.c (main): Mention the --enable-profiling configure flag
752 instead of using CFLAGS.
753
878bde49
KR
7542009-08-26 Ken Raeburn <raeburn@raeburn.org>
755
756 * Makefile.in (buildobj.h): New target.
757 (doc.o): Depend on it.
758 (temacs${EXEEXT}): Don't generate buildobj.lst.
759 (mostlyclean): Delete buildobj.h, not buildobj.lst.
760 * makefile.w32-in ($(SRC)/buildobj.h): New target.
761 ($(BLD)/doc.$(O)): Depend on it.
762 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
763 provided by Eli Zaretskii.)
764 ($(TEMACS)): Don't generate buildobj.lst.
765 * doc.c: Include buildobj.h.
766 (buildobj): New static variable.
767 (Fsnarf_documentation): Use it, instead of opening and reading
768 buildobj.lst.
769
1574224c
MA
7702009-08-25 Michael Albinus <michael.albinus@gmx.de>
771
772 * dbusbind.c (Fdbus_call_method)
773 (Fdbus_call_method_asynchronously): Use English numeric format for
774 timeout values in doc string.
775
d9da2f45
KH
7762009-08-25 Kenichi Handa <handa@m17n.org>
777
ef73e7be
KH
778 * alloc.c (mark_char_table): New function.
779 (mark_object): Use mark_char_table for a char-table.
780
d9da2f45
KH
781 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
782 (CHAR_TABLE_REF): Use it.
783
c8edcc01
KR
7842009-08-23 Ken Raeburn <raeburn@raeburn.org>
785
786 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
787 before invoking the newly build emacs to check for load-path
788 shadowing.
789
7763401b
GM
7902009-08-22 Glenn Morris <rgm@gnu.org>
791
792 * Makefile.in (bootstrap_exe): New variable.
793 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
794 Use ${bootstrap_exe}.
795
729eadda
EZ
7962009-08-22 Eli Zaretskii <eliz@gnu.org>
797
798 * coding.h (encode_coding_string): Don't encode unibyte strings.
799 (Bug#4047)
800
eb4c6ace
MA
8012009-08-22 Michael Albinus <michael.albinus@gmx.de>
802
803 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
804
805 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
806 intended as hotfix only.
807 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
808
36e34d1b
AR
8092009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
810
811 * nsterm.m (ns_get_color): Update documentation properly for last
812 change, and clean up loose ends in the code left by it. Fix
813 longstanding bug with 16-bit hex parsing, and add support for
814 yet another X11 format (rgb:r/g/b) for compatibility.
815 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
816 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
817
f983eb8a
SM
8182009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
819
820 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
821
3f56d3c6
MA
8222009-08-20 Michael Albinus <michael.albinus@gmx.de>
823
824 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
825 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
826 (xd_initialize, xd_pending_messages): Check, whether
827 $DBUS_SESSION_BUS_ADDRESS is set.
828
fb641d68
YM
8292009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
830
831 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
832
833 * nsterm.m (ns_get_color): Remove incompatible color formats again.
834
cf59a374
GM
8352009-08-20 Glenn Morris <rgm@gnu.org>
836
837 * emacs.c (system-type): Doc fix.
838
1373f3be
SM
8392009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
840
841 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
842 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
843
058ed861
MA
8442009-08-18 Michael Albinus <michael.albinus@gmx.de>
845
1373f3be
SM
846 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
847 New functions.
058ed861
MA
848 (xd_initialize): Revert change from 2009-08-16.
849
563a866e 8502009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
851
852 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 853 font-group vector, return nil.
5fc05db0 854
e42bdf01
CY
8552009-08-17 Chong Yidong <cyd@stupidchicken.com>
856
857 * process.c (status_notify): Don't perform redisplay.
858 (Fdelete_process, list_processes_1, process_send_signal):
859 Expliticly perform redisplay.
860 (wait_reading_process_output): Always check process status, but
861 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
862
4230ab74
KR
8632009-08-17 Ken Raeburn <raeburn@raeburn.org>
864
1373f3be 865 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
866 (XFLOAT_INIT): New macro for storing a float value.
867 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
868 * fns.c (sxhash): Copy out the value of a float in order to
869 examine its bytes.
870 * dbusbind.c (xd_append_arg): Likewise.
871
4230ab74
KR
872 * emacs.c (main): Don't call syms_of_data twice.
873
a0645cdd
MA
8742009-08-16 Michael Albinus <michael.albinus@gmx.de>
875
876 * dbusbind.c (xd_initialize): Add connection file descriptor to
877 input_wait_mask, in order to let select() detect, whether a new
878 message has been arrived.
ca4f31ea 879 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 880
485db0ba
MA
8812009-08-15 Michael Albinus <michael.albinus@gmx.de>
882
1373f3be
SM
883 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
884 New functions.
485db0ba
MA
885
886 * lisp.h (xd_pending_messages): Declare.
887
888 * keyboard.c (readable_events): Call xd_pending_messages.
889
b5b98ff4
CY
8902009-08-15 Chong Yidong <cyd@stupidchicken.com>
891
1373f3be 892 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 893
f8354c6e
CY
894 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
895
b5b98ff4
CY
896 * buffer.c (set_buffer_internal_1)
897 (swap_out_buffer_local_variables): Check for unbound local
898 variables (Bug#4138).
899
8b9fc636
EZ
9002009-08-14 Eli Zaretskii <eliz@gnu.org>
901
902 * process.c (create_pty): Fix last change.
903
ce959360
CY
9042009-08-13 Chong Yidong <cyd@stupidchicken.com>
905
906 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
907 (xbm_load_image): Caller changed.
64b807c9 908 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 909
c7baf7e9
NR
9102009-08-13 Nick Roberts <nickrob@snap.net.nz>
911
912 * process.c (create_pty): New function.
913 (Fstart_process): Use it to allow Emacs to just associate a pty
914 with the buffer. See associated change in gdb-mi.el.
915 (list_processes_1): Deal with no program name.
916 (start_process_unwind): Use pid == -2 to mean no process.
917
1ac9108a
SM
9182009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
919
920 * cmds.c (nonundocount): New global variable.
921 (keys_of_cmds): Initialize it.
922 (Fself_insert_command): Use it to combine upto 20 sequential chars
923 into a single undo entry, just like the Qself_insert_command code in
924 keyboard.c does.
925 Call frame_make_pointer_invisible, also like the Qself_insert_command
926 code in keyboard.c does.
927 * keyboard.c (command_loop_1): Use the new global nonundocount rather
928 than its own local replacement for it.
929
e267324c
KR
9302009-08-10 Ken Raeburn <raeburn@raeburn.org>
931
1ac9108a 932 * fns.c (concat): Don't re-set string length to its current value.
77437343 933
1ac9108a
SM
934 * coding.h (decode_coding_string, encode_coding_string):
935 Use SBYTES macro.
f0bed503 936
1ac9108a 937 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
938 (doprnt): Merge with doprnt1, discarding lispstrings code.
939 * lisp.h (doprnt_lisp): Don't declare.
940
416e006d
JL
9412009-08-07 Juri Linkov <juri@jurta.org>
942
943 * puresize.h (BASE_PURESIZE): Increase to 1270000.
944
6f7d5780
DN
9452009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
946
947 * print.c (syms_of_print): Undo previous change.
948
f19a0f5b
TZ
9492009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
950
951 * lread.c (read1, syms_of_lread): Read hashtables back from the
952 readable format.
953
954 * print.c (print_preprocess, print_object): Print hashtables fully
955 and readably.
956 (syms_of_print): Provide 'hashtable-print-readable.
957
b9173dc2
AR
9582009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
959
960 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
961 no family set.
962 (nsfont_open): Handle case when entity has no family.
963
1586503c
AR
9642009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
965
966 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
967 element, not a list, for match case.
968
087048cd
KH
9692009-07-28 Kenichi Handa <handa@m17n.org>
970
971 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
972 rigidly.
973
974 * xfont.c (xfont_list_pattern): Don't ignore the return value of
975 font_parse_xlfd. Check font properties more rigidly.
976
780c2506
DN
9772009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
978
31fd7c5c
JB
979 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
980 bsd-common.h.
780c2506 981
a8c0cc18
KH
9822009-07-27 Kenichi Handa <handa@m17n.org>
983
984 * xfaces.c (face_with_height): Call font_clear_prop.
985
4fbe2306
CY
9862009-07-26 Chong Yidong <cyd@stupidchicken.com>
987
111d9af3
CY
988 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
989
990 * xterm.c (x_term_init): Use Qx.
991
4fbe2306
CY
992 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
993
1ac9108a 994 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
995 (ns_get_color): Revert 2009-07-16 change.
996
beb0b7f9
EZ
9972009-07-25 Eli Zaretskii <eliz@gnu.org>
998
999 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 1000 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 1001
2baf5e76
KR
10022009-07-25 Ken Raeburn <raeburn@raeburn.org>
1003
1ac9108a
SM
1004 * coding.h (decode_coding_string, encode_coding_string):
1005 Use SCHARS macro.
8890e5f5 1006
2baf5e76 1007 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 1008 (load_depth): Delete.
2baf5e76
KR
1009 (Qload_in_progress): New variable.
1010 (load_unwind): Don't reference load_depth or load_in_progress.
1011 (Fload): Likewise; specbind Qload_in_progress instead.
1012 (init_lread): Don't initialize load_depth.
1013 (syms_of_lread): Initialize and protect Qload_in_progress.
1014
1395c6f5
AR
10152009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1016
1017 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1018
4e2f36cf
AR
10192009-07-23 Yavor Doganov <yavor@gnu.org>
1020
1021 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1022
5dd9a6f7
AR
10232009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1024
1025 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
1026 Bugs 3792, 3720, 2402.
1027 (ns_lookup_indexed_color): Check for bad index.
1028 (ns_index_color): Init unused slot to 0.
1029 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
1030 Bug 3714, possibly 3082.
5dd9a6f7 1031
c902b920
JR
10322009-07-22 Jason Rumney <jasonr@gnu.org>
1033
1ac9108a
SM
1034 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
1035 Position IME window at cursor (Bug#2570).
c902b920
JR
1036 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
1037 (globals_of_w32fns): Dynamically load functions required above.
1038
1039 * w32term.c (w32_draw_window_cursor): Send message to reposition
1040 any IME window.
1041
090101cf
CY
10422009-07-21 Chong Yidong <cyd@stupidchicken.com>
1043
1044 * fileio.c: Revert 2009-07-16 changes.
1045 (Vauto_save_include_big_deletions): New variable.
1046 (Fdo_auto_save): Disable auto-save only if
1047 auto-save-include-big-deletions is nil.
1048
e6583e3d
CY
10492009-07-21 Chong Yidong <cyd@stupidchicken.com>
1050
1051 * xdisp.c (move_it_to): For continued lines ending in a tab, take
1052 the overflowed pixels into account (Bug#3879).
1053
ece435a5
KR
10542009-07-21 Ken Raeburn <raeburn@raeburn.org>
1055
1056 * lread.c (load_depth): New variable.
1057 (Fload, load_unwind, init_lread): Set it to the load recursion
1058 depth; set load_in_progress as a simple boolean based on the
1059 current load_depth. (Bug#3892)
1060
40b2d973
AR
10612009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1062
1063 * nsfont.m (ns_has_attribute): Remove.
1064 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
1065
10be7e0d
JL
10662009-07-18 Juri Linkov <juri@jurta.org>
1067
1068 * process.c (Fset_process_query_on_exit_flag): Mention killing
1069 a buffer in docstring.
1070
fa055055
KH
10712009-07-17 Kenichi Handa <handa@m17n.org>
1072
1073 * casetab.c (shuffle): Fix the logic of setting up the cycle.
1074
042f7b69
YM
10752009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1076
1077 * nsfns.m (Fns_set_alpha): Remove function.
1078 (syms_of_nsfns): Don't defsubr it.
1079
1080 * nsterm.m (ns_get_color): Remove incompatible color formats.
1081 (ns_color_to_lisp): Generate #rrggbb color format string.
1082
4be941e3
RS
10832009-07-16 Richard Stallman <rms@gnu.org>
1084
1085 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
1086 (Fset_buffer_auto_saved): Handle save_length = -2.
1087
4e6b227d
CY
10882009-07-16 Chong Yidong <cyd@stupidchicken.com>
1089
1090 * xterm.c (Qx_gtk_map_stock): New var.
1091
1092 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
1093 of calling intern each time.
1094
a1856973
YM
10952009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1096
1097 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
1098 does tiling.
1099
1100 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
1101
497e54d8
KH
11022009-07-14 Kenichi Handa <handa@m17n.org>
1103
72d36834
KH
1104 * font.c (font_vconcat_entity_vectors): New function.
1105 (struct font_sort_data): New member font_driver_preference.
1106 (font_compare): Check font_driver_preference.
1107 (font_sort_entities): The format of the first argument changed.
1108 (font_delete_unmatched): Likewise.
1109 (font_list_entities): The return type changed.
1110 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
1111 (font_find_for_lface): Adjuste for the above changes.
1112 Don't suppress the checking of C even if the repertory supports it.
1113 (Flist_fonts): Adjust for the above changes.
72d36834 1114
1ac9108a
SM
1115 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
1116 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
1117 Reject a font who has adstyle property that is different from a
1118 langname derived from registry property.
1ac9108a 1119 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 1120
b6046155
EZ
11212009-07-13 Eli Zaretskii <eliz@gnu.org>
1122
1123 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
1124 local copy of dirfilename.
1125
fb6b6049
KH
11262009-07-13 Kenichi Handa <handa@m17n.org>
1127
e2402a5e
KH
1128 * chartab.c (sub_char_table_ref_and_range): Fix the range check
1129 against max_char.
1130
fb6b6049
KH
1131 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
1132 calling XSYMBOL (sym).
1133
65156807
EZ
11342009-07-11 Eli Zaretskii <eliz@gnu.org>
1135
1ac9108a
SM
1136 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
1137 New function.
1138 (directory_files_internal) [WINDOWSNT]:
1139 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
1140 the filesystem of the directory is fast or slow.
1141
1142 * w32.c (logon_network_drive): Don't assume PATH is an absolute
1143 file name.
1144 (is_slow_fs): New function.
1145 (stat): Use it to determine whether to issue more system calls to
1146 get accurate file attributes, when w32-get-true-file-attributes is
1147 `local'.
1148
e0ab5fcf
JD
11492009-07-10 Jan Djärv <jan.h.d@swipnet.se>
1150
1151 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 1152 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
1153 parameter font-parameter as default to the font dialog.
1154
784ceded
KH
11552009-07-10 Kenichi Handa <handa@m17n.org>
1156
1157 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
1158
fb8edc0b
EZ
11592009-07-09 Eli Zaretskii <eliz@gnu.org>
1160
1ac9108a 1161 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 1162
fb8edc0b
EZ
1163 * w32.c (stat): Treat UNC file names as residing on remote
1164 drives. (Bug#3542)
1165
635c75b1
KH
11662009-07-09 Kenichi Handa <handa@m17n.org>
1167
1168 * fontset.c (fontset_find_font): Fix previous change.
1169
c1d5ce94
MA
11702009-07-08 Michael Albinus <michael.albinus@gmx.de>
1171
1172 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
1173 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
1174 error flag.
1175
edb61b39
KH
11762009-07-08 Kenichi Handa <handa@m17n.org>
1177
374bf7e4
KH
1178 * fontset.c (fontset_find_font): Fix the logic of handling
1179 charset_matched.
1180 (font_for_char): Delete unused var.
1181 (generate_ascii_font_name): Delete it.
1182
edb61b39
KH
1183 * coding.h (JIS_TO_SJIS2): Fix the code range check.
1184
1185 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
1186 (encode_coding_sjis): Fix the code range check.
1187
0f3f018c
CY
11882009-07-07 Chong Yidong <cyd@stupidchicken.com>
1189
1190 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
1191 (Fexpand_file_name): Copy string data properly (Bug#3772).
1192
fcaf6f3a
JD
11932009-07-07 Jan Djärv <jan.h.d@swipnet.se>
1194
1195 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
1196 first MapNotify.
1197
6809ca75
KH
11982009-07-07 Kenichi Handa <handa@m17n.org>
1199
1200 * character.h (unibyte_has_multibyte_table): Delete extern.
1201 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
1202
1203 * charset.c (Fset_charset_priority): Update charset_unibyte.
1204 (syms_of_charset): Initialize charset_unibyte.
1205
1206 * character.c (unibyte_has_multibyte_table): Delete it.
1207 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
1208 charset_unibyte.
1209 (multibyte_char_to_unibyte_safe): Likewise.
1210 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
1211
1ac9108a 1212 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
1213 (x_produce_glyphs): Likewise.
1214
1215 * .gdbinit (xcharset): Fix the treating $arg0.
1216
ad9e2d54
EZ
12172009-07-04 Eli Zaretskii <eliz@gnu.org>
1218
1219 Emulation of `getloadavg' on MS-Windows.
1220 * w32.c: Include float.h
1221 (g_b_init_get_native_system_info, g_b_init_get_system_times)
1222 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
1223 (get_native_system_info, get_system_times): New functions.
1224 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
1225 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
1226 (globals_of_w32): Initialize g_b_init_get_native_system_info,
1227 g_b_init_get_system_times, and num_of_processors.
1228
0a3472c7
JR
12292009-07-03 Jason Rumney <jasonr@gnu.org>
1230
1231 * w32term.c (w32_initialize): Use standard types.
1232
80904120
EZ
12332009-07-03 Eli Zaretskii <eliz@gnu.org>
1234
1235 * dired.c (Ffile_attributes): Decode user and group names by the
1236 locale's encoding. (Bug#3443)
1237
6978862d
DN
12382009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
1239
f8d23104
DN
1240 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
1241 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
1242
1243 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
1244
1245 * term.c (init_tty): Remove spurious #ifdef.
1246
6978862d
DN
1247 * m/mips.h: Mention this file is also used for netbsd.
1248 * m/pmax.h: Remove file.
1249
e044e4fc
JD
12502009-07-03 Jan Djärv <jan.h.d@swipnet.se>
1251
1252 * xterm.h (struct x_display_info): Add invisible_cursor.
1253 (struct x_output): Add current_cursor.
1254
1255 * xterm.c (XTtoggle_invisible_pointer): New function.
1256 (x_define_frame_cursor): Don't define cursor if invisible or the
1257 same as before. Set current_cursor.
1258 (x_create_terminal): Set toggle_invisible_pointer_hook.
1259
1260 * xfns.c (make_invisible_cursor): New function.
1261 (x_set_mouse_color): Call make_invisible_cursor.
1262 Set current_cursor.
1263 (x_window): Set current_cursor.
1264
1265 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
1266
1267 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
1268 inserting a character.
1269 (read_avail_input): Call frame_make_pointer_visible.
1270
1271 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
1272 (frame_make_pointer_invisible, frame_make_pointer_visible):
1273 New functions.
e044e4fc
JD
1274 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
1275
1276 * frame.h: Declare frame_make_pointer_invisible and
1277 frame_make_pointer_visible.
1278 (struct frame): Add pointer_invisible.
1279
574c8efa
JD
12802009-07-02 Jan Djärv <jan.h.d@swipnet.se>
1281
7b507248
JD
1282 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
1283 frame isn't visible.
1284 (xg_frame_resized): If width/height is -1, get size of window
1285 from X server.
1286
1287 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
1288 for MapNotify.
1289
835bdaa7 1290 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 1291 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 1292 (flush_and_sync): Reintroduce.
574c8efa 1293
3f1c6666 12942009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 1295
31fd7c5c 1296 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
1297
1298 * xterm.c (x_handle_net_wm_state): Also look for sticky.
1299 (x_term_init): Initialize Xatom_net_wm_state_sticky.
1300
1301 * frame.h: Declare Qsticky.
1302
cad9ef74
JD
1303 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
1304
1305 * nsfns.m (ns_frame_parm_handlers): Ditto.
1306
1307 * frame.c: Declare Qsticky.
1308 (frame_parms): Add sticky.
1309
1310 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
1311
1312 * xterm.h: Declare x_set_sticky.
1313
1314 * xterm.c (x_set_sticky): New function.
1315
69b16610
JD
1316 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
1317 (xg_tool_bar_menu_proxy): Attach enter/leave events to
1318 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
1319
1320 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
1321
1322 * frame.c: Qmaximized is new.
1323 (x_set_frame_parameters): Do not handle fullscreen specially.
1324 Only set width and height if explicitly set.
1325 (x_set_fullscreen): Handle Qmaximized.
1326 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
1327 (syms_of_frame): Initialize Qmaximized.
1328
1ac9108a
SM
1329 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
1330 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
1331
1332 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
1333 for Expose event. Add call to x_check_fullscreen for MapNotify event.
1334 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
1335 set gravity to NorthWestGravity when USE_GTK.
1336 (set_wm_state): New function.
31fd7c5c 1337 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
1338 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
1339 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 1340 or the case when no window manager is running. That means remove calls
3f1c6666
JD
1341 to x_real_positions and x_fullscreen_adjust.
1342
1343 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
1344 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
1345 flush_and_sync.
1346 (xg_height_changed): New function.
1347 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
1348 and gtk_window_set_policy. Set frame gravity after parsing the
1349 geometry string.
3f1c6666
JD
1350 (xg_update_frame_menubar, free_frame_menubar)
1351 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
1352 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
1353 Remove calls to xg_frame_set_char_size.
1354
fd503d99
KH
13552009-07-01 Kenichi Handa <handa@m17n.org>
1356
1357 * keyboard.c (decode_keyboard_code): New function.
1358 (tty_read_avail_input): Decode the input bytes if necessary.
1359
1ac9108a
SM
1360 * coding.c (setup_coding_system):
1361 Initialize coding->carryover_bytes to 0.
fd503d99
KH
1362 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
1363 use Qno_conversion.
1364
24ed93fb
YM
13652009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1366
1367 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
1368
99061dfc
CY
13692009-06-30 Chong Yidong <cyd@stupidchicken.com>
1370
1ac9108a 1371 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 1372
ff90fbde
JR
13732009-06-30 Jason Rumney <jasonr@gnu.org>
1374
1375 * w32term.c (w32_initialize): Use GetModuleHandle for library that
1376 is already loaded.
1377 Set user model ID if supported (bug#1849).
1378
5f445726
JM
13792009-06-29 Jim Meyering <meyering@redhat.com>
1380
1381 Remove useless if-before-xfree test.
1382 * nsfont.m (nsfont_close): Remove useless test.
1383 * term.c (delete_tty): Likewise.
1384 * w32.c (system_process_attributes): Likewise.
1385 * w32font.c (w32font_close): Likewise.
1386 * xfaces.c (x_free_gc): Likewise.
1387 * xselect.c (buffer): Likewise.
1388
b9607587
AS
13892009-06-28 Andreas Schwab <schwab@linux-m68k.org>
1390
1391 * process.c (send_process): Keep decoded string in a local
1392 variable and protect it from GC. (Bug#3521)
1393
89ba96f4
EZ
13942009-06-28 Eli Zaretskii <eliz@gnu.org>
1395
1396 * term.c (create_tty_output) [MSDOS]: #ifdef away.
1397 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
1398
098a1589
CY
13992009-06-28 Chong Yidong <cyd@stupidchicken.com>
1400
485422be
CY
1401 * xdisp.c (start_display, handle_face_prop)
1402 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
1403 (redisplay_window, try_window_id, produce_image_glyph):
1404 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 1405
098a1589
CY
1406 * xterm.c (x_update_window_begin, x_new_focus_frame)
1407 (x_scroll_bar_handle_click, handle_one_xevent)
1408 (handle_one_xevent, XTread_socket, x_focus_on_frame)
1409 (x_make_frame_visible, x_make_frame_invisible)
1410 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
1411 code chunks that are now obsolete.
1412
78c38319
MA
14132009-06-28 Michael Albinus <michael.albinus@gmx.de>
1414
1415 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
1416 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
1417 for hours, when optimzation is enabled.
1418 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
1419 (xd_read_message): Make them static.
1420
4189ed40
CY
14212009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
1422
1423 * term.c (turn_on_face): Allow simultaneously bold and dim
1424 terminal faces (Bug#3530).
1425
cd9b5e16
CY
14262009-06-27 Chong Yidong <cyd@stupidchicken.com>
1427
4e23bedb
CY
1428 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
1429
cd9b5e16
CY
1430 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
1431 truncation glyphs (Bug#3686).
1432
07cc3c35
GM
14332009-06-27 Glenn Morris <rgm@gnu.org>
1434
1435 * m/pmax.h: Restore file, with only netbsd portions.
1436
31fd7c5c 14372009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 1438
cd9b5e16 1439 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 1440
42d4a64f
KH
14412009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
1442
1443 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
1444 the arg FORCE_SYMBOL.
1445
930fe55b 14462009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
1447
1448 * fontset.c (fontset_find_font): When a usable rfont_def is found
1449 in a fallback font-group, make it the first element of the group.
1450
57ebc3fd
CY
14512009-06-24 Chong Yidong <cyd@stupidchicken.com>
1452
1453 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
1454
f084f942
KH
14552009-06-24 Kenichi Handa <handa@m17n.org>
1456
1457 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
1458 set for C.
1459 (fontset_font): Record the availability of a font for C both in
1460 the realized fontsets of the current one and the default one.
1461
2f686c87
DN
14622009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
1463
1464 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
1465 conditional, it is always defined on AIX.
1466
666e158e
MB
14672009-06-23 Miles Bader <miles@gnu.org>
1468
1469 * window.c (Vrecenter_redisplay): New variable.
1470 (syms_of_window): Initialize it.
1471 (Qtty): New extern declaration.
1472 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
1473
c6da7cd2
JM
14742009-06-23 Jim Meyering <meyering@redhat.com>
1475
1ac9108a
SM
1476 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
1477 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 1478 pointer dereferences are guaranteed to be valid.
c6da7cd2 1479
678dca3d
KH
14802009-06-23 Kenichi Handa <handa@m17n.org>
1481
74d75424
KH
1482 * emacs.c (main): Call init_font ().
1483
1484 * font.h (Vfont_log): Extern it.
1485 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
1486
1487 * font.c (font_sort_entities, font_list_entities)
1488 (font_matching_entity, font_open_entity)
1489 (font_close_object): Change font_add_log to FONT_ADD_LOG.
1490 (Vfont_log): Delete static.
1491 (font_log_env_checked): Delete this variable.
1492 (font_add_log): Don't check font_log_env_checked.
1493 (font_deferred_log): Check Vfont_log.
1494 (init_font): New function.
1495
678dca3d
KH
1496 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
1497
1498 * w32font.c: Change font_add_log to FONT_ADD_LOG.
1499
1500 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
1501
1502 * xfont.c: Change font_add_log to FONT_ADD_LOG.
1503
1504 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
1505 (face_for_char): Don't call font_deferred_log here.
1506 (font_for_char): Likewise.
1507
8a668709
CY
15082009-06-22 Chong Yidong <cyd@stupidchicken.com>
1509
9a01ee33
CY
1510 * w32term.c (x_draw_glyph_string): Use the glyph string's width
1511 rather than its background_width for drawing the overline and
1512 underline (Bug#489).
1513
1514 * xterm.c (x_draw_glyph_string): Use the glyph string's width
1515 rather than its background_width for drawing the overline and
1516 underline (Bug#489).
ec7c9926
CY
1517 (xg_default_icon_file): New variable.
1518 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
1519 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 1520
8a668709
CY
1521 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
1522 (load_overlay_strings): Remove externs.
1523 (fast_find_position): Function deleted.
1524 (mouse_face_from_buffer_pos): New function, based on
1525 fast_find_position. Correctly handle before-strings,
1526 display-strings, and after-strings (Bug#1220).
1527 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
1528
4d4c02d8
CY
15292009-06-21 Chong Yidong <cyd@stupidchicken.com>
1530
1ac9108a 1531 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
1532 (move_it_in_display_line_to, move_it_in_display_line_to)
1533 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
1534
70243478
CY
15352009-06-21 Chong Yidong <cyd@stupidchicken.com>
1536
1537 * Branch for 23.1.
1538
13087e59
JR
15392009-06-21 Jason Rumney <jasonr@gnu.org>
1540
1541 * w32term.c (keyboard_codepage): New static variable.
1542 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
1543 (w32_read_socket) [WM_CHAR]: Use it to decode character
1544 input (bug#3237).
1545 (w32_initialize): Initialize it.
1546 (codepage_for_locale): New function.
1547
4735b74e
KR
15482009-06-20 Ken Raeburn <raeburn@raeburn.org>
1549
1550 * process.c (status_message): Pass Faset index argument as a lisp
1551 object, so as to work with USE_LISP_UNION_TYPE.
1552
0e727afa
YM
15532009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1554
1555 * coding.c (Ffind_coding_systems_region_internal):
1556 Cache checked characters.
1557
cf299835
KH
15582009-06-18 Kenichi Handa <handa@m17n.org>
1559
1ac9108a 1560 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 1561
90f20d94
AS
15622009-06-18 Andreas Schwab <aschwab@redhat.com>
1563
1564 * xdisp.c (redisplay_internal): Check that the frame is still
1565 live after redisplay of its windows.
1566 (redisplay_windows): Check that the window is still live.
1567
7f1faf1c
KH
15682009-06-17 Andreas Schwab <schwab@linux-m68k.org>
1569
1570 * coding.c (detect_coding_utf_16): Fix previous change.
1571
cc13543e
KH
15722009-06-16 Kenichi Handa <handa@m17n.org>
1573
1574 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
1575 UTF-16 by checking the dispersion of Eth and Oth bytes.
1576
977b85f4
AS
15772009-06-15 Andreas Schwab <schwab@linux-m68k.org>
1578
1579 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
1580
66bd43d1
KH
15812009-06-15 Kenichi Handa <handa@m17n.org>
1582
1583 * process.c (status_message): Fix previous change. Be sure to
1584 decode a localized string.
1585
cb5ca9c5
YM
15862009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1587
1588 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
1589 add comment explaining why.
1590
ec7709ba 15912009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 1592
ec7709ba 1593 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 1594
4b7f335c
AR
15952009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
1596
1597 * nsfont.m (ns_attribute_value): Remove.
1598 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
1599 (ns_has_attribute): Shrink the normal range.
1600 (ns_findfonts): Don't worry about requested spec in determining
1601 need for synthItal.
e41820ee 1602 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 1603
73b26103
SZ
16042009-06-14 Seiji Zenitani <zenitani@mac.com>
1605
1606 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
1607
5753e4da
KH
16082009-06-11 Kenichi Handa <handa@m17n.org>
1609
1610 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1611 overhang for the static composition case.
1612
3561b671
KH
16132009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1614
5753e4da
KH
1615 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1616 overhang for the automatic composition case.
1617
3561b671
KH
1618 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
1619 composition case.
1620
852bbd41
CY
16212009-06-10 Chong Yidong <cyd@stupidchicken.com>
1622
1623 * xdisp.c (get_next_display_element): When handling wrap-prefix
1624 and line-prefix, treat \n as a control character (bug#3502).
1625
9903d1e6
KH
16262009-06-10 Kenichi Handa <handa@m17n.org>
1627
1628 * font.c (font_parse_family_registry): Fix for one-char foundry.
1629 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
1630
0bcbaaaa
CY
16312009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
1632
1633 * process.c (status_message): Fix handling of multibyte signal
1634 string (Bug#3499).
1635
40aa3f13
JM
16362009-06-09 Jim Meyering <meyering@redhat.com>
1637
1f80c7e2
CY
1638 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
1639 color name is missing.
40aa3f13 1640
72d51285
KH
16412009-06-09 Kenichi Handa <handa@m17n.org>
1642
1643 * charset.c (Fmap_charset_chars): In docstring, state clearly that
1644 FROM-CODE and TO-CODE are codepoints of CHARSET.
1645
c1d04d84
AR
16462009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1647
1648 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
1649
16502009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1651
1652 Changes to support :script/:lang/:otf in NS font driver.
1653 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
1654 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
1655 indicate not part of font driver interface, and change callers.
1656 (ns_get_family): Remove pointless null check.
1657 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
1658 ns_spec_to_descriptor, ns_descriptor_to_entity.
1659 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
1660 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
1661 (ns_spec_to_descriptor, ns_descriptor_to_entity)
1662 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
1663 (ns_get_req_script, ns_accumulate_script_ranges)
1664 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
1665 New functions.
1666 (nsfont_list, nsfont_match): Use ns_findfonts.
1667 (nsfont_open): Use font descriptor instead of traits.
1668 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
1669 (dump_glyphstring): Rename to ns_dump_glyphstring.
1670
c7eb9816
AR
1671 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
1672
c1d04d84
AR
1673 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
1674
1675 * fontset.c (fontset_from_font): Remove NS-specific code.
1676
ec7709ba 16772009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
1678
1679 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
1680 nonactive windows.
1681
31fd7c5c 16822009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 1683
1ac9108a 1684 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 1685
68852c13 16862009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
1687
1688 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
1689
6756cd1d
CY
16902009-06-07 Chong Yidong <cyd@stupidchicken.com>
1691
1692 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
1693 account for the overflowing of newlines into the last glyph on the
1694 display line (Bug#3482).
1695
28bf482a
DR
16962009-06-05 David Reitter <david.reitter@gmail.com>
1697
ec7709ba
JB
1698 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
1699 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
1700 Fns_selection_exists_p, Fns_selection_owner_p.
1701
fdb55376
JR
17022009-06-03 Jason Rumney <jasonr@gnu.org>
1703
1704 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
1705 available. (Bug#3379)
1706
05129fbe
KH
17072009-05-29 Kenichi Handa <handa@m17n.org>
1708
1ac9108a
SM
1709 * coding.c (get_translation_table):
1710 Check Venable_character_translation.
05129fbe 1711
ec7709ba 17122009-05-26 David Reitter <david.reitter@gmail.com>
15891144 1713
ec7709ba
JB
1714 * nsterm.m (ns_raise_frame): Only raise frame if visible.
1715 (x_make_frame_visible): Move frame to front rather than calling
15891144 1716 ns_raise_frame().
ec7709ba 1717 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 1718 isn't key window.
ec7709ba 1719 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
1720 drawRect may be called by NSView even if the frame is hidden.
1721
ec7709ba
JB
1722 * nsfns.m (Fx_create_frame): Follow other ports in
1723 determining visibility; default to t. Ensure async_visible is set.
15891144 1724
21f73755
EZ
17252009-05-23 Eli Zaretskii <eliz@gnu.org>
1726
1727 * dired.c (Ffile_attributes): Doc fix.
1728
34001e41
CY
17292009-05-22 Chong Yidong <cyd@stupidchicken.com>
1730
1731 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
1732
46306a17
SM
17332009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
1734
1735 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
1736 and xfont_scratch_props.
1737 (syms_of_xfont): Do it here instead.
1738 (xfont_find_ccl_program): Delete, unused.
1739 (xfont_open): Delete unused var `i'.
1740
ef6e0694
KH
17412009-05-21 Kenichi Handa <handa@m17n.org>
1742
1743 * fontset.c (Qlatin): Don't make it static.
1744
46306a17
SM
1745 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
1746 New functions.
ef6e0694
KH
1747 (xfont_scripts_cache, xfont_scratch_props): New variables.
1748 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
1749 (xfont_list_pattern): Argument changed. Callers changed.
1750 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
1751 (xfont_list): Don't reject a font spec with :script property.
1752 (xfont_has_char): Fix setting of encoding.
1753 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
1754 xfont_scratch_props.
1755
17562009-05-19 Kenichi Handa <handa@m17n.org>
1757
46306a17 1758 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
1759 Callers changed.
1760
17612009-05-18 Kenichi Handa <handa@m17n.org>
1762
1763 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
1764
ac71ced7
SM
17652009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
1766
1767 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
1768 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
1769
1c6d1051
YM
17702009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1771
1772 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
1773 (x_delete_terminal): Dissociate resource database from display and
1774 then call XrmDestroyDatabase before closing display.
1775
9b9b779c
AR
17762009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1777
1778 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
1779 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
1780 whether selected frame is viable before raising it (based on patch
1781 by David Reitter), and improve commentary.
1782 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 1783
cccd42d5
KH
17842009-05-15 Kenichi Handa <handa@m17n.org>
1785
1786 * font.c (Ffont_spec): Check arguments.
1787
337fbd17
CY
17882009-05-14 Chong Yidong <cyd@stupidchicken.com>
1789
1790 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
1791 weight when testing attributes (Bug#3282).
1792
47a6002f
JD
17932009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1794
1795 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
1796 what we expect to get in the next ConfigureNotify event.
1797
9cb363db
YM
1798 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
1799 before Xft one (Bug#1696).
1800
b9126609
CY
18012009-05-07 David Reitter <david.reitter@gmail.com>
1802
1803 * nsfns.m (Fx_display_planes): Compute bitplanes using
1804 NSBitsPerPixelFromDepth (Bug#3207).
1805
27a69fd9
CY
18062009-05-10 Chong Yidong <cyd@stupidchicken.com>
1807
1808 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
1809
00f37552
TTN
18102009-05-10 Ulrich Mueller <ulm@gentoo.org>
1811
1812 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
1813
2d82a920
DR
18142009-05-07 David Reitter <david.reitter@gmail.com>
1815
ec7709ba
JB
1816 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
1817 Respect mouse face background.
2d82a920 1818
46b0d52d
DR
18192009-05-07 David Reitter <david.reitter@gmail.com>
1820
ec7709ba
JB
1821 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
1822 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
1823 in ns_update_begin and ns_update_end.
1824
ce1b23bb
SM
18252009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1826
5996e1b7
SM
1827 * nsfns.m (ns_get_screen): Rewrite.
1828 Don't presume selected-frame is of type `ns'.
1829
ba98e3a0
SM
1830 * font.c (font_update_drivers): Sanity fallback to avoid disabling
1831 all drivers.
1832
ce1b23bb
SM
1833 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
1834
bcda200f
YM
18352009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1836
1837 * keyboard.h (add_user_signal): Fix typo in extern.
1838
1839 * lisp.h (add_user_signal): Remove extern.
1840
1841 * unexelf.c (unexec): Consider a section to precede the .bss section
1842 if its addresses overlap that of .bss.
1843 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
1844 instead of dumping process.
1845
864660a2
SM
18462009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1847
1848 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
1849
50da4e56
SM
18502009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
1851
1852 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
1853
51520a1a
DN
18542009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1855
1856 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
1857 any statements.
1858
409ea3a1
AS
18592009-05-02 Andreas Schwab <schwab@linux-m68k.org>
1860
59c4c60f
AS
1861 * process.c (read_process_output): Make sure the current buffer is
1862 always restored.
1863
409ea3a1
AS
1864 * coding.c (record_conversion_result): Don't modify
1865 Vlast_code_conversion_error for successful result.
1866 (alloc_destination): Don't clobber conversion result. (Bug#1650)
1867
56f00ed2
KH
18682009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1869
1870 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 1871 (load_charset_map): Remove unnecessary code.
56f00ed2 1872
4491c9d2
DR
18732009-04-30 David Reitter <david.reitter@gmail.com>
1874
35f5b128 1875 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
1876 through f24.
1877
6970f632
CY
18782009-04-30 Chong Yidong <cyd@stupidchicken.com>
1879
1880 * xfaces.c (face_at_buffer_position): New arg base_face_id.
1881
1882 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
1883 face_at_buffer_position.
1884 (face_before_or_after_it_pos, get_next_display_element)
1885 (note_mouse_highlight): Update face_at_buffer_position call.
1886
1887 * term.c (term_mouse_highlight):
1888 * msdos.c (IT_note_mouse_highlight):
1889 * fontset.c (Finternal_char_font):
35f5b128 1890 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
1891
1892 * dispextern.h (face_at_buffer_position): Update prototype.
1893
0c616f63
KH
18942009-04-30 Kenichi Handa <handa@m17n.org>
1895
35f5b128 1896 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 1897
ad3aaf33
AS
18982009-04-29 Andreas Schwab <schwab@linux-m68k.org>
1899
1900 * callproc.c (Fcall_process): Fix GC protection. Make sure
1901 current buffer is always restored.
1902
c3c963a0
YM
19032009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1904
1905 * atimer.c (init_atimer): Also clear stopped_atimers.
1906
1907 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
1908
7e3386cb
YM
1909 * process.c (create_process): Clean up merger residues of
1910 2008-07-17 change.
1911
91f68422
CY
19122009-04-29 Ulrich Mueller <ulm@gentoo.org>
1913
1914 * lread.c (Vread_circle): New variable.
1915 (read1): Disable recursive read if Vread_circle is nil.
1916
24b34550
KH
19172009-04-29 Kenichi Handa <handa@m17n.org>
1918
1919 * fontset.h (set_default_ascii_font): Delete extern.
1920
1921 * fontset.c (set_default_ascii_font): Delete this unused function.
1922
1923 * frame.c (x_set_font): When ARG is a font-object, check if the
1924 font-object matches with the ASCII font-spec of the frame's
9c358bda 1925 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 1926
77bf07e1
AS
19272009-04-28 Andreas Schwab <schwab@linux-m68k.org>
1928
1929 * fns.c (Flocale_info): Protect vector from GC during decoding.
1930
1931 * process.c (Fstart_process): Protect argv strings from GC during
1932 encoding.
1933
2c55aacf
AS
19342009-04-27 Andreas Schwab <schwab@linux-m68k.org>
1935
1936 * sysdep.c: Include <ctype.h>.
1937
b892d3c9
DR
19382009-04-27 David Reitter <david.reitter@gmail.com>
1939
35f5b128 1940 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
1941 Remove commented-out code.
1942
9d0644c4
JB
19432009-04-26 Johan Bockgård <bojohan@gnu.org>
1944
1945 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1946
b7053016
JR
19472009-04-25 Jason Rumney <jasonr@gnu.org>
1948
1949 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
1950
4e8231f3
YM
19512009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1952
1953 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
1954 Swap bytes in short integer if fringe bitmap width > 8.
1955
493dcf2c
KH
19562009-04-23 Kenichi Handa <handa@m17n.org>
1957
1958 * xfaces.c (Fx_list_fonts): If a font size is specified in
1959 PATTERN, set it in returned scalable fonts.
1960
401e9e57
CY
19612009-04-22 Chong Yidong <cyd@stupidchicken.com>
1962
708e05dc
CY
1963 * keyboard.c (Fset_input_meta_mode): Doc fix.
1964
1965 * dispnew.c (Fsend_string_to_terminal): Doc fix.
1966
1ac9108a 1967 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
1968
1969 * coding.c (Fterminal_coding_system): Doc fix.
1970
1971 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
1972 (Fx_display_pixel_height, Fx_display_planes)
1973 (Fx_display_color_cells, Fx_server_max_request_size)
1974 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1975 (Fx_display_mm_height, Fx_display_mm_width)
1976 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
1977 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
1978 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
1979 (check_x_display_info): Handle terminal objects instead of
1980 terminal ids.
1981
401e9e57
CY
1982 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
1983 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
1984 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
1985 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 1986
df80c7f0
KH
19872009-04-21 Kenichi Handa <handa@m17n.org>
1988
5a8f12af 1989 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 1990 (font_score): Check AVGWIDTH too.
908567ef 1991
df80c7f0
KH
1992 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
1993 worst case.
1ac9108a
SM
1994 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
1995 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 1996
705af33f
JR
19972009-04-19 Jason Rumney <jasonr@gnu.org>
1998
1999 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 2000 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
2001
2002 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
2003 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
2004 get_phys_cursor_geometry.
2005
b71ac3dd 2006 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
2007 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
2008 using get_phys_cursor_geometry.
2009
2010 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
2011 correctly calculated.
2012
dc2933eb
JD
20132009-04-19 Jan Djärv <jan.h.d@swipnet.se>
2014
1ac9108a
SM
2015 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2016 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2017 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2018 is deprecated.
2019
973e7849
AS
20202009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2021
2022 * font.c (font_put_frame_data): Use xfree instead of free.
2023
314d66f4
JB
20242009-04-17 Juanma Barranquero <lekktu@gmail.com>
2025
2026 * w32font.c (Qja, Qko): Remove declarations.
2027 (syms_of_w32font): Don't DEFSYM them.
2028
cf702558
CY
20292009-04-17 Chong Yidong <cyd@stupidchicken.com>
2030
2031 * font.c (Qja, Qko): Move definitions here from ftfont.c.
2032
2033 * font.h (Qja, Qko): Extern them.
2034
2035 * ftfont.c (Qja, Qko): Remove declarations.
2036
2037 * xfont.c (Qja, Qko): Remove declarations.
2038
b50504f5
KH
20392009-04-17 Kenichi Handa <handa@m17n.org>
2040
bde25748
KH
2041 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
2042 string from a vector to handle Latin-1 characters correctly.
2043
b50504f5
KH
2044 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
2045 entity even if the cache hits.
2046
f4646fff
AS
20472009-04-16 Andreas Schwab <schwab@linux-m68k.org>
2048
2049 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 2050 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 2051
e7deaab0
AS
2052 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
2053 * lisp.h: Adjust prototypes.
2054
0a0e7d49
CY
20552009-04-16 Chong Yidong <cyd@stupidchicken.com>
2056
2057 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
2058 change (Bug#3003).
2059
3c908a57
KH
20602009-04-16 Kenichi Handa <handa@m17n.org>
2061
1ac9108a 2062 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
2063
2064 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
2065 adstyle.
2066
2067 * ftfont.c (Qja, Qko): Don't make them static.
2068 (enum ftfont_cache_for): New enum.
2069 (fc_charset_table): Undo the previous change.
2070 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
2071 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
2072 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
2073 non-scarable font, try to get AVERAGE_WIDTH.
2074 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
2075 Change ft_face_cache from a list of a hash-table. Don't check
2076 `ja' and `ko' adstyle here.
2077 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
2078 FTFONT_CACHE_FOR_CHARET.
2079 (ftfont_get_charset): Undo the previous change.
1ac9108a 2080 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
2081 (ftfont_close): Likewise.
2082 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
2083
2084 * font.c (font_sort_entites): Change the meaning of the arg
2085 BEST-ONLY. Don't optimize for VEC of lenght 1.
2086 (font_select_entity): Just return the value of font_sort_entites.
2087
2088 * xfaces.c (merge_face_vectors): Reflect font properties in
2089 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
2090 font_clear_prop if a face attribute doesn't change.
2091
3c908a57
KH
2092 * charset.h (charset_ksc5601): Extern it.
2093
2094 * charset.c (charset_ksc5601): New variable.
2095 (Fdefine_charset_internal): Set charset_ksc5601.
2096 (init_charset_once): Initialize charset_ksc5601 to -1.
2097
d65859c3
DN
20982009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2099
2100 * fileio.c (history_delete_duplicates): Remove unused declaration.
2101
2102 * callint.c (history_delete_duplicates): New declaration.
2103 (Fcall_interactively): Remove command history duplicates when
2104 history_delete_duplicates is true.
2105
3ba010e5
EZ
21062009-04-14 Eli Zaretskii <eliz@gnu.org>
2107
2108 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
2109
06f19b91
KH
21102009-04-14 Kenichi Handa <handa@m17n.org>
2111
2112 * font.c (Ffont_info): Fix docstring. Fix the second element of
2113 the returned value (bug#2949).
2114
2cce8bfc
CY
21152009-04-14 Chong Yidong <cyd@stupidchicken.com>
2116
2117 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
2118
d156542d
KH
21192009-04-14 Kenichi Handa <handa@m17n.org>
2120
2121 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
2122 encoding charset is ascii_compatible.
2123
2124 * charset.c (Fdefine_charset_internal): Make charset
2125 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
2126 code_offset is 0, and covers all ASCII characters.
2127
86fa089e
SM
21282009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2129
2130 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
2131 (ns_string_to_pasteboard_internal):
2132 * nsmenu.m (process_dialog):
2133 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
2134 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
2135 * lisp.h (Fx_load_color_file): Declare.
2136
a8a3728b
KH
21372009-04-13 Kenichi Handa <handa@m17n.org>
2138
1ac9108a 2139 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
2140 (font_select_entity): Suppress the code to optimize for the same
2141 kind of fonts.
2142 (font_load_for_lface): Get a font that supports at least ASCII
2143 characters.
2144
2145 * ftfont.c (Qja, Qko): New variables.
2146 (fc_charset_table): Delete uniquifier data for iso8859-1.
2147 (ftfont_get_latin1_charset): New function.
2148 (get_adstyle_property): New function.
2149 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
2150 bitmap fonts.
2151 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
2152 Delete iso-8859-1 range from the charset of fonts whose adstyle is
2153 `ko' or `ja'.
2154 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 2155 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
2156 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
2157 property.
2158 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
2159 (syms_of_ftfont): DEFSYM Qja and Qko.
2160
483670b5
KH
21612009-04-09 Kenichi Handa <handa@m17n.org>
2162
12b55765
KH
2163 * charset.c (map_charset_chars): For a charset of `superset'
2164 method, fix calculation of code range.
2165
483670b5
KH
2166 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
2167 from the list of extra properties.
2168 (font_clear_prop): Be sure to delete `:name' font property.
2169
57d3b93b
KH
21702009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2171
b4b2c2ca
YM
2172 * dispnew.c (redraw_overlapping_rows): Fix detection of
2173 overlapping for topmost and bottommost rows.
2174
1ac9108a 2175 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 2176
472c3609
JR
21772009-04-06 Jason Rumney <jasonr@gnu.org>
2178
2179 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
2180
ab193662
KH
21812009-04-06 Kenichi Handa <handa@m17n.org>
2182
2183 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
2184
2185 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
2186
0c26f026
KH
21872009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2188
2189 * ftfont.c (ftfont_open): Fix checking of the return value of
2190 FT_Load_Char. Fix setting font->underline_thickness.
2191
e173bbce
CY
21922009-04-04 Chong Yidong <cyd@stupidchicken.com>
2193
2194 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
2195 (Fterminal_parameters, Fterminal_parameter)
2196 (Fset_terminal_parameter): In doc string, refer to terminal
2197 objects rather than terminal ids.
2198
693a2698
EZ
21992009-04-04 Eli Zaretskii <eliz@gnu.org>
2200
2201 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
2202 ret_lim_data. (Bug#2867)
2203
d5221487
CY
22042009-04-03 Chong Yidong <cyd@stupidchicken.com>
2205
2206 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
2207 so they don't get wider than the window, matching 2006-01-23
2208 change to the partner function in xdisp.c (Bug#2800).
2209
223509a3
KH
22102009-04-03 Kenichi Handa <handa@m17n.org>
2211
2212 * print.c (print_object): Make each lowest sub_char_table start a
2213 new line (Bug#2866).
2214
74fcd0b1
KH
22152009-04-02 Kenichi Handa <handa@m17n.org>
2216
2217 * fontset.c (fontset_font): Record no-font when a fontset
2218 explicitly tells not to try another font-specs.
2219
c542407d
SM
22202009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
2221
2222 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
2223
e3869731
KH
22242009-03-30 Kenichi Handa <handa@m17n.org>
2225
d8d2f142
KH
2226 * fontset.c (fontset_from_font): Specify only registry in a
2227 font-spec for all characters supported by that registry.
2228
e3869731
KH
2229 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
2230 even if HAVE_M17N_FLT is not defined.
2231
5da5f805
CY
22322009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
2233
2234 * ftfont.c: Conditionalize prototyping and use of
2235 ftfont_variation_glyphs.
2236
ab226c50
SM
22372009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2238
9628fed7
SM
2239 * frame.c (delete_frame): Work around compiler bug.
2240
2241 * editfns.c (general_insert_function): Adjust to insdel.c changes.
2242 * insdel.c (prepare_to_modify_buffer, signal_before_change):
2243 Some more EMACS_INT.
2244 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
2245
2246 * xdisp.c (dump_glyph): Fix typo.
2247
ae19ba7c
SM
2248 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
2249 (adjust_markers_gap_motion, adjust_markers_for_delete)
2250 (adjust_markers_for_insert, adjust_point)
2251 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
2252 (make_gap, copy_text, count_size_as_multibyte, insert)
2253 (insert_and_inherit, insert_before_markers)
2254 (insert_before_markers_and_inherit, insert_1)
2255 (count_combining_before, count_combining_after, insert_1_both)
2256 (insert_from_string, insert_from_string_before_markers)
2257 (insert_from_string_1, insert_from_gap, insert_from_buffer)
2258 (insert_from_buffer_1, adjust_after_replace)
2259 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
2260 (replace_range_2, del_range, del_range_1, del_range_byte)
2261 (del_range_both, del_range_2, modify_region)
2262 (prepare_to_modify_buffer, signal_before_change)
2263 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
2264 for buffer positions and sizes.
2265 * lisp.h: Adjust prototypes accordingly.
2266
2267 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
2268 (non_regular_inserted, non_regular_nbytes, read_non_regular)
2269 (Finsert_file_contents): Use EMACS_INT for buffer positions.
2270
ab226c50
SM
2271 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
2272
46dfb8fb
JD
22732009-03-27 Jan Djärv <jan.h.d@swipnet.se>
2274
2275 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
2276 lines and columns so we keep the same pixel height and width.
2277
2278 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
2279 the property _NET_WM_STATE has changed.
46dfb8fb
JD
2280 (x_handle_net_wm_state): New function to update frame parameter
2281 fullscreen.
2282 (x_term_init): Initialize atoms for _NET_WM_STATE.
2283
2284 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
2285
d347e494
SM
22862009-03-27 Kevin Ryde <user42@zip.com.au>
2287
2288 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
2289 Gpm_GetEvent as an error that justifies closing the filedescriptor.
2290 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
2291 (Fgpm_mouse_stop): Pass that new parameter.
2292 * termhooks.h (close_gpm): Adjust prototype.
2293
84db11d6
SM
22942009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
2295
c95a5008
SM
2296 * lisp.h (Fx_focus_frame): Declare.
2297
84db11d6
SM
2298 * callint.c (Fcall_interactively): For '^' just delegate the work to
2299 handle-shift-selection.
2300 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
2301
0a1958d6
CY
23022009-03-24 Chong Yidong <cyd@stupidchicken.com>
2303
0bfdff23
CY
2304 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
2305
0a1958d6
CY
2306 * data.c (Qinteractive_form): New variable.
2307 (Finteractive_form): Use it.
2308
2309 * eval.c (Fcommandp): Use Qinteractive_form.
2310
58aec0d6
JR
23112009-03-24 Jason Rumney <jasonr@gnu.org>
2312
2313 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
2314 Calculate total size precisely. Decode environment variables
2315 before substituting. (Bug#38)
2316
553dd618
KH
23172009-03-24 Kenichi Handa <handa@m17n.org>
2318
2319 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 2320 encoding (Bug#2722).
553dd618 2321
c39ea606
JD
23222009-03-23 Jan Djärv <jan.h.d@swipnet.se>
2323
2324 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
2325 that gdpy is set.
2326
bc9b2b5e
AM
23272009-03-22 Alan Mackenzie <acm@muc.de>
2328
2329 * callint.c (Finteractive): Clarify the doc string - even
2330 promptless elements need \n separators.
2331
9f995a76
JR
23322009-03-22 Jason Rumney <jasonr@gnu.org>
2333
2334 * w32term.c (syms_of_w32term): Doc fix for
2335 x-use-underline-position-properties.
2336
22749e9a
EZ
23372009-03-21 Eli Zaretskii <eliz@gnu.org>
2338
2339 * w32.c (getpwuid): Change argument type to unsigned.
2340 (struct w32_id): Change type of `rid' member to unsigned.
2341 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
2342 argument ID to unsigned. All callers changed.
2343 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
2344
e00553bf
EZ
23452009-03-20 Eli Zaretskii <eliz@gnu.org>
2346
2347 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
2348 negative, produce a float value.
2349
2350 * dired.c (make_uid, make_gid): New functions.
2351 (Ffile_attributes): Use them to avoid negative UID and GID.
2352
f761d6b6
JB
23532009-03-20 Juanma Barranquero <lekktu@gmail.com>
2354
2355 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
2356 (syms_of_keyboard) <command-hook-internal, input-method-function>:
2357 Fix typos in docstrings.
2358
d507f8d7
KH
23592009-03-19 Kenichi Handa <handa@m17n.org>
2360
2361 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
2362 changed, use font_load_for_lface to get a new font object.
2363 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
2364
2365 * frame.c (x_set_font): Handle the case that ARG is a cons.
2366
c68845e0
GM
23672009-03-19 Glenn Morris <rgm@gnu.org>
2368
2369 * fileio.c (Fsubstitute_in_file_name): Doc fix.
2370
bfa49dd1
CY
23712009-03-19 Chong Yidong <cyd@stupidchicken.com>
2372
2373 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
2374
8458d4c1
KH
23752009-03-19 Kenichi Handa <handa@m17n.org>
2376
2377 * charset.c (load_charset_map_from_file): When a mapfile can't be
2378 loaded, signal an error.
2379
78e7d1fe
EZ
23802009-03-18 Eli Zaretskii <eliz@gnu.org>
2381
2382 * dired.c (Ffile_attributes): Make sure UID and GID are always
2383 positive, even if the value is too large for a positive EMACS_INT.
2384 Doc fix.
2385
2386 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
2387
5da9fdfa
YM
23882009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2389
2390 * xmenu.c (xdialog_show): Move Fredisplay call ...
2391 (Fx_popup_dialog): ... here.
2392
7519c40d
SM
23932009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
2394
2395 * dired.c (file_name_completion): Disable the first optimization just
2396 installed, since it is not implemented correctly.
2397
2cd298e2
SM
23982009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2399
2400 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 2401 only if the entry can affect bestmatch.
2cd298e2
SM
2402 Stop the search early, as Ftry_completion already does.
2403
48d37adf
CY
24042009-03-17 Chong Yidong <cyd@stupidchicken.com>
2405
e10c9c93 2406 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 2407
9286b16a
CY
24082009-03-15 Chong Yidong <cyd@stupidchicken.com>
2409
2410 * keyboard.c (parse_menu_item): Don't display remappings as menu
2411 equivalent bindings (Bug#788).
2412
f7b146dc
JR
24132009-03-15 Jason Rumney <jasonr@gnu.org>
2414
2415 * w32term.h (WM_EMACS_PAINT): New message.
2416 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
2417 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
2418 before passing to lisp thread. (Bug#950)
2419
f761d6b6 24202009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 2421
d93f9575
CY
2422 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
2423 variable as it was never reset.
2424 (ns_term_init): Remove initialization of Lisp-settable defaults
2425 and ns_expand_space.
2426 (-setPanelFromDefaultValues): Remove ns_expand_space.
2427 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
2428 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
2429 i.e. no additional spacing, similar to Carbon port.
2430
d93f9575
CY
2431 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
2432 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 2433
305018ec
JD
24342009-03-14 Jan Djärv <jan.h.d@swipnet.se>
2435
2436 * sound.c (alsa_configure): Remove call to deprecated
2437 snd_pcm_sw_params_set_xfer_align.
2438
f761d6b6 24392009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
2440
2441 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
2442 after clicking in a detached tool bar.
2443 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
2444
46e722a9
SM
24452009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
2446
348db3dd
SM
2447 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
2448 int/Lisp_Object mixup).
46e722a9 2449
a3d16f39
KH
24502009-03-13 Kenichi Handa <handa@m17n.org>
2451
2452 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 2453 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
2454 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
2455 (set_fontset_font): Change ARG to a vector. Handle range_list in
2456 ARG correctly.
2457 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 2458 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
2459 the above change.
2460 (fontset_from_font): Fix previous change.
fe24f56a 2461 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
2462 entry. If FONTSET is the default fontset, don't set the extra
2463 slot of the returning char-table.
2464
b066e6b6
JB
24652009-03-12 Juanma Barranquero <lekktu@gmail.com>
2466
2467 * nsfns.m (Fx_close_connection): Doc fix.
2468 (Fns_do_applescript): Reflow docstring.
2469 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
2470 (Fx_display_pixel_width, Fx_display_pixel_height)
2471 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
2472 Fix typos in docstrings.
2473 (Fns_set_alpha): Fix typos in error messages.
2474
d472514e 24752009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 2476
d472514e 2477 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
2478 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
2479 were used for such events.
2480
d472514e
JB
2481 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
2482 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 2483
d472514e 2484 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
2485 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
2486
fb930676
KH
24872009-03-11 Kenichi Handa <handa@m17n.org>
2488
ff85581a
KH
2489 * font.h (font_open_by_spec): Extern it.
2490
c50b7e98
KH
2491 * font.c (font_open_by_spec): New function.
2492 (font_open_by_name): Use font_open_by_spec.
2493
fb930676
KH
2494 * frame.c (x_set_font): When ARG is a font-object, don't alter the
2495 fontset of the frame.
2496
2497 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
2498 modify the default font of frames that use this fontset.
2499 (num_auto_fontsets): New variable.
2500 (fontset_from_font): Use num_auto_fontsets to decide a fontset
2501 name. Be sure to set FONTSET_ASCII to the correct font name.
2502 (update_auto_fontset_alist): New function.
2503
df4e8455
JB
25042009-03-11 Juanma Barranquero <lekktu@gmail.com>
2505
2506 * makefile.w32-in: Update dependencies.
2507
0a375797
AR
25082009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2509
2510 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
2511
61313fa3
SM
25122009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2513
2514 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
2515
b55103fb
CY
25162009-03-10 Chong Yidong <cyd@stupidchicken.com>
2517
2518 * lread.c (Feval_buffer): Doc fix.
2519
dde2559c
KH
25202009-03-09 Kenichi Handa <handa@m17n.org>
2521
2522 * charset.c (Qfile_name_handler_alist): Extern it.
2523 (load_charset_map_from_file): Temporarily bind
2524 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
2525
df4e8455 25262009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 2527
47f588bb
GM
2528 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
2529 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 2530
4ddf94bd
AR
25312009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2532
4c9bdfc2
AR
2533 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
2534 (x_set_window_size): Change back to calculated method of setting
2535 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
2536 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
2537 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
2538
fe41ae9e
AR
2539 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
2540
4c9bdfc2
AR
2541 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
2542 accelerator in parens under GNUstep.
2543
825d0875
KH
25442009-03-06 Kenichi Handa <handa@m17n.org>
2545
2546 These changes are to detect incorrect composition sequence without
f3b3be74 2547 looking ahead the source. (Bug#2370)
825d0875
KH
2548
2549 * coding.h: Include "composite.h".
2550 (enum compisition_state): New enum.
2551 (struct compisition_status): New struct.
2552 (struct iso_2022_spec): New member cmp_status.
2553 (struct emacs_mule_spec): New struct.
2554 (struct coding_system): New members ctext_extended_segment_len and
2555 embedded_utf_8. Change the union member
2556 spec.emacs_mule_full_support to spec.emacs_mule.
2557
2558 * coding.c (CODING_ISO_CMP_STATUS): New macro.
2559 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 2560 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
2561 (ADD_COMPOSITION_DATA): New arg nbytes.
2562 (emacs_mule_char): New arg cmp_status.
2563 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
2564 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
2565 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
2566 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
2567 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
2568 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
2569 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
2570 (EMACS_MULE_COMPOSITION_END): New macro.
2571 (emacs_mule_finish_composition): New function.
2572 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
2573 (decode_coding_emacs_mule): Avoid long looking ahead while
2574 handling composition.
2575 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
2576 (ENCODE_COMPOSITION_RULE): New macro.
2577 (finish_composition): New function.
2578 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
2579 (DECODE_COMPOSITION_START): New implementation.
2580 (DECODE_COMPOSITION_END): Likewise.
2581 (STORE_COMPOSITION_RULE): New macro.
2582 (decode_coding_iso_2022): Avoid long looking ahead while handling
2583 composition, CTEXT extended segment, and embedded UTF-8.
2584 (setup_coding_system): For a coding of type iso-2022, reset
2585 CODING_ISO_EXTSEGMENT_LEN (coding) and
2586 CODING_ISO_EMBEDDED_UTF_8 (coding).
2587 (get_translation): Delete arguments last_block, from_nchars,
2588 to_nchars. Callers changed.
2589 (produce_chars): Don't modify charbuf. Adjusted for the change of
2590 get_translation.
98a326f7 2591 (produce_composition): Adjust for the new annotation sequence.
825d0875 2592 (handle_composition_annotation): Likewise.
98a326f7 2593 (consume_chars): Adjust for the change of get_translation.
825d0875 2594
ccbc4452
AR
25952009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
2596
4ddf94bd 2597 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 2598
988a7ddb
KH
25992009-03-05 Kenichi Handa <handa@m17n.org>
2600
2601 * font.c (font_select_entity): New function.
2602 (font_find_for_lface): Use font_select_entity to select a font.
2603
2604 * fontset.c (fontset_find_font): If a font found without
a8a3728b 2605 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
2606 font with C restriction.
2607
98a326f7 26082009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 2609
be1bce46 2610 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 2611
10ea2b82
JR
26122009-03-04 Jason Rumney <jasonr@gnu.org>
2613
2c93b248 2614 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 2615 characters that have already been read. (Bug#2569)
2c93b248 2616
10ea2b82
JR
2617 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
2618 Log an error message if check_image_size failed.
2619 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 2620 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 2621
71a0c011
EZ
26222009-03-02 Eli Zaretskii <eliz@gnu.org>
2623
2624 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
2625 when decoding process output.
2626
2f63bba8
RS
26272009-03-01 Richard M Stallman <rms@gnu.org>
2628
2629 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
2630
2631 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
2632
0a9564cb
EZ
26332009-02-28 Eli Zaretskii <eliz@gnu.org>
2634
2635 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
2636 (decode_coding_emacs_mule, decode_coding_iso_2022)
2637 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2638 (decode_coding_raw_text, decode_coding_charset)
2639 (setup_coding_system, decode_eol, decode_coding, consume_chars):
2640 Honor inhibit-eol-conversion. (Bug #2186)
2641
449148b3
JR
26422009-02-28 Jason Rumney <jasonr@gnu.org>
2643
2644 * coding.c (detect_coding_charset): If not checking latin extra,
2645 fail on characters between 0x80 and 0xA0. (Bug#2354)
2646
a4aee864
EZ
26472009-02-28 Eli Zaretskii <eliz@gnu.org>
2648
2649 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 2650 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 2651
d88bee5a
GM
26522009-02-27 Glenn Morris <rgm@gnu.org>
2653
2654 * callint.c (Finteractive): Doc fix.
2655
a808f22d
KH
26562009-02-27 Kenichi Handa <handa@m17n.org>
2657
2658 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
2659
caf8d60c
CY
26602009-02-27 Chong Yidong <cyd@stupidchicken.com>
2661
2662 * font.c (font_style_to_value): Set value for unknown symbols to
2663 100 instead of 255.
b61137ea
CY
2664 (weight_table, slant_table, width_table): Treat "unspecified" as
2665 the default value.
caf8d60c 2666
1a0de25c
JB
26672009-02-26 Juanma Barranquero <lekktu@gmail.com>
2668
2669 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
2670
8fc45744
JB
26712009-02-25 Juanma Barranquero <lekktu@gmail.com>
2672
107bd7d1
JB
2673 * lread.c (Fload): Stop checking Vloads_in_progress and signal
2674 error as soon as a recursive load is detected.
8fc45744 2675
f097e223
AR
26762009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2677
2678 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
2679 before caching.
2680
8810a12f
KH
26812009-02-24 Kenichi Handa <handa@m17n.org>
2682
2683 * fontset.c (fontset_find_font): Fix the condition for checking
2684 unavailable font.
2685
2c7d1565
GM
26862009-02-24 Glenn Morris <rgm@gnu.org>
2687
2688 * xfaces.c (Finternal_set_font_selection_order): Remove leading
2689 whitespace that confuses documentation.
2690
a20878b6
MB
26912009-02-23 Miles Bader <miles@gnu.org>
2692
2693 * process.c (Flist_system_processes, Fprocess_attributes)
2694 (syms_of_process): Rename `system-process-attributes' to
2695 `process-attributes'.
2696
b3b58c01
AS
26972009-02-22 Andreas Schwab <schwab@linux-m68k.org>
2698
1b3b981b
AS
2699 * coding.h (struct coding_system): Make safe_charsets a pointer to
2700 unsigned char.
2701 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
2702 being 255.
2703 (SAFE_CHARSET_P): Likewise.
2704 (setup_iso_safe_charsets): Properly setup safe_charsets.
2705 (Fdefine_coding_system_internal): Likewise.
2706 (setup_coding_system): Likewise. Remove unneeded casts.
2707 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
2708 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
2709 unneeded casts.
2710
b3b58c01
AS
2711 * insdel.c (del_range_2): Don't modify gap contents when called
2712 from decode_coding_object. (Bug#1809)
2713
0b6f228c
CY
27142009-02-21 Chong Yidong <cyd@stupidchicken.com>
2715
2716 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
2717 Qfont_object.
2718 (Ftype_of): Recognize font objects.
2719
2720 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
2721
2722 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
2723 moved to data.c.
2724
52f8870b
AR
27252009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2726
2727 * nsterm.m (x_make_frame_invisible): Unset async_visible,
2728 async_iconified. Based on a patch by Christian Lynbech
2729 <christian.lynbech@tieto.com>.
2730 (EmacsView-windowDidMiniaturize:): Unset async_visible.
2731
7087d5e9
GM
27322009-02-20 Glenn Morris <rgm@gnu.org>
2733
2734 * syntax.c (Fskip_chars_forward): Fix doc typo.
2735
41d2ceef
CY
27362009-02-20 Chong Yidong <cyd@stupidchicken.com>
2737
2738 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
2739
1a3b7ca6
CY
27402009-02-19 Chong Yidong <cyd@stupidchicken.com>
2741
2742 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
2743
73cce38d
KH
27442009-02-19 Kenichi Handa <handa@m17n.org>
2745
2746 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 2747 Don't overflow coding->carryover. (Bug#2370)
73cce38d 2748
a51092ee
DN
27492009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
2750
2751 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
2752
c423ecca
KH
27532009-02-18 Kenichi Handa <handa@m17n.org>
2754
2755 * font.c (font_check_otf_features): Fix handling of `nil' element.
2756 (Ffont_spec): Describe :lang and :otf in the docstring.
2757
4c1958f4
AS
27582009-02-16 Andreas Schwab <schwab@suse.de>
2759
2760 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
2761 string.
2762
5704f39a
KH
27632009-02-16 Kenichi Handa <handa@m17n.org>
2764
2765 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 2766 (Bug#1723)
5704f39a 2767
8f0085aa
CY
27682009-02-14 Chong Yidong <cyd@stupidchicken.com>
2769
a057d86a 2770 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
2771
2772 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
2773 (handle_line_prefix): Suppress wrapping of wrap prefixes.
2774
aff01dd9
EZ
27752009-02-14 Eli Zaretskii <eliz@gnu.org>
2776
2777 * msdos.c (MAX_SCREEN_BUF): New macro.
2778 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
2779 Encode the entire run of glyphs sharing the same face, instead of
2780 doing that one glyph at a time (fixes a bug with displaying
2781 double-size characters).
2782
ba301db3
AR
27832009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
2784
2785 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
2786
2787 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
2788 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 2789 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
2790
2791 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 2792 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 2793
51d861de
SM
27942009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
2795
2796 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
2797 invisible areas.
2798
7fed8996
JR
27992009-02-12 Jason Rumney <jasonr@gnu.org>
2800
631ea4fb
JR
2801 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
2802 (add_font_entity_to_list): Call check_face_name even when family
2803 is unspecified.
2804
cb4a3e42
JR
2805 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2806 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 2807 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 2808
7fed8996 2809 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 2810 raster fonts. (Bug#2219)
7fed8996 2811
895416e3
KH
28122009-02-12 Kenichi Handa <handa@m17n.org>
2813
2814 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
2815 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
2816 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 2817 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2818 (find_automatic_composition): While looking forward and backward,
2819 check static composition. Fix where to stop looking forward.
2820 (composition_adjust_point): Fix checking of static composition.
2821 (Fcomposition_get_gstring): Pay attention to
1dacf998 2822 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2823
2824 * lisp.h (fast_looking_at): Extern it.
2825
2826 * search.c (fast_looking_at): New function.
2827
51d861de 2828 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
2829 <struct glyph>.u.cmp.to.
2830 (append_composite_glyph): Likewise.
2831
51d861de 2832 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
2833 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
2834 composition.
51d861de 2835 (append_composite_glyph): Adjust for the change of
895416e3
KH
2836 <strcut glyph>.u.cmp.to.
2837
8510724d
JB
28382009-02-11 Juanma Barranquero <lekktu@gmail.com>
2839
2840 * casetab.c (init_casetab_once):
2841 * coding.c (ALLOC_CONVERSION_WORK_AREA):
2842 * font.c (font_update_lface):
2843 * fontset.c (Fnew_fontset):
2844 * ftfont.c (ftfont_drive_otf):
2845 * xfont.c (xfont_open):
2846 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
2847
294fa707
SM
28482009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
2849
2850 * fileio.c (Fwrite_region): !NILP -> CONSP.
2851
b5bfebec
AS
28522009-02-10 Andreas Schwab <schwab@suse.de>
2853
2854 * process.c (send_process): Properly relocate pointer into data
adab88bd 2855 when using encoded data. (Bug#2272)
b5bfebec 2856
cb84a2be
KH
28572009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
2858
2859 * coding.c (detect_coding_charset): Fix previous change.
2860
89e09428
JR
28612009-02-08 Jason Rumney <jasonr@gnu.org>
2862
2863 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 2864 disappeared while hourglass was displayed. (Bug #2193)
89e09428 2865
4470a277
AS
28662009-02-07 Andreas Schwab <schwab@suse.de>
2867
2868 * unexelf.c (unexec): Fix error message.
2869
3175b12a
AR
28702009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
2871
2872 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 2873 when modal window is active. (Bug #2152)
3175b12a
AR
2874 (applicationShouldTerminate:): Remove now-unneeded while loop
2875 around NSRunAlertPanel.
2876
2877 * nsmenu.m (popupSession): New file-global variable.
2878 (pop_down_menu): End the popupSession before closing dialog.
2879 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
2880 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
2881 don't query NSApp for events (just sleep instead).
2882
8434d0b8
EZ
28832009-02-07 Eli Zaretskii <eliz@gnu.org>
2884
51d861de
SM
2885 * coding.c (syms_of_coding) <translation-table-for-input>:
2886 Modify doc string to discourage use for character code unification.
8434d0b8 2887
aa82edfd
CY
28882009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2889
2890 * atimer.c (run_timers): Update pending_atimers.
2891
2d283c7c
CY
28922009-02-06 Chong Yidong <cyd@stupidchicken.com>
2893
eb306cab
CY
2894 * image.c (svg_load_image): Fix last change.
2895
2d283c7c
CY
2896 * xfns.c (Fx_create_frame): Signal an error if no font is
2897 found (Bug#2147).
2898
4d8e170e
JB
28992009-02-05 Juanma Barranquero <lekktu@gmail.com>
2900
2901 * character.c (syms_of_character) <script-representative-chars>:
2902 Fix typo in docstring.
2903
c96169a0
AR
29042009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2905
2906 * nsmenu.m (pop_down_menu): New function.
2907 (ns_popup_dialog): Call it on unwind.
2908 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
2909 call timer_check() (Bug#2154).
2910 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
2911 handling_signal is set.
2912 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
2913
31fd7c5c 2914 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
2915
2916 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
2917
2918 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
2919
51d861de
SM
2920 * keyboard.c (poll_for_input_1, handle_async_input):
2921 Set handling_signal under HAVE_NS.
c96169a0 2922
aacd8ba1
GM
29232009-02-04 Glenn Morris <rgm@gnu.org>
2924
2925 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
2926
4cb75c4b
KH
29272009-02-04 Kenichi Handa <handa@m17n.org>
2928
2929 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
2930
2931 * charset.c (Fchar_charset): New optional arg restriction.
2932
2933 * coding.h (coding_system_charset_list): Extern it.
2934
2935 * coding.c (coding_system_charset_list): New function.
2936
2937 * composite.c: Include coding.h and termhooks.h.
2938 (composition_gstring_p): Fix for the terminal case.
2939 (composition_gstring_width): Likewise.
2940 (fill_gstring_body): Likewise.
2941 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
2942 the frame.
2943 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
2944 is within a composition.
867d4bb3 2945 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
2946
2947 * term.c (encode_terminal_code): Fix handling of composition.
2948 (produce_composite_glyph): For static composition, get pixel_width
2949 from struct composition.
2950
826ba17e
AS
29512009-02-02 Andreas Schwab <schwab@suse.de>
2952
2953 * unexelf.c (unexec): Handle unaligned bss offset.
2954
8ad093db
AR
29552009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2956
2957 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
2958 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 2959
8ad093db
AR
2960 * keyboard.c (handle_interrupt): Don't call
2961 quit_throw_to_read_char() under NS.
d0a76a6e 2962
8ad093db
AR
2963 * blockinput.h: Remove NS-specific code.
2964
4d18a7a2
DN
29652009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
2966
db878925
DN
2967 * dispnew.c (window_change_signal): Don't try to get the size of a
2968 suspended tty frame.
2969 * term.c (Fresume_tty): Resize if the size has changed while the
2970 tty was suspended.
2971
4d18a7a2
DN
2972 * alloc.c (mark_stack): Properly conditionalize previous change.
2973
8984df7c
JB
29742009-01-30 Juanma Barranquero <lekktu@gmail.com>
2975
2976 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
2977 * w32term.c (w32_read_socket) [SYNC_INPUT]:
2978 Remove; this code is not used on Windows.
2979
75f4f1ac
EZ
29802009-01-30 Eli Zaretskii <eliz@gnu.org>
2981
2982 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
2983 EOLs that also has stray ^M characters.
2984
07a1e794
JB
29852009-01-30 Juanma Barranquero <lekktu@gmail.com>
2986
2987 * atimer.c (run_timers, alarm_signal_handler):
2988 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
2989 * w32inevt.c (w32_console_read_socket):
2990 * w32term.c (w32_read_socket):
2991 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
2992
a8b11cc9
CY
29932009-01-30 Chong Yidong <cyd@stupidchicken.com>
2994
2995 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
2996 Initialize it as a relative filename pattern.
2997 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
2998 (Fcall_process_region): Simplify temp file creation using
2999 temporary-file-directory.
3000
c279587b
EZ
30012009-01-29 Eli Zaretskii <eliz@gnu.org>
3002
3003 * msdos.c: Rename pending_signals to msdos_pending_signals.
3004 (sig_suspender, sigprocmask): Adjust.
3005
a8fe3242
CY
30062009-01-29 Chong Yidong <cyd@stupidchicken.com>
3007
3008 * keyboard.c (pending_signals): New var.
3009 (poll_for_input, input_available_signal, init_keyboard): Set it.
3010 (process_pending_signals): New function.
3011
3012 * lisp.h (QUIT): Check pending_signals instead of
3013 interrupt_input_pending. Use process_pending_signals.
3014
51d861de 3015 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3016
51d861de 3017 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3018
3019 * sysdep.c (emacs_write): Use process_pending_signals.
3020
3021 * xterm.c (XTread_socket): Update pending_signals.
3022
3023 * w32term.c (w32_read_socket): Update pending_signals.
3024
3025 * w32inevt.c (w32_console_read_socket): Update pending_signals.
3026
6570a1c4
KH
30272009-01-29 Kenichi Handa <handa@m17n.org>
3028
3029 * xftfont.c (xftfont_has_char): New function.
3030 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
3031
d72a4afa
AR
30322009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3033
3034 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
3035 under GNUstep.
3036 (ns_query_color): New declaration.
3037
3038 * nsterm.m (ns_confirm_quit): New variable.
3039 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
3040 (EmacsApp-applicationShouldTerminate:): Use it.
3041 (EmacsPrefsController): Let user set it.
3042 (ns_query_color): New function.
3043 (ns_defined_color): Use it.
3044 (ns_initialize): Drop.
3045 (ns_term_init): Add two lines from ns_initialize(), and set
3046 input_interrupt_mode to nil.
3047
3048 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 3049 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 3050
9fe78804
KH
30512009-01-28 Kenichi Handa <handa@m17n.org>
3052
3053 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
3054 (fontset_get_font_group): Remember that no font-group is specified
3055 for C.
9fe78804 3056
fa57de36
CY
30572009-01-27 Chong Yidong <cyd@stupidchicken.com>
3058
930600e9
CY
3059 * fns.c (concat): Check for string overflow (bug#1787).
3060
fa57de36
CY
3061 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
3062 Quadruple undo limits (bug#1501).
3063
7179ce7b
KH
30642009-01-27 Kenichi Handa <handa@m17n.org>
3065
3066 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
3067 directly use GT_Get_Char_index.
3068
3069 * xftfont.c (struct xftfont_info): New member `index'.
3070
3071 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 3072 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 3073
5be8fcc0
CY
30742009-01-26 Kenichi Handa <handa@m17n.org>
3075
3076 * fontset.c (fontset_find_font): Fix handling of non-cons return
3077 value of fontset_get_font_group.
3078 (fontset_font): Revert last change.
3079
19ae3e61
JR
30802009-01-26 Jason Rumney <jasonr@gnu.org>
3081
3082 * w32font.c (w32font_list_internal): Return quickly if registry is
3083 unknown. Simplify final return.
3084 (add_font_entity_to_list): Break complex logic down into more
3085 manageable chunks. Move unknown registry check to
3086 w32font_list_internal.
3087
8612b71a
AR
30882009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
3089
3090 Changes to remove Feval calls from GUI under NS.
3091
d8038940
JB
3092 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
3093 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
3094 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
3095
3096 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
3097 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
3098 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
3099 instead of NON_ASCII_KEYSTROKE_EVENT.
3100 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
3101 (EmacsApp-applicationShouldTerminate:): Query user.
3102 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
3103 instead of Feval.
3104
3105 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
3106
3107 * keyboard.c (kbd_buffer_get_event): Check for it.
3108 (keys_of_keyboard): Define lispy keys for
3109 ns-put/unput-working-text.
3110
3111 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
3112 versions.
3113 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
3114
6288ae55
CY
31152009-01-25 Chong Yidong <cyd@stupidchicken.com>
3116
3117 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 3118 setting current_buffer directly. (Bug#2044)
6288ae55 3119
289e7f8f
CY
31202009-01-24 Chong Yidong <cyd@stupidchicken.com>
3121
5ce87308 3122 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 3123 any work. (Bug#1952, bug#1990).
5ce87308 3124
64cc3cf6 3125 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 3126
b3243e6f
AR
31272009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3128
3129 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
3130 (ns_no_defaults): New declaration.
3131 (main): Use it.
e0d2e69a 3132
d900b2af 3133 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 3134
d900b2af 3135 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 3136
d900b2af
AR
3137 * nsterm.m (ns_no_defaults): New variable.
3138 (ns_initialize): Don't read defaults when ns_no_defaults.
3139 (EmacsView-readSelectionFromPasteboard:)
3140 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 3141 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
3142 (ns_dumpglyphs_stretch): New function.
3143 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 3144 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 3145
e0d2e69a
AR
3146 * nsimage.m (setPixmapData:): Set to ignore image DPI.
3147
3ac71f5d
CY
31482009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
3149
3150 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
3151 call for Sparc64.
3152
3fe53a83
AR
31532009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3154
3155 * nsfns.m:
3156 * nsgui.h:
3157 * nsmenu.m:
3158 * nsselect.m:
3159 * nsterm.h:
3160 * nsterm.m: Remove '23' comments that indicated code added during
3161 update from emacs-20 -> emacs-23.
3162
10f87c6f 31632009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
3164
3165 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 3166 ns_alternate_modifier. (Bug#1217)
a3b53a85 3167
c7cef62d
AR
3168 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
3169 Display all shortcuts, including those w/o super modifier.
3170
575fb8bd
AR
3171 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
3172
918b848b
CY
31732009-01-22 Chong Yidong <cyd@stupidchicken.com>
3174
3175 * fileio.c (Vwrite_region_post_annotation_function)
3176 (Vwrite_region_annotation_buffers): New vars.
3177 (build_annotations_unwind): Just reset
3178 Vwrite_region_annotation_buffers.
3179 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
3180 Call write-region-post-annotation-function.
3181 (build_annotations): Add to Vwrite_region_annotation_buffers if
3182 buffer changes.
3183
a39e2539
AR
31842009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3185
3186 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
3187 Tiger.
51d861de
SM
3188 * nsfns.m (ns_do_applescript):
3189 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 3190
35ed44db
AR
31912009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
3192
3193 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
3194
cbe0b5bf
AR
31952009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3196
3197 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 3198
6049d3a0
AR
3199 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
3200
3201 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
3202 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
3203 handle Ctrl-tab. (Bug#1841)
3204 (ns_get_color): Use unsigned long long for scanned hex string value.
3205 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 3206 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 3207 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 3208 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 3209 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 3210 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 3211 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 3212
d3810c21 3213 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 3214 DPI. (Bug#1316)
d3810c21
AR
3215 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
3216 values in onTiger section.
4c7077c3 3217
e301e634
CY
32182009-01-19 Chong Yidong <cyd@stupidchicken.com>
3219
7f82490b
CY
3220 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
3221 Check return value of font_spec_from_name.
64cc3cf6 3222 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
3223
3224 * font.c (font_spec_from_name): Return Qnil if font name could not
3225 be parsed.
3226 (font_parse_name): Treat a `?' character as part of an XLFD.
3227
e301e634
CY
3228 * fns.c (Fsubstring): Doc fix.
3229
1c0db158
KH
32302009-01-19 Kenichi Handa <handa@m17n.org>
3231
51d861de 3232 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
3233 (ftfont_list): Likewise.
3234
acf20901
JB
32352009-01-18 Juanma Barranquero <lekktu@gmail.com>
3236
fff4e459
JB
3237 * dbusbind.c (Fdbus_register_signal):
3238 * process.c (conv_sockaddr_to_lisp):
3239 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
3240
acf20901
JB
3241 * callproc.c (Fgetenv_internal): Doc fix.
3242
e7abcdfb
CY
32432009-01-16 Chong Yidong <cyd@stupidchicken.com>
3244
3245 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
3246 it is not even used.
3247
b60861e6
GM
32482009-01-16 Glenn Morris <rgm@gnu.org>
3249
3250 * font.c (Ffont_variation_glyphs): Silence compiler.
3251
8db52afe
JB
32522009-01-15 Juanma Barranquero <lekktu@gmail.com>
3253
3254 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
3255 Reported by David Robinow <drobinow@gmail.com>.
3256
4cddb209
KH
32572009-01-15 Kenichi Handa <handa@m17n.org>
3258
51d861de 3259 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 3260
f247f67b
JR
32612009-01-14 Jason Rumney <jasonr@gnu.org>
3262
3263 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 3264 never a fontset. (Bug#1562)
f247f67b 3265
f56a4450
KH
32662009-01-14 Kenichi Handa <handa@m17n.org>
3267
3268 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 3269 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 3270
4e99855e
CY
32712009-01-13 Chong Yidong <cyd@stupidchicken.com>
3272
3273 * font.c (font_clear_prop): If clearing the family, clear the font
3274 width index too.
3275
fff4e459 3276 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 3277
24f01470
JB
32782009-01-12 Juanma Barranquero <lekktu@gmail.com>
3279
3280 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
3281 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
3282 functions, use sizeof.
3283
a41240a3
MR
32842009-01-12 Martin Rudalics <rudalics@gmx.at>
3285
3286 * keyboard.c (read_char): Fix case where last_nonmenu_event
3287 returned a bad value with submenus. (Bug#447)
3288
944636b8
CY
32892009-01-12 Chong Yidong <cyd@stupidchicken.com>
3290
3291 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
3292 family, clear the font width index too.
3293
0dad7c6f
JR
32942009-01-11 Jason Rumney <jasonr@gnu.org>
3295
3296 * keyboard.c (cmd_error_internal): Exit when errors occur before
3297 frame creation and not in daemon mode. (Bug#1836)
3298
7c2363af
CY
32992009-01-10 Chong Yidong <cyd@stupidchicken.com>
3300
3301 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
3302 of a display vector, backtrack.
3303 (try_window_reusing_current_matrix): Check glyph type before
3304 referencing charpos member.
3305
97b1b294
EZ
33062009-01-10 Eli Zaretskii <eliz@gnu.org>
3307
3308 Fix Bug #876:
3309
3310 * coding.c (inhibit_null_byte_detection): New variable.
3311 (detect_coding, detect_coding_system): Don't pay attention to null
3312 bytes if inhibit_null_byte_detection is non-zero.
51d861de 3313 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
3314 <inhibit-iso-escape-detection>: Doc fix.
3315
4624b6e3
JR
33162009-01-09 Jason Rumney <jasonr@gnu.org>
3317
3318 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 3319 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
3320 Only report Unicode Plane 2 fonts as unicode-sip.
3321
323b840c
CY
33222009-01-09 Chong Yidong <cyd@stupidchicken.com>
3323
51d861de
SM
3324 * xfaces.c (Fx_font_family_list): Delete function.
3325 Move compatibility version to faces.el.
323b840c 3326
51d861de 3327 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 3328
eba7400d
MR
33292009-01-09 Martin Rudalics <rudalics@gmx.at>
3330
3331 * frame.c (x_set_frame_parameters): Remember requested value for
3332 fullscreen before it's reset by the parameter handler.
3333
4b09796d
GM
33342009-01-09 Glenn Morris <rgm@gnu.org>
3335
3336 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 3337 (last_command_event): ... and update all users.
4b09796d
GM
3338 (last_input_char): For clarity, rename to...
3339 (last_input_event): ... and update all users.
3340 (last-command-char, last-input-char): Move to subr.el as aliases.
3341 * cmds.c, commands.h: Update for last_command_char rename.
3342
14ccea62
CY
33432009-01-08 Chong Yidong <cyd@stupidchicken.com>
3344
51d861de 3345 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 3346
5f004711
JR
33472009-01-08 Jason Rumney <jasonr@gnu.org>
3348
3349 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
3350 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
3351 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
3352 Don't declare.
fff4e459 3353 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
3354 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
3355
b71f6f73
KH
33562009-01-07 Kenichi Handa <handa@m17n.org>
3357
50b06221 3358 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 3359 remember the coding system used for decoding in
50b06221
KH
3360 coding_system (Bug#1039).
3361
b71f6f73 3362 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 3363 breaking the loop. (Bug#870)
b71f6f73
KH
3364 (decode_coding_utf_16, decode_coding_emacs_mule)
3365 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3366 (decode_coding_charset): Likewise.
3367
56f668f7
MR
33682009-01-05 Martin Rudalics <rudalics@gmx.at>
3369
3370 * frame.c (x_set_frame_parameters): Make sure height (width) get
3371 applied when fullwidth (fullheight) is set. (Bug#1522)
3372
5da9424d
JB
33732009-01-04 Juanma Barranquero <lekktu@gmail.com>
3374
3375 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
3376 (utc_base): Declare as ULONGLONG, not long double.
3377 (convert_time_raw): Delete.
3378 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
3379 (initialize_utc_base): New function.
3380 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
3381 (convert_from_time_t): Use initialize_utc_base; compute result with
3382 64-bit arithmetic.
3383 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
3384
c4605e09
EZ
33852009-01-03 Eli Zaretskii <eliz@gnu.org>
3386
9acef61c 3387 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
3388 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
3389 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
3390 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
3391 [!subprocesses]: Define.
3392 (syms_of_process) [!subprocesses]: Intern and staticpro them.
3393 (Flist_system_processes, Fsystem_process_attributes)
3394 [!subprocesses]: Call list_system_processes and
3395 system_process_attributes instead of returning Qnil.
3396
9acef61c
JB
3397 * dosfns.c (system_process_attributes, list_system_processes):
3398 New functions.
c4605e09
EZ
3399
3400 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
3401
3402 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
3403 Don't use the default (no-op) implementation.
3404
8b7d0a16
JR
34052009-01-03 Jason Rumney <jasonr@gnu.org>
3406
a6d46bc1
JR
3407 * keyboard.c (parse_modifiers_uncached): Wheel events are
3408 clicks (bug#687).
3409
8b7d0a16
JR
3410 * w32term.c (x_query_colors, x_query_color): New functions.
3411
3412 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
3413 (svg_load_image): Cast returned pointers from dynamically loaded
3414 functions. Eliminate W32 specific code.
3415
bfe11752
DN
34162009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
3417
89e2438a
DN
3418 * nsfns.m (x_set_foreground_color, x_set_background_color)
3419 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
3420 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
3421 x_ prefix instead of ns_. Update references.
3422 (syms_of_nsfns): Add a FIXME comment.
3423
3424 * nsterm.m (x_set_cursor_type): New prototype.
3425 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
3426
bfe11752
DN
3427 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
3428 for Solaris instead of incorrectly providing Qutime and Qcutime.
3429
031da700
EZ
34302009-01-02 Eli Zaretskii <eliz@gnu.org>
3431
3432 * w32.c (process_times): Compute sum of utime and stime.
3433 (system_process_attributes): Add Qtime to the alist.
3434
3435 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
3436 and add them to the alist.
3437
3438 * process.c (top level) <Qtime, Qctime>: New variables.
3439 (syms_of_process): staticpro them.
3440 (Fsystem_process_attributes): Add their documentation to the doc
3441 string.
3442
3443 * process.h: Declare Qtime and Qctime.
3444
df23bf08
JR
34452009-01-02 Jason Rumney <jasonr@gnu.org>
3446
9acef61c 3447 * image.c (Qgobject): New symbol.
df23bf08
JR
3448 (syms_of_image): Initialize it.
3449 (init_svg_functions): Load some functions from gobject library.
3450
5bbdf7aa
DN
34512009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
3452
3453 * frame.c (make_terminal_frame): Remove redundant code and useless
3454 block.
3455
63136da6
AS
34562009-01-01 Andreas Schwab <schwab@suse.de>
3457
3458 * process.c (conv_sockaddr_to_lisp): Add workaround for
3459 getsockname bug on BSD.
3460
9ef69046
CY
34612009-01-01 Chong Yidong <cyd@stupidchicken.com>
3462
d6fafbe0
CY
3463 * xfns.c (x_create_tip_frame): Set border width of the X window.
3464
51d861de 3465 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 3466
f9c34147
JR
34672009-01-01 Jason Rumney <jasonr@gnu.org>
3468
9acef61c 3469 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
3470 Don't block input, as per earlier xterm.c changes.
3471
f5497e45
AR
34722008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
3473
3474 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
3475 (ns_appkit_version_int): New function.
3476 (x-server-version): Use ns_appkit_version_int and follow 21+
3477 convention of returning 3 integers.
3478
c19cab20
KH
34792008-12-30 Kenichi Handa <handa@m17n.org>
3480
3481 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
3482 (CHAR_SURROGATE_PAIR_P): New macro.
3483
3484 * font.h (struct font_driver): New member get_variation_glyphs.
3485
9acef61c 3486 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
3487 (Ffont_variation_glyphs): New function.
3488 (syms_of_font): Defsubr it.
3489
3490 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
3491 ftfont_variation_glyphs.
3492 (setup_otf_gstring): New function.
3493 (ftfont_drive_otf): Use it.
3494 (ftfont_shape_by_flt): Handle variation selector.
3495 (ftfont_variation_glyphs): New function.
3496
28cd591f
MR
34972008-12-30 Martin Rudalics <rudalics@gmx.at>
3498
3499 * frame.c (Vemacs_iconified): Remove.
3500
7f714baf
JR
35012008-12-30 Jason Rumney <jasonr@gnu.org>
3502
3503 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 3504 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 3505
9d2d22ab
CY
35062008-12-30 Chong Yidong <cyd@stupidchicken.com>
3507
3508 * indent.c (Fvertical_motion): Don't advance iterator if we have
3509 reseated to the desired position.
3510
3511 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
3512 checking for pos match.
3513
545312c2
KH
35142008-12-30 Kenichi Handa <handa@m17n.org>
3515
1ede3eb6
KH
3516 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
3517 just get the low 8-bit of the code.
3518
545312c2
KH
3519 * font.c (font_intern_prop): Validate str as multibyte.
3520
bd7bbf29
DN
35212008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3522
31e0750e
DN
3523 * dispextern.h (struct face): Move lface and hash from the middle
3524 of bitfields.
3525
bd7bbf29
DN
3526 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
3527
b5672e7c
DN
35282008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3529
3530 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
3531 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
3532 instead of intervals.h.
3533
d704470f
AS
35342008-12-26 Andreas Schwab <schwab@suse.de>
3535
3536 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
3537 cons.
3538
54b33868
MR
35392008-12-26 Martin Rudalics <rudalics@gmx.at>
3540
3541 * textprop.c (Qminibuffer_prompt): New variable.
3542 (syms_of_textprop): Initialize it.
3543 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
3544 in minibuffer-prompt face. (Bug#1662)
3545
40b615d6
JR
35462008-12-25 Jason Rumney <jasonr@gnu.org>
3547
3548 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
3549
baae5c2d
JR
35502008-12-24 Jason Rumney <jasonr@gnu.org>
3551
3552 * ralloc.c (r_alloc_reset_variable): New function.
3553
3554 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 3555 record of what points where. (Bug#716)
baae5c2d 3556
a9051c88
DN
35572008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
3558
3559 * minibuf.c (read_minibuf): Follow the non-interactive case when
3560 running as a daemon, before detaching.
3561
8b146312
AS
35622008-12-22 Andreas Schwab <schwab@suse.de>
3563
3564 * buffer.c (init_buffer): Use realloc instead of xrealloc.
3565 * gtkutil.c (free_widget_value): Use xfree instead of free.
3566
56f2de10
MR
35672008-12-22 Martin Rudalics <rudalics@gmx.at>
3568
3569 * frame.c (delete_frame): New function derived from
3570 Fdelete_frame to handle Qnoelisp value for FORCE argument.
3571 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
3572 (Fdelete_frame): Call delete_frame. Remove line from doc-string
3573 saying that FORCE non-nil doesn't run `delete-frame-functions'.
3574 * frame.h: Extern delete_frame.
3575 * window.c (window_loop):
3576 * terminal.c (delete_terminal):
3577 * xterm.c (x_connection_closed):
3578 * xfns.c (Fx_hide_tip):
9acef61c 3579 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 3580
1fc200d6
JR
35812008-12-21 Jason Rumney <jasonr@gnu.org>
3582
3583 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
3584 when character maps to .notdef character.
3585
5e252df2
SM
35862008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
3587
3588 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
3589
99b72cc4
JR
35902008-12-20 Jason Rumney <jasonr@gnu.org>
3591
3592 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 3593 a graphical frame on Windows. (Bug#1325)
99b72cc4 3594
acc49a52
JD
35952008-12-20 Jan Djärv <jan.h.d@swipnet.se>
3596
3597 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
3598
6ea15123
CY
35992008-12-20 Chong Yidong <cyd@stupidchicken.com>
3600
3601 * minibuf.c (Fread_buffer): Doc fix.
3602
b2dab6c8
JR
36032008-12-20 Jason Rumney <jasonr@gnu.org>
3604
54ea0c87 3605 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 3606 server name in UNC paths. (Bug#719)
54ea0c87 3607
b2dab6c8 3608 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 3609 charbuf. (Bug#1035)
b2dab6c8 3610
6d1921be
DN
36112008-12-19 Daniel Engeler <engeler@gmail.com>
3612
3613 * sysdep.c (serial_configure): Fix typo.
3614
53934c98
DN
36152008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3616
3617 * sysdep.c: Include alloca.h.
f4f634e8
DN
3618 (system_process_attributes): Add implementation for Solaris.
3619
3620 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 3621
06e111a6
DN
36222008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3623
3624 Reorganize implementation of Flist_system_processes and
3625 Fsystem_process_attributes. No functional changes.
3626 * process.c: Don't #include pwd.h, grp.h and limits.h.
3627 (Flist_system_processes): Just call list_system_processes.
3628 (Fsystem_process_attributes): Just call system_process_attributes.
3629 (procfs_list_system_processes, time_from_jiffies)
3630 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
3631 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
3632
3633 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
3634 (list_system_processes): Rename from
3635 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
3636 Provide a do nothing implementation.
3637 (system_process_attributes): Rename from
3638 procfs_list_system_processes.
3639 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 3640 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
3641
3642 * w32.c (list_system_processes): Rename from
3643 w32_list_system_processes.
3644 (system_process_attributes): Rename from
3645 w32_system_process_attributes.
3646
3647 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
3648
3649 * process.h (w32_list_system_processes)
3650 (w32_system_process_attributes): Remove.
3651 (list_system_processes, system_process_attributes): New
3652 prototypes.
3653
6a705b23
KH
36542008-12-19 Kenichi Handa <handa@m17n.org>
3655
3656 * xfont.c (xfont_decode_coding_xlfd): New function.
3657 (xfont_encode_coding_xlfd): New function.
3658 (xfont_list_pattern): Decode XLFD by iso-8859-1.
3659 (xfont_list): Decode and encode XLFD by iso-8859-1.
3660 (xfont_match): Likewise.
3661 (xfont_list_family): Likewise.
3662 (xfont_open): Likewise.
3663
d66c0241 3664 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
3665 names are utf-8.
3666
d66c0241 3667 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
3668 names are utf-8.
3669
5a130941
JD
36702008-12-18 Jan Djärv <jan.h.d@swipnet.se>
3671
3672 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
3673 changed.
bfd20325
JD
3674 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
3675 clicked on a detached tool bar button.
5a130941 3676
fd95644b
DN
36772008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
3678
3679 * emacs.c (main): Print and error and exit when no data is read
3680 from the pipe.
3681
e6eee6ae
JR
36822008-12-17 Jason Rumney <jasonr@gnu.org>
3683
3684 * w32font.c (w32font_has_char): Always return -1.
3685
a35dd56b
KH
36862008-12-16 Kenichi Handa <handa@m17n.org>
3687
3688 * font.c (font_open_entity): Fix previous change.
3689
0e3635c2
DN
36902008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
3691
3692 * process.c: Include <limits.h>.
3693
d4835507 36942008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
3695
3696 * font.c (font_update_drivers): Fix mistake in reconstructing the
3697 driver list.
3698
36992008-12-16 Chong Yidong <cyd@stupidchicken.com>
3700
3701 * font.c (font_clear_cache): Fix format of font cache data.
3702
e2cbc401
CY
37032008-12-15 Chong Yidong <cyd@stupidchicken.com>
3704
3705 * xftfont.c (xftfont_open): Free Xft font pattern if
3706 XftFontOpenPattern fails.
3707
3708 * xterm.c (x_free_frame_resources): Remove extraneous call to
3709 free_frame_faces.
3710
b131d535
CY
37112008-12-13 Chong Yidong <cyd@stupidchicken.com>
3712
3713 * xterm.c (x_delete_display): Move xim_close_dpy call to
3714 x_delete_terminal.
3715 (x_delete_terminal): Call xim_close_dpy.
3716
e6df5336
JR
37172008-12-13 Jason Rumney <jasonr@gnu.org>
3718
3719 * w32font.c (intern_font_name): New function.
3720 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
3721 (w32font_open_internal, Fx_select_font): Decode font name.
3722 (fill_in_logfont, list_all_matching_fonts): Encode font name.
3723
3724 * w32font.h (intern_font_name): Declare new function.
3725
3726 * w32uniscribe.c (add_opentype_font_name_to_list):
3727 Use intern_font_name.
3728
20d68145
CY
37292008-12-13 Chong Yidong <cyd@stupidchicken.com>
3730
9f2554de
CY
3731 * frame.c (Fdelete_frame): Call free_font_driver_list.
3732
3d9bec9a
CY
3733 * font.c (free_font_driver_list): Implement missing function.
3734
20d68145
CY
3735 * w32term.c (w32_term_init): Don't initialize the image cache
3736 here; it will be done in init_frame_faces.
3737
3738 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
3739 (struct x_display_info): Remove unused member null_pixel. New
3740 member xim_callback_data.
3741
3742 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
3743 (xim_initialize): Save pointer to callback function data.
3744 (xim_close_dpy): Free callback function data. Call XCloseIM,
3745 reverting 2008-11-04 change by David Smith.
3746 (x_term_init): Don't initialize the image cache here; it will be
3747 done in init_frame_faces. Remove ancient "null_pixel" cruft.
3748 (x_delete_display): Free x_dnd_atoms member.
3749
96f9306b
KH
37502008-12-13 Kenichi Handa <handa@m17n.org>
3751
6dec9044
JB
3752 * font.c (font_rescale_ratio): Moved from xfaces.c.
3753 Argument type changed. Handle a font-spec too.
96f9306b 3754 (font_score): Check Vface_font_rescale_alist.
6dec9044 3755 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
3756
3757 * xfaces.c (font_rescale_ratio): Moved to font.c.
3758
8d5b4964
CY
37592008-12-13 Chong Yidong <cyd@stupidchicken.com>
3760
3761 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
3762
e6df5336
JR
37632008-12-12 Jason Rumney <jasonr@gnu.org>
3764
3765 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
3766 Vwindow_system_version to the real w32 major version.
3767
97c6058a
DN
37682008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
3769
3770 * term.c (init_tty): Move setting the terminal name before the
3771 potential user: maybe_fatal.
3772
ec4e88d7
CY
37732008-12-11 Chong Yidong <cyd@stupidchicken.com>
3774
d4835507
JB
3775 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
3776 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 3777
b4233ec9
JR
37782008-12-11 Jason Rumney <jasonr@gnu.org>
3779
8ec71e23 3780 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 3781 SYMBOL_CHARSET. (Bug#547)
8ec71e23 3782
b4233ec9 3783 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 3784 size for surrogates. (Bug#1096, bug#872)
b4233ec9 3785
011a0143
JB
37862008-12-11 Juanma Barranquero <lekktu@gmail.com>
3787
3788 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
3789
3c309f34
JB
37902008-12-11 Juanma Barranquero <lekktu@gmail.com>
3791
3792 * process.c (Fsystem_process_attributes, syms_of_process):
3793 Fix typo in name of Ssystem_process_attributes.
3794 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
3795
fedc6ab5
JB
37962008-12-11 Juanma Barranquero <lekktu@gmail.com>
3797
3798 * syntax.c (Fmodify_syntax_entry): Doc fix.
3799
ba3de0e8
JB
38002008-12-10 Juanma Barranquero <lekktu@gmail.com>
3801
3802 * font.c (Ffont_spec): Move usage to end of docstring.
3803
174f1c74
JR
38042008-12-10 Jason Rumney <jasonr@gnu.org>
3805
3806 * w32font.c (Qcham): New symbol.
3807 (font_supported_scripts): Add cham, and comments for other new
3808 scripts in bitfield from OpenType spec.
9d32f818
JR
3809 (add_font_entity_to_list): Limit unicode-sip fonts to those that
3810 contain characters beyond the bmp.
174f1c74 3811
7b649478
KH
38122008-12-10 Kenichi Handa <handa@m17n.org>
3813
3814 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 3815 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
3816 Qunicode_sip.
3817
2133e2d1
JB
38182008-12-10 Juanma Barranquero <lekktu@gmail.com>
3819
3820 * coding.c (QCdefault_char): Rename from QCdefalut_char.
3821 (Fcoding_system_put): Use QCdefault_char.
3822 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
3823
9af886ee
CY
38242008-12-09 Chong Yidong <cyd@stupidchicken.com>
3825
74d819eb
CY
3826 * xftfont.c (syms_of_xftfont): Fix typo.
3827
4ccfa1c0 3828 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 3829
7c19d3ae
DN
38302008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
3831
3832 * emacs.c (main): Close daemon_pipe on exec.
3833
567826bb
CY
38342008-12-08 Chong Yidong <cyd@stupidchicken.com>
3835
3836 * termchar.h (struct tty): New members termcap_term_buffer and
3837 termcap_strings_buffer.
3838
3839 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 3840 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
3841 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
3842 All callers changed.
3843 (init_tty): Store termcap data and string buffers in new struct
3844 tty members termcap_term_buffer and termcap_strings_buffer.
3845 (delete_tty): Free them.
4ccfa1c0 3846 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 3847
aa96c42b
SZ
38482008-12-07 Seiji Zenitani <zenitani@mac.com>
3849
3850 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 3851 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 3852
b7e1d896
CY
38532008-12-06 Chong Yidong <cyd@stupidchicken.com>
3854
3855 * coding.c (make_conversion_work_buffer): Disable buffer
3856 modification hooks in the work buffer.
3857
b5ec91a5
EZ
38582008-12-05 Eli Zaretskii <eliz@gnu.org>
3859
3860 * process.c (procfs_system_process_attributes): If `nread' has a
3861 negative value, assign zero to it.
3862
a5d2a52b
CY
38632008-12-05 Chong Yidong <cyd@stupidchicken.com>
3864
68c5540b 3865 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 3866
7bf1bb21
KH
38672008-12-05 Kenichi Handa <handa@m17n.org>
3868
3869 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
3870 second character is a combining character.
3871
2fdc7d00
EZ
38722008-12-05 Eli Zaretskii <eliz@gnu.org>
3873
3874 * process.c (procfs_system_process_attributes): Don't use cmd,
3875 cmdsize, and q without initializing them first.
3876
bf6bfba8
JR
38772008-12-04 Jason Rumney <jasonr@gnu.org>
3878
3879 * w32font.c (w32font_draw): Initialize orig_clip before getting
3880 it, and delete it when finished.
3881
a3b1a468
DN
38822008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
3883
3884 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
3885 case when running as a daemon before detaching.
3886
8b8be8eb
JB
38872008-12-03 Juanma Barranquero <lekktu@gmail.com>
3888
805f2638 3889 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 3890
b1bde622
KH
38912008-12-03 Kenichi Handa <handa@m17n.org>
3892
e500c47d
KH
3893 * font.c (font_at): Set `multibyte' at first.
3894
ca516334
KH
3895 * coding.c (decode_coding_charset): Check type of an element of
3896 vector VALIDS.
7bf1bb21 3897 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 3898
4ccfa1c0 3899 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
3900 (font_for_char): Likewise.
3901
1e5ecd37
CY
39022008-12-03 Chong Yidong <cyd@stupidchicken.com>
3903
d5b01609 3904 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
3905 (font_update_lface): Handle fonts with corrupted size specs,
3906 i.e. non-int and non-float.
d5b01609 3907
11e3a6e4 3908 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 3909 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 3910 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 3911
ab06788b
CY
3912 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
3913
1e5ecd37 3914 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 3915 underline_minimum_offset for underline position.
1e5ecd37 3916
63c125ab
DN
39172008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
3918
3919 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
3920
3921 * character.c (c_string_width): Specify the type for LEN.
3922
3a8406e1
KH
39232008-12-03 Kenichi Handa <handa@m17n.org>
3924
4ccfa1c0 3925 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 3926 (decode_coding_utf_8): Likewise.
4ccfa1c0 3927 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 3928 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 3929
651df7d9
CY
39302008-12-02 Chong Yidong <cyd@stupidchicken.com>
3931
3932 * keyboard.c (make_lispy_position): Only use PT if the selected
3933 window is current.
3934
1f625c6c
AS
39352008-12-02 Andreas Schwab <schwab@suse.de>
3936
f7741ce9
AS
3937 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
3938
1f625c6c
AS
3939 * doprnt.c (doprnt1): Fix size of charbuf.
3940
92bc2678
CY
39412008-12-02 Chong Yidong <cyd@stupidchicken.com>
3942
3943 * keyboard.c (timer_check): Revert last change.
3944
93b9e8cc
JB
39452008-12-02 Juanma Barranquero <lekktu@gmail.com>
3946
3947 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
3948
fd7a37d5
JB
39492008-12-01 Juanma Barranquero <lekktu@gmail.com>
3950
3951 * makefile.w32-in: Update dependencies.
3952 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
3953
c115043b
AS
39542008-12-01 Andreas Schwab <schwab@suse.de>
3955
3956 * font.c (register_font_driver): Use xmalloc.
3957 (font_put_frame_data): Likewise.
3958
f5668d2a
CY
39592008-12-01 Chong Yidong <cyd@stupidchicken.com>
3960
860d96be
CY
3961 * xfaces.c (realize_x_face): Make abort condition clearer.
3962
f5668d2a
CY
3963 * gtkutil.c (update_frame_tool_bar): Initialize variable.
3964
379c17e7
CY
39652008-11-30 Chong Yidong <cyd@stupidchicken.com>
3966
3967 * keyboard.c (timer_check): After a timer runs, ensure that the
3968 selected window's buffer is current.
3969
35f36d65
JB
39702008-11-30 Juanma Barranquero <lekktu@gmail.com>
3971
f952c61c
JB
3972 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
3973 It was accidentally restored by the Unicode merge.
3974
35f36d65
JB
3975 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
3976
b23077df
JB
39772008-11-29 Juanma Barranquero <lekktu@gmail.com>
3978
3979 * w32proc.c: Include "coding.h".
3980 (Fw32_short_file_name): Encode filename passed to Windows API.
3981 (Fw32_long_file_name): Encode filename passed to Windows API and
3982 decode back the result. (Bug#1433)
3983
b8ebe9dd
KH
39842008-11-29 Kenichi Handa <handa@m17n.org>
3985
8cc53f96
KH
3986 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
3987 not before accessing it.
3988
b8ebe9dd
KH
3989 * charset.c (Fdefine_charset_internal): After calculating
3990 min_char, max_char, and fastmap, copy the charset structure again.
3991 (encode_char): Fix the previous change.
3992
59bc82c0
SZ
39932008-11-28 Seiji Zenitani <zenitani@mac.com>
3994
3995 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
3996
3997 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
3998
3999 * nsterm.m (x_set_frame_alpha): New function.
4000
32247e3d
EZ
40012008-11-27 Eli Zaretskii <eliz@gnu.org>
4002
4003 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
4004
b003e5ff
JB
40052008-11-27 Juanma Barranquero <lekktu@gmail.com>
4006
4007 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
4008 pointer to check_face_name.
4009
708550f5
KH
40102008-11-27 Kenichi Handa <handa@m17n.org>
4011
4012 * category.h (SET_CATEGORY_SET): Call set_category_set.
4013 (set_category_set): Extern it.
4014
4015 * category.c (hash_get_category_set): New function.
4016 (Fmodify_category_entry): Adjusted for the change of
4017 char_table_ref_and_range. Call hash_get_category_set to get a
4018 category set to store in the table.
4019
4020 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4021 Funify_charset.
4022
2ae37cf0 4023 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
4024 (DECODE_CHAR): Check if the decoder vector is ready.
4025 (ENCODE_CHAR): Check if the encoder char-table is ready.
4026 (maybe_unify_char): Extern it.
4027
4028 * charset.c (Vchar_unified_charset_table): Delete it.
4029 (inhibit_load_charset_map): New variable.
4030 (temp_charset_work): New variable.
4031 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
4032 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
4033 New macros.
4034 (load_charset_map): Meaning of control_flag changed. If
4035 inhibit_load_charset_map is nonzero, setup a table in
4036 temp_charset_work.
4037 (load_charset): New argument control_flag.
4038 (map_charset_for_dump): New function.
4039 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
4040 map_charset_for_dump.
4041 (Fdefine_charset_internal): If the charset method is MAP, load
4042 mapping tables by calling load_charset.
4043 (Funify_charset): Don't load a mapping table but directly set
4044 Vchar_unify_table.
4045 (maybe_unify_char): New function.
4046 (decode_char): Don't handle the deleted method MAP_DEFERRED.
4047 Handle the case of inhibit_load_charset_map being nonzero.
4048 (encode_char): Don't handle the deleted method MAP_DEFERRED.
4049 Handle the case of inhibit_load_charset_map being nonzero.
4050 (Fclear_charset_maps): Just free temp_charset_work.
4051 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
4052 variable.
4053
4054 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
4055 change of char_table_ref_and_range.
4056 (char_table_ref_and_range): Change the meaning of argument FROM
4057 and TO. Now the caller must provide initial values for *FROM
4058 and *TO.
4059
4060 * fontset.c (fontset_add): Adjusted for the change of
4061 char_table_ref_and_range.
4062 (fontset_get_font_group): Likewise.
4063 (Ffontset_info): Likewise.
4064
4065 * keymap.c (describe_vector): Adjusted for the change of
4066 char_table_ref_and_range. For char-table, put boundary between
4067 non-ASCII and 8-bit characters.
4068
4069 * print.c (print_object): For bool-vector, delete unnecessary
4070 check of ASCII_BYTE_P.
4071
9196133b
JR
40722008-11-26 Jason Rumney <jasonr@gnu.org>
4073
4074 * w32font.c (w32font_open_internal): Don't include external
9acef61c 4075 leading in font height. (Bug#879)
9196133b 4076
9f688acf
GM
40772008-11-26 Glenn Morris <rgm@gnu.org>
4078
4079 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
4080 redefinition with ifdef. (Bug#1383)
4081
90d19aff
AR
40822008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4083
4084 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
4085
4ccfa1c0 40862008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
4087
4088 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
4089 New EmacsView methods.
4090 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
4091 Fixes bug #1048,1357,1414.
4092
40932008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4094
4095 Fix bug #1362.
4096 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
4097 is not an indexed color.
4098 * nsterm.m (free_indexed_color): Add argument checking.
4099 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
4100
e7d5ecb3
CY
41012008-11-24 Chong Yidong <cyd@stupidchicken.com>
4102
4103 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
4104 Document confirm-after-completion value for
4105 minibuffer-completion-confirm.
4106
c285743c
JR
41072008-11-24 Jason Rumney <jasonr@gnu.org>
4108
4109 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
4110 warning.
4111
b0857706
JR
41122008-11-23 Jason Rumney <jasonr@gnu.org>
4113
4114 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
4115 restored before returning.
4116
4117 * w32font.c (check_face_name): New function.
4118 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 4119 fonts. (Bug#642)
b0857706 4120
ee50ff07
MR
41212008-11-22 Martin Rudalics <rudalics@gmx.at>
4122
4123 * buffer.c (Fswitch_to_buffer): Reword and mention new option
4124 confirm-nonexistent-file-or-buffer in doc-string.
4125
b8ff72fa
SM
41262008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
4127
4128 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
4129 Fix copy/paste typo. Add checks.
4130
cee53ed4
KH
41312008-11-21 Kenichi Handa <handa@m17n.org>
4132
4133 * coding.c (detect_coding_iso_2022): Reject invalid composition
4134 sequence.
4135 (DECODE_COMPOSITION_START): If the current source is the last
4136 block, and the current composition doesn't end, regard this
4137 sequence as invalid.
4138 (decode_coding_iso_2022): Handle invalid composition sequence.
4139
f6ef1e65
MR
41402008-11-20 Martin Rudalics <rudalics@gmx.at>
4141
4142 * window.c (coordinates_in_window): Don't return
4143 ON_VERTICAL_BORDER for the rightmost position of a mode/header
4144 line when the window is not the rightmost one. (Bug#1372)
4145
e08b1705
MR
41462008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
4147
4148 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
4149
ad98e89f
EZ
41502008-11-15 Eli Zaretskii <eliz@gnu.org>
4151
4152 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
4153 and bright_bg if noninteractive is non-zero.
4154
fb098a4b
CY
41552008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4156
4157 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
4158 x_draw_glyph_string_background.
4159
4160 * w32term.c (x_draw_glyph_string): Likewise.
4161
ce952b6e
CY
41622008-11-15 Chong Yidong <cyd@stupidchicken.com>
4163
4164 * xterm.c (x_draw_glyph_string): Stop drawing the background of
4165 the next glyph string once past the overhang width.
4166
4167 * nsterm.m (ns_draw_glyph_string): Likewise.
4168
4169 * w32term.c (x_draw_glyph_string): Likewise.
4170
26ea7079
CY
41712008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
4172
4173 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
4174 double file close.
4175
1c33c906
MR
41762008-11-14 Martin Rudalics <rudalics@gmx.at>
4177
4178 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
4179 dedicated status of window before attempting to display another
4180 buffer in it.
4181
8fc29035
JB
41822008-11-14 Juanma Barranquero <lekktu@gmail.com>
4183
4184 * msdos.c (Fmsdos_long_file_names):
4185 (syms_of_msdos) <dos-unsupported-char-glyph>:
4186 * dosfns.c (Fint86): Fix typos in docstrings.
4187
55fb4286
EZ
41882008-11-14 Eli Zaretskii <eliz@gnu.org>
4189
4190 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
4191
3fda0315
KY
41922008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
4193
4194 * puresize.h (BASE_PURESIZE): Increase to 1260000.
4195
7e849c17
CY
41962008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
4197
4198 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
4199
4200 * frame.h: Negative alpha means "don't touch".
4201
4202 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
4203
4204 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
4205
b9fd67bd
DN
42062008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
4207
4208 * hftctl.c:
4209 * chpdef.h:
4210 * acldef.h: Remove files used only for systems no longer supported.
4211
4212 * Makefile.in: Fix .o alphabetical ordering.
4213 (hftctl.o): Remove dependency, file removed.
4214 (keymap.o, print.o): Depend on charset.h.
4215
d5998e03
KH
42162008-11-10 Kenichi Handa <handa@m17n.org>
4217
2ae37cf0 4218 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 4219
be70e183
CY
42202008-11-08 Chong Yidong <cyd@stupidchicken.com>
4221
4222 * dired.c (file_name_completion): If completion_ignore_case is
4223 enabled, ignore case when checking completion-regexp-list.
4224
7cf94eac
EZ
42252008-11-08 Eli Zaretskii <eliz@gnu.org>
4226
4227 * vm-limit.c (get_lim_data): Fix last change.
4228
ee107a89
KH
42292008-11-08 Kenichi Handa <handa@m17n.org>
4230
4231 * character.c (Fget_byte): New function.
4232 (syms_of_character): Defsubr Fget_byte.
4233
5fd15622
CY
42342008-11-07 Chong Yidong <cyd@stupidchicken.com>
4235
4236 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
4237 cursor position is valid after scrolling.
4238
13d62fad
JB
42392008-11-06 Juanma Barranquero <lekktu@gmail.com>
4240
4241 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
4242
a1dd2936
GM
42432008-11-06 Glenn Morris <rgm@gnu.org>
4244
4245 * xterm.c (handle_one_xevent): Don't let popup menus cause
4246 mouse-autoselect-window related window switching. (Bug#1261)
4247
860cd236
CY
42482008-11-04 David Smith <davidsmith@acm.org> (tiny change)
4249
4250 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
4251
653a3150
AS
42522008-11-04 Andreas Schwab <schwab@suse.de>
4253
4254 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
4255
870f5cac
CY
42562008-11-03 Chong Yidong <cyd@stupidchicken.com>
4257
4258 * xfns.c (Fx_wm_set_size_hint): New function.
4259
1e02f3cb
MR
42602008-11-03 Martin Rudalics <rudalics@gmx.at>
4261
4262 * textprop.c (Fprevious_single_char_property_change): Return 0
4263 when there's no change in a string. (Bug#1301)
4264
e630dfc6
MR
42652008-11-02 Martin Rudalics <rudalics@gmx.at>
4266
4267 * frame.c (do_switch_frame): New argument NORECORD passed to
4268 Fselect_window.
4269 (Fselect_frame): New argument NORECORD passed to
4270 do_switch_frame.
4271 (Fset_frame_selected_window): New argument NORECORD passed to
4272 Fselect_frame.
4273 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
4274 in call of do_switch_frame.
4275 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
4276 Handle NORECORD argument in call of Fselect_frame.
4277 * lisp.h (do_switch_frame, Fselect_frame)
4278 (Fset_frame_selected_window): Adjust declarations.
4279 * window.c (select_frame_norecord): New function.
4280 (run_window_configuration_change_hook): Use it and call
4281 Fselect_frame with NORECORD set.
4282 (Fselect_window): Pass NORECORD to Fselect_frame.
4283 (Fset_window_configuration): Handle NORECORD argument in call of
4284 do_switch_frame.
4285 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
4286 Fset_frame_selected_window.
4287 * keyboard.c (command_loop_1): Handle NORECORD in call of
4288 Fselect_frame (currently ifdefd).
4289
9020b223
GM
42902008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
4291
4292 * emacs.c (USAGE2): Untabify.
4293
793ffee8
SM
42942008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
4295
4296 * composite.c (fill_gstring_header): Fix copy/paste typo.
4297
ab6d1131
MR
42982008-10-31 Martin Rudalics <rudalics@gmx.at>
4299
4300 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
4301 (Fother_window): Rename argument and rewrite doc-string.
4302 (select_window_norecord): Fix return value. (Bug#1276)
4303
601a9cf1
JB
43042008-10-30 Juanma Barranquero <lekktu@gmail.com>
4305
4306 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
4307 new frames overriding foreground for tooltips. Based on similar patch
4308 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
4309
813b0652
CY
43102008-10-29 Chong Yidong <cyd@stupidchicken.com>
4311
4312 * emacs.c (Fdaemon_initialized): Initialize nfd.
4313
4414f58f
MR
43142008-10-29 Martin Rudalics <rudalics@gmx.at>
4315
4316 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
4317 (Fwindow_text_height): Clarify doc-strings.
4318 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
4319 doc-string of window-scroll-functions.
4320
ecdcaa09
RS
43212008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
4322
4323 * category.c (syms_of_category): Fix typo in docstring.
4324
23fe745a
JB
43252008-10-28 Juanma Barranquero <lekktu@gmail.com>
4326
4327 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
4328 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
4329 Fix typos in docstrings.
4330
ff808935
DN
43312008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
4332
4333 * emacs.c (daemon_pipe): Make non-static.
4334 (IS_DAEMON): Move definition ...
4335 * lisp.h (IS_DAEMON): ... here.
4336 (daemon_pipe): Declare.
4337 (is_daemon): Remove.
4338 * dispnew.c (init_display): Use IS_DAEMON.
4339
fc012771
SM
43402008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
4341
4342 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
4343 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
4344
4345 * emacs.c (is_daemon): Remove.
4346 (main): Don't set is_daemon.
4347 (IS_DAEMON): New macro.
4348 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 4349 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
4350 parent exits.
4351 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
4352
d8bdbe6f
CY
43532008-10-27 Chong Yidong <cyd@stupidchicken.com>
4354
d1a072bf
CY
4355 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
4356 over-sized glyph, draw it with the default glyph width.
4357
e2e325aa
CY
4358 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4359 glyph, draw it with the default glyph width.
4360
4361 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4362 glyph, draw it with the default glyph width.
4363
d8bdbe6f
CY
4364 * xdisp.c (try_scrolling): When computing the distance from the
4365 scroll margin to PT, try moving some distance past the window
4366 bottom before giving up.
4367
7bfac547
MR
43682008-10-27 Martin Rudalics <rudalics@gmx.at>
4369
4370 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
4371 (Fset_window_buffer): Explain in doc-string that a window can be
4372 "strongly" dedicated to its buffer.
4373
4ff029f6
DN
43742008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
4375
4376 * emacs.c (daemon_name): New variable.
4377 (main): Deal with --daemon=SERVER_NAME.
4378 (Fdaemonp): Return a name if one was passed to --daemon.
4379
5790ef40
DN
43802008-10-26 Romain Francoise <romain@orebokech.com>
4381
f9bd0df9 4382 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
4383 (main): Create a pipe before forking, make the parent exit only after
4384 the child has closed its end of the pipe. Move closing the
4385 descriptors ...
4386 (Fdaemon_initialized): ... here. New function.
4387
f5385255
SM
43882008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
4389
4d632321
SM
4390 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
4391 the previous unoptimized table.
4392
f5385255
SM
4393 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
4394 the distinction between non-nil and non-t value of `dedicated'.
4395
6c56a0f3
CY
43962008-10-25 Chong Yidong <cyd@stupidchicken.com>
4397
4398 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 4399 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 4400
fec89261
MR
44012008-10-25 Martin Rudalics <rudalics@gmx.at>
4402
4403 * window.c (Fget_buffer_window, Fdelete_windows_on)
4404 (Freplace_buffer_in_windows): Make buffer argument optional and
4405 rename to buffer_or_name.
4406
34fcddd0
CY
44072008-10-24 Chong Yidong <cyd@stupidchicken.com>
4408
f5385255
SM
4409 * xdisp.c (handle_single_display_spec, handle_display_prop):
4410 Undo 2005-05-16 change.
34fcddd0
CY
4411 (handle_stop): Pop iterator if it's loaded with an empty string.
4412 (get_overlay_strings_1): Don't save iterator if it's loaded with
4413 an empty string (bug#1201).
4414
064766f2
KH
44152008-10-24 Kenichi Handa <handa@m17n.org>
4416
4417 * ftfont.c (ftfont_otf_features): Fix previous change.
4418 (ftfont_otf_capability): Check FeatureList.FeatureCount before
4419 calling ftfont_otf_features.
4420
f9bd0df9 44212008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
4422
4423 * font.c (font_match_p): Fix for the case that a vector of
4424 characters is in script-representative-chars.
4425
1dae9197
MA
44262008-10-24 Michael Albinus <michael.albinus@gmx.de>
4427
4428 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 4429 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
4430 (xd_read_queued_messages): Catch Qdbus_error from the macros.
4431 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
4432 macro. (Bug#1186).
4433
f9bd0df9 44342008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
4435
4436 * s/sol2-10.h: New file.
4437
878a4584
JB
44382008-10-23 Juanma Barranquero <lekktu@gmail.com>
4439
4440 * xdisp.c (fill_glyph_string): Fix typo in source (though the
4441 poor beast has survived 9+ years and the jump from xterm.c!).
4442
cd265ca6
MR
44432008-10-23 Martin Rudalics <rudalics@gmx.at>
4444
4445 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
4446 Reword doc-string.
f5385255 4447 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 4448
472a4dc9
JB
44492008-10-23 Juanma Barranquero <lekktu@gmail.com>
4450
4451 * character.c (syms_of_character) <script-representative-chars>:
4452 <unicode-category-table>: Doc fixes.
4453
159bd5a2
NF
44542008-10-23 Noah Friedman <friedman@splode.com>
4455
4456 * coding.c (make_conversion_work_buffer): Check that
4457 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
4458 Fget_buffer_create.
4459
49f9c344
KH
44602008-10-23 Kenichi Handa <handa@m17n.org>
4461
4462 * font.c (font_add_log): Check the values of extra properties.
4463
12bb3111
MR
44642008-10-22 Martin Rudalics <rudalics@gmx.at>
4465
4466 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4467 Reword doc-string.
4468 (Fset_window_parameter): Use NILP.
4469 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 4470 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 4471
bbeb4e99
JB
44722008-10-22 Juanma Barranquero <lekktu@gmail.com>
4473
4474 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
4475
44762008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
4477
4478 * nsfns.m (ns_appkit_version): New function.
4479 (x-server-version): Use it.
4480 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
4481 (x-server-vendor): Don't check_ns().
4482
4483 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
4484
a9b555d3
JB
44852008-10-22 Juanma Barranquero <lekktu@gmail.com>
4486
4487 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4488 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
4489
4626499f
KH
44902008-10-22 Kenichi Handa <handa@m17n.org>
4491
e3681952
KH
4492 * syntax.c (scan_words): Call word_boundary_p instead of comparing
4493 scripts.
4494
4626499f
KH
4495 * category.c (word_boundary_p): Check scripts instead of charset.
4496 Handle nil value in word-separating-categories and
4497 word-combining-categories.
4498 (syms_of_category): Fix docstrings of word-separating-categories
4499 and word-combining-categories.
4500
1560f91a
EZ
45012008-10-21 Eli Zaretskii <eliz@gnu.org>
4502
4503 * coding.c (Fencode_coding_region, Fdecode_coding_region)
4504 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
4505
f4668441
MR
45062008-10-21 Martin Rudalics <rudalics@gmx.at>
4507
4508 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
4509 Rename arg "buffer" to "buffer_or_name".
4510 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
4511 it optional.
4512 (no_switch_window): Remove since the return value is not used.
a9b555d3 4513 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
4514 Consider window as dedicated when Fwindow_dedicated_p returns a
4515 non-nil value.
4516 * lisp.h: Remove prototype for no_switch_window.
4517
fd75ddb2
JD
45182008-10-21 Jan Djärv <jan.h.d@swipnet.se>
4519
4520 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 4521 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 4522
07295713
KH
45232008-10-21 Kenichi Handa <handa@m17n.org>
4524
4525 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
4526 check Vlatin_extra_code_table.
4527
712adc82
EZ
45282008-10-20 Eli Zaretskii <eliz@gnu.org>
4529
4530 * fileio.c (Fset_file_modes): Doc fix.
4531
f549eb0b
MA
45322008-10-19 Michael Albinus <michael.albinus@gmx.de>
4533
4534 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
4535 in arrays.
4536
aac0c6e3
MR
45372008-10-19 Martin Rudalics <rudalics@gmx.at>
4538
4539 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4540 Mention kill-buffer in doc-string.
4541 (Fset_window_buffer): Reinsert tem check removed in last commit.
4542 (Fenlarge_window, Fshrink_window): Have argument names and
4543 doc-string follow Elisp manual more closely.
4544
45452008-10-18 Eli Zaretskii <eliz@gnu.org>
4546
4547 * fileio.c (Fset_file_modes): Doc fix.
4548
45492008-10-18 Martin Rudalics <rudalics@gmx.at>
4550
4551 * window.c (Fwindow_width, Fset_window_start)
4552 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
4553 (Fdelete_windows_on, Freplace_buffer_in_windows):
4554 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
4555 (Fwindow_dedicated_p): Make window argument optional.
4556 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
4557 (Fset_window_buffer): Respect any non-nil dedicated value for
4558 window. Rename "buffer" argument to "buffer_or_name".
4559
45602008-10-18 Ulrich Mueller <ulm@gentoo.org>
4561
4562 * m/sh3.h: New file, machine description for SuperH.
4563
45642008-10-17 Martin Rudalics <rudalics@gmx.at>
4565
4566 * window.c (Fsplit_window): Rename arg horflag to horizontal.
4567
45682008-10-17 Kenichi Handa <handa@m17n.org>
4569
4570 * ftfont.c (ftfont_otf_features): Fix indexing
4571 gsub_gpos->FeatureList.Feature. Check the validity of indices.
4572
45732008-10-16 Magnus Henoch <mange@freemail.hu>
4574
4575 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
4576 (Fdbus_call_method_asynchronously): Ditto.
4577 This change makes C-h f display the argument list.
4578
45792008-10-16 Chong Yidong <cyd@stupidchicken.com>
4580
4581 * fileio.c (Fexpand_file_name): Doc fix.
4582
4583 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
4584 of :foreground and :background equivalent to unspecified (20.x
4585 compatibility).
4586
45872008-10-15 Eli Zaretskii <eliz@gnu.org>
4588
4589 * buffer.c (syms_of_buffer): Doc fix.
4590
45912008-10-14 Kenichi Handa <handa@m17n.org>
4592
4593 * font.c (font_clear_prop): When clearing font width, clear the
4594 average width field too.
4595
45962008-10-12 Andreas Schwab <schwab@suse.de>
4597
4598 * ftfont.c (ftfont_shape_by_flt): Make static.
4599 * ftfont.h (ftfont_shape_by_flt): Don't declare.
4600
4601 * font.c: Don't include <m17n-flt.h>.
4602
46032008-10-10 Eli Zaretskii <eliz@gnu.org>
4604
4605 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
4606
46072008-10-09 Eli Zaretskii <eliz@gnu.org>
4608
4609 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
4610 away code.
4611
46122008-10-09 Chong Yidong <cyd@stupidchicken.com>
4613
4614 * dispnew.c (update_text_area): Avoid looping due to large glyph
4615 overhangs (bug#1070).
4616
46172008-10-09 Kenichi Handa <handa@m17n.org>
4618
4619 * fontset.c (face_for_char): If face->fontset is negative, just
4620 return ascii_face.
4621
f5385255
SM
4622 * font.c (font_delete_unmatched): Fix previous change.
4623 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
4624
46252008-10-09 Martin Rudalics <rudalics@gmx.at>
4626
4627 * frame.c (Fraise_frame): On text-only terminals select frame in
4628 order to make it visible. (Bug#1061)
4629
46302008-10-08 Chong Yidong <cyd@stupidchicken.com>
4631
4632 * fontset.c (fontset_find_font): Check frame validity.
4633
46342008-10-07 Chong Yidong <cyd@stupidchicken.com>
4635
a9b555d3 4636 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
4637 (xg_display_close): Allow Emacs to close all displays (bug#985).
4638
46392008-10-06 Andreas Schwab <schwab@suse.de>
4640
f5385255 4641 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
4642
46432008-10-06 Chong Yidong <cyd@stupidchicken.com>
4644
f5385255 4645 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 4646
a9b555d3 4647 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
4648
4649 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
4650 during initialization.
4651
46522008-10-04 Eli Zaretskii <eliz@gnu.org>
4653
4654 * xdisp.c (redisplay_internal): If frame switched, redisplay the
4655 whole thing on MSDOS frames as well as on a TTY.
4656
4657 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
4658 well as for TTY.
4659 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
4660 well as on a TTY.
4661
4662 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
4663 as well as for TTY.
4664
4665 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
4666
4667 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
4668 MSDOS frames as well.
4669
46702008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4671
4672 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
4673 correct arguments.
b71ac3dd 4674 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
4675
46762008-10-03 Glenn Morris <rgm@gnu.org>
4677
4678 * emacs.c (USAGE1): Add --daemon.
4679
46802008-10-02 Eli Zaretskii <eliz@gnu.org>
4681
4682 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
4683 100, so it's in percents as advertised.
4684
46852008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4686
4687 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
4688 (ns_output.current_cursor, ns_output.desired_cursor)
4689 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
4690 (FRAME_NEW_CURSOR_COLOR): Remove.
4691
4692 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 4693 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
4694 enumeration (HOLLOW_BOX_CURSOR, etc.).
4695
4696 * nsterm.m (ns_frame_rehighlight): Remove commented code.
4697 (draw_window_cursor): Simplify code.
f5385255
SM
4698 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
4699 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 4700 updates manually.
a9b555d3
JB
4701 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
4702 Use core Emacs cursor types.
aac0c6e3 4703
b8ff72fa 4704 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
4705
47062008-10-02 Martin Rudalics <rudalics@gmx.at>
4707
4708 * process.c (Faccept_process_output): Fix doc-string.
4709
47102008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
4711
4712 * gmalloc.c (__sbrk): Also define for uClibc.
4713
4714 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
4715 for uClibc.
4716
47172008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4718
4719 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
4720 styles.
4721 (nsfont_open): Reenable the cache.
4722
47232008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4724
4725 * font.c (font_matching_entity): Reflect ATTRS in font selection.
4726 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
4727
47282008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
4729
4730 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
4731 a suspended terminal.
4732
47332008-09-30 Michael Albinus <michael.albinus@gmx.de>
4734
4735 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
4736
47372008-09-30 Eli Zaretskii <eliz@gnu.org>
4738
4739 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
4740
47412008-09-30 Chong Yidong <cyd@stupidchicken.com>
4742
4743 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
4744 in a continued line coincides with a line beginning.
4745
47462008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4747
4748 * nsfont.m (nsfont_trait_distance): Fix bug.
4749 (nsfont_list): Return a list rather than a vector (syncs with Handa
4750 changes of 2008-05-14).
4751 (nsfont_open): Improve logging.
4752
47532008-09-29 Andreas Schwab <schwab@suse.de>
4754
4755 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4756
47572008-09-28 Martin Rudalics <rudalics@gmx.at>
4758
4759 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
4760 name as char-resolve-modifiers.
4761 Reported by: Markus Triska <markus.triska@gmx.at>
4762
47632008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
4764
4765 * dispnew.c (init_display): Return earlier when running as a daemon.
4766
47672008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4768
4769 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
4770
47712008-09-27 Eli Zaretskii <eliz@gnu.org>
4772
4773 * composite.c (Fcomposition_get_gstring)
4774 (Fcompose_region_internal, Fcompose_string_internal)
4775 (Ffind_composition_internal): Doc fix.
4776 (syms_of_composite) <compose-chars-after-function>: Doc fix.
4777 (syms_of_composite) <auto-composition-function>: Doc fix.
4778 (syms_of_composite) <composition-function-table>: Doc fix.
4779
47802008-09-25 Chong Yidong <cyd@stupidchicken.com>
4781
4782 * search.c (wordify): New argument for lax word-ends.
4783 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
4784
47852008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
4786
4787 * lisp.h (is_daemon): Declare.
4788 * dispnew.c (init_display): Do not try to initialize the terminal
4789 when running as a daemon.
4790
47912008-09-22 Chong Yidong <cyd@stupidchicken.com>
4792
4793 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
4794 x_display_pixel_height.
4795
47962008-09-22 Martin Rudalics <rudalics@gmx.at>
4797
4798 * undo.c (record_point): Don't call Fundo_boundary for first
4799 change. (Bug#731)
4800
48012008-09-22 Juanma Barranquero <lekktu@gmail.com>
4802
4803 * emacs.c (Fdaemonp): Doc fix.
4804
48052008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
4806
4807 * emacs.c (main): Place #ifdef in the proper place.
4808
48092008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
4810
4811 * emacs.c (standard_args): Add --daemon.
4812 (main): Disconnect from the terminal when --daemon is passed.
4813 (is_daemon): New variable.
4814 (Fdaemonp): New function.
4815 (syms_of_emacs): Defsubr it.
4816
48172008-09-20 Chong Yidong <cyd@stupidchicken.com>
4818
4819 * xdisp.c (get_next_display_element): Handle string display
4820 correctly when checking for the end of a box run.
4821
48222008-09-20 Glenn Morris <rgm@gnu.org>
4823
4824 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
4825 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
4826 (Frename_file): Avoid copying to trash if a rename involves
4827 a delete. (Bug#964).
4828
48292008-09-20 Eli Zaretskii <eliz@gnu.org>
4830
4831 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
4832 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
4833 frames as well as termcap frames.
4834 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
4835 get_named_tty.
4836
48372008-09-19 Eli Zaretskii <eliz@gnu.org>
4838
4839 * process.c (procfs_system_process_attributes): Fix cmdline in
4840 case /proc/PID/cmdline is empty.
4841
4842 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
4843 x_display_pixel_height.
4844
48452008-09-19 Juanma Barranquero <lekktu@gmail.com>
4846
4847 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
4848
4849 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
4850 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
4851
48522008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
4853
4854 * dispextern.h (struct it): Move line_wrap away from the middle of
4855 bitfields. Move voffset in struct iterator_stack_entry after the
4856 bitfields. Move tab_width near after another short.
4857
48582008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
4859
4860 * frame.h (struct frame): Move alpha from the middle of bitfields.
4861
4862 * window.h (struct window): Move frozen_window_start_p after the
4863 rest of the bitfields to reduce padding.
4864
48652008-09-18 Chong Yidong <cyd@stupidchicken.com>
4866
4867 * xterm.h (x_display_info): Remove `height' and `width' members.
4868
4869 * nsterm.h (ns_display_info): Remove `height' and `width' members.
4870
4871 * w32term.h (w32_display_info): Remove `height', `width',
4872 `height_in', and `width_in' members.
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
b8ff72fa
SM
4879 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4880 New functions.
aac0c6e3
MR
4881 (w32_read_socket, x_calc_absolute_position): Use them.
4882 (w32_initialize_display_info, w32_term_init): Omit removed members
4883 of w32_display_info.
4884
b8ff72fa
SM
4885 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
4886 New functions.
4887 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 4888
b8ff72fa
SM
4889 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4890 New functions.
aac0c6e3
MR
4891 (x_calc_absolute_position): Use them.
4892 (x_term_init): Omit removed `height' and `width' members.
4893
4894 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
4895 (compute_tip_xy):
4896 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
4897 * xmenu.c (menu_position_func): Use x_display_pixel_height and
4898 x_display_pixel_width.
4899
49002008-09-18 Kenichi Handa <handa@m17n.org>
4901
4902 * composite.c (fill_gstring_header): Don't check FROM and TO here.
4903 (composition_compute_stop_pos): Fix handling of static composition.
4904 (Fcomposition_get_gstring): Check FROM and TO at first.
4905
49062008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4907
46e722a9 4908 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
4909 mixup (YAILOM).
4910
49112008-09-17 Chong Yidong <cyd@stupidchicken.com>
4912
4913 * indent.c (Fvertical_motion): Use position reported by iterator
4914 instead of PT for determining screen motion (bug#943).
4915
49162008-09-17 Romain Francoise <romain@orebokech.com>
4917
4918 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
4919
49202008-09-17 Kenichi Handa <handa@m17n.org>
4921
4922 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
4923
4924 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
4925 if necessary.
4926
49272008-09-16 Kenichi Handa <handa@m17n.org>
4928
4929 * coding.c (make_conversion_work_buffer): Avoid calling
4930 Fget_buffer_create if it is not necessary.
4931
49322008-09-15 Martin Rudalics <rudalics@gmx.at>
4933
4934 * window.c (Fselect_window): Don't update window_select_count and
4935 use_time when norecord is not nil.
4936
49372008-09-14 Kenichi Handa <handa@m17n.org>
4938
4939 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
4940 specpdl_ptr.
4941
49422008-09-12 Kenichi Handa <handa@m17n.org>
4943
4944 * indent.c (scan_for_column): Don't handle automatic composition
4945 if the current buffer is not associated with a window.
4946
4947 * composite.c (composition_reseat_it): If the current buffer is
4948 not associated with a window, ignore the automatic composition.
4949 (find_automatic_composition): Likewise.
4950
49512008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4952
4953 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
4954 (Fgpm_mouse_stop): Use it.
4955 * termhooks.h (close_gpm): Declare.
4956 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
4957 connection if Gpm_GetEvent fails.
4958
4959 * window.c (set_window_buffer): Always preserve current-buffer.
4960
49612008-09-12 Glenn Morris <rgm@gnu.org>
4962
4963 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
4964
49652008-09-11 Glenn Morris <rgm@gnu.org>
4966
4967 * charset.c (charset-map-path): Doc fix.
4968
49692008-09-10 Kenichi Handa <handa@m17n.org>
4970
4971 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
4972
4973 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
4974 compose a grapheme cluster with the preceding base glyph.
4975
4976 * composite.c (composition_compute_stop_pos): Fix previous change.
4977 Reset cmp_it->id to -1 at first.
4978
49792008-09-10 Glenn Morris <rgm@gnu.org>
4980
4981 * Makefile.in (character.o, chartab.o): Fix config.h typo.
4982
49832008-09-09 Chong Yidong <cyd@stupidchicken.com>
4984
4985 * keyboard.c (read_key_sequence): Reapply translation maps when
4986 switching keyboards.
4987
49882008-09-09 Kenichi Handa <handa@m17n.org>
4989
4990 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
4991 characters.
4992
4993 * composite.c (FORWARD_CHAR): Fix calculation
4994 of (POSITION).pos_byte.
4995 (composition_compute_stop_pos): Limit the search of composition to
4996 at most 500 characters ahead. If we reach the limit or find a
4997 newline, set cmp_it->ch to -2 and return 0.
4998 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
4999
50002008-09-08 Kenichi Handa <handa@m17n.org>
5001
5002 * indent.c (Fvertical_motion): Be sure to set
5003 it_overshoot_expected if it.cmp_it.id is non-negative.
5004
50052008-09-07 Andreas Schwab <schwab@suse.de>
5006
5007 * callproc.c (Fcall_process): Don't hold references to string data
5008 across garbage collection. Move initialisation of new_argv down
5009 to avoid compiler bug.
5010
50112008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5012
5013 * process.c (Fsystem_process_attributes): Doc fix.
5014
50152008-09-07 Chong Yidong <cyd@stupidchicken.com>
5016
5017 * callproc.c (Fcall_process): Canonicalize current directory name.
5018
5019 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5020 iterator advances to the next line if the current line ends in a
5021 continued tab.
5022
50232008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
5024
5025 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
5026 member to point to cmp_from.
5027
5028 * xdisp.c: Doc fix for references to gidx data member.
5029
50302008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5031
5032 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
5033
50342008-09-07 Kenichi Handa <handa@m17n.org>
5035
5036 * composite.c (FORWARD_CHAR): Check STOP after
5037 incrementing (POSITION).pos.
5038
50392008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5040
5041 * process.c (Fsystem_process_attributes): Doc fix.
5042
50432008-09-06 Chong Yidong <cyd@stupidchicken.com>
5044
5045 * keyboard.c (Ftop_level): Doc fix.
5046
50472008-09-06 Eli Zaretskii <eliz@gnu.org>
5048
5049 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
5050 minibuffer, don't let lower part of menu invade the echo area.
5051
5052 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
5053 "char *q" to access menu text and advance through it. Revert the
5054 change that displayed ">" instead of ASCII character 0x10.
5055
50562008-09-05 Eli Zaretskii <eliz@gnu.org>
5057
5058 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
5059 toggle boxes and radio buttons on MS-DOS as well.
5060
50612008-09-05 Kenichi Handa <handa@m17n.org>
5062
5063 * composite.c (autocmp_chars): Check lookback count.
5064 (composition_compute_stop_pos): Set cmp_it->lookback.
5065 (composition_reseat_it): Check lookback count.
5066 (struct position_record): New struct.
5067 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
5068 (find_automatic_composition): New function.
5069 (composition_adjust_point): Use find_automatic_composition.
5070
5071 * dispextern.h (struct composition_it): New member lookback.
5072
50732008-09-02 Chong Yidong <cyd@stupidchicken.com>
5074
5075 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
5076 if moving by a single line.
5077
50782008-09-02 Andreas Schwab <schwab@suse.de>
5079
5080 * xterm.c (x_delete_display): Fix merge error.
5081
5082 * fileio.c (Fexpand_file_name): Remove unused variables.
5083
50842008-09-02 Eli Zaretskii <eliz@gnu.org>
5085
5086 * fileio.c (Fexpand_file_name): Copy argument `name' into local
5087 storage on all platforms, not just on DOS_NT.
5088
50892008-09-02 Jason Rumney <jasonr@gnu.org>
5090
b8ff72fa
SM
5091 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
5092 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
5093
50942008-09-01 Chong Yidong <cyd@stupidchicken.com>
5095
5096 * xfaces.c (Finternal_set_alternative_font_family_alist)
5097 (Finternal_set_alternative_font_registry_alist): Properly copy
5098 entire alist structure.
5099
51002008-09-01 Kenichi Handa <handa@m17n.org>
5101
d66c0241 5102 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 5103 representative chars of the script is a vector.
d66c0241
JB
5104 (ftfont_list): Handle the case where the representative chars of
5105 the script is a vector.
aac0c6e3
MR
5106
5107 * character.c (syms_of_character): Docstring of
5108 script-representative-chars fixed.
5109
51102008-08-31 Eli Zaretskii <eliz@gnu.org>
5111
5112 * msdos.c (BUILD_CHAR_GLYPH): New macro.
5113 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
5114 the menu. Allocate larger buffer for `text', to account for
5115 possible ^C characters.
5116
51172008-08-31 Martin Rudalics <rudalics@gmx.at>
5118
5119 * xdisp.c (prepare_menu_bars): Don't call
5120 Vwindow_size_change_functions with arg Qt.
5121
51222008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
5123
5124 * font.h (font_range):
5125 * fileio.c (report_file_error):
46e722a9
SM
5126 * composite.c (composition_update_it): Yet another int/Lisp_Object
5127 mixup (YAILOM).
aac0c6e3
MR
5128
51292008-08-30 Glenn Morris <rgm@gnu.org>
5130
5131 * data.c (Fmake_variable_frame_local): Doc fix.
5132
5133 * frame.c (Fmodify_frame_parameters): Doc fix.
5134
51352008-08-30 Eli Zaretskii <eliz@gnu.org>
5136
5137 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
5138 needed by GetTokenInformation.
5139 (w32_system_process_attributes): Check return values of all system
5140 APIs.
5141
5142 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
5143 only when the state changes.
5144 (IT_update_begin, IT_update_end): Add termscript trace.
5145
5146 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
5147 clipboard is unavailable. Set dst to NULL if it doesn't point to
5148 malloc'ed data.
5149 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
5150 passing random values to xfree.
5151
5152 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 5153 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
5154
51552008-08-29 Jason Rumney <jasonr@gnu.org>
5156
5157 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
5158
51592008-08-29 Eli Zaretskii <eliz@gnu.org>
5160
5161 * composite.c (fill_gstring_body): Avoid compiler warnings.
5162
5163 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
5164 LGLYPH_SET_CODE to avoid compiler warnings.
5165
2ae37cf0 5166 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
5167
5168 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
5169
5170 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
5171 LGLYPH_SET_CODE.
5172
51732008-08-29 Kenichi Handa <handa@m17n.org>
5174
5175 * fileio.c (report_file_error): Don't downcase the first character
5176 of errstring if it is still unibyte.
5177
51782008-08-29 Kenichi Handa <handa@m17n.org>
5179
5180 These changes are to re-implement the automatic composition so
5181 that it doesn't use text properties.
5182
5183 * Makefile.in (ftfont.o): Depend on composite.h.
5184 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
5185
5186 * character.h (Vunicode_category_table): Extern it.
5187
5188 * character.c (Vunicode_category_table): New variable.
5189 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
5190
5191 * chartab.c (optimize_sub_char_table): Perform more greedy
5192 optimization.
5193
b8ff72fa
SM
5194 * composite.h (enum composition_method):
5195 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
5196 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
5197 (Vcomposition_function_table): Extern it.
5198 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
5199 (composition_gstring_put_cache, composition_gstring_from_id)
5200 (composition_gstring_p, composition_gstring_width)
5201 (composition_compute_stop_pos, composition_reseat_it)
5202 (composition_update_it, composition_adjust_point): Extern them.
5203 (Fcomposition_get_gstring): EXFUN it.
5204
d66c0241 5205 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
5206 (Vcomposition_function_table)
5207 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
5208 (gstring_hash_table, gstring_work, gstring_work_headers):
5209 New variables.
aac0c6e3
MR
5210 (gstring_lookup_cache, composition_gstring_put_cache)
5211 (composition_gstring_from_id, composition_gstring_p)
5212 (composition_gstring_width, fill_gstring_header)
5213 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
5214 (composition_reseat_it, composition_update_it)
b8ff72fa 5215 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
5216 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
5217 and gstring_work_headers. DEFVAR_LISP composition-function-table.
5218 Defsubr compostion_get_gstring.
5219
5220 * dispextern.h (struct glyph): New union u.cmp. Delete the member
5221 cmp_id.
5222 (struct glyph_string): Delete the member gidx. New members
5223 cmp_id, cmp_from, and cmp_to.
5224 (enum it_method): Delete GET_FROM_COMPOSITION.
5225 (struct composition_it): New struct.
5226 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
5227 Delete c, len, cmp_id, cmp_len in u.comp.
5228
5229 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 5230 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 5231 (enum lglyph_indices): Likewise.
b8ff72fa 5232 (font_range): Adjust extern.
aac0c6e3
MR
5233 (font_fill_lglyph_metrics): Extern it.
5234
5235 * font.c (QCf): New variable.
5236 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5237 (font_prepare_composition): Delete this function.
5238 (font_range): Type and arguments changed.
5239 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
5240 (font_fill_lglyph_metrics): New function.
b8ff72fa 5241 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 5242 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
5243 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
5244 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
5245
5246 * fontset.h (font_for_char): Extern it.
5247
5248 * fontset.c (font_for_char): New function.
5249
5250 * ftfont.c: Include composite.h.
5251 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 5252 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
5253
5254 * indent.c: Include composite.h and dispextern.h.
5255 (check_composition): Delete this function.
5256 (scan_for_column): Handle composition by
5257 composition_compute_stop_pos, composition_reseat_it, and
5258 composition_update_it.
5259 (compute_motion): Likewise.
5260 (Fvertical_motion): Fix checking of composition.
5261
5262 * keyboard.c (adjust_point_for_property): Check composition by
5263 composition_adjust_point.
5264
b8ff72fa 5265 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
5266 struct glyph_string.
5267
b8ff72fa
SM
5268 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
5269 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
5270 struct glyph.
5271 (produce_composite_glyph): Likewise.
5272
b8ff72fa
SM
5273 * w32term.c (x_draw_composite_glyph_string_foreground):
5274 Adjust for the change of struct glyph_string.
aac0c6e3
MR
5275 (x_draw_glyph_string): Likewise.
5276
5277 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
5278 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5279
5280 * xdisp.c: Include font.h.
5281 (it_props): Delete the entry for Qauto_composed.
5282 (init_iterator): Initialize it->cmp_it.id to -1.
5283 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 5284 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
5285 (handle_auto_composed_prop): Delete it.
5286 (handle_composition_prop): Handle only static composition.
5287 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
5288 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 5289 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
5290 (pop_it): Likewise.
5291 (get_next_element): Delete next_element_from_composition.
5292 (CHAR_COMPOSED_P): New macro.
5293 (get_next_display_element): For automatic composition, get a face
5294 from the font in the glyph-string.
5295 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 5296 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
5297 (next_element_from_string): Check if the character at the current
5298 position is composed by CHAR_COMPOSED_P.
5299 (next_element_from_buffer): Likewise.
d66c0241
JB
5300 (next_element_from_composition): Adjust for the change of struct it.
5301 Update it->cmp_it.
b8ff72fa
SM
5302 (dump_glyph): Adjust for the change of struct glyph.
5303 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
5304 it and struct glyph. Don't handle automatic composition here.
5305 (fill_gstring_glyph_string): New function.
5306 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 5307 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
5308 (BUILD_GSTRING_GLYPH_STRING): New macro.
5309 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
5310 automatic composition.
b8ff72fa 5311 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 5312 struct glyph.
b8ff72fa 5313 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 5314
b8ff72fa 5315 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
5316 the change of struct glyph_string.
5317 (x_draw_glyph_string): Likewise.
5318
53192008-08-29 Glenn Morris <rgm@gnu.org>
5320
5321 * buffer.c (word-wrap): Doc fix.
5322 * xdisp.c (truncate-partial-width-windows): Doc fix.
5323 Increase default to 50.
5324
53252008-08-29 Chong Yidong <cyd@stupidchicken.com>
5326
5327 * xdisp.c (update_tool_bar_unwind): New function.
5328 (update_tool_bar): Temporarily set selected frame before building
5329 tool-bar items.
5330
53312008-08-28 Michael Albinus <michael.albinus@gmx.de>
5332
5333 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
5334 snprintf, respectively.
5335 (xd_append_arg): Convert strings with Fstring_make_unibyte.
5336
53372008-08-28 Chong Yidong <cyd@stupidchicken.com>
5338
5339 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
5340 LDFLAGS to GNUstep CC invocation.
5341
53422008-08-27 Chong Yidong <cyd@stupidchicken.com>
5343
5344 * indent.c (Fvertical_motion): Revert last change. Handle the
5345 general case where we are moving forward, and PT spans multiple
5346 screen lines.
5347
5348 * eval.c (find_handler_clause): Temporarily increase
5349 max-lisp-eval-depth while printing the backtrace buffer, to
5350 guarantee that help-mode code can run.
5351
53522008-08-27 Eli Zaretskii <eliz@gnu.org>
5353
5354 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
5355 colors under -rv.
5356 (IT_set_frame_parameters): Don't swap foreground and background
5357 colors if `(reverse . t)' is present in the frame properties.
5358 (internal_terminal_init): Call init_frame_faces only for the
5359 initial frame.
5360
53612008-08-27 Andreas Schwab <schwab@suse.de>
5362
5363 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
5364
53652008-08-27 Andreas Schwab <schwab@suse.de>
5366
5367 * search.c (search_buffer): Set char_base to zero only at the end.
5368
53692008-08-27 Kenichi Handa <handa@m17n.org>
5370
b8ff72fa 5371 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
5372
53732008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
5374
5375 * xterm.c (x_term_init): Temporarily hide the partially
5376 initialized terminal while calling vendor-specific-keysyms.
5377
53782008-08-26 Eli Zaretskii <eliz@gnu.org>
5379
5380 * msdos.c (internal_terminal_init): Most initializations done only
5381 once, especially initial_screen_colors[] and termscript open.
5382
53832008-08-26 Chong Yidong <cyd@stupidchicken.com>
5384
5385 * eval.c (Fcondition_case): Doc fix.
5386
5387 * widgetprv.h (EmacsFramePart): Change font member to the new font
5388 struct.
5389
5390 * widget.c: Include character.h and font.h for XSETFONT.
5391 (setup_frame_gcs): Compute X font id from font struct, just once.
5392
53932008-08-26 Eli Zaretskii <eliz@gnu.org>
5394
5395 * term.c (get_named_tty): Fix last change.
5396
53972008-08-26 Chong Yidong <cyd@stupidchicken.com>
5398
5399 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 5400 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
5401
54022008-08-25 Eli Zaretskii <eliz@gnu.org>
5403
5404 * frame.c (do_switch_frame): Mark previously displayed frame as
5405 obscured for FRAME_MSDOS_P frames as well.
5406
54072008-08-24 Eli Zaretskii <eliz@gnu.org>
5408
5409 * frame.c (make_terminal_frame): Initialize f->terminal,
5410 f->terminal->reference_count, and scroll bars on MS-DOS as well.
5411 Set the top frame to newly created frame.
5412 (Fmake_terminal_frame): Reuse the_only_display_info.
5413
5414 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
5415 estimating available memory.
5416
b97439ce 54172008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
5418
5419 * nsterm.m (ns_draw_window_cursor): Don't call
5420 NSDisableScreenUpdates and NSEnableScreenUpdates on
5421 non-NS_IMPL_COCOA systems.
5422
54232008-08-23 Andreas Schwab <schwab@suse.de>
5424
5425 * process.c (procfs_system_process_attributes): Fix use of
5426 uninitialized variables.
5427
54282008-08-23 Eli Zaretskii <eliz@gnu.org>
5429
5430 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
5431
5432 * dispnew.c (init_display): Remove MS-DOS specific conditions for
5433 calling tty-set-up-initial-frame-faces.
5434
b8ff72fa
SM
5435 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
5436 Allow MSDOS frames along with X frames.
aac0c6e3
MR
5437
5438 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
5439 addition to output_termcap.
5440
5441 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
5442
5443 * termchar.h (FRAME_TTY): Support output_msdos_raw.
5444 (struct tty_display_info) [MSDOS]: Add fields related to mouse
5445 highlight.
5446
5447 * process.c [!subprocesses]: Define QCname.
5448 (syms_of_process): Intern and staticpro it.
5449
5450 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
5451 Adjust for changes in encoding/decoding routines.
5452 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
5453 encode_coding and decode_coding.
5454
b8ff72fa 5455 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
5456
5457 * dosfns.c: Include frame.h before termhooks.h.
5458 (dos_cleanup): Use CURTTY ()->termscript instead of a global
5459 variable termscript.
5460
5461 * s/msdos.h (USER_FULL_NAME): Define.
5462 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
5463
5464 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
5465 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
5466 pw->pw_gecos.
5467
5468 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
5469 SELECTED_FRAME as additional (1st) argument.
5470 (tty_read_avail_input): Handle output_msdos_raw in
5471 addition to output_termcap.
5472
5473 * msdos.c: Include frame.h before termhooks.h.
5474 (mouse_on, mouse_off, mouse_moveto, mouse_init)
5475 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
5476 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
5477 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
5478 (IT_set_terminal_modes, IT_reset_terminal_modes)
5479 (IT_set_frame_parameters): Use tty->termscript instead of a global
5480 variable termscript.
5481 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
5482 global variable terminal_coding. Don't refer to
5483 Vnonascii_translation_table.
5484 (internal_terminal_init): Set Vwindow_system in current_kboard.
5485 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
5486 Announce date and time of session start, if termscript is open.
5487 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
5488 term.c:init_tty). Open termscript only of not already open.
5489 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
5490 here instead of dos_ttraw. Don't initialize display if this is an
5491 initial tty. Don't set FRAME_FONT.
5492 (Vwindow_system_version): Bump to 23.
5493 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
5494 is available, set up mouse_position_hook.
5495 (dos_ttraw, IT_set_terminal_modes): If called with initial
5496 terminal, do nothing.
5497 (IT_set_frame_parameters): Handle the Qtty_type frame
5498 parameter by calling internal_terminal_init.
5499 (dos_set_window_size, show_mouse_face)
5500 (clear_mouse_face, IT_note_mode_line_highlight)
5501 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
5502 (dos_rawgetc): Use tty_display_info instead of x_display_info.
5503 (initialize_msdos_display): New function.
5504 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
5505 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
5506 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
5507 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 5508 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
5509 (request_sigio, unrequest_sigio): Don't define, now defined on
5510 sysdep.c.
5511 (IT_write_glyphs): Rewrite to use encode_terminal_code.
5512
5513 * term.c [MSDOS]: Include msdos.h.
5514 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
5515 conditional to DOS_NT. Allow only one call to this function in a
5516 session. Don't allocate a new struct tty_display_info; instead,
5517 reuse the_only_display_info. Call get_tty_size to get screen
5518 dimensions. Call init_baud_rate to set bad_rate.
5519 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
5520 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 5521 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
5522 (get_tty_terminal, get_named_tty, Ftty_type)
5523 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
5524 output_termcap.
b8ff72fa
SM
5525 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
5526 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 5527 only when subprocesses are supported.
aac0c6e3
MR
5528
5529 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
5530 f->output_data.x.
5531 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
5532 terminal devices.
5533
5582fbc7 5534 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
5535 x_output.
5536 (FRAME_FONT): Use output_data.tty.
5537 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
5538 (struct x_display_info): Rename from display_info. Update all users in
5539 msdos.c.
aac0c6e3 5540 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 5541 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
5542 (dos_ttraw): Update prototype.
5543
5544 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
5545 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
5546
55472008-08-23 Jason Rumney <jasonr@gnu.org>
5548
5549 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
5550 (fn_TIFFSetDirectory): New library function used.
5551 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
5552 (tiff_load): Use :index to select among multiple images. Set count
5553 property when multiple images exist.
5554 (gif_format): Use :index, not :image.
5555
55562008-08-23 Chong Yidong <cyd@stupidchicken.com>
5557
5558 * xdisp.c (try_scrolling): Check INT_MAX instead of
5559 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
5560 to obtain INT_MAX.
5561
55622008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
5563
5564 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
5565
55662008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
5567
5568 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
5569 GNUstep library location.
5570
55712008-08-21 Chong Yidong <cyd@stupidchicken.com>
5572
5573 * xfaces.c (x_update_menu_appearance): Check validity of menu font
5574 before using it.
5575
5576 * puresize.h (BASE_PURESIZE): Increase to 1250000.
5577
55782008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5579
5580 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
5581 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
5582 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
5583 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
5584 (EmacsApp-cursor_blink_handler): Remove declaration.
5585 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
5586 match 01 Feb 2008 changes in xterm.c.
5587 (ns_read_socket): Add cast to avoid warning.
5588 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
5589 GNUstep.
5590
55912008-08-20 Chong Yidong <cyd@stupidchicken.com>
5592
5593 * xselect.c (x_get_foreign_selection): Return nil if desired
5594 selection could not be obtained, instead of signalling an error.
5595
55962008-08-20 David Reitter <david.reitter@gmail.com>
5597
5598 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
5599 * nsterm.m: Remove ns-specific code for cursor blinking.
5600 (ns_draw_window_cursor): Clear cursor properly rather than
5601 redrawing the area. Respect width of bar cursors.
5602 These changes enable the use of generic blink-cursor-mode and
5603 generic cursor types in NS and support smooth cursor movements (do
5604 not blink off after command).
5605 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
5606 Nextstep, too.
5607
56082008-08-19 Kenichi Handa <handa@m17n.org>
5609
5610 * font.c (Vfont_log_deferred): New variable.
5611 (font_add_log): Check Vfont_log_deferred.
5612 (font_deferred_log): New function.
5613
5614 * font.h (font_deferred_log): Extern it.
5615
5616 * fontset.c (reorder_font_vector): Use encoding charset of fonts
5617 for sorting.
5618 (face_for_char): Use deferred log.
5619
56202008-08-18 Kenichi Handa <handa@m17n.org>
5621
5622 * fontset.c (face_for_char): Add font log.
5623
5624 * font.c (font_add_log): Add the font properties :script, :lang,
5625 and :otf in the log.
5626
56272008-08-17 Chong Yidong <cyd@stupidchicken.com>
5628
5629 * xdisp.c: Remove dead code.
5630 (handle_invisible_prop, next_overlay_string): Defer call to
5631 setup_for_ellipsis.
5632 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
5633
56342008-08-15 Chong Yidong <cyd@stupidchicken.com>
5635
5636 * xfaces.c (lookup_derived_face): Properly handle possible zero
5637 return value of get_lface_attributes.
5638 (merge_faces): Don't tell lookup_derived_face to signal an error
5639 if face is not found.
5640
5641 * dired.c (Fdirectory_files): Doc fix.
5642
5643 * process.c (make_process): Initialize kill_without_query struct
5644 member.
5645
56462008-08-15 Eli Zaretskii <eliz@gnu.org>
5647
5648 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
5649 Alternative calculation of totphys for Visual Studio 6.
5650
5651 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
5652
5653 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
5654 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
5655 All users changed.
5656 (stat): Only root directory passed to GetDriveType. Allow RAM
5657 disk as well as local fixed disk when w32-get-true-file-attributes
5658 is set to `local'.
5659 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
5660 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
5661 (w32_cached_id, w32_add_to_cache): New functions.
5662 (get_name_and_id): Look account names in the cache before calling
5663 lookup_account_sid.
5664 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
5665 New initialization flags.
5666 (globals_of_w32): Initialize them to zero.
5667 (w32_system_process_attributes): Use w32_cached_id and
5668 w32_add_to_cache.
5669
56702008-08-14 Lawrence Mitchell <wence@gmx.li>
5671
5672 * lread.c (Fread_char, Fread_char_exclusive): If no character
5673 event is read before timeout is reached, return nil, rather than
5674 converting to a number.
5675
56762008-08-14 Chong Yidong <cyd@stupidchicken.com>
5677
5678 * fns.c (use_dialog_box): Doc fix.
5679
5680 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
5681 on OS X.
5682
56832008-08-13 Chong Yidong <cyd@stupidchicken.com>
5684
5685 * frame.c (Qns_parse_geometry): New var.
5686 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
5687
56882008-08-11 Chong Yidong <cyd@stupidchicken.com>
5689
5690 * xdisp.c (x_produce_glyphs): Handle the case when font has no
5691 space character in calculating tabs.
5692
56932008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
5694
5695 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
5696
56972008-08-10 Glenn Morris <rgm@gnu.org>
5698
5699 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
5700 silence gcc "limited range of data type" warnings in some
5701 make_fixnum_or_float calls.
5702
57032008-08-09 Eli Zaretskii <eliz@gnu.org>
5704
5705 * w32.c (w32_system_process_attributes): If the process does not
5706 exist, return nil.
5707
5708 * w32.c: Include thelp32.h, psapi.h and coding.h.
5709 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
5710 declarations.
5711 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
5712 (Process32Next_Proc): New typedefs.
5713 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
5714 (g_b_init_process32_next, g_b_init_open_thread_token)
5715 (g_b_init_impersonate_self, g_b_init_revert_to_self)
5716 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
5717 (g_b_init_get_process_working_set_size)
5718 (g_b_init_global_memory_status_ex): New static variables.
5719 (globals_of_w32): Initialize them.
5720 (create_toolhelp32_snapshot, process32_first, process32_next)
5721 (open_thread_token, impersonate_self, revert_to_self)
5722 (get_process_memory_info, get_process_working_set_size)
5723 (global_memory_status, global_memory_status_ex): New wrapper
5724 functions.
5725 (w32_list_system_processes, w32_system_process_attributes)
5726 (enable_privilege, restore_privilege, ltime, process_times):
5727 New functions.
5728 (convert_time_raw): New function.
5729 (convert_time): Remove conversion of FILETIME into time in 100
5730 nsec units, call convert_time_raw instead.
5731
5732 * process.h (w32_list_system_processes, w32_system_process_attributes):
5733 Add prototypes.
5734 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
5735 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
5736 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
5737 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
5738
5739 * process.c (Fsystem_process_attributes): Doc fix.
5740
57412008-08-08 Chong Yidong <cyd@stupidchicken.com>
5742
5743 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
5744 a continued multi-char glyph; if so, advance to the actual glyph.
5745
57462008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
5747
5748 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
5749
5750 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
5751 (.m.o): Use it.
5752 * config.in: Regenerate.
5753
57542008-08-07 Chong Yidong <cyd@stupidchicken.com>
5755
5756 * xdisp.c (redisplay_window): Revert last change.
5757 (try_window): Check bottom scroll margin too.
5758
57592008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5760
5761 * config.in: Regenerate.
5762
5763 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
5764 -list-load-path-shadows'.
5765 (nsgui.h): Reduce number of things depending on it.
5766
57672008-08-06 Chong Yidong <cyd@stupidchicken.com>
5768
5769 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
5770 instead of window-end which does the wrong thing at eob.
5771 (try_cursor_movement): Minor optimization.
5772 (redisplay_window): If scroll margin is defined, don't assume
5773 window doesn't need scrolling.
5774
57752008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5776
5777 * config.in: Regenerate.
5778
5779 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
5780 (mostlyclean): Don't delete *.d under NS.
5781
5782 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
5783
57842008-08-06 Kenichi Handa <handa@m17n.org>
5785
5786 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
5787
57882008-08-06 Andreas Schwab <schwab@suse.de>
5789
5790 * config.in: Regenerate.
5791
57922008-08-05 Chong Yidong <cyd@stupidchicken.com>
5793
5794 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
5795 forcing a window start.
5796
5797 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
5798 (auto_save_1): Update modtime when auto-save-list-file-name is on.
5799
58002008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5801
5802 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
5803 argument.
5804
58052008-08-05 Juanma Barranquero <lekktu@gmail.com>
5806
5807 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
5808 <scroll-down-aggressively, before-change-functions>:
5809 <after-change-functions>: Reflow docstrings.
5810
58112008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5812 Ken Raeburn <raeburn@gnu.org>
5813
5814 Dock menu customization, based on a patch by Ken Raeburn, plus some
5815 other fixes.
5816 * nsmenu.m (dockMenu): New variable.
5817 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
5818
5819 * nsterm.h (dockMenu): Declare.
5820
5821 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
5822 (ns_term_init): Initialize dockMenu.
5823 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
5824 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
5825 left.
5826
5827 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
5828
58292008-08-04 Chong Yidong <cyd@stupidchicken.com>
5830
5831 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
5832
5833 * config.in: Regenerate.
5834
58352008-08-04 Seiji Zenitani <zenitani@mac.com>
5836
5837 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
5838
58392008-08-04 Chong Yidong <cyd@stupidchicken.com>
5840
5841 * nsterm.h (find_and_call_menu_selection): Fix prototype.
5842
58432008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5844
5845 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
5846
5847 * keyboard.h: Comment an #endif.
5848
5849 * lisp.h (have_menus_p): Adjust comment.
5850
5851 * menu.c (find_and_return_menu_selection): Fix comparison with
5852 client_data.
5853
5854 * nsmenu.m (popup_activated_flag): New variable.
5855 (popup_activated): New function.
5856 (menu-or-popup-active-p): New exported lisp definition.
5857 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
5858 when popup done.
5859 (ns_popup_dialog): Set popup_activated_flag.
5860
5861 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
5862 version for GNUstep (handled by conditional typedef in nsterm.m).
5863 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
5864 in rgb.txt).
5865
5866 * process.c (init_process): Use DARWIN_OS, not DARWIN.
5867
5868 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
5869
5870 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
5871
5872 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
5873 shortcircuit if popup_activated like GTK and X toolkit.
5874
5875 * m/inter386.h: Change DARWIN to DARWIN_OS.
5876
5877 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
5878 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
5879 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
5880 comment on NO_SOCK_SIGIO.
5881
58822008-08-03 Chong Yidong <cyd@stupidchicken.com>
5883
5884 * nsterm.m (windowDidResize): Remove stopModal call.
5885
58862008-08-03 Andreas Schwab <schwab@suse.de>
5887
5888 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
5889 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
5890
58912008-08-02 Chong Yidong <cyd@stupidchicken.com>
5892
5893 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
5894 Don't use uninitialized pointer variable when using getrlimit.
5895
58962008-08-02 Jason Rumney <jasonr@gnu.org>
5897
5898 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
5899
59002008-08-02 Eli Zaretskii <eliz@gnu.org>
5901
5902 * alloc.c (NSTATICS): Bump to 0x640.
5903
5904 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
5905
5906 * lisp.h: Add prototype for directory_files_internal.
5907
5908 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
5909 New functions.
5910 (syms_of_process): Defsubr them. Add initializations for various
5911 Q* symbols used in procfs_system_process_attributes.
5912 (procfs_list_system_processes, procfs_system_process_attributes)
5913 [HAVE_PROCFS]: New functions.
5914 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
5915 (procfs_get_total_memory): New functions.
5916
59172008-08-01 Juanma Barranquero <lekktu@gmail.com>
5918
5919 * xfaces.c (Fx_load_color_file): Fix previous change;
5920 it is #ifdef WINDOWSNT, not WINDOWS_NT.
5921
59222008-08-01 Michael Albinus <michael.albinus@gmx.de>
5923
5924 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
5925
59262008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5927
5928 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
5929
59302008-08-01 Chong Yidong <cyd@stupidchicken.com>
5931
5932 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
5933
5934 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
5935 define NSApplicationDelegateReplySuccess.
5936 (EmacsView -converstationIdentifier): Use long instead of
5937 NSInteger for GNUstep, since it doesn't have NSInteger.
5938
5939 * xmenu.c: Revert last change.
5940
5941 * keyboard.h: Fix last change.
5942
59432008-08-01 Juanma Barranquero <lekktu@gmail.com>
5944
5945 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
5946 on Windows.
5947
59482008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5949
5950 Warning clearing and clean-up in NS port.
5951 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
5952 Add prototypes.
5953 * nsgui.h (FACE_DEFAULT): Remove, unused.
5954 (XGCValues): Change colors to unsigned long.
5955 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
5956 nsterm.m.
5957 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
5958 (ns_list_fonts): Remove, unused.
5959 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
5960 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
5961 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
5962 (nsfont_draw): Compare face colors to 0, not nil.
5963 * nsmenu.m (struct widget_value): Drop unneeded declaration.
5964 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
5965 (-addSubmenuWithTitle:): Use NSMenuItem class.
5966 (ns_popup_menu): Use NO, not NULL, for enabled setting.
5967 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
5968 (ns_clip_to_row): Make gc arg a BOOL.
5969 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
5970 ns_clip_to_row() call.
5971 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
5972 used). Cast FRAME_FONT assignments.
5973 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
5974 (ns_string_to_lispmod): Change arg to const char.
5975 (ns_term_init): Use NSMenuItem class.
5976 (EmacsApp -openFile:): Move to different section of file.
5977 (EmacsApp -application:openFiles:): Don't return a value, call
5978 -replyToOpenOrPrint:.
5979 (EmacsView -keyDown:): Fix up cast.
5980 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
5981 (EmacsView -menuDown:): Cast tag in call to
5982 find_and_call_menu_selection().
5983 (ns_list_fonts): Remove, unused.
5984 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
5985 (ns_fontname_to_xlfd): Make static.
5986 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
5987 Remove prototypes (now in keyboard.h).
5988 (next_menubar_widget_id): Remove, unused.
5989 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
5990 Remove prototypes (now in keyboard.h).
5991 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
5992
59932008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
5994
5995 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
5996 (floatfns.o): Depend on syssignal.h.
5997 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
5998
5999 * systty.h: Fix previous change that removed BSD_TERMIOS.
6000 Add comments to #ifdefs.
6001
60022008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6003
6004 * w32fns.c (w32-load-color-file): Remove.
6005 (x-open-connection): Use renamed Fx_load_color_file.
6006 * xfaces.c (x-load-color-file): Add.
6007 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
6008 Emacs.clr.
6009 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
6010
60112008-07-31 Michael Albinus <michael.albinus@gmx.de>
6012
6013 * dbusbind.c (Fdbus_call_method_asynchronously)
6014 (Fdbus_method_error_internal): New defuns.
6015 (xd_read_message): Handle also reply messages.
6016 (Vdbus_registered_functions_table): Extend docstring.
6017
60182008-07-31 Juanma Barranquero <lekktu@gmail.com>
6019
6020 * keyboard.c (gobble_input): Fix previous change.
6021
60222008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6023
6024 * bitmaps/README:
6025 * xfns.c:
6026 * termcap.c:
6027 * term.c:
6028 * syswait.h:
6029 * systty.h:
6030 * systime.h:
6031 * syssignal.h:
6032 * sysdep.c:
6033 * process.h:
6034 * process.c:
6035 * print.c:
6036 * ndir.h:
6037 * lread.c:
6038 * keyboard.c:
6039 * getpagesize.h:
6040 * floatfns.c:
6041 * fileio.c:
6042 * emacs.c:
6043 * doc.c:
6044 * dispnew.c:
6045 * dired.c:
6046 * data.c:
6047 * callproc.c:
6048 * buffer.c:
6049 * README:
6050 * Makefile.in:
6051 * s/template.h:
6052 * s/msdos.h:
6053 * m/vax.h: Remove VMS support.
6054 * s/vms.h:
6055 * vlimit.h:
6056 * uaf.h:
6057 * temacs.opt:
6058 * param.h:
6059 * ioctl.h: Remove file.
6060
60612008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6062
6063 * s/ms-w32.h (MULTI_KBOARD): Remove.
6064 * xterm.c:
6065 * xselect.c:
6066 * xfns.c:
6067 * window.c:
6068 * w32term.c:
6069 * w32fns.c:
6070 * terminal.c:
6071 * termhooks.h:
6072 * term.c:
6073 * sysdep.c:
6074 * keyboard.h:
6075 * keyboard.c:
6076 * frame.h:
6077 * frame.c:
6078 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
6079 * config.in: Regenerate.
6080
60812008-07-30 Jason Rumney <jasonr@gnu.org>
6082
6083 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
6084
6085 * w32font.c (w32font_encode_char): Leave as unicode if in range.
6086 (w32font_open_internal): Get unicode version of textmetrics.
6087 Don't enable or disable glyph indices here.
6088 (w32font_open): Disable use of glyph indices.
6089
6090 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
6091
60922008-07-30 Chong Yidong <cyd@stupidchicken.com>
6093
6094 * minibuf.c (Vread_buffer_function): Doc fix.
6095
60962008-07-30 John Paul Wallington <jpw@pobox.com>
6097
6098 * minibuf.c (read_buffer_completion_ignore_case): New var.
6099 (Fread_buffer): Use it.
6100
61012008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
6102
6103 * systty.h (sensemode): Remove empty #if. Remove reference to
6104 BSD_TERMIOS, unused.
6105
6106 * sysdep.c: Remove reference to DGUX.
6107 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
6108
6109 * config.in: Regenerate.
6110
61112008-07-30 Jason Rumney <jasonr@gnu.org>
6112
6113 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
6114
61152008-07-29 Jason Rumney <jasonr@gnu.org>
6116
6117 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
6118 is populated.
6119 (uniscribe_encode_char): Always use uniscribe.
6120 Avoid using context if cache is populated.
6121
61222008-07-29 Jan Djärv <jan.h.d@swipnet.se>
6123
6124 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
6125 open menu.
6126
6127 * gtkutil.c (menu_nav_ended): Remove.
6128 (create_menus): Remove signal connect for menu_nav_ended.
6129
61302008-07-28 Chong Yidong <cyd@stupidchicken.com>
6131
6132 * xdisp.c (redisplay_window): Check return value of
6133 compute_window_start_on_continuation_line before forcing a window
6134 start.
6135
61362008-07-28 Jason Rumney <jasonr@gnu.org>
6137
6138 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
6139
6140 * w32term.c (w32_enable_unicode_output, cleartype_active):
6141 Remove obsolete display options.
6142 (x_draw_glyph_string_background): Don't use old cleartype_active
6143 workaround.
6144 (w32_initialize): Remove cleartype_active initialization.
6145 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
6146
61472008-07-28 Andreas Schwab <schwab@suse.de>
6148
6149 * lisp.h (init_weak_hash_tables, syms_of_font)
6150 (xd_read_queued_messages, syms_of_dbusbind): Declare.
6151 (remove_hash_entry): Don't declare.
6152 * eval.c (maybe_call_debugger): Make static and move before use.
6153 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
6154 * xdisp.c: Include "gtkutil.h" if USE_GTK.
6155 * xterm.h (x_set_frame_alpha): Declare.
6156
61572008-07-28 Jan Djärv <jan.h.d@swipnet.se>
6158
6159 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
6160 (create_menus): Connect selection-done to menu_nav_ended.
6161
61622008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6163
6164 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
6165 Set Vx_resource_name to a fallback. Replace read of 'buffered'
6166 parameter with read of 'alpha' one.
6167 (Qns_frame_parameter): Remove.
5582fbc7 6168 * nsselect.m (selection-coding-system)
aac0c6e3
MR
6169 (next-selection-coding-system, Vselection_coding_system)
6170 (Vnext_selection_coding_system): Drop.
6171
61722008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6173
6174 * nsfns.m (do-applescript, do_applescript): Rename to
6175 ns-do-applescript, ns_do_applescript, and move within file.
6176
61772008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
6178
6179 Remove support for Mac Carbon.
6180 * mactoolbox.c:
6181 * macterm.h:
6182 * macterm.c:
6183 * macselect.c:
6184 * macmenu.c:
6185 * macgui.h:
6186 * macfns.c:
6187 * mac.c: Remove file.
6188 * s/darwin.h:
6189 * m/intel386.h:
6190 * xfaces.c:
6191 * xdisp.c:
6192 * window.c:
6193 * tparam.c:
6194 * termhooks.h:
6195 * termcap.c:
6196 * term.c:
6197 * syssignal.h:
6198 * sysselect.h:
6199 * sysdep.c:
6200 * process.c:
6201 * lread.c:
6202 * lisp.h:
6203 * keyboard.c:
6204 * image.c:
6205 * fringe.c:
6206 * frame.h:
6207 * frame.c:
6208 * fontset.c:
6209 * font.h:
6210 * font.c:
6211 * fns.c:
6212 * fileio.c:
6213 * emacs.c:
6214 * dispnew.c:
6215 * dispextern.h:
6216 * config.in:
6217 * atimer.c:
2ae37cf0 6218 * Makefile.in: Remove code for Carbon.
aac0c6e3 6219
f0131492 62202008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
6221
6222 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
6223
62242008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6225
6226 * macterm.h (kCGBitmapByteOrder32Host): New define for
6227 non-universal SDKs.
6228
6229 * image.c (mac_create_cg_image_from_image, image_load_image_io)
6230 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6231
6232 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
6233 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6234
62352008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
6236
6237 * w32inevt.c: Include dispextern.h.
6238
62392008-07-26 Andreas Schwab <schwab@suse.de>
6240
6241 * print.c (print_object): Fix off-by-one in last change.
6242
62432008-07-25 Juanma Barranquero <lekktu@gmail.com>
6244
6245 * term.c (syms_of_term): Don't initialize default_orig_pair,
6246 default_set_foreground and default_set_background on Windows.
6247
62482008-07-25 Jason Rumney <jasonr@gnu.org>
6249
6250 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
6251 ScriptItemize. Clean up return value checking. Remove unused
6252 variables.
6253 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
6254 shaping engine.
6255
6256 * w32font.c (w32font_has_char): Handle the case where we can't
6257 determine the script for a character.
6258
62592008-07-25 Chong Yidong <cyd@stupidchicken.com>
6260
6261 * term.c (syms_of_term): Initialize default_orig_pair,
6262 default_set_foreground, and default_set_background.
6263
6264 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
6265 clash (bug#86).
6266 (getloadavg): Callers changed.
6267
6268 * image.c (svg_load_image): Fix last change.
6269 (svg_load_image): Use rsvg_handle_get_dimensions to check that
6270 image size is valid. Use g_object_unref instead of deprecated
6271 rsvg_handle_free to free rsvg handle.
6272 (x_from_xcolors): Don't initialize pixmap (silence compiler).
6273
62742008-07-25 Jason Rumney <jasonr@gnu.org>
6275
6276 * w32font.c (w32font_encode_char): Encode characters outside BMP as
6277 surrogates before looking up glyph index.
6278 (w32font_text_extents): Encode as surrogates if falling back to
6279 functions that need UTF-16 wide chars.
6280
6281 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
6282 BMP as surrogates before looking up glyph index.
6283
62842008-07-25 Chong Yidong <cyd@stupidchicken.com>
6285
6286 * image.c (svg_load_image): Check for failure in return value of
6287 rsvg_handle_get_pixbuf. Free rsvg handle when done.
6288
62892008-07-25 Jason Rumney <jasonr@gnu.org>
6290
6291 * w32font.c (Fx_select_font): Reverse sense of second arg.
6292
62932008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
6294
6295 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
6296 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
6297
6298 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
6299 (PURESIZE): Use it.
6300
63012008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
6302
6303 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
6304 * m/alpha.h (TEXT_END):
6305 * m/ibmrs6000.h (TEXT_END):
6306 * m/macppc.h (TEXT_END):
6307 * s/darwin.h (TEXT_END):
6308 * s/msdos.h (TEXT_END): Remove, unused.
6309 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
6310 * s/cygwin.h: Remove comment.
6311
6312 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
6313 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
6314 * m/intel386.h (DOT_GLOBAL_START):
6315 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
6316 (USG): Remove, file not used on USG platforms.
6317
6318 * Makefile.in (HAVE_X11): Remove empty #else.
6319
63202008-07-24 Andreas Schwab <schwab@suse.de>
6321
6322 * fileio.c (Finsert_file_contents): Properly adjust undo list
6323 after format conversion.
6324
63252008-07-24 Jan Djärv <jan.h.d@swipnet.se>
6326
6327 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
6328 (menu_nav_ended): Remove.
6329 (create_menus): Remove signal connect for menu_nav_ended.
6330 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
6331 create_menus.
6332 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
6333
63342008-07-23 Jason Rumney <jasonr@gnu.org>
6335
6336 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
6337 with opened font.
6338 (w32font_open): Set font type to gdi.
6339
6340 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
6341
63422008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
6343
6344 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
6345 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
6346 defines it.
6347 * unexec.c (ADDR_CORRECT): Define unconditionally.
6348
6349 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
6350
6351 * unexec.c: Remove code depending on !COFF and USG, the file is
6352 not used for such systems.
6353
6354 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
6355 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
6356 (LD_SWITCH_SYSTEM_1): Remove, update users.
6357
6358 * s/darwin.h (DATA_END):
6359 * m/intel386.h (DATA_END):
6360 * m/ibmrs6000.h (DATA_END):
6361 * m/alpha.h (DATA_END): Remove, unused.
6362
6363 * config.in: Regenerate.
6364 * s/ms-w32.h (subprocesses): Define unconditionally.
6365 * s/template.h (subprocesses): Update comment.
6366 * s/vms.h (subprocesses):
6367 * s/usg5-4.h (subprocesses):
6368 * s/hpux10-20.h (subprocesses):
6369 * s/gnu-linux.h (subprocesses):
6370 * s/cygwin.h (subprocesses):
6371 * s/bsd-common.h (subprocesses):
6372 * s/aix4-2.h (subprocesses):
6373 * s/darwin.h (subprocesses): Do not define, defined by default now.
6374
6375 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
6376 Remove all references.
6377 (temacs): Add GNUstep specific ld flags.
6378
6379 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
6380 similarly to what X does.
6381
63822008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6383
6384 * nsfns.m (x-list-fonts): Remove.
6385 (syms_of_nsfns): Drop the x-list-fonts declaration.
6386 * nsterm.m: Get rid of remaining "//" comments.
6387
63882008-07-22 Chong Yidong <cyd@stupidchicken.com>
6389
6390 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
6391
6392 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
6393 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
6394 (Fns_own_selection_internal, Fx_disown_selection_internal)
6395 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
6396
6397 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
6398 ... */' style of docstrings. Doc fixes.
6399
64002008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6401
6402 * terminfo.c (UP, BC, PC): Undo previous change.
6403
6404 * nsfns.m: Rename ns prefixed functions/variables to the
6405 corresponding x versions. Update references.
6406
64072008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
6408
6409 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
6410
64112008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6412
6413 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
6414 Remove forwarding functions.
6415 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
6416 non-static.
6417 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
6418 non-static.
6419 (ns_frame_parm_handlers): Use the new names.
6420 (syms_of_nsfns): Move to the end of file.
6421
6422 * nsterm.m (syms_of_nsterm): Move to the end of file.
6423
6424 * dispnew.c (init_display): Remove code for X10.
6425
64262008-07-22 Jason Rumney <jasonr@gnu.org>
6427
6428 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
6429 bare drive.
6430
64312008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6432
6433 * nsterm.m (syms_of_nsterm): Remove debugging println.
6434
64352008-07-22 David Reitter <david.reitter@gmail.com>
6436
6437 * nsfns.m (do_applescript, F_do_applescript): NS version of the
6438 Carbon implementation of the same functionality: execute arbitrary
6439 AppleScript code.
6440
64412008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6442
6443 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
6444 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
6445 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
6446 (Fx_display_mm_height, Fx_display_mm_width)
6447 (Fx_display_backing_store, Fx_display_visual_class)
6448 (Fx_display_save_under, Fx_open_connection)
6449 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
6450 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
6451 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6452 (Fx_display_pixel_width, Fx_display_pixel_height)
6453 (Fx_display_usable_bounds, Fx_display_planes)
6454 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
6455 ... */' style of docstrings.
6456
64572008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
6458
6459 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
6460 on this platform.
6461 (mips):
6462 * m/iris4d.h (mips): Do not define.
6463 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
6464
6465 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
6466
6467 * image.c:
6468 * nsfns.m:
6469 * nsselect.m:
6470 * nsterm.h:
6471 * nsterm.m: Rename ns prefixed functions/variables to the
6472 corresponding x versions. Update references.
6473
6474 * m/ibms390x.h (NO_REMAP): Do not undefine.
6475
6476 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
6477
64782008-07-21 Chong Yidong <cyd@stupidchicken.com>
6479
6480 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
6481 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
6482 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
6483 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
6484 (Fns_display_mm_height, Fns_display_mm_width)
6485 (Fns_display_backing_store, Fns_display_visual_class)
6486 (Fns_display_save_under, Fns_open_connection)
6487 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
6488 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
6489 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6490 (Fns_display_pixel_width, Fns_display_pixel_height)
6491 (Fns_display_usable_bounds, Fx_display_planes)
6492 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
6493
64942008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
6495
6496 * print.c (print_object): Check print_depth before searching for
6497 circularities.
6498
64992008-07-21 Michael Albinus <michael.albinus@gmx.de>
6500
6501 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
6502 only sprintf.
6503
65042008-07-21 Kenichi Handa <handa@m17n.org>
6505
6506 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
6507
65082008-07-20 Andreas Schwab <schwab@suse.de>
6509
6510 * syntax.c (find_start_pos, find_start_value)
6511 (find_start_value_byte, find_start_begv, find_defun_start)
6512 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
6513
65142008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6515
6516 * s/sol2-3.h: Insert contents of s/sol2.h.
6517 (LD_SWITCH_SYSTEM): Remove redundant definition.
6518 * s/sol2.h: Remove, unused.
6519
65202008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6521
6522 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
6523
65242008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6525
6526 * Makefile.in (ns_appdir): Fix typo in find command.
6527
65282008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6529
6530 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
6531
6532 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
6533 added not supported anymore.
6534
6535 * s/usg5-4-2.h (LIBS_SYSTEM):
6536 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
6537
6538 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6539 * s/lynxos.h (GETPGRP_NO_ARG):
6540 * s/hpux10-20.h (NO_SIOCTL_H):
6541 * s/gnu.h (GETPGRP_NO_ARG):
6542 * s/gnu-linux.h (NO_SIOCTL_H):
6543 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6544 * s/cygwin.h (GETPGRP_NO_ARG):
6545 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
6546 (C_DEBUG_SWITCH): Remove duplicate definition.
6547
6548 * m/ibms390.h: Remove boilerplate comments.
6549
6550 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
6551
6552 * process.c (HAVE_SERIAL): Consolidate ifdefs.
6553 (wait_reading_process_output): Remove code for SunOS, platform not
6554 supported anymore. Use SOLARIS2 instead of sun.
6555
65562008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6557
6558 * font.c (font_open_by_name): Under NS, default lface height to zero.
6559 (font_open_for_lface): Under NS, set size based on frame fontsize.
6560 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
6561 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
6562
65632008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6564
6565 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
6566 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
6567 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
6568 YES/NO.
6569 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
6570 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
6571 * Makefile.in (clean): Clear out build destination dir.
6572
65732008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6574
6575 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
6576 xterm, xselect.
6577 * lisp.h: Remove declaration of hash_remove.
6578 * nsgui.h: Remove redefinitions of hash_remove.
6579 * fns.c (hash_remove): Rename to hash_remove_from_table.
6580
65812008-07-19 Seiji Zenitani <zenitani@mac.com>
6582
6583 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
6584 strdup() the family UTF8String before modifying it.
6585
65862008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6587
6588 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
6589 NS_FACE_BACKGROUND with 0 instead of nil.
6590 * nsfont.m (nsfont_draw): Same.
6591
65922008-07-19 Chong Yidong <cyd@stupidchicken.com>
6593
6594 * nsfns.m (ns_set_background_color): Fix crash.
6595
65962008-07-18 Chong Yidong <cyd@stupidchicken.com>
6597
6598 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
6599
66002008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
6601
6602 * puresize.h (BASE_PURESIZE): Increase to 1240000.
6603
66042008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6605
6606 * gtkutil.c: Include <config.h> instead of "config.h".
6607
6608 * lisp.h (Foverlay_buffer): Add EXFUN.
6609
6610 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
6611 child process to complete child_setup. Undo 2005-09-21 change.
6612
6613 * s/darwin.h: Mention setsid after vfork.
6614
66152008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6616
6617 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
6618 Depend on macgui.h.
6619
6620 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
6621 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
6622
6623 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
6624 and f19.
6625 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
6626
6627 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
6628 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
6629 Remove enumerators.
6630
6631 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
6632 Check if FACE_FROM_ID returns NULL.
6633
66342008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
6635
6636 * w32inevt.c (change_frame_size): Remove extern declaration.
6637 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
6638 change_frame_size.
6639
66402008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6641
6642 * getloadavg.c: Revert last change (2008-07-15).
6643
66442008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6645
6646 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
6647 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
6648 from configure.
6649
66502008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
6651
6652 * s/sol2.h:
6653 * s/sol2-4.h: Reorganize conditionals.
6654
6655 * ecrt0.c: Remove code depending on m68000, not used anymore.
6656
6657 * fns.c (hash_remove): Make static.
6658 * lisp.h (hash_remove): Don't prototype.
6659
6660 * m/ibmrs6000.h:
6661 * m/ibms390x.h:
6662 * m/macppc.h: Remove boilerplate comments.
6663
6664 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
6665 Solaris, which does not need them.
6666
6667 * m/vax.h: Remove comments about unsupported systems.
6668
6669 * s/darwin.h: Reorganize ifdefs.
6670
66712008-07-17 Andreas Schwab <schwab@suse.de>
6672
6673 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
6674
66752008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
6676
6677 Use SDATA. Follow coding convention of placing operators at
6678 beginning of next line rather than end of previous line, and placing
6679 spaces around infix operators.
6680
6681 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
6682 in case it was defined already.
6683 USE @GNUSTEP_MAKEFILES@ rather than envvars.
6684 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
6685 ns_default.
6686 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
6687 Lisp_Objects.
6688 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
6689 (ns_defined_color, ns_color_to_lisp): Declare.
6690 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
6691 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
6692 it's accepted even with USE_LISP_UNION_TYPE.
6693 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
6694 (update_frame_tool_bar): Remove apparently obsolete tests for
6695 non-integerness of f->tool_bar_lines.
6696 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
6697 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
6698 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
6699 (nsfont_open): Don't confuse NULL for Qnil.
6700 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
6701 * menu.h (find_and_call_menu_selection):
6702 * menu.c (find_and_call_menu_selection): Use just int for vector size.
6703 (find_and_return_menu_selection): Always return something.
6704 * frame.h: Include dispextern.h for Display_Info.
6705 (display_x_get_resource): Declare.
6706
67072008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
6708
6709 * syntax.c: Remove stdio.h include accidentally introduced in
6710 Emacs.app commit.
6711 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
6712 NS_IMPL_COCOA.
6713 * keyboard.c (handle_async_input, input_available_signal): Remove
6714 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
6715
67162008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6717
6718 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
6719 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
6720 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
6721 Use SDATA.
6722
6723 * keymap.c: Remove all NS-specific code.
6724 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
6725 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
6726 where_is_preferred_modifier, return a different value depending on how
6727 preferred is the binding.
6728 (where_is_internal): Adjust accordingly.
6729 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
6730 Adjust to new preferred_sequence_p.
6731 (syms_of_keymap): Declare `where-is-preferred-modifier'.
6732 * keyboard.c (parse_solitary_modifier): Not static any more.
6733 * keyboard.h (parse_solitary_modifier): Declare.
6734
67352008-07-16 Andreas Schwab <schwab@suse.de>
6736
6737 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
6738 of easymenu.
6739
67402008-07-16 Chong Yidong <cyd@stupidchicken.com>
6741
6742 * xdisp.c (move_it_in_display_line): Account for word wrap, so
6743 that we don't move off the line.
6744
67452008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6746
6747 * keyboard.c (Qsuper): Remove.
6748 (parse_menu_item): Don't call where_is_internal specially for NS.
6749
67502008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6751
6752 * s/gnu-linux.h: Remove boilerplate comments.
6753
6754 * m/alpha.h (__ELF__): Consolidate conditions.
6755
6756 * m/m68k.h (linux): Use GNU_LINUX instead.
6757 Remove boilerplate comments.
6758
6759 * m/intel386.h: Undo refactoring from previous change.
6760 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
6761 too, remove dead code.
6762 (linux): Use GNU_LINUX instead.
6763
67642008-07-16 Jason Rumney <jasonr@gnu.org>
6765
6766 * w32gui.h: Repeat 26 June changes lost by last change.
6767
67682008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6769
6770 * systty.h: Remove code for Aix on 386, unsupported platform.
6771
6772 * s/ms-w32.h: Remove boilerplate comments.
6773 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
6774
6775 * s/gnu-linux.h (TERM): Remove support.
6776 (HAVE_SYSVIPC): Remove, unused.
6777 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
6778 for this system.
6779
6780 * process.c: Remove support for IRIS, unused.
6781 Remove support for TERM, not relevant anymore.
6782
6783 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
6784 used with the definition.
6785
6786 * s/aix4-2.h (static): Do not undef.
6787
6788 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
6789 only used on Aix.
6790 (HAVE_SYSVIPC): Remove, unused.
6791
6792 * m/hp800.h (CANNOT_DUMP): Do not undef.
6793
6794 * m/alpha.h: Fix comment.
6795
6796 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
6797 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
6798 used by this configuration.
6799 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
6800 * unexec.c: Remove code depending on HPUX and
6801 USG_SHARED_LIBRARIES, not used with this file. Remove code
6802 depending on IRIS, unused. Remove if 0-ed code.
6803
6804 * s/template.h: Remove comments about static.
6805
6806 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
6807 Remove if 0-ed code.
6808 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
6809 were the same as the default.
6810 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
6811 Remove boilerplate comments.
6812 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
6813 (HAVE_SYSVIPC): Remove, unused.
6814 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
6815
6816 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6817 Remove boilerplate comments.
6818 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6819 Remove boilerplate comments.
6820 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6821 Remove boilerplate comments.
6822 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
6823
6824 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
6825 USG systems which do not use DATA_SEG_BITS.
6826 Refactor code. Remove boilerplate comments.
6827
6828 * m/ibms390.h:
6829 * m/m68k.h:
6830 * s/bsd-common.h:
6831 * s/cygwin.h:
6832 * s/darwin.h:
6833 * s/freebsd.h:
6834 * s/gnu.h:
6835 * s/msdos.h: Remove boilerplate comments.
6836
6837 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 6838 do not use this file.
aac0c6e3
MR
6839 (IRIS_4D): Remove, unused.
6840
6841 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 6842 do not use this file.
aac0c6e3
MR
6843 (SIGN_EXTEND_CHAR):
6844 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
6845 * unexmips.c: Remove file, unused.
6846
6847 * editfns.c (Fuser_full_name): Replace the only use of
6848 USER_FULL_NAME with its value.
6849 * config.in: Regenerate.
6850
68512008-07-16 David Reitter <david.reitter@gmail.com>
6852
6853 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
6854 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6855
68562008-07-16 Glenn Morris <rgm@gnu.org>
6857
6858 * emacs.c (system-type): Doc fix.
6859
68602008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
6861
6862 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
6863 If the cache doesn't work, let's fix it, rather than work around it.
6864
68652008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6866
6867 * Makefile.in: Correct additions for nsfont.o in last commit.
6868 * nsfont.m: New file (forgot last commit).
6869
68702008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6871
6872 * callproc.c (set_initial_environment): Initialize
6873 Vprocess_environment under CANNOT_DUMP (fixes crash when
6874 batch-compiling for bootstrap).
6875
68762008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6877 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6878
6879 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
6880 fix crash due to different init order.
6881
68822008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6883
6884 Changes and additions for NeXTstep windowing system (Cocoa and
6885 GNUstep) support.
6886
6887 * Makefile.in:
6888 * config.in: Support defines and build commands for NS port.
6889 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
6890 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
6891 * dispextern.h: Include nsgui.h and add needed typedefs under NS
6892 windowing.
6893 (struct face): Add synth_ital field.
6894 * dispnew.c: Include nsterm.h when compiling under NS windowing.
6895 (init_display): Initialize Vinitial_window_system to "ns" when so
6896 compiled.
6897 * emacs.c: Include GSConfig.h when compiling under GNUstep.
6898 (display_arg): Use under NS.
6899 (main): Under NS, allocate autorelease pool and handle command line
6900 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
6901 (standard_args): Add NS-specific args.
6902 (shut_down_emacs): Shut down NS terminal if compiled under NS.
6903 * font.c (DEFAULT_ENCODING): New variable.
6904 (font_find_for_lface): Use it.
6905 (syms_of_font): Load syms_of_nsfont under NS.
6906 * font.h: Declare nsfont_driver when compiled under NS.
6907 * fontset.c: When compiling under NS, include nsterm.h.
6908 (fontset_from_font): Autoconstruct fontset under NS.
6909 * frame.c (various): Under NS, include nsterm.h, add Qns window system
6910 symbol, document and use it.
6911 (do_switch_frame): When for_deletion under Cocoa, add
6912 Fraise_frame(Qnil).
6913 (x_set_frame_parameters): Ensure font attribute changes are picked up.
6914 (x_get_arg): Allow "yes" and "no" as boolean values.
6915 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
6916 Qright under Cocoa.
6917 (focus-follows-mouse): Default to 0 under NS.
6918 * frame.h (enum output_method): Add output_ns.
6919 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
6920 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
6921 (FRAME_WINDOW_P): NS-specific definition.
6922 * fringe.c (max_used_fringe_bitmap): Make public.
6923 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
6924 (getloadavg): Use NeXT code under descendant OS's.
6925 * image.c (includes and header section, x_create_bitmap_from_data)
6926 (x_create_bitmap_from_file, free_bitmap_record, image_background)
6927 (image_background_transparent, x_clear_image_1)
6928 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6929 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
6930 (x_to_xcolors, x_from_xcolors, x_disable_image)
6931 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
6932 other GUIs, including XPM support using code originally written for
6933 Carbon GUI.
6934 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
6935 using NS API.
6936 (image_ascent): Use font metrics macros instead of direct struct field
6937 access.
6938 * keyboard.c (includes): Add nsterm.h when compiling under NS.
6939 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
6940 Also, handle NS as GTK for menu bar purposes.
6941 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
6942 toolkit where they differ.
6943 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
6944 use cachelist, still needed under NS.
6945 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
6946 (struct widget_value): Define it here for menu.c.
6947 * keymap.c (includes): Include modifier internals.
6948 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
6949 NS.
6950 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
6951 support for preferring sequences using certain modifiers, specified by
6952 the FIRSTONLY argument.
6953 * lisp.h (hash_remove): Rename to avoid name clash when compiling
6954 under NS GNUstep implementation.
6955 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
6956 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
6957 * menu.c: Include nsterm.h under NS.
6958 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
6959 (free_menubar_widget_tree_value, update_submenu_strings)
6960 (find_and_call_menu_selection): Treat NS as X and NT.
6961 (find_and_return_menu_selection): New function, used for popup menus.
6962 * nsgui.h:
6963 * nsterm.h:
6964 * nsfns.m:
6965 * nsimage.m:
6966 * nsmenu.m:
6967 * nsselect.m:
6968 * nsterm.m: New files.
6969 * process.c (wait_reading_process_output): Under NS, call ns_select()
6970 instead of plain select().
6971 * syntax.c (char_quoted): Under NS, avoid a crash when called near
6972 beginning of buffer.
6973 * sysselect.h (init_process): Rename when compiling under Cocoa to
6974 avoid name conflict.
6975 * termhooks.h (display_info): Add ns_display_info to union.
6976 * terminal.c (Fterminal_live_p): Add ns to terminal types.
6977 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
6978 COCOA environment.
6979 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
6980 unexec() signature. (Note, this will dump, but the resulting file
6981 crashes; unexosx is used instead; keeping around for reference and
6982 possible aid in getting dump working under GNUstep.)
6983 * w32gui.h (button_type, widget_value): Remove definitions (now in
6984 keyboard.h).
6985 * window.c: Include nsterm.h when compiling under NS.
6986 * xdisp.c (includes): Include nsterm.h when compiling under NS.
6987 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
6988 other GUI windowing systems.
6989 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
6990 GTK.
6991 (x_consider_frame_title): Under NS, set icon type and frame
6992 modified-state indicator; use ns_set_name_as_filename() when using
6993 formatted title.
6994 (update_window_cursor): Make public when compiling under NS.
6995 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
6996 (hourglass_atimer, Vhourglass_delay
6997 * xfaces.c (header section, init_frame_faces, clear_font_table)
6998 (defined_color, unload_color, x_face_list_fonts)
6999 (prepare_face_for_display): Add NS support parallel to other GUIs.
7000 Emulate GCs like other non-X GUIs.
7001 (split_font_name): Don't lowercase font name under NS.
7002 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
7003 under NS.
7004 * s/darwin.h: Add support for compilation under NS.
7005
70062008-07-15 Jason Rumney <jasonr@gnu.org>
7007
7008 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
7009 (w32_show_hourglass): Rename from show_hourglass.
7010 (w32_hide_hourglass): Rename from hide_hourglass.
7011 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
7012 (Vhourglass_delay): Declare extern.
7013 (hourglass_started): Remove.
7014
7015 * xdisp.c (Vhourglass_delay): Remove static.
7016 (hourglass_started, start_hourglass, cancel_hourglass):
7017 Don't include these versions on WINDOWSNT.
7018
70192008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7020
7021 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7022 variables (formerly in xfns.c).
7023 (show_hourglass, hide_hourglass): New prototypes (same).
7024 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
7025 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
7026 in xfns.c).
7027 (syms_of_xdisp): Declare/initialize display-hourglass,
7028 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
7029 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
7030 formerly in xfns.c.
7031 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7032 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7033 (start_hourglass, cancel_hourglass): Remove.
7034 (show_hourglass, hide_hourglass): Remove prototypes and static
7035 modifiers.
7036 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
7037 hourglass_atimer, hourglass_shown_p declaration/initialization.
7038 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7039 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7040 (start_hourglass, cancel_hourglass): Remove.
7041 (show_hourglass, hide_hourglass): Remove prototypes and static
7042 modifiers.
7043 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
7044 hourglass_atimer, hourglass_shown_p declaration/initialization.
7045 * w32fns.c (display_hourglass_p, Vhourglass_delay)
7046 (DEFAULT_HOURGLASS_DELAY): Remove.
7047 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
7048 hourglass_shown_p declaration/initialization.
7049
70502008-07-14 Jason Rumney <jasonr@gnu.org>
7051
7052 * w32fns.c (w32_get_arg): Remove wrapper function.
7053 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
7054 directly.
7055 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
7056
70572008-07-14 Kenichi Handa <handa@m17n.org>
7058
7059 * xfont.c (xfont_open): Add workaround for X's bug.
7060
70612008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7062
7063 * fontset.c: Include <stdio.h> unconditionally.
7064
70652008-07-13 Michael Albinus <michael.albinus@gmx.de>
7066
7067 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
7068 for filtering.
7069
70702008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
7071
7072 * s/vms.h: Use __GNUC__ instead of _GNUC_.
7073
7074 * m/macppc.h:
7075 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
7076
7077 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
7078 (SPECIAL_EMACS_INT):
7079 * m/ia64.h (SPECIAL_EMACS_INT):
7080 * m/amdx86-64.h (SPECIAL_EMACS_INT):
7081 * s/gnu.h (NLIST_STRUCT):
7082 * s/aix4-2.h (X11R5_INHIBIT_I18N):
7083 * s/gnu-linux.h (LINUX):
7084 * s/msdos.h (HAVE_FACES):
7085 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
7086
7087 * systty.h:
7088 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
7089 anymore.
7090
70912008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
7092
7093 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
7094 always defined as int.
7095
7096 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
7097 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
7098 * s/gnu-linux.h (HAVE_WAIT_HEADER):
7099 * s/freebsd.h (HAVE_WAIT_HEADER):
7100 * s/bsd-common.h (HAVE_UNION_WAIT):
7101 * s/aix4-2.h (HAVE_WAIT_HEADER):
7102 * m/mips.h (HAVE_UNION_WAIT):
7103 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
7104 (COFF, static): Do not define, they are undefined later in the file.
7105
7106 * process.c (update_status): Don't use a union.
7107 (status_convert):
7108 (sigchld_handler): Use int instead of WAITTYPE.
7109
71102008-07-12 Chong Yidong <cyd@stupidchicken.com>
7111
7112 * indent.c (Fvertical_motion): Restore hscroll before moving to
7113 goal column.
7114
71152008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7116
7117 * lisp.h: Remove left over code.
7118
71192008-07-11 Andreas Schwab <schwab@suse.de>
7120
7121 * lisp.h: Fix logic in last change.
7122
7123 * menu.h: New file.
7124 * menu.c: Include it.
7125 * xmenu.c: Likewise.
7126 * Makefile.in: Update dependencies.
7127
71282008-07-11 Kenichi Handa <handa@m17n.org>
7129
7130 * fontset.c (fontset_from_font): Cancel the previous change.
7131
71322008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7133
7134 * lisp.h:
7135 * w32heap.c:
7136 * emacs.c:
7137 * alloc.c: Replace all references of NO_UNION_TYPE with
7138 USE_LISP_UNION_TYPE.
7139
7140 * m/xtensa.h (NO_UNION_TYPE):
7141 * m/vax.h (NO_UNION_TYPE):
7142 * m/template.h (NO_UNION_TYPE):
7143 * m/sparc.h (NO_UNION_TYPE):
7144 * m/mips.h (NO_UNION_TYPE):
7145 * m/macppc.h (NO_UNION_TYPE):
7146 * m/m68k.h (NO_UNION_TYPE):
7147 * m/iris4d.h (NO_UNION_TYPE):
7148 * m/intel386.h (NO_UNION_TYPE):
7149 * m/ibms390x.h (NO_UNION_TYPE):
7150 * m/ibms390.h (NO_UNION_TYPE):
7151 * m/ibmrs6000.h (NO_UNION_TYPE):
7152 * m/ia64.h (NO_UNION_TYPE):
7153 * m/hp800.h (NO_UNION_TYPE):
7154 * m/arm.h (NO_UNION_TYPE):
7155 * m/amdx86-64.h (NO_UNION_TYPE):
7156 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
7157 defining it the same.
7158
71592008-07-10 Chong Yidong <cyd@stupidchicken.com>
7160
7161 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
7162
71632008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7164
7165 * fileio.c:
7166 * sysdep.c
7167 * systty.h:
7168 * m/ibmrs6000.h:
7169 * m/iris4d.h:
7170 * s/aix4-2.h:
7171 * s/freebsd.h:
7172 * s/gnu-linux.h:
7173 * s/hpux10-20.h:
7174 * s/hpux11.h:
7175 * s/netbsd.h:
7176 * s/sol2-3.h:
7177 * s/sol2-4.h:
7178 * s/sol2.h:
7179 * s/usg5-4.h:
7180 * s/vms.h: Remove references to unused variables.
7181
71822008-07-10 Andreas Schwab <schwab@suse.de>
7183
7184 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
7185 pattern before matching the generic family.
7186
71872008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7188
7189 * unexec.c:
7190 * s/vms.h:
7191 * s/usg5-4-2.h:
7192 * s/sol2-5.h:
7193 * s/freebsd.h:
7194 * s/darwin.h: Remove dead code.
7195
7196 * m/template.h:
7197 * m/sparc.h:
7198 * m/mips.h:
7199 * m/m68k.h:
7200 * m/iris4d.h:
7201 * m/intel386.h:
7202 * m/ibms390x.h:
7203 * m/ibms390.h:
7204 * m/ia64.h:
7205 * m/hp800.h:
7206 * m/arm.h:
7207 * m/amdx86-64.h: Remove dead code and references to unused
7208 and compiler defined symbols.
7209
7210 * unexmips.c:
7211 * unexelf.c: Remove references to desupported systems.
7212
7213 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
7214
7215 * m/powermac.h: Remove boilerplate comments.
7216 (NO_REMAP): Remove unused definition.
7217
7218 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
7219 define them.
7220
72212008-07-10 Kenichi Handa <handa@m17n.org>
7222
7223 * xfont.c (xfont_open): Log the reason of failure.
7224
72252008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
7226
7227 * fontset.c (fontset_get_font_group):
7228 * font.c (font_check_otf): Specify argument types.
7229
72302008-07-09 Kenichi Handa <handa@m17n.org>
7231
7232 * coding.c (detect_coding_utf_8): Set detect_info->found only when
7233 non-ASCII char is found.
7234
7235 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
7236 (reorder_font_vector): Change the arg preferred_family to font.
7237 Prefer the spec matching with font.
7238 (fontset_get_font_group): New function.
7239 (fontset_find_font): Change the format of an element of a realized
7240 fontset. Use fontset_get_font_group.
7241 (fontset_font): Try the current fontset, the default fontset, the
7242 fallbacks of the current fontset, and the fallbacks of the default
7243 fontset in this order.
7244 (face_for_char): Delete the shortcut to use the current font.
7245 (fontset_from_font): Don't set fonts for Latin in the fontset.
7246
7247 * font.h (font_make_object, font_match_p): Adjust prototypes.
7248
7249 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
7250
7251 * font.c (font_make_object): New arg entity and pixelsize.
7252 (font_check_otf_features, font_check_otf): New functions.
7253 (font_match_p): Check :lang, :script, and :otf properties.
7254
7255 * xfont.c (xfont_open): Adjust it for the change of
7256 font_make_object.
7257 (xfont_text_extents): Fix initial setting of metrics.
7258
7259 * ftfont.c (struct ftfont_info): New member index, delete member
7260 fc_charset_idx. Make the member order compatible with struct
7261 xftfont_info.
7262 (fc_charset_table): Change charset names to registry names.
7263 (ftfont_pattern_entity): Delete the args registry and
7264 fc_charset_idx. Change the value of :font-entity property
7265 to (FONTNAME . INDEX). Always set :registry property to
7266 `iso10646-1'.
7267 (struct ftfont_cache_data): New struct.
7268 (ftfont_lookup_cache): New arg for_face.
7269 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
7270 (ftfont_driver): Set the member otf_capability.
7271 (ftfont_get_charset): Adjust it for the change of
7272 fc_charset_table.
7273 (OTF_TAG_SYM): New macro.
7274 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
7275 for the change of fc_charset_table.
7276 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
7277 ftfont_pattern_entity. Add FC_INDEX to objset.
7278 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
7279 and ftfont_pattern_entity.
7280 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
7281 font_make_object, struct ftfont_info.
7282 (ftfont_has_char): Use ftfont_get_fc_charset.
7283 (ftfont_otf_features, ftfont_otf_capability): New functions.
7284 (ftfont_shape): Use ftfont_get_otf.
7285 (ftfont_text_extents): Fix initial setting of metrics.
7286
7287 * xftfont.c (struct xftfont_info): New member ft_size. Make the
7288 member order compatible with struct ftfont_info.
7289 (xftfont_open): Add FC_CHARSET to the pattern. Set
7290 xftfont_info->ft_size. Don't unlock the face. Check BDF
7291 properties if appropriate.
7292 (xftfont_close): Unlock the face.
7293 (xftfont_anchor_point, xftfont_shape): Deleted.
7294 (syms_of_xftfont): Don't set members anchor_point and shape of
7295 xftfont_driver.
7296
7297 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
7298 font_make_object.
7299
7300 * w32font.c (w32font_open): Adjust it for the change of
7301 font_make_object.
7302 (w32font_open_internal): Don't set properties of font_object here.
7303
73042008-07-08 Chong Yidong <cyd@stupidchicken.com>
7305
7306 * macfns.c (x_create_tip_frame):
7307 * w32fns.c (x_create_tip_frame):
7308 * xfns.c (x_create_tip_frame): Pass parameter argument to
7309 face-set-after-frame-default.
7310
7311 * xfaces.c (Finternal_merge_in_global_face): Save merged
7312 attributes for the default face back into the face vector.
7313
73142008-07-08 Andreas Schwab <schwab@suse.de>
7315
7316 * fontset.h: Declare fontset_from_font. Don't declare
7317 new_fontset_from_font and fontset_from_font_name.
7318 * xterm.c: Include "fontset.h".
7319 * Makefile.in (xterm.o): Update dependencies.
7320
73212008-07-08 Glenn Morris <rgm@gnu.org>
7322
7323 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
7324 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
7325
73262008-07-07 Chong Yidong <cyd@stupidchicken.com>
7327
7328 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
7329 (x_set_frame_parameters): Don't bind it.
7330
73312008-07-07 Juanma Barranquero <lekktu@gmail.com>
7332
7333 * w32fns.c (map_w32_filename): Declare extern.
7334
73352008-07-07 Jason Rumney <jasonr@gnu.org>
7336
7337 * w32term.c (WS_EX_LAYERED): Define if not already.
7338
73392008-07-06 Chong Yidong <cyd@stupidchicken.com>
7340
7341 * xfaces.c (set_font_frame_param): Don't try to set the font
7342 parameter if it is still unspecified in the lface.
7343
73442008-07-05 Chong Yidong <cyd@stupidchicken.com>
7345
7346 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
7347 face if it didn't already exist.
7348
7349 * xdisp.c (try_window_id): Give up if word-wrapping is on.
7350
73512008-07-05 Andreas Schwab <schwab@suse.de>
7352
7353 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
7354
73552008-07-05 Chong Yidong <cyd@stupidchicken.com>
7356
7357 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
7358 word-wrapping.
7359 (IT_DISPLAYING_WHITESPACE): New macro.
7360 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
7361 when word-wrapping. Simplify word-wrapping logic. Use correct
7362 pixel positions when saving copies of the iterator.
7363 (display_line): Use proper wrap point if the last character on a
7364 line was preceded by whitespace.
7365
73662008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
7367
7368 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
7369
73702008-07-04 Kenichi Handa <handa@m17n.org>
7371
7372 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
7373
7374 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
7375
73762008-07-02 Jason Rumney <jasonr@gnu.org>
7377
7378 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 7379 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
7380
7381 * xdisp.c (next_element_from_display_vector): Move assignment out
7382 of if statement.
7383
73842008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
7385
7386 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
7387
7388 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
7389 (syms_of_fileio): Initialize and export them.
7390 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
7391
7392 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
7393 (Fsystem_move_file_to_trash): New function.
7394 (syms_of_w32fns): Export it to lisp.
7395
73962008-07-01 Jason Rumney <jasonr@gnu.org>
7397
7398 * w32font.c (w32font_text_extents): Don't count overhang as part
7399 of width.
7400
74012008-06-30 Miles Bader <miles@gnu.org>
7402
7403 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
7404 Add `avoid_cursor_p' field.
7405
7406 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
7407 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
7408 (append_glyph, append_composite_glyph, produce_image_glyph)
7409 (append_stretch_glyph): Initialize avoid_cursor_p.
7410 (get_it_property): Rename from `get_line_height_property'.
7411 (x_produce_glyphs): Use get_it_property.
7412 (handle_line_prefix, push_display_prop): New functions.
7413 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
7414 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
7415 New variables.
7416 (syms_of_xdisp): Initialize them.
7417
74182008-06-30 Kenichi Handa <handa@m17n.org>
7419
7420 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
7421 XftDefaultSubstitute (they are called in XftFontMatch).
7422 (xftfont_open): Fix args to ftfont_font_format.
7423
7424 * ftfont.c (fc_charset_table): New member lang.
7425 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 7426 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
7427 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
7428 (ftfont_open): Fix args to ftfont_font_format.
7429 (ftfont_font_format): New arg filename.
7430
74312008-06-30 Chong Yidong <cyd@stupidchicken.com>
7432
7433 * xfaces.c (Finternal_merge_in_global_face): If default face was
7434 modified, realize it again. Update the font face attribute.
7435
74362008-06-29 Jason Rumney <jasonr@gnu.org>
7437
7438 * w32term.c (x_set_frame_alpha): Fix logic.
7439
74402008-06-29 Kenichi Handa <handa@m17n.org>
7441
7442 * fontset.c (Finternal_char_font): Return font-object instead of
7443 font-name.
7444
7445 * composite.c (get_composition_id): Fix the width calculation for TAB.
7446
74472008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
7448
7449 * indent.c (Fvertical_motion): Properly handle float column arg.
7450
74512008-06-28 Jason Rumney <jasonr@gnu.org>
7452
7453 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
7454 (pfnSetLayeredWindowAttributes): New function pointer.
7455 (w32_initialize): Initialize it when supported.
7456 (x_set_frame_alpha): New function.
7457
7458 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
7459 (w32_frame_parm_handlers): Set alpha handler.
7460
7461 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
7462
74632008-06-27 Jason Rumney <jasonr@gnu.org>
7464
7465 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
7466 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
7467 (w32_to_x_charset, x_to_w32_charset)
7468 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7469 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7470 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7471 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7472 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7473 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7474 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
7475 (Qw32_charset_unicode): Remove.
7476 (syms_of_w32fns): Update for above changes.
7477
7478 * w32font.c (w32_to_x_charset, x_to_w32_charset)
7479 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7480 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7481 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7482 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7483 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7484 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7485 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
7486 (syms_of_w32font): Update for above changes.
7487
74882008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
7489
7490 * s/usg5-4.h: Fix previous change: keep the correct branch of a
7491 removed #if.
7492 (USG_SHARED_LIBRARIES): Remove duplicate definition.
7493
74942008-06-26 Juanma Barranquero <lekktu@gmail.com>
7495 Eli Zaretskii <eliz@gnu.org>
7496
7497 * makefile.w32-in (LOCAL_FLAGS):
7498 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
7499
7500 * sysdep.c (_spawnlp, _getpid):
7501 Declare with explicit _cdecl instead of _CRTAPI1.
7502
7503 * editfns.c (Fget_internal_run_time):
7504 Check for WINDOWSNT with #ifdef, not #if.
7505
75062008-06-26 Jason Rumney <jasonr@gnu.org>
7507
7508 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
7509
7510 * w32term.c (x_draw_glyph_string_foreground)
7511 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
7512 Use FONT_HANDLE macro.
7513 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
7514
7515 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7516 (uniscribe_encode_char): Use FONT_HANDLE macro.
7517
7518 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
7519 (w32font_text_extents): Use precast w32_font.
7520 (w32font_close): Free cached metrics.
7521 (w32font_open_internal): Allocate space for name on stack.
7522
75232008-06-26 Chong Yidong <cyd@stupidchicken.com>
7524
7525 * xdisp.c (extend_face_to_end_of_line): Fix last change.
7526
75272008-06-26 Jason Rumney <jasonr@gnu.org>
7528
7529 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
7530 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
7531
75322008-06-26 Juanma Barranquero <lekktu@gmail.com>
7533
7534 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
7535
75362008-06-26 Jason Rumney <jasonr@gnu.org>
7537
7538 * w32bdf.c, w32bdf.h: Remove obsolete files.
7539
7540 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
7541
7542 * w32gui.h: Don't include w32bdf.h.
7543 (XCharStruct, enum w32_char_font_type, W32FontStruct):
7544 Remove obsolete font support.
7545
7546 * w32font.h (struct w32font_info): Remove compat_w32_font.
7547 Add hfont member.
7548 (FONT_COMPAT): Remove obsolete macro.
7549
7550 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
7551 (w32font_encode_char, w32font_text_extents): Use new hfont member.
7552 (w32font_open_internal): Remove compat code. Set new hfont member.
7553 (Fx_select_font): Use new hfont member.
7554
7555 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7556 (uniscribe_encode_char): Use new hfont member.
7557
7558 * w32term.c (x_draw_glyph_string_foreground)
7559 (x_draw_composite_glyph_string_foreground): Use new hfont member.
7560 (x_draw_glyph_string): Use metrics in w32font_info.
7561
75622008-06-26 Kenichi Handa <handa@m17n.org>
7563
7564 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
7565
75662008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
7567
7568 * unexnext.c:
7569 * m/ews4800.h:
7570 * m/hp9000s300.h:
7571 * m/ibm370aix.h:
7572 * m/mips-siemens.h:
7573 * m/ncr386.h:
7574 * m/next.h:
7575 * m/pmax.h:
7576 * m/powerpcle.h:
7577 * m/tandem-s2.h:
7578 * s/386bsd.h:
7579 * s/bsd386.h:
7580 * s/bsd4-1.h:
7581 * s/bsd4-2.h:
7582 * s/bsdos2-1.h:
7583 * s/bsdos2.h:
7584 * s/bsdos3.h:
7585 * s/bsdos4.h:
7586 * s/nextstep.h:
7587 * s/ultrix4-3.h:
7588 * s/usg5-0.h:
7589 * s/usg5-2-2.h:
7590 * s/usg5-2.h:
7591 * s/usg5-4-3.h:
7592 * s/ux4800.h:
7593 * s/uxpds.h:
7594 * s/uxpv.h: Remove support for obsolete systems.
7595 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 7596 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
7597 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
7598 Remove, insert contents in s/aix4-2.h.
7599 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
7600 * s/bsd4-3.h: Rename to ...
7601 * s/bsd-common.h: ... this.
7602 * data.c:
7603 * doc.c:
7604 * ecrt0.c:
7605 * emacs.c:
7606 * fileio.c:
7607 * floatfns.c:
7608 * keyboard.c:
7609 * mem-limits.h:
7610 * print.c:
7611 * process.c:
7612 * sysdep.c:
7613 * syssignal.h:
7614 * systty.h:
7615 * syswait.h:
7616 * term.c:
7617 * unexec.c:
7618 * unexelf.c:
7619 * unexhp9k800.c:
7620 * m/hp800.h:
7621 * m/ibmrs6000.h:
7622 * m/mips.h:
7623 * m/vax.h:
7624 * s/darwin.h:
7625 * s/freebsd.h:
7626 * s/gnu.h:
7627 * s/ms-w32.h:
7628 * s/msdos.h:
7629 * s/netbsd.h:
7630 * s/template.h: Remove references to obsolete variables.
7631
7632 * Makefile.in: Add dependencies for all unexec files.
7633 (admindir): Remove unused variable.
7634 (UNEXEC_SRC): Remove references.
7635
76362008-06-25 Chong Yidong <cyd@stupidchicken.com>
7637
7638 * xfns.c (x_default_font_parameter): If Xft is available, first
7639 try Monospace-12 for the default font.
7640
76412008-06-25 Jason Rumney <jasonr@gnu.org>
7642
7643 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
7644
76452008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
7646
7647 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
7648
7649 * buffer.c (syms_of_buffer): Remove default-word-wrap.
7650
76512008-06-25 Juanma Barranquero <lekktu@gmail.com>
7652
7653 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
7654 <scroll-conservatively>: Fix typo in docstring.
7655
7656 * xselect.c (Fx_send_client_event): Doc fix.
7657
76582008-06-25 Kenichi Handa <handa@m17n.org>
7659
7660 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
7661
7662 * font.c (font_parse_fcname): Remove unused variables.
7663 (font_sort_entites): Delete the arg SPEC. Caller changed.
7664 Fix for the case of ! best_only.
7665 (font_delete_unmatched): Check DPI and AVGWIDTH too.
7666
7667 * lisp.h (Fstring_to_unibyte): EXFUN it.
7668
7669 * character.h (str_to_unibyte): Extern it.
7670
7671 * character.c (str_to_unibyte): New function.
7672
7673 * fns.c (Fstring_to_unibyte): New function.
7674 (syms_of_fns): Defsubr it.
7675
76762008-06-24 Kenichi Handa <handa@m17n.org>
7677
7678 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
7679 DPI too.
7680 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
7681
76822008-06-24 Andreas Schwab <schwab@suse.de>
7683
7684 * Makefile.in (${lispsource}loaddefs.el): Rename from
7685 ../lisp/loaddefs.el.
7686 (bootstrap-clean): Do what distclean does but don't remove
7687 Makefile.
7688 (distclean): Depend on bootstrap-clean and remove Makefile.
7689
76902008-06-24 Chong Yidong <cyd@stupidchicken.com>
7691
7692 * buffer.h (struct buffer): New member word_wrap.
7693
7694 * buffer.c (syms_of_buffer): New variables default-word-wrap and
7695 word-wrap.
7696 (init_buffer_once): Initialize them.
7697
7698 * dispextern.h (struct it): Replace bool truncate_lines_p with a
7699 line_wrap enum possessing three possible values.
7700
7701 * termopts.h: Replace truncate_partial_width_windows with
7702 Vtruncate_partial_width_windows.
7703
7704 * dispnew.c (direct_output_for_insert): Avoid direct output when
7705 inserting a space with word wrap on.
7706
7707 * indent.c (compute_motion): Obey integer values of
7708 truncate-partial-width-windows.
7709
7710 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
7711 replacing truncate_partial_width_windows.
7712 (init_iterator): If Vtruncate_partial_width_windows is an integer,
7713 truncate only if the window width is below that integer.
7714 (start_display, resize_mini_window, produce_stretch_glyph)
7715 (display_string, move_it_in_display_line_to): Use line_wrap.
7716 (back_to_previous_visible_line_start, reseat_1): Reset
7717 string_from_display_prop_p.
7718 (display_line): Extend default face to end of line when wrapping.
7719
77202008-06-24 Kim F. Storm <storm@cua.dk>
7721
7722 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
7723 to wrap continued lines at word boundaries.
7724
77252008-06-24 Jason Rumney <jasonr@gnu.org>
7726
7727 * font.c (Ffont_face_attributes): Multiply pixel size before point
7728 conversion to avoid multiplying rounding error.
7729
77302008-06-23 Jason Rumney <jasonr@gnu.org>
7731
7732 * w32term.c (x_draw_glyph_string_background)
7733 (x_draw_glyph_string): Remove old bdf font code.
7734
7735 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
7736
77372008-06-22 Kenichi Handa <handa@m17n.org>
7738
7739 * font.c (font_find_for_lface): Try the adstyle specified in
7740 the property of LFACE_FONT of LFACE (if any).
7741
77422008-06-21 Seiji Zenitani <zenitani@mac.com>
7743 Ryo Yoshitake <ryo@shiftmode.net>
7744
7745 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
7746
77472008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
7748
7749 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
7750 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
7751 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
7752 (witness-emacs): Remove.
7753 (lisp, shortlisp): Move loaddefs.el earlier.
7754 (mostlyclean): Forget about witness-emacs.
7755
77562008-06-22 Glenn Morris <rgm@gnu.org>
7757
7758 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
7759 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
7760
77612008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7762
7763 * Makefile.in (PRECOMP): Remove.
7764 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
7765 (witness-emacs): Run `compile-first'.
7766 (.el.elc): Use the new compile-onefile target.
7767
77682008-06-21 Kenichi Handa <handa@m17n.org>
7769
7770 * xftfont.c (xftfont_open): Handle QCembolden only when
7771 FC_EMBOLDEN is defined.
7772
77732008-06-21 Andreas Schwab <schwab@suse.de>
7774
7775 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
7776 (.el.elc): Likewise.
7777
77782008-06-21 Miles Bader <miles@gnu.org>
7779
7780 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
7781 build dir, not the lisp source dir.
7782
77832008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7784
7785 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
7786 (bootstrapclean): Remove.
7787 (.el.elc): New rule.
7788 (PRECOMP): New var.
7789 (../lisp/subdirs.el): Remove.
7790 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
7791 (witness-emacs): New target.
7792 (mostlyclean): Remove witness-emacs as well.
7793 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
7794 Add witness-emacs dependency.
7795
77962008-06-20 Chong Yidong <cyd@stupidchicken.com>
7797
7798 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
7799 defined by the font.
7800
78012008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7802
7803 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
7804 (bootstrap-clean): New target that keeps TAGS around.
7805 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
7806 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
7807
78082008-06-20 Jason Rumney <jasonr@gnu.org>
7809
7810 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
7811 Remove obsolete font code.
7812
7813 * w32font.c (font_matches_spec): Use csb bitfield from font signature
7814 to determine language support.
7815
78162008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7817
7818 * sysdep.c (cfsetspeed): New fun extracted from the code.
7819 (cfmakeraw): Move before first use.
7820
78212008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
7822
7823 * sysdep.c (cfmakeraw): Provide fallback implementation.
7824 (serial_configure): Provide fallback implementation of cfsetspeed.
7825
78262008-06-20 Kenichi Handa <handa@m17n.org>
7827
7828 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
7829 the pattern.
7830
7831 * fontset.c (fontset_from_font): Copy font_spec before changing
7832 the elements.
7833
7834 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
7835
78362008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7837
7838 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
7839 for explicit `font' parameters.
7840
7841 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
7842
78432008-06-19 Kenichi Handa <handa@m17n.org>
7844
7845 * frame.c: Include <ctype.h>.
7846 (x_set_font_backend): Allow spacing characters in the X resource
7847 for FontBackend.
7848
78492008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
7850
7851 * w32fns.c, xfns.c (Qfont_param): New var.
7852 (syms_of_w32fns): Initialize it.
7853 (x_default_font_parameter): Record explicit `font' into
7854 `font-parameter'.
7855
78562008-06-18 Kenichi Handa <handa@m17n.org>
7857
7858 * font.c (font_parse_xlfd): Fix previous change.
7859 (font_parse_fcname): Don't use :fc-unknown-spec.
7860 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
7861 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
7862 (font_add_log): Prepend the driver name to the resulting fonts.
7863
7864 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
7865 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
7866 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
7867
7868 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
7869 (QCembolden): New variables.
7870 (syms_of_xftfont): DEFSYM them.
7871 (xftfont_open): Call XftFontMatch. Don't trust the result of
7872 XftTextExtents8 if the pixel_size is less than 5.
7873
78742008-06-18 Andreas Schwab <schwab@suse.de>
7875
7876 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
7877 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
7878
78792008-06-18 Jason Rumney <jasonr@gnu.org>
7880
7881 * w32font.c (w32font_list, w32font_match): Add logging.
7882
7883 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
7884
78852008-06-17 Chong Yidong <cyd@stupidchicken.com>
7886
7887 * font.c (font_parse_fcname): Store divider characters for
7888 unknown-spec list. For known key symbols, intern using correct
7889 symbol name.
7890
78912008-06-17 Kenichi Handa <handa@m17n.org>
7892
7893 * xfaces.c (realize_default_face): If the frame is not on window
7894 system, set the fontset of face to nil.
7895
78962008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7897
7898 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
7899
79002008-06-16 Juanma Barranquero <lekktu@gmail.com>
7901
7902 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
7903 (build_font_name_from_vector): Delete externs.
7904
7905 * xfaces.c (struct font_name): Don't declare.
7906
79072008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
7908
7909 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
7910
79112008-06-16 Chong Yidong <cyd@stupidchicken.com>
7912
7913 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
7914
79152008-06-16 Juanma Barranquero <lekktu@gmail.com>
7916
7917 * font.c (Ffont_spec): Fix usage in docstring.
7918 (Ffont_face_attributes): Doc fix.
7919
79202008-06-16 Andreas Schwab <schwab@suse.de>
7921
7922 * font.c (Ffont_face_attributes): Fix definition.
7923
79242008-06-16 Jason Rumney <jasonr@gnu.org>
7925
7926 * font.h (font_style_symbolic_from_value): Remove.
7927
7928 * font.c (font_style_symbolic_from_value): Remove.
7929 (font_style_symbolic): Revert to pre 2008-06-13 version.
7930
7931 * w32font.c (w32_to_fc_weight): New function.
7932 (w32font_full_name, logfont_to_fcname): Use it.
7933
79342008-06-16 Kenichi Handa <handa@m17n.org>
7935
7936 * font.c (font_check_object): Delete it.
7937 (font_clear_cache): Check if a font-object is alive.
7938 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
7939 font-object to nil.
7940 (font_close_object): Don't check FONT_CLOSE_OBJECT.
7941 (font_at): Don't call font_check_object.
7942 (Ffont_get): Return a symbol for :weight, :slant, and :width.
7943
79442008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
7945
7946 * puresize.h (BASE_PURESIZE): Increase to 1230000.
7947
79482008-06-16 Chong Yidong <cyd@stupidchicken.com>
7949
7950 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
7951
79522008-06-15 Chong Yidong <cyd@stupidchicken.com>
7953
7954 * font.c (font_parse_fcname): Only one decimal point.
7955 (font_unparse_fcname): Handle data in family and foundry indices
7956 as symbols, not strings.
7957 (font_unparse_gtkname, Ffont_face_attributes): New functions.
7958
7959 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
7960
7961 * font.h (font_unparse_gtkname): Add prototype.
7962
79632008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7964
7965 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
7966
79672008-06-15 Andreas Schwab <schwab@suse.de>
7968
7969 * font.c (font_update_drivers): Fix crash when no drivers match.
7970
79712008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
7972
7973 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
7974 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
7975
79762008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
7977
7978 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
7979
79802008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
7981
7982 * process.c (Fserial_process_configure, Fprocess_send_eof):
7983 Use EQ to compare Lisp_Objects.
7984
79852008-06-13 Jason Rumney <jasonr@gnu.org>
7986
7987 * w32fns.c (Fw32_select_font): Remove old font API function.
7988
7989 * w32font.c (logfont_to_fcname): New function.
7990 (Fx_select_font): New font dialog function compatible with
7991 GTK/fontconfig version.
7992
7993 * font.c (font_style_symbolic_from_value): New function.
7994 (font_style_symbolic): Use it.
7995
7996 * font.h (font_style_symbolic_from_value): Declare new function.
7997
79982008-06-13 Juanma Barranquero <lekktu@gmail.com>
7999
8000 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
8001 <font-width-table>: Fix typos in docstrings.
8002
80032008-06-13 Daniel Engeler <engeler@gmail.com>
8004
8005 These changes add serial port access.
8006 * process.c: Add HAVE_SERIAL.
8007 (Fdelete_process, Fprocess_status, Fset_process_buffer)
8008 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
8009 (list_processes_1, select_wrapper, Fstop_process)
8010 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
8011 (status_notify): Modify to handle serial processes.
8012 [HAVE_SERIAL] (Fserial_process_configure)
8013 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
8014 New functions.
8015 * process.h (struct Lisp_Process): Add `type'.
8016 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8017 New functions.
8018 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8019 serial ports.
b71ac3dd 8020 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8021 * w32.h: Add FILE_SERIAL.
8022 (struct _child_process): Add ovl_read, ovl_write.
8023
80242008-06-13 Kenichi Handa <handa@m17n.org>
8025
8026 * dispextern.h (enum lface_attribute_index): New member
8027 LFACE_FOUNDRY_INDEX.
8028
8029 * font.c (font_score): Delete arg alternate_families. Check only
8030 weight, slant, width, and size. Ignore the difference of alias
8031 style symbols.
8032 (font_sort_entites): Adjust for the above change. Reflect the
8033 order of font-driver to scores.
8034 (font_list_entities): Don't check alternate_familes here.
8035 (font_clear_prop): Handle foundry.
8036 (font_update_lface): Don't parse "foundry-family" form here.
8037 Handle FONT_FOUNDRY_INDEX.
8038 (font_find_for_lface): Likewise. Handle alternate families here.
8039 If registry is nil, try iso8859-1 and ascii-0.
8040 (font_open_for_lface): Pay attention to size in ENTITY.
8041 (font_open_by_name): Simplify by calling font_load_for_lface.
8042 (free_font_driver_list): Delete it.
8043 (font_update_drivers): Preserve the order of backends.
8044 (syms_of_font): Setting of sort_shift_bits adjusted for the change
8045 of font_score and font_sort_entites.
8046 (font_update_sort_order): Likewise.
8047
8048 * xfaces.c (LFACE_FOUNDRY): New macro.
8049 (check_lface_attrs): Check foundry.
8050 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
8051 (merge_face_vectors): Check foundry.
8052 (merge_face_ref): Likewise.
8053 (Finternal_set_lisp_face_attribute): Likewise.
8054 (x_update_menu_appearance): Likewise.
8055 (Finternal_get_lisp_face_attribute): Likewise.
8056 (lface_hash): Likewise.
8057 (lface_same_font_attributes_p): Likewise.
8058 (x_supports_face_attributes_p): Likewise.
8059 (tty_supports_face_attributes_p): Likewise.
8060 (Finternal_set_alternative_font_family_alist): Intern strings.
8061 (Finternal_set_alternative_font_registry_alist): Downcase strings.
8062 (realize_default_face): Set LFACE_FOUNDRY (lface).
8063
8064 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
8065 font-driver at first.
8066
8067 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
8068
80692008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8070
8071 * lread.c (Fload): Use xfree, not free on saved_doc_string.
8072
80732008-06-12 Jim Meyering <meyering@redhat.com>
8074
8075 Make unexec_free handle NULL the same way free does.
8076 * unexmacosx.c (unexec_free): Ignore a NULL argument.
8077
80782008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
8079
8080 * character.h (CHAR_TO_BYTE_SAFE): New macro.
8081 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
8082 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
8083 (WEAK_ALIAS): Simplify.
8084 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
8085 when searching a unibyte buffer.
8086
80872008-06-12 Chong Yidong <cyd@stupidchicken.com>
8088
8089 * xfns.c (Fx_select_font): Rename from x-font-dialog.
8090
80912008-06-12 Juanma Barranquero <lekktu@gmail.com>
8092
8093 * w32font.c: Include ctype.h.
8094
80952008-06-11 Jason Rumney <jasonr@gnu.org>
8096
8097 * w32font.c (w32font_encode_char): Detect missing glyphs that are
8098 misreported as space.
8099 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
8100 as aliases for registry iso10646-1.
8101
81022008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
8103
8104 * buffer.c (clone_per_buffer_values): Skip `name'.
8105
81062008-06-11 Chong Yidong <cyd@stupidchicken.com>
8107
8108 * font.c (font_parse_fcname): Fix last change; accept decimal
8109 points in font size.
8110
81112008-06-10 Jason Rumney <jasonr@gnu.org>
8112
8113 * w32uniscribe.c (add_opentype_font_name_to_list):
8114 Skip non unicode fonts.
8115
81162008-06-10 Chong Yidong <cyd@stupidchicken.com>
8117
8118 * xfns.c (Fx_font_dialog): New function.
8119
8120 * gtkutil.c (xg_dialog_response_cb): Rename from
8121 xg_file_response_callback.
8122 (pop_down_dialog): Rename from pop_down_file_dialog.
8123 (xg_get_file_name): Callers changed.
8124 (xg_get_font_name): New function.
8125
8126 * gtkutil.h (xg_get_font_name): Insert prototype.
8127
81282008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8129
8130 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
8131 x_underline_minimum_display_offset.
8132 (syms_of_xdisp): Declare it here rather than in xterm.c.
8133 * dispextern.h (underline_minimum_offset): Declare it.
8134 * w32term.c (x_draw_glyph_string): Use it.
8135 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
8136 (syms_of_xterm): Don't declare it any more.
8137 (x_draw_glyph_string): Adjust to the new name.
8138
81392008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
8140
8141 * xterm.c (x_underline_minimum_display_offset): New var.
8142 (x_draw_glyph_string): Use it.
8143 (syms_of_xterm): Declare it.
8144
81452008-06-10 Chong Yidong <cyd@stupidchicken.com>
8146
8147 * font.c (font_parse_fcname): Accept GTK-style font names too.
8148
81492008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8150
8151 * dired.c (file_name_completion): Don't return t if the match is exact
8152 but with different capitalization.
8153 * minibuf.c (Ftry_completion): Simplify.
8154
8155 * window.c (Vwindow_point_insertion_type): New var.
8156 (set_window_buffer): Use it.
8157 (syms_of_window): Init and export it to Lisp.
8158
81592008-06-10 Kenichi Handa <handa@m17n.org>
8160
8161 * font.h (font_intern_prop): Prototype adjusted.
8162
8163 * font.c (font_intern_prop): New arg force_symbol.
8164 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
8165 Adjust for the change of font_intern_prop.
8166
8167 * ftfont.c (ftfont_pattern_entity):
8168 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
8169 (w32_registry):
8170 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
8171 the change of font_intern_prop.
8172
81732008-06-09 Juanma Barranquero <lekktu@gmail.com>
8174
8175 * w32menu.c (digest_single_submenu): Declare extern.
8176
81772008-06-09 Jason Rumney <jasonr@gnu.org>
8178
8179 * w32term.c (x_make_frame_visible): Use alternate restore flags.
8180
8181 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
8182 (parse_single_submenu): Remove.
8183 (digest_single_submenu): Remove.
8184 (syms_of_w32menu): Don't initialise variables that have moved
8185 to menu.c.
8186 (set_frame_menubar): Sync with version in xmenu.c.
8187 (w32_menu_show): Sync with xmenu_show in xmenu.c.
8188
8189 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
8190 Make static again.
8191
81922008-06-09 Jason Rumney <jasonr@gnu.org>
8193
8194 Changes to w32 files related to the move of common menu code
8195 to menu.c on 2008-06-08 by Chong Yidong.
8196
8197 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
8198 defs to w32gui.h.
8199 (single_keymap_panes, push_menu_item, push_menu_pane):
8200 Make globally visible.
8201
8202 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
8203 (local_free, malloc_widget_value, free_widget_value)
8204 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
8205 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
8206 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
8207 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
8208 (menu_items, menu_items_allocated, menu_items_used)
8209 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
8210 (init_menu_items, finish_menu_items, discard_menu_items)
8211 (grow_menu_items, push_submenu_start, push_submenu_end)
8212 (push_left_right_boundary, push_menu_pane, push_menu_item)
8213 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
8214 (free_menubar_widget_tree_value, parse_single_submenu)
8215 (update_submenu_strings): Remove functions.
8216 (xmalloc_widget_value): Remove and declare extern.
8217
8218 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
8219 (OBJ1): Build it.
8220
8221 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
8222 (local_heap, local_alloc, local_free, malloc_widget_value)
8223 (free_widget_value): Define here.
8224
82252008-06-09 Kenichi Handa <handa@m17n.org>
8226
8227 * font.h (Qascii_0): Extern it.
8228
8229 * font.c (Qascii_0): New variable.
8230 (syms_of_font): DEFSYM it.
8231 (font_open_by_name): If the registry "iso8859-1" fails, try also
8232 "ascii-0".
8233
8234 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
8235
82362008-06-08 Kenichi Handa <handa@m17n.org>
8237
8238 * .gdbinit (xfont): New command.
8239
82402008-06-08 Andreas Schwab <schwab@suse.de>
8241
8242 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
8243 * Makefile.in (menu.o): Update dependencies.
8244
8245 * Makefile.in (obj): Always add menu.o.
8246 * emacs.c (main): Always call syms_of_menu.
8247 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
8248
82492008-06-08 Chong Yidong <cyd@stupidchicken.com>
8250
8251 * Makefile.in: Compile menu.c.
8252
8253 * lisp.h: Declare syms_of_menu.
8254
8255 * emacs.c (main): Call syms_of_menu.
8256
8257 * keyboard.h: Relocate platform-independent menu definitions from
8258 xmenu.c.
8259
8260 * menu.c: New file. Relocate platform-independent menu
8261 definitions from xmenu.c. Suggested by Adrian Robert.
8262
8263 * xmenu.c: Remove platform-independent menu definitions.
8264 (menu_items menu_items_inuse, menu_items_allocated)
8265 (menu_items_used, menu_items_n_panes)
8266 (menu_items_submenu_depth): Move to keyboard.h.
8267 (init_menu_items, finish_menu_items, unuse_menu_items)
8268 (discard_menu_items, restore_menu_items, save_menu_items)
8269 (grow_menu_items, push_submenu_start, push_submenu_end)
8270 (push_left_right_boundary, push_menu_pane, push_menu_item)
8271 (keymap_panes, single_keymap_panes, single_menu_item)
8272 (list_of_panes, list_of_items, find_and_call_menu_selection)
8273 (xmalloc_widget_value, free_menubar_widget_value_tree)
8274 (parse_single_submenu, digest_single_submenu)
8275 (update_submenu_strings): Move to menu.c.
8276
82772008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
8278
8279 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
8280
82812008-06-06 Miles Bader <miles@gnu.org>
8282
8283 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
8284 face, not frame default.
8285
82862008-06-05 Martin Rudalics <rudalics@gmx.at>
8287
8288 * window.c (pop_up_windows, pop_up_frames)
8289 (display_buffer_reuse_frames, Vpop_up_frame_function)
8290 (Vdisplay_buffer_function, Veven_window_heights)
8291 (Vspecial_display_buffer_names, Vspecial_display_regexps)
8292 (Vspecial_display_function, Vsame_window_buffer_names)
8293 (Vsame_window_regexps, split_height_threshold)
8294 (Vsplit_window_preferred_function): Move those vars to window.el.
8295 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
8296 (Fdisplay_buffer): Move those functions to window.el.
8297 (syms_of_window): Remove corresponding declarations.
8298 (display_buffer): New function.
8299 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
8300 * dispnew.c (Flast_nonminibuf_frame): New function.
8301 * buffer.c (Fpop_to_buffer): Move to window.el.
8302
83032008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8304
8305 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
8306
83072008-06-05 Kenichi Handa <handa@m17n.org>
8308
8309 * coding.c (detect_coding): Fix previous change.
8310 (detect_coding_system): Likewise.
8311
83122008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8313
8314 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
8315
8316 * keymap.c (Vminibuffer_local_filename_must_match_map):
8317 Rename from Vminibuffer_local_must_match_filename_map.
8318 (syms_of_keymap):
8319 * minibuf.c (Fcompleting_read): Adjust accordingly.
8320 * commands.h: Rename declaration as well.
8321
83222008-06-05 Kenichi Handa <handa@m17n.org>
8323
8324 * font.c (Ffont_spec): Don't use font_parse_family_registry for
8325 family name.
8326 (Ffont_put): Likewise.
8327
8328 * fontset.c (fontset_find_font): Call font_open_for_lface with the
8329 current font-spec.
8330
8331 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
8332 is unspecified.
8333
8334 * xfaces.c (realize_x_face): If the font-related face attributes
8335 are the same as those of default face, realize a new fontset from
8336 default->fontset.
8337 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
8338
83392008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8340
8341 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
8342 (move_it_in_display_line): New wrapper.
8343
8344 * window.c (window_scroll_pixel_based_preserve_x)
8345 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
8346 (window_scroll_pixel_based, window_scroll_line_based):
8347 Use them to preserve column positions.
8348 (syms_of_window): Initialize them.
8349
8350 * indent.c (Fvertical_motion): Extend first arg to allow passing an
8351 (HPOS . VPOS) pair.
8352
8353 * dispextern.h (move_it_in_display_line): Declare.
8354
83552008-06-05 Juanma Barranquero <lekktu@gmail.com>
8356
8357 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
8358 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
8359 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
8360
83612008-06-04 Juanma Barranquero <lekktu@gmail.com>
8362
8363 * window.c (Fset_window_parameter): Doc fix.
8364 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
8365
83662008-06-04 Joakim Verona <joakim@verona.se>
8367
8368 * window.h (struct window): Add new member window_parameters.
8369
8370 * window.c (Fwindow_parameters, Fwindow_parameter)
8371 (Fset_window_parameter): New defuns.
8372 (syms_of_window): Defsubr the new defuns.
8373 (make_window): Initialize window_parameters to nil.
8374
83752008-06-04 John Paul Wallington <jpw@pobox.com>
8376
8377 * eval.c (Fdefmacro): Doc fix.
8378
83792008-06-04 Kenichi Handa <handa@m17n.org>
8380
8381 * coding.c (detect_coding): Fix handling of coding->head_ascii.
8382 Be sure to call setup_coding_system when we find a proper coding system.
8383 (detect_coding_system): Fix handling of coding->head_ascii.
8384
83852008-06-03 Andreas Schwab <schwab@suse.de>
8386
8387 * font.c (font_prop_validate_spacing): Fix last change.
8388
83892008-06-03 Kenichi Handa <handa@m17n.org>
8390
8391 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
8392 (font_parse_fcname): Fix handling of unknown key.
8393
8394 * xfont.c (xfont_list): Try an alias.
8395
8396 * charset.c (char_charset): Return NULL if the arg charset_list is
8397 specified and C doesn't belong to any of them.
8398
83992008-06-02 Chip Coldwell <coldwell@redhat.com>
8400
8401 * font.c (font_pixel_size): Don't take cdr of an integer.
8402
84032008-06-02 Jim Meyering <meyering@redhat.com>
8404
8405 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
8406 * alloc.c (xfree): Return right away for a NULL arg.
8407 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
8408 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
8409 * mac.c (create_apple_event_from_event_ref): Likewise.
8410 (create_apple_event_from_drag_ref, cfstring_create_normalized):
8411 Likewise.
8412 * doprnt.c (doprnt1): Likewise.
8413 * frame.c (frame): Likewise.
8414 * keyboard.c (wipe_kboard): Likewise.
8415 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
8416 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
8417 * term.c (tty_default_color_capabilities, maybe_fatal)
8418 (delete_tty): Likewise.
8419 * w16select.c (string): Likewise.
8420 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
8421 * w32bdf.c (w32_free_bdf_font): Likewise.
8422 * w32fns.c (w32_unload_font): Likewise.
8423 * w32font.c (w32font_close): Likewise.
8424 * window.c (size_window): Likewise.
8425 * xselect.c (receive_incremental_selection): Likewise.
8426 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
8427 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
8428 * w32.c (stat): Likewise.
8429
8430 Remove useless if-before-free tests.
8431 * editfns.c (Fset_time_zone_rule): Likewise.
8432 * lread.c (nosuffix): Likewise.
8433 * ralloc.c (get_bloc): Likewise.
8434 * regex.c (reg_free): Likewise.
8435 * xftfont.c (xftfont_open, xftfont_close): Likewise.
8436 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
8437 * xsmfns.c (smc_save_yourself_CB): Likewise.
8438
84392008-06-02 Kenichi Handa <handa@m17n.org>
8440
8441 * font.c (font_find_for_lface): Handle float font size.
8442 (font_open_for_lface): Likewise.
8443
8444 * xfaces.c (x_supports_face_attributes_p): Check face->font before
8445 comparing the properties.
8446
84472008-06-01 Jason Rumney <jasonr@gnu.org>
8448
8449 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
8450 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
8451 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
8452 Don't add empty script list.
8453 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
8454
84552008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
8456
8457 * Makefile.in (dot, dotdot): Remove, update users.
8458 ".." has been used elsewhere in the file for a long time.
8459 (LIBXT_STATIC): Remove conditional based on unused variable.
8460
84612008-06-01 Miles Bader <miles@gnu.org>
8462
8463 * xfaces.c (Vface_remapping_alist): New variable.
8464 (syms_of_xfaces): Initialize it.
8465 (enum named_merge_point_kind): New type.
8466 (struct named_merge_point): Add `named_merge_point_kind' field.
8467 (push_named_merge_point): Make cycle detection respect different
8468 named-merge-point kinds.
8469 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
8470 Remove face-name alias resolution.
8471 (lface_from_face_name): New definition using
8472 `lface_from_face_name_no_resolve'.
8473 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
8474 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
8475 (get_lface_attributes): New definition that layers face-remapping on
8476 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
8477 (lookup_basic_face): New function.
8478 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
8479 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
8480 `get_lface_attributes'.
8481 (face_at_buffer_position): Use `lookup_basic_face' to lookup
8482 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
8483 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
8484
8485 * xdisp.c (init_iterator): Pass base_face_id through
8486 `lookup_basic_face' when we actually use it as a face-id.
8487 (handle_single_display_prop): Use `lookup_basic_face' to lookup
8488 DEFAULT_FACE_ID.
8489
8490 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
8491 lookup the initial face-id.
8492
8493 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
8494
84952008-06-01 Juanma Barranquero <lekktu@gmail.com>
8496
8497 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
8498 (Fremove_text_properties): Fix typos in docstrings.
8499
85002008-05-31 Kenichi Handa <handa@m17n.org>
8501
8502 * font.c (font_list_entities): Fix the car part of data to be
8503 stored in the cache.
8504
8505 * ftfont.c (ftfont_font_format): Don't use strcasestr.
8506
85072008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8508
8509 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
8510 Add a `test' argument so another predicate than `equal' can be used.
8511 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
8512 (map_char_table): Remove unused vars `c' and `i'.
8513 * lisp.h (Foptimize_char_table): Adjust declaration.
8514 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
8515
85162008-05-30 Kenichi Handa <handa@m17n.org>
8517
8518 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
8519 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
8520 defined.
8521
85222008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8523
8524 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
8525 (Fmake_variable_frame_local): Disallow mixing buffer-local and
8526 frame-local settings for the same variable.
8527
85282008-05-30 Kenichi Handa <handa@m17n.org>
8529
8530 * fontset.c (Ffont_info): Move to font.c.
8531 (syms_of_fontset): Delete defsubr of Sfont_info.
8532
8533 * font.c (font_style_to_value, font_score): Delete casting of the
8534 args to xstcasecmp.
8535 (register_font_driver): Increment num_font_drivers only when
8536 registering the driver globally.
8537 (Ffont_info): Move from fontset.c. Handle a font object too.
8538 (syms_of_font): Defsubr Sfont_info.
8539
85402008-05-29 Kenichi Handa <handa@m17n.org>
8541
8542 * coding.h (enum define_coding_utf8_arg_index): New enum.
8543 (enum coding_attr_index): Change coding_attr_utf_16_bom to
8544 coding_attr_utf_bom.
8545 (enum utf_bom_type): Rename from utf_16_bom_type.
8546 (struct utf_16_spec): Adjust for the above change.
8547 (struct coding_system): Add utf_8_bom in `spec' union.
8548
8549 * coding.c (CODING_UTF_8_BOM): New macro.
8550 (enum coding_category): Delete coding_category_utf_8, add
8551 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
8552 coding_category_utf_8_sig.
8553 (CATEGORY_MASK_UTF_8): Delete it.
8554 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
8555 (CATEGORY_MASK_UTF_8_SIG): New macros.
8556 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
8557 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
8558 CATEGORY_MASK_UTF_8_SIG.
8559 (CATEGORY_MASK_UTF_8): New macro.
8560 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
8561 (detect_coding_utf_8): Check BOM.
8562 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
8563 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
8564 (encode_coding_utf_16): Likewise.
8565 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
8566 (detect_coding, detect_coding_system): Handle utf-8-auto.
8567 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
8568 (syms_of_coding): Fix setting up of Vcoding_category_table.
8569
85702008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
8571
8572 * process.c (Faccept_process_output): If `millisec' is non-nil,
8573 `seconds' default to 0.
8574 (wait_reading_process_output): Also return non-nil if we read output
8575 from a non-running process.
8576
85772008-05-29 Jason Rumney <jasonr@gnu.org>
8578
8579 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
8580 `raster' specified.
8581 (add_font_entity_to_list): Allow non-opentype truetype fonts back
8582 in the uniscribe backend, but disallow any font that has no
8583 unicode subrange support.
8584
85852008-05-29 Juanma Barranquero <lekktu@gmail.com>
8586
8587 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
8588 Fix typos in docstrings.
8589
85902008-05-29 Kenichi Handa <handa@m17n.org>
8591
8592 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
8593 (Fx_family_fonts): Set frame correctly.
8594
85952008-05-28 Jason Rumney <jasonr@gnu.org>
8596
8597 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
8598
85992008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8600
8601 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
8602 calling build_annotations.
8603
86042008-05-28 Juanma Barranquero <lekktu@gmail.com>
8605
8606 * coding.c (Fdecode_coding_region, Fencode_coding_region)
8607 (Fencode_coding_string):
8608 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
8609 <latin-extra-code-table>: Fix typos in docstrings.
8610 (syms_of_coding) <coding-system-alist>: Doc fix.
8611 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
8612
86132008-05-28 Kenichi Handa <handa@m17n.org>
8614
8615 * fontset.c (Ffont_info): Don't call font_close_object.
8616
8617 * font.c (font_parse_family_registry): Use Ffont_put to validate
8618 foundry and family.
8619 (font_delete_unmatched): Don't check spacing.
8620 (font_list_entities): Add spacing to the spec to list fonts.
8621
8622 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
8623 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
8624
8625 * coding.c (encode_coding_raw_text): Fix previous change.
8626 (encode_coding_object): When the dst_object is a buffer and is
8627 different from src_object, move gap to PT.
8628
86292008-05-27 Chong Yidong <cyd@stupidchicken.com>
8630
8631 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
8632
86332008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8634
8635 * coding.c (encode_coding_raw_text): Set coding->produced_char for
8636 all branches. Compute it differently.
8637
8638 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
8639
86402008-05-27 Juanma Barranquero <lekktu@gmail.com>
8641
8642 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
8643 into "else if () ... else ...".
8644
86452008-05-27 Jason Rumney <jasonr@gnu.org>
8646
8647 * w32font.c (w32font_open_internal): Determine if glyph indices
8648 are likely to work here.
8649
86502008-05-27 Chong Yidong <cyd@stupidchicken.com>
8651
8652 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
8653 draw overlap glyphs with appropriate highlighting.
8654
86552008-05-27 Kenichi Handa <handa@m17n.org>
8656
8657 * xfont.c (xfont_open): Fix calculation of font->average_width.
8658
86592008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8660
8661 * casefiddle.c (casify_object): Try to guess better whether the
8662 argument is a byte or a char.
8663
86642008-05-26 Andreas Schwab <schwab@suse.de>
8665
8666 * xselect.c (x_reply_selection_request): Properly handle format == 32.
8667 Always send multiples of format size.
8668
8669 * xterm.c (x_set_frame_alpha): Fix type mismatch.
8670
86712008-05-26 Jason Rumney <jasonr@gnu.org>
8672
8673 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
8674 (compute_metrics): Don't set failure if we just cleared the cache.
8675 (w32_weight_table): Remove unused variable.
8676 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
8677 backwards compatibility.
8678
86792008-05-25 Kenichi Handa <handa@m17n.org>
8680
8681 * w32term.c (x_draw_glyph_string):
8682 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
8683
8684 * xfaces.c: Delete unused function prototypes.
8685 (xstrlwr, font_frame): Delete them.
8686 (clear_face_cache): Delete unused variable.
8687
8688 * xftfont.c (xftfont_open): Delete unused variable.
8689 If underline_thickness is not 1, adjust underline_position.
8690
8691 * ftxfont.c (ftxfont_open): Delete unused variable.
8692
8693 * fontset.c (face_for_char): Optimize for the case of no charset
8694 property.
8695
8696 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
8697 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
8698 (otf_open, font_otf_capability, generate_otf_features)
8699 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
8700 Comment out by surrounding "#if 0" and "#endif" for the moment.
8701 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
8702 (syms_of_font): Codes for accessing above commented out.
8703
87042008-05-24 Eli Zaretskii <eliz@gnu.org>
8705
8706 * w32proc.c: Include dispextern.h.
8707
8708 * w32.c: Include dispextern.h.
8709
87102008-05-23 Juanma Barranquero <lekktu@gmail.com>
8711
8712 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
8713 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
8714 Fix typos in docstrings.
8715
87162008-05-23 Jason Rumney <jasonr@gnu.org>
8717
8718 * xsmfns.c: Remove includes that are already included by config.h.
8719
87202008-05-23 Kenichi Handa <handa@m17n.org>
8721
8722 * charset.c (Qemacs, charset_emacs): New variables.
8723 (char_charset): Fix for non-Unicode characters.
8724 (syms_of_charset): Define charset_emacs.
8725
8726 * w32term.c (x_draw_glyph_string): Be sure to update
8727 s->underline_thickness and s->underline_position. Be sure to draw
8728 underline within the current line area.
8729
8730 * xterm.c (x_draw_glyph_string): Be sure to update
8731 s->underline_thickness and s->underline_position. Be sure to draw
8732 underline within the current line area.
8733
8734 * fontset.c: Delete unused variables and add casting for char *
8735 throughout the file.
8736 (fontset_font): Try the fallback fonts of the current fontset
8737 before consulting the default fontset.
8738
8739 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
8740
8741 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
8742
87432008-05-22 Jason Rumney <jasonr@gnu.org>
8744
8745 * font.c: Don't include strings.h.
8746
8747 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
8748
8749 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
8750 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
8751 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
8752 to call xstrcasecmp.
8753
8754 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
8755
8756 * fontset.c (fs_query_fontset): Use xstrcasecmp.
8757
8758 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
8759
8760 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
8761
87622008-05-22 Kenichi Handa <handa@m17n.org>
8763
8764 * puresize.h (BASE_PURESIZE): Increase to 1220000.
8765
8766 * font.c (font_prop_validate_style): Adjust for the format
8767 change of font_style_table.
8768
8769 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
8770 two args.
8771
8772 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
8773 two args.
8774
87752008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
8776
8777 * minibuf.c (keys_of_minibuf): Delete.
8778 * lisp.h (keys_of_minibuf): Delete.
8779 * emacs.c (main): Don't call keys_of_minibuf.
8780
87812008-05-22 Kenichi Handa <handa@m17n.org>
8782
8783 * ftfont.c (ftfont_resolve_generic_family): Rename from
8784 ftfont_list_generic_family. Return a single family for each
8785 generic family.
8786 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
8787 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
8788 Call font_add_log.
8789 (ftfont_match): Call font_add_log.
8790
8791 * font.h (Ffont_xlfd_name): EXFUN adjusted.
8792 (FONT_DEBUG): Define it.
8793 (font_add_log): Extern it.
8794 (font_assert): Rename from xassert.
8795
8796 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
8797 (xfont_list_family): Call font_add_log.
8798 (xfont_match): Likewise.
8799 (memq_no_quit): Delete.
8800
8801 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
8802 call of Ffont_xlfd_name.
8803
8804 * xfaces.c (struct table_entry, slant_table, weight_table)
8805 (swidth_table): Move to font.c.
8806
8807 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
8808 xassert are changed to font_assert. Delete many unused variables.
8809 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
8810 New variables.
8811 (struct table_entry): Move from xfaces.c and modified.
8812 (weight_table, slant_table, width_table): Move from xfaces.c and
8813 contents adjusted for the change of struct table_entry.
8814 (font_style_to_value, font_style_symbolic): Adjust for the
8815 format change of font_style_table.
8816 (font_parse_family_registry): Don't overwrite existing foundry and
8817 family of font_spec.
8818 (font_score): Fix calculation of diff for sizes.
8819 (font_sort_entites): Call font_add_log.
8820 (font_delete_unmatched): Return a newly created list.
8821 (font_list_entities): Fix previous change. Call font_add_log.
8822 (font_matching_entity, font_open_entity, font_close_entity):
8823 Call font_add_log.
8824 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
8825 (Finternal_set_font_style_table): Delete.
8826 (BUILD_STYLE_TABLE): New macro.
8827 (build_style_table): New function.
8828 (Vfont_log, font_log_env_checked): New variables.
8829 (font_add_log): New function.
8830 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
8831 Declare Lisp variables "font-weight-table", "font-slant-table",
8832 "font-width-table", and "font-log". Initialize font_style_table.
8833
88342008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
8835
8836 * xterm.c (x_set_frame_alpha): Move declarations before statements.
8837
88382008-05-21 Seiji Zenitani <zenitani@mac.com>
8839 Ryo Yoshitake <ryo@shiftmode.net>
8840
8841 * frame.c (Qalpha): Add a new frame parameter `alpha'.
8842 (Vframe_alpha_lower_limit): New variable.
8843 (x_set_alpha): New function.
8844
8845 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
8846
8847 * xfns.c (x-create-frame, Qalpha):
8848 Initialize the frame parameter `alpha'.
8849 * xterm.c (OPAQUE, OPACITY): New.
8850 (x_set_frame_alpha): New function.
8851 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
8852
8853 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
8854 * w32fns.c (w32_frame_parm_handlers): Likewise.
8855
88562008-05-20 Jason Rumney <jasonr@gnu.org>
8857
8858 * w32font.c (add_font_entity_to_list): Don't add non-opentype
8859 truetype fonts to opentype list.
8860
88612008-05-20 Juanma Barranquero <lekktu@gmail.com>
8862
8863 * fontset.c (Ffontset_info): Doc fix.
8864 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
8865 <ignore-relative-composition>: Fix typos in docstrings.
8866
8867 * font.c (syms-of-font) <font-encoding-alist>:
8868 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
8869 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
8870 (Ffont_otf_alternates): Doc fixes.
8871
88722008-05-20 Kenichi Handa <handa@m17n.org>
8873
8874 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
8875 font.h through out the file.
8876 (FONT_DRIVERS): Rename from FONTOBJ.
8877 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
8878 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
8879
8880 * emacs.c (main): Call syms_of_font unconditionally.
8881
8882 * font.h (find_font_encoding): Extern it.
8883
8884 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
8885 fontset.c.
8886 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
8887 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
8888 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
8889 only when HAVE_WINDOW_SYSTEM is defined.
8890 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
8891 when HAVE_WINDOW_SYSTEM is defined.
8892
8893 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
8894 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
8895
8896 * xfaces.c: Include font.h unconditionally.
8897 (merge_face_ref, merge_face_vectors)
8898 (Finternal_set_lisp_face_attribute): Cancel the previous change.
8899
89002008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
8901
8902 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
8903 indirect_variable.
8904 * eval.c (lisp_indirect_variable): New fun.
8905 (Fuser_variable_p): Use it.
8906
89072008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
8908
8909 * lisp.h (indirect_variable):
8910 * data.c (indirect_variable, let_shadows_buffer_binding_p):
8911 Use Lisp_Symbol pointers rather than Lisp_Object.
8912 Adjust callers.
8913 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
8914 To this end, change calling-convention.
8915
8916 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
8917 if some non-hidden buffers are selected by string&pred.
8918
89192008-05-19 Chong Yidong <cyd@stupidchicken.com>
8920
8921 * process.c (wait_reading_process_output): Always check status
8922 when in batch mode.
8923
89242008-05-19 Kenichi Handa <handa@m17n.org>
8925
8926 * font.c (font_list_entities): Fix handling of cache.
8927 (font_matching_entity): Likewise.
8928
8929 * ftfont.c (cs_iso8859_1): Delete.
8930 (ft_face_cache): New variable.
8931 (struct ftfont_info): New member fc_charset_idx.
8932 (ftfont_build_basic_charsets): Delete.
8933 (fc_charset_table): New variable.
8934 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
8935 . FC_CHARSET_IDX) as :font-entity property in the font entity.
8936 Callers changed.
8937 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8938 (ftfont_spec_pattern): New argument fc_charset_idx.
8939 Check registry more rigidly. Change callers.
8940 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
8941 change of :font-entity property of the font.
8942
8943 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
8944 property of the font.
8945
89462008-05-18 Juanma Barranquero <lekktu@gmail.com>
8947
8948 * coding.c (Fcoding_system_p): Rename argument to match docstring.
8949 (Funencodable_char_position, Fcheck_coding_systems_region)
8950 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
8951 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
8952 (Ffind_operation_coding_system, Fset_coding_system_priority)
8953 (Fcoding_system_eol_type): Doc fixes.
8954
89552008-05-17 Glenn Morris <rgm@gnu.org>
8956
8957 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
8958
89592008-05-16 Eli Zaretskii <eliz@gnu.org>
8960
8961 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
8962 and st_gid.
8963
8964 * frame.c (Fdelete_frame): Don't call font_update_drivers if
8965 HAVE_WINDOW_SYSTEM is not defined.
8966
8967 * xfaces.c (merge_face_ref, merge_face_vectors)
8968 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
8969 HAVE_WINDOW_SYSTEM is defined.
8970 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
8971
89722008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
8973
8974 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
8975
89762008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8977
8978 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
8979
89802008-05-15 Kenichi Handa <handa@m17n.org>
8981
8982 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
8983 preference.
8984
89852008-05-15 Glenn Morris <rgm@gnu.org>
8986
8987 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
8988
89892008-05-15 Chong Yidong <cyd@stupidchicken.com>
8990
8991 * fns.c (init_fns): Don't initialize weak_hash_tables here.
8992 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
8993
8994 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
8995
89962008-05-15 Kenichi Handa <handa@m17n.org>
8997
8998 * ftfont.c (ftfont_list): Downcase family name to check generic
8999 families.
9000
9001 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
9002 font-spec for QCfont value.
9003
9004 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
9005 buffer. Check the return value of it.
9006
90072008-05-14 Jason Rumney <jasonr@gnu.org>
9008
9009 * w32term.c (w32_get_glyph_overhangs): Remove.
9010 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
9011
90122008-05-14 Kenichi Handa <handa@m17n.org>
9013
9014 * font.c (font_prop_validate): Make nil a valid value.
9015 (font_clear_cache): Check if the cached vector of entities is nil
9016 or not.
9017
90182008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9019
9020 * emacs.c (main_thread): Conditionalize on
9021 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9022 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9023
9024 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
9025 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
9026 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9027
90282008-05-14 Kenichi Handa <handa@m17n.org>
9029
9030 * coding.c (detect_coding_iso_2022): Ignore a coding category that
9031 has no corresponding coding system.
9032
90332008-05-14 Jason Rumney <jasonr@gnu.org>
9034
9035 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
9036
9037 * w32font.h (w32font_open_internal): Update declaration.
9038
9039 * w32font.c (w32font_open_internal): Change last argument from
9040 w32font_info struct to font object. Fill in font object from
9041 font_entity. Get Outline metrics if possible. Use them to
9042 calculate underline position and thickness. Use xlfd name as name
9043 property. Don't set codepage.
9044 (w32font_open): Pass font_object to w32font_open_internal. Don't
9045 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
9046 (w32font_draw): Use s->font.
9047 (clear_cached_metrics): Don't clear non-existent blocks.
9048
9049 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
9050 font was not found.
9051 (x_draw_glyph_string): Use underline position and thickness from font.
9052
9053 * w32uniscribe.c (uniscribe_open): Pass font_object to
9054 w32font_open_internal.
9055
90562008-05-14 Kenichi Handa <handa@m17n.org>
9057
9058 These changes are to delete all legacy font-handling codes, and
9059 make Emacs use only font-backends.
9060
9061 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
9062 (frame.o, image.o, print.o): Depend on $(FONTSRC).
9063
9064 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
9065
9066 * charset.h (Vcharset_non_preferred_head)
9067 (Vcurrent_iso639_language): Extern them.
9068
9069 * charset.c (Vcharset_non_preferred_head): New variable.
9070 (Vcurrent_iso639_language): New variable.
9071 (syms_of_charset): Declare it as a Lisp variable.
9072 (char_charset): Don't check non preferred charsets. As a last
9073 resort, return charset_unicode.
9074 (Fset_charset_priority): Update Vcharset_non_preferred_head.
9075
9076 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
9077 conditionals. Don't check enable_font_backend. Delete all codes
9078 used only when USE_FONT_BACKEND is not defined.
9079
9080 * dispextern.h (struct glyph_string): Change type of `font' to
9081 `struct font *'.
9082 (struct glyph_string): New member underline_position and
9083 underline_thickness.
9084 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
9085 (struct face): Change type of `font' to `struct font *'. Remove
9086 members `font_name', `font_info_id'.
9087 (per_char_metric, encode_char): Delete externs.
9088 (calc_pixel_width_or_height): Adjust the prototype.
9089
9090 * emacs.c (enable_font_backend): Delete extern.
9091 (main): Don't set enable_font_backend. Don't check the command
9092 line argument "-disable-font-backend".
9093
9094 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
9095 (enum font_property_index): New members FONT_DPI_INDEX,
9096 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
9097 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
9098 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
9099 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
9100 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
9101 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
9102 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
9103 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
9104 (struct font_spec, struct font_entity): New structs.
9105 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
9106 (struct font): Many members from old "struct font_info" moved to
9107 here. Members font and entity deleted.
9108 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
9109 the new font-related objects.
9110 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
9111 (CHECK_FONT_GET_OBJECT): Likewise.
9112 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
9113 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
9114 (struct font_driver): New members case_sensitive anc check. Type
9115 of the member list and open changed.
9116 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
9117 (font_symbolic_width, font_find_object, font_get_spec)
9118 (font_set_lface_from_name): Delete extern.
9119 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
9120
9121 * font.c: Include <strings.h>.
9122 (enable_font_backend): Delete it.
9123 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
9124 (CHECK_VALIDATE_FONT_SPEC): Delete it.
9125 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
9126 (null_string): Delete it.
9127 (null_vector): Make it static.
9128 (font_family_alist): Delete it.
9129 (Qnormal): Extern it.
9130 (QCextra, QClanguage): Delete it.
9131 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
9132 (font_make_spec, font_make_entity, font_make_object)
9133 (font_intern_prop): Renamed from intern_downcase. Don't downcase
9134 the string. Callers changed.
9135 (font_pixel_size): Adjusted for the format change of font-related
9136 objects.
9137 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
9138 (font_style_to_value, font_style_symbolic): New function.
9139 (build_font_family_alist): Delete it.
9140 (font_registry_charsets): Use Fassoc_string instead of
9141 assq_no_quit.
9142 (font_prop_validate_symbol): Don't return null_string.
9143 (font_prop_validate_style): Adjusted for the change of
9144 style-related values in a font vector.
9145 (font_property_table): Delete entries for QClanguage and
9146 QCantialias, add entries for QCavgwidth.
9147 (get_font_prop_index): Delete the 2nd argument FROM.
9148 (font_prop_validate): Arguments changed.
9149 (font_put_extra): Adjusted for the change of font-related objects.
9150 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
9151 (font_parse_fcname, font_unparse_fcname)
9152 (font_prepare_composition): Likewise.
9153 (font_parse_family_registry): Renamed from font_merge_old_spec.
9154 (otf_open): Delete the 1st arg entity.
9155 (font_otf_capability): Adjusted for the above change.
9156 (font_score): New arg alternate_families. Adjusted for the change
9157 of font-related objects.
9158 (font_sort_entites): New arg best_only.
9159 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
9160 Delete them.
9161 (font_match_p): Check alternate families.
9162 (font_find_object): Delete it.
9163 (font_check_object): New function.
9164 (font_clear_cache): Adjusted for the change of font-related objects.
9165 (font_delete_unmatched): New arg.
9166 (font_list_entities): Call font_driver->list with a spec that
9167 doesn't specify style-related properties.
9168 (font_matching_entity): Arguments changed. Caller changed.
9169 (font_open_entity): Adjusted for the change of font-related objects.
9170 (font_close_object, font_has_char, font_encode_char)
9171 (font_get_name, font_get_spec): Likewise.
9172 (font_spec_from_name, font_clear_prop, font_update_lface):
9173 New functions.
9174 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
9175 (font_prepare_for_face, font_done_for_face, font_open_by_name)
9176 (font_at): Adjusted for the change of font-related objects.
9177 (font_range): New function.
9178 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
9179 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
9180 (Fcopy_font_spec, Fmerge_font_spec): New function.
9181 (Ffont_family_list): Renamed from list-families.
9182 (Finternal_set_font_style_table): Arguments changed.
9183 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
9184 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
9185 change of font-related objects.
9186 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
9187
9188 * fontset.h (struct font_info): Delete it. Most members go to
9189 struct font.
9190 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
9191 (enum FONT_SPEC_INDEX): Delete it.
9192 (font_info, list_fonts_func, load_font_func, query_font_func)
9193 (set_frame_fontset_func, find_ccl_program_func)
9194 (get_font_repertory_func, new_fontset_from_font_name): Delete
9195 externs.
9196 (fontset_from_font_name): Extern it.
9197 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
9198 (FONT_INFO_FROM_FACE): Deleted.
9199 (face_for_font): Adjust prototype.
9200
9201 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
9202 conditionals. Don't check enable_font_backend. Delete all codes
9203 used only when USE_FONT_BACKEND is not defined.
9204 (get_font_info_func, list_font_func, load_font_func)
9205 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
9206 (get_font_repertory_func): Delete them.
9207 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
9208 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
9209 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
9210 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
9211 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
9212 (fontset_compare_rfontdef): New function.
9213 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
9214 rfont-defs by qsort. Adjusted for the change of font-group vector.
9215 (load_font_get_repertory): Deleted.
9216 (fontset_find_font): Use new macros to ref/set elements of
9217 font-def and rfont-def.
9218 (fontset_font): Fix the timing of remembering that no font for C.
9219 (free_face_fontset): Do nothing if the face has no fontset.
9220 (face_suitable_for_char_p): Use new macros to ref/set elements of
9221 rfont-def.
9222 (face_for_char): Likewise. Call face_for_char with font_object.
9223 (fs_load_font): Delete. Delete #pragma surrounding it.
9224 (fs_query_fontset): Use strcasecmp instead of strcmp.
9225 (generate_ascii_font_name): Adjusted for the format change of
9226 font-spec.
9227 (Fset_fontset_font): Likewise. Use new macros to set elements of
9228 font-def.
9229 (Fnew_fontset): Use font_unparse_xlfd to generate
9230 FONTSET_ASCII (fontset).
9231 (new_fontset_from_font_name): Deleted.
9232 (fontset_from_font): Renamed from new_fontset_from_font. Check if
9233 a fontset is already created for the font. FIx updating of
9234 Vfontset_alias_alist.
9235 (fontset_ascii_font): Deleted.
9236 (Ffont_info): Adjusted for the format change of font-spec.
9237 (Finternal_char_font): Likewise.
9238 (Ffontset_info): Likewise.
9239 (syms_of_fontset): Don't check load_font_func.
9240
9241 * fns.c (internal_equal): Handle PREV_FONT.
9242
9243 * frame.h: Delete USE_FONT_BACKEND conditional.
9244
9245 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
9246 conditionals. Don't check enable_font_backend. Delete all codes
9247 used only when USE_FONT_BACKEND is not defined.
9248 (x_set_font): Call x_new_font, not x_new_fontset2.
9249 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
9250 already set for the frame.
9251
9252 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
9253 a font-entity by font_make_entity. Use font_intern_prop instead
9254 of intern_downcase. Use FONT_SET_STYLE to set a style-related
9255 font property. If a font is scalable, set avgwidth property to 0.
9256 Set font-entity property by font_put_extra.
9257 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
9258 (ffont_driver): Adjusted for the change of struct font_driver.
9259 (ftfont_spec_pattern): New function.
9260 (ftfont_list): Return a list, not vector.
9261 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
9262 (ftfont_list_family): Don't downcase names.
9263 (ftfont_free_entity): Deleted.
9264 (ftfont_open): Return a font-object. Adjusted for the change of
9265 struct font. Get underline_thickness and underline_position from
9266 font property. Don't update dpyinfo->smallest_font_height and
9267 dpyinfo->smallest_char_width.
9268 (ftfont_close): Don't free `struct font'.
9269 (ftfont_has_char): Adjusted for the format change of font-entity.
9270 (ftfont_encode_char, ftfont_text_extents): Likewise.
9271
9272 * ftxfont.c (ftxfont_list): Return a list, not vector.
9273 (ftxfont_open): Return a font-object. Adjusted for the change of
9274 struct font. Get underline_thickness and underline_position from
9275 font property. Don't update dpyinfo->smallest_font_height and
9276 dpyinfo->smallest_char_width.
9277 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
9278 (ftxfont_draw): Adjusted for the change of struct font.
9279
9280 * image.c (image_ascent): Don't include "charset.h". Include
9281 "character.h" and "font.h".
9282
9283 * lisp.h (enum pvec_type): New member PREV_FONT.
9284 (Fassoc_string): EXFUN it.
9285
9286 * print.c: Include font.h.
9287 (print_object): Handle font-related objects.
9288
9289 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
9290 conditionals. Don't check enable_font_backend. Delete all codes
9291 used only when USE_FONT_BACKEND is not defined.
9292 (handle_auto_composed_prop): Do nothing if it->f is not on a
9293 window system. Check how many following characters can be
9294 displayed by the same font.
9295 (calc_pixel_width_or_height): Type of the 4th arg is changed to
9296 'struct font *'.
9297 (get_char_face_and_encoding): Assign the whole encoding task to
9298 the `encode-char' method of a font driver.
9299 (fill_composite_glyph_string): Adjusted for the change of `struct
9300 face' and `struct glyph_string'.
9301 (fill_glyph_string): Likewise.
9302 (get_per_char_metric): Arguments changed.
9303 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
9304 and `struct glyph_string'.
9305 (produce_stretch_glyph, calc_line_height_property)
9306 (x_produce_glyphs): Likewise.
9307
9308 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
9309 conditionals. Don't check enable_font_backend. Delete all codes
9310 used only when USE_FONT_BACKEND is not defined. Use
9311 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
9312 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
9313 (Qp): Extern them.
9314 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
9315 Deleted.
9316 (struct font_name): Deleted.
9317 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
9318 (compare_fonts_by_sort_order): New function.
9319 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
9320 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
9321 Deleted.
9322 (Fx_family_fonts): Use font_list_entities, and sort fonts by
9323 compare_fonts_by_sort_order.
9324 (Fx_font_family_list): Call Ffont_family_list.
9325 (face_numeric_value, face_numeric_weight, face_numeric_slant)
9326 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
9327 (face_symbolic_slant, face_symbolic_swidth)
9328 (split_font_name_into_vector, build_font_name_from_vector)
9329 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
9330 (font_rescale_ratio, split_font_name, build_font_name)
9331 (free_font_names, sort_fonts, x_face_list_fonts)
9332 (face_font_available_p, sorted_font_list, cmp_font_names)
9333 (font_list_1, concat_font_list, font_list, remove_duplicates):
9334 Deleted.
9335 (Fx_list_fonts): Use Ffont_list.
9336 (LFACE_AVGWIDTH): Deleted.
9337 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
9338 by FONTP.
9339 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
9340 (set_lface_from_font_name): Delete it.
9341 (set_lface_from_font): Renamed from
9342 set_lface_from_font_and_fontset. Caller changed. Don't set
9343 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
9344 for face.
9345 (merge_face_vectors): Copy font-spec if necessary.
9346 Clear properties of the font-spec if necessary.
9347 (merge_face_ref): Clear properties of the font-spec if necessary.
9348 (Finternal_set_lisp_face_attribute): Likewise.
9349 (set_font_frame_param): Use font_load_for_lface to load a
9350 font-object, and call Fmodify_frame_parameters with it.
9351 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
9352 font name by Ffont_xlfd_name.
9353 (Finternal_lisp_face_attribute_values): Don't check QCweight,
9354 QCslant, and QCwidth.
9355 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
9356 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
9357 Compare fonts by EQ.
9358 (lookup_non_ascii_face): Deleted.
9359 (face_for_font): The 2nd argument changed.
9360 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
9361 Check atomic font properties by case insensitive.
9362 (realize_non_ascii_face): Set face->overstrike correctly.
9363 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
9364 (dump_realized_face): Get font name from
9365 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
9366
9367 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
9368 conditionals. Don't check enable_font_backend. Delete all codes
9369 used only when USE_FONT_BACKEND is not defined.
9370 (xic_create_xfontset): Original code deleted and renamed from
9371 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
9372 (x_make_gc): Don't set GCFont in GCs.
9373 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
9374 opened by "fixed".
9375 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
9376 find_ccl_program_func, query_font_func, set_frame_fontset_func,
9377 get_font_repertory_func.
9378
9379 * xfont.c: Include <stdlib.h> and "ccl.h".
9380 (struct xfont_info): New structure.
9381 (xfont_query_font): Deleted.
9382 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
9383 moved from xterm.c.
9384 (xfont_driver): Adjusted for the change of struct font_driver.
9385 (compare_font_names): New function.
9386 (xfont_list_pattern): Sort font names case insensitively. Make
9387 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
9388 (xfont_list): Return a list, not vector.
9389 (xfont_match): If the font doesn't have QCname property, generate
9390 a name from the other font properties.
9391 (xfont_open): Return a font-object. Adjusted for the change of
9392 struct font. Get underline_thickness and underline_position from
9393 font property. Don't update dpyinfo->smallest_font_height and
9394 dpyinfo->smallest_char_width.
9395 (xfont_close): Don't free struct font.
9396 (xfont_prepare_face): Adjusted for the change of struct font.
9397 (xfont_done_face): Deleted.
9398 (xfont_has_char): Adjusted for the change of struct font.
9399 (xfont_encode_char, xfont_draw): Likewise.
9400 (xfont_check): New function.
9401
9402 * xftfont.c (xftfont_list): Adjusted for the change of `list'
9403 callback function.
9404 (xftfont_match): Adjusted for the format change of font-entity.
9405 (xftfont_open): Adjusted for the format change of font-entity and
9406 font-object. Adjusted for the change of struct font. Return a
9407 font-object. Don't update dpyinfo->smallest_font_height and
9408 dpyinfo->smallest_char_width.
9409 (xftfont_close): Block input while calling XftFontClose.
9410 (xftfont_prepare_face): Don't block input while calling
9411 xftfont_get_colors. Adjusted for the change of struct font.
9412 (xftfont_shape): Return value of error case fixed.
9413
9414 * xrdb.c (x_load_resources): Don't setup a fontset resource.
9415
9416 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
9417 conditionals.
9418 (FONT_WIDTH): Return (f)->max_width.
9419 (struct x_display_info): Delete member `font'.
9420 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
9421 (x_find_ccl_program, x_get_font_repertory): Delete externs.
9422 (struct x_output): Change type of `font' to `struct font *'.
9423
9424 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
9425 conditionals. Don't check enable_font_backend. Delete all codes
9426 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
9427 (x_per_char_metric, x_encode_char): Deleted.
9428 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
9429 (x_compute_glyph_string_overhangs): Adjusted for the change of
9430 `struct face'.
9431 (x_draw_glyph_string_foreground)
9432 (x_draw_composite_glyph_string_foreground): Likewise.
9433 (x_draw_glyph_string): Likewise. Use font->underline_position and
9434 font->underline_thickness.
9435 (x_new_font): Renamed from x_new_fontset2.
9436 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
9437 (x_check_font): Call `check' method of a font driver.
9438 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
9439 (x_query_font, x_get_font_repertory): Deleted.
9440 (x_find_ccl_program): Renamed and moved to xfont.c.
9441 (x_redisplay_interface): Adjusted for the change of `struct
9442 redisplay_interface'.
9443
9444 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
9445 conditionals. Don't check enable_font_backend. Delete all codes
9446 used only when USE_FONT_BACKEND is not defined. Surround non-used
9447 code by "#ifdef OLD_FONT" and "endif".
9448 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
9449
9450 * w32font.h (struct w32font_info): New member.
9451 (FONT_COMPAT): New macro.
9452 (w32font_open_internal): Prototype adjusted.
9453
9454 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
9455 OLD_FONT" and "endif".
9456
9457 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
9458 conditionals. Don't check enable_font_backend. Delete all codes
9459 used only when USE_FONT_BACKEND is not defined.
9460 (w32font_open): Return a font-object. Make a font-object by
9461 font_make_object. Adjusted for the change of struct w32font_info.
9462 (w32font_close): Don't free struct font. Adjusted for the change
9463 of struct w32font_info.
9464 (w32font_encode_char, w32font_text_extents, w32font_draw):
9465 Adjusted for the change of struct w32font_info.
9466 (w32font_draw): Likewise.
9467 (w32font_list_internal): Return a list, not vector.
9468 (w32font_open_internal): Change the 4th arg to font-object.
9469 Adjusted for the change of struct w32font_info and font-object format.
9470 (add_font_name_to_list): Don't downcase names.
9471 (w32_enumfont_pattern_entity): Make a font-entity by
9472 font_make_entity. Adjusted for the format change of font-entity.
9473 Use FONT_SET_STYLE to set a style-related font property. If a
9474 font is scalable, set avgwidth property to 0. Set font-entity
9475 property by font_put_extra.
9476 (font_matches_spec): Adjusted for the format change of font-entity.
9477 (w32_weight_table, w32_decode_weight): New variables.
9478 (w32_encode_weight): New function.
9479 (fill_in_logfont): Adjusted for the format change of font-spec.
9480 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
9481 weight value.
9482 (w32font_driver): Adjusted for the change of struct font_driver.
9483
9484 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
9485 conditionals. Don't check enable_font_backend. Surround non-used
9486 code by "#ifdef OLD_FONT" and "endif".
9487 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
9488 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
9489
9490 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
9491 conditionals. Don't check enable_font_backend. Delete all codes
9492 used only when USE_FONT_BACKEND is not defined. Surround non-used
9493 code by "#ifdef OLD_FONT" and "endif".
9494
9495 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
9496 (uniscribe_open): Return value changed to font-object.
9497 Adjusted for the format change of font-object.
9498 (uniscribe_otf_capability): Adjusted for the change of struct font.
9499 (add_opentype_font_name_to_list): Don't downcase names.
9500 (uniscribe_font_driver): Adjusted for the change of struct
9501 font_driver.
9502
95032008-05-13 Chong Yidong <cyd@stupidchicken.com>
9504
9505 * dispnew.c (update_frame_1): Check if tty output is still valid
9506 before flushing it.
9507
95082008-05-13 Jan Djärv <jan.h.d@swipnet.se>
9509
9510 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
9511 to Gtk+ menus.
9512
95132008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
9514
9515 * dired.c (file_name_completion): Tweak the code so as to always do it
9516 in a single pass. Tighten the scope of some variables.
9517
9518 * dired.c (Qdefault_directory): New var.
9519 (file_name_completion): Use it instead of Fexpand_file_name.
9520 (syms_of_dired): Initialize it.
9521
95222008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
9523
9524 * fileio.c (double_dollars): Remove dead code.
9525
95262008-05-10 Eli Zaretskii <eliz@gnu.org>
9527
9528 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
9529 Mention w32-get-true-file-attributes in doc string.
9530
9531 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
9532
95332008-05-09 Glenn Morris <rgm@gnu.org>
9534
9535 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
9536 2008-04-23.
9537
95382008-05-09 Eli Zaretskii <eliz@gnu.org>
9539
9540 Support for reporting owner and group of each file on MS-Windows:
9541 * dired.c (stat_uname, stat_gname): New functions, with special
9542 implementation for w32.
9543 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
9544
9545 * w32.c: Rename the_passwd_* to dflt_passwd_*.
9546 (dflt_group_name): New static variable.
9547 (dflt_group): Rename from the_group.
9548 (init_user_info): Init dflt_group fields. Get user's group name
9549 from LookupAccountSid.
9550 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
9551 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
9552 New initialization states.
9553 (globals_of_w32): Initialize them to zero. Initialize the default
9554 group name to "None".
9555 (GetFileSecurity_Name): New global var, the name of the function
9556 to call for GetFileSecurity.
9557 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
9558 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
9559 (get_file_security, get_security_descriptor_owner)
9560 (get_security_descriptor_group, is_valid_sid)
9561 (get_file_security_desc, get_rid, get_name_and_id)
9562 (get_file_owner_and_group): New functions.
9563 (stat): Use get_file_security_desc and get_file_owner_and_group to
9564 report the owner and primary group of each file. Don't ignore the
9565 high 32 bits of file's size, now that st_size is 64-bit wide.
9566 Fix test when to get true file attributes.
9567 (init_user_info): Use get_rid instead of equivalent inline code.
9568 (fstat): Don't ignore the high 32 bits of file's size.
9569
95702008-05-09 Chong Yidong <cyd@stupidchicken.com>
9571
9572 * image.c (png_load): Use correct bit-depth for setting background
9573 color.
9574
95752008-05-08 Eli Zaretskii <eliz@gnu.org>
9576
9577 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
9578 epa-hook.elc.
9579
95802008-05-08 Juanma Barranquero <lekktu@gmail.com>
9581
9582 * font.c (Ffont_match_p): Don't use `iff' in docstring.
9583
95842008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
9585
9586 * macfns.c (Fx_create_frame): Make a copy of frame parameters
9587 because the original parameters are in pure storage now.
9588 (mac_window): Remove unused params. Update callers.
9589
95902008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
9591
9592 * lread.c (substitute_object_recurse): Use lower-level primitives.
9593 Don't signal errors when traversing sub-char-tables.
9594 Don't loop over all the possible characters when traversing char-tables.
9595
9596 * print.c (print_preprocess): Add sub-char-tables to the print-table,
9597 just like we do in print.c.
9598
95992008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
9600
9601 * minibuf.c (Ftry_completion): Remove code left over from when we used
9602 scmp instead of Fcompare_strings.
9603
96042008-05-04 Juanma Barranquero <lekktu@gmail.com>
9605
9606 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
9607
96082008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9609
9610 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
9611 Create bitmap context in native byte order.
9612
9613 * macterm.c (XDrawLine)
9614 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
9615 context in native byte order.
9616
96172008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9618
9619 * config.in: Regenerate.
9620
9621 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
9622 New definitions for Image I/O support.
9623 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9624 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
9625 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9626 (mac_data_provider_release_data, image_load_image_io)
9627 [USE_MAC_IMAGE_IO]: New functions.
9628 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
9629 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
9630 (init_image_func_pointer) [MAC_OSX]: Remove function.
9631 (image_load_quartz2d) [MAC_OSX]: Check availability of
9632 CGImageCreateWithPNGDataProvider at compile time.
9633 Use lowercase `false' for boolean constant.
9634 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
9635 Use image_load_image_io.
9636 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
9637 Don't check MyCGImageCreateWithPNGDataProvider.
9638 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
9639 Don't call init_image_func_pointer.
9640
9641 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
9642
9643 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
9644 Make variable non-static.
9645 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9646 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9647
9648 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
9649 (RED_FROM_ULONG): Mask off higher bits.
9650 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
9651
9652 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
9653 Include AvailabilityMacros.h.
9654 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
9655 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
9656
96572008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
9658
9659 * chartab.c (Fset_char_table_range): If range is t, really set all
9660 chars to that value.
9661
96622008-05-03 Eli Zaretskii <eliz@gnu.org>
9663
9664 * dired.c (Ffile_attributes): Don't allow the device number become
9665 negative.
9666
96672008-05-02 Daiki Ueno <ueno@unixuser.org>
9668
9669 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
9670
96712008-05-02 Juri Linkov <juri@jurta.org>
9672
9673 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
9674 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
9675 DEFAULT argument as a list of default values in docstrings.
9676
96772008-05-01 Chong Yidong <cyd@stupidchicken.com>
9678
9679 * puresize.h (BASE_PURESIZE): Increase to 1210000.
9680
96812008-05-01 Martin Rudalics <rudalics@gmx.at>
9682
9683 * dispnew.c (change_frame_size_1): Preserve small windows when
9684 shrinking frames by calling set_window_height|width with third
9685 arg 2.
9686
9687 * window.h (struct window): Replace field too_small_ok by field
9688 resize_proportionally.
9689
9690 * window.c (make_window): Initialize resize_proportionally.
9691 (enlarge_window): Temporarily set resize_proportionally to make
9692 sure that shrink_windows does scale the window proportionally.
9693 (shrink_windows): When window has resize_proportionally set try
9694 to shrink it proportionally by stealing from other windows.
9695 (struct saved_window, Fset_window_configuration)
9696 (compare_window_configurations): Handle resize_proportionally.
9697 (WINDOW_TOTAL_SIZE): New macro.
9698 (window_min_size, shrink_windows, size_window): Use it.
9699 (check_min_window_sizes): Remove. Invalid values of
9700 window-min-height|width are handled by window_min_size_2 now.
9701 (size_window, Fsplit_window, enlarge_window)
9702 (adjust_window_trailing_edge, grow_mini_window): Don't call
9703 check_min_window_sizes.
9704 (window_min_size_2, window_min_size_1, window_min_size):
9705 New argument safe_p for retrieving "safe" minimum sizes.
9706 (Fdisplay_buffer, Fsplit_window, enlarge_window)
9707 (adjust_window_trailing_edge, grow_mini_window):
9708 Adjust arguments of window_min_size... functions.
9709 (shrink_windows): Argument min_size removed. New argument
9710 safe_p allows shrinking windows to their safe minimum sizes.
9711 Calculate minimum size and decide whether a window shall be
9712 deleted for each window individually.
9713 (size_window): When nodelete_p equals 2, tell shrink_windows to
9714 delete windows only if their new minimum size is no more safe.
9715 (shrink_window_lowest_first): Call window_min_size_1 to make
9716 sure to preserve modeline of bottom-most window when resizing
9717 the minibuffer.
9718 (Fset_window_configuration, Fcurrent_window_configuration)
9719 (compare_window_configurations): Do not handle
9720 window-min-height|width any more.
9721 (syms_of_window): Clarify window-min-height|width doc-strings.
9722
97232008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
9724
9725 * dired.c (file_name_completion): Fix up the encoding/decoding issue
9726 some more. Copy some of the code from Ftry_completions.
9727 Remove special case code that dates back to initial revision when the
9728 slash was only added when necessary and that can't trigger nowadays.
9729
97302008-04-27 Kenichi Handa <handa@m17n.org>
9731
9732 * font.c (font_prop_validate): Signal `error' instead of `font'.
9733
97342008-04-29 Jason Rumney <jasonr@gnu.org>
9735
9736 * w32fns.c (Fw32_battery_status): New defun.
9737 (syms_of_w32fns): Defsubr it.
9738
97392008-04-28 Andreas Schwab <schwab@suse.de>
9740
9741 * dired.c (file_name_completion): Fix another mixing of encoded
9742 and decoded names.
9743
97442008-04-28 Juanma Barranquero <lekktu@gmail.com>
9745
9746 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
9747
97482008-04-27 Juanma Barranquero <lekktu@gmail.com>
9749
9750 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
9751
97522008-04-27 Andreas Schwab <schwab@suse.de>
9753
9754 * dired.c (file_name_completion): Fix inappropriate mixing of
9755 encoded and decoded names.
9756
9757 * xterm.c (XTread_socket): Fix use of uninitialized variable.
9758
9759 * puresize.h (BASE_PURESIZE): Increase to 1200000.
9760
97612008-04-26 Eli Zaretskii <eliz@gnu.org>
9762
9763 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
9764 2008-03-31, it's not needed anymore with `struct stat' definition
9765 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
9766 for the same reasons.
9767
97682008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
9769
9770 * m/sparc.h: Additional redefinitions for GNU/Linux.
9771
97722008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9773
9774 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
9775 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
9776 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
9777 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
9778 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9779 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
9780 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9781 Likewise.
9782
9783 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
9784 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
9785 (mac_ax_number_of_characters): Add externs.
9786 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9787 [USE_MAC_TSM]: Likewise.
9788 (mac_handle_text_input_event) [MAC_OSX]:
9789 Handle kEventTextInputOffsetToPos for no active input area case.
9790 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9791 (mac_handle_document_access_event)
9792 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
9793 (install_application_handler) [MAC_OSX]: Register handlers for
9794 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9795 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9796 Register mac_handle_document_access_event.
9797
9798 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
9799 Make functions non-static.
9800
98012008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
9802
9803 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
9804 (read_file_name_completion_ignore_case, insert_default_directory)
9805 (Qdefault_directory): Move to minibuffer.el.
9806 (Fread_file_name): Call the new `read-file-name' instead.
9807
98082008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9809
9810 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
9811 Make function non-static.
9812 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
9813 Remove function.
9814 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9815 Move to mactoolbox.c.
9816 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
9817
9818 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
9819 (mac_rect_make): New macro.
9820
9821 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
9822 instead of float.
9823 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9824 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
9825 (XSetBackground) [USE_CG_DRAWING]: Likewise.
9826 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
9827 CGRectMake.
9828 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9829 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
9830 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
9831 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9832 instead of WindowRef in argument type.
9833 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
9834 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
9835 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
9836 instead of DISPLAY. All uses changed.
9837 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
9838 (x_calc_absolute_position): Simplify so as not to use
9839 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
9840
9841 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9842 instead of WindowRef in argument type.
9843 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
9844 [TARGET_API_MAC_CARBON]: Remove externs.
9845 (create_apple_event, mac_event_parameters_to_lisp)
9846 [TARGET_API_MAC_CARBON]: Add externs.
9847
9848 * mactoolbox.c (Vmac_ts_script_language_on_focus)
9849 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
9850 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
9851 is clicked.
9852 (x_activate_menubar): Remove extern for saved_menu_event_location.
9853 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9854 Move from mac.c.
9855
98562008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9857
9858 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
9859 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
9860
98612008-04-23 Jason Rumney <jasonr@gnu.org>
9862
9863 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
9864 attributes only for local files.
9865
9866 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
9867 default to Qlocal.
9868
98692008-04-22 Juri Linkov <juri@jurta.org>
9870
9871 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
9872 read-buffer-to-switch instead of using the letter "B".
9873
98742008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9875
9876 * fileio.c (Qdefault_directory): New variable.
9877 (Fread_file_name): Use it to pass `dir' to the completion functions.
9878
98792008-04-20 Chong Yidong <cyd@stupidchicken.com>
9880
9881 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
9882
98832008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
9884
9885 * keyboard.c (Vpre_help_message): Remove.
9886 (show_help_echo): Remove default C code.
9887
9888 * dired.c (directory_files_internal, file_name_completion):
9889 Only call ENCODE_FILE if the string is indeed decoded.
9890
98912008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9892
9893 * Makefile.in (TOOLKIT_DEFINES): Remove.
9894 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
9895
98962008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9897
9898 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
9899 (mactoolbox.o): New target.
9900
9901 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
9902 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
9903
9904 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
9905 Use mac_set_frame_window_background instead of XSetWindowBackground.
9906 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
9907 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
9908 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
9909 instead of SetWindowTitleWithCFString.
9910 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
9911 Move function to mactoolbox.c.
9912 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
9913 Use mac_set_window_modified instead of SetWindowModified.
9914 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
9915 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
9916 (Fx_focus_frame): Use mac_front_non_floating_window instead of
9917 FrontNonFloatingWindow. Use mac_activate_window instead of
9918 ActivateWindow. Use mac_active_non_floating_window instead of
9919 ActiveNonFloatingWindow.
9920 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
9921 Use mac_show_hourglass and mac_hide_hourglass.
9922 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
9923 instead of GetGlobalMouse.
9924 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
9925 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
9926 Use mac_bring_window_to_front instead of BringToFront.
9927 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
9928 mactoolbox.c.
9929 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
9930 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
9931 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
9932 mactoolbox.c.
9933
9934 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
9935 (XtPointer): Move typedef from macmenu.c.
9936 (enum button_type): Move enum from macmenu.c.
9937 (widget_value): Move typedef from macmenu.c.
9938 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
9939 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9940 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9941 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9942 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9943 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9944 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9945 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
9946 (Selection): Move typedef from macselect.c.
9947 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
9948 macterm.c.
9949 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
9950 (mac_is_window_collapsed, mac_bring_window_to_front)
9951 (mac_send_window_behind, mac_hide_window, mac_show_window)
9952 (mac_collapse_window, mac_front_non_floating_window)
9953 (mac_active_non_floating_window, mac_activate_window)
9954 (mac_move_window_structure, mac_move_window, mac_size_window)
9955 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
9956
9957 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
9958 (enum mac_menu_kind): Move enum to mactoolbox.c.
9959 (min_menu_id): Move variable to mactoolbox.c.
9960 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
9961 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
9962 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
9963 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
9964 [TARGET_API_MAC_CARBON]: Likewise.
9965 (XtPointer): Move typedef to macgui.h.
9966 (enum button_type): Move enum to macgui.h.
9967 (widget_value): Move typedef to macgui.h.
9968 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9969 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9970 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9971 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9972 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9973 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9974 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
9975 (popup_activated_flag): Make variable non-static.
9976 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
9977 (add_menu_item, fill_menu, dispose_menus):
9978 Move functions to mactoolbox.c.
9979 (restore_show_help_function, menu_target_item_handler)
9980 (install_menu_target_item_handler, mac_handle_dialog_event)
9981 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
9982 [TARGET_API_MAC_CARBON]: Likewise.
9983 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
9984 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9985 (find_and_call_menu_selection, name_is_separator): Make function
9986 non-static.
9987 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
9988 to mactoolbox.c.
9989 (set_frame_menubar): Don't call install_menu_quit_handler.
9990 (menu_item_selection): New variable.
9991 (mac_menu_show): Use create_and_show_popup_menu.
9992 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
9993 selection but set variable menu_item_selection. All uses changed.
9994 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
9995 Call install_menu_quit_handler. Move to mactoolbox.c.
9996
9997 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
9998 (Selection): Move typedef to macgui.h.
9999 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
10000 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
10001 Make variables non-static.
10002 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10003 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
10004 Make functions non-static.
10005 (Vmac_service_selection) [MAC_OSX]: Likewise.
10006 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
10007 (mac_valid_selection_target_p, mac_clear_selection)
10008 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10009 (mac_put_selection_value, mac_selection_has_target_p)
10010 (mac_get_selection_value, mac_get_selection_target_list)
10011 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
10012 Move functions to mactoolbox.c.
10013 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
10014 Likewise.
10015 (copy_scrap_flavor_data, mac_handle_service_event)
10016 (install_service_handler) [MAC_OSX]: Likewise.
10017 (syms_of_macselect) <Vmac_dnd_known_types>:
10018 Use mac_dnd_default_known_types.
10019
10020 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10021 Move to mactoolbox.c.
10022 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10023 (Fx_selection_owner_p): Add EXFUN.
10024 (install_window_handler, remove_window_handler, XSetWindowBackground):
10025 Remove externs.
10026 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
10027 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
10028 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
10029 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
10030 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
10031 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
10032 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
10033 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
10034 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
10035 (create_and_show_popup_menu, mac_get_selection_from_symbol)
10036 (mac_valid_selection_target_p, mac_clear_selection)
10037 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10038 (mac_put_selection_value, mac_selection_has_target_p)
10039 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
10040 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
10041 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
10042 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10043 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
10044 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10045 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
10046 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10047 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10048
10049 * mactoolbox.c: New file.
10050
100512008-04-18 Jason Rumney <jasonr@gnu.org>
10052
10053 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
10054
100552008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10056
10057 * character.c (Fmultibyte_char_to_unibyte):
10058 Return latin1 chars unchanged.
10059
10060 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
10061 relocated if it points to `name'.
10062
100632008-04-17 Kenichi Handa <handa@m17n.org>
10064
10065 * data.c (Faset): Allow setting a multibyte character in an
10066 ASCII-only unibyte string.
10067
10068 * lisp.h (STRING_SET_MULTIBYTE): New macro.
10069
100702008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
10071
10072 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
10073 done in config.h.
10074
100752008-04-16 Juanma Barranquero <lekktu@gmail.com>
10076
10077 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
10078 (Fchar_direction): Add usage in the docstring.
10079
100802008-04-15 Chong Yidong <cyd@stupidchicken.com>
10081
10082 * keyboard.c (read_key_sequence): Remove always-true checks.
10083
100842008-04-14 Jason Rumney <jasonr@gnu.org>
10085
10086 * w32font.c (w32font_open_internal): Set max_bounds.descent in
10087 compatibility struct, for better underline positioning.
10088
100892008-04-13 David Hansen <david.hansen@gmx.net>
10090
10091 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
10092 string.
10093
100942008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
10095
10096 * m/hp800.h (XUINT, XSET): Remove.
10097
100982008-04-12 Juanma Barranquero <lekktu@gmail.com>
10099
10100 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
10101 previous change.
10102
101032008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
10104
10105 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
10106 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
10107
101082008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10109
10110 * keymap.h (map_keymap_canonical): Declare.
10111 * xmenu.c (single_keymap_panes): Use it.
10112
101132008-04-11 Glenn Morris <rgm@gnu.org>
10114
10115 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
10116 set the target's value to that of the alias.
10117
101182008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10119
10120 * term.c (set_tty_color_mode): Left over typo.
10121
101222008-04-10 Michael Albinus <michael.albinus@gmx.de>
10123
10124 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
10125 only after check for file name handler functions. Signal, when
10126 native functionality is not supported.
10127 (syms_of_fileio): Declare it unconditionally.
10128
101292008-04-10 Jason Rumney <jasonr@gnu.org>
10130
10131 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
10132 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
10133
10134 * w32.c (logon_network_drive): Also logon to remote drives that
10135 are mapped to drive letters.
10136
101372008-04-10 Glenn Morris <rgm@gnu.org>
10138
10139 * xdisp.c (truncate-partial-width-windows): Doc fix.
10140
101412008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
10142
10143 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
10144 Move functions to minibuffer.el.
10145 (syms_of_fileio): Don't declare them.
10146
101472008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10148
10149 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
10150 (syms_of_minibuf): Remove its initialization.
10151
10152 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
10153
101542008-04-09 Juanma Barranquero <lekktu@gmail.com>
10155
10156 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
10157
101582008-04-09 Jason Rumney <jasonr@gnu.org>
10159
10160 * makefile.w32-in (distclean): Delete makefile too.
10161 (maintainer-clean): New target.
10162
10163 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
10164
10165 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
10166 for new font backend and composite cases.
10167
101682008-04-09 Jan Djärv <jan.h.d@swipnet.se>
10169
10170 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
10171 Most of the code moved to run_timers.
10172 (do_pending_atimers): Call run_timers.
10173 (run_timers): New function.
10174
10175 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
10176 run atimers.
10177
10178 * process.c (wait_reading_process_output): The same as above.
10179
101802008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10181
10182 * minibuf.c (last_exact_completion): Remove variable.
10183 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
10184 (complete_and_exit_1, complete_and_exit_2)
10185 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
10186 (Fdisplay_completion_list, display_completion_list_1)
10187 (Fminibuffer_completion_help, Fself_insert_and_exit)
10188 (Fexit_minibuffer, Fminibuffer_message): Move functions to
10189 minibuffer.el.
10190 (syms_of_minibuf): Remove corresponding initializations.
10191
10192 * keyboard.c (Qdeactivate_mark): New var.
10193 (command_loop_1): Use it to call `deactivate-mark'.
10194 (syms_of_keyboard): Initialize it.
10195
10196 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
10197 to another frame.
10198 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
10199 Don't call set_tty_color_mode.
10200 (store_frame_param): Reset previous_frame rather than call
10201 set_tty_color_mode.
10202 * term.c (set_tty_color_mode): Rewrite.
10203 * dispextern.h (set_tty_color_mode): New type.
10204 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
10205
102062008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
10207
10208 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
10209 for generic chars, which do not exist any more in emacs-unicode.
10210
102112008-04-08 Michael Albinus <michael.albinus@gmx.de>
10212
10213 * coding.c (detect_coding_emacs_mule)
10214 (Ffind_operation_coding_system): Fix typo.
10215
102162008-04-08 Jason Rumney <jasonr@gnu.org>
10217
10218 * w32uniscribe.c (SNAME): Extract only symbol name.
10219
10220 * w32font.h (struct w32_metric_cache): New struct.
10221 (w32font_info): Use it.
10222 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
10223 (CACHE_BLOCKSIZE): New constants.
10224
10225 * w32font.c (Qja, Qko, Qzh): New symbols.
10226 (syms_of_w32font): Initialise them.
10227 (font_matches_spec): Use them to filter by language.
10228 (recompute_cached_metrics): Remove function.
10229 (compute_metrics, clear_cached_metrics): New functions.
10230 (w32font_encode_char): Use them to manage metric cache.
10231 (w32font_text_extents): Cache metrics for all glyphs on demand.
10232 Delay converting glyph indices to WORD until needed.
10233 (w32font_open_internal): Initialize metric cache to empty.
10234 (registry_to_w32_charset): Charset should always be a symbol.
10235 (fill_in_logfont, list_all_matching_fonts): Family should
10236 always be a symbol.
10237
102382008-04-06 Jason Rumney <jasonr@gnu.org>
10239
10240 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
10241 Give up if glyph indices not supported. Use uniscribe obtained
10242 ABC widths for individual metrics. Map glyph clusters back to
10243 characters using fClusterStart flag. Return number of glyphs
10244 produced, not chars processed.
10245 (uniscribe_shape): Map char at FROM to current glyph.
10246
102472008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10248
10249 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
10250 Use SetMenuItemHierarchicalMenu.
10251
102522008-04-05 Jason Rumney <jasonr@gnu.org>
10253
10254 * image.c (pbm_load): Allow color values up to 65535.
10255 Throw an error if max_color_idx is outside the supported range.
10256 Report an error when image size is invalid.
10257 Read two bytes at a time when raw images have max_color_idx above 255.
10258
102592008-04-05 Eli Zaretskii <eliz@gnu.org>
10260
10261 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10262 cFileName a file name that includes `?' characters, use the 8+3
10263 alias in cAlternateFileName instead.
10264
102652008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
10266
10267 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
10268 append "CCL: Quitted" when the CCL program is quitted.
10269 (setup_ccl_program): Initialize ccl->quit_silently to zero.
10270
10271 * ccl.h (struct ccl_program): New member quit_silently.
10272
102732008-04-05 Chong Yidong <cyd@stupidchicken.com>
10274
10275 * search.c (compile_pattern_1): Treat non-nil and non-string of
10276 search-spaces-regexp as nil.
10277
10278 * minibuf.c (Fassoc_string): Tweak docstring.
10279
102802008-04-05 Eli Zaretskii <eliz@gnu.org>
10281
10282 * dired.c (Ffile_attributes): Support inode numbers wider than 32
10283 bits. Remove ugly WINDOWSNT-specific kludge introduced on
10284 2008-03-14 to force inode be positive.
10285
10286 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
10287 _S_* ones, since we now use our own sys/stat.h.
10288 (stat, fstat): Don't mangle the inode number.
10289 (init_user_info): Don't restrict UID and GID to 0-60000 range.
10290
102912008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
10292
10293 * frame.h (struct frame): Give one more bit to `visible' since we use
10294 values larger than 1 to indicate obscured frames on ttys.
10295
10296 * keymap.c (Qkeymap_canonicalize): New var.
10297 (Fmap_keymap_internal): New fun.
10298 (describe_map): Use keymap-canonicalize.
10299
10300 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
10301 (Fundo_boundary): Set them.
10302 (syms_of_undo): Initialize them.
10303 (record_point): Use them instead of last_point_position*.
10304 (last_undo_buffer): Change type.
10305
103062008-04-04 Jason Rumney <jasonr@gnu.org>
10307
10308 * w32font.c (w32font_text_extents): Use font's ascent and descent.
10309 (recompute_cached_metrics): Don't set ascent and descent per char.
10310
10311 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
10312 (uniscribe_check_otf): Add GC protection before consing.
10313 Rearrange loop for counting features.
10314
103152008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10316
10317 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
10318 buffer with byte-size of source buffer.
10319
103202008-04-03 Chong Yidong <cyd@stupidchicken.com>
10321
10322 * callint.c (Fcall_interactively): Handle temporary region even
10323 when shift-select-mode is off.
10324
103252008-04-03 Jason Rumney <jasonr@gnu.org>
10326
10327 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
10328
103292008-04-03 Kenichi Handa <handa@m17n.org>
10330
10331 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
10332 (CATEGORY_MASK_UTF_16): Likewise.
10333 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
10334 binary file.
10335 (detect_coding): Add null-byte detection for a binary file.
10336 (detect_coding_system): Likewise.
10337
103382008-04-03 Jason Rumney <jasonr@gnu.org>
10339
10340 * w32uniscribe.c: New file.
10341
10342 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
10343
10344 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
10345
10346 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
10347 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
10348 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
10349 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
10350 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
10351 (Qphonetic): New symbols.
10352 (syms_of_w32font): Initialize them.
10353 (font_supported_scripts): Use them.
10354 (w32font_list_family): List all charsets.
10355 (w32font_text_extents, recompute_cached_metrics): Fix metric
10356 calculations.
10357 (w32_enumfont_pattern_entity): Make full_type a DWORD.
10358 Give opentype fonts their own format.
10359 (font_matches_spec): New arguments backend and logfont.
10360 Handle :otf spec for uniscribe backend.
10361 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
10362 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
10363
10364 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
10365 font backend.
10366 (globals_of_w32fns): Initialize uniscribe font backend.
10367
10368 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
10369 dependencies.
10370 (w32uniscribe.$(O)): New file to build.
10371 (FONT_OBJ): Include w32uniscribe.$(O).
10372 (LIBS): Add uniscribe libraries.
10373
10374 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
10375
103762008-04-02 Chong Yidong <cyd@stupidchicken.com>
10377
10378 * callint.c (Vshift_select_mode): New var.
10379 (Finteractive): Document new ^ spec.
10380 (Fcall_interactively): Call handle-shift-selection if the ^ spec
10381 is present.
10382
10383 * keyboard.c (Vthis_command_keys_shift_translated): New var.
10384 (command_loop_1): Avoid running the direct display versions of
10385 forward-char and backward-char if shift-selection may occur.
10386 (read_key_sequence): Set Vthis_command_keys_shift_translated if
10387 shift-translation takes place.
10388
10389 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
10390 avoid clobbering by define-minor-mode.
10391
10392 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
10393 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
10394
10395 * syntax.c (Fforward_word): Add ^ interactive spec.
10396
10397 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
10398 (Fscroll_right): Add ^ interactive spec.
10399
104002008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
10401
10402 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
10403
10404 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
10405
10406 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
10407
104082008-03-31 Juri Linkov <juri@jurta.org>
10409
10410 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
10411
104122008-03-30 Jan Djärv <jan.h.d@swipnet.se>
10413
10414 * gtkutil.c (xg_set_geometry): Fix indentation.
10415 (xg_resize_outer_widget): Remove.
10416 (x_wm_size_hint_off): Fix indentation.
10417 (xg_frame_set_char_size): Call flush_and_sync after
10418 gtk_window_resize.
10419 (x_wm_set_size_hint): Pass NULL as geometry window to
10420 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
10421 Add menu bar and tool bar height to base height.
10422 (xg_update_frame_menubar, free_frame_menubar)
10423 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
10424 (update_frame_tool_bar, free_frame_tool_bar):
10425 Change xg_resize_outer_widget to xg_frame_set_char_size.
10426
104272008-03-30 Michael Albinus <michael.albinus@gmx.de>
10428
10429 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
10430 (Fdbus_call_method): New parameter TIMEOUT.
10431 (dbus-send-signal): Optimize UNGCPRO call.
10432
104332008-03-29 Juri Linkov <juri@jurta.org>
10434
10435 * window.c (Fdisplay_buffer): Move call to
10436 Vsplit_window_preferred_function out of conditions that check
10437 if window is eligible for vertical splitting.
10438 When Vsplit_window_preferred_function is non-nil, call it and use
10439 its non-nil return value as window. Otherwise, continue doing
10440 vertical splitting using Fsplit_window with arg horflag=nil.
10441 (syms_of_window) <Vsplit_window_preferred_function>: Change the
10442 default value from `split-window' to nil.
10443
104442008-03-29 Juri Linkov <juri@jurta.org>
10445
10446 * callint.c (Fcall_interactively): Revert 2008-03-16 change
10447 for interactive code letters 'b' and 'B'.
10448
104492008-03-29 Eli Zaretskii <eliz@gnu.org>
10450
10451 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
10452 multibyte string.
10453
104542008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
10455
10456 * keyboard.c (pending_funcalls): New var.
10457 (timer_check): Run it.
10458 (syms_of_keyboard): Initialize it.
10459 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
10460 (Vdelete_terminal_functions): New vars.
10461 (syms_of_terminal): Initialize them.
10462 (Fdelete_terminal): Run delete-terminal-functions.
10463 * xdisp.c (safe_eval): Rewrite.
10464 (safe_call2): New fun.
10465 * frame.c (Qdelete_frame_functions): New var.
10466 (syms_of_frame): Initialize it.
10467 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
10468 * lisp.h (safe_call2, pending_funcalls): Declare.
10469
104702008-03-28 Andreas Schwab <schwab@suse.de>
10471
10472 * indent.c (Fmove_to_column): Move declaration before statements.
10473
104742008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
10475
10476 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
10477 (struct frame): Use bit fields for boolean vars.
10478
10479 * process.c (server_accept_connection): Simplify naming.
10480 (emacs_get_tty_pgrp): Use SDATA.
10481
10482 * coding.c (decode_coding_object): Fix last change.
10483
104842008-03-27 Jason Rumney <jasonr@gnu.org>
10485
10486 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
10487
104882008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
10489
10490 * charset.c (Fdefine_charset_internal): Change the way of
10491 registering charsets in Vcharset_order_list.
10492 (syms_of_charset): Make the charset `eight-bit' supplementary.
10493
104942008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
10495
10496 * regex.c (EXTEND_BUFFER): Change order of pointer addition
10497 operations, to avoid having the difference between pointers
10498 overflow.
10499
105002008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
10501
10502 * indent.c (check_display_width): New fun.
10503 (scan_for_column): Use it.
10504
10505 * data.c (syms_of_data): Mark most-positive-fixnum and
10506 most-negative-fixnum as constants.
10507
10508 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
10509
10510 * indent.c (scan_for_column): Extract from current_column_1.
10511 Merge with the same code from Fmove_to_column.
10512 (current_column_1, Fmove_to_column): Use it.
10513
105142008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
10515
10516 * keymap.c (map_keymap_internal): New fun.
10517 (map_keymap): Use it.
10518 (Fmap_keymap_internal): New fun.
10519 (Fmap_keymap): Remove left-out test from before make_save_value.
10520
10521 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
10522
10523 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
10524 Use XCAR/XCDR.
10525
10526 * process.h (struct Lisp_Process): Remove filter_multibyte.
10527 * process.c (QCfilter_multibyte): Remove.
10528 (setup_process_coding_systems): Don't use filter_multibyte.
10529 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
10530 (read_process_output): Don't adjust multibyteness to filter_multibyte.
10531 (Fset_process_filter_multibyte): Change the coding-system to
10532 approximate the previous behavior.
10533 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
10534 coding-system.
10535
10536 * coding.c (decode_coding_object): When not decoding into a buffer,
10537 obey the coding system's preference of (uni|multi)byte.
10538
105392008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
10540
10541 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
10542 every char is changed and has a different byte-length.
10543 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
10544 Fix int -> EMACS_INT.
10545
105462008-03-23 David Hansen <david.hansen@gmx.net>
10547
10548 * dbusbind.c (xd_read_message): Remove extra copying of message
10549 strings. Check for NULL `interface' or `member'.
10550
105512008-03-22 Eli Zaretskii <eliz@gnu.org>
10552
10553 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10554 cFileName a file name that includes `?' characters, use the 8+3
10555 alias in cAlternateFileName instead.
10556
105572008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
10558
10559 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
10560
105612008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10562
10563 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
10564 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
10565 work on current_buffer only instead (that was already the case
10566 for some of the code anyway).
10567 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
10568 (temp_set_point, temp_set_point_both): Use EMACS_INT.
10569 (SET_PT, SET_PT_BOTH): Adjust.
10570 * intervals.h (set_point, temp_set_point, set_point_both)
10571 (temp_set_point_both): Remove redundant declarations.
10572
105732008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10574
10575 * fileio.c (Finsert_file_contents):
10576 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
10577 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
10578 when buffer != current_buffer anyway.
10579
105802008-03-20 Andreas Schwab <schwab@suse.de>
10581
10582 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
10583 as default.
10584
105852008-03-19 Jason Rumney <jasonr@gnu.org>
10586
10587 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
10588 (syms_of_w32fns): Initialize them.
10589 (HOURGLASS_ID): New constant.
10590 (x_window_to_frame): Don't check hourglass_window.
10591 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
10592 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
10593 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
10594 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
10595 Only change the cursor if hourglass is not active.
10596 (Fx_create_frame): Initialize frame's current_cursor.
10597 (hourglass_atimer): Remove.
10598 (hourglass_started): New function.
10599 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
10600 (show_hourglass): Adapt to w32, changing argument to frame.
10601
10602 * w32term.h (struct w32_output): Remove hourglass_window.
10603 Add current_cursor.
10604
10605 * eval.c (call_debugger, Fsignal):
10606 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
10607 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
10608 (Fexecute_extended_command, cancel_hourglass_unwind):
10609 * minibuf.c (read_minibuf):
10610 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
10611
106122008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
10613
10614 * window.c (run_funs): New fun.
10615 (run_window_configuration_change_hook): Use it to run the buffer-local
10616 and the global part of the hook.
10617
10618 * xdisp.c (format_mode_line_unwind_data): Add window argument.
10619 (unwind_format_mode_line): Restore selected window.
10620 (x_consider_frame_title, Fformat_mode_line): Set selected window.
10621
106222008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
10623
10624 * editfns.c (Fchar_equal): Check they are valid characters.
10625
10626 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
10627
106282008-03-17 Andreas Schwab <schwab@suse.de>
10629
10630 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
10631 against a charset.
10632
10633 * lisp.h (Fbuffer_list): Declare.
10634
106352008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 10636
aac0c6e3
MR
10637 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
10638 handlebox_widget is != 0.
10639
106402008-03-16 Juri Linkov <juri@jurta.org>
10641
10642 * callint.c (Fcall_interactively): For interactive code letters
10643 'b' and 'B' put the buffer list into the list of default "future"
10644 values of the minibuffer.
10645
106462008-03-16 Andreas Schwab <schwab@suse.de>
10647
10648 * keyboard.c (read_key_sequence): Fix downcasing of letters with
10649 modifiers.
10650
10651 * regex.c (re_match_2_internal): Correct matching of a charset
10652 against latin-1 characters.
10653
106542008-03-16 Kenichi Handa <handa@m17n.org>
10655
10656 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
10657 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
10658 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
10659 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
10660 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
10661 CHAR_STRING_ADVANCE.
10662 (produce_chars): Fix for the case that the source and the
10663 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
10664 instead of CHAR_STRING_ADVANCE.
10665 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
10666 STRING_CHAR_ADVANCE.
10667
106682008-03-15 Andreas Schwab <schwab@suse.de>
10669
10670 * regex.c (re_match_2_internal): Correct matching of eight bit
10671 characters in unibyte strings.
10672
106732008-03-15 Martin Rudalics <rudalics@gmx.at>
10674
10675 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
10676 at end of range when it coincides with the end of the buffer.
10677
106782008-03-14 Eli Zaretskii <eliz@gnu.org>
10679
10680 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
10681
10682 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
10683
106842008-03-14 Jason Rumney <jasonr@gnu.org>
10685
10686 * editfns.c (initial_tz): New variable.
10687 (syms_of_editfns): Initialize it.
10688 (Fset_time_zone_rule): Set it when first called.
10689 Use it when TZSTRING is nil.
10690
10691 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
10692 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
10693 (monitor_from_point_fn, get_monitor_info_fn): New globals.
10694 (globals_of_w32fns): Initialize them.
10695 (compute_tip_xy): Use them to position tooltips.
10696
106972008-03-14 Glenn Morris <rgm@gnu.org>
10698
10699 * emacs.c (main): Revert previous change.
10700 (standard_args): Revert -internal-script back to -scriptload,
10701 and remove the long-option form.
10702
107032008-03-13 Glenn Morris <rgm@gnu.org>
10704
10705 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
10706 Remove option -enable-font-backend.
10707
107082008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
10709
10710 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
10711
107122008-03-11 Jan Djärv <jan.h.d@swipnet.se>
10713
10714 * xterm.c (x_connection_closed): For GTK: If this is the last
10715 terminal just exit without closing the display.
10716
107172008-03-11 Jason Rumney <jasonr@gnu.org>
10718
10719 * w32font.c (w32font_full_name): Use floor to round.
10720
f0131492 107212008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
10722
10723 * sound.c (alsa_configure): Declare vol at beginning of block.
10724
10725 * fontset.c (Ffontset_info): Remove extra semicolon.
10726
107272008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
10728
10729 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
10730 size of resulting string.
10731
107322008-03-10 Jason Rumney <jasonr@gnu.org>
10733
10734 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
10735
107362008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10737
10738 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
10739 Don't pretend as if characters with display property haven't been
10740 consumed for string-replacing-string case.
10741
107422008-03-08 Kim F. Storm <storm@cua.dk>
10743
10744 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
10745 (get_next_display_element, next_element_from_string)
10746 (next_element_from_ellipsis, next_element_from_buffer): Use it.
10747
107482008-03-08 Andreas Schwab <schwab@suse.de>
10749
10750 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
10751
107522008-03-06 Jason Rumney <jasonr@gnu.org>
10753
10754 * w32font.c (w32_registry): Take font_type argument. Use ANSI
10755 when charset not specified. Only translate ANSI to unicode when
10756 font_type is truetype.
10757 (w32font_coverage_ok): New function.
10758 (add_font_entity_to_list): Use it to filter unsuitable fonts.
10759
107602008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
10761
10762 * lread.c (Fread_char): Resolve modifiers.
10763 (Fread_char_exclusive): Likewise.
10764
10765 * character.c (char_resolve_modifier_mask): New function.
10766 (char_string): Use char_resolve_modifier_mask.
10767 (Fchar_resolve_modifiers): New function.
10768 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
10769 function.
10770
107712008-03-04 Jason Rumney <jasonr@gnu.org>
10772
10773 * makefile.w32-in: Always include w32font.c in the build.
10774 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
10775
107762008-03-04 Andreas Schwab <schwab@suse.de>
10777
10778 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
10779 (versionclean): Likewise.
10780
107812008-03-04 Juanma Barranquero <lekktu@gmail.com>
10782
10783 * .cvsignore: Add oo.
10784
107852008-03-03 Andreas Schwab <schwab@suse.de>
10786
10787 * coding.c (decode_coding_object): Inhibit gap shrinking while
10788 decoding in place.
10789
107902008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
10791
10792 * w32term.c: Remove unused include "gnu.h".
10793 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
10794
10795 * gnu.h: Rename to ...
10796 * emacs-icon.h: ... this.
10797 * xterm.c: Use emacs-icon.h instead of gnu.h.
10798 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
10799
108002008-03-03 Juanma Barranquero <lekktu@gmail.com>
10801
10802 * w32font.c: Include math.h.
10803
108042008-03-03 Jason Rumney <jasonr@gnu.org>
10805
10806 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
10807 Compute options separately.
10808 (w32font_open_internal): Set glyph_idx before caching metrics.
10809
10810 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
10811 Define if system headers don't.
10812 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
10813 (w32font_encode_char): Don't declare here.
10814
10815 * w32font.c (Quniscribe, QCformat): New symbols.
10816 (syms_of_w32font): Define them.
10817 (w32font_has_char): Indicate uncertainty.
10818 (w32font_encode_char): Encode as glyph point. Make static.
10819 (recompute_cached_metrics): New function.
10820 (w32font_open_internal): Use it. Set font to use glyph points
10821 initially. Set format based on type of font.
10822 (w32font_text_extents, w32font_draw): Optionally use glyph points.
10823 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
10824 on it. Set format based on information available here.
10825 (add_font_entity_to_list): Identify backend based on opentype_only.
10826
108272008-03-02 Andreas Schwab <schwab@suse.de>
10828
10829 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
10830
10831 * coding.c (decode_coding_big5, produce_chars):
10832 Fix typos in last change.
10833
108342008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
10835
10836 * gnu.h: New icon.
10837
108382008-03-02 Kenichi Handa <handa@m17n.org>
10839
10840 * coding.c (decode_coding_utf_8): When eol-type of CODING is
10841 `dos', don't decode '\r' if that is the last in the source.
10842 (decode_coding_utf_16, decode_coding_emacs_mule)
10843 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10844 (decode_coding_raw_text, decode_coding_charset): Likewise.
10845 (produce_chars): Don't decode EOL here. Use EMACS_INT.
10846
108472008-03-01 Jason Rumney <jasonr@gnu.org>
10848
10849 * w32font.c (w32font_full_name): Report point size for scalable fonts.
10850
108512008-03-01 Kim F. Storm <storm@cua.dk>
10852
10853 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
10854
108552008-03-01 Jason Rumney <jasonr@gnu.org>
10856
10857 * w32font.c (w32font_full_name): New function.
10858 (w32font_open_internal): Use it.
10859
108602008-03-01 Kim F. Storm <storm@cua.dk>
10861
10862 * dispnew.c (line_draw_cost): Fix invalid glyph check.
10863
108642008-03-01 Jason Rumney <jasonr@gnu.org>
10865
10866 * font.c (font_unparse_fcname): Increase len when style is a symbol.
10867
108682008-03-01 Jan Djärv <jan.h.d@swipnet.se>
10869
10870 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
10871 xg_frame_resized when the event is for the edit widget.
10872
10873 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
10874
10875 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
10876 set_char_size.
10877 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
10878 operations on widgets here. Just set frame size if needed.
10879 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
10880 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
10881 (x_wm_set_size_hint): Set size hints on the edit widget only, not
10882 the whole frame.
10883 (xg_create_tool_bar): Move attachment of the tool bar to
10884 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
10885 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
10886
108872008-03-01 Jason Rumney <jasonr@gnu.org>
10888
10889 * w32fns.c (w32_msg_pump): Disable debug code.
10890
108912008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10892
10893 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
10894
108952008-02-29 Chong Yidong <cyd@stupidchicken.com>
10896
10897 * xdisp.c (next_overlay_string): Don't set
10898 overlay_strings_at_end_processed_p if we're currently reading from
10899 a display string.
10900
109012008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
10902
10903 * xdisp.c (get_overlay_strings_1): Fix typo.
10904
109052008-02-29 Chong Yidong <cyd@stupidchicken.com>
10906
10907 * xdisp.c (get_overlay_strings_1): Add missing argument type.
10908
109092008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
10910
10911 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
10912
10913 * xdisp.c (display_mode_element): Cancel the previous change.
10914 (decode_mode_spec): Likewise.
10915 (handle_auto_composed_prop): Don't make composition if it->string
10916 is a string.
10917
109182008-02-27 Kim F. Storm <storm@cua.dk>
10919
10920 * lisp.h (GLYPH): Change type from int to struct with separate char
10921 and face_id members.
10922 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
10923 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
10924 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
10925 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
10926 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
10927 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
10928 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
10929 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
10930 handle new Lisp glyph code encoding, either an integer or a cons.
10931
10932 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
10933 (GLYPH_ALIAS): Delete.
10934 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
10935 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
10936 (GLYPH_FROM_CHAR): Replace macro by ...
10937 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
10938
10939 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
10940 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
10941 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
10942 (GLYPH_INVALID_P): New macro.
10943 (spec_glyph_lookup_face): Update prototype.
10944
10945 * dispnew.c (line_draw_cost): Adapt to new glyph type.
10946 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
10947 new glyph code encoding.
10948 (spec_glyph_lookup_face): No return value; update passed glyph instead.
10949 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
10950
10951 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10952 Adapt to new glyph type and new glyph code encoding.
10953
10954 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
10955
10956 * indent.c (current_column, current_column_1, Fmove_to_column)
10957 (compute_motion): Adapt to new glyph code encoding.
10958
10959 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
10960
109612008-02-27 Chong Yidong <cyd@stupidchicken.com>
10962
10963 * process.c (wait_reading_process_output): Check for window
10964 changes caused by timers.
10965 Suggested by Johan Bockgård.
10966
109672008-02-27 Glenn Morris <rgm@gnu.org>
10968
10969 * emacs.c (USAGE1): Add `--disable-font-backend'.
10970
109712008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
10972
10973 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
10974 is made to the buffer.
10975
109762008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
10977
10978 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
10979 (face_at_string_position):
10980 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
10981 (face_at_string_position):
10982 * xdisp.c (display_string, next_overlay_change):
10983 * buffer.h (overlays_at):
10984 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
10985 Update callers.
10986
109872008-02-26 Chong Yidong <cyd@stupidchicken.com>
10988
10989 * editfns.c (Fformat): Doc fix.
10990
109912008-02-26 Juanma Barranquero <lekktu@gmail.com>
10992
10993 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
10994 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
10995 (Ffont_otf_alternates, Fquery_font): Doc fixes.
10996
109972008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10998
10999 * buffer.c (Fbuffer_swap_text): New function.
11000 (syms_of_buffer): Defsubr it.
11001
110022008-02-25 Chong Yidong <cyd@stupidchicken.com>
11003
11004 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
11005
110062008-02-25 Jason Rumney <jasonr@gnu.org>
11007
11008 * w32font.c (w32font_draw): Draw one character at a time when padding.
11009
110102008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11011
11012 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
11013 Handle a nil arg. Use run_window_configuration_change_hook.
11014 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11015 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11016 Use run_window_configuration_change_hook.
11017
110182008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11019
11020 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11021 1-pixel width.
11022
110232008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11024
11025 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
11026 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
11027 if the glyph in the font is zero pixel with.
11028
11029 * dispextern.h (struct glyph_string): New member padding_p.
11030
11031 * w32font.c (w32font_draw): Pay attention to s->padding_p.
11032
11033 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
11034
11035 * xfont.c (xfont_draw): Pay attention to s->padding_p.
11036
11037 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
11038
11039 * font.c: If the font driver doesn't have `shape' function, return Qnil.
11040
110412008-02-25 Jason Rumney <jasonr@gnu.org>
11042
11043 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
11044
110452008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
11046
11047 Allow fine-grained image-cache flushing.
11048 * dispextern.h (struct image): Add `dependencies' field.
11049 (clear_image_caches): Change arg to Lisp_Object.
11050 * image.c (make_image): Initialize `dependencies' field.
11051 (clear_image_cache): Change arg to allow fine-grained flushing.
11052 Perform the flush even if image-cache-eviction-delay is nil.
11053 (clear_image_caches): Change arg to Lisp_Object.
11054 (Fclear_image_cache): Expand meaning of the argument.
11055 (mark_image): Mark `dependencies' field.
11056 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
11057 (lface_hash): Use XHASH rather than XFASTINT.
11058 (face_at_buffer_position): Fix int -> EMACS_INT position.
11059 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
11060 (select_frame_for_redisplay): Remove code duplication.
11061 (redisplay_internal): Adapt arg to call to clear_image_caches.
11062
110632008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
11064
11065 * s/vms4-0.h:
11066 * s/vms4-2.h:
11067 * s/vms4-4.h:
11068 * s/vms5-5.h: Remove, unused.
11069
11070 * s/irix5-2.h:
11071 * s/irix6-0.h:
11072 * s/riscos5.h:
11073 * s/mach-bsd4-3.h:
11074 * m/mips4.h: Remove files for obsolete systems.
11075
11076 * Makefile.in:
11077 * filelock.c:
11078 * unexmips.c:
11079 * m/hp9000s300.h:
11080 * m/iris4d.h:
11081 * s/aix3-1.h:
11082 * s/hpux.h:
11083 * s/msdos.h:
11084 * s/usg5-0.h:
11085 * s/usg5-2-2.h:
11086 * s/usg5-2.h:
11087 * s/usg5-3.h: Remove references to obsolete variables.
11088
11089 * s/irix5-0.h: Remove, move all the contents ...
11090 * s/irix6-5.h: ... here. Simplify.
11091 * config.in: Regenerate.
11092
110932008-02-24 Jason Rumney <jasonr@gnu.org>
11094
11095 * w32term.c (x_draw_glyph_string_background): Clear the background
11096 manually when cleartype is in use.
11097 (x_draw_glyph_string_foreground): Draw text transparently when
11098 cleartype is in use.
11099
11100 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
11101 a font into it unless we have to.
11102
111032008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11104
11105 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
11106 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 11107
aac0c6e3
MR
111082008-02-18 Jason Rumney <jasonr@gnu.org>
11109
11110 * w32fns.c (Fw32_shell_execute): Encode parameters.
11111
111122008-02-09 Eli Zaretskii <eliz@gnu.org>
11113
11114 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
11115
111162008-02-05 Juanma Barranquero <lekktu@gmail.com>
11117
11118 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
11119
111202008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
11121
11122 * xterm.c (x_set_offset): Don't change the gravity if
11123 CHANGE_GRAVITY is -1.
11124
111252008-02-23 Chong Yidong <cyd@stupidchicken.com>
11126
11127 * fileio.c (auto_save_error_occurred): New var.
11128 (auto_save_error): Set it.
11129 (Fdo_auto_save): Don't overwrite the error message if an auto-save
11130 error occurred.
11131
111322008-02-23 Eli Zaretskii <eliz@gnu.org>
11133
11134 * w32.c (globals_of_w32): Add initializations for
11135 g_b_init_get_sid_sub_authority and
11136 g_b_init_get_sid_sub_authority_count.
11137
111382008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
11139
11140 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
11141 (font_parse_xlfd): Use them for sanity check.
11142 (Finternal_set_font_style_table): Make sure the table is bijective.
11143
11144 Consolidate the image_cache to the terminal struct.
11145 * termhooks.h (P_): Remove redundant def.
11146 (struct terminal): New field `image_cache'.
11147 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
11148 of FRAME_X_IMAGE_CACHE.
11149 * xterm.h (struct x_display_info): Remove image_cache field.
11150 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11151 * w32term.h (struct w32_display_info): Remove image_cache field.
11152 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11153 * macterm.h (struct mac_display_info): Remove image_cache field.
11154 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11155 * xterm.c (x_term_init):
11156 * w32term.c (w32_term_init):
11157 * macterm.c (mac_term_init): Set the image_cache in the terminal.
11158 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
11159 Remove declarations.
11160 (clear_image_caches, mark_image_cache): New declarations.
11161 * xfaces.c (clear_face_cache):
11162 * xdisp.c (redisplay_internal): Use clear_image_caches.
11163 * image.c (clear_image_cache): Don't check that a frame is on
11164 a window-system before checking if it shares the same cache.
11165 (clear_image_caches): New function.
11166 (Fclear_image_cache): Use it.
11167 (mark_image): Move from allo.c.
11168 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
11169 * alloc.c (mark_image, mark_image_cache): Move to image.c.
11170 (mark_object): Don't call mark_image_cache for frames.
11171 (mark_terminals): Call mark_image_cache.
11172
11173 * lisp.h (Fdelete_terminal): Declare.
11174
11175 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
11176 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
11177 wrong_type_argument.
11178
111792008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
11180
11181 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
11182 malayalam.el, and tamil.el. Add sinhala.el.
11183
111842008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
11185
11186 * xterm.c (x_connection_closed): Consolidate identical tests.
11187 (x_delete_terminal): Don't crash if called via x_connection_closed.
11188
111892008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
11190
11191 * xdisp.c (decode_mode_spec): New arg string.
11192 (display_mode_element): Adjust for the above change.
11193
111942008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11195
11196 * callint.c (Fcall_interactively): Use AREF.
11197
111982008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
11199
11200 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
11201
112022008-02-18 Jan Djärv <jan.h.d@swipnet.se>
11203
11204 * xfns.c (Fx_show_tip): Set string to " " if empty.
11205
112062008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
11207
11208 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
11209 with Qt.
11210
112112008-02-17 Kenichi Handa <handa@m17n.org>
11212
11213 * ftfont.c (ftfont_shape): Return Lispy number.
11214
11215 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
11216 for GCs.
11217 (Finternal_set_font_selection_order): Call font_update_sort_order
11218 only when enable_font_backend is set.
11219 (realize_x_face): Set face->font_info to that of default face only
11220 when enable_font_backend is set.
11221
11222 * xdisp.c (handle_composition_prop): Set it->c to the fist
11223 character of the composed region.
11224 (fill_composite_glyph_string): Set base_face->font_info to
11225 s->font_info. Get a face for ascii from base_face->ascii_face.
11226 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
11227 with a face already decided.
11228 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
11229 non-negative.
11230 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
11231 call font_prepare_composition unconditionally.
11232
11233 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
11234
11235 * xterm.h (struct x_display_info): New member font.
11236
11237 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
11238 (x_set_mouse_face_gc, x_new_font): Likewise.
11239 (x_term_init): Setup display_info->font.
11240 (x_delete_terminal): Free display_info->font.
11241
11242 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
11243
11244 * ftxfont.c (ftxfont_default_fid): Delete it.
11245 (ftxfont_open): Set xfont->fid to 0.
11246 (ftxfont_end_for_frame): Clear data specific to the frame and the
11247 font-driver.
11248
11249 * xftfont.c (xftfont_default_fid): Delete it.
11250 (xftfont_open): Set xfont->fid to 0.
11251
11252 * fontset.c (FONTSET_OBJLIST): New macro.
11253 (fontset_find_font): Update font-object list of the fontset.
11254 (free_realized_fontset): New function.
11255 (free_face_fontset): Call free_realized_fontset.
11256 (Ffont_info): Call font_close_object only when enable_font_backend
11257 is set.
11258
11259 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
11260 [HAVE_NTGUI]: Include w32term.h.
11261 [MAC_OS]: Include macterm.ch.
11262 (font_otf_ValueRecord): Use make_number.
11263 (font_finish_cache): Fix handling of reference count.
11264 (font_clear_cache): Update num_fonts.
11265 (font_open_entity): Update smallest_char_width and
11266 smallest_font_height of the frame.
11267 (font_close_object): Update num_fonts.
11268 (Fclear_font_cache): Fix finding the target cache data.
11269
112702008-02-16 Glenn Morris <rgm@gnu.org>
11271
11272 * fontset.c (Finternal_char_font): Fix compilation warning.
11273
112742008-02-16 Eli Zaretskii <eliz@gnu.org>
11275
11276 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
11277 instead of char arrays. Enlarge the size of array passed to
11278 get_token_information.
11279
11280 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
11281 warnings.
11282
112832008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
11284
11285 * .gdbinit: Don't set `args', it breaks gdb --args.
11286
112872008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
11288
11289 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
11290 within a narrowed buffer.
11291
112922008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
11293
11294 * coding.c (decode_coding_object, encode_coding_object):
11295 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
11296
112972008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
11298
11299 * coding.c (coding_set_destination): Use BEG_BYTE rather than
11300 hardcoding 1.
11301 (detect_coding_system):
11302 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
11303 (string_char_to_byte, string_byte_to_char, insert_from_gap):
11304 * insdel.c (insert_from_gap):
11305 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
11306 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
11307 (string_to_multibyte):
11308 * character.c (chars_in_text, multibyte_chars_in_text):
11309 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
11310
11311 * character.h (FETCH_STRING_CHAR_ADVANCE)
11312 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
11313 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
11314 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
11315
11316 * casefiddle.c (casify_region): Only call after-change and composition
11317 functions on the part of the region that was changed.
11318
11319 * keyboard.c (read_avail_input):
11320 * frame.c (Fdelete_frame): Call Fdelete_terminal.
11321
113222008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11323
11324 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
11325 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
11326
113272008-02-11 Juanma Barranquero <lekktu@gmail.com>
11328
11329 * w32menu.c (push_submenu_start, push_submenu_end)
11330 (push_left_right_boundary, push_menu_pane, push_menu_item):
11331 * keyboard.c (read_key_sequence): Don't pass args with side effects
11332 to AREF, it fails when compiling with -DENABLE_CHECKING.
11333
113342008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
11335
11336 * Makefile.in (${lispsource}international/charprop.el):
11337 Delete this target.
11338
11339 * search.c (boyer_moore): Fix incorrect synching of the trunk and
11340 emacs-unicode-2.
11341
113422008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11343
11344 * terminal.c (Fdelete_terminal): Clean up the `force' path.
11345
113462008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11347
11348 * frame.c (Qnoelisp): New symbol.
11349 (syms_of_frame): Initialize it.
11350 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
11351 harmless Elisp code, from a strong `force' from x_connection_closed.
11352 * frame.h (Qnoelisp): Declare.
11353 * xterm.c (x_connection_closed): Pass `noelisp'.
11354
11355 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
11356 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
11357 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
11358 rather than `int' for the type of `type'.
11359
113602008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
11361
11362 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
11363
11364 * Makefile.in (GNUC): Remove support for gcc-1.x.
11365
113662008-02-10 Richard Stallman <rms@gnu.org>
11367
11368 * lisp.h (ASET): Use AREF, not ASLOT.
11369
113702008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11371
11372 * lisp.h (ASET): Check bounds.
11373
113742008-02-10 Glenn Morris <rgm@gnu.org>
11375
11376 * buffer.c (mode-name): Doc fix.
11377
113782008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11379
11380 * Makefile.in:
11381 * emacs.c:
11382 * gmalloc.c:
11383 * keyboard.c:
11384 * lisp.h:
11385 * m/ibm370aix.h:
11386 * process.c:
11387 * regex.c:
11388 * s/hpux.h:
11389 * sysdep.c:
11390 * sysselect.h:
11391 * systty.h:
11392 * unexec.c:
11393 * w32term.c:
11394 * xsmfns.c:
11395 * xterm.c: Remove code that deals with obsolete variables.
11396
11397 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
11398
11399 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
11400 nothing else needs it anymore.
11401
114022008-02-09 Eli Zaretskii <eliz@gnu.org>
11403
11404 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
11405 instead of unibyte_char_to_multibyte.
11406
114072008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11408
11409 * s/gnu-linux.h: Remove commented out code.
11410
11411 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
11412
11413 * Makefile.in: Update what RMS says about using autoconf.
11414 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
11415 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
11416 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
11417 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
11418
114192008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
11420
11421 * keymap.c (Fkey_description): Move side effect outside of macro call.
11422
11423 * xfaces.c (Finternal_make_lisp_face):
11424 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
11425
11426 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
11427 (syms_of_fontset): Use ASET.
11428
11429 * fns.c (concat): Move side effect outside of macro call.
11430 (hash_clear): Use ASET.
11431
114322008-02-08 Richard Stallman <rms@gnu.org>
11433
11434 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
11435 If FORCE, and frame has a surrogate minibuffer for another frame,
11436 delete the other frame first.
11437
114382008-02-07 Timo Savola <timo.savola@iki.fi>
11439
11440 * xterm.c (x_detect_focus_change): Handle embed client message.
11441 (handle_one_xevent): Ditto.
11442 (handle_one_xevent): If embedded and we get a button press/release,
11443 request focus.
11444 (xembed_set_info, xembed_send_message): New functions.
11445 (x_make_frame_visible): Call xembed_set_info if embedded.
11446 (x_make_frame_invisible): Call xembed_set_info if embedded.
11447 (x_term_init): Initialize Xatom_XEMBED.
11448 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
11449 (x_iconify_frame): Ditto.
11450
11451 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
11452 (enum xembed_info, enum xembed_message, enum xembed_focus)
11453 (enum xembed_modifier, enum xembed_accelerator): New.
11454 (xembed_set_info, xembed_send_message): Declare.
11455 (FRAME_X_EMBEDDED_P): New.
11456
11457 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
11458 gtk_plug_new.
11459
11460 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
11461 window ID of a frame.
11462 (x_window): Reparent frame if embedded.
11463 (Fx_create_frame): Don't set border width if embedded.
11464
11465 * emacs.c (USAGE3): Add --parent-id.
11466 (standard_args): Ditto.
11467
114682008-02-07 Jan Djärv <jan.h.d@swipnet.se>
11469
11470 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
11471
114722008-02-07 Jim Meyering <meyering@redhat.com>
11473
11474 Use "do...while (0)", not "if (1)...else" in macro definitions.
11475 The latter provokes a warning from gcc about the empty else, when
11476 followed by ";". Also, without that trailing semicolon, it would
11477 silently swallow up any following statement.
11478 * syntax.h (SETUP_SYNTAX_TABLE)
11479 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
11480 * buffer.h (DECODE_POSITION): Likewise.
11481 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
11482 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
11483 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
11484 (FETCH_CHAR_ADVANCE): Likewise.
11485 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
11486
114872008-02-07 Jim Meyering <meyering@redhat.com>
11488
11489 * lread.c [lint]: Don't include <sys/inode.h>.
11490
114912008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
11492
11493 * xselect.c (x_handle_dnd_message):
11494 * xmenu.c (digest_single_submenu, xmenu_show):
11495 * xdisp.c (with_echo_area_buffer_unwind_data)
11496 (format_mode_line_unwind_data, unwind_format_mode_line)
11497 (display_menu_bar):
11498 * eval.c (Ffetch_bytecode):
11499 * doc.c (store_function_docstring):
11500 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
11501 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
11502 * buffer.c (add_overlay_mod_hooklist): Use ASET.
11503
115042008-02-07 Kenichi Handa <handa@m17n.org>
11505
11506 * ftxfont.c (ftxfont_open): Don't set
11507 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
11508
11509 * ftfont.c (ftfont_open): Fix previous change.
11510
115112008-02-06 Jason Rumney <jasonr@gnu.org>
11512
11513 * w32font.c (w32font_text_extents): Fill in lbearing metric.
11514 Use cached metrics for ASCII characters.
11515 (w32font_open_internal): Don't set font's owning_frame.
11516 Cache metrics for ASCII characters.
11517
11518 * w32font.h (struct w32font_info): Add ascii_metrics.
11519 Remove owning_frame.
11520
115212008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
11522
11523 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
11524 to negative value.
11525
11526 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
11527
11528 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
11529
11530 * charset.c (syms_of_charset): Set QCtest and Qeq.
11531
115322008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
11533
11534 * process.c (Fstart_process):
11535 * callproc.c (Fcall_process): Handle the case where
11536 Funhandled_file_name_directory returns nil.
11537
11538 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
11539 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
11540 * font.c (check_gstring): Use them and AREF to access the vector before
11541 we know it's really a gstring.
11542 (Ffont_shape_text): Fix typo.
46e722a9 11543 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
11544
11545 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
11546 Declare.
11547
11548 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
11549
115502008-02-05 Jason Rumney <jasonr@gnu.org>
11551
11552 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
11553 Set smallest_font_height and smallest_char_width in display info.
11554
115552008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
11556
11557 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
11558
115592008-02-05 Miles Bader <miles@gnu.org>
11560
11561 * xfaces.c (get_lface_attributes, merge_named_face)
11562 (lookup_named_face, lookup_derived_face, realize_named_face):
11563 Revert 2008-02-01 change by cyd@stupidchicken.com.
11564
115652008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
11566
11567 * fontset.c (Ffontset_info): Handle the case of inhibitting the
11568 fallback fonts.
11569 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
11570
115712008-02-04 Jason Rumney <jasonr@gnu.org>
11572
11573 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
11574 set full_name.
11575 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
11576
115772008-02-03 Jason Rumney <jasonr@gnu.org>
11578
11579 * makefile.w32-in (OBJ1): Include font.o here.
11580 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
11581
115822008-02-02 Jason Rumney <jasonr@gnu.org>
11583
11584 * makefile.w32-in (temacs): Bump EMHEAP to 21.
11585
115862008-02-01 Jason Rumney <jasonr@gnu.org>
11587
11588 * s/cygwin.h: Define VIRT_ADDR_VARIES.
11589
11590 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
11591
115922008-02-01 Andreas Schwab <schwab@suse.de>
11593
11594 * Makefile.in (shortlisp, lisp): Update for rename of
11595 ../lisp/language/myanmar.el.
11596
115972008-02-01 Chong Yidong <cyd@stupidchicken.com>
11598
11599 * xfaces.c (get_lface_attributes): Delete function.
11600 (merge_named_face, lookup_named_face, lookup_derived_face)
11601 (realize_named_face): Call lface_from_face_name directly, and use
11602 the fact that merge_face_vectors does not alter its FROM argument.
11603
116042008-02-01 Jason Rumney <jasonr@gnu.org>
11605
11606 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
11607 input in the default locale. Handle non-Unicode multibyte input.
11608
116092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11610
11611 * fontset.c (reorder_font_vector): Exclude nil elements from the
11612 font group. Don't try multiple fonts.
11613 (fontset_font): Adjust for the above change.
11614 (Finternal_char_font): Return nil if the found font doesn't
11615 contain the character ch.
11616
11617 * Makefile.in (lisp, shortlisp): Add cham.el.
11618
116192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11620
11621 * font.h (FONTP): Make it return 1 also for a font-object.
11622
11623 * .gdbinit (xfontset): New function.
11624
11625 * font.c (font_find_for_lface): Check if the character C is
11626 supported or not only for the first font.
11627
11628 * fontset.c (reorder_font_vector): Fix typo.
11629 (fontset_find_font): Don't add a font-spec specifying a script.
11630 Use 0 (not Qt) for the indication of empty font-group. Change the
11631 format of RFONT-DEF. Return Qt if no font in the font-group
11632 support the character.
11633 (fontset_font): Adjust for the above change. If no font was
11634 found the character, remember that.
11635 (face_for_char): Adjust for the change of RFONT-DEF.
11636 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
11637 no font for the target.
11638 (Finternal_char_font): Adjust for the change of RFONT-DEF.
11639
116402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11641
11642 * font.c (font_load_for_face): Handle the case that the font in
11643 face->lface is a string.
11644
116452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11646
11647 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
11648
116492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11650
11651 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
11652 Fix previous change. If the frame is not on a window system,
11653 signal an error.
11654
116552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11656
11657 * coding.c (decode_coding_object, encode_coding_object): Adjust
11658 marker positions after conversion.
11659
11660 * lisp.h (struct Lisp_Marker): New member need_adjustment.
11661
116622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11663
11664 * font.c (font_find_for_lface): Fix the handling of the return
11665 value of font_has_char.
11666 (Ffont_shape_text): Fix previous change.
11667
11668 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
11669 (fontset_ref_and_range): Delete it.
11670 (fontset_find_font): Call char_table_ref_and_range instead of
11671 FONTSET_REF_AND_RANGE.
11672 (make_fontset): Don't setup font groups of Latin here.
11673 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
11674 (new_fontset_from_font): Make the specified font the default for
11675 all Latin characters.
11676
116772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11678
11679 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
11680 is on a window system before accessing the fontset of the frame.
11681
116822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11683
11684 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
11685
11686 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
11687 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
11688
11689 * font.c (Ffont_shape_text): If the font driver doesn't have a
11690 shaper function, make zero-width glyphs to have at least one-pixel
11691 width. Fix setting of `to' field of glyphs.
11692
116932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11694
11695 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
11696 glyphs.
11697
11698 * font.h (struct font_driver): Improve docstring of member `shape'.
11699
117002008-02-01 Kenichi Handa <handa@m17n.org>
11701
11702 * composite.c (syms_of_composite): Fix docstring of
11703 auto-composition-function.
11704
11705 * font.h (LGLYPH_SIZE): New macro.
11706
11707 * font.c (Ffont_fill_gstring): Stop filling when a character not
11708 supported by the font is found.
11709 (Ffont_shape_text): When a shape callback function returns nil,
11710 try at most two more times with larger gstring.
11711 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
11712
11713 * xdisp.c (handle_auto_composed_prop): Change the argument to
11714 auto-composition-function.
11715
11716 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
11717 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
11718 Lispy glyph and store it in the lgstring.
11719
11720 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
11721
11722 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
11723
117242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11725
11726 * font.c (Ffont_shape_text): Avoid unnecessary composition.
11727
11728 * fontset.c (Vfont_encoding_charset_alist): New variable.
11729 (syms_of_fontset): DEFVAR it.
11730 (reorder_font_vector, fontset_find_font): Optimize for the case of
11731 no need of reordering.
11732 (face_for_char): Map the charset property by
11733 Vfont_encoding_charset_alist.
11734
117352008-02-01 Jason Rumney <jasonr@gnu.org>
11736
11737 * w32font.c (logfonts_match): Don't check adstyle here.
11738 (font_matches_spec): Check here against physical font instead.
11739 (add_font_entity_to_list): Avoid some substitutions.
11740
11741 * font.c (font_parse_fcname): Default weight and slant to normal.
11742 (font_score): Prefer normal fonts if weight or slant unspecified.
11743 (font_score) [WINDOWSNT]: Scale weight difference down to closer
11744 match freetype scores.
11745
117462008-02-01 Jason Rumney <jasonr@gnu.org>
11747
11748 * w32font.c (w32font_text_extents): Don't use the frame stored in the
11749 font, as it may have been deleted.
11750 (w32_enumfont_pattern_entity): Map generic family to adstyle using
11751 most common hyphenless variation.
11752 (logfonts_match): Check generic family.
11753 (font_matches_spec): Don't check generic family here.
11754 (fill_in_logfont): Set generic family based on adstyle.
11755
11756 * w32font.h (w32font_get_cache): Update declaration.
11757
117582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11759
11760 * ftfont.c (ftfont_get_cache): Adjust the argument type.
11761
11762 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
11763 If none of the new drivers are available, call font_update_drivers
11764 with the old drivers.
11765
11766 * w32font.c (w32font_get_cache): Adjust the argument type.
11767
11768 * xfont.c (xfont_get_cache): Adjust the argument type.
11769
11770 * font.h (struct font_driver): Change argument type of get_cache.
11771
11772 * xftfont.c (xftfont_start_for_frame): Delete prototype.
11773
11774 * font.c (Ffont_get): Fix arguments to Fassoc.
11775 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
11776 (font_clear_cache): New function.
11777 (font_list_entities, font_matching_entity): Use font_get_cache.
11778 (font_update_drivers): Call font_clear_cache when finishing a driver.
11779
11780 * fontset.c (fontset_find_font): Fix previous change.
11781
117822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11783
11784 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
11785 dpyinfo->font_table.
11786 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
11787 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
11788
11789 * font.c (font_at): Handle the case that the arg C is negative.
11790 Handle the unibyte case.
11791 (Ffont_at): Call font_at with the arg C -1.
11792
11793 * xdisp.c (handle_auto_composed_prop): Don't get a character at
11794 the position here, and call font_at with the arg C -1.
11795 Don't check the range of the existing composition at the point.
11796
117972008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11798
11799 * fontset.c (fontset_add): New args charset_id and family.
11800 Change caller.
11801 (load_font_get_repertory, fontset_find_font): Assume that
11802 font_spec is always a font-spec object.
11803 (Fset_fontset_font): Always store a font-spec object in a fontset.
11804
11805 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
11806 instead of get_property_and_range.
11807
118082008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11809
11810 * xftfont.c (struct xftfont_info): Delete the member ft_face.
11811 (xftfont_open): Don't keep locking face.
11812 (xftfont_close): Don't unlock face.
11813 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
11814
11815 * fontset.c (fontset_find_font): Don't prefer a font of
11816 supplementary charset.
11817
118182008-02-01 Kenichi Handa <handa@m17n.org>
11819
11820 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
11821 script, langsys_tag to langsys, new member script.
11822 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 11823 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
11824 listing to the script specified in that property. Fix arg to
11825 OTF_check_features.
11826
118272008-02-01 Jason Rumney <jasonr@gnu.org>
11828
11829 * w32font.h: New file.
11830
11831 * w32font.c: Include it.
11832 (struct w32font_info): Add owning_frame field. Move to w32font.h.
11833 (w32font_open): Set owning_frame.
11834 (w32font_text_extents): Use owning_frame.
11835 (struct font_callback_data): Add opentype_only field.
11836 (add_font_entity_to_list): Use it to filter fonts.
11837 Don't check against full name.
11838 (w32font_list_internal): New function.
11839 (w32font_list): Use it.
11840 (w32font_match_internal): New function.
11841 (w32font_match): Use it.
11842 (w32font_open_internal): New function.
11843 (w32font_open): Use it.
11844 (w32font_get_cache, w32font_close, w32font_has_char)
11845 (w32font_encode_char, w32font_text_extents, w32font_draw):
11846 Make non-static.
11847
11848 * makefile.w32-in (w32font.o): Depend on w32font.h.
11849
118502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11851
11852 * charset.c (Fdefine_charset_internal): Record a supplementary
11853 charset at the tail of Vcharset_order_list.
11854
11855 * font.c (Ffont_shape_text): Fix the return value.
11856
11857 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
11858
11859 * xdisp.c (handle_auto_composed_prop): Fix previous change.
11860
118612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11862
11863 * ftfont.c (struct OpenTypeSpec): New struct.
11864 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
11865 (ftfont_get_open_type_spec): New function.
11866 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
11867
11868 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
11869
118702008-02-01 Jason Rumney <jasonr@gnu.org>
11871
11872 * w32font.c (add_font_entity_to_list): Compare only the beginning
11873 of full name.
11874
118752008-02-01 Kenichi Handa <handa@m17n.org>
11876
11877 * xdisp.c (handle_auto_composed_prop): Simplify the code.
11878 Never return HANDLED_RECOMPUTE_PROPS.
11879
118802008-02-01 Kenichi Handa <handa@m17n.org>
11881
11882 * font.c (font_gstring_produce): Delete it.
11883
11884 * composite.h (COMPOSITION_METHOD):
11885 Handle COMPOSITION_WITH_GLYPH_STRING.
11886
118872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11888
11889 * xfont.c (Qx): Delete.
11890 (syms_of_xfont): Don't initialize Qx.
11891
11892 * composite.h (enum composition_method):
11893 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
11894
118952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11896
11897 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
11898 (choose_face_font): Accept new form of font-spec.
11899
11900 * frame.h (font_driver_list): Declare it unconditionally.
11901 (struct frame): Define members font_driver_list and font_data_list
11902 unconditionally.
11903
11904 * fontset.c: Include "font.h" unconditionally.
11905 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
11906 (Fset_fontset_font): Accept a font-spec object.
11907
11908 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
11909 PIXEL_SIZE part a wild card.
11910
11911 * dispextern.h (struct glyph_string): Define members clip and
11912 num_clips unconditionally.
11913 (struct face): Define members font_info and extra unconditionally.
11914
11915 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
11916 ftfont_info only when HAVE_LIBOTF is defined.
11917
119182008-02-01 Andreas Schwab <schwab@suse.de>
11919
11920 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
11921 and end.
11922
119232008-02-01 Jason Rumney <jasonr@gnu.org>
11924
11925 * w32font.c (w32font_driver): Add new fields.
11926
119272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11928
11929 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
11930 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
11931 (LIBES): Add @M17N_FLT_CFLAGS@.
11932
11933 * composite.c (compose_text): Don't treat the new style
11934 composition specially.
11935
11936 * emacs.c (main): Call syms_of_font unconditionally.
11937
11938 * font.h (FONT_ENTITY_NOT_LOADABLE)
11939 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
11940 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
11941 (struct font_driver): New member shape.
11942 (font_registry_charsets): Extern it.
11943 (font_find_for_lface, font_prepare_composition): Adjust prototype.
11944 (font_otf_capability, font_drive_otf): Delete their externs.
11945
11946 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
11947 (font_charset_alist, font_registry_charsets): Move from xfont.c
11948 and rename.
11949 (font_prop_validate_otf): New function.
11950 (font_property_table): Register it for QCotf.
11951 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
11952 (font_drive_otf): Delete.
11953 (font_prepare_composition): New arg F. Adjust for the change of
11954 lispy gstring.
11955 (font_find_for_lface): New arg C.
11956 (font_load_for_face): Adjust for the change of font_find_for_lface.
11957 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
11958 lispy gstring.
11959 (Ffont_shape_text): New function.
11960 (Fopen_font): If the font size is not given, use 12-pixel.
11961 (Ffont_at): New arg STRING.
11962 (syms_of_font): Initalize font_charset_alist.
11963 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
11964 conditionally.
11965
11966 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
11967 fonts of the same font-spec. Change the format of RFONT-DEF.
11968 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
11969 Adjust for the change of RFONT-DEF.
11970 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
11971
11972 * ftfont.h: New file.
11973
11974 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
11975 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11976 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11977 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
11978 font_otf_capability and font_drive_otf, set ftfont_shape.
11979 (ftfont_list): Adjust for the change of :otf property value.
11980 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
11981 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
11982 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
11983 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11984 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
11985 (otf_gstring, gstring, m17n_flt_initialized): New variables.
11986
11987 * w32term.c (x_draw_composite_glyph_string_foreground):
11988 Adjust for the change of lispy gstring.
11989
11990 * xdisp.c (handle_composition_prop): Adjust for the change of
11991 lispy gstring. Call a function for auto-composition with the
11992 third arg it->window.
11993 (fill_composite_glyph_string): Adjust for the change of lispy string.
11994 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
11995
11996 * xfaces.c (set_font_frame_param): Adjust for the change of
11997 font_find_for_lface.
11998
11999 * xfont.c (x_font_charset_alist): Move to font.c and rename.
12000 (xfont_registry_charsets): Likewise. Change caller.
12001 (syms_of_xfont): Don't handle x_font_charset_alist.
12002
12003 * xftfont.c: Include "ftfont.h".
12004 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12005 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12006 (xftfont_close) [HAVE_LIBOTF]: Close otf.
12007 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12008 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
12009 Set xftfont_driver.shape to xftfont_shape.
12010
12011 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12012 the change of lispy gstring.
12013
120142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12015
12016 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12017
120182008-02-01 Jason Rumney <jasonr@gnu.org>
12019
12020 * w32font.c (w32font_draw): Fill background manually.
12021
120222008-02-01 Jason Rumney <jasonr@gnu.org>
12023
12024 * font.c (Qfontp): Remove unused symbol.
12025 (QCantialias): New symbol.
12026 (syms_of_font): Define it.
12027 (font_property_table): Set a validator for QCantialias.
12028
12029 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
12030 Define if not already.
12031 (QCfamily): Share with xfaces.c.
12032 (Qstandard, Qsubpixel, Qnatural): New symbols.
12033 (syms_of_w32font): Define them. Don't define QCfamily here.
12034 (w32_antialias_type, lispy_antialias_type): New functions.
12035 (w32_enumfont_pattern_entity): New arg requested_font.
12036 Set antialias parameter if non-default was requested.
12037 (fill_in_logfont): Fill in lfQuality if :antialias specified.
12038
120392008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12040
12041 * lread.c (read1): Undo the previous change.
12042
120432008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
12044
12045 * frame.c (Fdelete_frame): Call font_update_drivers only when
12046 USE_FONT_BACKEND is defined.
12047
120482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12049
12050 * font.h (struct font_bitmap): New member bits_per_pixel.
12051 (struct font_driver): New members start_for_frame and end_for_frame.
12052 (struct font_data_list): New struct.
12053 (font_put_frame_data, font_get_frame_data): Extern them.
12054
12055 * frame.h (struct frame): New member font_data_list.
12056
12057 * font.c (font_update_drivers): Call driver->start_for_frame and
12058 driver->end_for_frame at proper timings.
12059 (font_put_frame_data, font_get_frame_data): New functions.
12060 (Ffont_spec): Add usage in the docstring.
12061
12062 * frame.c (make_frame): Initialize f->font_data_list to NULL.
12063 (Fdelete_frame): Call font_update_drivers.
12064
12065 * xftfont.c (struct xftface_info): Delete the member xft_draw.
12066 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
12067 (xftfont_get_xft_draw): New function.
12068 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
12069 (xftfont_end_for_frame): New function.
12070 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
12071
12072 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
12073 Change argument. Cache GCs in the per-frame data.
12074 (struct ftxfont_frame_data): New struct.
12075 (ftxfont_draw_bitmap): New arg gc_fore and flush.
12076 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
12077 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
12078 (ftxfont_end_for_frame): New function.
12079 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
12080
12081 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
12082
120832008-02-01 Kenichi Handa <handa@m17n.org>
12084
12085 * xselect.c (Vselection_coding_system)
12086 (Vnext_selection_coding_system): Delete them.
12087 (syms_of_xselect): Don't declare selection-coding-system and
12088 next-selection-coding-system. They are declared in select.el.
12089
120902008-02-01 Jason Rumney <jasonr@gnu.org>
12091
12092 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
12093
12094 * w32fns.c: Include imm.h.
12095 (get_composition_string_fn, get_ime_context_fn): New optional
12096 system functions.
12097 (globals_of_w32fns): Load them from imm32.dll.
12098 (ignore_ime_char): New flag.
12099 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
12100 WM_IME_ENDCOMPOSITION messages.
12101
12102 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
12103 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
12104
121052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12106
12107 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
12108 (READCHAR_REPORT_MULTIBYTE): New macro.
12109 (readchar): New 2nd arg MULTIBYTE.
12110 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
12111 Make symbol's name multibyte according to the multibyteness of the
12112 source.
12113
121142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12115
12116 * xfaces.c (face_for_overlay_string): Call lookup_face with
12117 correct arguments (fix of synching with the trunk).
12118
121192008-02-01 Kenichi Handa <handa@m17n.org>
12120
12121 * font.c (font_prop_validate_symbol, font_prop_validate_style)
12122 (font_prop_validate_non_neg, font_prop_validate_spacing):
12123 Delete argument prop_index.
12124 (font_property_table): Change arguments to validater. Change Callers.
12125 (font_lispy_object): Delete.
12126 (font_at): Use font_find_object instead fo font_lispy_object.
12127
121282008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12129
12130 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
12131 and file names.
12132
121332008-02-01 Jason Rumney <jasonr@gnu.org>
12134
12135 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
12136 (font_matches_spec): Remove debug output.
12137 (add_font_entity_to_list): Avoid using substituted fonts.
12138
121392008-02-01 Jason Rumney <jasonr@gnu.org>
12140
12141 * doc.c (Fsnarf_documentation):
12142 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
12143
121442008-02-01 Miles Bader <miles@gnu.org>
12145
12146 * dispextern.h (struct glyph_row): Only define "clip" field if
12147 HAVE_WINDOW_SYSTEM is defined.
12148
121492008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12150
12151 Fix up multi-tty merge.
12152
12153 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
12154 and indentation.
12155
12156 * xfaces.c (free_realized_face, clear_face_gcs):
12157 Include font_done_for_face in the input_blocked section, just in case.
12158
12159 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
12160 (get_char_face_and_encoding): Undo last change and remove the *other*
12161 duplicate definition (i.e. keep the one that's better scoped and that
12162 includes code for the font-backend).
12163
12164 * terminal.c (create_terminal): Default keyboard_coding to
12165 `no-conversion' and terminal_coding to `undecided'.
12166
12167 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
12168
12169 * fontset.c (free_realized_fontsets): Check that the table entry does
12170 contain a fontset before trying to compare it to `base'.
12171
12172 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
12173 syms_of_charset, and syms_of_coding earlier because init_window_once
12174 now needs Vcoding_system_hash_table to be setup.
12175
12176 * coding.h (default_buffer_file_coding): Remove.
12177
12178 * coding.c (default_buffer_file_coding): Remove.
12179 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
12180 than ->symbol, and use the terminal-local coding system.
12181 (syms_of_coding): Don't setup the coding-systems that are not
12182 terminal-local.
12183 (Fdefine_coding_system_internal): Use XCAR/XCDR.
12184
12185 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
12186 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
12187
12188 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
12189 in chartab.c and were re-added here by mistake.
12190 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
12191
12192 * doc.c (Fsnarf_documentation):
12193 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
12194 src to etc.
12195
12196 * ChangeLog.10: Add mistakenly removed entry.
12197
121982008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
12199
12200 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
12201
122022008-02-01 Miles Bader <miles@gnu.org>
12203
12204 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
12205 Add extra args to FACE_FOR_CHAR.
12206
122072008-02-01 Kenichi Handa <handa@m17n.org>
12208
12209 * keymap.c (where_is_internal_1): If key is a cons, store the copy
12210 in sequence.
12211
12212 * chartab.c (map_sub_char_table, map_char_table): If the range
12213 contains just one character, call the function with that character
12214 even if the depth is not 3.
12215
122162008-02-01 Jason Rumney <jasonr@gnu.org>
12217
12218 * w32font.c (w32font_text_extents): Calculate metrics for the
12219 whole string.
12220
122212008-02-01 Jason Rumney <jasonr@gnu.org>
12222
12223 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
12224
122252008-02-01 Jason Rumney <jasonr@gnu.org>
12226
12227 * w32term.c (x_set_glyph_string_clipping): Use
12228 get_glyph_string_clip_rects.
12229 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12230 Adjust for the change of struct glyph_string.
12231
12232 * w32font.c (w32font_draw): Do clipping here.
12233
122342008-02-01 Kenichi Handa <handa@m17n.org>
12235
12236 * xftfont.c (xftfont_draw): Adjust for the change of struct
12237 glyph_string.
12238
12239 * xterm.c (x_set_glyph_string_clipping): Use
12240 get_glyph_string_clip_rects.
12241 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12242 Adjust for the change of struct glyph_string.
12243
12244 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
12245 the resulting clip(s}.
12246 (expose_overlaps): Add arg r. Change callers. Set it to
12247 row->clip temporarily.
12248 (expose_window): Redraw rows overlapping the exposed area.
12249
12250 * dispextern.h (struct glyph_row): New member clip.
12251 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
12252 clip_height, new member clip, and num_clips.
12253
122542008-02-01 Kenichi Handa <handa@m17n.org>
12255
12256 * data.c (Fchar_or_string_p): Fix docstring.
12257
122582008-02-01 Kenichi Handa <handa@m17n.org>
12259
12260 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
12261 create a temporary XftDraw object.
12262
122632008-02-01 Kenichi Handa <handa@m17n.org>
12264
12265 * font.c (Ffontp): Fix docstring.
12266
12267 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
12268 strong evidence of ISO-2022.
12269
122702008-02-01 Kenichi Handa <handa@m17n.org>
12271
12272 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
12273 SYNTAX_ENTRY_FOLLOW_PARENT.
12274
122752008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12276
12277 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
12278 its type.
12279 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
12280 Update to the new type of weak_hash_tables and next_weak.
12281
12282 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
12283 a plain C pointer to Lisp_Hash_Table.
12284
12285 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
12286 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
12287 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
12288 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
12289 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
12290 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
12291 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
12292 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
12293 (GC_EQ): Remove since they've been identical to their non-GC_
12294 alter-egos ever since the markbit was eradicated.
12295
12296 * alloc.c:
12297 * buffer.c:
12298 * buffer.h:
12299 * data.c:
12300 * fileio.c:
12301 * filelock.c:
12302 * fns.c:
12303 * frame.h:
12304 * lisp.h:
12305 * macterm.c:
12306 * print.c:
12307 * process.c:
12308 * w32fns.c:
12309 * w32menu.c:
12310 * w32term.c:
12311 * xfns.c:
12312 * xmenu.c:
12313 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
12314
123152008-02-01 Kenichi Handa <handa@m17n.org>
12316
12317 * chartab.c (map_sub_char_table): Make it work for the top-level
12318 char-table. Fix handling of parent char-table.
12319 (map_char_table): Adjust for the above change.
12320
123212008-02-01 Jason Rumney <jasonr@gnu.org>
12322
12323 * w32font.c (Qgdi): Rename from Qw32.
12324
123252008-02-01 Jason Rumney <jasonr@gnu.org>
12326
12327 * w32bdf.c (get_quoted_string): Make function static.
12328
123292008-02-01 Kenichi Handa <handa@m17n.org>
12330
12331 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
12332 bigger ascent and descent than those of the font, use them as
12333 font's ascent and descent.
12334
123352008-02-01 Kenichi Handa <handa@m17n.org>
12336
12337 * Makefile.in (${lispsource}international/charprop.el): Move this
12338 target within "#ifdef HAVE_UNIDATA" and "#endif".
12339
123402008-02-01 Kenichi Handa <handa@m17n.org>
12341
12342 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
12343 (shortlisp): Add ../lisp/language/tai-viet.el.
12344
123452008-02-01 Ulrich Mueller <ulm@gentoo.org>
12346
12347 * Makefile.in (${lispsource}international/charprop.el): Depend on
12348 temacs${EXEEXT}.
12349
123502008-02-01 Jason Rumney <jasonr@gnu.org>
12351
12352 * w32font.c (w32font_close): Delete the GDI font object.
12353
12354 * w32menu.c: Include character.h.
12355
12356 * w32proc.c: Likewise.
12357
12358 * w32select.c: Likewise.
12359
12360 * makefile.w32-in (w32proc.o): Depend on character.h.
12361
123622008-02-01 Jason Rumney <jasonr@gnu.org>
12363
12364 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
12365
12366 * w32menu.c (syms_of_w32menu): Likewise.
12367
12368 * w32proc.c (syms_of_ntproc): Likewise.
12369
12370 * w32select.c (syms_of_w32select): Likewise.
12371
12372 * w32term.c (syms_of_w32term): Likewise.
12373
123742008-02-01 Jason Rumney <jasonr@gnu.org>
12375
12376 * w32font.c (w32font_draw): Delete brush after using it.
12377
123782008-02-01 Jason Rumney <jasonr@gnu.org>
12379
12380 * w32font.c (w32font_open): Don't set font_idx.
12381 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
12382 to font settings.
12383 (w32font_draw): Fill background explicitly.
12384
123852008-02-01 Jason Rumney <jasonr@gnu.org>
12386
12387 * w32term.c (w32_initialize): Don't call w32font_initialize.
12388
12389 * w32font.c (w32font_info): Remove subranges.
12390 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
12391 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
12392 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
12393 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
12394 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
12395 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
12396 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
12397 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
12398 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
12399 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
12400 New symbols.
12401 (font_callback_data): New struct.
12402 (w32font_list, w32font_match): Use it.
12403 (w32font_open): Don't populate subranges.
12404 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
12405 (w32font_encode_char): Always return unicode code-point as-is.
12406 (w32font_text_extents): Supply a transformation matrix to
12407 GetGlyphOutline. Never look up by glyph index. Avoid looping
12408 twice. Use unicode version of GetTexExtentPoint32 instead of
12409 glyph index version.
12410 (set_fonts_frame): Remove.
12411 (w32_enumfont_pattern_entity): Add frame parameter, use it to
12412 set frame parameter. Use backward compatible fake foundries.
12413 Save generic family in extra slot under QCfamily. Make width slot
12414 constant. Save QCspacing value. Save list of scripts instead of
12415 binary subranges.
12416 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
12417 (add_font_entity_to_list): Use font_callback_data struct. Filter
12418 unwanted fonts.
12419 (add_one_font_entity_to_list): Use font_callback_data struct.
12420 (w32_registry): Default to iso10646_1.
12421 (fill_in_logfont): Use dpi from extra slot. Don't bother with
12422 string font registries. Don't fill in font name if it is a generic
12423 family name, fill family instead. Use spacing, family and script
12424 extra info to fill pitch, family and charset fields.
12425 (list_all_matching_fonts): Use font_callback_data struct.
12426 (unicode_range_for_char): Remove.
12427 (font_supported_scripts): New function.
12428 (w32font_initialize): Remove.
12429 (syms_of_w32font): Update which symbols are defined.
12430
124312008-02-01 Jason Rumney <jasonr@gnu.org>
12432
12433 * font.c (font_pixel_size): Reverse assq_no_quit args.
12434
12435 * w32term.h (FONT_WIDTH): Report max width, not average.
12436 (FONT_MAX_WIDTH): Remove.
12437 (FONT_AVG_WIDTH): New macro.
12438
12439 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
12440 redefinition of FONT_WIDTH.
12441
12442 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
12443 (w32_cache_char_metrics): Use FONT_WIDTH.
12444
12445 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
12446
124472008-02-01 Jason Rumney <jasonr@gnu.org>
12448
12449 * w32font.c (w32font_open): Make lfHeight negative.
12450
12451 * w32fns.c (x_default_font_parameter): Use new style font name.
12452 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
12453
124542008-02-01 Jason Rumney <jasonr@gnu.org>
12455
12456 * w32font.c (QCsubranges): New symbol.
12457 (w32font_open, w32font_has_char): Get subranges from subproperty
12458 of extra.
12459 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
12460 (syms_of_w32font): Define :subranges symbol.
12461
12462 * font.c (font_put_extra): Expose externally.
12463
12464 * font.h (font_put_extra): Move declaration from font.c.
12465
12466 * font.c (Ffont_get): Use font driver to determine otf capability.
12467 (adjust_anchor): Check if driver defines anchor_point before using.
12468
12469 * w32font.c (w32font_open): Handle size, height and pixel_size better.
12470 (w32font_draw): Use options.
12471 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
12472 Fix detection of truetype fonts.
12473 (registry_to_w32_charset): Handle charsets other than iso8859-1
12474 expressed as lisp symbols.
12475 (w32_registry): Express charset as lisp symbol.
12476 (fill_in_logfont): Reverse pixel and point height logic.
12477 Don't set width here. Set quality to default.
12478
12479 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
12480 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
12481
12482 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12483 Remove redundant loop and allocation.
12484
12485 * makefile.w32-in (font.o, w32font.o): New objects.
12486 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
12487 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
12488
12489 * xdisp.c (fill_composite_glyph_string): Make the first arg to
12490 STORE_XCHARB a valid l-value.
12491
12492 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
12493 calculations for non-Truetype fonts.
12494 (x_draw_glyph_string): Sync with xterm.c.
12495 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12496 Remove redundant code.
12497 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
12498
12499 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
12500 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
12501
12502 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
12503 (x_to_w32_charset, w32_to_x_charset): Expose externally.
12504
12505 * w32font.c: New file for w32 font backend.
12506
125072008-02-01 Kenichi Handa <handa@m17n.org>
12508
12509 * term.c: Don't include "buffer.h" twice.
12510
125112008-02-01 Kenichi Handa <handa@m17n.org>
12512
12513 * character.c (Funibyte_string): New function.
12514 (syms_of_character): Defsubr it.
12515
125162008-02-01 Jason Rumney <jasonr@gnu.org>
12517
12518 * w32term.c [USE_FONT_BACKEND]:
12519 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
12520 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
12521 (x_draw_glyph_string, x_draw_glyph_string_foreground)
12522 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
12523 (x_free_frame_resources): Sync with xterm.c.
12524
125252008-02-01 Andreas Schwab <schwab@suse.de>
12526
12527 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
12528 char-table size.
12529
125302008-02-01 Kenichi Handa <handa@m17n.org>
12531
12532 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
12533
125342008-02-01 Kenichi Handa <handa@m17n.org>
12535
12536 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
12537 font_otf_gpos, add font_drive_otf.
12538
12539 * fontset.c (fontset_find_font): Pay attention to font size
12540 specified for a font.
12541 (reorder_font_vector): Check contents of font_def.
12542
12543 * font.c (struct otf_list): Delete it.
12544 (otf_list): Make it a lisp variable.
12545 (otf_open): Use lispy otf_list.
12546 (generate_otf_features): Rename from parse_gsub_gpos_spec.
12547 (check_otf_features): New function.
12548 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12549 New functions.
12550 (font_drive_otf): New function merging font_otf_gsub and
12551 font_otf_gpos.
12552 (font_open_for_lface): New arg spec. Change argument order.
12553 (font_load_for_face): Adjust for the change of font_open_for_lface.
12554 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
12555 Ffont_otf_gpos.
12556 (syms_of_font): Staticpro otf_list. Delete defsubr of
12557 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
12558
12559 * xfaces.c (set_font_frame_param): Adjust for the change of
12560 font_open_for_lface.
12561
12562 * font.h (font_open_for_lface): Adjust prototype.
12563 (struct font_driver): Delete members otf_gsub and otf_gpos, add
12564 member otf_drive.
12565 (font_otf_gsub, font_otf_gpos): Delete externs.
12566 (font_drive_otf): Extern it.
12567
125682008-02-01 Kenichi Handa <handa@m17n.org>
12569
12570 * font.c (font_at): If the window W is not on a window system,
12571 return Qnil.
12572
12573 * coding.c (produce_chars, encode_coding): Don't call
12574 insert_from_gap if no characters to produce.
12575
125762008-02-01 Kenichi Handa <handa@m17n.org>
12577
12578 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
12579 Fclear_face_cache.
12580
12581 * xfaces.c (face_for_font): Check also face->font==font->font.font.
12582
125832008-02-01 Miles Bader <miles@gnu.org>
12584
12585 * emacs.c (main): Change default value of `enable_font_backend' to 1.
12586 Parse "--disable-font-backend" option.
12587 (standard_args): Add "--disable-font-backend" option.
12588
125892008-02-01 Kenichi Handa <handa@m17n.org>
12590
12591 * fontset.c (fontset_find_font): New function.
12592 (fontset_font): Use fontset_find_font.
12593 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
12594 Register the specified font for all Latin characters.
12595 (new_fontset_from_font): Register the specified font for all Latin
12596 characters.
12597 (dump_fontset): For a realized fontset, include the base fontset
12598 name in the returned vector.
12599
126002008-02-01 Kenichi Handa <handa@m17n.org>
12601
12602 * character.h (CHAR_STRING): Cast C to unsigned on calling
12603 char_string.
12604
12605 * character.c (char_string): Type of arg C changed to unsigned.
12606 Signal an error if C is an invalid character code.
12607
12608 * editfns.c (general_insert_function, Fchar_to_string):
12609 Use CHARACTERP, not INTEGERP.
12610
126112008-02-01 Kenichi Handa <handa@m17n.org>
12612
12613 * character.h (MIN_MULTIBYTE_LEADING_CODE)
12614 (MAX_MULTIBYTE_LEADING_CODE): New macros.
12615
12616 * regex.c (analyse_first): Fix for multibyte characters in "case
12617 charset:" and "case categoryspec:".
12618
126192008-02-01 Andreas Schwab <schwab@suse.de>
12620
12621 * Makefile.in (LIBES): Move standard libraries to the end.
12622
126232008-02-01 Kenichi Handa <handa@m17n.org>
12624
12625 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
12626 nonzero, don't shrink the buffer nextb.
12627
12628 * buffer.h (struct buffer_text): New member inhibit_shrinking.
12629
12630 * coding.c (coding_alloc_by_making_gap): New arg offset.
12631 (alloc_destination): Call coding_alloc_by_making_gap with the arg
12632 offset.
12633 (decode_coding_iso_2022): Update coding->safe_charsets.
12634 (decode_coding_gap): Temporarily set
12635 current_buffer->text->inhibit_shrinking to 1.
12636
126372008-02-01 Kenichi Handa <handa@m17n.org>
12638
12639 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
12640 indexing into elements of s->cmp and s->char2b.
12641
126422008-02-01 Juanma Barranquero <lekktu@gmail.com>
12643
12644 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
12645
126462008-02-01 Kenichi Handa <handa@m17n.org>
12647
12648 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
12649 target_multibyte instead of multibyte.
12650 (re_match_2_internal): Call bcmp_translate with target_multibyte.
12651 (bcmp_translate): Change the argument name from multibyte to
12652 target_multibyte.
12653
126542008-02-01 Kenichi Handa <handa@m17n.org>
12655
12656 These changes are to compile a regexp into a pattern that can be
12657 used both for multibyte and unibyte targets.
12658
12659 * Makefile.in (search.o): Depend on charset.h.
12660
12661 * character.c (multibyte_char_to_unibyte_safe): New function.
12662
12663 * search.c: Include "charset.h".
12664 (compile_pattern_1): Delete argument multibyte. Don't set
12665 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
12666 (compile_pattern): Don't compare cp->buf.target_multibyte.
12667 Compare cp->buf.charset_unibyte.
12668 (compile_pattern): Set cp->buf.target_multibyte.
12669
12670 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
12671
12672 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
12673
12674 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
12675 multibyte. Change callers.
12676 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
12677 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
12678 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
12679 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
12680 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
12681 (regex_compile): Make the compiled pattern usable both for
12682 multibyte and unibyte targets.
12683 (analyse_first): Make the fastmap usable both for multibyte and
12684 unibyte targets.
12685 (TRANSLATE_VIA_MULTIBYTE): Delete.
12686 (re_match_2_internal): Pay attention to the case that the
12687 multibyteness of bufp and target may be different.
12688
126892008-02-01 Kenichi Handa <handa@m17n.org>
12690
12691 * xdisp.c (x_produce_glyphs): When a font is not found, make the
12692 empty box occupy at least one column width.
12693
126942008-02-01 Miles Bader <miles@gnu.org>
12695
12696 * Makefile.in: Remove redundant HAVE_XFT clause.
12697
126982008-02-01 Kenichi Handa <handa@m17n.org>
12699
12700 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
12701
127022008-02-01 Kenichi Handa <handa@m17n.org>
12703
12704 * fontset.c (Finternal_char_font): Fix for the case of POSITION
12705 being nil.
12706
127072008-02-01 Kenichi Handa <handa@m17n.org>
12708
12709 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
12710
127112008-02-01 Kenichi Handa <handa@m17n.org>
12712
12713 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
12714
127152008-02-01 Kenichi Handa <handa@m17n.org>
12716
12717 * search.c (simple_search): Fix previous change.
12718
127192008-02-01 Kenichi Handa <handa@m17n.org>
12720
12721 * xftfont.c (ftfont_font_format): Extern declaration.
12722
12723 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
12724
12725 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
12726 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
12727
12728 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
12729 (ftfont_font_format): Fix previous change.
12730
12731 * font.h (Ffont_xlfd_name): EXFUN it.
12732
12733 * font.c (font_parse_xlfd): Fix the array size of `f'.
12734 (register_font_driver): Use EQ to compare driver->type.
12735
12736 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
12737 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
12738 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
12739
127402008-02-01 Kenichi Handa <handa@m17n.org>
12741
12742 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
12743 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
12744
127452008-02-01 Kenichi Handa <handa@m17n.org>
12746
12747 * xfont.c (xfont_open): Set font->format.
12748
12749 * xftfont.c (xftfont_open): Set font->format.
12750
12751 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
12752 (ftfont_list): Include FC_FONTFORMAT in FcObject.
12753 (ftfont_open): Set font->format.
12754 (ftfont_font_format): New function.
12755
12756 * font.h (struct font): New member format.
12757
12758 * font.c (Qopentype): New variable.
12759 (syms_of_font): Defsym it.
12760 (Fquery_font): Change the format of the last element of the return
12761 value.
12762
127632008-02-01 Kenichi Handa <handa@m17n.org>
12764
12765 * xfns.c (xic_create_xfontset): Try the default fontset name as a
12766 last resort.
12767
127682008-02-01 Kenichi Handa <handa@m17n.org>
12769
12770 * coding.c (detect_coding_charset): Fix detection of multi-byte
12771 charset.
12772
127732008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
12774
12775 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
12776
127772008-02-01 Kenichi Handa <handa@m17n.org>
12778
12779 * xdisp.c (get_next_display_element): Set it->face_id for the
12780 first component of a composition.
12781 (x_produce_glyphs): Check if the font is changed or not for composition.
12782
127832008-02-01 Kenichi Handa <handa@m17n.org>
12784
12785 * fontset.c (Qlatin): New variable.
12786 (syms_of_fontset): Define it as a lisp symbol.
12787 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
12788
127892008-02-01 Kenichi Handa <handa@m17n.org>
12790
12791 * font.c (font_unparse_fcname): Pay attention to the case that
12792 some of font property is a null string.
12793
127942008-02-01 Kenichi Handa <handa@m17n.org>
12795
12796 * term.c: Include "composite.h".
12797 (encode_terminal_code): Output all components of composition.
12798 Check the size of encode_terminal_src.
12799 (produce_glyphs): For composition, call produce_composite_glyph.
12800 (append_composite_glyph, produce_composite_glyph): New functions.
12801
12802 * xdisp.c (x_produce_glyphs): In handling composition, if a font
12803 is not found, get font_info from the current ascii face.
12804
128052008-02-01 Kenichi Handa <handa@m17n.org>
12806
12807 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
12808 buffer-file-name to Qnil before calling insert_from_buffer.
12809
12810 * font.c (font_unparse_fcname): Pay attention to the case that
12811 foundry is a null string.
12812
128132008-02-01 Kenichi Handa <handa@m17n.org>
12814
12815 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
12816
12817 * font.c (Qunicode_sip): New variable.
12818 (syms_of_font): Declare it as a Lisp symbol.
12819
12820 * font.h (Qunicode_sip): Extern it.
12821
128222008-02-01 Kenichi Handa <handa@m17n.org>
12823
12824 * composite.c (get_composition_id): Pay attention to TAB component.
12825
12826 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
12827 TAB. Adjust for the change of s->char2b which always points to
12828 the first element of allocated memory.
12829
12830 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
12831
12832 * xdisp.c (handle_composition_prop): Set it->c to the first
12833 non-TAB component.
12834 (fill_composite_glyph_string): Change argument.
12835 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
12836 (x_produce_glyphs): Fix handling of left/right padding.
12837
128382008-02-01 Kenichi Handa <handa@m17n.org>
12839
12840 * coding.c (detect_coding_system): Fix for handling off
12841 inhibit_iso_escape_detection. Fix for the case that no coding
12842 system is defined for a specific coding category.
12843
128442008-02-01 Kenichi Handa <handa@m17n.org>
12845
12846 * font.c (font_matching_entity): Delete unused local var.
12847
12848 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
12849 opening a font.
12850
12851 * fileio.c (Finsert_file_contents): On recovering a file, assume
12852 Unix-like eol.
12853 (choose_write_coding_system): On auto-saving a file, force
12854 Unix-like eol.
12855
12856 * coding.c (setup_coding_system): Fix setting of
12857 coding->common_flags based on eol_type.
12858 (coding_inherit_eol_type): If PARENT is not nil, be sure to
12859 inherit from it.
12860
128612008-02-01 Kenichi Handa <handa@m17n.org>
12862
12863 * alloc.c (NSTATICS): Increas to 0x600.
12864
128652008-02-01 Kenichi Handa <handa@m17n.org>
12866
12867 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
12868 (ftfont_list): Don't check :name property.
12869 (ftfont_match): New function.
12870 (ftfont_pattern_entity): If the pattern doesn't contain
12871 FC_SPACING, don't assume FC_MONO.
12872
12873 * font.h (struct font_driver): New member `match'.
12874 (font_update_drivers): Adjust prototype.
12875
12876 * font.c (font_parse_fcname, font_parse_name): Don't change :name
12877 property of FONT.
12878 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
12879 them unconditionally.
12880 (font_matching_entity): New function.
12881 (font_open_by_name): Try font_matching_entity if exact match is
12882 not found.
12883 (font_update_drivers): Delete the arg FONT. Return a list of
12884 actually used backends. Don't free faces, font caches here.
12885 Don't store data in frame parameters. Don't call x_set_font.
12886 (Ffont_spec): Store :name property as is.
12887 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
12888 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
12889 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
12890 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
12891 Call font->driver->otf_gsub instead of font_otf_gsub.
12892
12893 * frame.c (x_set_font_backend): Do more works that were done in
12894 font_update_drivers before.
12895
12896 * xfont.c (xfont_match): New function.
12897 (xfont_driver): Set xfont_driver.match to xfont_match.
12898 (xfont_draw): Set font in GC if necessary.
12899
12900 * ftxfont.c (ftxfont_match): New function.
12901 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
12902
12903 * xftfont.c (xftfont_match): New function.
12904 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
12905
129062008-02-01 Kenichi Handa <handa@m17n.org>
12907
12908 * font.h (struct font): New member scalable.
12909 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
12910 (font_otf_gsub): Adjust prototype.
12911
12912 * font.c (font_otf_capability): Fix handling of the default langsys.
12913 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
12914 Check the contents of SPEC.
12915 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
12916 (check_gstring): New function.
12917 (REPLACEMENT_CHARACTER): New macro.
12918 (font_otf_gsub): New arg alternate_subst. Be sure to set all
12919 glyph codes of GSTRING.
12920 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
12921 (font_prepare_composition): Set cmp->glyph_len.
12922 (font_open_entity): Set font->scalable.
12923 (Ffont_get): Handle :otf property.
12924 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
12925 functions.
12926 (Fquery_font): Use font->font.full_name.
12927 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
12928 Sfont_otf_alternates.
12929
12930 * ftfont.c (ftfont_open): Set font->font.full_name and
12931 font->font.name properly. Fix calculation of font->font.height
12932 and font->min_width.
12933
12934 * ftxfont.c (ftxfont_create_gcs): New function.
12935 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
12936 (ftxfont_draw_backgrond): Fix filling region.
12937 (ftxfont_default_fid): New function.
12938 (ftxfont_open): Set xfont->fid to the return value of
12939 ftxfont_default_fid.
12940 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
12941 (ftxfont_done_face): Free only GCs that are created by
12942 ftxfont_create_gcs.
12943 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
12944
12945 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
12946 Clip to src->width, etc (not src->clip_XXX).
12947
12948 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
12949 FontBackend frame parameter.
12950
129512008-02-01 Kenichi Handa <handa@m17n.org>
12952
12953 * font.h (struct font_driver_list): New member `on'.
12954 (Fclear_font_cache): EXFUN it.
12955 (font_update_drivers): Extern it.
12956
12957 * font.c (font_unparse_fcname): Fix typo (swidth->width).
12958 (font_list_entities): Check driver_list->on.
12959 (register_font_driver): Initalize `on' member to 0.
12960 (font_update_drivers): New function.
12961 (Fclear_font_cache): Check driver_list->on.
12962
12963 * frame.h (Qfont_backend): Extern it.
12964 (x_set_font_backend): Extern it.
12965
12966 * frame.c (Qfont_backend): New variable.
12967 (frame_parms): New element for font-backend.
12968 (x_set_font_backend): New function.
12969
12970 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
12971 FontBackend frame parameter.
12972 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
12973 x_set_font_backend.
12974
12975 * xfont.c (xfont_list): Don't try listing by :name property if the
12976 name is not for XLFD.
12977
129782008-02-01 Kenichi Handa <handa@m17n.org>
12979
12980 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
12981 (LGLYPH_SET_TO): New macros.
12982 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
12983 element of G is vector or not.
12984 (font_at): Extern it.
12985
12986 * font.c: Include window.h.
12987 (font_lispy_object): New function.
12988 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
12989 end of valid glyph.
12990 (font_close_object): Fix getting (struct font *).
12991 (font_at): New function.
12992 (Ffont_get): If FONT is a font-object, get entity from it.
12993 (Ffont_make_gstring): Initialize elements of glyphs with nil.
12994 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
12995 range check.
12996 (Ffont_at): New function.
12997 (syms_of_font): Defsubr Sfont_at.
12998
12999 * xdisp.c (it_props): Move the entry for Qauto_composed to just
13000 before the entry for Qcomposition.
13001 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
13002 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
13003 the font in gstring.
13004 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
13005 LGLYPH_FORM (g) to detect the end of valid glyph.
13006 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
13007 we are composing with gstring.
13008
13009 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
13010 Check if adjustment is vector or not.
13011
13012 * Makefile.in (font.o): Make it depends on window.h.
13013
130142008-02-01 Kenichi Handa <handa@m17n.org>
13015
13016 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13017 adjustment is vector or not.
13018
130192008-02-01 Miles Bader <miles@gnu.org>
13020
13021 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13022
130232008-02-01 Kenichi Handa <handa@m17n.org>
13024
13025 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
13026 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
13027 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
13028
13029 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
13030 (DEVICE_DELTA): Fix typo.
13031 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
13032 LGLYPH format.
13033
13034 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13035 the change of LGLYPH format.
13036
130372008-02-01 Kenichi Handa <handa@m17n.org>
13038
13039 * ftfont.c (ftfont_list): Fix typo.
13040 (ftfont_build_basic_charsets): Don't include letters with diacritics.
13041
130422008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13043
13044 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
13045
13046 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
13047 xftface_info is non-NULL.
13048
130492008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13050
13051 * ftfont.c (ftfont_list): Move misplaced #endif.
13052
130532008-02-01 Kenichi Handa <handa@m17n.org>
13054
13055 * ftfont.c (ftfont_list): Pay attention to the case that
13056 FC_CAPABILITY is not defined.
13057
130582008-02-01 Kenichi Handa <handa@m17n.org>
13059
13060 * xftfont.c (xftfont_open): Set charset related members to -1.
13061
13062 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
13063 QCname.
13064 (ftfont_open): Set charset related members to -1.
13065
13066 * fontset.c (Votf_script_alist): New variable.
13067 (syms_of_fontset): Initialize it.
13068 (fontset_font): Delete unused variable.
13069
13070 * fontset.h (Votf_script_alist): Extern it.
13071
13072 * font.c (font_find_for_lface): Optimize code.
13073
13074 * font.h (font_close_object, font_merge_old_spec): Extern them.
13075
130762008-02-01 Kenichi Handa <handa@m17n.org>
13077
13078 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
13079 (syms_of_font): Initialize them.
13080 (font_pixel_size): Allow float value in dpi.
13081 (font_prop_validate_type): Delete.
13082 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
13083 Change caller.
13084 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
13085 (font_prop_validate_extra): Delete.
13086 (font_prop_validate_spacing): New function.
13087 (font_property_table): Add elements for all known properties.
13088 (get_font_prop_index): Rename from check_font_prop_name. New
13089 argument FROM. Change caller.
13090 (font_prop_validate): Validate all known properties.
13091 (font_put_extra): Delete argument force. Change caller.
13092 (font_expand_wildcards): Make it static. Fix the way of shrinking
13093 the possible range.
13094 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
13095 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
13096 Change caller.
13097 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
13098 (font_parse_fcname): Delete argument merge. Fix parsing of point
13099 size. Don't validate properties values here. Change caller.
13100 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
13101 (font_open_by_name): Delete unused variable.
13102 (Ffont_spec): Likewise. Validate property values.
13103 (Ffont_match_p): New function.
13104
13105 * font.h (QCscalable): Extern it.
13106 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
13107
13108 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
13109
13110 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
13111 (xfont_list_pattern): New function.
13112 (xfont_list): Use xfont_list_pattern.
13113
131142008-02-01 Kenichi Handa <handa@m17n.org>
13115
13116 * font.h (Flist_fonts): EXFUN it.
13117
131182008-02-01 Jason Rumney <jasonr@gnu.org>
13119
13120 * w32term.c (w32_initialize): Add back smoothing_type and
13121 smoothing_enabled definitions.
13122
131232008-02-01 Kenichi Handa <handa@m17n.org>
13124
13125 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
13126 s->face->font on determining underline position.
13127
131282008-02-01 Kenichi Handa <handa@m17n.org>
13129
13130 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
13131 (font_has_char): Accept font-object too.
13132 (font_find_for_lface): Try at first with a size specified in face.
13133
131342008-02-01 Kenichi Handa <handa@m17n.org>
13135
13136 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
13137 font_open_by_name.
13138
131392008-02-01 Kenichi Handa <handa@m17n.org>
13140
13141 * font.h (QCspacing, QCdpi): Extern them.
13142 (enum font_spacing): New enum.
13143 (FONT_PIXEL_SIZE_QUANTUM): New macro.
13144
13145 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
13146 (QCspacing, QCdpi): New variables.
13147 (syms_of_font): Initialize them.
13148 (font_pixel_size): New function.
13149 (font_put_extra): New function.
13150 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
13151 in FONT_EXTRA.
13152 (font_parse_fcname): Handle enumerated values (e.g. bold).
13153 Fix handling font size. Add QCname property that contains only
13154 unknown properties.
13155 (font_score): Change argument. Change caller. Pay attention to
13156 FONT_PIXEL_SIZE_QUANTUM.
13157 (font_sort_entites, font_list_entities, font_find_for_lface)
13158 (font_open_for_lface, font_open_by_name): Fix handling of font size.
13159 (Ffont_spec): Add QCname property that contains only unknown properties.
13160
13161 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
13162 include weight in listing pattern, instead check weight of each
13163 listed font. Don't include scalable in pattern. Pay attention to
13164 FONT_PIXEL_SIZE_QUANTUM.
13165
131662008-02-01 Kenichi Handa <handa@m17n.org>
13167
13168 * font.c (font_parse_fcname): Fix parsing of point-size.
13169 (font_unparse_fcname): Produce symbolic names for style properties.
13170 (font_list_entities): Handle float size correctly.
13171 (font_open_by_name): Prefer `normal' property values if the name
13172 doesn't specify them.
13173
13174 * fontset.c (Finternal_char_font): Use font_get_name, not
13175 Ffont_xlfd_name.
13176
13177 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
13178 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
13179 pattern. Don't force scalable.
13180
13181 * xftfont.c (xftfont_open): For generating a name, start from
13182 96-byte buffer.
13183
131842008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13185
13186 * frame.h (x_new_fontset2): Fix prototype.
13187
131882008-02-01 Kenichi Handa <handa@m17n.org>
13189
13190 * font.h (struct font_driver): Delete member parse_name.
13191 (font_match_p, font_get_spec, font_parse_fcname)
13192 (font_unparse_fcname): Extern them.
13193 (font_get_name): Adjust prototype.
13194
13195 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
13196 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
13197 (font_expand_wildcards): Fix handling ENCODING field. Avoid
13198 unnecessary checks for weight, slant, and swidth.
13199 (font_parse_fcname): New function.
13200 (font_unparse_fcname): New function.
13201 (font_parse_name): New function.
13202 (font_match_p): New function.
13203 (font_get_name): Change return value to Lisp string.
13204 (font_get_spec): New function.
13205 (Qunspecified, Qignore_defface): Don't extern them.
13206 (font_find_for_lface): Assume that LFACE is fully specified.
13207 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
13208 object, use it for FACE.
13209 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
13210 driver->parse_name.
13211 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
13212
13213 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
13214 prototype.
13215
13216 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
13217 argument F. Don't call Fnew_fontset. Instead, directly call
13218 make_fontset.
13219
13220 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
13221
13222 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
13223 of x_new_fontset2.
13224
13225 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
13226 (Qsans__serif): New variables.
13227 (ftfont_generic_family_list): New variable.
13228 (syms_of_ftfont): Initialize the above variables.
13229 (ftfont_pattern_entity): Delete argument NAME.
13230 (ftfont_list_generic_family): New function.
13231 (ftfont_parse_name): Delete this function.
13232 (ftfont_list): Try generic family only when FcFontList found no font.
13233 (ftfont_list_family): Fix args to FcObjectSetBuild.
13234
13235 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
13236 object in attrs[LFACE_FONT_INDEX].
13237 (set_lface_from_font_name): Cancel all changes for font-backend.
13238 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
13239 function.
13240 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
13241 font object in QCfont attribute.
13242 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
13243 (realize_default_face) [USE_FONT_BACKEND]: Call
13244 set_lface_from_font_and_fontset.
13245
13246 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
13247 "fixed", and signal error here if no suitable font was found.
13248
13249 * xfont.c (xfont_parse_name): Delete this function.
13250
13251 * xftfont.c (xftfont_open): Change coding style of error
13252 handling. Generate fontconfig's fontname pattern.
13253
13254 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
13255 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
13256
13257 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
13258 Both args FONTSET and FONT_OBJECT must be existing ones.
13259
132602008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13261
13262 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
13263
132642008-02-01 Kenichi Handa <handa@m17n.org>
13265
13266 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
13267
13268 * font.h (struct font): Fix typo.
13269
13270 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
13271 XLFD_XXX_INDEX.
13272 (enum xlfd_field_mask): New enum.
13273 (intern_font_field): Changed argument. Change caller. If digits
13274 are followed by non-digits, return a symbol.
13275 (font_expand_wildcards): New function.
13276 (font_parse_xlfd): Fix wildcard handling.
13277 (Ffont_spec): If :name is specified, reflect the info in the other
13278 properties.
13279
13280 * ftfont.c (ftfont_pattern_entity): Fix typo.
13281 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
13282 locale.
13283
132842008-02-01 Kenichi Handa <handa@m17n.org>
13285
13286 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
13287
13288 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
13289 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
13290 registry doesn't specify encoding part.
13291 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
13292 (font_open_by_name): At first try parsing the name.
13293 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
13294 as Lisp symbols.
13295
13296 * fontset.c (reorder_font_vector): Pay attention to the case that
13297 the 3rd element of font_def is nil.
13298 (fontset_font): For the default fontset, append one more fontset
13299 elements for a script-based font specification. Don't add script
13300 attribute on finding a font.
13301 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
13302 font name.
13303 (fontset_ascii_font): If a font can't be opened, return nil.
13304
13305 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
13306 (ftfont_pattern_entity): New function.
13307 (ftfont_get_cache): Assume that freetype_font_cache is already
13308 initialized.
13309 (ftfont_list): Handle the case that a file is specified in font
13310 name. Use ftfont_pattern_entity to generate entities.
13311 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
13312 (syms_of_ftfont): Initialize freetype_font_cache.
13313
13314 * xftfont.c (xftfont_open): Make the font name fontconfig's
13315 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
13316 (xftfont_close): Free font->font.name if not NULL.
13317
13318 * xfont.c (xfont_list): If script is specified for a font, return
13319 null_vector.
13320 (xfont_list_family): Declare argument type.
13321
13322 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
13323 name, set LFACE_FONT (lface) to nil.
13324
13325 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
13326 return Qnil.
13327
133282008-02-01 Kenichi Handa <handa@m17n.org>
13329
13330 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
13331 (standard_args): Add "-enable-font-backend".
13332
133332008-02-01 Kenichi Handa <handa@m17n.org>
13334
13335 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
13336 (struct xftdraw_list, xftdraw_list): Delete them.
13337 (register_xftdraw, check_xftdraw): Delete them.
13338 (xftfont_prepare_face): Don't call register_xftdraw.
13339 (xftfont_done_face): Don't call check_xftdraw.
13340 (xftfont_draw): Get background color only when with_background is
13341 nonzero.
13342
13343 * xfont.c (xfont_encode_char): Fix calculation of char2b.
13344
133452008-02-01 Kenichi Handa <handa@m17n.org>
13346
13347 These changes are for the new font handling codes.
13348
13349 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
13350 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
13351 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
13352 (FONTSRC, FONTOBJ): New variables.
13353 (obj): Add $(FONTOBJ).
13354 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
13355 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
13356 @LIBOTF_LIBS@.
13357 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
13358 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
13359
13360 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
13361
13362 * character.h (Vscript_representative_chars): Extern it.
13363
13364 * character.c (Vscript_representative_chars): New variable.
13365 (syms_of_character): Declare it as a Lisp variable.
13366
13367 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
13368 enable_font_backend is nonzero, accept the composition method
13369 COMPOSITION_WITH_GLYPH_STRING.
13370
13371 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
13372 enumeration COMPOSITION_WITH_GLYPH_STRING.
13373
13374 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
13375 members clip_x, clip_y, clip_width, and clip_height.
13376 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
13377
13378 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
13379 --enable-font-backend. Call syms_of_font.
13380
13381 * fns.c (assoc_no_quit): New function.
13382
13383 * fontset.h (FONT_INFO_FROM_FACE): New macro.
13384 (face_for_font, new_fontset_from_font)
13385 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
13386
13387 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
13388 (fontset_font, fontset_ascii, face_for_char)
13389 (make_fontset_for_ascii_face, Ffont_info)
13390 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
13391 is nonzero, use font-backend mechanism.
13392 (find_font_encoding): Make it non-static.
13393 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
13394 New functions.
13395
13396 * frame.h (struct frame): New members resx and resy.
13397 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
13398 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
13399
13400 * frame.c [USE_FONT_BACKEND]: Include "font.h".
13401 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
13402
13403 * lisp.h (assoc_no_quit): Extern it.
13404
13405 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
13406 Through out the file, use FONT_INFO_FROM_FACE instead of
13407 FONT_INFO_FROM_ID, use get_per_char_metric instead of
13408 rif->per_char_metric.
13409 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
13410 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
13411 (get_glyph_face_and_encoding, fill_composite_glyph_string)
13412 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13413 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
13414 nonzero, use font-backend mechanism.
13415 (get_per_char_metric): New function.
13416
13417 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
13418 (set_lface_from_font_name)
13419 (set_font_frame_param, free_realized_face)
13420 (prepare_face_for_display, clear_face_gcs)
13421 (Finternal_set_font_selection_order, realize_x_face)
13422 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
13423 font-backend mechanism.
13424 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
13425 (load_face_font) [USE_FONT_BACKEND]: Abort.
13426 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
13427 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
13428
13429 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
13430 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
13431 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
13432 nonzero, register all available font drivers. Call
13433 x_default_font_parameter for deciding a font.
13434 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
13435
13436 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
13437 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
13438 (x_set_glyph_string_clipping_exactly)
13439 (x_compute_glyph_string_overhangs)
13440 (x_draw_glyph_string_foreground)
13441 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
13442 (x_free_frame_resources) [USE_FONT_BACKEND]: If
13443 enable_font_backend is nonzero, use font-backend mechanism.
13444 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
13445
134462008-02-01 Kenichi Handa <handa@m17n.org>
13447
13448 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
13449 system_eol_type.
13450 (syms_of_coding): Initialize system_eol_type.
13451
13452 * process.c (Fset_process_coding_system): Inherit system's eol
13453 format if necessary.
13454
134552008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13456
13457 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
13458
134592008-02-01 Kenichi Handa <handa@m17n.org>
13460
13461 * coding.c (decode_eol): Pay attention to buffer relocation in
13462 del_range_2.
13463 (decode_coding): Call decode_eol before restoring undo_list.
13464
134652008-02-01 Kenichi Handa <handa@m17n.org>
13466
13467 * charset.c (Fdefine_charset_internal): Fix setting of
13468 emacs_mule_bytes.
13469
134702008-02-01 Kenichi Handa <handa@m17n.org>
13471
13472 * keyboard.c (read_char): Check if C is a character or not before
13473 looking up Vkeyboard_translate_table.
13474
134752008-02-01 Kenichi Handa <handa@m17n.org>
13476
13477 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
13478 condition to terminate the loop.
13479
134802008-02-01 Kenichi Handa <handa@m17n.org>
13481
13482 * coding.c (produce_composition): Compare charbuf[i] instead of
13483 args[i] against 0.
13484 (Fterminal_coding_system): Use EQ to compare Lisp objects.
13485
134862008-02-01 Kenichi Handa <handa@m17n.org>
13487
13488 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
13489 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
13490 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
13491 detect_coding.
13492 (emacs_mule_char): Handle old style (Emacs 20) component character
13493 of a composition.
13494 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
13495 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
13496 composition rule.
13497 (decode_coding_emacs_mule): Handle invalid bytes correctly.
13498
134992008-02-01 Kenichi Handa <handa@m17n.org>
13500
13501 * coding.c (encode_coding_ccl): Allocate destination dynamically
13502 when necessary.
13503
135042008-02-01 Kenichi Handa <handa@m17n.org>
13505
13506 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
13507 the loop. When quitted, show a proper error message.
13508
135092008-02-01 Kenichi Handa <handa@m17n.org>
13510
13511 * xterm.c (x_set_glyph_string_clipping_exactly): Set
13512 src->clip_head and src->clip_tail temporarily instead of src->hl.
13513
13514 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
13515 character sequence.
13516 (Fccl_execute_on_string): Use ASET, not XSET.
13517
135182008-02-01 Kenichi Handa <handa@m17n.org>
13519
13520 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
13521
135222008-02-01 Kenichi Handa <handa@m17n.org>
13523
13524 * coding.c (decode_coding): Fix the condition of terminating the
13525 decoding loop.
13526
135272008-02-01 Kenichi Handa <handa@m17n.org>
13528
13529 * data.c (Faset): On setting a character bigger than 255 in a
13530 unibyte string, signal an error instead of make the string multibyte.
13531
135322008-02-01 Kenichi Handa <handa@m17n.org>
13533
13534 * charset.c (map_charset_chars): Fix for ascii-compatible charset
13535 made by a mapping table.
13536
135372008-02-01 Kenichi Handa <handa@m17n.org>
13538
13539 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
13540 not.
13541 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
13542 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
13543
13544 * xterm.c (x_draw_composite_glyph_string_foreground): Check
13545 s->face is NULL or not.
13546
135472008-02-01 Kenichi Handa <handa@m17n.org>
13548
13549 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
13550 (x_draw_glyph_string): Fix drawing of right_overhang and
13551 left_overhang around/on cursor.
13552
13553 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
13554
135552008-02-01 Kenichi Handa <handa@m17n.org>
13556
13557 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
13558
135592008-02-01 Kenichi Handa <handa@m17n.org>
13560
13561 * coding.c (Fdefine_coding_system_internal)
13562 (Fdefine_coding_system_alias): Avoid a duplicated element in
13563 Vcoding_system_alist.
13564
135652008-02-01 Kenichi Handa <handa@m17n.org>
13566
13567 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
13568
13569 * coding.c (Qcoding_system_define_form): New variable.
13570 (syms_of_coding): Intern and staticpro it.
13571 (Fcoding_system_p): Check Qcoding_system_define_form.
13572 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
13573
13574 * coding.h (CODING_SYSTEM_P): If ID is not available, call
13575 Fcoding_system_p.
13576 (CHECK_CODING_SYSTEM): If ID is not available, call
13577 Fcheck_coding_system.
13578 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
13579 Try also Fcheck_coding_system.
13580
135812008-02-01 Kenichi Handa <handa@m17n.org>
13582
13583 * coding.c (code_conversion_restore): GCPRO arg.
13584
135852008-02-01 Kenichi Handa <handa@m17n.org>
13586
13587 * character.c (lisp_string_width): Check multibyteness of STRING.
13588
135892008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13590
13591 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
13592 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
13593 (decode_mac_font_name): Use decode_coding_c_string instead of
13594 decode_coding.
13595 (x_load_font): Initialize fontp->fontset to -1. Set
13596 fontp->encoding_type.
13597
135982008-02-01 Kenichi Handa <handa@m17n.org>
13599
13600 * search.c (search_buffer): Give up BM search on case-fold-search
13601 if one of a target character has a case-equivalence of different
13602 byte length even if that target charcter is an ASCII.
13603 (simple_search): Fix calculation of byte length of matched text.
13604 (boyer_moore): Fix handling of case-equivalent multibyte characters.
13605
136062008-02-01 Kenichi Handa <handa@m17n.org>
13607
13608 * coding.c (decode_coding): Fix handling of invalid bytes.
13609
136102008-02-01 Kenichi Handa <handa@m17n.org>
13611
13612 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
13613 Unicode characters.
13614
136152008-02-01 Kenichi Handa <handa@m17n.org>
13616
13617 * coding.c (encode_coding_object): If a pre-write-conversion
13618 function makes a new buffer, kill it.
13619
136202008-02-01 Kenichi Handa <handa@m17n.org>
13621
13622 * coding.c (QCascii_compatible_p): New variable.
13623 (syms_of_coding): Initialize it.
13624 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
13625 calling string_char.
13626 (record_conversion_result): Add `default:' case.
13627 (coding_charset_list): Delete unused variable `coding_type'.
13628 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
13629 property in the plist of the coding system.
13630 (Fcoding_system_put): Check QCascii_compatible_p.
13631
136322008-02-01 Miles Bader <miles@gnu.org>
13633
13634 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
13635 removed calculation of frame `f', as it's now used.
13636
136372008-02-01 Kenichi Handa <handa@m17n.org>
13638
13639 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
13640 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
13641 (UNIDATA): New variable.
13642 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
13643 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
13644 $(RUN_TEMACS) unconditionally.
13645
136462008-02-01 Kenichi Handa <handa@m17n.org>
13647
13648 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
13649 (admindir): New variable.
13650 ($(lispsource)international/charprop.el): New target.
13651
136522008-02-01 Miles Bader <miles@gnu.org>
13653
13654 * character.c (chars-in-region): Remove obsolete function.
13655 (syms_of_character): Remove its initialization.
13656
136572008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
13658
13659 * w32select.c (validate_coding_system)
13660 (setup_windows_coding_system): New functions.
13661 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
13662 setup_windows_coding_system.
13663 (setup_config, Fw32_get_clipboard_data): Use
13664 validate_coding_system.
13665 (Fx_selection_exists): Move call to setup_config to a place
13666 where signals are allowed.
13667
13668 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
13669 (Fcheck_coding_system): Add declarations.
13670
136712008-02-01 Kenichi Handa <handa@m17n.org>
13672
13673 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
13674
136752008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13676
13677 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
13678 string as the second argument for x_new_fontset.
13679
136802008-02-01 Kenichi Handa <handa@m17n.org>
13681
13682 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
13683 (encode_coding_object): Use safe_call instead of call2.
13684
136852008-02-01 Kenichi Handa <handa@m17n.org>
13686
13687 * fontset.c (Fset_fontset_font): Check family element of a given vector.
13688
13689 * Makefile.in (lisp): Include charprop.el.
13690
136912008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13692
13693 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
13694 Not sure if it's unnecessary.
13695
136962008-02-01 Steven Tamm <steventamm@mac.com>
13697
13698 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
13699 some possibly unnecessary fontset checking code that crashed
13700 when creating a new frame.
13701
137022008-02-01 Kenichi Handa <handa@m17n.org>
13703
13704 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
13705 lookup_face.
13706
13707 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
13708
13709 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
13710
137112008-02-01 Kenichi Handa <handa@m17n.org>
13712
13713 * coding.c: Cancel the change done in HEAD on 2008-02-01.
13714 (coding_charset_list): New function.
13715
13716 * coding.h (coding_charset_list): Extern it.
13717
137182008-02-01 Kenichi Handa <handa@m17n.org>
13719
13720 * fontset.c (Fset_fontset_font): Call find_font_encoding with
13721 concatenation of family and registry.
13722
137232008-02-01 Kenichi Handa <handa@m17n.org>
13724
13725 * character.h (BYTE8_STRING): Fix typo.
13726
13727 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
13728 string to multibyte (sync to HEAD).
13729
13730 * casefiddle.c (casify_region): Handle changes in byte-length
13731 using replace_range_2 (sync to HEAD).
13732
137332008-02-01 Andreas Schwab <schwab@suse.de>
13734
13735 * chartab.c (map_char_table): GCPRO table and arg.
13736
137372008-02-01 Kenichi Handa <handa@m17n.org>
13738
13739 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
13740 already at limit.
13741
137422008-02-01 Kenichi Handa <handa@m17n.org>
13743
13744 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
13745 instead of fast_c_string_match_ignore_case.
13746 (find_font_encoding): Change argument to Lisp_Object. Use
13747 fast_string_match_ignore_case instead of
13748 fast_c_string_match_ignore_case. Change caller.
13749
137502008-02-01 Kenichi Handa <handa@m17n.org>
13751
13752 * xdisp.c (get_next_display_element): In unibyte case, decide to
13753 display in octal form by checking a character by
13754 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
13755
13756 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
13757
13758 * character.c (unibyte_has_multibyte_table): New variable.
13759
13760 * character.h (unibyte_has_multibyte_table): Extern it.
13761 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
13762
137632008-02-01 Kenichi Handa <handa@m17n.org>
13764
13765 * coding.c (encode_coding_iso_2022): Fix handling of charset
13766 annotation.
13767
137682008-02-01 Kenichi Handa <handa@m17n.org>
13769
13770 * coding.c (setup_coding_system): If coding_system is nil, use
13771 Qundecided.
13772 (Fterminal_coding_system): Return nil if terminal coding system is
13773 `undecided'.
13774 (syms_of_coding): Define coding-system `undecided' here. Setup
13775 terminal_coding as `undecided'.
13776
137772008-02-01 Kenichi Handa <handa@m17n.org>
13778
13779 * xdisp.c (message_dolog, set_message_1): Call
13780 unibyte_char_to_multibyte with arg type int.
13781
13782 * lread.c (read1): Fix reading of a char-table.
13783
13784 * print.c (print_object): Include sub char-table in circularities
13785 detection.
13786
137872008-02-01 Kenichi Handa <handa@m17n.org>
13788
13789 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
13790 Append the found sequences in car of ARGS instead of prepending.
13791
137922008-02-01 Kenichi Handa <handa@m17n.org>
13793
13794 * fileio.c (report_file_error): Make a unibyte string from
13795 strerror (errorno).
13796 (Fsubstitute_in_file_name): Fix the arg to
13797 unibyte_char_to_multibyte. It is evaluated twice.
13798
137992008-02-01 Kenichi Handa <handa@m17n.org>
13800
13801 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
13802
138032008-02-01 Kenichi Handa <handa@m17n.org>
13804
13805 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
13806 BOM is not found.
13807 (detect_coding, detect_coding_system): Optimization for ISO-2022
13808 when no 8-bit data is found.
13809
138102008-02-01 Jason Rumney <jasonr@gnu.org>
13811
13812 * w32fns.c (x_to_w32_font): Update to use new coding struct.
13813
138142008-02-01 Kenichi Handa <handa@m17n.org>
13815
13816 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
13817 CHARS.
13818
138192008-02-01 Steven Tamm <steventamm@mac.com>
13820
13821 * macterm.c (mac_encode_char): Add charset argument and update
13822 to use encoding_type.
13823 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
13824 switch to pure fontset.
13825 (decode_mac_font_name): Temporarily remove decoding.
13826 (x_font_name_to_mac_font_name): Temporarily remove encoding.
13827 (x_load_font): Temporarily remove encoding.
13828
138292008-02-01 Kenichi Handa <handa@m17n.org>
13830
13831 * xfaces.c (Fface_font): If frame is not on a window system,
13832 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
13833 refer to face->font.
13834 (split_font_name_into_vector, build_font_name_from_vector)
13835 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
13836 when HAVE_WINDOW_SYSTEM is defined.
13837
138382008-02-01 Kenichi Handa <handa@m17n.org>
13839
13840 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
13841 (x_produce_glyphs): Fix setting of members of cmp in case
13842 cmp->glyph_len is zero.
13843
13844 * fontset.c (Fset_fontset_font): Fix docstring.
13845 (Ffontset_info): Make it backward compatible. New arg ALL.
13846
138472008-02-01 Kim F. Storm <storm@cua.dk>
13848
13849 * process.c (read_process_output): Grow decoding_buf when needed;
13850 this could cause a crash in allocate_string and compact_small_strings.
13851
138522008-02-01 Kenichi Handa <handa@m17n.org>
13853
13854 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
13855
138562008-02-01 Kenichi Handa <handa@m17n.org>
13857
13858 * coding.c (setup_coding_system): Set coding->common_flags
13859 correctly for raw-text.
13860 (consume_chars): On encoding unibyte text by raw-text, don't check
13861 multibyte form.
13862 (encode_coding): On encoding by raw-text, never use translation tables.
13863
13864 * fileio.c (e_write): Short cut for the case of no encoding.
13865
138662008-02-01 Kenichi Handa <handa@m17n.org>
13867
13868 * coding.c (detect_coding, detect_coding_system): Delete unused
13869 variables.
13870
138712008-02-01 Kenichi Handa <handa@m17n.org>
13872
13873 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
13874 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
13875
138762008-02-01 Kenichi Handa <handa@m17n.org>
13877
13878 * coding.c (Ffind_coding_systems_region_internal): Include
13879 raw-text and no-conversion in the result.
13880
138812008-02-01 Kenichi Handa <handa@m17n.org>
13882
13883 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
13884 (load_font_get_repertory): Delete unnecessary check of ENCODING of
13885 FONT_DEF.
13886 (font_def_arg, add_arg, from_arg, to_arg): New args.
13887 (set_fontset_font): Change argument.
13888 (Fset_fontset_font): Fix for the case that TARGET is a script
13889 name and charset name.
13890 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
13891
138922008-02-01 Kenichi Handa <handa@m17n.org>
13893
13894 * fontset.c (fontset_font): Rename from fontset_face. Change return
13895 value.
13896 (face_suitable_for_char_p, face_for_char): Adjust for the change
13897 of fontset_font.
13898 (make_fontset_for_ascii_face): Fix setting of the fontset element
13899 for ASCII.
13900 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
13901 to get a font name.
13902 (Ffontset_info): Adjust for the change of fontset_font.
13903
13904 * coding.c (emacs_mule_char): Check invalid code more rigidly.
13905
13906 * character.h (LEADING_CODE_LATIN_1_MIN)
13907 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
13908
139092008-02-01 Kenichi Handa <handa@m17n.org>
13910
13911 * editfns.c (check_translation): New function.
13912 (Ftranslate_region_internal): Handle M:N mapping.
13913
139142008-02-01 Kenichi Handa <handa@m17n.org>
13915
13916 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
13917
139182008-02-01 Kenichi Handa <handa@m17n.org>
13919
13920 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
13921 goto invalid_code.
13922 (decode_coding_iso_2022): Fix handling of invalid designation.
13923
13924 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
13925 after calling code_conversion_save.
13926
139272008-02-01 Kenichi Handa <handa@m17n.org>
13928
13929 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
13930
13931 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
13932
13933 * fontset.c: Include "intervals.h".
13934 (fontset_face): Fix comparing of Lisp_Objects.
13935 (free_face_fontset, new_fontset_from_font_name): Fix
13936 Lisp_Object/int mixup.
13937
13938 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
13939
13940 * coding.c: Add many prototypes for static functions.
13941 (get_translation_table): Allow max_lookup to be NULL.
13942 (decode_coding, Ffind_coding_systems_region_internal)
13943 (Funencodable_char_position, Fcheck_coding_systems_region): Call
13944 get_translation_table with max_lookup NULL.
13945
139462008-02-01 Kenichi Handa <handa@m17n.org>
13947
13948 * coding.c (get_translation_table): Declare it as Lisp_Object.
13949 (LOOKUP_TRANSLATION_TABLE): New macro.
13950 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
13951 instead of CHAR_TABLE_REF.
13952
139532008-02-01 Kenichi Handa <handa@m17n.org>
13954
13955 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
13956 annotation data format.
13957 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
13958 Change arguments FROM and TO to single argument NCHARS. Change caller.
13959 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
13960 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13961 (decode_coding_ccl, decode_coding_charset): Pay attention to
13962 coding->charbuf_used.
13963 (get_translation): New function.
13964 (produce_chars): New arguments translation_table and last_block.
13965 Translate characters here. Return number of carryover chars.
13966 Change caller.
13967 (produce_composition): New argument pos. Change caller.
13968 Adjust for the change of annotation data format.
13969 (produce_charset, produce_annotation): Likewise.
13970 (decode_coding, encode_coding): Don't call translate_chars.
13971 (consume_chars): New arg translation_table. Change caller.
13972 (translate_chars): Delete.
13973 (syms_of_coding): Make translation-table's number of extra slots 2.
13974
139752008-02-01 Kenichi Handa <handa@m17n.org>
13976
13977 * search.c (simple_search): Fix setting this_pos_byte in backward
13978 search.
13979
13980 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
13981 byte sequence.
13982 (detect_coding_ccl): Fix setting of the variable valids.
13983
139842008-02-01 Kenichi Handa <handa@m17n.org>
13985
13986 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
13987
13988 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
13989
13990 * editfns.c (Ftranslate_region_internal): Rename from
13991 Ftranslate_region. Accept a char-table in TABLE.
13992 (syms_of_editfns): Defsubr Stranslate_region_internal.
13993
13994 * xfaces.c (set_lface_from_font_name): If a font is specified for
13995 a frame, generate a fontset from the font.
13996 (build_scalable_font_name): If the scalable font is requested for
13997 a specific size, don't change that size.
13998 (try_font_list): Try a scalable font also in the case that a
13999 pattern string is specified.
14000
140012008-02-01 Kenichi Handa <handa@m17n.org>
14002
14003 * xfaces.c (Fface_font): New optional arg CHARACTER.
14004
140052008-02-01 Kenichi Handa <handa@m17n.org>
14006
14007 * charset.h (CHARSET_OFFSET): New macro.
14008
140092008-02-01 Kenichi Handa <handa@m17n.org>
14010
14011 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
14012
14013 * fontset.c (fontset_face): Handle the case that repertory is a
14014 char-table.
14015 (find_font_encoding): Return nil for unknown encoding.
14016 (Fset_fontset_font): Ignore a font of unknown encoding.
14017
140182008-02-01 Kenichi Handa <handa@m17n.org>
14019
14020 * keymap.c (describe_vector): Handle default value of a char table.
14021
14022 * fontset.c (fontset_face): Handle fallback fonts correctly.
14023 (Ffontset_info): Return infomation about fallback fonts.
14024
140252008-02-01 Kenichi Handa <handa@m17n.org>
14026
14027 * fontset.c (FONTSET_DEFAULT): New macro.
14028 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
14029 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
14030 the case that it is nil.
14031 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
14032 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
14033
14034 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
14035 subset or superset.
14036
140372008-02-01 Kenichi Handa <handa@m17n.org>
14038
14039 * emacs.c (main): Call init_charset after syms_of_XXX.
14040
14041 * charset.c (Vcharset_map_directory): Delete.
14042 (Vcharset_map_path): New variable.
14043 (load_charset_map_from_file): Use Vcharset_map_path instead.
14044 (init_charset): Initialize Vcharset_map_path.
14045 (syms_of_charset): Delete declaration of "charset-map-directory",
14046 add declaration of "charset-map-path".
14047
140482008-02-01 Kenichi Handa <handa@m17n.org>
14049
14050 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
14051 ASCII only string.
14052
14053 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
14054
14055 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
14056 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
14057
140582008-02-01 Kenichi Handa <handa@m17n.org>
14059
14060 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
14061
14062 * coding.c (QCmnemonic, QCdefalut_char)
14063 (QCdecode_translation_table, QCencode_translation_table)
14064 (QCpost_read_conversion, QCpre_write_conversion): New variables.
14065 (get_translation_table): Return a list of translation tables if
14066 necessary.
14067 (decode_coding): Call get_translation_table with ENCODEP 0.
14068 (char_encodable_p): If translation_table is non-nil, always call
14069 translate_char.
14070 (Fdefine_coding_system_internal): Accept list of translation
14071 tables as :encode-translation-table and :decode-translation-table.
14072 (Fcoding_system_put): New function.
14073 (syms_of_coding): Declare new symbols. Defsubr
14074 Scoding_system_put.
14075 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
14076 typically JISX0212.
14077
14078 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
14079 when the charset is superset type.
14080
14081 * character.c (translate_char): Accept list of translation tables.
14082
140832008-02-01 Kenichi Handa <handa@m17n.org>
14084
14085 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
14086 (CODING_ATTR_TRANS_TBL): New macro.
14087
14088 * coding.c (get_translation_table): New function.
14089 (translate_chars): Fix the bug of skipping annotation data.
14090 (decode_coding, encode_coding): Utilize get_translation_table.
14091 (char_encodable_p, Funencodable_char_position): Translate char if
14092 necessary.
14093 (Ffind_coding_systems_region_internal)
14094 (Fcheck_coding_systems_region): Setup translation table for encode
14095 in a coding system attribute vector in advance.
14096 (Fdefine_coding_system_internal): Allow a symbol as translation
14097 table. For shift-jis type coding system, allow 4th charset.
14098
140992008-02-01 Kenichi Handa <handa@m17n.org>
14100
14101 * coding.c (decode_coding_sjis): Check the first byte rigidly.
14102
14103 * xdisp.c (get_next_display_element): Pass -1 as POS to
14104 FACE_FOR_CHAR if displaying a C-string.
14105
141062008-02-01 Kenichi Handa <handa@m17n.org>
14107
14108 * composite.c (get_composition_id): Handle xoff and yoff in a
14109 composition rule.
14110
14111 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
14112 (struct composition): New member lbearing and rbearing.
14113
14114 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
14115 (x_get_glyph_overhangs): Handle a composition glyph.
14116 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
14117
14118 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
14119 composition glyph.
14120
141212008-02-01 Kenichi Handa <handa@m17n.org>
14122
14123 * print.c: Include charset.h.
14124 (Vprint_charset_text_property): New variable.
14125 (Qdefault): Extern it.
14126 (PRINT_STRING_NON_CHARSET_FOUND)
14127 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
14128 (print_check_string_result): New variable.
14129 (print_check_string_charset_prop): New function.
14130 (print_prune_charset_plist): New variable.
14131 (print_prune_string_charset): New function.
14132 (print_object): Call print_prune_string_charset if
14133 Vprint_charset_text_property is not t.
14134 (print_interval): Print nothing if interval->plist is nil.
14135 (syms_of_print): Declare Vprint_charset_text_property as a lisp
14136 variable. Init and staticpro print_prune_charset_plist.
14137
141382008-02-01 Kenichi Handa <handa@m17n.org>
14139
14140 * fontset.c (new_fontset_from_font_name): Use the specified font
14141 for all characters in the new fontset.
14142
14143 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14144 OBJECT args.
14145
14146 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
14147 OBJECT args for composition too.
14148
14149 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14150 OBJECT args.
14151
141522008-02-01 Kenichi Handa <handa@m17n.org>
14153
14154 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
14155
14156 * fontset.c (reorder_font_vector): Adjust for the change of
14157 FONT_DEF format.
14158 (fontset_face): New arg id. Change caller.
14159 (face_for_char): New args pos and object.
14160 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
14161 (fs_query_fontset): Check NAME by Fassoc too.
14162 (Fset_fontset_font): Allow non-XLFD font name.
14163 (Ffontset_info): Adjust for the change of FONT_DEF format.
14164
14165 * fontset.h (face_for_char): Adjust prototype.
14166
14167 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
14168 (append_space, extend_face_to_end_of_line)
14169 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14170 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
14171
14172 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
14173 POS and OBJECT args.
14174
14175 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
14176 POS and OBJECT args.
14177
141782008-02-01 Jason Rumney <jasonr@gnu.org>
14179
14180 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
14181 of GlobalAlloc'ed memory.
14182
141832008-02-01 Kenichi Handa <handa@m17n.org>
14184
14185 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
14186
14187 * charset.h (charset_table_used): Delete extern.
14188
14189 * charset.c (charset_table_used): Make it static.
14190 (map_charset_chars): Fix args to c_function with.
14191
14192 * chartab.c (map_sub_char_table_for_charset): Fix args to
14193 c_function with.
14194
14195 * coding.h (enum coding_result_code): Delete
14196 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
14197
14198 * coding.c (Qinsufficient_source, Qinconsistent_eol)
14199 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
14200 (Vlast_code_conversion_error): New variables.
14201 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
14202 (ONE_MORE_BYTE): Record error if any instead of signaling an
14203 error. If non-ASCII multibyte char is found, return the negative
14204 value of the code. All callers changed to check it.
14205 (ONE_MORE_BYTE_NO_CHECK): Likewise.
14206 (record_conversion_result): New function. Change all codes setting
14207 coding->result to call this function.
14208 (detect_coding_utf_8, decode_coding_utf_8)
14209 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
14210 Don't use the local variable incomplete.
14211 (emacs_mule_char): Change the second arg to `const'.
14212 (decode_coding): Fix of flushing out unprocessed data.
14213 (make_conversion_work_buffer): Fix making of a work buffer.
14214 (decode_coding_object): Return coding->dst_object.
14215
14216 * fontset.c (set_fontset_font): Fix args.
14217
14218 * lisp.h (CHARACTERBITS): Define as 22.
14219
14220 * process.c (send_process): Be sure to set coding->src_multibyte.
14221
14222 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
14223
142242008-02-01 Kenichi Handa <handa@m17n.org>
14225
14226 * xdisp.c (handle_auto_composed_prop): Give limit to
14227 Fnext_single_char_property_change.
14228
142292008-02-01 Kenichi Handa <handa@m17n.org>
14230
14231 * composite.c (syms_of_composite): Don't make the composition hash
14232 table weak.
14233
14234 * fontset.c (Fset_fontset_font): Fix docstring.
14235
14236 * lisp.h (detect_coding_system): Adjust prototype.
14237
14238 * fileio.c (kill_workbuf_unwind): Delete this function.
14239 (Finsert_file_contents): Adjust the call of detect_coding_system.
14240 Get conversion_buffer by code_conversion_save. Use the macro
14241 CODING_MAY_REQUIRE_DECODING. After decoding, update
14242 coding_system.
14243
14244 * coding.h (make_conversion_work_buffer): Delete extern.
14245 (code_conversion_save): Extern it.
14246
14247 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
14248 (CODING_GET_INFO): Delete argument eol_type. Change callers.
14249 (decode_coding_utf_8): Don't do eol converion.
14250 (detect_coding_utf_16): Check coding->src_chars, not
14251 coding->src_bytes. Add heuristics for those that have no signature.
14252 (decode_coding_emacs_mule, decode_coding_iso_2022)
14253 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14254 Don't do eol converion.
14255 (adjust_coding_eol_type): Return a new coding system.
14256 (detect_coding): Don't detect eol. Fix for utf-16 detection.
14257 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
14258 each change.
14259 (decode_coding): Pay attention to undo_list. Do eol conversion for
14260 all types of coding-systems (if necessary).
14261 (Vcode_conversion_work_buf_list): Delete it.
14262 (Vcode_conversion_reused_workbuf): Rename from
14263 Vcode_conversion_reused_work_buf.
14264 (Vcode_conversion_workbuf_name): New variable.
14265 (reused_workbuf_in_use): New variable.
14266 (make_conversion_work_buffer): Delete the arg DEPTH.
14267 (code_conversion_restore): Change argument to cons.
14268 (code_conversion_save): Delete the argument BUFFER. Change callers.
14269 (detect_coding_system): New argument src_chars. Change callers.
14270 Fix for utf-16 detection.
14271 (init_coding_once): Don't use ISO_carriage_return.
14272 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
14273 reused_workbuf_in_use.
14274
142752008-02-01 Kenichi Handa <handa@m17n.org>
14276
14277 * keymap.c (store_in_keymap): Pay attention to the case that idx
14278 is a cons specifying a character range.
14279
142802008-02-01 Kenichi Handa <handa@m17n.org>
14281
14282 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
14283 HANDLED_RECOMPUTE_PROPS.
14284
14285 * coding.c (Fdefine_coding_system_internal): Fix checking of
14286 ascii compatibility.
14287
142882008-02-01 Kenichi Handa <handa@m17n.org>
14289
14290 * charset.c (find_charsets_in_text): Delete unused locale variable.
14291 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
14292
14293 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
14294 Resync charset_list to Vemacs_mule_charset_list.
14295
14296 * keymap.c (store_in_keymap): Pay attention to the case that idx
14297 is a cons specifying a character range.
14298
142992008-02-01 Kenichi Handa <handa@m17n.org>
14300
14301 * composite.c (update_compositions): Bind inhibit-read-only, etc
14302 to t before calling remove-list-of-text-properties.
14303
14304 * print.c (print_object): Always print ASCII chars as is.
14305
143062008-02-01 Kenichi Handa <handa@m17n.org>
14307
14308 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
14309
14310 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
14311 is a char table.
14312
143132008-02-01 Kenichi Handa <handa@m17n.org>
14314
14315 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
14316
143172008-02-01 Kenichi Handa <handa@m17n.org>
14318
14319 * xfaces.c (set_lface_from_font_name): Fix for the case that
14320 FONTNAME is not fontset name.
14321
143222008-02-01 Kenichi Handa <handa@m17n.org>
14323
14324 * fns.c (base64_encode_1): Fix previous change.
14325
143262008-02-01 Kenichi Handa <handa@m17n.org>
14327
14328 * fontset.c (set_fontset_font): New function.
14329 (Fset_fontset_font): If a font is specified for a charset, use
14330 map_charset_chars to store the font spec in a fontset.
14331
143322008-02-01 Kenichi Handa <handa@m17n.org>
14333
14334 * fontset.c (fontset_face): Create a fallback fontset on demand.
14335 (make_fontset): Don't create a fallback fontset here.
14336 (free_face_fontset): Free a fallback fontset (if any) too.
14337 (n_auto_fontsets): Delete this variable.
14338 (auto_fontset_alist): New variable.
14339 (new_fontset_from_font_name): Check auto_fontset_alist.
14340 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
14341 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
14342 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
14343 Defsubr Sfontset_list_all.
14344
143452008-02-01 Kenichi Handa <handa@m17n.org>
14346
14347 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
14348
143492008-02-01 Kenichi Handa <handa@m17n.org>
14350
14351 * fontset.c (Fnew_fontset): Check NAME more rigidly.
14352
143532008-02-01 Kenichi Handa <handa@m17n.org>
14354
14355 * editfns.c (Fgoto_char): Fix docstring.
14356
143572008-02-01 Kenichi Handa <handa@m17n.org>
14358
14359 * insdel.c (insert_from_gap): Adjust intervals correctly.
14360
143612008-02-01 Jason Rumney <jasonr@gnu.org>
14362
14363 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
14364 (pfnGetFontUnicodeRanges): New dynamically loaded function.
14365 (w32_initialize): Try to load it.
14366 (x_get_font_repertory): Use it if available.
14367 (w32_encode_char): Add shortcut for unicode output.
14368
14369 * w32fns.c (w32_load_system_font): Default charset to -1.
14370 (x_to_w32_charset): Match all fonts for unicode.
14371 (w32_to_x_charset): New parameter matching. Don't return partial
14372 or wildcard charsets.
14373 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
14374 (w32_codepage_for_font): Return CP_UNICODE for unicode.
14375 (w32_to_x_font): Match charset to real charset.
14376 (enum_font_cb2): Always list unicode versions.
14377
14378 * makefile.w32-in (temacs): Increase EMHEAP.
14379
143802008-02-01 Jason Rumney <jasonr@gnu.org>
14381
14382 * w32term.c (w32_encode_char): New charset parameter.
14383 font_info.encoding becomes encoding_type.
14384 (x_get_font_repertory): New function. Warning: stub only!
14385 (x_new_font): Return quickly if font already set.
14386 (x_new_fontset): fontsetname parameter is Lisp_Object.
14387 Use new fs_query_fontset. Try new_fontset_from_font_name.
14388 Use fontset_name for return value.
14389
14390 * w32term.h: Declare x_get_font_repertory.
14391
14392 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
14393 place of find_charset_in_text. Use encode_coding_object in place
14394 of encode_coding.
14395 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
14396 decode_coding.
14397
14398 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
14399 of x_new_fontset.
14400 (w32_load_system_font): Initialize charset as unicode.
14401 font_info.encoding becomes encoding_type.
14402 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
14403 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
14404 (syms_of_w32fns): Set get_font_repertory_func.
14405
14406 * w32console.c: Include character.h. Use terminal_encode_buffer
14407 from term.c.
14408 (write_glyphs): Use new version of encode_terminal_code. Use
14409 encode_coding_object in place of encode_coding.
14410
14411 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
14412 encoding becomes encoding_type.
14413
14414 * term.c (terminal_encode_buffer): Make externally visible.
14415
14416 * makefile.w32-in: Add character.h dependancies.
14417 (character.o, chartab.o): New targets.
14418
144192008-02-01 Kenichi Handa <handa@m17n.org>
14420
14421 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
14422 CODING_ID_EOL_TYPE.
14423
144242008-02-01 Andreas Schwab <schwab@suse.de>
14425
14426 * coding.c (produce_chars): Revert last change.
14427
144282008-02-01 Kenichi Handa <handa@m17n.org>
14429
14430 * charset.h (charset_unicode): Extern it.
14431
14432 * charset.c (string_xstring_p): Check by (C >= 0x100).
14433 (find_charsets_in_text): Change format of the arc CHARSETS. New
14434 arg MULTIBYTE.
14435 (Ffind_charset_region, Ffind_charset_string): Adjust for the
14436 change of find_charsets_in_text.
14437 (Fsplit_char): Fix doc. Never return unknown.
14438
14439 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
14440
14441 * coding.c (Fdefine_coding_system_alias): Update
14442 Vcoding_system_list.
14443
14444 * fontset.c (load_font_get_repertory): Pay attention to the case
14445 that ENCODING of a font is specified by a char-table.
14446
14447 * xterm.c (x_get_font_repertory): Handle the case that the
14448 encoding of font is other than Unicode.
14449
144502008-02-01 Kenichi Handa <handa@m17n.org>
14451
14452 * term.c (encode_terminal_code): Don't handle glyph-table. Check
14453 if a character is encodable by the terminal coding system. If
14454 not, produces proper number of `?'s. Update
14455 terminal_encode_buffer and terminal_encode_buf_size if necessary.
14456 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
14457
144582008-02-01 Kenichi Handa <handa@m17n.org>
14459
14460 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
14461 variables.
14462 (encode_terminal_code): Change argument. Encode multiple
14463 characters at once. Store the result of encoding in
14464 terminal_encode_buffer.
14465 (write_glyphs, insert_glyphs): Adjust for the change of
14466 encode_terminal_code.
14467 (term_init): Initialize terminal_encode_buffer and
14468 terminal_encode_buf_size.
14469
14470 * coding.c (consume_chars): If coding->src_object is nil, don't
14471 check annotation.
14472
144732008-02-01 Kenichi Handa <handa@m17n.org>
14474
14475 * character.c (char_string): Use ASCII_CHAR_P instead of
14476 SINGLE_BYTE_CHAR_P.
14477
144782008-02-01 Kenichi Handa <handa@m17n.org>
14479
14480 * xdisp.c (handle_auto_composed_prop): Check if the last
14481 characters of auto-composed region is newly composed with the
14482 following characters.
14483 (handle_composition_prop): Fix checking of point being inside
14484 composition.
14485
144862008-02-01 Kenichi Handa <handa@m17n.org>
14487
14488 * fns.c (concat): Don't change multibyteness of the result by
14489 concatenating an 8-bit character.
14490
14491 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
14492 multibyteness of the result when newelt is an 8-bit character.
14493
144942008-02-01 Dave Love <fx@gnu.org>
14495
14496 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
14497 EMACS_INT.
14498
14499 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
14500
14501 * xfaces.c (face_numeric_value): Declare dim size_t.
14502 (Finternal_lisp_face_equal_p): Remove unused f.
14503
14504 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
14505 (MATRIX_ROW): Remove unused vars.
14506 (draw_glyphs, x_insert_glyphs, fast_find_position)
14507 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
14508 byte/char counts.
14509
14510 * regex.c (regex_compile): Remove unused var.
14511
14512 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14513
14514 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14515 (Faccessible_keymaps, where_is_internal): Remove unused vars.
14516
14517 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
14518
14519 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
14520
14521 * fileio.c (Fwrite_region): Remove unused var.
14522
14523 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
14524 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
14525
14526 * composite.c (Fremove_list_of_text_properties): Declare.
14527
14528 * coding.c (inhibit_pre_post_conversion): Remove (unused).
14529 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
14530 (coding_inherit_eol_type): Remove unused attrs.
14531 (detect_coding): Cast arg of detect_eol.
14532
14533 * charset.c (syms_of_charset): Remove unused var p.
14534 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
14535 byte/char counts.
14536
14537 * casetab.c (set_case_table): Remove unused var.
14538
14539 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
14540 unused vars.
14541
145422008-02-01 Dave Love <fx@gnu.org>
14543
14544 * xterm.c (x_bitmap_mask): Declare.
14545
145462008-02-01 Dave Love <fx@gnu.org>
14547
14548 * xterm.c (x_term_init): Fix type error.
14549
14550 * lisp.h: Add Funibyte_char_to_multibyte.
14551
14552 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
14553 (Fset_coding_system_priority): Doc fix.
14554
14555 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
14556
14557 * indent.c (check_composition): Make start and end EMACS_INT.
14558
14559 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
14560
14561 * xdisp.c (handle_composition_prop, check_point_in_composition):
14562 Make buffer positions EMACS_INT.
14563
14564 * composite.c (find_composition, run_composition_function)
14565 (update_compositions, Ffind_composition_internal): Make buffer
14566 positions EMACS_INT.
14567
14568 * composite.h (find_composition, update_compositions): Make
14569 position args EMACS_INT.
14570
14571 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
14572
14573 * intervals.c (get_property_and_range):
14574 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
14575
14576 * unexalpha.c: Don't include varargs.h.
14577
145782008-02-01 Dave Love <fx@gnu.org>
14579
14580 * coding.h (ENCODE_UTF_8): New.
14581
14582 * Makefile.in (gtkutil.o): Depend on coding.h.
14583
14584 * coding.c (Fset_coding_system_priority): Doc fix.
14585
145862008-02-01 Kenichi Handa <handa@m17n.org>
14587
14588 * fileio.c (Finsert_file_contents): Call setup_coding_system in
14589 the case of auto saving.
14590
145912008-02-01 Andreas Schwab <schwab@suse.de>
14592
14593 * chartab.c (map_char_table, map_char_table_for_charset): Protect
14594 `range' from GC.
14595
145962008-02-01 Kenichi Handa <handa@m17n.org>
14597
14598 * coding.c (decode_coding_sjis): Check bytes more rigidly.
14599
146002008-02-01 Kenichi Handa <handa@m17n.org>
14601
14602 * fileio.c (choose_write_coding_system): Return a decided coding system.
14603 (Fwrite_region): Set Vlast_coding_system_used to the return value
14604 of choose_write_coding_system.
14605
146062008-02-01 Kenichi Handa <handa@m17n.org>
14607
14608 * charset.c (Fset_charset_priority): Pay attention to duplicated
14609 arguments.
14610
14611 * coding.c (QCcategory): New variable.
14612 (syms_of_coding): Defsym it. Set all elements of
14613 Vcoding_category_table and their symbol values.
14614 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
14615 coding-category-XXX, and coding-category-list.
14616 (Fdefine_coding_system_internal): Add category in the plist.
14617
146182008-02-01 Kenichi Handa <handa@m17n.org>
14619
14620 * callproc.c (Fcall_process): Handle carryover correctly.
14621
14622 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
14623 (raw_text_coding_system): Check NILP (coding_system).
14624 (coding_inherit_eol_type): Check NILP (coding_system) and
14625 NILP (parent).
14626 (consume_chars): Fix for the case of raw-text.
14627
14628 * process.c (read_process_output): Handle carryover correctly.
14629
146302008-02-01 Dave Love <fx@gnu.org>
14631
14632 * regex.c (re_search_2): Fix last change.
14633
146342008-02-01 Kenichi Handa <handa@m17n.org>
14635
14636 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
14637 target_multibyte. Even in a unibyte case, return a converted
14638 multibyte char.
14639 (GET_CHAR_AFTER): New macro.
14640 (PATFETCH): Translate via multibyte char.
14641 (HANDLE_UNIBYTE_RANGE): Delete this macro.
14642 (SETUP_MULTIBYTE_RANGE): New macro.
14643 (regex_compile): Setup compiled code so that its multibyteness
14644 matches that of a target. Fix the handling of "[X-YZ]" using
14645 SETUP_MULTIBYTE_RANGE.
14646 (analyse_first) <charset>: For filling fastmap for all multibyte
14647 characters, don't check by BASE_LEADING_CODE_P.
14648 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
14649 the same as RE_MULTIBYTE_P (bufp) now.
14650 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
14651 (TARGET_CHAR_AND_LENGTH): Delete this macro.
14652 (TRANSLATE_VIA_MULTIBYTE): New macro.
14653 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
14654 It is the same as RE_MULTIBYTE_P (bufp) now.
14655 <exactn>: Translate via multibyte.
14656 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
14657 translate it.
14658 <charset, charset_not>: Fetch a character by
14659 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
14660 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
14661 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
14662 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
14663 by GET_CHAR_AFTER.
14664 (bcmp_translate): Likewise.
14665
14666 * search.c (compile_pattern): Check the member target_multibyte,
14667 not the member multibyte of buf.
14668
14669 * lread.c (read1): While reading a string, set force_singlebyte
14670 and force_multibyte correctly.
14671
14672 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
14673 up of unibyte_to_multibyte_table.
14674
146752008-02-01 Kenichi Handa <handa@m17n.org>
14676
14677 * coding.c (setup_coding_system): If coding has
14678 post-read-conversion or pre-write-conversion, set
14679 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
14680 respectively.
14681 (decode_coding_gap): Run post-read-conversion if any.
14682
14683 * fileio.c (Finsert_file_contents): Even if we read into a
14684 unibyte buffer, check if we must decode the result or not.
14685
146862008-02-01 Kenichi Handa <handa@m17n.org>
14687
14688 * coding.c (make_conversion_work_buffer): Change the work buffer
14689 name to the same one as that of Emacs 21.
14690
146912008-02-01 Kenichi Handa <handa@m17n.org>
14692
14693 * coding.h (make_conversion_work_buffer): Adjust prototype.
14694 (code_conversion_restore): Don't extern it.
14695
14696 * coding.c (detected_mask): Delete unused variable.
14697 (decode_coding_iso_2022): Pay attention to the byte sequence of
14698 CTEXT extended segment, and retain those bytes as is.
14699 (decode_coding_ccl): Delete unused variable `valids'.
14700 (setup_coding_system): Delete unused variable `category'.
14701 (consume_chars): Delete unused variable `category'. Make it work
14702 for non-multibyte case.
14703 (make_conversion_work_buffer): Change argument.
14704 (saved_coding): Delete unused variable.
14705 (code_conversion_restore): Don't check saved_coding->destination.
14706 (code_conversion_save): New function.
14707 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
14708 instead of record_unwind_protect.
14709 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
14710 (detect_coding_system): Delete unused variable `mask'.
14711 (Fdefine_coding_system_internal): Delete unused variable id.
14712
14713 * fileio.c (kill_workbuf_unwind): New function.
14714 (Finsert_file_contents): On replacing, call
14715 make_conversion_work_buffer with correct args, and call
14716 record_unwind_protect with the first arg kill_workbuf_unwind.
14717
14718 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
14719
147202008-02-01 Kenichi Handa <handa@m17n.org>
14721
14722 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
14723 (fontset_add): Fix for the case that TO is less than TO1.
14724 (Ffontset_info): Don't use fallback fontset on checking the
14725 default fontset.
14726 (dump_fontset): New function for debugging.
14727
14728 * coding.c (Fdefine_coding_system_internal): Fix for the case that
14729 coding_type is Qcharset.
14730
147312008-02-01 Kenichi Handa <handa@m17n.org>
14732
14733 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
14734 (map_char_table): Don't inherit the value from the parent on
14735 initializing VAL. Adjust for the above change.
14736
147372008-02-01 Kenichi Handa <handa@m17n.org>
14738
14739 * coding.c (Qsignature, Qendian): Delete these variables.
14740 (syms_of_coding): Don't initialize them.
14741 (CATEGORY_MASK_UTF_16_AUTO): New macro.
14742 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
14743 detect_info->found.
14744 (decode_coding_utf_16): Don't detect BOM here.
14745 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
14746 is NOT utf_16_without_bom.
14747 (setup_coding_system): For a coding system of type utf-16, check
14748 if the attribute :endian is Qbig or not (not nil or not), and set
14749 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
14750 (detect_coding): If coding type is utf-16 and BOM detection is
14751 required, detect it.
14752 (Fdefine_coding_system_internal): For a coding system of type
14753 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
14754
147552008-02-01 Kenichi Handa <handa@m17n.org>
14756
14757 * coding.c (coding_set_source): Fix for the case that the current
14758 buffer is different from coding->src_object.
14759 (decode_coding_object): Don't use the conversion work buffer if
14760 DST_OBJECT is a buffer.
14761
147622008-02-01 Dave Love <fx@gnu.org>
14763
14764 * lread.c (read_emacs_mule_char) [len==2]: Index
14765 emacs_mule_charset correctly.
14766
147672008-02-01 Dave Love <fx@gnu.org>
14768
14769 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
14770 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
14771 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
14772 treated specially.)
14773 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
14774 (detected_mask): Remove Big5 bits.
14775
147762008-02-01 Kenichi Handa <handa@m17n.org>
14777
14778 The following changes are to make the font rescaling facility
14779 compatible with Emacs 21.
14780
14781 * xfaces.c (Vface_font_rescale_alist): Rename from
14782 Vface_resizing_fonts.
14783 (struct font_name): Rename member resizing_ratio to rescale_ratio.
14784 (font_rescale_ratio): Rename from font_resizing_ratio.
14785 (split_font_name): Set font->rescale_ratio.
14786 (better_font_p): Pay attention to font->rescale_ratio.
14787 (build_scalable_font_name): Likewise. Change RESX, and RESY
14788 fields.
14789 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14790
147912008-02-01 Kenichi Handa <handa@m17n.org>
14792
14793 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
14794 (Qutf_16_le): Remove these variables.
14795 (syms_of_coding): Don't DEFSYM them.
14796 (decode_coding_utf_16): Fix handling of BOM.
14797 (encode_coding_utf_16): Fix handling of BOM.
14798
147992008-02-01 Kenichi Handa <handa@m17n.org>
14800
14801 * fileio.c (Finsert_file_contents): On replacing, before decoding
14802 the file into the work buffer, set point of the work buffer to the end.
14803
148042008-02-01 Dave Love <fx@gnu.org>
14805
14806 * coding.c (Fcheck_coding_systems_region): Fix type errors.
14807
148082008-02-01 Dave Love <fx@gnu.org>
14809
14810 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14811 and fix C types.
14812
148132008-02-01 Kenichi Handa <handa@m17n.org>
14814
14815 * xdisp.c (SKIP_GLYPHS): New macro.
14816 (set_cursor_from_row): Pay attention to string display properties.
14817
14818 * category.c (copy_category_entry): Fix for the case that RANGE
14819 is an integer.
14820
14821 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
14822
14823 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
14824
148252008-02-01 Kenichi Handa <handa@m17n.org>
14826
14827 * charset.c (Fcharset_id_internal): New function.
14828 (syms_of_charset): Defsubr it.
14829
14830 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
14831 with the last arg charset_list acquired from coding.
14832 (Fdefine_coding_system_internal): For ccl-based coding system, fix
14833 the attribute coding_attr_ccl_valids.
14834
14835 * coding.h (enum define_coding_ccl_arg_index): Set the first
14836 member coding_arg_ccl_decoder to coding_arg_max.
14837
14838 * ccl.h (ccl_driver): Adjust prototype.
14839
14840 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
14841 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 14842 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
14843 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
14844 last arg Qnil.
14845
148462008-02-01 Kenichi Handa <handa@m17n.org>
14847
14848 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
14849 call encode_char.
14850
14851 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
14852
148532008-02-01 Dave Love <fx@gnu.org>
14854
14855 * composite.c (syms_of_composite): Make composition_hash_table weak.
14856
148572008-02-01 Kenichi Handa <handa@m17n.org>
14858
14859 * dispextern.h (check_face_attributes, generate_ascii_font_name)
14860 (font_name_registry): Don't extern them.
14861 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
14862
14863 * fontset.h (Qfontset): Don't extern it.
14864 (new_fontset_from_font_name): Extern it.
14865
14866 * fontset.c: Give 8 extra slots to fontset objects.
14867 (Qfontset_info): New variable.
14868 (syms_of_fontset): Defsym it.
14869 (FONTSET_FALLBACK): New macro.
14870 (fontset_face): Try also the default fontset.
14871 (make_fontset): Realize a fallback fontset from the default fontset.
14872 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
14873 using split_font_name_into_vector and build_font_name_from_vector.
14874 (Fset_fontset_font): Access the elements of font_spec by enum
14875 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
14876 name by using split_font_name_into_vector.
14877 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
14878 generate a proper font name from the fontset name. Update
14879 Vfontset_alias_alist.
14880 (n_auto_fontsets): New variable.
14881 (new_fontset_from_font_name): New function.
14882 (Ffont_info): Store the information about fonts generated from the
14883 default fontset in the first extra slot of the returned char-table.
14884
14885 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
14886 (font_name_registry): Delete function.
14887 (split_font_name_into_vector): New function.
14888 (build_font_name_from_vector): New function.
14889 (font_list): The argument REGISTRY is now a list of registry names.
14890 (choose_face_font): If we are choosing an ASCII font, and ATTRS
14891 specifies an explicit font name, return the name as is. Make a
14892 list of registy names.
14893
14894 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
14895 of x_new_fontset.
14896 (Fx_create_frame): Don't call x_new_fontset here. Just use
14897 x_list_fonts to check the existence of fonts.
14898
14899 * xterm.h (x_new_fontset): Adjust prototype.
14900
14901 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
14902 string. Use new_fontset_from_font_name to create a fontset from a
14903 font name.
14904
149052008-02-01 Kenichi Handa <handa@m17n.org>
14906
14907 * syntax.c (Vfind_word_boundary_function_table): New name for
14908 Vnext_word_boundary_function_table.
14909 (find-word-boundary-function-table): New name for
14910 next-word-boundary-function-table.
14911
149122008-02-01 Dave Love <fx@gnu.org>
14913
14914 * Makefile.in: Fix some dependencies.
14915
14916 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
14917 set it to nil before returning.
14918
14919 * composite.c (update_compositions): Fix type error.
14920
14921 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
14922
149232008-02-01 Kenichi Handa <handa@m17n.org>
14924
14925 * xterm.c (x_new_font): Optimize for the case that the font is
14926 already set for the frame.
14927
149282008-02-01 Kenichi Handa <handa@m17n.org>
14929
14930 * chartab.c (char_table_ascii): Check if the char table contents
14931 is sub-char-table or not.
14932 (char_table_set, char_table_set_range): Fix argument to
14933 char_table_ascii.
14934
14935 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
14936 (detect_coding_utf_8, detect_coding_utf_16)
14937 (detect_coding_emacs_mule, detect_coding_iso_2022)
14938 (detect_coding_sjis, detect_coding_big5)
14939 (detect_coding_ccl, detect_coding_charset): Change argument MASK
14940 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
14941 sequence is valid in this coding system. Change callers.
14942 (MAX_ANNOTATION_LENGTH): New macro.
14943 (ADD_ANNOTATION_DATA): New macro.
14944 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
14945 ADD_ANNOTATION_DATA. Change the format of annotation data.
14946 (ADD_CHARSET_DATA): New macro.
14947 (emacs_mule_char): New argument ID. Change callers.
14948 (decode_coding_emacs_mule, decode_coding_iso_2022)
14949 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14950 Produce charset annotation data in coding->charbuf.
14951 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
14952 to charset annotation data in coding->charbuf.
14953 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
14954 coding->common_flags if the coding system is iso-2022 based and
14955 uses designation.
14956 (produce_composition): Adjust for the new annotation data format.
14957 (produce_charset): New function.
14958 (produce_annotation): Handle charset annotation.
14959 (handle_composition_annotation, handle_charset_annotation): New
14960 functions.
14961 (consume_chars): Handle charset annotation. Utilize the above two
14962 functions.
14963 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
14964 buffer, get the deleted text as a string and set
14965 coding->src_object to that string.
14966 (detect_coding, detect_coding_system): Use the new struct
14967 coding_detection_info.
14968
14969 * coding.h (struct coding_detection_info): New structure.
14970 (struct coding_system): Adjust prototype of the member `detector'.
14971 (CODING_ANNOTATE_CHARSET_MASK): New macro.
14972
149732008-02-01 Kenichi Handa <handa@m17n.org>
14974
14975 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
14976
149772008-02-01 Dave Love <fx@gnu.org>
14978
14979 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
14980 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
14981 to new local and nullify apropos_accumulate before returning.
14982 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
14983
149842008-02-01 Kenichi Handa <handa@m17n.org>
14985
14986 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
14987 correctly.
e3eea1fc 14988
aac0c6e3
MR
149892008-02-01 Dave Love <fx@gnu.org>
14990
14991 * fns.c (Flanginfo): Call synchronize_system_time_locale.
14992
149932008-02-01 Kenichi Handa <handa@m17n.org>
14994
14995 The following changes are to make character composition happen
14996 automatically on displaying.
14997
14998 * Makefile.in (lisp, shortlisp): Add composite.elc.
14999
15000 * composite.h (Qauto_composed, Vauto_composition_function)
15001 (Qauto_composition_function): Extern them.
15002
15003 * composite.c (Vcomposition_function_table)
15004 (Qcomposition_function_table): Delete variables.
15005 (Qauto_composed, Vauto_composition_function)
15006 (Qauto_composition_function): New variables.
15007 (run_composition_function): Don't call
15008 compose-chars-after-function.
15009 (update_compositions): Clear `auto-composed' text property.
15010 (compose_chars_in_text): Delete this function.
15011 (syms_of_composite): Staticpro Qauto_composed and
15012 Qauto_composition_function. Declare Vauto_composition_function as
15013 a Lisp variable.
15014
15015 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15016
15017 * xdisp.c (it_props): Add an entry for Qauto_composed.
15018 (handle_auto_composed_prop): New function.
15019
15020 * xselect.c (selection_data_to_lisp_data): Don't call
15021 compose_chars_in_text.
15022
150232008-02-01 Dave Love <fx@gnu.org>
15024
15025 * keyboard.c (read_char): Modify checking around use of
15026 Vkeyboard_translate_table.
15027
15028 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15029 and fix C types.
15030
150312008-02-01 Kenichi Handa <handa@m17n.org>
15032
15033 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
15034 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15035 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
15036 the case that the last byte is '\r' correctly.
15037 (decode_coding): Flush out the unprocessed data correctly.
15038 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
15039
150402008-02-01 Dave Love <fx@gnu.org>
15041
15042 * xterm.c (XTread_socket): Fix changes for defined keysyms.
15043 Add XK_ISO... case.
15044 (xaw_scroll_callback): Revert last change.
15045
150462008-02-01 Kenichi Handa <handa@m17n.org>
15047
15048 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
15049
150502008-02-01 Kenichi Handa <handa@m17n.org>
15051
15052 * xfaces.c (Vface_resizing_fonts): New variable.
15053 (struct font_name): New member `resizing_ratio'.
15054 (font_resizing_ratio): New function.
15055 (split_font_name): Set font->resizing_ratio.
15056 (better_font_p): Pay attention to font->resizing_ratio.
15057 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
15058 RESX, and RESY fields.
15059 (try_alternative_families): Try scalable fonts if
15060 Vscalable_fonts_allowed is not Qt.
15061 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
15062
150632008-02-01 Dave Love <fx@gnu.org>
15064
15065 * xterm.c (xaw_scroll_callback): Cast correctly.
15066
150672008-02-01 Dave Love <fx@gnu.org>
15068
15069 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
15070 (lispy_kana_keys): Comment out.
15071 (make_lispy_event) [XK_kana_A]: Comment out.
15072
15073 * xterm.c (xaw_scroll_callback): Cast call_data.
15074 (XTread_socket): Deal with ASCII keysyms.
15075 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
15076
150772008-02-01 Dave Love <fx@gnu.org>
15078
15079 * xterm.c (Vx_keysym_table): New.
15080 (syms_of_xterm): Initialize it.
15081 (XTread_socket): Use it.
15082 From head: Eliminate incorrect optimization that tried to avoid
15083 decoding the output of X*LookupString.
15084 (x_get_font_repertory): Delete charset declaration.
15085
150862008-02-01 Kenichi Handa <handa@m17n.org>
15087
15088 * coding.c (detect_coding_charset): If only ASCII bytes are found,
15089 return 0.
15090 (Fdefine_coding_system_internal): Setup
15091 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
15092
150932008-02-01 Dave Love <fx@gnu.org>
15094
15095 * coding.c (Fcheck_coding_system): Doc fix.
15096
15097 * editfns.c (Finsert_byte): Return a proper value.
15098
150992008-02-01 Kenichi Handa <handa@m17n.org>
15100
15101 * coding.c (decode_coding): Fix args to translate_chars. Pay
15102 attention to Vstandard_translation_table_for_decode.
15103 (encode_coding): Fix args to translate_chars. Pay attention to
15104 Vstandard_translation_table_for_encode.
15105
15106 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
15107 SINGLE_BYTE_CHAR_P.
15108
15109 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
15110 not by SINGLE_BYTE_CHAR_P.
15111
15112 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
15113 SINGLE_BYTE_CHAR_P.
15114
15115 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
15116 SINGLE_BYTE_CHAR_P.
15117
15118 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
15119 by SINGLE_BYTE_CHAR_P.
15120
15121 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
15122 SINGLE_BYTE_CHAR_P.
15123
151242008-02-01 Dave Love <fx@gnu.org>
15125
15126 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
15127
151282008-02-01 Dave Love <fx@gnu.org>
15129
15130 * fns.c (Flanginfo): Fix typo.
15131
15132 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
15133
151342008-02-01 Kenichi Handa <handa@m17n.org>
15135
15136 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
15137 (detect_coding_emacs_mule, detect_coding_iso_2022)
15138 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
15139 incomplete byte sequence. Don't update *mask when correctly detected.
15140 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
15141 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
15142 (detect_coding, detect_coding_system): Adjust for the changes above.
15143
151442008-02-01 Kenichi Handa <handa@m17n.org>
15145
15146 * character.c (char_string): Rename from
15147 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
15148 (string_char): Rename from string_char.
15149
15150 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
15151 if C is greater than MAX_3_BYTE_CHAR.
15152 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
15153 string_char instead of string_char_with_unification.
15154
151552008-02-01 Dave Love <fx@gnu.org>
15156
15157 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
15158
151592008-02-01 Kenichi Handa <handa@m17n.org>
15160
15161 * keymap.c (push_key_description): Pay attention to force_multibyte.
15162
15163 * regex.c (re_search_2): Fix for the case of unibyte buffer.
15164
151652008-02-01 Dave Love <fx@gnu.org>
15166
15167 * charset.c (define_charset_internal): Rename `supprementary'.
15168
15169 * Makefile.in (lisp, shortlisp): Remove latin-N.
15170
151712008-02-01 Dave Love <fx@gnu.org>
15172
15173 * xfns.c (x_window, x_window): Use use_xim.
15174
15175 * xterm.c (use_xim): Initialize.
15176 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
15177 (x_term_init): Maybe set use_xim.
15178
15179 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
15180
151812008-02-01 Kenichi Handa <handa@m17n.org>
15182
15183 * search.c (search_buffer): Fix case-fold-search of multibyte
15184 characters.
15185 (boyer_moore): Rename the last argument to char_high_bits.
15186
151872008-02-01 Kenichi Handa <handa@m17n.org>
15188
15189 * xdisp.c (display_string): Fix for the case of zero width glyph.
15190
15191 * xfns.c (x_set_font): Change the error message of the case that
15192 x_new_fontset returns Qt.
15193
15194 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
15195 (Finternal_set_lisp_face_attribute): Use signal_error for the
15196 error of invalid fontset.
15197
15198 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
15199 fontset, return Qt.
15200
152012008-02-01 Dave Love <fx@gnu.org>
15202
15203 * unexelf.c (unexec): Make .got handling not SGI-specific.
15204
15205 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
15206
15207 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
15208
15209 * keyboard.c (read_key_sequence): Fix type error.
15210
15211 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
15212 type error.
15213
15214 * fontset.c (fontset_add): Return Lisp_Object.
15215
152162008-02-01 Dave Love <fx@gnu.org>
15217
15218 * charset.h (charset_ordered_list_tick): Declare extern.
15219
152202008-02-01 Kenichi Handa <handa@m17n.org>
15221
15222 The following changes (and some of 2008-02-01 changes of mine) are
15223 for handling syntax, category, and case conversion for unibyte
15224 characters by converting them to multibyte on the fly. With these
15225 changes, we don't have to setup syntax and case tables for unibyte
15226 characters in each language environment.
15227
15228 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
15229 multibyte if necessary.
15230
15231 * bytecode.c (Fbyte_code): Likewise.
15232
15233 * character.h (LEADING_CODE_LATIN_1_MIN)
15234 (LEADING_CODE_LATIN_1_MAX): New macros.
15235 (unibyte_to_multibyte_table): Extern it.
15236 (unibyte_char_to_multibyte): New macro.
15237 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
15238 (CHAR_LEADING_CODE): New macro.
15239 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
15240
15241 * character.c (unibyte_to_multibyte_table): New variable.
15242 (unibyte_char_to_multibyte): Move to character.h and define as macro.
15243 (multibyte_char_to_unibyte): If C is an eight-bit character,
15244 convert it to the corresponding byte value.
15245
15246 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
15247 not 1, signals an error. Update the elements of
15248 unibyte_to_multibyte_table.
15249 (init_charset_once): Initialize unibyte_to_multibyte_table.
15250 (syms_of_charset): Define the charset `iso-8859-1'.
15251
15252 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
15253 as is without converting it to unibyte. In a unibyte buffer,
15254 convert C to multibyte before checking the syntax.
15255
15256 * lisp.h (unibyte_char_to_multibyte): Delete extern.
15257
15258 * minibuf.c (Fminibuffer_complete_word): Use the macro
15259 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
15260
15261 * regex.h (struct re_pattern_buffer): New member target_multibyte.
15262
15263 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
15264 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
15265 that is zero, convert an eight-bit char to multibyte.
15266 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
15267 non-emacs case.
15268 (PATFETCH): Convert an eight-bit char to multibyte.
15269 (HANDLE_UNIBYTE_RANGE): New macro.
15270 (regex_compile): Setup the compiled pattern for multibyte chars
15271 even if the given regex string is unibyte. Use PATFETCH_RAW
15272 instead of PATFETCH in many places. To handle `charset'
15273 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
15274 only for ASCII chars.
15275 (analyse_first) <exactn>: Simplify because the compiled pattern
15276 is multibyte.
15277 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
15278 <charset>: Use CHAR_LEADING_CODE to get leading codes.
15279 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
15280 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
15281 multibyte always 1.
15282 (re_search_2): In emacs, set the locale variable multibyte to 1,
15283 otherwise to 0. New local variable target_multibyte. Check it
15284 to decide the multibyteness of STR1 and STR2. If
15285 target_multibyte is zero, convert unibyte chars to multibyte
15286 before translating and checking fastmap.
15287 (TARGET_CHAR_AND_LENGTH): New macro.
15288 (re_match_2_internal): In emacs, set the locale variable multibyte
15289 to 1, otherwise to 0. New local variable target_multibyte. Check
15290 it to decide the multibyteness of STR1 and STR2. Use
15291 TARGET_CHAR_AND_LENGTH to fetch a character from D.
15292 <charset, charset_not>: If multibyte is nonzero, check fastmap
15293 only for ASCII chars. Call bcmp_translate with
15294 target_multibyte, not with multibyte.
15295 <begline>: Declare the local variable C as `unsigned'.
15296 (bcmp_translate): Change the last arg name to target_multibyte.
15297
15298 * search.c (compile_pattern_1): Don't adjust the multibyteness of
15299 the regexp pattern and the matching target. Set cp->buf.multibyte
15300 to the multibyteness of the regexp pattern. Set
15301 cp->but.target_multibyte to the multibyteness of the matching target.
15302 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
15303 FETCH_STRING_CHAR_ADVANCE.
15304 (Freplace_match): Convert unibyte chars to multibyte.
15305
15306 * syntax.c (char_quoted, back_comment, scan_words)
15307 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
15308 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
15309 unibyte chars to multibyte.
15310 (skip_chars): Delete the arg syntaxp, and move the code for
15311 handling syntaxes to skip_syntaxes. Change callers.
15312 Fix the case that the multibyteness of STRING and the current
15313 buffer doesn't match.
15314 (skip_syntaxes): New function.
15315 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
15316 SINGLE_BYTE_CHAR_P.
15317
153182008-02-01 Kenichi Handa <handa@m17n.org>
15319
15320 * xfaces.c (QCfontset): New variable.
15321 (LFACE_FONTSET): New macro.
15322 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
15323 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
15324 (Finternal_set_lisp_face_attribute)
15325 (Finternal_get_lisp_face_attribute): Handle QCfontset.
15326 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
15327 check also LFACE_FONTSET_INDEX.
15328 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
15329 attrs[LFACE_FONT_INDEX].
15330 (syms_of_xfaces): Intern and staticpro QCfontset.
15331
15332 * dispextern.h (enum lface_attribute_index): New member
15333 LFACE_FONTSET_INDEX.
15334
15335 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
15336
153372008-02-01 Kenichi Handa <handa@m17n.org>
15338
15339 * coding.c (coding_set_destination): Fix coding->destination for
15340 the case converting a region.
15341 (encode_coding_utf_8): Encode eight-bit chars as single byte.
15342 (encode_coding_object): Fix coding->dst_pos and
15343 coding->dst_pos_byte for the case converting a region.
15344
15345 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
15346
15347 * character.h (BYTE8_STRING): New macro.
15348
15349 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
15350
153512008-02-01 Kenichi Handa <handa@m17n.org>
15352
15353 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
15354 characters by octal form.
15355
15356 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15357
15358 * buffer.h (_fetch_multibyte_char_len): Delete extern.
15359 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
15360 _fetch_multibyte_char_len.
15361 (FETCH_CHAR_AS_MULTIBYTE): New macro.
15362
15363 * casetab.c (set_canon, set_identity, shuffle): Simplify.
15364
15365 * casefiddle.c (casify_object): Simplify. Handle the case that
15366 the case conversion change the byte length.
15367 (casify_region): Likewise.
15368
15369 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
15370
15371 * character.c (_fetch_multibyte_char_len): Delete this variable.
15372 (syms_of_character): Setup Vprintable_chars.
15373
15374 * editfns.c (Fchar_equal): Fix for the unibyte case.
15375 (Finsert_byte): New function.
15376 (syms_of_editfns): Defsubr it.
15377
15378 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
15379 of direct code 0x3ffff.
15380
15381 * search.c (Freplace_match): Fix for the unibyte case.
15382
153832008-02-01 Kenichi Handa <handa@m17n.org>
15384
15385 * lread.c (safe_to_load_p): Fix the logic.
15386
15387 * syntax.c (scan_words): Don't treat characters belonging to
15388 different scripts as constituting a word.
15389
15390 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15391
15392 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
15393
15394 * emacs.c (main): In the case of --unibyte, instead of aborting on
15395 finding non-empty buffer, make it unibyte.
15396
153972008-02-01 Kenichi Handa <handa@m17n.org>
15398
15399 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
15400 to create a fontset.
15401
154022008-02-01 Dave Love <fx@gnu.org>
15403
15404 * character.c (Funibyte_char_to_multibyte): Doc fix.
15405
15406 * xfns.c [HAVE_STDLIB_H]: Fix last change.
15407
154082008-02-01 Kenichi Handa <handa@m17n.org>
15409
15410 * fontset.c (fontset_add): Make the type `int'.
15411 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
15412
15413 * character.c (unibyte_char_to_multibyte)
15414 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
15415 charset_unibyte, not charset_primary.
15416
15417 * charset.h (charset_unibyte): Extern it instead of charset_primary.
15418
15419 * charset.c (charset_unibyte): Rename from charset_primary.
15420 (Funibyte_charset): Rename from Fprimary_charset.
15421 (Fset_unibyte_charset): Rename from Fset_primary_charset.
15422 (syms_of_charset): Adjust for the above changes.
15423
15424 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15425 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15426 it->multibyte_p is zero.
15427
15428 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
15429 Delete extern.
15430
154312008-02-01 Kenichi Handa <handa@m17n.org>
15432
15433 * coding.c (Fdefine_coding_system_internal): Fix category setting
15434 for a coding system of type iso-2022.
15435
154362008-02-01 Kenichi Handa <handa@m17n.org>
15437
15438 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
15439
154402008-02-01 Kenichi Handa <handa@m17n.org>
15441
15442 * syntax.c (Vnext_word_boundary_function_table): New variable.
15443 (next-word-boundary-function-table): Declare it as a Lisp variable
15444 in syms_of_syntax.
15445 (scan_words): Call functions in Vnext_word_boundary_function_table
15446 if any.
15447
15448 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
15449
15450 * fontset.c (fs_load_font): If fontp->charset is not negative,
15451 return fontp without setting its members.
15452
154532008-02-01 Dave Love <fx@gnu.org>
15454
15455 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
15456
15457 * m/sparc.h (HAVE_ALLOCA): Delete.
15458
15459 * s/irix6-5.h: Don't include strings.h.
15460 (bcopy, bzero, bcmp): Don't undef.
15461
15462 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
15463
15464 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
15465 (TIOCSIGSEND): Don't test IRIX6.
15466 (bcopy, bzero, bcmp): Define conditionally.
15467
154682008-02-01 Kenichi Handa <handa@m17n.org>
15469
15470 * buffer.c (Qas, Qmake, Qto): New variables.
15471 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
15472 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
15473
15474 * callproc.c (Fcall_process): Don't call insert_1_both directly if
15475 we are inserting a process output into a multibyte buffer.
15476
15477 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
15478 multibyte_char_to_unibyte.
15479
15480 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
15481 by the primary charset, make it eight-bit char.
15482 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
15483
15484 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
15485 (charset_8_bit__control, charset_8_bit_graphic)
15486 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
15487 (define_charset_internal): New function.
15488 (syms_of_charset): Call define_charset_internal for pre-defined
15489 charsets.
15490
15491 * charset.h (charset_8_bit): Extern it.
15492
15493 * coding.c (make_conversion_work_buffer): Adjust for the change
15494 of Fset_buffer_multibyte.
15495 (encode_coding_raw_text): Increment p0 in the loop.
15496
15497 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
15498
15499 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
15500 for the change of Fset_buffer_multibyte.
15501
15502 * fns.c (Fstring_to_multibyte): New function.
15503 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
15504
155052008-02-01 Dave Love <fx@gnu.org>
15506
15507 * xfns.c (x_put_x_image): Declare args.
15508
15509 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
15510 (try_font_list): Declare an arg.
15511
15512 * xdisp.c (message2_nolog, set_message): Declare an arg.
15513
15514 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
15515
15516 * syntax.c (scan_sexps_forward): Declare an arg.
15517
15518 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15519 Declare an arg.
15520
15521 * lisp.h (Fnew_fontset): Declare.
15522
15523 * keymap.c (push_key_description): Call CHARACTERP correctly.
15524
15525 * fontset.c (fontset_add): Declare args. Call make_number correctly.
15526 (face_for_char): Delete unused vars.
15527 (Fset_fontset_font): Doc fix. Delete unused vars.
15528
15529 * doc.c (Fsubstitute_command_keys): Delete unused vars.
15530
15531 * composite.c (update_compositions): Declare arg.
15532
15533 * cm.c (calccost, cmgoto): Declare args.
15534
15535 * charset.c: Remove `emacs' conditional. Doc fixes.
15536 (map_char_table_for_charset): Declare.
15537
15538 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
15539
15540 * ccl.c: Remove `emacs' conditional.
15541
155422008-02-01 Kenichi Handa <handa@m17n.org>
15543
15544 The following changes are to allow specifying multiple font
15545 patterns for a character range (specified by script or charset).
15546
15547 * Makefile.in (abbrev.o): Depend on syntax.h.
15548 (xfaces.o): Depend on charset.h.
15549
15550 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
15551 SINGLE_BYTE_CHAR_P.
15552
15553 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
15554
15555 * character.h (Vchar_script_table): Extern it.
15556
15557 * character.c (Vscript_alist): Delete.
15558 (Vchar_script_table, Qchar_script_table): New variable.
15559 (syms_of_character): Declare Vchar_script_table as a lisp variable
15560 and initialize it.
15561
15562 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
15563 have property char-table-extra-slots, make no extra slot.
15564
15565 * dispextern.h (struct face): Delete member `charset'.
15566 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
15567 SINGLE_BYTE_CHAR_P.
15568 (choose_face_font, lookup_non_ascii_face, font_name_registry):
15569 Add prototypes.
15570 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
15571 (generate_ascii_font_name): Rename from generate_ascii_font.
15572
15573 * fontset.h (get_font_repertory_func): New prototype.
15574 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
15575 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
15576
15577 * fontset.c (Qprepend, Qappend): New variables.
15578 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
15579 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
15580 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
15581 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
15582 (fontset_ref_and_range, fontset_add, reorder_font_vector)
15583 (load_font_get_repertory): New functions.
15584 (fontset_set): Delete.
15585 (fontset_face): New arg FACE. Return face ID, not face.
15586 Complete re-write to handle new fontset structure. Change caller.
15587 (free_face_fontset): Use ASET istead of AREF (X) = Y.
15588 (face_for_char): Don't call lookup_face.
15589 (make_fontset_for_ascii_face): New arg FACE.
15590 (fs_load_font): New arg CHARSET_ID. Don't check
15591 Vfont_encoding_alist here.
15592 (find_font_encoding): New function.
15593 (list_fontsets): Use STRINGP, not ! NILP.
15594 (accumulate_script_ranges): New function.
15595 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
15596 re-written to handle new fontset structure.
15597 (Ffontset_font): Return a copy of element.
15598 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
15599 docstring of font-encoding-alist.
15600
15601 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
15602 (Fset_fotset_font): Fix arguments to 5.
15603
15604 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
15605
15606 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
15607 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15608 (highlight_trailing_whitespace): Adjust for the change of
15609 lookup_named_face.
15610
15611 * xfaces.c: Include charset.h.
15612 (load_face_font): Delete argument C. Change caller.
15613 (generate_ascii_font_name): Rename from generate_ascii_font.
15614 (font_name_registry): New function.
15615 (cache_face): Store ascii faces before non-ascii faces in buckets.
15616 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
15617 Lookup only ascii faces.
15618 (lookup_non_ascii_face): New function.
15619 (lookup_named_face): Delete argument C. Change caller.
15620 (lookup_derived_face): Delete argument C. Change caller.
15621 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
15622 a string, just call font_list with it.
15623 (choose_face_font): Delete arguments FACE and C. New arg
15624 FONT_SPEC. Change caller.
15625 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
15626 Change caller.
15627 (realize_non_ascii_face): New function.
15628 (realize_x_face): Call load_face_font here.
15629 (realize_tty_face): Delete argument C. Change caller.
15630 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
15631 get a face ID.
15632 (dump_realized_face): Don't print charset of FACE.
15633
15634 * xfns.c (x_set_font): Always call x_new_fontset and
15635 store_frame_parameter.
15636 (Fx_create_frame): Call x_new_fontset, not x_new_font.
15637 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
15638
15639 * xterm.h (x_get_font_repertory): Extern it.
15640
15641 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15642 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15643 it->multibyte_p is zero.
15644 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15645 (x_new_fontset): If FONTSETNAME doesn't match any existing
15646 fontsets, create a new one.
15647 (x_get_font_repertory): New function.
15648
156492008-02-01 Kenichi Handa <handa@m17n.org>
15650
15651 * coding.c (Ffind_coding_systems_region_internal): Detect an
15652 ASCII only string correctly.
15653
15654 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
15655 version is 0.
15656
156572008-02-01 Kenichi Handa <handa@m17n.org>
15658
15659 * lread.c: Include "coding.h".
15660 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
15661 (load_each_byte, unread_char): New variables.
15662 (readchar_backlog): Delete.
15663 (readchar): Return a character unless load_each_byte is nonzero.
15664 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
15665 cons. If unread_char is not -1, simply return it.
15666 (unreadchar): Handle the case that readcharfun is
15667 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
15668 (read_multibyte): Delete.
15669 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
15670 (read_emacs_mule_char): New functions.
15671 (Fload): Even if the file doesn't have the extension ".elc", if
15672 safe_to_load_p returns a positive version number, assume that the
15673 file contains bytecompiled code. If the version is less than 22,
15674 load the file while decoding multibyte sequences by emacs-mule.
15675 (readevalloop): Don't use readchar_backlog.
15676 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
15677 (Fread_from_string): Pay attention to the case that STREAM is a cons.
15678 (read_escape): Delete the arg BYTEREP.
15679 (read1): Set load_each_byte to 1 temporarily while handling
15680 #@NUMBER. Don't call read_multibyte.
15681 (read_vector): Call Fread with a cons. If readcharfun is
15682 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
15683 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
15684 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
15685 and Qload_force_doc_strings.
15686
156872008-02-01 Kenichi Handa <handa@m17n.org>
15688
15689 * xdisp.c (face_before_or_after_it_pos): Call
15690 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15691
156922008-02-01 Kenichi Handa <handa@m17n.org>
15693
15694 * character.h (TRAILING_CODE_P): New macro.
15695 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
15696 (string_char_with_unification): Fix prototype.
15697 (Vscript_alist): Extern it.
15698
15699 * character.c (Vscript_alist): New variable.
15700 (string_char_with_unification, str_as_unibyte)
15701 (string_escape_byte8): Add `const' to local variables.
15702 (syms_of_character): Declare script-alist as a Lisp variable.
15703
15704 * charset.h (Vcharset_ordered_list): Extern it.
15705 (charset_ordered_list_tick): Extern it.
15706 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
15707 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
15708 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
15709 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
15710 (Funify_charset): Adjust for the change of Funify_charset.
15711
15712 * charset.c (charset_ordered_list_tick): New variable.
15713 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
15714 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
15715 deunify intead of unify a charset.
15716 (string_xstring_p): Add `const' to local variables.
15717 (find_charsets_in_text): Add `const' to arguments and local variables.
15718 (encode_char): Adjust for the change of Funify_charset. Fix
15719 detecting of invalid code.
15720 (Fset_charset_priority): Increment charset_ordered_list_tick.
15721 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
15722 and TO_CODE.
15723
15724 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
15725 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
15726 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
15727 (decode_coding_ccl, consume_chars)
15728 (Ffind_coding_systems_region_internal)
15729 (Fcheck_coding_systems_region): Add `const' to local variables.
15730
15731 * print.c (print_object): Use octal form for printing the
15732 contents of a bool vector.
15733
157342008-02-01 Dave Love <fx@gnu.org>
15735
15736 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
15737 <version == 20>: Refuse to load.
15738
157392008-02-01 Dave Love <fx@gnu.org>
15740
15741 * fns.c: Move coding.h.
15742 (Qcodeset, Qdays, Qmonths): New.
15743 (concat): Use CHARACTERP instead of INTEGERP.
15744 (Flocale_codeset): Delete.
15745 (Flanginfo): New function.
15746 (syms_of_fns): Change accordingly.
15747
15748 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
15749
157502008-02-01 Dave Love <fx@gnu.org>
15751
15752 * casetab.c (init_casetab_once, init_casetab_once): Fix
15753 CHAR_TABLE_SET call.
15754
15755 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
15756
15757 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
15758
15759 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
15760 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
15761 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
15762
15763 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
15764
15765 * coding.c (ENCODE_DESIGNATION, decode_eol)
15766 (make_conversion_work_buffer, code_conversion_restore)
15767 (Fdefine_coding_system_internal): Convert Lisp types.
15768 (code_conversion_restore): Use EQ, not ==.
15769 (Fencode_coding_string): Fix code_convert_string call.
15770
15771 * coding.h (code_convert_region): Fix prototype.
15772
15773 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
15774
15775 * fontset.c (fontset_ref, fontset_set, fs_load_font)
15776 (Ffontset_info): Convert Lisp types.
15777
15778 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
15779
15780 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
15781
15782 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
15783
15784 * chartab.c: Include "...h", not <...h> in some cases.
15785
15786 * callproc.c (Fcall_process): Remove unused variables.
15787
157882008-02-01 Dave Love <fx@gnu.org>
15789
15790 * coding.c (Fset_coding_system_priority): Allow null arg list.
15791
157922008-02-01 Dave Love <fx@gnu.org>
15793
15794 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15795 (Fself_insert_and_exit): Use CHARACTERP.
15796
15797 * callproc.c (Fcall_process): Remove unused vars.
15798
15799 * xterm.c (XTread_socket): Add extra dead keysyms.
15800
15801 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
15802
15803 * dispextern.h: Remove prototypes for redraw_frame,
15804 redraw_garbaged_frames.
15805
15806 * cmds.c (Fself_insert_command): Use CHARACTERP.
15807
15808 * chartab.c (make_sub_char_table): Remove unused var.
15809 (Fset_char_table_default, Fmap_char_table): Doc fix.
15810
15811 * keymap.c (access_keymap): Remove generic char code.
15812 (push_key_description): Use CHARACTERP.
15813
158142008-02-01 Dave Love <fx@gnu.org>
15815
15816 * charset.c: Doc fixes.
15817 (Funify_charset): Extra checking.
15818
158192008-02-01 Dave Love <fx@gnu.org>
15820
15821 * lread.c: Remove some unused variables.
15822 (safe_to_load_p): If safe, return the magic number version byte.
15823 (Fload): Maybe use load-with-code-conversion.
15824
158252008-02-01 Kenichi Handa <handa@m17n.org>
15826
15827 * category.c (Fmodify_category_entry): Don't modify the contents
15828 of category_set for characters out of the range. Avoid
15829 unnecessary modification.
15830
15831 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
15832 Vchar_unify_table. The default value of the table is now nil.
15833
15834 * character.c (syms_of_character): Setup Vchar_width_table for
15835 eight-bit-control and raw-byte chars.
15836
15837 * charset.h (enum define_charset_arg_index): Delete
15838 charset_arg_parents and add charset_arg_subset and
15839 charset_arg_superset.
15840 (enum charset_attr_index): Delete charset_parents and add
15841 charset_subset and charset_superset.
15842 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
15843 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
15844 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
15845 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
15846 (CHARSET_SUPERSET): New macros.
15847 (charset_work): Extern it.
15848 (ENCODE_CHAR): Use charset_work.
15849 (CHAR_CHARSET_P): Adjust for the change of encoder format.
15850 (map_charset_chars): Extern it.
15851
15852 * charset.c (load_charset_map): Set the default value of encoder
15853 and deunifier char-tables to nil.
15854 (map_charset_chars): Change argument. Change callers. Use
15855 map_char_table_for_charset instead of map_char_table.
15856 (Fmap_charset_chars): New optional args from_code and to_code.
15857 (Fdefine_charset_internal): Adjust for the change of
15858 `define-charset' (:parents -> :subset or :superset).
15859 (charset_work): New variable.
15860 (encode_char, syms_of_charset): Adjust for the change of
15861 Fdefine_charset_internal.
15862 (Ffind_charset_string): Setup the vector `charsets' correctly.
15863
15864 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
15865 the previous change.
15866 (char_table_ref_and_range): Adjust for the above change.
15867 (map_sub_char_table_for_charset): New function.
15868 (map_char_table_for_charset): New function.
15869
15870 * keymap.c (describe_vector): Handle a char-table directly here.
15871 (describe_char_table): Delete.
15872
15873 * lisp.h (map_charset_chars): Delete.
15874
158752008-02-01 Dave Love <fx@gnu.org>
15876
15877 * fns.c (count_combining): Comment out (unused).
15878 (Flocale_codeset): New.
15879 (syms_of_fns): Defsubr it.
15880
15881 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
15882 (size_t): Remove.
15883
158842008-02-01 Dave Love <fx@gnu.org>
15885
15886 * Makefile.in (chartab.o): Depend on charset.h.
15887
158882008-02-01 Kenichi Handa <handa@m17n.org>
15889
15890 * character.c (syms_of_character): Set the default value of
15891 Vprintable_chars to Qnil.
15892
158932008-02-01 Dave Love <fx@gnu.org>
15894
15895 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
15896
158972008-02-01 Kenichi Handa <handa@m17n.org>
15898
15899 * charset.c (load_charset_map): Handle the case that from < to
15900 correctly.
15901
15902 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
15903 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
15904 Pay attention to raw-8-bit chars.
15905
159062008-02-01 Kenichi Handa <handa@m17n.org>
15907
15908 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
15909 It is not bytecompiled now.
15910
15911 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
15912 (charset_jisx0208): New variables.
15913 (Fdefine_charset_internal): Setup them if appropriate.
15914 (init_charset_once): Initialize them to -1.
15915
15916 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
15917 (charset_jisx0208): Extern them.
15918
15919 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
15920 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
15921 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
15922 (setup_iso_safe_charsets): Fix arguments to Fassq.
15923 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
15924 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
15925 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
15926 (encode_coding_iso_2022): Change the 1st arg to
15927 ENCODE_ISO_CHARACTER to a variable.
15928
159292008-02-01 Kenichi Handa <handa@m17n.org>
15930
15931 * charset.h (enum define_charset_arg_index): New enums
15932 charset_arg_min_code and charset_arg_max_code.
15933 (struct charset): New member char_index_offset.
15934
15935 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
15936 Take charset->char_index_offset into account.
15937 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
15938 args[charset_arg_max_code]. Setup charset.char_index_offset.
15939 (syms_of_charset): Fix args to Fdefine_charset_internal.
15940
159412008-02-01 Dave Love <fx@gnu.org>
15942
15943 * coding.c (decode_coding_utf_8): Reject overlong sequences.
15944
159452008-02-01 Dave Love <fx@gnu.org>
15946
15947 * coding.c: Doc fixes.
15948 (Fcoding_system_aliases): Fix return value.
15949 (Qmac): Remove (duplicated) definition.
15950
159512008-02-01 Dave Love <fx@gnu.org>
15952
15953 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
15954 functions.
15955
15956 * character.c (Fstring): Doc fix.
15957
15958 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
15959
15960 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
15961 ids.
15962 (font-encoding-alist): Doc fix.
15963
159642008-02-01 Dave Love <fx@gnu.org>
15965
15966 * term.c (costs_set): Declare static, non-initialized for pcc.
15967 (encode_terminal_code): Remove unused var.
15968
15969 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15970 for K&R.
15971
15972 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
15973
15974 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
15975 (suffixes): Move out of make_subsidiaries for K&R.
15976
15977 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
15978
15979 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
15980
159812008-02-01 Dave Love <fx@gnu.org>
15982
15983 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
15984
15985 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
15986
159872008-02-01 Yong Lu <lyongu@asia-infonet.com>
15988
15989 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
15990
15991 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
15992
159932008-02-01 Kenichi Handa <handa@m17n.org>
15994
15995 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
15996 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
15997
159982008-02-01 Kenichi Handa <handa@m17n.org>
15999
16000 * coding.c (decode_coding_charset): Adjust for the change of
16001 Fdefine_coding_system_internal.
16002 (Fdefine_coding_system_internal): For a coding system of
16003 `charset' type, store a list of charset IDs in
16004 `charset_attr_charset_valids' element of coding attributes.
16005
160062008-02-01 Kenichi Handa <handa@m17n.org>
16007
16008 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
16009 (emacs_mule_char): New arg src. Delete arg `composition'. Change
16010 caller. Handle 2-byte and 3-byte charsets correctly.
16011 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
16012 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
16013 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
16014 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16015 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16016 sequence.
16017 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16018 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16019 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16020 and alt&rule composition.
16021 (decode_coding_iso_2022): Handle composition correctly.
16022 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16023
16024 * charset.c (Fdefine_charset_internal): Fix bug for the case of
16025 re-defining a charset. If the charset has :emacs-mule-id, setup
16026 emacs_mule_bytes.
16027 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
16028
160292008-02-01 Kenichi Handa <handa@m17n.org>
16030
16031 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
16032 (encode_coding_big5, encode_coding_charset): If coding requires safe
16033 encoding, produce a character specified by
16034 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
16035
160362008-02-01 Dave Love <fx@gnu.org>
16037
16038 * xterm.c (XSetIMValues): Declare.
16039
16040 * process.c: Conditionally include sys/wait.h, pty.h.
16041
16042 * print.c (print_object): Fix print format for 64-bit systems.
16043
16044 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
16045
16046 * buffer.c (emacs_strerror): Declare.
16047
16048 * fontset.c (Fclear_face_cache): Declare.
16049 (accumulate_font_info): Comment-out (unused).
16050 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
16051 variables.
16052
16053 * character.h (string_escape_byte8): Declare.
16054
16055 * charset.c (load_charset_map, load_charset_map_from_file): Remove
16056 unused vars.
16057 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
16058 (Fmap_charset_chars): Doc fix.
16059
16060 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
16061 (Fset_coding_system_priority, Fset_coding_system_priority)
16062 (Fdefine_coding_system_internal): Doc fix.
16063
160642008-02-01 Dave Love <fx@gnu.org>
16065
16066 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
16067
160682008-02-01 Kenichi Handa <handa@m17n.org>
16069
16070 * character.c (string_escape_byte8): Make multibyte string with
16071 correct size.
16072
16073 * charset.c (Fmake_char): Delete unnecessary code.
16074
160752008-02-01 Kenichi Handa <handa@m17n.org>
16076
16077 * xfns.c (x_encode_text): Allocate coding.destination here, and
16078 call encode_coding_object with dst_object Qnil.
16079
16080 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
16081 multibyte form correctly.
16082
16083 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
16084 against Vfont_encoding_alist.
16085
16086 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
16087 handling of charset list.
16088 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
16089 (decode_coding_object): Move point to coding->dst_pos before
16090 calling post-read-conversion function.
16091 (encode_coding_object): Give correct arguments to
16092 pre-write-conversion. Ignore the return value of
16093 pre-write-conversion function. Pay attention to the case that
16094 pre-write-conversion changes the current buffer. If dst_object is
16095 Qt, even if coding->src_bytes is zero, allocate at least one byte
16096 to coding->destination.
16097
16098 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
16099
16100 * charset.c (Fmake_char): Make it more backward compatible.
16101 (Fmap_charset_chars): Fix docstring.
16102
161032008-02-01 Dave Love <fx@gnu.org>
16104
16105 * coding.c: Doc fixes.
16106 (Fdefine_coding_system_alias): Use names, not symbols, in
16107 coding-system-alist.
16108
161092008-02-01 Kenichi Handa <handa@m17n.org>
16110
16111 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
16112 of calling free_realized_face.
16113
161142008-02-01 Yong Lu <lyongu@asia-infonet.com>
16115
16116 * charset.c (read_hex): Don't treat SPC as a comment starter.
16117 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
16118 (Fdecode_char): Fix typo.
16119
161202008-02-01 Kenichi Handa <handa@m17n.org>
16121
16122 * charset.h (struct charset): New member `code_space_mask'.
16123
16124 * coding.c (coding_set_source): Delete the local variable beg_byte.
16125 (encode_coding_charset, Fdefine_coding_system_internal):
16126 Delete the local variable charset.
16127 (Fdefine_coding_system_internal): Setup
16128 attrs[coding_attr_charset_valids] correctly.
16129
16130 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
16131 member to check if CODE is valid or not.
16132 (Fdefine_charset_internal): Initialize `code_space_mask' member.
16133 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
16134 is within the range of charset->min_code and carset->max_code.
16135
161362008-02-01 Dave Love <fx@gnu.org>
16137
16138 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
16139
16140 * dispextern.h (generate_ascii_font): Fix return type.
16141
16142 * xfaces.c (generate_ascii_font): Fix arg declaration.
16143
16144 * coding.c (coding_inherit_eol_type)
16145 (Fset_terminal_coding_system_internal)
16146 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
16147
161482008-02-01 Kenichi Handa <handa@m17n.org>
16149
16150 * coding.c (decode_coding_charset, encode_coding_charset): Handle
16151 multiple charsets correctly.
16152
161532008-02-01 Kenichi Handa <handa@m17n.org>
16154
16155 * search.c (boyer_moore): Fix handling of multibyte character
16156 translation.
16157
16158 * xdisp.c (display_mode_element): When the variable `elt' is
16159 changed, update `this' and `lisp_string'.
16160
161612008-02-01 Kenichi Handa <handa@m17n.org>
16162
16163 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
16164
16165 * callproc.c (Fcall_process): Be sure to give the current buffer
16166 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
16167
16168 * charset.c (struct charset_map_entries): New struct.
16169 (load_charset_map): Rename from parse_charset_map. New args
16170 entries and n_entries. Change caller.
16171 (load_charset_map_from_file): Rename from load_charset_map.
16172 Change caller. New arg control_flag. Call load_charset_map at
16173 the tail.
16174 (load_charset_map_from_vector): New function.
16175 (Fdefine_charset_internal): Setup charset.compact_codes_p.
16176 (encode_char): If the charset is compact, change a character index
16177 to a code point.
16178
16179 * coding.c (coding_alloc_by_making_gap): Check the case that the
16180 source and destination are the same correctly.
16181 (decode_coding_raw_text): Set coding->consumed_char and
16182 coding->consumed to 0.
16183 (produce_chars): If coding->chars_at_source is nonzero, update
16184 coding->consumed_char and coding->consumed before calling
16185 alloc_destination.
16186 (Fdefine_coding_system_alias): Register ALIAS in
16187 Vcoding_system_alist.
16188 (syms_of_coding): Define `no-conversion' coding system at the tail.
16189
16190 * fileio.c (Finsert_file_contents): Set coding_system instead of
16191 val. If the current buffer is multibyte, always call
16192 decode_coding_gap.
16193
16194 * xfaces.c (try_font_list): Give higher priority to fontset's
16195 family than face's family.
16196
161972008-02-01 Kenichi Handa <handa@m17n.org>
16198
16199 * callproc.c (Fcall_process): Be sure to give the current buffer
16200 to decode_coding_c_string.
16201
16202 * xfaces.c (try_font_list): Give a family specified in a fontset
16203 higher priority than a family specified in a face.
16204
162052008-02-01 Kenichi Handa <handa@m17n.org>
16206
16207 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
16208 Fix arguments to insert_from_buffer.
16209
16210 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
16211
162122008-02-01 Kenichi Handa <handa@m17n.org>
16213
16214 * coding.c (produce_chars): Set the variable `multibytep' correctly.
16215 (decode_coding_gap): Set coding->dst_multibyte correctly.
16216
162172008-02-01 Kenichi Handa <handa@m17n.org>
16218
16219 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
16220 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
16221 (encode_coding_utf_16): Substitute coding->default_char for
16222 non-Unicode characters.
16223 (decode_coding): Don't call record_insert here.
16224 (setup_coding_system): Initialize `surrogate' of
16225 coding->spec.utf_16 to 0.
16226 (EMIT_ONE_BYTE): Fix for multibyte case.
16227
16228 * insdel.c (insert_from_gap): Call record_insert.
16229
162302008-02-01 Kenichi Handa <handa@m17n.org>
16231
16232 * casefiddle.c (casify_region): Fix multibyte case.
16233
16234 * character.c (c_string_width): Add return type `int'.
16235 (char_string_with_unification): Delete arg ADVANCED.
16236
16237 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
16238 (CHAR_STRING): Adjust for the change of char_string_with_unification.
16239 (CHAR_STRING_ADVANCE): Make it do-while statement.
16240
16241 * chartab.c (sub_char_table_set_range): Optimize for the case
16242 DEPTH == 3. Add workaround code for a GCC optimization bug.
16243
16244 * charset.c (parse_charset_map): Remove an unused variable.
16245
16246 * coding.c: Delete unused variables.
16247
16248 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
16249 earlier. If inserted is zero and the coding system doesn't
16250 require flushing, don't call decode_coding_gap.
16251
16252 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
16253
162542008-02-01 Kenichi Handa <handa@m17n.org>
16255
16256 The following changes are for using Unicode as an internal
16257 character model, and use UTF-8 format for buffer/string
16258 representation.
16259
16260 * .gdbinit (xchartable): Adjust for the change of char table structure.
16261 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
16262
16263 * Makefile.in (obj): Add character.o and chartab.o.
16264 (lisp, shortlisp): Remove utf-8.elc.
16265 (*.o): For many files, change dependency on charset.h to
16266 character.h, and add dependency on character.h.
16267 (character.o, chartab.o): New targets.
16268
16269 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
16270 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
16271 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
16272 of "charset.h".
16273
16274 * dired.c, filelock.c: Include "character.h".
16275
16276 * alloc.c: Include "character.h" instead of "charset.h".
16277 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
16278 (syms_of_alloc): Remove defsubr for Smake_char_table.
16279
16280 * buffer.c: Include "character.h" instead of "charset.h", don't
16281 include "coding.h".
16282 (Fset_buffer_multibyte): Adjust for UTF-8.
16283
16284 * buffer.h: EXFUN Fbuffer_live_p.
16285
16286 * callproc.c: Include "character.h" instead of "charset.h".
16287 (Fcall_process): Big change for the new code-conversion APIs.
16288
16289 * casetab.c: Include "character.h" instead of "charset.h".
16290 (set_canon, set_identity, shuffle): Adjust for the new
16291 map_char_table spec.
16292 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
16293 accessing the char table structure.
16294
16295 * chartab.c: New file that implements char table.
16296
16297 * category.c: Include "character.h".
16298 (copy_category_entry): New function.
16299 (copy_category_table): Call map_char_table and copy_category_entry.
16300 (Fmake_category_table): Initialize all top-level slots.
16301 (char_category_set): New function.
16302 (modify_lower_category_set): Delete.
16303 (Fmodify_category_entry): Call char_table_ref_and_range.
16304
16305 * category.h (CATEGORY_SET): Just call char_category_set.
16306
16307 * ccl.c: Include "character.h".
16308 (Qccl, Qcclp): New variables.
16309 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
16310 it's less than 256.
16311 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
16312 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
16313 and DST type.
16314 (ccl_driver): Change types of argument, adjust code accordingly.
16315 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
16316 ccl_driver.
16317 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
16318
16319 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
16320 New members src_multibyte, dst_multibyte, consumed, and produced.
16321 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
16322 (CODING_SPEC_CCL_PROGRAM): New macro.
16323 (ccl_driver): Update prototype.
16324 (Qccl, Qcclp, Fccl_program_p): Extern them.
16325 (CHECK_CCL_PROGRAM): New macro.
16326
16327 * character.c, character.h, chartab.c: New files.
16328
16329 * charset.c: Mostly re-written. Move character and multibyte sequence
16330 handling codes to character.c.
16331
16332 * charset.h: Mostly re-written. Move character and multibyte sequence
16333 handling codes to character.h.
16334
16335 * coding.c, coding.h: Mostly re-written.
16336
16337 * composite.c: Include "character.h" instead of "charset.h".
16338 (CHAR_WIDTH): Move to character.h.
16339 (HASH_KEY, HASH_VALUE): Delete.
16340
16341 * composite.h (enum composition_method): Change order of enumeration
16342 symbols.
16343
16344 * data.c: Include "character.h" instead of "charset.h".
16345 (Faref): Call CHAR_TABLE_REF for a char table.
16346 (Faset): Call CHAR_TABLE_SET for a char table.
16347
16348 * dispextern.h (free_realized_face, check_face_attribytes)
16349 (generate_ascii_font): Extern them.
16350 (free_realized_multibyte_face): Delete extern.
16351
16352 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
16353 table structure.
16354
16355 * editfns.c: Include "character.h" instead of "charset.h".
16356 (Fchar_to_string): Always call CHAR_STRING.
16357
16358 * emacs.c (main): Call init_charset_once, init_charset,
16359 syms_of_chartab, and syms_of_character.
16360
16361 * fileio.c: Include "character.h" instead of "charset.h".
16362 (Finsert_file_contents): Big change for the new code-conversion API.
16363 (choose_write_coding_system, Fwrite_region): Likewise.
16364 (build_annotations_2): Delete.
16365 (e_write): Big change for the new code-conversion API.
16366
16367 * fns.c: Include "character.h" instead of "charset.h".
16368 (copy_sub_char_table): Move to chartab.c.
16369 (Fcopy_sequence): Call copy_char_table for a char table.
16370 (concat): Delete codes calling count_multibyte.
16371 (string_char_to_byte, string_byte_to_char): Adjust for the new
16372 multibyte form.
16373 (internal_equal): Adjust for the change of char table structure.
16374 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
16375 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
16376 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
16377 (char_table_translate, optimize_sub_char_table)
16378 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
16379 chartab.c.
16380 (char_table_ref_and_index): Delete.
16381 (HASH_KEY, HASH_VALUE): Move to lisp.h.
16382 (Fmd5): Call preferred_coding_system instead of accessing
16383 Vcoding_category_list. Adjust for the new code-conversion API.
16384 (syms_of_fns): Move defsubr for char table related functions to
16385 chartab.c.
16386
16387 * fontset.c: Mostly re-written.
16388
16389 * fontset.h (struct font_info): Change type of the member encoding_type.
16390 (enum FONT_SPEC_INDEX): New enum.
16391 (fontset_font_pattern, fs_load_font): Update prototype.
16392 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
16393
16394 * indent.c: Include "character.h" instead of "charset.h".
16395 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
16396
16397 * insdel.c: Include "character.h" instead of "charset.h".
16398 (copy_text): Don't refer to Vnonascii_translation_table.
16399 (insert_from_gap): New function.
16400
16401 * keyboard.c: Include "character.h" instead of "charset.h".
16402 (command_loop_1): Never call direct_output_forward_char before
16403 a non-ASCII character.
16404 (read_char): If Vkeyboard_translate_table is a char table, always
16405 translate a character.
16406
16407 * keymap.c: Include "character.h".
16408 (store_in_keymap): Handle the case that IDX is a cons.
16409 (Fdefine_key): Handle the case that KEY is a cons and the car part
16410 is also a cons (range).
16411 (push_key_description): Adjust for the new character code.
16412 (describe_vector): Call describe_char_table for a char table.
16413 (describe_char_table): New function.
16414
16415 * keymap.h (describe_char_table): Extern it.
16416
16417 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
16418 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
16419 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
16420 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
16421 Delete.
16422 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
16423 structure.
16424 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
16425 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
16426 (CHARTAB_SIZE_BITS_3): New macros.
16427 (chartab_size): Extern it.
16428 (struct Lisp_Char_Table): Re-design.
16429 (struct Lisp_Sub_Char_Table): New structure.
16430 (HASH_KEY, HASH_VALUE): Move from fns.c.
16431 (CHARACTERBITS): Define as 22.
16432 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
16433 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
16434 (GC_SUB_CHAR_TABLE_P): New macro.
16435 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
16436 (code_convert_string_norecord): Deleted extern.
16437 (init_character_once, syms_of_character, init_charset)
16438 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
16439
16440 * lread.c: Include "character.h".
16441 (read_multibyte): New arg NBYTES.
16442 (read_escape): Change the meaning of returned *BYTEREP.
16443 (to_multibyte): Delete.
16444 (read1): Adjust the handling of char table and string.
16445
16446 * print.c: Include "character.h" instead of "charset.h".
16447 (print_string): Convert 8-bit raw bytes to octal form by
16448 string_escape_byte8.
16449 (print_object): Adjust for the new multibyte form. Print 8-bit
16450 raw bytes always in octal form. Handle sub char table correctly.
16451
16452 * process.c: Include "character.h" instead of "charset.h".
16453 (read_process_output, send_process): Adjust for the new
16454 code-conversion API.
16455
16456 * puresize.h (BASE_PURESIZE): Increase.
16457
16458 * regex.c: Include "character.h" instead of "charset.h".
16459 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
16460 (regex_compile): Accept a range whose starting and ending
16461 character have different leading bytes.
16462 (analyse_first): Adjust for the above change.
16463
16464 * search.c: Include "character.h" instead of "charset.h".
16465 (search_buffer, boyer_moore): Adjust for the new multibyte form.
16466 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
16467
16468 * syntax.c: Include "character.h" instead of "charset.h".
16469 (syntax_parent_lookup): Delete.
16470 (Fmodify_syntax_entry): Accept a cons as CHAR.
16471 (skip_chars): Adjust for the new multibyte form.
16472 (init_syntax_once): Call char_table_set_range instead of directly
16473 accessing the structure of a char table.
16474
16475 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
16476 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
16477 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
16478 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
16479
16480 * term.c: Include "buffer.h" and "character.h".
16481 (encode_terminal_code, write_glyphs): Adjust for the new
16482 code-conversion API.
16483 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
16484
16485 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
16486
16487 * xdisp.c: Include "character.h".
16488 (get_next_display_element): Adjust for the new multibyte form.
16489 (disp_char_vector): Adjust for the new char table structure.
16490 (decode_mode_spec_coding): Adjust for the new structure of
16491 coding system.
16492 (decode_mode_spec): Adjust for the new code-conversion API.
16493
16494 * xfaces.c: Include "character.h" instead of "charset.h".
16495 (load_face_font): Adjust for the change of choose_face_font and
16496 FS_LOAD_FONT.
16497 (generate_ascii_font): New function.
16498 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
16499 (set_font_frame_param): Adjust for the change of choose_face_font.
16500 (free_realized_face): Make it public.
16501 (free_realized_faces_for_fontset): Rename from
16502 free_realized_multibyte_face. Free also faces realized for ASCII.
16503 (choose_face_font): Change arguments. Adjust for the change of
16504 fontset_font_pattern and FS_LOAD_FONT.
16505
16506 * xfns.c: Include "character.h".
16507 (x_encode_text): Adjust for the new code-conversion API.
16508
16509 * xselect.c: Don't include "charset.h".
16510 (selection_data_to_lisp_data): Adjust for the new code conversion API.
16511
16512 * xterm.c: Include "character.h".
16513 (x_encode_char): New argument CHARSET. Change caller.
16514 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
16515 Call ENCODE_CHAR instead of SPLIT_CHAR.
16516 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
16517 CHAR_WIDTH instead of CHARSET_WIDTH.
16518 (XTread_socket): Adjust for the new code-conversion API.
16519 (x_new_font): Adjust for the change of FS_LOAD_FONT.
16520 (x_load_font): Adjust for the change of struct font.
16521
165222008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16523
16524 * xfaces.c (face_at_buffer_position): Remove unused vars.
16525
165262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16527
16528 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
16529 Fix overflow checking.
16530
165312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16532
16533 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
16534 Cancel previous change.
16535
165362008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16537
16538 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
16539 ccl->eight_bit_control. Fix check for buffer overflow.
16540 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
16541 (ccl_driver): Initialize extra_bytes to 0.
16542
165432008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16544
16545 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
16546 return it ORed with ctrl_modifier.
16547
165482008-01-29 Miles Bader <miles@gnu.org>
16549
16550 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
16551
165522008-01-28 Jason Rumney <jasonr@gnu.org>
16553
16554 * w32.c (stat): Don't double check for networked drive.
16555
165562008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
16557
16558 * window.c (run_window_configuration_change_hook): New function.
16559 Code extracted from set_window_buffer. Set the selected frame.
16560 (set_window_buffer): Use it.
16561 * window.h (run_window_configuration_change_hook): Declare.
16562 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
16563
16564 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
16565
165662008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
16567
16568 * Makefile.in: Remove references to unused macros.
16569
165702008-01-26 Eli Zaretskii <eliz@gnu.org>
16571
16572 * w32.c (g_b_init_get_sid_sub_authority)
16573 (g_b_init_get_sid_sub_authority_count): New static variables.
16574 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
16575 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
16576 (init_user_info): Use them to retrieve uid and gid.
16577 Use 500/513, the Windows defaults, as Administrator's uid/gid.
16578 (fstat): Use pw_uid and pw_gid from the_passwd structure for
16579 st_uid and st_gid of the file.
16580
165812008-01-26 Jason Rumney <jasonr@gnu.org>
16582
16583 * w32.c (logon_network_drive): New function.
16584 (stat): Use it.
16585
165862008-01-26 Chong Yidong <cyd@stupidchicken.com>
16587
16588 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
16589 invisible text covered with an ellipsis.
16590
165912008-01-25 Richard Stallman <rms@gnu.org>
16592
16593 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
16594 jump back to beginning. Move some other initializations after that.
16595 (Qwindow_text_change_functions, Vwindow_text_change_functions):
16596 New variables.
16597 (syms_of_xdisp): Init them.
16598
16599 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
16600
16601 * buffer.c (reset_buffer_local_variables):
16602 Implement `permanent-local-hook'.
16603 (Qpermanent_local_hook): New variable.
16604 (syms_of_buffer): Init and staticpro it.
16605
166062008-01-25 Michael Albinus <michael.albinus@gmx.de>
16607
16608 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
16609
166102008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
16611
16612 * fns.c (Fclrhash): Return TABLE.
16613
166142008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16615
16616 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
16617 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
16618 is set even without positional changes.
16619 (x_scroll_bar_clear): Set bar->redraw_needed_p.
16620
16621 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
16622
166232008-01-23 Jason Rumney <jasonr@gnu.org>
16624
16625 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
16626
16627 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
16628 the unicode range available in MULE by locale-coding-system.
16629 Improve dbcs lead byte detection. Set event timestamp and modifiers
16630 earlier.
16631
166322008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16633
16634 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
16635 [MAC_OSX] (init_mac_osx_environment): Initialize it.
16636 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
16637 when used on child processes.
16638
166392008-01-21 Michael Albinus <michael.albinus@gmx.de>
16640
16641 * dbusbind.c (Fdbus_method_return_internal): Rename from
16642 Fdbus_method_return.
16643 (Fdbus_unregister_object): Move to dbus.el.
16644 (Fdbus_call_method, Fdbus_method_return_internal)
16645 (Fdbus_send_signal): Improve debug messages.
16646
166472008-01-20 Martin Rudalics <rudalics@gmx.at>
16648
16649 * undo.c (undo_inhibit_record_point): New variable.
16650 (syms_of_undo): Initialize it.
16651 (record_point): Don't record point when undo_inhibit_record_point
16652 is set.
16653
166542008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
16655
16656 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
16657
16658 * xdisp.c (Qauto_hscroll_mode): New var.
16659 (syms_of_xdisp): Initialize it.
16660 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
16661 window's buffer.
16662 (hscroll_windows): Don't check automatic_hscrolling_p here.
16663
16664 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
16665 vscroll if we're setting window-buffer to the value it already has.
16666
166672008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
16668
16669 * m/intel386.h: Remove references to XENIX.
16670
166712008-01-17 Andreas Schwab <schwab@suse.de>
16672
16673 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
16674 instead of HAVE_X86_64_LIB64_DIR.
16675 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
16676
166772008-01-17 Glenn Morris <rgm@gnu.org>
16678
16679 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
16680 to HAVE_X86_64_LIB64_DIR.
16681
166822008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
16683
16684 * s/irix3-3.h:
16685 * s/irix4-0.h:
16686 * s/386-ix.h:
16687 * s/domain.h:
16688 * s/hpux9-x11r4.h:
16689 * s/hpux9shxr4.h: Remove files for systems no longer supported.
16690
16691 * sysdep.c: Remove code containing references to symbols defined
16692 by unsupported systems.
16693
166942008-01-16 Glenn Morris <rgm@gnu.org>
16695
16696 * coding.c (select-safe-coding-system-function): Doc fix.
16697
166982008-01-15 Glenn Morris <rgm@gnu.org>
16699
16700 * config.in: Revert 2008-01-13 change: this is a generated file.
16701
167022008-01-13 Tom Tromey <tromey@redhat.com>
16703
16704 * lisp.h: Fix typo.
16705
167062008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16707
16708 * m/sequent-ptx.h:
16709 * m/sequent.h:
16710 * s/ptx.h:
16711 * s/ptx4-2.h:
16712 * s/ptx4.h: Remove files for systems no longer supported.
16713
16714 * callproc.c (Fcall_process): Fix previous change.
16715
167162008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16717
16718 * unexsunos4.c: Remove file, system not supported anymore.
16719
16720 * m/mips.h:
16721 * m/intel386.h:
16722 * callproc.c:
16723 * config.in:
16724 * ecrt0.c:
16725 * emacs.c:
16726 * fileio.c:
16727 * frame.c:
16728 * getpagesize.h:
16729 * keyboard.c:
16730 * lread.c:
16731 * process.c:
16732 * puresize.h:
16733 * sysdep.c:
16734 * systty.h:
16735 * syswait.h:
16736 * unexec.c:
16737 * xdisp.c:
16738 * alloc.c: Remove code containing references to symbols defined by
16739 unsupported systems.
16740
167412008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
16742
16743 * coding.c (detect_coding_mask): Fix previous change.
16744
167452008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
16746
16747 * coding.c (detect_coding_iso2022): New arg
16748 latin_extra_code_state. Allow Latin extra codes only
16749 when *latin_extra_code_state is nonzero.
16750 (detect_coding_mask): If there is a NULL byte, detect the encoding
16751 as UTF-16 or binary. If Latin extra codes exist, detect the
16752 encoding as ISO-2022 only when there's no other proper encoding is
16753 found.
16754
167552008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16756
16757 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
16758 #ifdef MAC_OS.
16759
167602008-01-08 Richard Stallman <rms@gnu.org>
16761
16762 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
16763
167642008-01-06 Nick Roberts <nickrob@snap.net.nz>
16765
16766 * keyboard.c (parse_menu_item): Don't enclose key bindings on
16767 menu bar in parentheses.
16768
167692008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
16770
16771 * m/7300.h:
16772 * m/acorn.h:
16773 * m/alliant-2800.h:
16774 * m/alliant.h:
16775 * m/alliant1.h:
16776 * m/alliant4.h:
16777 * m/altos.h:
16778 * m/amdahl.h:
16779 * m/apollo.h:
16780 * m/att3b.h:
16781 * m/aviion-intel.h:
16782 * m/aviion.h:
16783 * m/celerity.h:
16784 * m/clipper.h:
16785 * m/cnvrgnt.h:
16786 * m/convex.h:
16787 * m/cydra5.h:
16788 * m/delta88k.h:
16789 * m/dpx2.h:
16790 * m/dual.h:
16791 * m/elxsi.h:
16792 * m/f301.h:
16793 * m/gould-np1.h:
16794 * m/gould.h:
16795 * m/i860.h:
16796 * m/ibmps2-aix.h:
16797 * m/ibmrt-aix.h:
16798 * m/ibmrt.h:
16799 * m/irist.h:
16800 * m/is386.h:
16801 * m/isi-ov.h:
16802 * m/mega68.h:
16803 * m/mg1.h:
16804 * m/news-r6.h:
16805 * m/news-risc.h:
16806 * m/news.h:
16807 * m/nh3000.h:
16808 * m/nh4000.h:
16809 * m/ns16000.h:
16810 * m/ns32000.h:
16811 * m/nu.h:
16812 * m/orion.h:
16813 * m/orion105.h:
16814 * m/paragon.h:
16815 * m/pfa50.h:
16816 * m/plexus.h:
16817 * m/pyramid.h:
16818 * m/pyrmips.h:
16819 * m/sh3el.h:
16820 * m/sps7.h:
16821 * m/sr2k.h:
16822 * m/stride.h:
16823 * m/sun1.h:
16824 * m/sun2.h:
16825 * m/sun3-68881.h:
16826 * m/sun3-fpa.h:
16827 * m/sun3-soft.h:
16828 * m/sun3.h:
16829 * m/sun386.h:
16830 * m/symmetry.h:
16831 * m/tad68k.h:
16832 * m/tahoe.h:
16833 * m/targon31.h:
16834 * m/tek4300.h:
16835 * m/tekxd88.h:
16836 * m/tower32.h:
16837 * m/tower32v3.h:
16838 * m/ustation.h:
16839 * m/wicat.h:
16840 * m/xps100.h:
16841 * s/cxux.h:
16842 * s/cxux7.h:
16843 * s/dgux.h:
16844 * s/dgux4.h:
16845 * s/dgux5-4-3.h:
16846 * s/dgux5-4r2.h:
16847 * s/esix.h:
16848 * s/esix5r4.h:
16849 * s/hiuxmpp.h:
16850 * s/hiuxwe2.h:
16851 * s/iris3-5.h:
16852 * s/iris3-6.h:
16853 * s/isc2-2.h:
16854 * s/isc3-0.h:
16855 * s/isc4-0.h:
16856 * s/isc4-1.h:
16857 * s/newsos5.h:
16858 * s/newsos6.h:
16859 * s/osf1.h:
16860 * s/osf5-0.h:
16861 * s/riscix1-1.h:
16862 * s/riscix12.h:
16863 * s/sco4.h:
16864 * s/sco5.h:
16865 * s/sunos4-0.h:
16866 * s/sunos4-1.h:
16867 * s/sunos413.h:
16868 * s/sunos4shr.h:
16869 * s/umax.h:
16870 * s/unipl5-2.h:
16871 * s/xenix.h:
16872 * cxux-crt0.s:
16873 * unexapollo.c:
16874 * unexconvex.c:
16875 * unexenix.c:
16876 * unexsni.c: Remove files for systems no longer supported.
16877
16878 * m/intel386.h: Remove references to unsupported systems.
16879
16880 * w32.c (get_emacs_configuration): Remove reference to i860.
16881
16882 * sysdep.c: Remove dead code.
16883
168842008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
16885
16886 * s/rtu.h:
16887 * m/masscomp.h: Remove files. Platform is obsolete.
16888
168892008-01-04 Michael Albinus <michael.albinus@gmx.de>
16890
16891 * dbusbind.c (Fdbus_method_return): New function.
16892 (xd_read_message): Add the serial number to the event.
16893 (Fdbus_register_method): Activate the function.
16894
168952008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
16896
16897 * keyboard.c (read_key_sequence): Fix typo.
16898
168992008-01-03 Michael Albinus <michael.albinus@gmx.de>
16900
16901 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
16902 (xd_signature, xd_append_arg): Handle element type detection for
16903 empty arrays.
16904 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
16905 SDATA () calls; this must be solved more general.
16906 (Fdbus_register_signal): Use SBYTES instead of strlen.
16907
169082008-01-03 Magnus Henoch <magnus@zemdatav>
16909
16910 * dbusbind.c (xd_append_arg): Use unsigned char instead of
16911 unsigned int for byte values (necessary for big-endian platform).
16912 (Fdbus_call_method): Handle the case of no returned arguments.
16913
169142007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
16915
16916 * dbusbind.c (xd_read_message): Use non-static input_event struct.
16917
169182007-12-31 Magnus Henoch <mange@freemail.hu>
16919
16920 * dbusbind.c (xd_signature): Signature of variant is just "v".
16921
169222007-12-30 Michael Albinus <michael.albinus@gmx.de>
16923
16924 * dbusbind.c: Fix several errors and compiler warnings.
16925 Reported by Tom Tromey <tromey@redhat.com>.
16926 (XD_ERROR, XD_DEBUG_MESSAGE)
16927 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
16928 (xd_append_arg): Part for basic D-Bus types rewritten.
16929 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
16930 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
16931 appropriate.
16932 (xd_read_message): Return Qnil. Don't signal an error; it is not
16933 useful during event reading.
16934 (Fdbus_register_signal): Signal an error if the check for
16935 FUNCTIONP fails.
16936 (Fdbus_register_method): New function. The implementation is not
16937 complete, the call of the function signals an error therefore.
16938 (Fdbus_unregister_object): New function, renamed from
16939 Fdbus_unregister_signal. The initial check signals an error, if
16940 the object is not well formed.
16941
169422007-12-30 Richard Stallman <rms@gnu.org>
16943
16944 * textprop.c (get_char_property_and_overlay):
16945 Signal error if POSITION is out of range in a buffer.
16946
169472007-12-29 Martin Rudalics <rudalics@gmx.at>
16948
16949 * w32fns.c (Fx_create_frame): Make copy of frame parameters
16950 because the original parameters are in pure storage now.
16951
169522007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16953
16954 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
16955
169562007-12-22 Eli Zaretskii <eliz@gnu.org>
16957
16958 * callint.c (syms_of_callint) <command-history>: Add reference to
16959 history-length in the doc string.
16960
169612007-12-17 Jason Rumney <jasonr@gnu.org>
16962
16963 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16964 before passing as wParam.
16965
169662007-12-22 Michael Albinus <michael.albinus@gmx.de>
16967
16968 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
16969 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
16970 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
16971 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
16972 as number.
16973 (Fdbus_call_method): Fix docstring.
16974
169752007-12-21 Michael Albinus <michael.albinus@gmx.de>
16976
16977 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
16978 New macros.
16979 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
16980 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
16981 Simplify.
16982 (xd_signature): New function.
16983 (xd_append_arg): Compute also signatures. Major rewrite.
16984 (xd_retrieve_arg): Make debug messages friendly.
16985 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
16986 Check for signatures of arguments.
16987
169882007-12-19 Michael Albinus <michael.albinus@gmx.de>
16989
16990 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
16991 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
16992 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
16993 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
16994 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
16995 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
16996 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
16997 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
16998 (xd_retrieve_value): Remove. Functionality included in ...
16999 (xd_append_arg): New function.
17000 (Fdbus_call_method, Fdbus_send_signal): Apply it.
17001
170022007-12-16 Michael Albinus <michael.albinus@gmx.de>
17003
17004 * dbusbind.c (top): Include <stdio.h>.
17005 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
17006 dbus_message_new_method_call and dbus_message_new_signal.
17007 (Fdbus_register_signal): Rename unique_name to uname.
17008 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
17009 non-existing unique name. Fix typos in matching rule. Return an
17010 object which is useful in Fdbus_unregister_signal.
17011 (Fdbus_unregister_signal): Reimplementation, in order to remove
17012 only the corresponding entry.
17013 (Vdbus_registered_functions_table): Change the order of entries.
17014 Apply these changes in xd_read_message and Fdbus_register_signal.
17015
170162007-12-16 Andreas Schwab <schwab@suse.de>
17017
17018 * fileio.c (Finsert_file_contents): Fix overflow check to not
17019 depend on undefined integer overflow.
17020
170212007-12-14 Jason Rumney <jasonr@gnu.org>
17022
17023 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17024 for characters above 127.
17025
170262007-12-13 Jason Rumney <jasonr@gnu.org>
17027
17028 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
17029 before dereferencing array.
17030 (lookup_vk_code): Remove zero comparison.
17031
170322007-12-14 Michael Albinus <michael.albinus@gmx.de>
17033
17034 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
17035 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
17036 Use `unsigned int' instead of `uint'.
17037 (xd_read_message, Fdbus_register_signal): Split expressions into
17038 multiple lines before operators "&&" and "||", according to the
17039 GNU Coding Standards.
17040
170412007-12-14 Eli Zaretskii <eliz@gnu.org>
17042
17043 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
17044
170452007-12-12 Juri Linkov <juri@jurta.org>
17046
17047 * buffer.c (Frename_buffer): In interactive spec replace
17048 `read-buffer' with `read-string' that uses `buffer-name-history'
17049 as history, and the current buffer's name as default.
17050
170512007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
17052
17053 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
17054 manipulating the backtrace manually.
17055 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
17056 (struct backtrace, backtrace_list): Remove.
17057 (command_loop_1): Remove dead var `no_direct'.
17058
17059 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
17060 preserve non-built-in buffer-local variables.
17061 (Fkill_all_local_variables): Don't re-create&re-set permanent
17062 buffer-local variables.
17063
170642007-12-09 Juri Linkov <juri@jurta.org>
17065
17066 * buffer.c (Frename_buffer): Change interactive spec from "s" to
17067 Lisp code that uses `read-buffer' with current buffer as default.
17068
170692007-12-08 Michael Albinus <michael.albinus@gmx.de>
17070
17071 * dbusbind.c (xd_read_message): Generate an event for every
17072 registered handler. There might be several handlers registered
17073 for the same signal.
17074 (Fdbus_register_signal): Don't overwrite a registration for the
17075 same signal. Add a new registration if handlers are different.
17076 (Vdbus_registered_functions_table): Rework doc string.
17077
170782007-12-07 Michael Albinus <michael.albinus@gmx.de>
17079
17080 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
17081 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
17082 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
17083 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
17084 Unify argument lists.
17085 (xd_read_message, Fdbus_register_signal): Reorder and extend event
17086 arguments and hash table keys. Use unique name for service.
17087 (Fdbus_unregister_signal): Remove checks.
17088 (Vdbus_registered_functions_table): Fix doc string.
17089
170902007-12-05 Magnus Henoch <mange@freemail.hu>
17091
17092 * process.c (make_process): Initialize pty_flag to 0.
17093
170942007-12-05 Jason Rumney <jasonr@gnu.org>
17095
17096 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
17097 specified XBMs.
17098
170992007-12-05 Richard Stallman <rms@gnu.org>
17100
17101 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
17102
171032007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17104
17105 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
17106 New variable.
17107 (mac_try_close_socket) [MAC_OSX]: New function.
17108 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
17109 Update cfsockets_for_select. Replace invalid CFRunLoop source.
17110
17111 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
17112 Use mac_try_close_socket.
17113
171142007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17115
17116 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
17117 reloc_base.
17118 (copy_dysymtab): Compute relocation base here.
17119 (rebase_reloc_address) [__ppc64__]: New function.
17120 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
17121 changed.
17122
171232007-12-05 Jason Rumney <jasonr@gnu.org>
17124
17125 * w32proc.c (sys_spawnve): Quote args with wildcards.
17126
171272007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17128
17129 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
17130 __objc_* sections.
17131 (unrelocate) [_LP64]: Set relocation base to address of data segment.
17132
171332007-12-05 Michael Albinus <michael.albinus@gmx.de>
17134
17135 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
17136 Move check for Vdbus_registered_functions_table to
17137 xd_read_queued_messages.
17138 (xd_read_queued_messages): Protect xd_read_message calls by
17139 internal_condition_case_1.
17140
171412007-12-04 Michael Albinus <michael.albinus@gmx.de>
17142
17143 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
17144 Qdbus_system_bus and Qdbus_session_bus, respectively.
17145 (Vdbus_intern_symbols): Remove.
17146 (Vdbus_registered_functions_table): New hash table.
17147 (XD_SYMBOL_INTERN_SYMBOL): Remove.
17148 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
17149 Rewrite in order to manage registered functions by hash table
17150 Vdbus_registered_functions_table.
17151
171522007-12-03 Jan Djärv <jan.h.d@swipnet.se>
17153
17154 * xterm.c: Update URL to Window Manager Specification in comment.
17155
171562007-12-02 Michael Albinus <michael.albinus@gmx.de>
17157
17158 * config.in (HAVE_DBUS): Add.
17159
17160 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
17161 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
17162 (obj): Add $(DBUS_OBJ).
17163 (LIBES): Add $(DBUS_LIBS).
17164 (dbusbind.o): New target.
17165
17166 * dbusbind.c: New file.
17167
17168 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
17169
17170 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
17171 (Qdbus_event): New Lisp symbol.
17172 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
17173 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 17174 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
17175
17176 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
17177
171782007-12-01 Richard Stallman <rms@gnu.org>
17179
17180 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
17181
171822007-11-30 Jason Rumney <jasonr@gnu.org>
17183
17184 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
17185 (w32con_reset_terminal_modes): Clear screen buffer.
17186 (w32_face_attributes): Don't use color indexes that are out of range.
17187 Only reverse the default colors.
17188
17189 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
17190 WINDOWSNT.
17191
17192 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
17193
171942007-11-29 Jason Rumney <jasonr@gnu.org>
17195
17196 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
17197 (w32_face_attributes): Use Vtty_defined_color_alist to determine
17198 if the terminal colors are initialized.
17199 (unspecified_fg, unspecified_bg): Remove unused declarations.
17200
172012007-11-29 Andreas Schwab <schwab@suse.de>
17202
17203 * keyboard.c (apply_modifiers): Fix typo.
17204
172052007-11-29 Richard Stallman <rms@gnu.org>
17206
17207 * keymap.c (Fcurrent_local_map): Doc fix.
17208
172092007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
17210
17211 * s/gnu-kfreebsd.h: New file.
17212
172132007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
17214
17215 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
17216 Don't cast redundantly.
17217
17218 * keyboard.c (KEY_TO_CHAR): New macro.
17219 (parse_modifiers, apply_modifiers): Accept integer arguments.
17220 (read_key_sequence): Use them to unify the "shift->unshift" mapping
17221 for chars and symbol keys.
17222 After doing such remapping, apply function-key-map again.
17223
172242007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
17225
17226 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
17227 compiled anymore.
17228
172292007-11-26 Andreas Schwab <schwab@suse.de>
17230
17231 * process.c (list_processes_1): Fix indentation level of the
17232 command column.
17233
172342007-11-23 Andreas Schwab <schwab@suse.de>
17235
17236 * editfns.c (Fformat): Handle %c specially since it requires the
17237 argument to be of type int.
17238
172392007-11-23 Markus Triska <markus.triska@gmx.at>
17240
17241 * emacs.c (main): Call init_editfns before init_process, since
17242 init_process sets Vprocess_connection_type depending on OS release.
17243
172442007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
17245
17246 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
17247 (find_symbol_value): Use do_symval_forwarding.
17248
17249 * data.c (set_internal): Set the value in the `cons-cell' (for
17250 Buffer_Local_values) not only for frame-local variables.
17251
172522007-11-22 Andreas Schwab <schwab@suse.de>
17253
17254 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
17255 values to sprintf.
17256 * keymap.c (Fsingle_key_description): Likewise.
17257 * print.c (print_object): Likewise.
17258
172592007-11-22 Jan Djärv <jan.h.d@swipnet.se>
17260
17261 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
17262 file for image is nil.
17263
172642007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
17265
17266 * term.c: Include stdarg.h.
17267 (fatal): Implement using varargs.
17268 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
17269
172702007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17271
17272 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
17273 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
17274 Update call to buffer_slot_type_mismatch.
17275 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
17276 (buffer_slot_type_mismatch): Update.
17277 * buffer.c (buffer_local_types): Remove.
17278 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
17279 (defvar_per_buffer): Set the type in the buffer_objfwd.
17280
172812007-11-21 Jason Rumney <jasonr@gnu.org>
17282
17283 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
17284 CreateFileMapping returns NULL on failure.
17285
172862007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17287
17288 * search.c (Fset_match_data): Remove the `evaporate' feature.
17289 (unwind_set_match_data): Don't use the `evaporate' feature.
17290
172912007-11-21 Jason Rumney <jasonr@gnu.org>
17292
17293 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
17294
17295 * w32console.c (w32con_write_glyphs): Remove unused variables.
17296
172972007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
17298
17299 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
17300
17301 * s/darwin.h (MULTI_KBOARD): Remove.
17302
17303 * macfns.c (x_create_tip_frame, Fx_create_frame)
17304 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
17305
173062007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
17307
17308 * buffer.c (Fbuffer_local_value): Remove redundant test.
17309 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
17310 than in `current-buffer' to match the comment.
17311 Do the swap using swap_in_global_binding.
17312
17313 * data.c (store_symval_forwarding, set_internal):
17314 * eval.c (specbind): Remove dead code.
17315
17316 * coding.c (detect_coding, Fupdate_coding_systems_internal):
17317 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
17318 Since we do not want to see internal Lisp_*fwd objects here.
17319
173202007-11-18 Jan Djärv <jan.h.d@swipnet.se>
17321
17322 * sysdep.c (init_system_name): Use getaddrinfo if available.
17323
17324 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
17325 (x_scroll_bar_note_movement): start, end, with, height in struct
17326 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
17327
173282007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
17329
17330 * puresize.h (BASE_PURESIZE): Increase to 1190000.
17331
173322007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
17333
17334 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
17335 This undoes Richard's change of 14-Oct-2002.
17336
17337 * alloc.c (allocate_other_vector):
17338 * lisp.h (allocate_other_vector): Remove.
17339
17340 * window.c (struct save_window_data): Move non-lisp data to the end
17341 and make it `int' rather than Lisp_Object.
17342 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
17343 Done wrap/unwrap integer values.
17344 (Fset_window_configuration, compare_window_configurations):
17345 Update use of fields to their new types.
17346
17347 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
17348 Turn integer fields into `int'. Merge x_window_low and x_window_high.
17349 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
17350 (SET_SCROLL_BAR_X_WINDOW): Remove.
17351 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
17352 Access the new x_window field directly.
17353 * xterm.c (x_scroll_bar_create): Use a pseudovector.
17354 Don't wrap/unwrap integers into Lisp_Objects.
17355 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
17356 (x_scroll_bar_report_motion):
17357 Don't wrap/unwrap integers into Lisp_Objects.
17358 (x_term_init): Use SDATA.
17359 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
17360 (x_scroll_bar_set_handle, x_scroll_bar_remove)
17361 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
17362 (x_scroll_bar_report_motion, x_scroll_bar_clear):
17363 * xfns.c (x_set_background_color):
17364 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
17365 Access the new x_window field directly.
17366
17367 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
17368 (allocate_pseudovector): Make non-static.
17369
17370 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
17371 (allocate_pseudovector): Declare.
17372 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
17373
173742007-11-15 Andreas Schwab <schwab@suse.de>
17375
17376 * editfns.c (Fformat): Correctly format EMACS_INT values.
17377 Also take precision into account when formatting an integer.
17378
17379 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
17380
173812007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
17382
17383 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
17384 (syms_of_keyboard): Defsubr it.
17385
17386 * data.c (swap_in_global_binding): Fix longstanding bug where
17387 store_symval_forwarding was not called with the right second argument,
17388 thus causing objfwd-ing from being dropped.
17389
173902007-11-14 Juanma Barranquero <lekktu@gmail.com>
17391
17392 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
17393 (Fx_display_pixel_height, Fx_display_planes)
17394 (Fx_display_color_cells, Fx_server_max_request_size)
17395 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17396 (Fx_display_visual_class, Fx_display_save_under):
17397 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
17398 (Fx_display_pixel_height, Fx_display_planes)
17399 (Fx_display_color_cells, Fx_server_max_request_size)
17400 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
17401 (Fx_display_mm_height, Fx_display_mm_width)
17402 (Fx_display_backing_store, Fx_display_visual_class)
17403 (Fw32_select_font, Fx_display_save_under):
17404 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
17405 (Fx_display_pixel_height, Fx_display_planes)
17406 (Fx_display_color_cells, Fx_server_max_request_size)
17407 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17408 (Fx_display_save_under): Fix typos in docstrings.
17409
174102007-11-14 Juanma Barranquero <lekktu@gmail.com>
17411
17412 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
17413 corresponding to deleted entries; they are an implementation detail.
17414 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
17415 Remove variables.
17416 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
17417 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
17418 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
17419 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
17420 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
17421 (Fw32_define_rgb_color, Fw32_load_color_file)
17422 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
17423 Fix typos in docstrings.
17424 (Fx_server_version): Reflow docstring.
17425 (Fw32_shell_execute): Doc fixes.
17426
174272007-11-13 Juanma Barranquero <lekktu@gmail.com>
17428
17429 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
17430 if w32_parse_hot_key returned nil.
17431
174322007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
17433
17434 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
17435
174362007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 17437
aac0c6e3
MR
17438 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
17439
17440 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
17441
17442 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
17443 Remove W32_SCROLL_BAR_CLICK_EVENT.
17444
17445 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
17446 Add MULTIMEDIA_KEY_EVENT.
17447
17448 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
17449 (lispy_multimedia_keys) [WINDOWSNT]: New array.
17450 (make_lispy_event) [WINDOWSNT]: Use it to translate
17451 MULTIMEDIA_KEY_EVENT.
17452
17453 * w32term.h (WM_APPCOMMAND): Define if not already.
17454 (GET_APPCOMMAND_LPARAM): Likewise.
17455
17456 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
17457 WM_APPCOMMAND.
17458
17459 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
17460 (syms_of_w32fns): Export and initialize it.
17461 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
17462
174632007-11-09 Chong Yidong <cyd@stupidchicken.com>
17464
17465 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
17466 twice.
17467
17468 * xdisp.c (handle_face_prop): Fix last change.
17469
174702007-11-09 Richard Stallman <rms@gnu.org>
17471
17472 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
17473 not just for after-strings and before-strings.
17474 Call face_for_overlay_string and pass the overlay to it.
17475 (handle_display_prop): Determine whether property came from an overlay.
17476 Pass OVERLAY arg to handle_single_display_spec.
17477 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
17478 (load_overlay_strings): Fill in it->string_overlays.
17479 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
17480
17481 * xfaces.c (face_for_overlay_string): Function renamed from
17482 face_at_buffer_position_no_overlays, and add arg OVERLAY.
17483
17484 * dispextern.h (struct it): New elt string_overlays.
17485 New elt from_overlay, also in stack.
17486 Rearrange a few elements.
17487 (face_for_overlay_string): Decl renamed from
17488 face_at_buffer_position_no_overlays, and add argument.
17489
174902007-11-09 Richard Stallman <rms@gnu.org>
17491
17492 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
17493 to get the base face for an overlay string.
17494
17495 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
17496
17497 * xfaces.c (face_at_buffer_position_no_overlays): New function.
17498
17499 * xdisp.c (handle_stop): Move some code out of loop.
17500
175012007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17502
17503 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
17504 Fix conversion from Lisp object to ATSUFontID.
17505
175062007-11-09 Jason Rumney <jasonr@gnu.org>
17507
17508 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
17509
175102007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17511
17512 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
17513 Don't assume regions are aligned to page boundary.
17514 (print_load_command_name): Add LC_UUID if defined.
17515
175162007-11-09 Richard Stallman <rms@gnu.org>
17517
17518 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
17519
175202007-11-07 Jason Rumney <jasonr@gnu.org>
17521
17522 * s/windows95.h: Remove.
17523
175242007-11-06 Jan Djärv <jan.h.d@swipnet.se>
17525
17526 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
17527 abort with a message on unhandled store_type values.
17528
175292007-11-01 Jan Djärv <jan.h.d@swipnet.se>
17530
17531 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
17532 Remove HAVE_X11R5 and HAVE_X11R4.
17533
175342007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17535
17536 * Makefile.in: Remove references to sunfns.c and sunfns.o.
17537
175382007-11-01 Johan Bockgård <bojohan@gnu.org>
17539
17540 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
17541 Don't set s->stippled_p here, since it has already been set by
17542 x_set_glyph_string_gc from x_draw_glyph_string.
17543
175442007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17545
17546 * sunfns.c: Remove file.
17547
17548 * m/sun386.h:
17549 * m/sun2.h:
17550 * m/sparc.h: Remove Sun windows code.
17551
175522007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
17553
17554 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
17555 (init_keyboard): Set current_kboard's window-system to nil.
17556 (tty_read_avail_input): Typo.
17557 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
17558
175592007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
17560
17561 * s/usg5-4.h:
17562 * s/usg5-3.h:
17563 * s/ptx.h:
17564 * m/is386.h:
17565 * m/ibmps2-aix.h:
17566 * Makefile.in: Remove all mentions of X10.
17567
17568 * dispnew.c (syms_of_display): Don't mention version 10.
17569
175702007-10-28 Juanma Barranquero <lekktu@gmail.com>
17571
17572 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
17573 ($(BLD)/abbrev.$(O)): Remove.
17574
175752007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
17576
17577 Rewrite abbrev.c in Elisp.
17578 * image.c (Qcount): Don't declare as extern.
17579 (syms_of_image): Initialize and staticpro `Qcount'.
17580 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
17581 * emacs.c (main): Don't call syms_of_abbrev.
17582 * Makefile.in (obj): Remove abbrev.o.
17583 (abbrev.o): Remove.
17584 * abbrev.c: Remove.
17585
175862007-10-26 Martin Rudalics <rudalics@gmx.at>
17587
17588 * window.c (window_min_size_2): Don't count header-line.
17589
175902007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
17591
17592 * frame.h (struct frame): Move all bit fields after the first bit
17593 field to take advantage of the available space. Group all the
17594 chars together to reduce wasted space due to padding.
17595
175962007-10-26 Juanma Barranquero <lekktu@gmail.com>
17597
17598 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
17599
17600 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
17601 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
17602 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
17603 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
17604 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
17605 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
17606 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
17607 (last_marked, mark_object_loop_halt): Make static.
17608
17609 * frame.c (syms_of_frame) <delete-frame-functions>:
17610 Fix typo in docstring.
17611
176122007-10-25 Juanma Barranquero <lekktu@gmail.com>
17613
17614 * w32.c (init_environment): Fix tiny memory leak.
17615 (w32_get_resource): Remove unused variable `ok'.
17616
176172007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
17618
17619 Make `window-system' into a keyboard-local variable (rather than
17620 frame-local as done originally by multi-tty).
17621
17622 * keyboard.h (struct kboard): Add Vwindow_system.
17623 * keyboard.c (init_kboard): Set a default for Vwindow_system.
17624 (mark_kboards): Mark Vwindow_system.
17625
17626 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
17627 (init_display): Don't set the obsolete `window-system' frame-param.
17628
17629 * xterm.c (x_term_init):
17630 * w32term.c (w32_create_terminal):
17631 * term.c (init_tty): Set Vwindow_system.
17632 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
17633 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
17634
17635 * xfns.c (Fx_create_frame, x_create_tip_frame):
17636 * w32fns.c (Fx_create_frame, x_create_tip_frame):
17637 * macfns.c (Fx_create_frame):
17638 Don't set the obsolete `window-system' frame-param.
17639
17640 * frame.h (Qwindow_system): Remove.
17641 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
17642 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
17643
176442007-10-24 Richard Stallman <rms@gnu.org>
17645
17646 * frame.c (x_figure_window_size): For fullscreen case,
17647 set USPosition | PPosition without clobbering rest of window_prompting.
17648
17649 * keyboard.c (Fcurrent_idle_time): Doc fix.
17650
17651 * print.c (Fwith_output_to_temp_buffer): Doc fix.
17652
176532007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
17654
17655 * process.c (unwind_request_sigio): Only define if __ultrix__.
17656
17657 * callproc.c (child_setup): Remove spurious *.
17658
17659 * lisp.h (Fget_text_property): Declare.
17660 (have_menus_p): Declare it here rather than in sys-dep header files.
17661 * macterm.h (have_menus_p):
17662 * msdos.h (have_menus_p):
17663 * xterm.h (have_menus_p): Remove.
17664
17665 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
17666 (Fmake_variable_frame_local): Just check the variable's const-ness
17667 rather than checking nil or t.
17668
176692007-10-22 Jason Rumney <jasonr@gnu.org>
17670
17671 * w32fns.c: Include math.h.
17672 (w32_abort): Declaration moved to nt/config.nt.
17673
17674 * s/ms-w32.h (HAVE_STDLIB_H): Define.
17675 (abort): Redefinition moved to nt/config.nt.
17676
17677 * m/windowsnt.h: Remove.
17678
176792007-10-22 Juanma Barranquero <lekktu@gmail.com>
17680
17681 * emacs.c (Fdump_emacs): Fix typo in message.
17682 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
17683 <installation-directory>: Reflow docstring.
17684
176852007-10-22 Juri Linkov <juri@jurta.org>
17686
17687 * minibuf.c: Allow minibuffer default to be a list of default values.
17688 With empty input use the first element of this list as returned default.
17689 (string_to_object)
17690 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
17691 (read_minibuf): If defalt is cons, set histstring to its car.
17692 (Fread_string): If default_value is cons, set val to its car.
17693 (Fread_buffer): If def is cons, use its car.
17694 (Fcompleting_read): If defalt is cons, set val to its car.
17695
176962007-10-21 Michael Albinus <michael.albinus@gmx.de>
17697
17698 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
17699
177002007-10-20 Juanma Barranquero <lekktu@gmail.com>
17701
17702 * doc.c (Fdocumentation): Check for advice in all cases.
17703
177042007-10-19 Chong Yidong <cyd@stupidchicken.com>
17705
17706 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
17707
177082007-10-19 Richard Stallman <rms@gnu.org>
17709
17710 * doc.c (Fdocumentation): Check for and handle an advised function.
17711
177122007-10-19 Juanma Barranquero <lekktu@gmail.com>
17713
17714 * process.c (Fset_process_filter): Doc fix.
17715
177162007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
17717
17718 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
17719 which caused key-translation-map to applied repeatedly (thus breaking
17720 double-mode).
17721
177222007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17723
17724 * xselect.c (x_own_selection, x_handle_selection_clear)
17725 (x_clear_frame_selections):
17726 * w32menu.c (list_of_panes, list_of_items):
17727 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
17728 * textprop.c (validate_plist, interval_has_all_properties)
17729 (interval_has_some_properties, interval_has_some_properties_list)
17730 (add_properties, text_property_list):
17731 * process.c (Fget_buffer_process, list_processes_1, status_notify):
17732 * minibuf.c (Fassoc_string):
17733 * macselect.c (x_own_selection, x_clear_frame_selections)
17734 (Fx_disown_selection_internal):
17735 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
17736 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
17737
177382007-10-17 Chong Yidong <cyd@stupidchicken.com>
17739
17740 * process.c: Link to libs for calling res_init() if available.
17741 (Fmake_network_process): Call res_init() before getaddrinfo or
17742 gethostbyname, if possible.
17743
177442007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17745
17746 * lread.c (read1): Set pvectype for char_tables.
17747
17748 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
17749 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
17750 Add type checks.
17751 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
17752
17753 * alloc.c (free_misc): Use XMISCTYPE.
17754 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
17755
177562007-10-17 Glenn Morris <rgm@gnu.org>
17757
17758 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
17759 (syms_of_minibuf): Add Qcompletion_ignore_case.
17760 * dired.c (Qcompletion_ignore_case): Change to external.
17761 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
17762 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
17763 (Fread_file_name): Use it rather than intern'ing.
17764
17765 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
17766 (Fread_coding_system): Ignore case of user input.
17767
177682007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17769
17770 * xdisp.c (handle_display_prop): Ignore display specs after
17771 replacing one when string text is being replaced.
17772 (handle_single_display_spec): Pretend as if characters with display
17773 property haven't been consumed only when buffer text is being replaced.
17774
177752007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
17776
17777 * xfns.c (Fx_create_frame, Fx_display_list):
17778 * window.c (window_fixed_size_p, enlarge_window)
17779 (shrink_window_lowest_first):
17780 * macterm.c (init_font_name_table):
17781 * macfns.c (Fx_create_frame, Fx_display_list):
17782 * lread.c (close_load_descs):
17783 * keyboard.c (read_char_x_menu_prompt):
17784 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
17785 * coding.c (code_convert_region_unwind): Test the type of an object
17786 rather than just !NILP before extracting data from it.
17787
17788 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
17789
17790 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
17791 (XMISCANY): New macro.
17792 (XMISCTYPE): Use it.
17793 (struct Lisp_Misc_Any): New type.
17794 (union Lisp_Misc): Use it.
17795 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
17796 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
17797 (find_symbol_value, set_internal, default_value, Fset_default)
17798 (Fmake_variable_buffer_local, Fmake_local_variable)
17799 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
17800 (Flocal_variable_if_set_p, Fvariable_binding_locus):
17801 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
17802 * alloc.c (allocate_buffer): Set the size and tag.
17803 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
17804 Use XMISCANY.
17805 (die): Follow the GNU convention for error messages.
17806 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
17807 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
17808 tag any more.
17809 (set_buffer_internal_1):
17810 * frame.c (store_frame_param):
17811 * eval.c (specbind):
17812 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
17813
17814 * doc.c (Fsnarf_documentation): Simplify.
17815
178162007-10-14 Juanma Barranquero <lekktu@gmail.com>
17817
17818 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
17819 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
17820
178212007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
17822
17823 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
17824
178252007-10-14 Juanma Barranquero <lekktu@gmail.com>
17826
17827 * eval.c (do_autoload): Don't save autoloads.
17828
17829 * data.c (Ffset): Save autoload of the function being set.
17830
178312007-10-07 John Paul Wallington <jpw@pobox.com>
17832
17833 * xfns.c (x_create_tip_frame): Set the `display-type' frame
17834 parameter before setting up faces.
17835
178362007-10-13 Eli Zaretskii <eliz@gnu.org>
17837
17838 * ccl.c (Fregister_code_conversion_map):
17839 * keyboard.c (append_tool_bar_item): Reformat last change.
17840
17841 * lisp.h (eabs): Rename from `abs'. All callers changed.
17842
178432007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
17844
17845 * buffer.c (add_overlay_mod_hooklist):
17846 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
17847 * fontset.c (make_fontset):
17848 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
17849 (append_tool_bar_item):
17850 * macmenu.c (grow_menu_items):
17851 * w32menu.c (grow_menu_items):
17852 * xmenu.c (grow_menu_items): Use larger_vector.
17853
178542007-10-13 Eli Zaretskii <eliz@gnu.org>
17855
17856 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
17857 selected frame'' on MSDOS).
17858
178592007-10-12 Martin Rudalics <rudalics@gmx.at>
17860
17861 * frame.c (Qexplicit_name): New variable.
17862 (x_report_frame_params): Report it in parameter alist.
17863 (syms_of_frame): Intern and staticpro it.
17864
178652007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
17866
17867 * macfns.c (x_create_tip_frame): Set terminal for frame.
17868
178692007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
17870
17871 * frame.c (Qenvironment): Remove.
17872 (syms_of_frame) <Qenvironment>: Don't initialize.
17873 (Fdelete_frame): Don't treat the `environment' param specially.
17874 * frame.h (Qenvironment): Don't declare.
17875 * callproc.c (set_initial_environment): Don't set unused frame param.
17876
17877 * frame.c (Fframe_with_environment): Remove.
17878 (syms_of_frame) <Sframe_with_environment>: Don't declare.
17879
17880 * lisp.h (Fframe_with_environment): Don't declare.
17881
178822007-10-10 Juanma Barranquero <lekktu@gmail.com>
17883
17884 * indent.c (indent_tabs_mode, last_known_column)
17885 (last_known_column_modified): Make static.
17886 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
17887
178882007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
17889
17890 * puresize.h (BASE_PURESIZE): Increase to 1170000.
17891
178922007-10-09 Jason Rumney <jasonr@gnu.org>
17893
17894 * w32term.c (x_set_window_size): Disable code that attempts to tell
17895 Lisp code about a size change before it actually happens.
17896
178972007-10-09 Richard Stallman <rms@gnu.org>
17898
17899 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
17900 return HANDLED_RETURN.
17901
179022007-10-08 Martin Rudalics <rudalics@gmx.at>
17903
17904 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
17905 when there's an unread command event.
17906
17907 * frame.c (focus_follows_mouse): Move here from frame.el to allow
17908 window autoselection act appropriately when leaving selected frame.
17909 (syms_of_frame): Initialize focus_follows_mouse.
17910 * frame.h (focus_follows_mouse): Extern it.
17911 * macterm.c (XTread_socket): When focus_follows_mouse is nil
17912 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
17913 * msdos.c (dos_rawgetc): Likewise.
17914 * w32term.c (w32_read_socket): Likewise.
17915 * xterm.c (handle_one_xevent): Likewise.
17916 * xdisp.c (syms_of_xdisp): In doc-string of
17917 mouse-autoselect-window mention focus-follows-mouse.
17918
179192007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17920
17921 * macterm.c (mac_load_query_font): Fix missing return value.
17922 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
17923 Add BLOCK_INPUT.
17924
179252007-10-08 Richard Stallman <rms@gnu.org>
17926
17927 * xdisp.c (get_window_cursor_type): Implement documented behavior
17928 for cursor-in-non-selected-windows = t.
17929
179302007-10-08 Jason Rumney <jasonr@gnu.org>
17931
17932 * w32.c (w32_get_resource): Always close registry keys.
17933
179342007-10-08 Jason Rumney <jasonr@gnu.org>
17935
17936 * makefile.w32-in (LIBS): Add COMCTL32.
17937
17938 * w32fns.c (globals_of_w32fns): Init common controls.
17939
179402007-10-08 Richard Stallman <rms@gnu.org>
17941
17942 * image.c (our_memory_buffer): Rename from omfib_buffer.
17943
179442007-10-08 Richard Stallman <rms@gnu.org>
17945
17946 * buffer.c (Foverlays_at): Doc fix.
17947
179482007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
17949
17950 * fns.c (Fplist_put): Preserve uneven tail data.
17951
179522007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
17953
17954 * termhooks.h (enum event_kind): Remove trailing comma.
17955
17956 * frame.h (enum): Remove trailing comma.
17957
179582007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
17959
17960 * w32proc.c (delete_child): Don't terminate threads of zombies.
17961
179622007-10-08 Martin Rudalics <rudalics@gmx.at>
17963
17964 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
17965
17966 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
17967 last-repeatable-command.
17968 (init_kboard): Initialize Vlast_repeatable_command.
17969 (command_loop_1): Set it to real_this_command unless that was
17970 bound to an input event.
17971 (mark_kboards): Mark it.
17972
179732007-10-08 Richard Stallman <rms@gnu.org>
17974
17975 * eval.c (condition-case): Doc fix.
17976
179772007-10-08 Masatake YAMATO <jet@gyve.org>
17978
17979 * xfaces.c (tty_supports_face_attributes_p): Fix code
17980 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
17981 was copied and not edited.
17982
179832007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
17984
17985 Add new `input-decode-map' keymap and use it for terminal
17986 escape sequences.
17987 * keyboard.h (struct kboard): Add Vinput_decode_map.
17988 Remove Vlocal_key_translation_map.
17989 * keyboard.c (read_key_sequence): Add support for input-decode-map.
17990 (init_kboard): Init input-decode-map.
17991 Replace local-key-translation-map back with key-translation-map.
17992 (syms_of_keyboard): Declare input-decode-map.
17993 Remove local-key-translation-map. Update docstrings.
17994 (mark_kboards): Mark Vinput_decode_map.
17995 Don't mark Vlocal_key_translation_map.
17996 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
17997 Replace local-key-translation-map back with key-translation-map.
17998 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
17999 Bind in input-decode-map rather than function-key-map.
18000
18001 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
18002 This was made redundant by the previous introduction of XSETPVECTYPE.
18003
180042007-10-09 Richard Stallman <rms@gnu.org>
18005
18006 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
18007
180082007-09-29 Richard Stallman <rms@gnu.org>
18009
18010 * eval.c (internal_condition_case_2, internal_condition_case_1)
18011 (internal_condition_case): Reenable abort if x_catching_errors ()
18012 to see if that really happens and why.
18013
180142007-10-06 Andreas Schwab <schwab@suse.de>
18015
18016 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18017
180182007-10-04 Juanma Barranquero <lekktu@gmail.com>
18019
18020 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18021
180222007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18023
18024 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
18025
180262007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
18027
18028 * window.h (struct window):
18029 * window.c (struct save_window_data, struct saved_window):
18030 * termhooks.h (struct terminal):
18031 * process.h (struct Lisp_Process):
18032 * frame.h (struct frame):
18033 * buffer.h (struct buffer):
18034 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
18035 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
18036 The size field of (pseudo)vectors is now unsigned.
18037 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
18038
18039 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
18040 Turn `count' into an integer.
18041
18042 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
18043 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
18044 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
18045 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
18046 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
18047
18048 * alloc.c (allocate_pseudovector): New fun.
18049 (ALLOCATE_PSEUDOVECTOR): New macro.
18050 (allocate_window, allocate_terminal, allocate_frame)
18051 (allocate_process): Use it.
18052 (mark_vectorlike): New function.
18053 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
18054 (mark_terminals): Use it.
18055 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
18056 (Fmake_byte_code): Use XSETPVECTYPE.
18057
18058 * frame.c (Fframe_parameters): Minor simplification.
18059
18060 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
18061
18062 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
18063
18064 * buffer.c (Fget_buffer_create, init_buffer_once):
18065 * lread.c (defsubr):
18066 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
18067
18068 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
18069 defined differently in the m/*.h files.
18070 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
18071 (XSETPVECTYPE): New macro.
18072 (XSETPSEUDOVECTOR): Use it.
18073
18074 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
18075 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
18076
18077 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
18078 * lread.c (defvar_per_buffer):
18079 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
18080
18081 * window.c (candidate_window_p): Only consider as visible frames that
18082 are on the same terminal.
18083
18084 * m/ibms390x.h (MARKBIT): Remove unused macro.
18085
180862007-10-01 Juanma Barranquero <lekktu@gmail.com>
18087
18088 * lread.c (Fload): Fix typo in docstring.
18089
180902007-10-01 Michaël Cadilhac <michael@cadilhac.name>
18091
18092 * floatfns.c (Fexpt): Manually check for overflows, so that a power
18093 of a non-zero value can't yield zero.
18094
180952007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
18096
18097 * term.c (term_clear_mouse_face, term_mouse_highlight)
18098 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
18099
18100 * print.c (safe_debug_print): Use XHASH.
18101
18102 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
18103 Lisp elements such as tags.
18104 (XHASH): New macro.
18105 (EQ): Use it.
18106 (SREF, SSET, STRING_COPYIN): Use SDATA.
18107 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
18108
18109 * alloc.c (mark_terminal): Remove left-over declaration.
18110 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
18111 (allocate_vectorlike): Remove type argument. Adjust callers.
18112 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
18113 Only handle the one remaining MEM_TYPE_VECTORLIKE.
18114
18115 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
18116 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
18117 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
18118 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
18119 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
18120 Use them.
18121
18122 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
18123 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
18124 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
18125
181262007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
18127
18128 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
18129 loaded by default.
18130
181312007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
18132
18133 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
18134 on this tty.
18135 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
18136
18137 * term.c (mouse_face_window): Rename from Qmouse_face_window.
18138 Update all users.
18139 (handle_one_term_event): Use Gpm_DrawPointer.
18140 (Fgpm_mouse_start): Rename from Fterm_open_connection.
18141 Signal errors instead of returning nil. Always return nil.
18142 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
18143 Make it a noop if gpm-mouse was not activated.
18144 (syms_of_term): Update names.
18145
181462007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
18147
18148 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
18149 (init_sys_modes): Check that gpm_tty is the current tty.
18150
18151 * alloc.c (allocate_terminal): Set the vector size to only count the
18152 lisp fields. Initialize those to nil.
18153 (mark_object): Don't treat terminals specially.
18154 (mark_terminal): Remove.
18155 (mark_terminals): Use mark_object instead.
18156
18157 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
18158 the GC to the beginning.
18159
18160 * indent.h:
18161 * indent.c: Use EMACS_INT for ints coming from Elisp data.
18162
18163 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
18164
181652007-09-25 Jason Rumney <jasonr@gnu.org>
18166
18167 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
18168
18169 * w32console.c (create_w32cons_output): Remove.
18170
18171 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
18172
18173 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
18174 (reset_sys_modes): Use reset_terminal_modes_hook.
18175
181762007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
18177
18178 * eval.c (do_autoload): Don't output any message.
18179
181802007-09-24 Juri Linkov <juri@jurta.org>
18181
18182 * emacs.c (standard_args): Change priority of "--no-splash"
18183 from 40 to 3. Add "--no-desktop" with the same priority.
18184
181852007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
18186
18187 * alloc.c (gc_sweep): Check cons cell mark bits word by word
18188 and optimize the case where they are all 1.
18189
181902007-09-23 Johannes Weiner <hannes@saeurebad.de>
18191
18192 * lisp.h (abs): Define if not defined.
18193 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
18194 Don't define `abs', since it's defined in lisp.h.
18195
181962007-09-22 Eli Zaretskii <eliz@gnu.org>
18197
18198 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
18199 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
18200 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
18201 (init_tty): Use DEV_TTY instead of "/dev/tty".
18202 [WINDOWSNT]: No need to protect from NAME arg being null.
18203
182042007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
18205
18206 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
18207 up the tty state.
18208
182092007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18210
18211 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
18212 (gpm_tty): Change its type.
18213 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
18214 (gpm_tty): Change its type and initialize it.
18215 (Fterm_open_connection): Check the frame is indeed a tty.
18216 Use the new gpm_tty.
18217 (Fterm_close_connection): Use the new gpm_tty.
18218 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
18219 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
18220
182212007-09-21 Juanma Barranquero <lekktu@gmail.com>
18222
18223 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
18224 underline_color, to draw strike-through.
18225
182262007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18227
18228 * lisp.h (allocate_terminal): Declare.
18229
18230 * window.c (candidate_window_p): Consider frames that are being placed
18231 by the user as somewhere between visible and iconified.
18232 (window_loop): Prefer windows on the current frame.
18233 (Fselect_window): Move the use of select-frame to the beginning so we
18234 can just delegate all the work (it'll call us back anyway).
18235
18236 * frame.c (Qdisplay_environment_variable):
18237 * frame.h (Qdisplay_environment_variable): Delete.
18238
18239 * .gdbinit (xbacktrace): Print the arg's address rather than the value
18240 of the first arg, since that value may be a union.
18241
18242 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
18243 parameter rather than Qdisplay_environment_variable. If all else
18244 fails, look for DISPLAY in initial-environment.
18245
182462007-09-21 Glenn Morris <rgm@gnu.org>
18247
18248 * Makefile.in (emacstool): Remove target.
18249 (lisp, shortlisp): Remove termdev.elc.
18250
182512007-09-21 Markus Triska <markus.triska@gmx.at>
18252
18253 * xterm.c (x_delete_display): Compile session management conditionally.
18254
182552007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
18256
18257 * callproc.c (getenv_internal_1): New function.
18258 (getenv_internal): Use it.
18259 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
18260
18261 * terminal.c (get_terminal): Don't accept ints to represent terminals.
18262 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
18263 (Fset_terminal_parameter): Work with dead terminals as well.
18264 (Fmodify_terminal_parameters): Remove.
18265
18266 * terminal.c (get_terminal): Handle terminals.
18267 Make sure the terminal returned is live.
18268 (create_terminal): Use allocate_terminal.
18269 (mark_terminals): Move to alloc.c.
18270 (delete_terminal): Use terminal->name as liveness status.
18271 NULL out fields after freeing their contents.
18272 Don't deallocate the object.
18273 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
18274 rather than an int.
18275 (Fterminal_live_p): Accept non-integer arguments.
18276 (Fterminal_list): Return terminal objects rather than an ints.
18277
18278 * alloc.c (enum mem_type): New member for `terminal' objects.
18279 (allocate_terminal): New function.
18280 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
18281 Handle terminals.
18282 (mark_terminal): New fun.
18283 (mark_terminals): Move from terminal.c.
18284
18285 * term.c (get_tty_terminal): Don't treat output_initial specially.
18286 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
18287 (delete_tty): Use terminal->name as liveness status.
18288
18289 * termhooks.h (struct terminal): Make it into a pseudovector.
18290 Remove `deleted' replaced by checking `name's nullness.
18291
18292 * print.c (print_object): Handle terminals.
18293
18294 * lisp.h (enum pvec_type): New `terminal' pseudovector.
18295 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
18296
18297 * frame.c (make_terminal_frame):
18298 * keyboard.c (tty_read_avail_input):
18299 * w32term.c (x_delete_terminal):
18300 * xfns.c (Fx_create_frame, x_create_tip_frame):
18301 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
18302
183032007-09-20 Glenn Morris <rgm@gnu.org>
18304
18305 * process.c (Fmake_network_process): Doc fix.
18306
183072007-09-19 Jason Rumney <jasonr@gnu.org>
18308
18309 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
18310
183112007-09-19 Michaël Cadilhac <michael@cadilhac.name>
18312
18313 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
18314 Fix a C warning regarding variable constness.
18315
18316 * xterm.c (handle_one_xevent): Fix a C warning.
18317
183182007-09-18 Jason Rumney <jasonr@gnu.org>
18319
18320 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
18321
183222007-09-17 Jan Djärv <jan.h.d@swipnet.se>
18323
18324 * gtkutil.c (gdpy_def): New variable.
18325 (xg_initialize): Initialize gdpy_def.
18326 (xg_display_close): If no other display exists, set gdpy_def to a
18327 new connection.
18328
183292007-09-16 Jan Djärv <jan.h.d@swipnet.se>
18330
18331 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
18332 when we have no file name for the icon.
18333 (xg_tool_bar_expose_callback): Remove.
18334 (xg_create_tool_bar): Don't connect expose signal to
18335 xg_tool_bar_expose_callback.
18336 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
18337
183382007-09-16 Andreas Schwab <schwab@suse.de>
18339
18340 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
18341 values instead of zapping them.
18342
183432007-09-14 Glenn Morris <rgm@gnu.org>
18344
18345 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
18346 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
18347 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
18348 scope and rename to omfib_buffer for clarity.
18349 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
18350
183512007-09-14 Kenichi Handa <handa@m17n.org>
18352
18353 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
18354
183552007-09-13 Jason Rumney <jasonr@gnu.org>
18356
18357 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
18358
18359 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
18360
18361 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
18362 (mac_term_init): Call here instead, passing rif.
18363
183642007-09-13 Glenn Morris <rgm@gnu.org>
18365
18366 * s/hpux.h: No longer define `static' as nothing.
18367
183682007-09-13 Johan Bockgård <bojohan@gnu.org>
18369
18370 * callint.c (Fcall_interactively): Remove unused var `fun'.
18371
183722007-09-12 Romain Francoise <romain@orebokech.com>
18373
18374 * window.c (prefer_window_split_horizontally, display_buffer):
18375 Revert 2007-09-08 change.
18376
183772007-09-12 Glenn Morris <rgm@gnu.org>
18378
18379 * alloca.c: Remove file.
18380 * Makefile.in (alloca): Do not undef.
18381 (allocaobj, alloca.o): Remove.
18382 (otherobj): Remove allocaobj.
18383 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
18384 * regex.c (C_ALLOCA): Remove all references and code that was only
18385 used when this was defined.
18386 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
18387 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
18388 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
18389
18390 * Makefile.in (SOURCES, unlock, relock): Delete.
18391
18392 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
18393 (menu_grab_callback): All uses changed.
18394
18395 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
18396 (x_reply_selection_request): All uses changed.
18397
183982007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
18399
18400 * lread.c (load_warn_old_style_backquotes): Change message to look
18401 better when it appears in the middle of byte-compiler messages.
18402
184032007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
18404
18405 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
18406
18407 * xterm.c (x_create_terminal): Add comment.
18408
18409 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
18410
184112007-09-10 Richard Stallman <rms@gnu.org>
18412
18413 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
18414
184152007-09-10 Michaël Cadilhac <michael@cadilhac.name>
18416
18417 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
18418 (DEFUN): Document `intspec', use it instead of `prompt'.
18419
18420 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
18421
18422 * data.c (Finteractive_form): If the interactive specification starts
18423 with a `(', use it as a Lisp form.
18424
18425 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
18426 name and file modes.
18427
18428 * callint.c (Fcall_interactively): Comment fixes.
18429
184302007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
18431
18432 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
18433 and compiled functions.
18434
184352007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
18436
18437 * window.c (prefer_window_split_horizontally): New variable.
18438 (display_buffer): Consider splitting window horizontally depending
18439 on prefer_window_split_horizontally.
18440
184412007-09-08 Eli Zaretskii <eliz@gnu.org>
18442
18443 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
18444
184452007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18446
18447 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
18448
18449 * frame.c (x_set_frame_parameters): Check number is positive before
18450 using XFASTINT.
18451
18452 * window.c (freeze_window_start): Don't presume selected_window holds
18453 a window object.
18454 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
18455
184562007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
18457
18458 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
18459
184602007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18461
18462 * window.c (Vsplit_window_preferred_function): New var.
18463 (Fdisplay_buffer): Use it.
18464 (syms_of_window): Export, and initialize it.
18465
184662007-09-06 Pixel <pixel@mandriva.com> (tiny change)
18467
18468 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
18469
184702007-09-06 Glenn Morris <rgm@gnu.org>
18471
18472 * gtkutil.c (menu_grab_callback) <cnt>:
18473 * xselect.c (x_reply_selection_request) <cnt>: Move static
18474 variable to file scope.
18475
184762007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
18477
18478 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
18479 consistent values of selected_frame and selected_window.
18480
184812007-09-04 Jason Rumney <jasonr@gnu.org>
18482
18483 * w32console.c (initialize_w32_display): Zero unused hooks.
18484
184852007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18486
18487 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
18488 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
18489
184902007-09-04 Jason Rumney <jasonr@gnu.org>
18491
18492 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
18493 in w32console.c. Set up input. Remove XXX comments that have been
18494 confirmed as correct.
18495
18496 * s/ms-w32.h (MULTI_KBOARD): Define.
18497
18498 * w32console.c (one_and_only_w32cons): Remove.
18499 (initialize_w32_display): Take terminal argument.
18500
18501 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
18502 initialize_w32_display.
18503 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
18504
18505 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
18506
18507 * keyboard.c (discard_mouse_events): Discard it.
18508 (make_lispy_event): Translate it to a lisp event.
18509 (lispy_wheel_names): Add wheel-left and right events.
18510 (syms_of_keyboard): Enlarge wheel_syms.
18511
18512 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
18513 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
18514
18515 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
18516
18517 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
18518 from WM_MOUSEHWHEEL.
18519 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
18520
18521 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
18522 terminal.
18523
18524 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
18525 keyboard for the terminal.
18526
185272007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18528
18529 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
18530 (Vresume_tty_hook): Rename from Vresume_tty_functions.
18531 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
18532 and resume-tty-function to resume-tty-hook.
18533 (Fsuspend_tty, Fresume_tty): Use new names.
18534
185352007-09-02 Jan Djärv <jan.h.d@swipnet.se>
18536
18537 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
18538 if it starts with "n:".
18539
185402007-08-31 Jan Djärv <jan.h.d@swipnet.se>
18541
18542 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
18543
185442007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
18545
18546 * frame.h:
18547 * frame.c (Qterm_environment_variable): Remove.
18548 (syms_of_frame): Don't init and staticpro it.
18549
18550 * callproc.c (getenv_internal): Remove special case for $TERM.
18551
18552 * callproc.c (Vinitial_environment): New variable.
18553 (set_initial_environment): Initialize it.
18554 (syms_of_callproc): Declare it.
18555 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
18556 TERM under which a process runs is never related to the TERM in which
18557 Emacs is running.
18558
185592007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18560
18561 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
18562 * s/darwin.h: ... do it here.
18563
185642007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
18565
18566 * lisp.h (set_initial_environment): Rename from set_global_environment.
18567
18568 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
18569 removed by mistake on the multi-tty branch.
18570
18571 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
18572 (Fmodify_frame_parameters): Return a value.
18573
18574 * image.c (png_load): Comment-out var only used in commented-out code.
18575
18576 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
18577 before passing it to mark_object.
18578
18579 * xfaces.c (internal_resolve_face_name): Return a value.
18580 (internal_resolve_face_name, resolve_face_name_error): Comment out.
18581
18582 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
18583 (x_icon): Comment-out var only used in commented-out code.
18584
185852007-08-29 Romain Francoise <romain@orebokech.com>
18586
18587 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
18588 QUIT hasn't been provided.
18589
185902007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18591
18592 * callproc.c (child_setup, getenv_internal): Use the
18593 display-environment-variable and term-environment-variable frame params.
18594 (set_initial_environment): Initialise Vprocess_environment.
18595
18596 * config.in: Disable multi-keyboard support on a mac.
18597
18598 * frame.c (Qterm_environment_variable)
18599 (Qdisplay_environment_variable): New variables.
18600 (syms_of_frame): Intern and staticpro them.
18601 (Fmake_terminal_frame): Disable output method test.
18602
18603 * frame.h: Declare them here.
18604
18605 * macfns.c (x_set_mouse_color): Get rif from the frame.
18606 (x_set_tool_bar_lines): Don't use updating_frame.
18607 (mac_window): Add 2 new parameters for consistency with other systems.
18608 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
18609 frame parameters following what is done in X11 and w32. Don't use
18610 FRAME_MAC_DISPLAY_INFO.
18611 (Fx_open_connection, start_hourglass): Remove window-system check.
18612 (x_create_tip_frame): Get the keyboard from the terminal.
18613
18614 * macmenu.c: Reorder includes.
18615 (Fx_popup_menu): Use terminal specific mouse_position_hook.
18616
18617 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
18618 terminal parameter.
18619 (x_clear_frame): Add a frame parameter.
18620 (note_mouse_movement): Get rif from the frame.
18621 (mac_term_init): Initialize the terminal.
18622 (mac_initialize): Make static and move terminal initialization ...
18623 (mac_create_terminal): ... to this new function.
18624
18625 * macterm.h (struct mac_display_info): Add terminal.
18626 (mac_initialize): Delete declaration.
18627
18628 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
18629
18630 * sysdep.c: Comment out text after #endif.
18631
18632 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
18633 is defined. Better initialize ttys in windows. Use terminal
18634 specific mouse_position_hook.
18635
18636 * termhooks.h (union display_info): Add mac_display_info.
18637
18638 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
18639 Set the default minibuffer frame, window_system and the rest of the
18640 frame parameters following what is done in X11.
18641
18642 * w32term.c (w32_initialize): Make static.
18643
18644 * xselect.c (x_handle_selection_clear): Only access
18645 terminal->kboard when MULTI_KBOARD is defined.
18646
18647 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
18648 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
18649
186502007-08-29 Jason Rumney <jasonr@gnu.org>
18651
18652 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
18653 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
18654
18655 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
18656 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
18657
18658 * keyboard.c (restore_kboard_configuration): Only define when
18659 MULTI_KBOARD defined.
18660
18661 * makefile.w32-in: Update dependancies from Makefile.in.
18662 (OBJ1): Add terminal.$(O)
18663
18664 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
18665 Don't define function body.
18666 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
18667
18668 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
18669
18670 * w32.c (request_sigio, unrequest_sigio): Remove.
18671
18672 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
18673 (w32con_clear_frame, w32con_clear_end_of_line)
18674 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
18675 (w32con_delete_glyphs, w32con_set_terminal_window)
18676 (scroll_line, w32_sys_ring_bell): Add frame arg.
18677 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
18678 Add terminal arg.
18679 (PICK_FRAME): Remove.
18680 (w32con_write_glyphs): Use frame specific terminal coding.
18681 (one_and_only_w32cons): New global variable.
18682 (initialize_w32_display): Use it for storing hooks.
18683 (create_w32cons_output): New function.
18684
18685 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
18686 arg a frame.
18687
18688 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
18689 Set window_system.
18690 (x_set_tool_bar_lines): Don't use updating_frame.
18691 (Fx_create_frame): Set terminal and ref count.
18692 (Fx_open_connection): Remove window-system check.
18693
18694 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
18695
18696 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
18697 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
18698 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
18699 Add frame arg.
18700 (x_delete_terminal, w32_create_terminal): New functions.
18701 (w32_term_init): Create a terminal.
18702 (w32_initialize): Move terminal specific initialization to
18703 w32_create_terminal.
18704
18705 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
18706 (w32_clear_rect, w32_clear_area): Use background from frame.
18707 (w32_display_info): Add terminal.
18708 (w32_sys_ring_bell, x_delete_display): Declare here.
18709
18710 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
18711
18712 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
18713
187142007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
18715
18716 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
18717 Fix get_named_tty calls for the controlling tty.
18718
187192007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
18720
18721 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
18722
187232007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
18724
18725 * term.c (tty_insert_glyphs): Add missing first parameter.
18726
187272007-08-29 Károly Lőrentey <karoly@lorentey.hu>
18728
18729 * buffer.c (Fbuffer_list, Fbury_buffer):
18730 Take frame->buried_buffer_list into account.
18731
18732 * cm.c (current_tty): New variable, for cmputc().
18733 (cmputc): Use it.
18734 (cmcheckmagic): Add tty parameter, look up terminal streams there.
18735 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
18736 (cmgoto): Add tty parameter. Pass it on to calccost().
18737 Use emacs_tputs() instead of tputs().
18738
18739 * cm.h (emacs_tputs): New macro to set current_tty, and then call
18740 tputs().
18741 (current_tty): New variable, for cmputc().
18742 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
18743
18744 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
18745 (internal_condition_case, internal_condition_case_1)
18746 (internal_condition_case_2): Don't abort when x_catching_errors.
18747
18748 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
18749 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
18750 prevent crashes caused by bogus longjmps in read_char.
18751
18752 * keymap.h (Fset_keymap_parent): Add EXFUN.
18753
18754 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
18755 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18756 Remove redundant definition.
18757
18758 * macfns.c (x_set_mouse_color, x_make_gc):
18759 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18760
18761 * w32term.c (x_free_frame_resources):
18762 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18763 (w32_initialize): Use the accessor macros for terminal characteristics.
18764
18765 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
18766 Use the accessor macros for terminal characteristics.
18767 * msdos.c (internal_terminal_init): Use the accessor macros for
18768 terminal characteristics.
18769 (ScreenVisualBell, internal_terminal_init):
18770 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18771
18772 * termopts.h (no_redraw_on_reenter): Declare.
18773
18774 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
18775 (mark_terminals, mark_ttys): Declare.
18776 (Fgarbage_collect): Call them.
18777 (mark_object): Mark buried_buffer_list.
18778
18779 * prefix-args.c: Include stdlib.h for exit.
18780
18781 * syssignal.h: Add comment.
18782
18783 * indent.c: Include stdio.h.
18784
18785 * window.h (Vinitial_window_system): Declare.
18786 (Vwindow_system): Delete declaration.
18787
18788 * fontset.c (Finternal_char_font): Use FRAME_RIF.
18789
18790 * image.c (lookup_image): Don't initialize `c' until the xasserts
18791 have been run.
18792
18793 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
18794 FRAME_FOREGROUND_PIXEL.
18795
18796 * print.c (print_preprocess): Don't lose print_depth levels while
18797 iterating.
18798
18799 * widget.c (update_from_various_frame_slots):
18800 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18801
18802 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
18803 frames.
18804 (window_internal_height): Remove bogus make_number call.
18805 (init_window_once): Call make_terminal_frame with two zero parameters.
18806
18807 * fileio.c (Fread_file_name): Update comment.
18808
18809 * callint.c (Fcall_interactively):
18810 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
18811 Make sure it is correctly unwound.
18812
18813 * xsmfns.c (x_session_close): New function.
18814
18815 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
18816 Delete declarations.
18817
18818 * xterm.h: Remove declaration for x_fully_uncatch_errors.
18819 (x_output): Remove background_pixel and foreground_pixel fields.
18820 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
18821 (x_delete_device, x_session_close): Declare.
18822
18823 * lread.c: Include setjmp.h. Update declaration of `read_char'.
18824 (read_filtered_event): Call `read_char' with a local
18825 `wrong_kboard_jmpbuf'.
18826
18827 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
18828 Don't call single_kboard_state. Use FRAME_RIF.
18829
18830 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
18831 systems.
18832
18833 * lisp.h (set_process_environment): Rename to `set_global_environment'.
18834 (Fframe_with_environment, Fset_input_meta_mode)
18835 (Fset_quit_char): EXFUN.
18836 (x_create_device, tty_output, terminal, tty_display_info): Declare.
18837 (init_sys_modes, reset_sys_modes): Update prototypes.
18838 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
18839
18840 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
18841 Vlocal_key_translation_map, and Vkeyboard_translate_table.
18842 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
18843 Delete declarations.
18844 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
18845 (temporarily_switch_to_single_kboard, tty_read_avail_input):
18846 New declarations.
18847
18848 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
18849 already does that during init_display(). Call syms_of_keymap
18850 before syms_of_keyboard. Call `syms_of_terminal'.
18851 Call set_initial_environment, not set_process_environment.
18852 (shut_down_emacs): Call reset_all_sys_modes() instead of
18853 reset_sys_modes().
18854
18855 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
18856 (internal_resolve_face_name, resolve_face_name_error): New functions.
18857 (resolve_face_name): Protect against loops and errors thrown by Fget.
18858 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
18859 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
18860
18861 * scroll.c: Replace CURTTY() with local variables throughout the
18862 file (where applicable).
18863 (calculate_scrolling, calculate_direct_scrolling)
18864 (scrolling_1, scroll_cost): Use the accessor macros for terminal
18865 characteristics.
18866
18867 * keymap.c (Vfunction_key_map): Remove.
18868 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
18869 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
18870 (Vkey_translation_map): Remove.
18871 (syms_of_keymap): Remove DEFVAR for key-translation-map.
18872 (Fdescribe_buffer_bindings)
18873 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
18874 Update for terminal-local key-translation-map.
18875
18876 * Makefile.in (callproc.o): Update dependencies.
18877 (lisp, shortlisp): Add termdev.elc.
18878 (obj): Add terminal.o.
18879 (terminal.o): Add dependencies.
18880 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
18881 (data.o, fns.o): Add termhooks.h dependency.
18882 (SOME_MACHINE_LISP): Add dnd.elc.
18883 (minibuf.o): Fix typo.
18884 Update dependencies.
18885
18886 * data.c (do_symval_forwarding, store_symval_forwarding)
18887 (find_symbol_value): Use the selected frame's keyboard, not
18888 current_kboard.
18889
18890 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
18891 Vwindow_system.
18892
18893 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
18894 Fmenu_bar_open.
18895 (syms_of_xmenu): Update defsubr.
18896 (mouse_position_for_popup, Fx_popup_menu)
18897 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
18898 (set_frame_menubar, free_frame_menubar)
b97439ce 18899 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
18900 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
18901 an X frame.
18902
18903 * xselect.c (x_own_selection): Abort if not an X frame.
18904 (some_frame_on_display): Check if it is an X frame.
18905 (x_handle_selection_clear): Deal with MULTI_KBOARD.
18906
18907 * coding.c: Include frame.h and termhooks.h.
18908 (terminal_coding, keyboard_coding): Delete.
18909 (Fset_terminal_coding_system_internal)
18910 (Fset_keyboard_coding_system_internal)
18911 (Fkeyboard_coding_system)
18912 (Fterminal_coding_system): Add a terminal parameter.
18913 Get terminal_coding from the terminal.
18914 (init_coding_once): Don't call setup_coding_system here.
18915
18916 * dispextern.h (set_scroll_region, turn_off_insert)
18917 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
18918 (tty_clear_end_of_line, tty_setup_colors)
18919 (delete_tty, updating_frame)
18920 (produce_special_glyphs, produce_glyphs, write_glyphs)
18921 (insert_glyphs): Remove.
18922 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
18923 (tty_turn_off_highlight, get_tty_size): Add declaration.
18924 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
18925
18926 * frame.h (enum output_method): Add output_initial.
18927 (struct x_output): Delete.
18928 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18929 Access foreground_pixel and background_pixel directly from the frame.
18930 (tty_display): Delete.
18931 (struct frame): Add buried_buffer_list, foreground_pixel,
18932 background_pixel and terminal. Delete kboard.
18933 (union output_data): Add tty.
18934 (FRAME_KBOARD): Get the kboard from the terminal.
18935 (FRAME_INITIAL_P): New macro.
18936 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
18937 (Qterm_environment_variable, Qdisplay_environment_variable)
18938 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
18939 New declarations.
18940
18941 * termchar.h (tty_output, tty_display_info): New structures.
18942 (tty_list): Declare.
18943 (FRAME_TTY, CURTTY): New macros.
18944 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
18945 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
18946 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
18947 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
18948
18949 * callproc.c: Include frame.h and termhooks.h, for terminal
18950 parameters.
18951 (add_env): New function.
18952 (child_setup): Use it.
18953 (child_setup, getenv_internal): Handle the new Vprocess_environment.
18954 (getenv_internal): Fix get_terminal_param call.
18955 (Fgetenv_internal, egetenv): Update doc.
18956 (syms_of_callproc): Initialize Vprocess_environment to nil.
18957 Register and initialize them. Remove obsolete defvars. Update doc
18958 strings.
18959 (child_setup): Handle Vlocal_environment_variables.
18960 (getenv_internal): Add terminal parameter.
18961 Handle Vlocal_environment_variables.
18962 (Fgetenv_internal): Add terminal parameter.
18963 (child_setup, getenv_internal, Fgetenv_internal): Store the local
18964 environment in a frame (not terminal) parameter. Update doc strings.
18965 (set_initial_environment): Rename from set_global_environment.
18966 Store Emacs environment in initial frame parameter.
18967
18968 * xdisp.c (redisplay_internal): Update references to
18969 `previous_terminal_frame'.
18970 (display_mode_line, Fformat_mode_line): Replace calls to
18971 `push_frame_kboard' with `push_kboard'.
18972 (get_glyph_string_clip_rects): Add extra parentheses and
18973 braces to prevent compiler warnings.
18974 (calc_pixel_width_or_height): Add xassert to check that the
18975 frame is alive. Don't call `lookup_image' on a termcap frame.
18976 (message2_nolog, message3_nolog, redisplay_internal)
18977 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
18978 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
18979 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
18980 (Fx_display_pixel_width, Fx_display_pixel_height)
18981 (Fx_display_planes, Fx_display_color_cells)
18982 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
18983 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
18984 (Fx_display_backing_store, Fx_display_visual_class)
18985 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
18986 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
18987
18988 * xfns.c (x_set_foreground_color x_set_background_color)
18989 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
18990 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18991 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
18992 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
18993 terminal that is being deleted.
18994 (Fx_create_frame): Use `store_frame_param' to set `window-system'
18995 frame parameter, and make sure it overrides any user-supplied setting.
18996 (Fx_close_connection, Fx_synchronize): Unify argument names with
18997 the rest of the DEFUNs.
18998
18999 * dispnew.c (Fsend_string_to_terminal): Update call to
19000 `get_tty_terminal'.
19001 (Fredraw_frame, Fsend_string_to_terminal)
19002 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
19003 FRAME_TERMCAP_P and FRAME_TTY.
19004 (window_change_signal): Don't believe width/height values that are
19005 impossibly small.
19006 (Vinitial_window_system): Rename from Vwindow_system.
19007 (termscript, Wcm, rif): Delete.
19008
19009 * termhooks.h (struct terminal): New struct containing the
19010 previously global text display hooks and new members NAME,
19011 DELETED and PARAM_ALIST.
19012 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
19013 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
19014 (FRAME_RIF): New macros.
19015 (get_terminal_param, get_device): New declarations.
19016 (termscript): Delete declaration.
19017
19018 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19019 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19020 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19021 FRAME_FOREGROUND_PIXEL.
19022 (x_fully_uncatch_errors): Disable definition.
19023 (x_scroll_bar_expose): Fix reference to foreground pixel.
19024 (XTread_socket): Disable loop on all X displays.
19025 (x_delete_terminal): Don't set terminal->deleted and let
19026 delete_terminal delete the frames on the terminal.
19027 (x_delete_display): Doc update to reflect changes in
19028 delete_terminal.
19029 (x_display_info) <terminal>: Move member earlier in the struct.
19030 (deleting_tty): Remove old variable.
19031 (Fsuspend_tty): Call clear_tty_hooks.
19032 (Fresume_tty, init_tty): Call set_tty_hooks.
19033 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
19034 errors on X frames.
19035 (x_catch_errors_unwind): Abort if x_error_message is NULL.
19036 (handle_one_xevent): Initialize `f' to NULL.
19037 (x_delete_terminal, x_create_terminal): New functions.
19038 (XTset_terminal_modes, XTreset_terminal_modes)
19039 (XTread_socket, x_connection_closed, x_term_init)
19040 (x_term_init, x_delete_display): Add terminal parameter.
19041 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
19042 X connections.
19043
19044 * frame.c: Include termchar.h.
19045 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
19046 (Qwindow_system, Qenvironment, Qterm_environment_variable)
19047 (Qdisplay_environment_variable): New vars.
19048 (Fframep): Deal with output_initial.
19049 (Fframe-live-p): Doc fix.
19050 (Fwindow-system): New function.
19051 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
19052 (make_terminal_frame): Don't create frames on a terminal that is
19053 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19054 (store_frame_param): Check for found_for_frame before calling XFRAME.
19055 (Fmake_terminal_frame): Handle NULL tty names correctly.
19056 (syms_of_frame): Enhance doc string of `default-frame-alist'.
19057 (Fdelete_frame): Remove unused variable `count'. Don't allow other
19058 frames to refer to a deleted frame in their 'environment parameter.
19059 (Fframe_with_environment): New function.
19060 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
19061 (get_future_frame_param): New function.
19062 (Fmake_terminal_frame): Use it.
19063 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
19064
19065 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
19066 * sysdep.c (reset_sys_modes): Update for renames.
19067
19068 * keyboard.c (tty_read_avail_input): New function.
19069 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
19070 (syms_of_keyboard): Defsubr them.
19071 (Fset_input_meta_mode, Fset_quit_char): New functions.
19072 (Fset_input_mode): Split to above functions.
19073 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
19074 parameter. Use it in call to `read_char'.
19075 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
19076 Set wrong_kboard_jmpbuf correctly in recursive calls.
19077 Use current_kboard to access Vkeyboard_translate_table.
19078 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
19079 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
19080 Update longjmp invocations. Remember the original current_kboard,
19081 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
19082 changes it. Comment out unnecessary calls to
19083 `record_single_kboard_state' and `any_kboard_state'.
19084 Update recursive calls.
19085 (wrong_kboard_jmpbuf): Remove global variable.
19086 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
19087 Handle deleted interrupted_kboards correctly; that is a legal
19088 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
19089 and read_char calls. Abort if interrupted_kboard died in read_char.
19090 (any_kboard_state, single_kboard_state)
19091 (push_frame_kboard): Remove function.
19092 (pop_kboard): Switch out of single_kboard mode if the kboard has
19093 been deleted. Remove unused variable. Help debugging by not
19094 changing current_kboard unnecessarily. Set current_kboard to the
19095 kboard of the selected frame when the stored kboard object has
19096 been deleted before pop_kboard.
19097 (temporarily_switch_to_single_kboard): Change first parameter to a
19098 frame pointer. Throw an error when caller wants to change kboards
19099 while in single_kboard mode. 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 (restore_kboard_configuration): Abort if pop_kboard changed the
19103 kboard in single_kboard mode. Call pop_kboard only after setting
19104 up single_kboard mode.
19105 (Frecursive_edit): Switch to single_kboard mode only in nested
19106 command loops.
19107 (cmd_error, command_loop, command_loop_1, timer_check):
19108 Comment out unnecessary call to `any_kboard_state' and
19109 `record_single_kboard_state'.
19110 (delete_kboard): Exit single_kboard mode if we have just deleted
19111 that kboard. Use FRAME_KBOARD.
19112 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
19113 `fatal_error_signal'.
19114 (record_single_kboard_state): Don't push_kboard if we weren't in
19115 single kboard state. Don't pop_kboard if we popped into any
19116 kboard state.
19117 (push_frame_kboard): Rename to push_kboard.
19118 (kbd_buffer_get_event): Use FRAME_TERMINAL.
19119 (read_avail_input): Read input from all terminals.
19120 (mark_kboards): Also mark Vkeyboard_translate_table.
19121 (kbd_buffer_store_event_hold): Simplify condition.
19122 (read_key_sequence): Reinitialize fkey and keytran at each replay.
19123 (Vkeyboard_translate_table): Move to struct kboard.
19124 (init_kboard): Initialize Vkeyboard_translate_table.
19125 (syms_of_keyboard): Use DEFVAR_KBOARD to define
19126 Vkeyboard_translate_table. Update doc strings. Update docs of
19127 local-function-key-map and function-key-map.
19128
19129 * terminal.c: New file.
19130
19131 * term.c: Include errno.h.
19132 (Vring_bell_function, device_list, initial_device)
19133 (next_device_id, ring_bell, update_begin, update_end)
19134 (set_terminal_window, cursor_to, raw_cursor_to)
19135 (clear_to_end, clear_frame, clear_end_of_line)
19136 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
19137 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
19138 (syms_of_term): Move their initialization to terminal.c.
19139 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
19140 (Ftty_display_color_cells)
19141 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
19142 (clear_tty_hooks, set_tty_hooks)
19143 (init_tty, maybe_fatal): New functions.
19144 (Ftty_type): Return nil if terminal is not on a tty instead of
19145 throwing an error. Doc update.
19146 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
19147 Doc update. Initialize new subrs and variables.
19148 (delete_tty): Use terminal->deleted.
19149 (tty_set_terminal_modes): Rename from set_terminal_modes.
19150 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
19151 (set_scroll_region): Rename to `tty_set_scroll_region'.
19152 (turn_on_insert): Rename to `tty_turn_on_insert'.
19153 (turn_off_insert): Rename to `tty_turn_off_insert'.
19154 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
19155 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
19156 (toggle_highligh): Rename to `tty_toggle_highlight'.
19157 (background_highlight): Rename to `tty_background_highlight'.
19158 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
19159 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
19160 (tty_set_scroll_region, tty_background_highlight)
19161 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
19162 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
19163 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
19164 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
19165 Add static modifier.
19166 (tty_reset_terminal_modes, tty_set_terminal_window)
19167 (tty_set_scroll_region, tty_background_highlight)
19168 (tty_highlight_if_desired, tty_cursor_to)
19169 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
19170 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
19171 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
19172 renames.
19173
191742007-08-28 Jan Djärv <jan.h.d@swipnet.se>
19175
19176 * keyboard.c: Qrtl is new.
19177 (parse_tool_bar_item): Handle :rtl keyword.
19178 (syms_of_keyboard): Intern :rtl keyword.
19179
19180 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
19181
19182 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
19183 so no Lisp code is executed.
19184 (file_for_image, find_rtl_image): New functions.
19185 (xg_get_image_for_pixmap): Use file_for_image.
19186 (update_frame_tool_bar): If direction is RTL, use RTL image if
19187 defined. Use Gtk stock images if defined.
19188
191892007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19190
19191 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
19192 for nonexistent or zero-width glyph in composition glyph.
19193
191942007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
19195
19196 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
19197
19198 * xdisp.c (Finvisible_p): New function.
19199 (syms_of_xdisp): defsubr it.
19200
192012007-08-24 Juanma Barranquero <lekktu@gmail.com>
19202
19203 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
19204 Doc fixes.
19205
192062007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19207
19208 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
19209
192102007-08-24 Martin Rudalics <rudalics@gmx.at>
19211
19212 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
19213 whether decoding has modified buffer contents.
19214
192152007-08-24 Jason Rumney <jasonr@gnu.org>
19216
19217 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
19218 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
19219 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
19220 (init_svg_functions) [HAVE_NTGUI]: New function.
19221 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
19222 (svg_load_image): Use them.
19223 (svg_load_image) [HAVE_NTGUI]: Implement background.
19224
192252007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19226
19227 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
19228 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
19229 (LIBX): Remove @RSVG_LIBS@.
19230 (LIBES): Add $(RSVG_LIBS).
19231
19232 * image.c (svg_load_image): Blend with specified background if exists.
19233 Use IMAGE_BACKGROUND. Add Mac OS Support.
19234
19235 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
19236 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
19237 Remove macros.
19238 [MAC_OSX] (socket_callback): Do nothing.
19239 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
19240 ReceiveNextEvent.
19241 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
19242 socket_callback.
19243 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
19244
192452007-08-22 Glenn Morris <rgm@gnu.org>
19246
19247 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
19248
192492007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
19250
19251 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
19252
19253 * image.c: Add support for SVG images. Some additional comments
19254 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
19255 (svg_image_p): New function to test for SVG image.
19256 (svg_load): New function to load SVG image.
19257 (svg_load_image): New function, helper for svg_load.
19258 (Qsvg): New Lisp_object.
19259 (svg_keyword_index): New enum.
19260 (svg_format): New static `image_keyword' struct.
19261 (svg_type): New static `image_type' struct.
19262 (librsvg/rsvg.h): Include it.
19263
192642007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
19265
19266 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
19267
192682007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
19269
19270 * lread.c (Qold_style_backquotes): New var.
19271 (syms_of_lread): Init and staticpro it.
19272 (load_warn_old_style_backquotes): New fun.
19273 (Fload): Use them to warn about old style backquotes.
19274 (end_of_file_error, Fload): Remove unused vars.
19275
19276 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
19277
19278 * lread.c (Vold_style_backquotes): New var.
19279 (syms_of_lread): Init and export it to Elisp.
19280 (read1): Set it when we find an old-style (back)quote.
19281
192822007-08-22 Jason Rumney <jasonr@gnu.org>
19283
19284 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
19285
192862007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
19287
19288 * puresize.h (BASE_PURESIZE): Increase to 1140000.
19289
192902007-08-19 Richard Stallman <rms@gnu.org>
19291
19292 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
19293
192942007-08-19 Andreas Schwab <schwab@suse.de>
19295
19296 * alloc.c (pure): Round PURESIZE up.
19297
192982007-08-17 Jan Djärv <jan.h.d@swipnet.se>
19299
19300 * xterm.c (handle_one_xevent): Remove check that mouse click is in
19301 active frame.
19302
193032007-08-16 Richard Stallman <rms@gnu.org>
19304
19305 * eval.c (Fcommandp): Add parens to clarify.
19306
19307 * minibuf.c (Fall_completions): Use enum for type of table.
19308
19309 * emacs.c (USAGE2): Improve text.
19310
193112007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
19312
19313 * term.c (tty_default_color_capabilities): Declare static
19314 variables in file scope, to avoid HPUX compiler problem.
19315
193162007-08-13 Jan Djärv <jan.h.d@swipnet.se>
19317
19318 * gtkutil.c (update_frame_tool_bar): Use -1 as index
19319 to gtk_toolbar_insert.
19320
193212007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
19322
19323 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
19324
19325 * insdel.c (reset_var_on_error): New fun.
19326 (signal_before_change, signal_after_change):
19327 Use it to reset (after|before)-change-functions to nil in case of error.
19328 Bind inhibit-modification-hooks to t.
19329 Don't bind (after|before)-change-functions to nil while they run.
19330
193312007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19332
19333 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
19334 filling pixmap with stippled background.
19335
193362007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19337
19338 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
19339 Don't use invisible frame as parent window for repositioning.
19340
193412007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
19342
19343 * print.c (new_backquote_output): Rename from old_backquote_output.
19344 (print): Inverse its logic (according to its name) so as to match the
19345 behavior of new_backquote_flag in lread.c.
19346
193472007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19348
19349 * gmalloc.c (posix_memalign): New function.
19350
19351 * macterm.c (frame_highlight, frame_unhighlight): Don't call
19352 ActivateControl/DeactivateControl here.
19353 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
19354 frame-notice-user-settings is non-nil.
19355 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
19356 for kEventParamFMFontStyle.
19357 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
19358 mac_pass_command_to_system and mac_pass_control_to_system here.
19359 (XTread_socket): Call ActivateControl/DeactivateControl here.
19360 (XTread_socket) [TARGET_API_MAC_CARBON]:
19361 Check mac_pass_command_to_system and mac_pass_control_to_system here.
19362 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
19363 for window repositioning.
19364
193652007-08-08 Glenn Morris <rgm@gnu.org>
19366
19367 * Replace `iff' in doc-strings and comments.
19368
193692007-08-07 Chong Yidong <cyd@stupidchicken.com>
19370
19371 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
19372
193732007-08-07 Martin Rudalics <rudalics@gmx.at>
19374
19375 * fileio.c (Finsert_file_contents): Run format-decode and
19376 after_insert_file_functions on entire buffer when REPLACE is
19377 non-nil and inhibit modification_hooks and point_motion_hooks.
19378 For consistency, run after_insert_file_functions iff something
19379 got inserted. Move signal_after_change and update_compositions
19380 after code running after_insert_file_functions. Make sure that
19381 undo_list doesn't record intermediate steps of the decoding process.
19382
193832007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19384
19385 * emacs.c (main)
19386 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
19387 Call malloc_enable_thread on interactive startup.
19388
19389 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
19390 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
19391 [USE_PTHREAD]: Conditionalize with it.
19392 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
19393 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
19394 New functions.
19395
193962007-08-06 Chong Yidong <cyd@stupidchicken.com>
19397
19398 * xdisp.c (redisplay_window): When restoring original buffer
19399 position, make sure it is still valid.
19400
19401 * image.c (png_load): Ignore png-supplied background color.
19402
194032007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19404
19405 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
19406 Use kCFAbsoluteTimeIntervalSince1970.
19407
19408 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
19409 New variable.
19410 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
19411 event loop should be quit.
19412 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
19413 Quit dialog event loop if quit_dialog_event_loop is set.
19414
19415 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
19416 (Selection): New typedef. Use instead of ScrapRef.
19417 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
19418 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
19419 (mac_clear_selection): Rename from clear_scrap.
19420 (get_flavor_type_from_symbol): New argument SEL and subsume function of
19421 scrap_has_target_type. All uses changed.
19422 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
19423 (mac_selection_has_target_p): New functions.
19424 (mac_put_selection_value): Rename from put_scrap_string.
19425 (mac_get_selection_value): Rename from get_scrap_string.
19426 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
19427 (put_scrap_private_timestamp, scrap_has_target_type)
19428 (get_scrap_private_timestamp): Remove functions.
19429 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
19430 (x_own_selection, x_get_local_selection):
19431 Use mac_valid_selection_value_p.
19432 (x_own_selection): Don't use put_scrap_private_timestamp.
19433 Record OWNERSHIP-INFO into Vselection_alist instead.
19434 (x_get_local_selection): Don't check type if request is local.
19435 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
19436 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
19437
194382007-08-04 Jan Djärv <jan.h.d@swipnet.se>
19439
19440 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
19441 add comment explaining why.
19442
194432007-08-03 Richard Stallman <rms@gnu.org>
19444
19445 * fileio.c (Fvisited_file_modtime): Use make_time.
19446
194472007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
19448
19449 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
19450 build.
19451
194522007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
19453
19454 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
19455
194562007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
19457
19458 * puresize.h (BASE_PURESIZE): Increase to 1130000.
19459
194602007-07-30 Richard Stallman <rms@gnu.org>
19461
19462 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
19463
194642007-07-29 Jan Djärv <jan.h.d@swipnet.se>
19465
19466 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
19467
194682007-07-28 Nick Roberts <nickrob@snap.net.nz>
19469
19470 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
19471 remote default-directory.
19472
19473 * buffer.c (mode-line-format): Update doc string.
19474
194752007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19476
19477 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
19478 scroll bar gap.
19479 (x_scroll_bar_create): Set bar->fringe_extended_p.
19480 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
19481 on frame edge. Check fringe background extension. Don't clear
19482 extended fringe background area.
19483
19484 * w32term.h (struct scroll_bar): New member fringe_extended_p.
19485 (w32_fill_area): Enclose multiple statements with do ... while (0).
19486
19487 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
19488 Extend fringe background to scroll bar gap.
19489 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
19490 Set bar->fringe_extended_p.
19491 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19492 Put leftmost/rightmost scroll bars on frame edge. Check fringe
19493 background extension. Don't clear extended fringe background area.
19494
19495 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19496 New member fringe_extended_p.
19497
194982007-07-25 Glenn Morris <rgm@gnu.org>
19499
19500 * Relicense all FSF files to GPLv3 or later.
19501
19502 * COPYING: Switch to GPLv3.
19503
195042007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
19505
19506 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
19507
19508 * data.c (Finteractive_form): Check for the presence of an
19509 `interactive-form' symbol property more thoroughly.
19510
19511 * data.c (Finteractive_form): Use an `interactive-form' property if
19512 present, analogous to the function-documentation property.
19513
195142007-07-24 Jason Rumney <jasonr@gnu.org>
19515
19516 * w32fns.c (x_real_positions): Get real position from OS instead of
19517 calculating it.
19518
195192007-07-23 Jason Rumney <jasonr@gnu.org>
19520
19521 * filelock.c (current_lock_owner): Allow for @ sign in username.
19522
195232007-07-22 Nick Roberts <nickrob@snap.net.nz>
19524
19525 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
19526 remote default-directory.
19527
19528 * buffer.c (mode-line-format): Describe above case in doc string.
19529
195302007-07-20 Eli Zaretskii <eliz@gnu.org>
19531
19532 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
19533 Define if not defined.
19534
195352007-07-18 Jason Rumney <jasonr@gnu.org>
19536
19537 * w32proc.c (w32_executable_type): Handle 64 bit executables.
19538
195392007-07-18 Richard Stallman <rms@gnu.org>
19540
19541 * data.c (Fsetq_default): Doc fix.
19542
19543 * eval.c (Fsetq): Doc fix.
19544
195452007-07-18 Juanma Barranquero <lekktu@gmail.com>
19546
19547 * coding.c (Ffind_operation_coding_system):
19548 * eval.c (For, Fand): Doc fixes.
19549 Reported by Johan Bockgård.
19550
195512007-07-18 Jan Djärv <jan.h.d@swipnet.se>
19552
19553 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
19554
19555 * xterm.h: Declare x_ewmh_activate_frame.
19556
19557 * xterm.c (x_ewmh_activate_frame): New function.
19558 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
19559
195602007-07-17 Martin Rudalics <rudalics@gmx.at>
19561
19562 * window.c (Fdisplay_buffer): If largest or LRU window is the
19563 only window, split it even if it is not eligible for splitting.
19564 This restores the original behavior broken by the 2007-07-15
19565 change.
19566
195672007-07-17 Glenn Morris <rgm@gnu.org>
19568
19569 * abbrev.c (abbrev_check_chars): New function.
19570 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19571 Call abbrev_check_chars to check abbrev characters are word
19572 constituents. Doc fix.
19573
195742007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
19575
19576 * process.c (Fstart_process, Fmake_network_process)
19577 (read_process_output): Fix up last changes.
19578
195792007-07-16 Eli Zaretskii <eliz@gnu.org>
19580
19581 * makefile.w32-in (clean): Don't delete *~.
19582
195832007-07-16 Andreas Schwab <schwab@suse.de>
19584
19585 * window.c (Fdisplay_buffer): Use NILP.
19586 (Fset_window_scroll_bars): Likewise.
19587
195882007-07-15 Martin Rudalics <rudalics@gmx.at>
19589
19590 * window.c (window_min_size_2): New function.
19591 (window_min_size_1, size_window, Fdisplay_buffer)
19592 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
19593 windows without mode- or header-lines when window-min-height is
19594 too small.
19595 (size_window): Reset nodelete_p after testing it, following an
19596 earlier note by Kim F. Storm.
19597 (display_buffer): Do not set split_height_threshold to twice the
19598 value of window_min_height to avoid changing the value of a
19599 customizable variable. Rather explicitly check whether the
19600 height of the window that shall be splitted is at least as large
19601 as split_height_threshold.
19602 (Fwindow_full_width_p): New defun.
19603 (syms_of_window): Defsubr it.
19604
19605 * window.h: Add EXFUN for Fwindow_full_width_p.
19606
196072007-07-14 Jason Rumney <jasonr@gnu.org>
19608
19609 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
19610
196112007-07-14 Richard Stallman <rms@gnu.org>
19612
19613 * eval.c (maybe_call_debugger): New function.
19614 (find_handler_clause): Use maybe_call_debugger.
19615 Call it when the handler says `debug'.
19616 Eliminate DEBUGGER_VALUE_PTR.
19617 (Fsignal): Eliminate debugger_value.
19618 (Qdebug): New variable.
19619 (syms_of_eval): Initialize it.
19620
196212007-07-14 Juanma Barranquero <lekktu@gmail.com>
19622
19623 * eval.c (Fprogn):
19624 * keyboard.c (Ftrack_mouse):
19625 * print.c (Fwith_output_to_temp_buffer):
19626 * window.c (Fsave_window_excursion): Doc fix.
19627
196282007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
19629
19630 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
19631
196322007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
19633
19634 * process.h (struct Lisp_Process): Turn slots infd, outfd,
19635 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
19636 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
19637 read_output_delay, and read_output_skip from Lisp_Objects to ints.
19638 Remove unused encoding_carryover.
19639 * process.c: Adjust all functions accordingly.
19640
196412007-07-12 Richard Stallman <rms@gnu.org>
19642
19643 * term.c: Include unistd.h only if HAVE_UNISTD_H.
19644
196452007-07-11 Jason Rumney <jasonr@gnu.org>
19646
19647 * makefile.w32-in (LIBS): Include OLE32.
19648
19649 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
19650 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
19651
196522007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
19653
19654 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
19655 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
19656 from a Lisp_Object into a bare pointer.
19657 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
19658 Adjust the code correspondingly.
19659
19660 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
19661
19662 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
19663 (term_show_mouse_face): Remove unused var `j'.
19664 (handle_one_term_event): Remove unused vars `i' and `j'.
19665 Don't cast return value of ttyname since it's not necessary.
19666
196672007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
19668
19669 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
19670 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
19671
19672 * fns.c (map_char_table): Use an array of int for `indices' rather than
19673 an array of Lisp_Objects (which are only ever integers anyway).
19674 (Fmap_char_table): Update caller.
19675 * lisp.h: Update prototype.
19676 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
19677 * fontset.c (Ffontset_info):
19678 * casetab.c (set_case_table): Update callers.
19679
19680 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
19681
19682 * keymap.c (struct accessible_keymaps_data)
19683 (struct where_is_internal_data): New structures.
19684 (accessible_keymaps_1, where_is_internal_1): Use them to change
19685 interface to adhere to the one used by map_keymap.
19686 (Faccessible_keymaps, where_is_internal): Use map_keymap.
19687 (accessible_keymaps_char_table, where_is_internal_2): Remove.
19688
19689 * keymap.h (map_keymap_function_t): More informative prototype.
19690
196912007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
19692
19693 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
19694 (looking_at_1): Don't change search_regs and last_thing_searched
19695 if `inhibit-changing-match-data' is non-nil.
19696 (string_match_1, search_buffer, set_search_regs): Likewise.
19697 (syms_of_search): Add Lisp level definition for
19698 `inhibit-changing-match-data' and set it to nil.
19699 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
19700 start and end of the match, instead of using values in search_regs.
19701
197022007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19703
19704 * minibuf.c (Fcompleting_read): New value `confirm-only'
19705 for `require-match'.
19706
197072007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
19708
19709 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
19710 part of the 2007-06-27 change to syms_of_fileio.
19711
197122007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19713
19714 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
19715 Check WINDOWP before using XWINDOW. Consolidate return statements.
19716
197172007-06-27 Richard Stallman <rms@gnu.org>
19718
19719 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
19720
197212007-06-27 Juanma Barranquero <lekktu@gmail.com>
19722
19723 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
19724
197252007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19726
19727 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
19728 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
19729 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
19730 (_free_internal, memalign): Use them.
19731 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
19732 Initialize to PTHREAD_MUTEX_INITIALIZER.
19733 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
19734 (morecore_nolock): Rename from morecore. All uses changed.
19735 Use only nolock versions of internal allocation functions.
19736 (_malloc_internal_nolock, _realloc_internal_nolock)
19737 (_free_internal_nolock): New functions created from
19738 _malloc_internal, _realloc_internal, and _free_internal.
19739 (_malloc_internal, _realloc_internal, _free_internal): Use them.
19740 Copy hook value to automatic variable before its use.
19741 (memalign): Copy hook value to automatic variable before its use.
19742
197432007-06-26 Kenichi Handa <handa@m17n.org>
19744
19745 * coding.c (Ffind_operation_coding_system): Docstring improved.
19746 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
19747
197482007-06-25 David Kastrup <dak@gnu.org>
19749
19750 * keymap.c (Fcurrent_active_maps): Add `position' argument.
19751 (Fwhere_is_internal): Adjust call to `current-active-maps' to
19752 cater for additional parameter.
19753
19754 * keymap.h: Adjust number of parameters to `current-active-maps'.
19755
19756 * doc.c (Fsubstitute_command_keys): Adjust call of
19757 `current-active-maps'.
19758
197592007-06-25 David Kastrup <dak@gnu.org>
19760
19761 * callint.c (Fcall_interactively): Make the parsing of interactive
19762 specs somewhat more readable.
19763
197642007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19765
19766 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
19767 to scroll bar gap also when bitmap fills fringe. Draw only foreground
19768 if extended background has already been filled.
19769
197702007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19771
19772 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
19773 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
19774
19775 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
19776 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
19777 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
19778 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
19779 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
19780 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
19781 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
19782 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
19783 Run timers during dialog popup.
19784 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
19785
197862007-06-21 Jason Rumney <jasonr@gnu.org>
19787
19788 * image.c (convert_mono_to_color_image): Swap fore and background.
19789
197902007-06-20 Jason Rumney <jasonr@gnu.org>
19791
19792 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
19793 (w32_free_bdf_font): Unmap memory not handle.
19794
197952007-06-20 Sam Steingold <sds@gnu.org>
19796
19797 * gmalloc.c (__morecore): Fix the declaration to comply with the
19798 definition.
19799
198002007-06-20 Juanma Barranquero <lekktu@gmail.com>
19801
19802 * w32term.c (w32_delete_display): Remove leftover declaration.
19803 (w32_define_cursor, w32_initialize): Make static.
19804
19805 * w32.c (_wsa_errlist): Fix typo in error message.
19806 (init_environment): Ignore any environment variable from the
19807 registry having a null value.
19808
198092007-06-20 Glenn Morris <rgm@gnu.org>
19810
19811 * Makefile.in (LIBGIF): Default to -lgif.
19812
198132007-06-17 Jason Rumney <jasonr@gnu.org>
19814
19815 * w32menu.c (add_menu_item): Don't use multibyte string functions on
19816 unicode strings.
19817
198182007-06-16 Juanma Barranquero <lekktu@gmail.com>
19819
19820 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
19821 Fix typo in docstring.
19822
198232007-06-16 Eli Zaretskii <eliz@gnu.org>
19824
19825 * w32menu.c (add_menu_item): Escape `&' characters in menu items
19826 and their keybindings.
19827
198282007-06-15 Chong Yidong <cyd@stupidchicken.com>
19829
19830 * composite.c (update_compositions): Fix last fix.
19831
198322007-06-14 Jason Rumney <jasonr@gnu.org>
19833
19834 * w32.c (get_process_times_fn): New function pointer.
19835 (globals_of_w32): Intialize it if present in kernel32.dll.
19836 (w32_get_internal_run_time): New function.
19837
19838 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
19839
198402007-06-14 Kenichi Handa <handa@etlken.m17n.org>
19841
19842 * composite.c (update_compositions): Check the validness of
19843 compositions.
19844
198452007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19846
19847 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
19848 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
19849
19850 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
19851 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
19852
19853 * macgui.h (USE_MAC_TOOLBAR): New define.
19854
19855 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19856 Return immediately unless popup is activated.
19857
19858 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
19859 background to scroll bar gap.
19860 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
19861 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
19862 scroll bars on frame edge. Check fringe background extension.
19863 Don't clear extended fringe background area.
19864 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
19865 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
19866 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
19867 [USE_MAC_TOOLBAR]: New macros.
19868 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
19869 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
19870 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
19871 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
19872 [USE_MAC_TOOLBAR]: New functions.
19873 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
19874 manually if previous repositioning has failed.
19875 (mac_handle_keyboard_event): Use precomputed event kind.
19876 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
19877 as tool bar item click. Handle mouse movement over tool bar items.
19878
19879 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
19880 toolbar_win_gravity.
19881 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
19882 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
19883 Add externs.
19884
19885 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
19886 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
19887
198882007-06-14 Chong Yidong <cyd@stupidchicken.com>
19889
19890 * image.c (search_image_cache): Remove unused variable.
19891
198922007-06-13 Chong Yidong <cyd@stupidchicken.com>
19893
19894 * xfns.c, xmenu.c: Link to xaw3d if available.
19895
198962007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19897
19898 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
19899 frame_foreground and frame_background.
19900
19901 * image.c (lookup_image): Save frame foreground and background colors.
19902 (search_image_cache): Check if saved and current frame colors match.
19903
199042007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
19905
19906 * regex.c (regex_compile): Remove the `regnum' counter.
19907 Use bufp->re_nsub instead. Add support for \(?N:RE\).
19908
199092007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19910
19911 * term.c: Include intervals.h to declare Fget_text_property.
19912
199132007-06-10 Jason Rumney <jasonr@gnu.org>
19914
19915 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
19916
199172007-06-08 Juanma Barranquero <lekktu@gmail.com>
19918
19919 * callint.c (Fcall_interactively):
19920 * editfns.c (Fdelete_and_extract_region):
19921 * fileio.c (Fread_file_name):
19922 * fns.c (Fmapconcat):
19923 * keyboard.c (cmd_error_internal):
19924 * keymap.c (Fkey_description):
19925 * lread.c (openp):
19926 * minibuf.c (read_minibuf):
19927 * search.c (wordify):
19928 * sunfns.c (sel_read):
19929 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
19930 * xfns.c (x_default_scroll_bar_color_parameter):
19931 * xmenu.c (menu_help_callback):
19932 * xselect.c (Fx_get_atom_name):
19933 * xterm.c (x_term_init): Use empty_unibyte_string.
19934
199352007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
19936
19937 * alloc.c (init_strings): Initialize canonical empty strings.
19938 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
19939 canonical empty string when the requested size is 0.
19940
19941 * emacs.c (empty_unibyte_string): Rename from empty_string.
19942 (empty_multibyte_string): New canonical empty string.
19943 (syms_of_emacs): Don't initialize empty_string.
19944
19945 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
19946 string, if appropriate.
19947 (empty_unibyte_string, empty_multibyte_string): New externs.
19948 (empty_string): Remove extern.
19949
19950 * lread.c (syms_of_lread): Use empty_unibyte_string.
19951
199522007-06-07 Jason Rumney <jasonr@gnu.org>
19953
19954 * s/ms-w32.h: Don't define HAVE_TZNAME.
19955
19956 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
19957
199582007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19959
19960 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
19961
19962 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
19963 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
19964
19965 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19966 Don't call next handler.
19967 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
19968 Remove argument. Install handler to application.
19969 (set_frame_menubar): Don't change deep_p.
19970 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
19971 FRAME_OUTER_TO_INNER_DIFF_Y.
19972 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
19973 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
19974 [HAVE_DIALOGS]: New macros.
19975 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
19976 Use them.
19977 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
19978
19979 * macselect.c [MAC_OSX] (install_service_handler): Rename from
19980 init_service_handler. All callers changed. Return OSStatus value.
19981
19982 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
19983 All callers changed so as not to call SetPortWindowPort.
19984 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
19985 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
19986 mac_draw_string_common.
19987 (mac_draw_image_string_qd): Likewise.
19988 (mac_draw_string_common): Use them. Add INLINE.
19989 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
19990 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
19991 GetGlobalMouse.
19992 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
19993 and FRAME_OUTER_TO_INNER_DIFF_Y.
19994 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
19995 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
19996 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
19997 repositioning window to mac_handle_window_event.
19998 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
19999 saving window location to mac_handle_window_event
20000 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
20001 (install_menu_target_item_handler): Remove argument in extern.
20002 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
20003 Also accept command events.
20004 (do_keystroke): New function created from XTread_socket.
20005 (init_command_handler): Remove functions.
20006 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
20007 and save window location by kEventWindowShowing and kEventWindowHiding
20008 handlers here. Don't call next handler for window state change and
20009 focus events.
20010 (mac_handle_application_event, mac_handle_keyboard_event)
20011 [TARGET_API_MAC_CARBON]: New functions.
20012 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
20013 kEventWindowShowing and kEventWindowHiding events. Move installation
20014 of mouse, font, text input and menu target item handlers to
20015 install_application_handler.
20016 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20017 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20018 New function.
20019 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20020 Register it.
20021 (XTread_socket) [TARGET_API_MAC_CARBON]:
20022 Consolidate SendEventToEventTarget calls.
20023 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20024 Move application activation handler to mac_handle_application_event.
20025 Move keyboard handler to mac_handle_keyboard_event.
20026 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
20027 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
20028 init_command_handler. Call install_application_handler.
20029
20030 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
20031 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
20032
200332007-06-07 Glenn Morris <rgm@gnu.org>
20034
20035 * emacs.c (main): Use `emacs-copyright' in --version output.
20036
200372007-06-06 Chong Yidong <cyd@stupidchicken.com>
20038
20039 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
20040
200412007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20042
20043 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20044
20045 * macgui.h: Replace WindowPtr with WindowRef.
20046
20047 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20048 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20049 Replace ControlHandle with ControlRef.
20050 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
20051
20052 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20053 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20054 Replace ControlHandle with ControlRef.
20055 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
20056 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
20057
20058 * macterm.h (struct scroll_bar): Rename member control_handle_low
20059 and control_handle_high to control_ref_low and control_ref_high.
20060 All uses changed.
20061 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
20062 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
20063 respectively. All uses changed.
20064 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
20065 (install_window_handler, remove_window_handler): Replace WindowPtr
20066 with WindowRef in externs.
20067
200682007-06-05 Juanma Barranquero <lekktu@gmail.com>
20069
20070 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
20071
200722007-06-03 Nick Roberts <nickrob@snap.net.nz>
20073
20074 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
20075
20076 * frame.c (Fmouse_position, Fmouse_pixel_position):
20077 Condition on HAVE_GPM too.
20078
20079 * term.c (term_mouse_highlight): Remove unused variables.
20080 (Fterm_open_connection): Set gpm_zerobased to 1.
20081 (term_mouse_movement, term_mouse_click, handle_one_term_event):
20082 Use zero based co-ordinates.
20083 (handle_one_term_event): Report a drag as mouse movement too.
20084
20085 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
20086
200872007-06-03 Chong Yidong <cyd@stupidchicken.com>
20088
20089 * image.c (search_image_cache): New function. Require background
20090 color match if background color is unspecified in the image spec.
20091 (uncache_image, lookup_image): Use it.
20092
200932007-06-01 Juanma Barranquero <lekktu@gmail.com>
20094
20095 * window.c (Fshrink_window): Reflow docstring.
20096
200972007-06-02 Chong Yidong <cyd@stupidchicken.com>
20098
20099 * Version 22.1 released.
20100
201012007-06-01 Richard Stallman <rms@gnu.org>
20102
20103 * xfns.c (x_encode_text): Add GCPRO.
20104
201052007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20106
20107 * xfns.c (x_set_name_internal): Save encoded name before
20108 x_encode_text in case string data is relocated.
20109
201102007-05-31 Richard Stallman <rms@gnu.org>
20111
20112 * buffer.c (syms_of_buffer): Doc fix.
20113
201142007-05-30 Nick Roberts <nickrob@snap.net.nz>
20115
20116 * sysdep.c (init_sys_modes): Add rather than replace with
20117 O_NONBLOCK.
20118
20119 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
20120 term_mouse_moveto.
20121
20122 * termhooks.h (term_mouse_moveto): New extern.
20123
20124 * term.c (mouse_face_window): Rename...
20125 (Qmouse_face_window): ...to this.
20126 (term_show_mouse_face, term_clear_mouse_face)
20127 (term_mouse_highlight): Use Qmouse_face_window.
20128 (term_mouse_moveto): New function.
20129 (term_mouse_position): Make it work.
20130 (syms_of_term): Uncomment assignment to mouse_position_hook.
20131 Staticpro Qmouse_face_window.
20132
201332007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20134
20135 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
20136 around current_column call.
20137
201382007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
20139
20140 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
20141 * xdisp.c (next_element_from_buffer):
20142 * window.c (delete_window):
20143 * term.c (term_mouse_highlight):
20144 * msdos.c (getdefdir):
20145 * macterm.c (mac_create_bitmap_from_bitmap_data)
20146 (init_font_name_table):
20147 * fns.c (Fsxhash):
20148 * data.c (Fmake_local_variable):
20149 * ccl.c (ccl_driver): Likewise.
20150
201512007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20152
20153 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
20154 Call mac_wakeup_from_rne on window size change.
20155
201562007-05-25 Chong Yidong <cyd@stupidchicken.com>
20157
20158 * image.c (uncache_image): Fix typo.
20159
201602007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
20161
20162 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
20163
201642007-05-22 Richard Stallman <rms@gnu.org>
20165
20166 * xterm.c (x_connection_closed): Remove NO_RETURN.
20167
201682007-05-22 Martin Rudalics <rudalics@gmx.at>
20169
20170 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
20171
201722007-05-21 Chong Yidong <cyd@stupidchicken.com>
20173
20174 * image.c (uncache_image): New function.
20175 (Fimage_refresh): New function.
20176
201772007-05-20 Jan Djärv <jan.h.d@swipnet.se>
20178
20179 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
20180
201812007-05-20 Nick Roberts <nickrob@snap.net.nz>
20182
20183 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
20184 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
20185
201862007-05-20 Nick Roberts <nickrob@snap.net.nz>
20187
20188 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
20189 conditional on [HAVE_GPM_H].
20190
201912007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
20192
20193 * syntax.c (skip_chars): Update syntax-table only after we checked that
20194 the new location is valid.
20195
201962007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20197
20198 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
20199 mac_get_window_bounds.
20200
202012007-05-20 Nick Roberts <nickrob@snap.net.nz>
20202
20203 * Makefile.in (LIBGPM): Allow it to be set from configure.
20204 If set then link Emacs with it.
20205
20206 * config.in: Regenerate.
20207
20208 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
20209 New externs.
20210
20211 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
20212 Include gpm.h.
20213 (handle_one_term_event, term_gpm): New externs.
20214
20215 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
20216 and allow it to be interrupted by SIGIO.
20217
20218 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
20219 (wait_reading_process_output): Wait on gpm_fd too.
20220 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
20221 (add_gpm_wait_descriptor_called_flag): New variable.
20222 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
20223
20224 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
20225 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
20226 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
20227 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
20228 (make_lispy_event): Add case GPM_CLICK_EVENT.
20229 (read_avail_input): Handle mouse input.
20230
20231 * term.c (write_glyphs_with_face): New function.
20232 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
20233 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
20234 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
20235 (mouse_face_face_id, term_gpm, pos_x, pos_y)
20236 (last_mouse_x, last_mouse_y): New variables.
20237 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
20238 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
20239 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
20240 (Fterm_close_connection): New functions.
20241 (term_init): Initialise mouse_face_window.
20242
202432007-05-19 Chong Yidong <cyd@stupidchicken.com>
20244
20245 * xdisp.c (redisplay_window): If first window line is a
20246 continuation line, recompute the new window start instead of
20247 recentering.
20248
202492007-05-18 Glenn Morris <rgm@gnu.org>
20250
20251 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
20252 Suggested by Alfred M. Szmidt <ams@gnu.org>.
20253
202542007-05-17 Glenn Morris <rgm@gnu.org>
20255
20256 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
20257
202582007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20259
20260 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
20261 dead key repeat and up events.
20262
202632007-05-14 Chong Yidong <cyd@stupidchicken.com>
20264
20265 * image.c (pbm_load): Check image size for monochrome pbm.
20266
202672007-05-13 Chong Yidong <cyd@stupidchicken.com>
20268
20269 * xterm.c (XTread_socket): Revert last change.
20270
202712007-05-12 Chong Yidong <cyd@stupidchicken.com>
20272
20273 * image.c (pbm_load): Correctly check image size for greyscale pbm.
20274
20275 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
20276
202772007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20278
20279 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
20280 mixup (YAILOM).
20281
202822007-05-07 Andreas Schwab <schwab@suse.de>
20283
20284 * keymap.c (Flookup_key): Fix typo in last change.
20285
202862007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20287
20288 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
20289 mapping for unibyte strings.
20290
202912007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20292
20293 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
20294 (Fx_popup_dialog) [MAC_OSX]: Likewise.
20295
202962007-04-29 Richard Stallman <rms@gnu.org>
20297
20298 * insdel.c (replace_range): For undo, record insertion first.
20299
203002007-04-29 Andreas Schwab <schwab@suse.de>
20301
20302 * lisp.h (VECSIZE): Use OFFSETOF.
20303
203042007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20305
20306 * xdisp.c (try_window_reusing_current_matrix): Fix number of
20307 disabled lines.
20308
203092007-04-28 Richard Stallman <rms@gnu.org>
20310
20311 * lread.c (read_escape): In a string, \s is always space.
20312
203132007-04-27 Jan Djärv <jan.h.d@swipnet.se>
20314
20315 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
20316
20317 * gtkutil.c (xg_update_menubar, create_menus): Create empty
20318 submenu for menu bar items.
20319
20320See ChangeLog.10 for earlier changes.
20321
20322;; Local Variables:
20323;; coding: utf-8
20324;; add-log-time-zone-rule: t
aac0c6e3
MR
20325;; End:
20326
76b6f707 20327 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
20328
20329 This file is part of GNU Emacs.
20330
20331 GNU Emacs is free software: you can redistribute it and/or modify
20332 it under the terms of the GNU General Public License as published by
20333 the Free Software Foundation, either version 3 of the License, or
20334 (at your option) any later version.
20335
20336 GNU Emacs is distributed in the hope that it will be useful,
20337 but WITHOUT ANY WARRANTY; without even the implied warranty of
20338 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20339 GNU General Public License for more details.
20340
20341 You should have received a copy of the GNU General Public License
20342 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20343
20344;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40