(xftfont_has_char): New function.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
6570a1c4
KH
12009-01-29 Kenichi Handa <handa@m17n.org>
2
3 * xftfont.c (xftfont_has_char): New function.
4 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
5
d72a4afa
AR
62009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7
8 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
9 under GNUstep.
10 (ns_query_color): New declaration.
11
12 * nsterm.m (ns_confirm_quit): New variable.
13 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
14 (EmacsApp-applicationShouldTerminate:): Use it.
15 (EmacsPrefsController): Let user set it.
16 (ns_query_color): New function.
17 (ns_defined_color): Use it.
18 (ns_initialize): Drop.
19 (ns_term_init): Add two lines from ns_initialize(), and set
20 input_interrupt_mode to nil.
21
22 * image.c (svg_load_image): Don't right-shift background RGB when
23 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
24
9fe78804
KH
252009-01-28 Kenichi Handa <handa@m17n.org>
26
27 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
28 (fontset_get_font_group): Remember that no font-group is specified
29 for C.
9fe78804 30
fa57de36
CY
312009-01-27 Chong Yidong <cyd@stupidchicken.com>
32
930600e9
CY
33 * fns.c (concat): Check for string overflow (bug#1787).
34
fa57de36
CY
35 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
36 Quadruple undo limits (bug#1501).
37
7179ce7b
KH
382009-01-27 Kenichi Handa <handa@m17n.org>
39
40 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
41 directly use GT_Get_Char_index.
42
43 * xftfont.c (struct xftfont_info): New member `index'.
44
45 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
46 (Ffontset_font): Adjusted for the change of fontset entry.
47
5be8fcc0
CY
482009-01-26 Kenichi Handa <handa@m17n.org>
49
50 * fontset.c (fontset_find_font): Fix handling of non-cons return
51 value of fontset_get_font_group.
52 (fontset_font): Revert last change.
53
19ae3e61
JR
542009-01-26 Jason Rumney <jasonr@gnu.org>
55
56 * w32font.c (w32font_list_internal): Return quickly if registry is
57 unknown. Simplify final return.
58 (add_font_entity_to_list): Break complex logic down into more
59 manageable chunks. Move unknown registry check to
60 w32font_list_internal.
61
8612b71a
AR
622009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
63
64 Changes to remove Feval calls from GUI under NS.
65
d8038940
JB
66 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
67 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
68 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
69
70 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
71 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
72 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
73 instead of NON_ASCII_KEYSTROKE_EVENT.
74 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
75 (EmacsApp-applicationShouldTerminate:): Query user.
76 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
77 instead of Feval.
78
79 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
80
81 * keyboard.c (kbd_buffer_get_event): Check for it.
82 (keys_of_keyboard): Define lispy keys for
83 ns-put/unput-working-text.
84
85 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
86 versions.
87 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
88
6288ae55
CY
892009-01-25 Chong Yidong <cyd@stupidchicken.com>
90
91 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 92 setting current_buffer directly. (Bug#2044)
6288ae55 93
289e7f8f
CY
942009-01-24 Chong Yidong <cyd@stupidchicken.com>
95
5ce87308 96 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 97 any work. (Bug#1952, bug#1990).
5ce87308 98
64cc3cf6 99 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 100
b3243e6f
AR
1012009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
102
103 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
104 (ns_no_defaults): New declaration.
105 (main): Use it.
e0d2e69a 106
d900b2af 107 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 108
d900b2af 109 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 110
d900b2af
AR
111 * nsterm.m (ns_no_defaults): New variable.
112 (ns_initialize): Don't read defaults when ns_no_defaults.
113 (EmacsView-readSelectionFromPasteboard:)
114 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 115 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
116 (ns_dumpglyphs_stretch): New function.
117 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 118 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 119
e0d2e69a
AR
120 * nsimage.m (setPixmapData:): Set to ignore image DPI.
121
3ac71f5d
CY
1222009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
123
124 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
125 call for Sparc64.
126
3fe53a83
AR
1272009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
128
129 * nsfns.m:
130 * nsgui.h:
131 * nsmenu.m:
132 * nsselect.m:
133 * nsterm.h:
134 * nsterm.m: Remove '23' comments that indicated code added during
135 update from emacs-20 -> emacs-23.
136
10f87c6f 1372009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
138
139 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 140 ns_alternate_modifier. (Bug#1217)
a3b53a85 141
c7cef62d
AR
142 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
143 Display all shortcuts, including those w/o super modifier.
144
575fb8bd
AR
145 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
146
918b848b
CY
1472009-01-22 Chong Yidong <cyd@stupidchicken.com>
148
149 * fileio.c (Vwrite_region_post_annotation_function)
150 (Vwrite_region_annotation_buffers): New vars.
151 (build_annotations_unwind): Just reset
152 Vwrite_region_annotation_buffers.
153 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
154 Call write-region-post-annotation-function.
155 (build_annotations): Add to Vwrite_region_annotation_buffers if
156 buffer changes.
157
a39e2539
AR
1582009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
159
160 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
161 Tiger.
162 * nsfns.m (ns_do_applescript): Conditionalize
163 typeUTF16ExternalRepresentation on Tiger.
164
35ed44db
AR
1652009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
166
167 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
168
cbe0b5bf
AR
1692009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
170
171 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 172
6049d3a0
AR
173 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
174
175 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
176 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
177 handle Ctrl-tab. (Bug#1841)
178 (ns_get_color): Use unsigned long long for scanned hex string value.
179 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 180 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
6049d3a0 181 (EmacsPrefsController-setPanelFromDefaultValues) New function.
3a88a825 182 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 183 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 184 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 185 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 186
d3810c21 187 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 188 DPI. (Bug#1316)
d3810c21
AR
189 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
190 values in onTiger section.
4c7077c3 191
e301e634
CY
1922009-01-19 Chong Yidong <cyd@stupidchicken.com>
193
7f82490b
CY
194 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
195 Check return value of font_spec_from_name.
64cc3cf6 196 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
197
198 * font.c (font_spec_from_name): Return Qnil if font name could not
199 be parsed.
200 (font_parse_name): Treat a `?' character as part of an XLFD.
201
e301e634
CY
202 * fns.c (Fsubstring): Doc fix.
203
1c0db158
KH
2042009-01-19 Kenichi Handa <handa@m17n.org>
205
206 * ftfont.c (ftfont_lookup_cache): Check the return value of
207 FcFontList.
208 (ftfont_list): Likewise.
209
acf20901
JB
2102009-01-18 Juanma Barranquero <lekktu@gmail.com>
211
fff4e459
JB
212 * dbusbind.c (Fdbus_register_signal):
213 * process.c (conv_sockaddr_to_lisp):
214 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
215
acf20901
JB
216 * callproc.c (Fgetenv_internal): Doc fix.
217
e7abcdfb
CY
2182009-01-16 Chong Yidong <cyd@stupidchicken.com>
219
220 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
221 it is not even used.
222
b60861e6
GM
2232009-01-16 Glenn Morris <rgm@gnu.org>
224
225 * font.c (Ffont_variation_glyphs): Silence compiler.
226
8db52afe
JB
2272009-01-15 Juanma Barranquero <lekktu@gmail.com>
228
229 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
230 Reported by David Robinow <drobinow@gmail.com>.
231
4cddb209
KH
2322009-01-15 Kenichi Handa <handa@m17n.org>
233
234 * coding.c (detect_coding_system): Fix handling of
235 null_byte_found.
236
f247f67b
JR
2372009-01-14 Jason Rumney <jasonr@gnu.org>
238
239 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 240 never a fontset. (Bug#1562)
f247f67b 241
f56a4450
KH
2422009-01-14 Kenichi Handa <handa@m17n.org>
243
244 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 245 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 246
4e99855e
CY
2472009-01-13 Chong Yidong <cyd@stupidchicken.com>
248
249 * font.c (font_clear_prop): If clearing the family, clear the font
250 width index too.
251
fff4e459 252 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 253
24f01470
JB
2542009-01-12 Juanma Barranquero <lekktu@gmail.com>
255
256 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
257 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
258 functions, use sizeof.
259
a41240a3
MR
2602009-01-12 Martin Rudalics <rudalics@gmx.at>
261
262 * keyboard.c (read_char): Fix case where last_nonmenu_event
263 returned a bad value with submenus. (Bug#447)
264
944636b8
CY
2652009-01-12 Chong Yidong <cyd@stupidchicken.com>
266
267 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
268 family, clear the font width index too.
269
0dad7c6f
JR
2702009-01-11 Jason Rumney <jasonr@gnu.org>
271
272 * keyboard.c (cmd_error_internal): Exit when errors occur before
273 frame creation and not in daemon mode. (Bug#1836)
274
7c2363af
CY
2752009-01-10 Chong Yidong <cyd@stupidchicken.com>
276
277 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
278 of a display vector, backtrack.
279 (try_window_reusing_current_matrix): Check glyph type before
280 referencing charpos member.
281
97b1b294
EZ
2822009-01-10 Eli Zaretskii <eliz@gnu.org>
283
284 Fix Bug #876:
285
286 * coding.c (inhibit_null_byte_detection): New variable.
287 (detect_coding, detect_coding_system): Don't pay attention to null
288 bytes if inhibit_null_byte_detection is non-zero.
289 (syms_of_coding) <inhibit-null-byte-detection>: Declare and
290 document.
291 <inhibit-iso-escape-detection>: Doc fix.
292
4624b6e3
JR
2932009-01-09 Jason Rumney <jasonr@gnu.org>
294
295 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 296 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
297 Only report Unicode Plane 2 fonts as unicode-sip.
298
323b840c
CY
2992009-01-09 Chong Yidong <cyd@stupidchicken.com>
300
301 * xfaces.c (Fx_font_family_list): Function deleted. Compatibility
302 version moved to faces.el.
303
304 * font.c (Ffont_family_list): Return a list of strings, not
305 symbols.
306
eba7400d
MR
3072009-01-09 Martin Rudalics <rudalics@gmx.at>
308
309 * frame.c (x_set_frame_parameters): Remember requested value for
310 fullscreen before it's reset by the parameter handler.
311
4b09796d
GM
3122009-01-09 Glenn Morris <rgm@gnu.org>
313
314 * keyboard.c (last_command_char): For clarity, rename to...
315 (last_command-event): ... and update all users.
316 (last_input_char): For clarity, rename to...
317 (last_input_event): ... and update all users.
318 (last-command-char, last-input-char): Move to subr.el as aliases.
319 * cmds.c, commands.h: Update for last_command_char rename.
320
14ccea62
CY
3212009-01-08 Chong Yidong <cyd@stupidchicken.com>
322
323 * font.c (font_open_for_lface): Handle unspecified height
324 attribute.
325
5f004711
JR
3262009-01-08 Jason Rumney <jasonr@gnu.org>
327
328 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
329 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
330 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
331 Don't declare.
fff4e459 332 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
333 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
334
b71f6f73
KH
3352009-01-07 Kenichi Handa <handa@m17n.org>
336
50b06221 337 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 338 remember the coding system used for decoding in
50b06221
KH
339 coding_system (Bug#1039).
340
b71f6f73 341 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 342 breaking the loop. (Bug#870)
b71f6f73
KH
343 (decode_coding_utf_16, decode_coding_emacs_mule)
344 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
345 (decode_coding_charset): Likewise.
346
56f668f7
MR
3472009-01-05 Martin Rudalics <rudalics@gmx.at>
348
349 * frame.c (x_set_frame_parameters): Make sure height (width) get
350 applied when fullwidth (fullheight) is set. (Bug#1522)
351
5da9424d
JB
3522009-01-04 Juanma Barranquero <lekktu@gmail.com>
353
354 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
355 (utc_base): Declare as ULONGLONG, not long double.
356 (convert_time_raw): Delete.
357 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
358 (initialize_utc_base): New function.
359 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
360 (convert_from_time_t): Use initialize_utc_base; compute result with
361 64-bit arithmetic.
362 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
363
c4605e09
EZ
3642009-01-03 Eli Zaretskii <eliz@gnu.org>
365
9acef61c 366 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
367 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
368 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
369 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
370 [!subprocesses]: Define.
371 (syms_of_process) [!subprocesses]: Intern and staticpro them.
372 (Flist_system_processes, Fsystem_process_attributes)
373 [!subprocesses]: Call list_system_processes and
374 system_process_attributes instead of returning Qnil.
375
9acef61c
JB
376 * dosfns.c (system_process_attributes, list_system_processes):
377 New functions.
c4605e09
EZ
378
379 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
380
381 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
382 Don't use the default (no-op) implementation.
383
8b7d0a16
JR
3842009-01-03 Jason Rumney <jasonr@gnu.org>
385
a6d46bc1
JR
386 * keyboard.c (parse_modifiers_uncached): Wheel events are
387 clicks (bug#687).
388
8b7d0a16
JR
389 * w32term.c (x_query_colors, x_query_color): New functions.
390
391 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
392 (svg_load_image): Cast returned pointers from dynamically loaded
393 functions. Eliminate W32 specific code.
394
bfe11752
DN
3952009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
396
89e2438a
DN
397 * nsfns.m (x_set_foreground_color, x_set_background_color)
398 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
399 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
400 x_ prefix instead of ns_. Update references.
401 (syms_of_nsfns): Add a FIXME comment.
402
403 * nsterm.m (x_set_cursor_type): New prototype.
404 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
405
bfe11752
DN
406 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
407 for Solaris instead of incorrectly providing Qutime and Qcutime.
408
031da700
EZ
4092009-01-02 Eli Zaretskii <eliz@gnu.org>
410
411 * w32.c (process_times): Compute sum of utime and stime.
412 (system_process_attributes): Add Qtime to the alist.
413
414 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
415 and add them to the alist.
416
417 * process.c (top level) <Qtime, Qctime>: New variables.
418 (syms_of_process): staticpro them.
419 (Fsystem_process_attributes): Add their documentation to the doc
420 string.
421
422 * process.h: Declare Qtime and Qctime.
423
df23bf08
JR
4242009-01-02 Jason Rumney <jasonr@gnu.org>
425
9acef61c 426 * image.c (Qgobject): New symbol.
df23bf08
JR
427 (syms_of_image): Initialize it.
428 (init_svg_functions): Load some functions from gobject library.
429
5bbdf7aa
DN
4302009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
431
432 * frame.c (make_terminal_frame): Remove redundant code and useless
433 block.
434
63136da6
AS
4352009-01-01 Andreas Schwab <schwab@suse.de>
436
437 * process.c (conv_sockaddr_to_lisp): Add workaround for
438 getsockname bug on BSD.
439
9ef69046
CY
4402009-01-01 Chong Yidong <cyd@stupidchicken.com>
441
d6fafbe0
CY
442 * xfns.c (x_create_tip_frame): Set border width of the X window.
443
9ef69046
CY
444 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error
445 message.
446
f9c34147
JR
4472009-01-01 Jason Rumney <jasonr@gnu.org>
448
9acef61c 449 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
450 Don't block input, as per earlier xterm.c changes.
451
f5497e45
AR
4522008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
453
454 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
455 (ns_appkit_version_int): New function.
456 (x-server-version): Use ns_appkit_version_int and follow 21+
457 convention of returning 3 integers.
458
c19cab20
KH
4592008-12-30 Kenichi Handa <handa@m17n.org>
460
461 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
462 (CHAR_SURROGATE_PAIR_P): New macro.
463
464 * font.h (struct font_driver): New member get_variation_glyphs.
465
9acef61c 466 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
467 (Ffont_variation_glyphs): New function.
468 (syms_of_font): Defsubr it.
469
470 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
471 ftfont_variation_glyphs.
472 (setup_otf_gstring): New function.
473 (ftfont_drive_otf): Use it.
474 (ftfont_shape_by_flt): Handle variation selector.
475 (ftfont_variation_glyphs): New function.
476
28cd591f
MR
4772008-12-30 Martin Rudalics <rudalics@gmx.at>
478
479 * frame.c (Vemacs_iconified): Remove.
480
7f714baf
JR
4812008-12-30 Jason Rumney <jasonr@gnu.org>
482
483 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 484 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 485
9d2d22ab
CY
4862008-12-30 Chong Yidong <cyd@stupidchicken.com>
487
488 * indent.c (Fvertical_motion): Don't advance iterator if we have
489 reseated to the desired position.
490
491 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
492 checking for pos match.
493
545312c2
KH
4942008-12-30 Kenichi Handa <handa@m17n.org>
495
1ede3eb6
KH
496 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
497 just get the low 8-bit of the code.
498
545312c2
KH
499 * font.c (font_intern_prop): Validate str as multibyte.
500
bd7bbf29
DN
5012008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
502
31e0750e
DN
503 * dispextern.h (struct face): Move lface and hash from the middle
504 of bitfields.
505
bd7bbf29
DN
506 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
507
b5672e7c
DN
5082008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
509
510 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
511 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
512 instead of intervals.h.
513
d704470f
AS
5142008-12-26 Andreas Schwab <schwab@suse.de>
515
516 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
517 cons.
518
54b33868
MR
5192008-12-26 Martin Rudalics <rudalics@gmx.at>
520
521 * textprop.c (Qminibuffer_prompt): New variable.
522 (syms_of_textprop): Initialize it.
523 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
524 in minibuffer-prompt face. (Bug#1662)
525
40b615d6
JR
5262008-12-25 Jason Rumney <jasonr@gnu.org>
527
528 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
529
baae5c2d
JR
5302008-12-24 Jason Rumney <jasonr@gnu.org>
531
532 * ralloc.c (r_alloc_reset_variable): New function.
533
534 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 535 record of what points where. (Bug#716)
baae5c2d 536
a9051c88
DN
5372008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
538
539 * minibuf.c (read_minibuf): Follow the non-interactive case when
540 running as a daemon, before detaching.
541
8b146312
AS
5422008-12-22 Andreas Schwab <schwab@suse.de>
543
544 * buffer.c (init_buffer): Use realloc instead of xrealloc.
545 * gtkutil.c (free_widget_value): Use xfree instead of free.
546
56f2de10
MR
5472008-12-22 Martin Rudalics <rudalics@gmx.at>
548
549 * frame.c (delete_frame): New function derived from
550 Fdelete_frame to handle Qnoelisp value for FORCE argument.
551 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
552 (Fdelete_frame): Call delete_frame. Remove line from doc-string
553 saying that FORCE non-nil doesn't run `delete-frame-functions'.
554 * frame.h: Extern delete_frame.
555 * window.c (window_loop):
556 * terminal.c (delete_terminal):
557 * xterm.c (x_connection_closed):
558 * xfns.c (Fx_hide_tip):
9acef61c 559 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 560
1fc200d6
JR
5612008-12-21 Jason Rumney <jasonr@gnu.org>
562
563 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
564 when character maps to .notdef character.
565
5e252df2
SM
5662008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
567
568 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
569
99b72cc4
JR
5702008-12-20 Jason Rumney <jasonr@gnu.org>
571
572 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 573 a graphical frame on Windows. (Bug#1325)
99b72cc4 574
acc49a52
JD
5752008-12-20 Jan Djärv <jan.h.d@swipnet.se>
576
577 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
578
6ea15123
CY
5792008-12-20 Chong Yidong <cyd@stupidchicken.com>
580
581 * minibuf.c (Fread_buffer): Doc fix.
582
b2dab6c8
JR
5832008-12-20 Jason Rumney <jasonr@gnu.org>
584
54ea0c87 585 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 586 server name in UNC paths. (Bug#719)
54ea0c87 587
b2dab6c8 588 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 589 charbuf. (Bug#1035)
b2dab6c8 590
6d1921be
DN
5912008-12-19 Daniel Engeler <engeler@gmail.com>
592
593 * sysdep.c (serial_configure): Fix typo.
594
53934c98
DN
5952008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
596
597 * sysdep.c: Include alloca.h.
f4f634e8
DN
598 (system_process_attributes): Add implementation for Solaris.
599
600 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 601
06e111a6
DN
6022008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
603
604 Reorganize implementation of Flist_system_processes and
605 Fsystem_process_attributes. No functional changes.
606 * process.c: Don't #include pwd.h, grp.h and limits.h.
607 (Flist_system_processes): Just call list_system_processes.
608 (Fsystem_process_attributes): Just call system_process_attributes.
609 (procfs_list_system_processes, time_from_jiffies)
610 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
611 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
612
613 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
614 (list_system_processes): Rename from
615 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
616 Provide a do nothing implementation.
617 (system_process_attributes): Rename from
618 procfs_list_system_processes.
619 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 620 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
621
622 * w32.c (list_system_processes): Rename from
623 w32_list_system_processes.
624 (system_process_attributes): Rename from
625 w32_system_process_attributes.
626
627 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
628
629 * process.h (w32_list_system_processes)
630 (w32_system_process_attributes): Remove.
631 (list_system_processes, system_process_attributes): New
632 prototypes.
633
6a705b23
KH
6342008-12-19 Kenichi Handa <handa@m17n.org>
635
636 * xfont.c (xfont_decode_coding_xlfd): New function.
637 (xfont_encode_coding_xlfd): New function.
638 (xfont_list_pattern): Decode XLFD by iso-8859-1.
639 (xfont_list): Decode and encode XLFD by iso-8859-1.
640 (xfont_match): Likewise.
641 (xfont_list_family): Likewise.
642 (xfont_open): Likewise.
643
d66c0241 644 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
645 names are utf-8.
646
d66c0241 647 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
648 names are utf-8.
649
5a130941
JD
6502008-12-18 Jan Djärv <jan.h.d@swipnet.se>
651
652 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
653 changed.
bfd20325
JD
654 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
655 clicked on a detached tool bar button.
5a130941 656
fd95644b
DN
6572008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
658
659 * emacs.c (main): Print and error and exit when no data is read
660 from the pipe.
661
e6eee6ae
JR
6622008-12-17 Jason Rumney <jasonr@gnu.org>
663
664 * w32font.c (w32font_has_char): Always return -1.
665
a35dd56b
KH
6662008-12-16 Kenichi Handa <handa@m17n.org>
667
668 * font.c (font_open_entity): Fix previous change.
669
0e3635c2
DN
6702008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
671
672 * process.c: Include <limits.h>.
673
d4835507 6742008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
675
676 * font.c (font_update_drivers): Fix mistake in reconstructing the
677 driver list.
678
6792008-12-16 Chong Yidong <cyd@stupidchicken.com>
680
681 * font.c (font_clear_cache): Fix format of font cache data.
682
e2cbc401
CY
6832008-12-15 Chong Yidong <cyd@stupidchicken.com>
684
685 * xftfont.c (xftfont_open): Free Xft font pattern if
686 XftFontOpenPattern fails.
687
688 * xterm.c (x_free_frame_resources): Remove extraneous call to
689 free_frame_faces.
690
b131d535
CY
6912008-12-13 Chong Yidong <cyd@stupidchicken.com>
692
693 * xterm.c (x_delete_display): Move xim_close_dpy call to
694 x_delete_terminal.
695 (x_delete_terminal): Call xim_close_dpy.
696
e6df5336
JR
6972008-12-13 Jason Rumney <jasonr@gnu.org>
698
699 * w32font.c (intern_font_name): New function.
700 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
701 (w32font_open_internal, Fx_select_font): Decode font name.
702 (fill_in_logfont, list_all_matching_fonts): Encode font name.
703
704 * w32font.h (intern_font_name): Declare new function.
705
706 * w32uniscribe.c (add_opentype_font_name_to_list):
707 Use intern_font_name.
708
20d68145
CY
7092008-12-13 Chong Yidong <cyd@stupidchicken.com>
710
9f2554de
CY
711 * frame.c (Fdelete_frame): Call free_font_driver_list.
712
3d9bec9a
CY
713 * font.c (free_font_driver_list): Implement missing function.
714
20d68145
CY
715 * w32term.c (w32_term_init): Don't initialize the image cache
716 here; it will be done in init_frame_faces.
717
718 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
719 (struct x_display_info): Remove unused member null_pixel. New
720 member xim_callback_data.
721
722 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
723 (xim_initialize): Save pointer to callback function data.
724 (xim_close_dpy): Free callback function data. Call XCloseIM,
725 reverting 2008-11-04 change by David Smith.
726 (x_term_init): Don't initialize the image cache here; it will be
727 done in init_frame_faces. Remove ancient "null_pixel" cruft.
728 (x_delete_display): Free x_dnd_atoms member.
729
96f9306b
KH
7302008-12-13 Kenichi Handa <handa@m17n.org>
731
6dec9044
JB
732 * font.c (font_rescale_ratio): Moved from xfaces.c.
733 Argument type changed. Handle a font-spec too.
96f9306b 734 (font_score): Check Vface_font_rescale_alist.
6dec9044 735 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
736
737 * xfaces.c (font_rescale_ratio): Moved to font.c.
738
8d5b4964
CY
7392008-12-13 Chong Yidong <cyd@stupidchicken.com>
740
741 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
742
e6df5336
JR
7432008-12-12 Jason Rumney <jasonr@gnu.org>
744
745 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
746 Vwindow_system_version to the real w32 major version.
747
97c6058a
DN
7482008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
749
750 * term.c (init_tty): Move setting the terminal name before the
751 potential user: maybe_fatal.
752
ec4e88d7
CY
7532008-12-11 Chong Yidong <cyd@stupidchicken.com>
754
d4835507
JB
755 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
756 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 757
b4233ec9
JR
7582008-12-11 Jason Rumney <jasonr@gnu.org>
759
8ec71e23 760 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 761 SYMBOL_CHARSET. (Bug#547)
8ec71e23 762
b4233ec9 763 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 764 size for surrogates. (Bug#1096, bug#872)
b4233ec9 765
011a0143
JB
7662008-12-11 Juanma Barranquero <lekktu@gmail.com>
767
768 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
769
3c309f34
JB
7702008-12-11 Juanma Barranquero <lekktu@gmail.com>
771
772 * process.c (Fsystem_process_attributes, syms_of_process):
773 Fix typo in name of Ssystem_process_attributes.
774 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
775
fedc6ab5
JB
7762008-12-11 Juanma Barranquero <lekktu@gmail.com>
777
778 * syntax.c (Fmodify_syntax_entry): Doc fix.
779
ba3de0e8
JB
7802008-12-10 Juanma Barranquero <lekktu@gmail.com>
781
782 * font.c (Ffont_spec): Move usage to end of docstring.
783
174f1c74
JR
7842008-12-10 Jason Rumney <jasonr@gnu.org>
785
786 * w32font.c (Qcham): New symbol.
787 (font_supported_scripts): Add cham, and comments for other new
788 scripts in bitfield from OpenType spec.
9d32f818
JR
789 (add_font_entity_to_list): Limit unicode-sip fonts to those that
790 contain characters beyond the bmp.
174f1c74 791
7b649478
KH
7922008-12-10 Kenichi Handa <handa@m17n.org>
793
794 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 795 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
796 Qunicode_sip.
797
2133e2d1
JB
7982008-12-10 Juanma Barranquero <lekktu@gmail.com>
799
800 * coding.c (QCdefault_char): Rename from QCdefalut_char.
801 (Fcoding_system_put): Use QCdefault_char.
802 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
803
9af886ee
CY
8042008-12-09 Chong Yidong <cyd@stupidchicken.com>
805
74d819eb
CY
806 * xftfont.c (syms_of_xftfont): Fix typo.
807
4ccfa1c0 808 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 809
7c19d3ae
DN
8102008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
811
812 * emacs.c (main): Close daemon_pipe on exec.
813
567826bb
CY
8142008-12-08 Chong Yidong <cyd@stupidchicken.com>
815
816 * termchar.h (struct tty): New members termcap_term_buffer and
817 termcap_strings_buffer.
818
819 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 820 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
821 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
822 All callers changed.
823 (init_tty): Store termcap data and string buffers in new struct
824 tty members termcap_term_buffer and termcap_strings_buffer.
825 (delete_tty): Free them.
4ccfa1c0 826 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 827
aa96c42b
SZ
8282008-12-07 Seiji Zenitani <zenitani@mac.com>
829
830 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 831 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 832
b7e1d896
CY
8332008-12-06 Chong Yidong <cyd@stupidchicken.com>
834
835 * coding.c (make_conversion_work_buffer): Disable buffer
836 modification hooks in the work buffer.
837
b5ec91a5
EZ
8382008-12-05 Eli Zaretskii <eliz@gnu.org>
839
840 * process.c (procfs_system_process_attributes): If `nread' has a
841 negative value, assign zero to it.
842
a5d2a52b
CY
8432008-12-05 Chong Yidong <cyd@stupidchicken.com>
844
68c5540b 845 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 846
7bf1bb21
KH
8472008-12-05 Kenichi Handa <handa@m17n.org>
848
849 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
850 second character is a combining character.
851
2fdc7d00
EZ
8522008-12-05 Eli Zaretskii <eliz@gnu.org>
853
854 * process.c (procfs_system_process_attributes): Don't use cmd,
855 cmdsize, and q without initializing them first.
856
bf6bfba8
JR
8572008-12-04 Jason Rumney <jasonr@gnu.org>
858
859 * w32font.c (w32font_draw): Initialize orig_clip before getting
860 it, and delete it when finished.
861
a3b1a468
DN
8622008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
863
864 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
865 case when running as a daemon before detaching.
866
8b8be8eb
JB
8672008-12-03 Juanma Barranquero <lekktu@gmail.com>
868
805f2638 869 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 870
b1bde622
KH
8712008-12-03 Kenichi Handa <handa@m17n.org>
872
e500c47d
KH
873 * font.c (font_at): Set `multibyte' at first.
874
ca516334
KH
875 * coding.c (decode_coding_charset): Check type of an element of
876 vector VALIDS.
7bf1bb21 877 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 878
4ccfa1c0 879 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
880 (font_for_char): Likewise.
881
1e5ecd37
CY
8822008-12-03 Chong Yidong <cyd@stupidchicken.com>
883
d5b01609 884 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
885 (font_update_lface): Handle fonts with corrupted size specs,
886 i.e. non-int and non-float.
d5b01609 887
11e3a6e4 888 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 889 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 890 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 891
ab06788b
CY
892 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
893
1e5ecd37 894 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 895 underline_minimum_offset for underline position.
1e5ecd37 896
63c125ab
DN
8972008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
898
899 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
900
901 * character.c (c_string_width): Specify the type for LEN.
902
3a8406e1
KH
9032008-12-03 Kenichi Handa <handa@m17n.org>
904
4ccfa1c0 905 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 906 (decode_coding_utf_8): Likewise.
4ccfa1c0 907 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 908 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 909
651df7d9
CY
9102008-12-02 Chong Yidong <cyd@stupidchicken.com>
911
912 * keyboard.c (make_lispy_position): Only use PT if the selected
913 window is current.
914
1f625c6c
AS
9152008-12-02 Andreas Schwab <schwab@suse.de>
916
f7741ce9
AS
917 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
918
1f625c6c
AS
919 * doprnt.c (doprnt1): Fix size of charbuf.
920
92bc2678
CY
9212008-12-02 Chong Yidong <cyd@stupidchicken.com>
922
923 * keyboard.c (timer_check): Revert last change.
924
93b9e8cc
JB
9252008-12-02 Juanma Barranquero <lekktu@gmail.com>
926
927 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
928
fd7a37d5
JB
9292008-12-01 Juanma Barranquero <lekktu@gmail.com>
930
931 * makefile.w32-in: Update dependencies.
932 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
933
c115043b
AS
9342008-12-01 Andreas Schwab <schwab@suse.de>
935
936 * font.c (register_font_driver): Use xmalloc.
937 (font_put_frame_data): Likewise.
938
f5668d2a
CY
9392008-12-01 Chong Yidong <cyd@stupidchicken.com>
940
860d96be
CY
941 * xfaces.c (realize_x_face): Make abort condition clearer.
942
f5668d2a
CY
943 * gtkutil.c (update_frame_tool_bar): Initialize variable.
944
379c17e7
CY
9452008-11-30 Chong Yidong <cyd@stupidchicken.com>
946
947 * keyboard.c (timer_check): After a timer runs, ensure that the
948 selected window's buffer is current.
949
35f36d65
JB
9502008-11-30 Juanma Barranquero <lekktu@gmail.com>
951
f952c61c
JB
952 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
953 It was accidentally restored by the Unicode merge.
954
35f36d65
JB
955 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
956
b23077df
JB
9572008-11-29 Juanma Barranquero <lekktu@gmail.com>
958
959 * w32proc.c: Include "coding.h".
960 (Fw32_short_file_name): Encode filename passed to Windows API.
961 (Fw32_long_file_name): Encode filename passed to Windows API and
962 decode back the result. (Bug#1433)
963
b8ebe9dd
KH
9642008-11-29 Kenichi Handa <handa@m17n.org>
965
8cc53f96
KH
966 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
967 not before accessing it.
968
b8ebe9dd
KH
969 * charset.c (Fdefine_charset_internal): After calculating
970 min_char, max_char, and fastmap, copy the charset structure again.
971 (encode_char): Fix the previous change.
972
59bc82c0
SZ
9732008-11-28 Seiji Zenitani <zenitani@mac.com>
974
975 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
976
977 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
978
979 * nsterm.m (x_set_frame_alpha): New function.
980
32247e3d
EZ
9812008-11-27 Eli Zaretskii <eliz@gnu.org>
982
983 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
984
b003e5ff
JB
9852008-11-27 Juanma Barranquero <lekktu@gmail.com>
986
987 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
988 pointer to check_face_name.
989
708550f5
KH
9902008-11-27 Kenichi Handa <handa@m17n.org>
991
992 * category.h (SET_CATEGORY_SET): Call set_category_set.
993 (set_category_set): Extern it.
994
995 * category.c (hash_get_category_set): New function.
996 (Fmodify_category_entry): Adjusted for the change of
997 char_table_ref_and_range. Call hash_get_category_set to get a
998 category set to store in the table.
999
1000 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
1001 Funify_charset.
1002
2ae37cf0 1003 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
1004 (DECODE_CHAR): Check if the decoder vector is ready.
1005 (ENCODE_CHAR): Check if the encoder char-table is ready.
1006 (maybe_unify_char): Extern it.
1007
1008 * charset.c (Vchar_unified_charset_table): Delete it.
1009 (inhibit_load_charset_map): New variable.
1010 (temp_charset_work): New variable.
1011 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
1012 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
1013 New macros.
1014 (load_charset_map): Meaning of control_flag changed. If
1015 inhibit_load_charset_map is nonzero, setup a table in
1016 temp_charset_work.
1017 (load_charset): New argument control_flag.
1018 (map_charset_for_dump): New function.
1019 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
1020 map_charset_for_dump.
1021 (Fdefine_charset_internal): If the charset method is MAP, load
1022 mapping tables by calling load_charset.
1023 (Funify_charset): Don't load a mapping table but directly set
1024 Vchar_unify_table.
1025 (maybe_unify_char): New function.
1026 (decode_char): Don't handle the deleted method MAP_DEFERRED.
1027 Handle the case of inhibit_load_charset_map being nonzero.
1028 (encode_char): Don't handle the deleted method MAP_DEFERRED.
1029 Handle the case of inhibit_load_charset_map being nonzero.
1030 (Fclear_charset_maps): Just free temp_charset_work.
1031 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
1032 variable.
1033
1034 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
1035 change of char_table_ref_and_range.
1036 (char_table_ref_and_range): Change the meaning of argument FROM
1037 and TO. Now the caller must provide initial values for *FROM
1038 and *TO.
1039
1040 * fontset.c (fontset_add): Adjusted for the change of
1041 char_table_ref_and_range.
1042 (fontset_get_font_group): Likewise.
1043 (Ffontset_info): Likewise.
1044
1045 * keymap.c (describe_vector): Adjusted for the change of
1046 char_table_ref_and_range. For char-table, put boundary between
1047 non-ASCII and 8-bit characters.
1048
1049 * print.c (print_object): For bool-vector, delete unnecessary
1050 check of ASCII_BYTE_P.
1051
9196133b
JR
10522008-11-26 Jason Rumney <jasonr@gnu.org>
1053
1054 * w32font.c (w32font_open_internal): Don't include external
9acef61c 1055 leading in font height. (Bug#879)
9196133b 1056
9f688acf
GM
10572008-11-26 Glenn Morris <rgm@gnu.org>
1058
1059 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
1060 redefinition with ifdef. (Bug#1383)
1061
90d19aff
AR
10622008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1063
1064 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
1065
4ccfa1c0 10662008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
1067
1068 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
1069 New EmacsView methods.
1070 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
1071 Fixes bug #1048,1357,1414.
1072
10732008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1074
1075 Fix bug #1362.
1076 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
1077 is not an indexed color.
1078 * nsterm.m (free_indexed_color): Add argument checking.
1079 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
1080
e7d5ecb3
CY
10812008-11-24 Chong Yidong <cyd@stupidchicken.com>
1082
1083 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
1084 Document confirm-after-completion value for
1085 minibuffer-completion-confirm.
1086
c285743c
JR
10872008-11-24 Jason Rumney <jasonr@gnu.org>
1088
1089 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
1090 warning.
1091
b0857706
JR
10922008-11-23 Jason Rumney <jasonr@gnu.org>
1093
1094 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
1095 restored before returning.
1096
1097 * w32font.c (check_face_name): New function.
1098 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 1099 fonts. (Bug#642)
b0857706 1100
ee50ff07
MR
11012008-11-22 Martin Rudalics <rudalics@gmx.at>
1102
1103 * buffer.c (Fswitch_to_buffer): Reword and mention new option
1104 confirm-nonexistent-file-or-buffer in doc-string.
1105
b8ff72fa
SM
11062008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
1107
1108 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
1109 Fix copy/paste typo. Add checks.
1110
cee53ed4
KH
11112008-11-21 Kenichi Handa <handa@m17n.org>
1112
1113 * coding.c (detect_coding_iso_2022): Reject invalid composition
1114 sequence.
1115 (DECODE_COMPOSITION_START): If the current source is the last
1116 block, and the current composition doesn't end, regard this
1117 sequence as invalid.
1118 (decode_coding_iso_2022): Handle invalid composition sequence.
1119
f6ef1e65
MR
11202008-11-20 Martin Rudalics <rudalics@gmx.at>
1121
1122 * window.c (coordinates_in_window): Don't return
1123 ON_VERTICAL_BORDER for the rightmost position of a mode/header
1124 line when the window is not the rightmost one. (Bug#1372)
1125
e08b1705
MR
11262008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
1127
1128 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
1129
ad98e89f
EZ
11302008-11-15 Eli Zaretskii <eliz@gnu.org>
1131
1132 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
1133 and bright_bg if noninteractive is non-zero.
1134
fb098a4b
CY
11352008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1136
1137 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
1138 x_draw_glyph_string_background.
1139
1140 * w32term.c (x_draw_glyph_string): Likewise.
1141
ce952b6e
CY
11422008-11-15 Chong Yidong <cyd@stupidchicken.com>
1143
1144 * xterm.c (x_draw_glyph_string): Stop drawing the background of
1145 the next glyph string once past the overhang width.
1146
1147 * nsterm.m (ns_draw_glyph_string): Likewise.
1148
1149 * w32term.c (x_draw_glyph_string): Likewise.
1150
26ea7079
CY
11512008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
1152
1153 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
1154 double file close.
1155
1c33c906
MR
11562008-11-14 Martin Rudalics <rudalics@gmx.at>
1157
1158 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
1159 dedicated status of window before attempting to display another
1160 buffer in it.
1161
8fc29035
JB
11622008-11-14 Juanma Barranquero <lekktu@gmail.com>
1163
1164 * msdos.c (Fmsdos_long_file_names):
1165 (syms_of_msdos) <dos-unsupported-char-glyph>:
1166 * dosfns.c (Fint86): Fix typos in docstrings.
1167
55fb4286
EZ
11682008-11-14 Eli Zaretskii <eliz@gnu.org>
1169
1170 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
1171
3fda0315
KY
11722008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
1173
1174 * puresize.h (BASE_PURESIZE): Increase to 1260000.
1175
7e849c17
CY
11762008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
1177
1178 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
1179
1180 * frame.h: Negative alpha means "don't touch".
1181
1182 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
1183
1184 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
1185
b9fd67bd
DN
11862008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
1187
1188 * hftctl.c:
1189 * chpdef.h:
1190 * acldef.h: Remove files used only for systems no longer supported.
1191
1192 * Makefile.in: Fix .o alphabetical ordering.
1193 (hftctl.o): Remove dependency, file removed.
1194 (keymap.o, print.o): Depend on charset.h.
1195
d5998e03
KH
11962008-11-10 Kenichi Handa <handa@m17n.org>
1197
2ae37cf0 1198 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 1199
be70e183
CY
12002008-11-08 Chong Yidong <cyd@stupidchicken.com>
1201
1202 * dired.c (file_name_completion): If completion_ignore_case is
1203 enabled, ignore case when checking completion-regexp-list.
1204
7cf94eac
EZ
12052008-11-08 Eli Zaretskii <eliz@gnu.org>
1206
1207 * vm-limit.c (get_lim_data): Fix last change.
1208
ee107a89
KH
12092008-11-08 Kenichi Handa <handa@m17n.org>
1210
1211 * character.c (Fget_byte): New function.
1212 (syms_of_character): Defsubr Fget_byte.
1213
5fd15622
CY
12142008-11-07 Chong Yidong <cyd@stupidchicken.com>
1215
1216 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
1217 cursor position is valid after scrolling.
1218
13d62fad
JB
12192008-11-06 Juanma Barranquero <lekktu@gmail.com>
1220
1221 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
1222
a1dd2936
GM
12232008-11-06 Glenn Morris <rgm@gnu.org>
1224
1225 * xterm.c (handle_one_xevent): Don't let popup menus cause
1226 mouse-autoselect-window related window switching. (Bug#1261)
1227
860cd236
CY
12282008-11-04 David Smith <davidsmith@acm.org> (tiny change)
1229
1230 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
1231
653a3150
AS
12322008-11-04 Andreas Schwab <schwab@suse.de>
1233
1234 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
1235
870f5cac
CY
12362008-11-03 Chong Yidong <cyd@stupidchicken.com>
1237
1238 * xfns.c (Fx_wm_set_size_hint): New function.
1239
1e02f3cb
MR
12402008-11-03 Martin Rudalics <rudalics@gmx.at>
1241
1242 * textprop.c (Fprevious_single_char_property_change): Return 0
1243 when there's no change in a string. (Bug#1301)
1244
e630dfc6
MR
12452008-11-02 Martin Rudalics <rudalics@gmx.at>
1246
1247 * frame.c (do_switch_frame): New argument NORECORD passed to
1248 Fselect_window.
1249 (Fselect_frame): New argument NORECORD passed to
1250 do_switch_frame.
1251 (Fset_frame_selected_window): New argument NORECORD passed to
1252 Fselect_frame.
1253 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
1254 in call of do_switch_frame.
1255 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
1256 Handle NORECORD argument in call of Fselect_frame.
1257 * lisp.h (do_switch_frame, Fselect_frame)
1258 (Fset_frame_selected_window): Adjust declarations.
1259 * window.c (select_frame_norecord): New function.
1260 (run_window_configuration_change_hook): Use it and call
1261 Fselect_frame with NORECORD set.
1262 (Fselect_window): Pass NORECORD to Fselect_frame.
1263 (Fset_window_configuration): Handle NORECORD argument in call of
1264 do_switch_frame.
1265 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
1266 Fset_frame_selected_window.
1267 * keyboard.c (command_loop_1): Handle NORECORD in call of
1268 Fselect_frame (currently ifdefd).
1269
9020b223
GM
12702008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
1271
1272 * emacs.c (USAGE2): Untabify.
1273
793ffee8
SM
12742008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
1275
1276 * composite.c (fill_gstring_header): Fix copy/paste typo.
1277
ab6d1131
MR
12782008-10-31 Martin Rudalics <rudalics@gmx.at>
1279
1280 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
1281 (Fother_window): Rename argument and rewrite doc-string.
1282 (select_window_norecord): Fix return value. (Bug#1276)
1283
601a9cf1
JB
12842008-10-30 Juanma Barranquero <lekktu@gmail.com>
1285
1286 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
1287 new frames overriding foreground for tooltips. Based on similar patch
1288 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
1289
813b0652
CY
12902008-10-29 Chong Yidong <cyd@stupidchicken.com>
1291
1292 * emacs.c (Fdaemon_initialized): Initialize nfd.
1293
4414f58f
MR
12942008-10-29 Martin Rudalics <rudalics@gmx.at>
1295
1296 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
1297 (Fwindow_text_height): Clarify doc-strings.
1298 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
1299 doc-string of window-scroll-functions.
1300
ecdcaa09
RS
13012008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
1302
1303 * category.c (syms_of_category): Fix typo in docstring.
1304
23fe745a
JB
13052008-10-28 Juanma Barranquero <lekktu@gmail.com>
1306
1307 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
1308 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
1309 Fix typos in docstrings.
1310
ff808935
DN
13112008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
1312
1313 * emacs.c (daemon_pipe): Make non-static.
1314 (IS_DAEMON): Move definition ...
1315 * lisp.h (IS_DAEMON): ... here.
1316 (daemon_pipe): Declare.
1317 (is_daemon): Remove.
1318 * dispnew.c (init_display): Use IS_DAEMON.
1319
fc012771
SM
13202008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
1321
1322 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
1323 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
1324
1325 * emacs.c (is_daemon): Remove.
1326 (main): Don't set is_daemon.
1327 (IS_DAEMON): New macro.
1328 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 1329 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
1330 parent exits.
1331 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
1332
d8bdbe6f
CY
13332008-10-27 Chong Yidong <cyd@stupidchicken.com>
1334
d1a072bf
CY
1335 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
1336 over-sized glyph, draw it with the default glyph width.
1337
e2e325aa
CY
1338 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
1339 glyph, draw it with the default glyph width.
1340
1341 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
1342 glyph, draw it with the default glyph width.
1343
d8bdbe6f
CY
1344 * xdisp.c (try_scrolling): When computing the distance from the
1345 scroll margin to PT, try moving some distance past the window
1346 bottom before giving up.
1347
7bfac547
MR
13482008-10-27 Martin Rudalics <rudalics@gmx.at>
1349
1350 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
1351 (Fset_window_buffer): Explain in doc-string that a window can be
1352 "strongly" dedicated to its buffer.
1353
4ff029f6
DN
13542008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
1355
1356 * emacs.c (daemon_name): New variable.
1357 (main): Deal with --daemon=SERVER_NAME.
1358 (Fdaemonp): Return a name if one was passed to --daemon.
1359
5790ef40
DN
13602008-10-26 Romain Francoise <romain@orebokech.com>
1361
f9bd0df9 1362 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
1363 (main): Create a pipe before forking, make the parent exit only after
1364 the child has closed its end of the pipe. Move closing the
1365 descriptors ...
1366 (Fdaemon_initialized): ... here. New function.
1367
f5385255
SM
13682008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
1369
4d632321
SM
1370 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
1371 the previous unoptimized table.
1372
f5385255
SM
1373 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
1374 the distinction between non-nil and non-t value of `dedicated'.
1375
6c56a0f3
CY
13762008-10-25 Chong Yidong <cyd@stupidchicken.com>
1377
1378 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 1379 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 1380
fec89261
MR
13812008-10-25 Martin Rudalics <rudalics@gmx.at>
1382
1383 * window.c (Fget_buffer_window, Fdelete_windows_on)
1384 (Freplace_buffer_in_windows): Make buffer argument optional and
1385 rename to buffer_or_name.
1386
34fcddd0
CY
13872008-10-24 Chong Yidong <cyd@stupidchicken.com>
1388
f5385255
SM
1389 * xdisp.c (handle_single_display_spec, handle_display_prop):
1390 Undo 2005-05-16 change.
34fcddd0
CY
1391 (handle_stop): Pop iterator if it's loaded with an empty string.
1392 (get_overlay_strings_1): Don't save iterator if it's loaded with
1393 an empty string (bug#1201).
1394
064766f2
KH
13952008-10-24 Kenichi Handa <handa@m17n.org>
1396
1397 * ftfont.c (ftfont_otf_features): Fix previous change.
1398 (ftfont_otf_capability): Check FeatureList.FeatureCount before
1399 calling ftfont_otf_features.
1400
f9bd0df9 14012008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
1402
1403 * font.c (font_match_p): Fix for the case that a vector of
1404 characters is in script-representative-chars.
1405
1dae9197
MA
14062008-10-24 Michael Albinus <michael.albinus@gmx.de>
1407
1408 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 1409 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
1410 (xd_read_queued_messages): Catch Qdbus_error from the macros.
1411 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
1412 macro. (Bug#1186).
1413
f9bd0df9 14142008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
1415
1416 * s/sol2-10.h: New file.
1417
878a4584
JB
14182008-10-23 Juanma Barranquero <lekktu@gmail.com>
1419
1420 * xdisp.c (fill_glyph_string): Fix typo in source (though the
1421 poor beast has survived 9+ years and the jump from xterm.c!).
1422
cd265ca6
MR
14232008-10-23 Martin Rudalics <rudalics@gmx.at>
1424
1425 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
1426 Reword doc-string.
f5385255 1427 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 1428
472a4dc9
JB
14292008-10-23 Juanma Barranquero <lekktu@gmail.com>
1430
1431 * character.c (syms_of_character) <script-representative-chars>:
1432 <unicode-category-table>: Doc fixes.
1433
159bd5a2
NF
14342008-10-23 Noah Friedman <friedman@splode.com>
1435
1436 * coding.c (make_conversion_work_buffer): Check that
1437 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
1438 Fget_buffer_create.
1439
49f9c344
KH
14402008-10-23 Kenichi Handa <handa@m17n.org>
1441
1442 * font.c (font_add_log): Check the values of extra properties.
1443
12bb3111
MR
14442008-10-22 Martin Rudalics <rudalics@gmx.at>
1445
1446 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
1447 Reword doc-string.
1448 (Fset_window_parameter): Use NILP.
1449 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 1450 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 1451
bbeb4e99
JB
14522008-10-22 Juanma Barranquero <lekktu@gmail.com>
1453
1454 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
1455
14562008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
1457
1458 * nsfns.m (ns_appkit_version): New function.
1459 (x-server-version): Use it.
1460 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
1461 (x-server-vendor): Don't check_ns().
1462
1463 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
1464
a9b555d3
JB
14652008-10-22 Juanma Barranquero <lekktu@gmail.com>
1466
1467 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
1468 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
1469
4626499f
KH
14702008-10-22 Kenichi Handa <handa@m17n.org>
1471
e3681952
KH
1472 * syntax.c (scan_words): Call word_boundary_p instead of comparing
1473 scripts.
1474
4626499f
KH
1475 * category.c (word_boundary_p): Check scripts instead of charset.
1476 Handle nil value in word-separating-categories and
1477 word-combining-categories.
1478 (syms_of_category): Fix docstrings of word-separating-categories
1479 and word-combining-categories.
1480
1560f91a
EZ
14812008-10-21 Eli Zaretskii <eliz@gnu.org>
1482
1483 * coding.c (Fencode_coding_region, Fdecode_coding_region)
1484 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
1485
f4668441
MR
14862008-10-21 Martin Rudalics <rudalics@gmx.at>
1487
1488 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
1489 Rename arg "buffer" to "buffer_or_name".
1490 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
1491 it optional.
1492 (no_switch_window): Remove since the return value is not used.
a9b555d3 1493 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
1494 Consider window as dedicated when Fwindow_dedicated_p returns a
1495 non-nil value.
1496 * lisp.h: Remove prototype for no_switch_window.
1497
fd75ddb2
JD
14982008-10-21 Jan Djärv <jan.h.d@swipnet.se>
1499
1500 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 1501 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 1502
07295713
KH
15032008-10-21 Kenichi Handa <handa@m17n.org>
1504
1505 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
1506 check Vlatin_extra_code_table.
1507
712adc82
EZ
15082008-10-20 Eli Zaretskii <eliz@gnu.org>
1509
1510 * fileio.c (Fset_file_modes): Doc fix.
1511
f549eb0b
MA
15122008-10-19 Michael Albinus <michael.albinus@gmx.de>
1513
1514 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
1515 in arrays.
1516
aac0c6e3
MR
15172008-10-19 Martin Rudalics <rudalics@gmx.at>
1518
1519 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
1520 Mention kill-buffer in doc-string.
1521 (Fset_window_buffer): Reinsert tem check removed in last commit.
1522 (Fenlarge_window, Fshrink_window): Have argument names and
1523 doc-string follow Elisp manual more closely.
1524
15252008-10-18 Eli Zaretskii <eliz@gnu.org>
1526
1527 * fileio.c (Fset_file_modes): Doc fix.
1528
15292008-10-18 Martin Rudalics <rudalics@gmx.at>
1530
1531 * window.c (Fwindow_width, Fset_window_start)
1532 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
1533 (Fdelete_windows_on, Freplace_buffer_in_windows):
1534 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
1535 (Fwindow_dedicated_p): Make window argument optional.
1536 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
1537 (Fset_window_buffer): Respect any non-nil dedicated value for
1538 window. Rename "buffer" argument to "buffer_or_name".
1539
15402008-10-18 Ulrich Mueller <ulm@gentoo.org>
1541
1542 * m/sh3.h: New file, machine description for SuperH.
1543
15442008-10-17 Martin Rudalics <rudalics@gmx.at>
1545
1546 * window.c (Fsplit_window): Rename arg horflag to horizontal.
1547
15482008-10-17 Kenichi Handa <handa@m17n.org>
1549
1550 * ftfont.c (ftfont_otf_features): Fix indexing
1551 gsub_gpos->FeatureList.Feature. Check the validity of indices.
1552
15532008-10-16 Magnus Henoch <mange@freemail.hu>
1554
1555 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
1556 (Fdbus_call_method_asynchronously): Ditto.
1557 This change makes C-h f display the argument list.
1558
15592008-10-16 Chong Yidong <cyd@stupidchicken.com>
1560
1561 * fileio.c (Fexpand_file_name): Doc fix.
1562
1563 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
1564 of :foreground and :background equivalent to unspecified (20.x
1565 compatibility).
1566
15672008-10-15 Eli Zaretskii <eliz@gnu.org>
1568
1569 * buffer.c (syms_of_buffer): Doc fix.
1570
15712008-10-14 Kenichi Handa <handa@m17n.org>
1572
1573 * font.c (font_clear_prop): When clearing font width, clear the
1574 average width field too.
1575
15762008-10-12 Andreas Schwab <schwab@suse.de>
1577
1578 * ftfont.c (ftfont_shape_by_flt): Make static.
1579 * ftfont.h (ftfont_shape_by_flt): Don't declare.
1580
1581 * font.c: Don't include <m17n-flt.h>.
1582
15832008-10-10 Eli Zaretskii <eliz@gnu.org>
1584
1585 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
1586
15872008-10-09 Eli Zaretskii <eliz@gnu.org>
1588
1589 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
1590 away code.
1591
15922008-10-09 Chong Yidong <cyd@stupidchicken.com>
1593
1594 * dispnew.c (update_text_area): Avoid looping due to large glyph
1595 overhangs (bug#1070).
1596
15972008-10-09 Kenichi Handa <handa@m17n.org>
1598
1599 * fontset.c (face_for_char): If face->fontset is negative, just
1600 return ascii_face.
1601
f5385255
SM
1602 * font.c (font_delete_unmatched): Fix previous change.
1603 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
1604
16052008-10-09 Martin Rudalics <rudalics@gmx.at>
1606
1607 * frame.c (Fraise_frame): On text-only terminals select frame in
1608 order to make it visible. (Bug#1061)
1609
16102008-10-08 Chong Yidong <cyd@stupidchicken.com>
1611
1612 * fontset.c (fontset_find_font): Check frame validity.
1613
16142008-10-07 Chong Yidong <cyd@stupidchicken.com>
1615
a9b555d3 1616 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
1617 (xg_display_close): Allow Emacs to close all displays (bug#985).
1618
16192008-10-06 Andreas Schwab <schwab@suse.de>
1620
f5385255 1621 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
1622
16232008-10-06 Chong Yidong <cyd@stupidchicken.com>
1624
f5385255 1625 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 1626
a9b555d3 1627 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
1628
1629 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
1630 during initialization.
1631
16322008-10-04 Eli Zaretskii <eliz@gnu.org>
1633
1634 * xdisp.c (redisplay_internal): If frame switched, redisplay the
1635 whole thing on MSDOS frames as well as on a TTY.
1636
1637 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
1638 well as for TTY.
1639 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
1640 well as on a TTY.
1641
1642 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
1643 as well as for TTY.
1644
1645 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
1646
1647 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
1648 MSDOS frames as well.
1649
16502008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1651
1652 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
1653 correct arguments.
1654 * menu.c (find_and_return_menu_selection) Add cast.
1655
16562008-10-03 Glenn Morris <rgm@gnu.org>
1657
1658 * emacs.c (USAGE1): Add --daemon.
1659
16602008-10-02 Eli Zaretskii <eliz@gnu.org>
1661
1662 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
1663 100, so it's in percents as advertised.
1664
16652008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1666
1667 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
1668 (ns_output.current_cursor, ns_output.desired_cursor)
1669 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
1670 (FRAME_NEW_CURSOR_COLOR): Remove.
1671
1672 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 1673 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
1674 enumeration (HOLLOW_BOX_CURSOR, etc.).
1675
1676 * nsterm.m (ns_frame_rehighlight): Remove commented code.
1677 (draw_window_cursor): Simplify code.
f5385255
SM
1678 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
1679 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 1680 updates manually.
a9b555d3
JB
1681 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
1682 Use core Emacs cursor types.
aac0c6e3 1683
b8ff72fa 1684 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
1685
16862008-10-02 Martin Rudalics <rudalics@gmx.at>
1687
1688 * process.c (Faccept_process_output): Fix doc-string.
1689
16902008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
1691
1692 * gmalloc.c (__sbrk): Also define for uClibc.
1693
1694 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
1695 for uClibc.
1696
16972008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1698
1699 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
1700 styles.
1701 (nsfont_open): Reenable the cache.
1702
17032008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1704
1705 * font.c (font_matching_entity): Reflect ATTRS in font selection.
1706 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
1707
17082008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
1709
1710 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
1711 a suspended terminal.
1712
17132008-09-30 Michael Albinus <michael.albinus@gmx.de>
1714
1715 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
1716
17172008-09-30 Eli Zaretskii <eliz@gnu.org>
1718
1719 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
1720
17212008-09-30 Chong Yidong <cyd@stupidchicken.com>
1722
1723 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
1724 in a continued line coincides with a line beginning.
1725
17262008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1727
1728 * nsfont.m (nsfont_trait_distance): Fix bug.
1729 (nsfont_list): Return a list rather than a vector (syncs with Handa
1730 changes of 2008-05-14).
1731 (nsfont_open): Improve logging.
1732
17332008-09-29 Andreas Schwab <schwab@suse.de>
1734
1735 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1736
17372008-09-28 Martin Rudalics <rudalics@gmx.at>
1738
1739 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
1740 name as char-resolve-modifiers.
1741 Reported by: Markus Triska <markus.triska@gmx.at>
1742
17432008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
1744
1745 * dispnew.c (init_display): Return earlier when running as a daemon.
1746
17472008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1748
1749 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
1750
17512008-09-27 Eli Zaretskii <eliz@gnu.org>
1752
1753 * composite.c (Fcomposition_get_gstring)
1754 (Fcompose_region_internal, Fcompose_string_internal)
1755 (Ffind_composition_internal): Doc fix.
1756 (syms_of_composite) <compose-chars-after-function>: Doc fix.
1757 (syms_of_composite) <auto-composition-function>: Doc fix.
1758 (syms_of_composite) <composition-function-table>: Doc fix.
1759
17602008-09-25 Chong Yidong <cyd@stupidchicken.com>
1761
1762 * search.c (wordify): New argument for lax word-ends.
1763 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
1764
17652008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
1766
1767 * lisp.h (is_daemon): Declare.
1768 * dispnew.c (init_display): Do not try to initialize the terminal
1769 when running as a daemon.
1770
17712008-09-22 Chong Yidong <cyd@stupidchicken.com>
1772
1773 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
1774 x_display_pixel_height.
1775
17762008-09-22 Martin Rudalics <rudalics@gmx.at>
1777
1778 * undo.c (record_point): Don't call Fundo_boundary for first
1779 change. (Bug#731)
1780
17812008-09-22 Juanma Barranquero <lekktu@gmail.com>
1782
1783 * emacs.c (Fdaemonp): Doc fix.
1784
17852008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
1786
1787 * emacs.c (main): Place #ifdef in the proper place.
1788
17892008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
1790
1791 * emacs.c (standard_args): Add --daemon.
1792 (main): Disconnect from the terminal when --daemon is passed.
1793 (is_daemon): New variable.
1794 (Fdaemonp): New function.
1795 (syms_of_emacs): Defsubr it.
1796
17972008-09-20 Chong Yidong <cyd@stupidchicken.com>
1798
1799 * xdisp.c (get_next_display_element): Handle string display
1800 correctly when checking for the end of a box run.
1801
18022008-09-20 Glenn Morris <rgm@gnu.org>
1803
1804 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
1805 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
1806 (Frename_file): Avoid copying to trash if a rename involves
1807 a delete. (Bug#964).
1808
18092008-09-20 Eli Zaretskii <eliz@gnu.org>
1810
1811 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
1812 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
1813 frames as well as termcap frames.
1814 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
1815 get_named_tty.
1816
18172008-09-19 Eli Zaretskii <eliz@gnu.org>
1818
1819 * process.c (procfs_system_process_attributes): Fix cmdline in
1820 case /proc/PID/cmdline is empty.
1821
1822 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
1823 x_display_pixel_height.
1824
18252008-09-19 Juanma Barranquero <lekktu@gmail.com>
1826
1827 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
1828
1829 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
1830 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
1831
18322008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
1833
1834 * dispextern.h (struct it): Move line_wrap away from the middle of
1835 bitfields. Move voffset in struct iterator_stack_entry after the
1836 bitfields. Move tab_width near after another short.
1837
18382008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
1839
1840 * frame.h (struct frame): Move alpha from the middle of bitfields.
1841
1842 * window.h (struct window): Move frozen_window_start_p after the
1843 rest of the bitfields to reduce padding.
1844
18452008-09-18 Chong Yidong <cyd@stupidchicken.com>
1846
1847 * xterm.h (x_display_info): Remove `height' and `width' members.
1848
1849 * nsterm.h (ns_display_info): Remove `height' and `width' members.
1850
1851 * w32term.h (w32_display_info): Remove `height', `width',
1852 `height_in', and `width_in' members.
1853
b8ff72fa
SM
1854 * xterm.c (x_display_pixel_height, x_display_pixel_width):
1855 New functions.
aac0c6e3
MR
1856 (x_calc_absolute_position): Use them.
1857 (x_term_init): Omit removed `height' and `width' members.
1858
b8ff72fa
SM
1859 * w32term.c (x_display_pixel_height, x_display_pixel_width):
1860 New functions.
aac0c6e3
MR
1861 (w32_read_socket, x_calc_absolute_position): Use them.
1862 (w32_initialize_display_info, w32_term_init): Omit removed members
1863 of w32_display_info.
1864
b8ff72fa
SM
1865 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
1866 New functions.
1867 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 1868
b8ff72fa
SM
1869 * xterm.c (x_display_pixel_height, x_display_pixel_width):
1870 New functions.
aac0c6e3
MR
1871 (x_calc_absolute_position): Use them.
1872 (x_term_init): Omit removed `height' and `width' members.
1873
1874 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
1875 (compute_tip_xy):
1876 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
1877 * xmenu.c (menu_position_func): Use x_display_pixel_height and
1878 x_display_pixel_width.
1879
18802008-09-18 Kenichi Handa <handa@m17n.org>
1881
1882 * composite.c (fill_gstring_header): Don't check FROM and TO here.
1883 (composition_compute_stop_pos): Fix handling of static composition.
1884 (Fcomposition_get_gstring): Check FROM and TO at first.
1885
18862008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1887
1888 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Oject
1889 mixup (YAILOM).
1890
18912008-09-17 Chong Yidong <cyd@stupidchicken.com>
1892
1893 * indent.c (Fvertical_motion): Use position reported by iterator
1894 instead of PT for determining screen motion (bug#943).
1895
18962008-09-17 Romain Francoise <romain@orebokech.com>
1897
1898 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
1899
19002008-09-17 Kenichi Handa <handa@m17n.org>
1901
1902 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
1903
1904 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
1905 if necessary.
1906
19072008-09-16 Kenichi Handa <handa@m17n.org>
1908
1909 * coding.c (make_conversion_work_buffer): Avoid calling
1910 Fget_buffer_create if it is not necessary.
1911
19122008-09-15 Martin Rudalics <rudalics@gmx.at>
1913
1914 * window.c (Fselect_window): Don't update window_select_count and
1915 use_time when norecord is not nil.
1916
19172008-09-14 Kenichi Handa <handa@m17n.org>
1918
1919 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
1920 specpdl_ptr.
1921
19222008-09-12 Kenichi Handa <handa@m17n.org>
1923
1924 * indent.c (scan_for_column): Don't handle automatic composition
1925 if the current buffer is not associated with a window.
1926
1927 * composite.c (composition_reseat_it): If the current buffer is
1928 not associated with a window, ignore the automatic composition.
1929 (find_automatic_composition): Likewise.
1930
19312008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1932
1933 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
1934 (Fgpm_mouse_stop): Use it.
1935 * termhooks.h (close_gpm): Declare.
1936 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
1937 connection if Gpm_GetEvent fails.
1938
1939 * window.c (set_window_buffer): Always preserve current-buffer.
1940
19412008-09-12 Glenn Morris <rgm@gnu.org>
1942
1943 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
1944
19452008-09-11 Glenn Morris <rgm@gnu.org>
1946
1947 * charset.c (charset-map-path): Doc fix.
1948
19492008-09-10 Kenichi Handa <handa@m17n.org>
1950
1951 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
1952
1953 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
1954 compose a grapheme cluster with the preceding base glyph.
1955
1956 * composite.c (composition_compute_stop_pos): Fix previous change.
1957 Reset cmp_it->id to -1 at first.
1958
19592008-09-10 Glenn Morris <rgm@gnu.org>
1960
1961 * Makefile.in (character.o, chartab.o): Fix config.h typo.
1962
19632008-09-09 Chong Yidong <cyd@stupidchicken.com>
1964
1965 * keyboard.c (read_key_sequence): Reapply translation maps when
1966 switching keyboards.
1967
19682008-09-09 Kenichi Handa <handa@m17n.org>
1969
1970 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
1971 characters.
1972
1973 * composite.c (FORWARD_CHAR): Fix calculation
1974 of (POSITION).pos_byte.
1975 (composition_compute_stop_pos): Limit the search of composition to
1976 at most 500 characters ahead. If we reach the limit or find a
1977 newline, set cmp_it->ch to -2 and return 0.
1978 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
1979
19802008-09-08 Kenichi Handa <handa@m17n.org>
1981
1982 * indent.c (Fvertical_motion): Be sure to set
1983 it_overshoot_expected if it.cmp_it.id is non-negative.
1984
19852008-09-07 Andreas Schwab <schwab@suse.de>
1986
1987 * callproc.c (Fcall_process): Don't hold references to string data
1988 across garbage collection. Move initialisation of new_argv down
1989 to avoid compiler bug.
1990
19912008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
1992
1993 * process.c (Fsystem_process_attributes): Doc fix.
1994
19952008-09-07 Chong Yidong <cyd@stupidchicken.com>
1996
1997 * callproc.c (Fcall_process): Canonicalize current directory name.
1998
1999 * xdisp.c (move_it_to): When moving by vpos, ensure that the
2000 iterator advances to the next line if the current line ends in a
2001 continued tab.
2002
20032008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
2004
2005 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
2006 member to point to cmp_from.
2007
2008 * xdisp.c: Doc fix for references to gidx data member.
2009
20102008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
2011
2012 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
2013
20142008-09-07 Kenichi Handa <handa@m17n.org>
2015
2016 * composite.c (FORWARD_CHAR): Check STOP after
2017 incrementing (POSITION).pos.
2018
20192008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
2020
2021 * process.c (Fsystem_process_attributes): Doc fix.
2022
20232008-09-06 Chong Yidong <cyd@stupidchicken.com>
2024
2025 * keyboard.c (Ftop_level): Doc fix.
2026
20272008-09-06 Eli Zaretskii <eliz@gnu.org>
2028
2029 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
2030 minibuffer, don't let lower part of menu invade the echo area.
2031
2032 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
2033 "char *q" to access menu text and advance through it. Revert the
2034 change that displayed ">" instead of ASCII character 0x10.
2035
20362008-09-05 Eli Zaretskii <eliz@gnu.org>
2037
2038 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
2039 toggle boxes and radio buttons on MS-DOS as well.
2040
20412008-09-05 Kenichi Handa <handa@m17n.org>
2042
2043 * composite.c (autocmp_chars): Check lookback count.
2044 (composition_compute_stop_pos): Set cmp_it->lookback.
2045 (composition_reseat_it): Check lookback count.
2046 (struct position_record): New struct.
2047 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
2048 (find_automatic_composition): New function.
2049 (composition_adjust_point): Use find_automatic_composition.
2050
2051 * dispextern.h (struct composition_it): New member lookback.
2052
20532008-09-02 Chong Yidong <cyd@stupidchicken.com>
2054
2055 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
2056 if moving by a single line.
2057
20582008-09-02 Andreas Schwab <schwab@suse.de>
2059
2060 * xterm.c (x_delete_display): Fix merge error.
2061
2062 * fileio.c (Fexpand_file_name): Remove unused variables.
2063
20642008-09-02 Eli Zaretskii <eliz@gnu.org>
2065
2066 * fileio.c (Fexpand_file_name): Copy argument `name' into local
2067 storage on all platforms, not just on DOS_NT.
2068
20692008-09-02 Jason Rumney <jasonr@gnu.org>
2070
b8ff72fa
SM
2071 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
2072 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
2073
20742008-09-01 Chong Yidong <cyd@stupidchicken.com>
2075
2076 * xfaces.c (Finternal_set_alternative_font_family_alist)
2077 (Finternal_set_alternative_font_registry_alist): Properly copy
2078 entire alist structure.
2079
20802008-09-01 Kenichi Handa <handa@m17n.org>
2081
d66c0241 2082 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 2083 representative chars of the script is a vector.
d66c0241
JB
2084 (ftfont_list): Handle the case where the representative chars of
2085 the script is a vector.
aac0c6e3
MR
2086
2087 * character.c (syms_of_character): Docstring of
2088 script-representative-chars fixed.
2089
20902008-08-31 Eli Zaretskii <eliz@gnu.org>
2091
2092 * msdos.c (BUILD_CHAR_GLYPH): New macro.
2093 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
2094 the menu. Allocate larger buffer for `text', to account for
2095 possible ^C characters.
2096
20972008-08-31 Martin Rudalics <rudalics@gmx.at>
2098
2099 * xdisp.c (prepare_menu_bars): Don't call
2100 Vwindow_size_change_functions with arg Qt.
2101
21022008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
2103
2104 * font.h (font_range):
2105 * fileio.c (report_file_error):
2106 * composite.c (composition_update_it): Yet another int/Lisp_Oject mixup.
2107
21082008-08-30 Glenn Morris <rgm@gnu.org>
2109
2110 * data.c (Fmake_variable_frame_local): Doc fix.
2111
2112 * frame.c (Fmodify_frame_parameters): Doc fix.
2113
21142008-08-30 Eli Zaretskii <eliz@gnu.org>
2115
2116 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
2117 needed by GetTokenInformation.
2118 (w32_system_process_attributes): Check return values of all system
2119 APIs.
2120
2121 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
2122 only when the state changes.
2123 (IT_update_begin, IT_update_end): Add termscript trace.
2124
2125 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
2126 clipboard is unavailable. Set dst to NULL if it doesn't point to
2127 malloc'ed data.
2128 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
2129 passing random values to xfree.
2130
2131 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 2132 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
2133
21342008-08-29 Jason Rumney <jasonr@gnu.org>
2135
2136 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
2137
21382008-08-29 Eli Zaretskii <eliz@gnu.org>
2139
2140 * composite.c (fill_gstring_body): Avoid compiler warnings.
2141
2142 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
2143 LGLYPH_SET_CODE to avoid compiler warnings.
2144
2ae37cf0 2145 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
2146
2147 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
2148
2149 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
2150 LGLYPH_SET_CODE.
2151
21522008-08-29 Kenichi Handa <handa@m17n.org>
2153
2154 * fileio.c (report_file_error): Don't downcase the first character
2155 of errstring if it is still unibyte.
2156
21572008-08-29 Kenichi Handa <handa@m17n.org>
2158
2159 These changes are to re-implement the automatic composition so
2160 that it doesn't use text properties.
2161
2162 * Makefile.in (ftfont.o): Depend on composite.h.
2163 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
2164
2165 * character.h (Vunicode_category_table): Extern it.
2166
2167 * character.c (Vunicode_category_table): New variable.
2168 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
2169
2170 * chartab.c (optimize_sub_char_table): Perform more greedy
2171 optimization.
2172
b8ff72fa
SM
2173 * composite.h (enum composition_method):
2174 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
2175 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
2176 (Vcomposition_function_table): Extern it.
2177 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
2178 (composition_gstring_put_cache, composition_gstring_from_id)
2179 (composition_gstring_p, composition_gstring_width)
2180 (composition_compute_stop_pos, composition_reseat_it)
2181 (composition_update_it, composition_adjust_point): Extern them.
2182 (Fcomposition_get_gstring): EXFUN it.
2183
d66c0241 2184 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
2185 (Vcomposition_function_table)
2186 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
2187 (gstring_hash_table, gstring_work, gstring_work_headers):
2188 New variables.
aac0c6e3
MR
2189 (gstring_lookup_cache, composition_gstring_put_cache)
2190 (composition_gstring_from_id, composition_gstring_p)
2191 (composition_gstring_width, fill_gstring_header)
2192 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
2193 (composition_reseat_it, composition_update_it)
b8ff72fa 2194 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
2195 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
2196 and gstring_work_headers. DEFVAR_LISP composition-function-table.
2197 Defsubr compostion_get_gstring.
2198
2199 * dispextern.h (struct glyph): New union u.cmp. Delete the member
2200 cmp_id.
2201 (struct glyph_string): Delete the member gidx. New members
2202 cmp_id, cmp_from, and cmp_to.
2203 (enum it_method): Delete GET_FROM_COMPOSITION.
2204 (struct composition_it): New struct.
2205 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
2206 Delete c, len, cmp_id, cmp_len in u.comp.
2207
2208 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 2209 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 2210 (enum lglyph_indices): Likewise.
b8ff72fa 2211 (font_range): Adjust extern.
aac0c6e3
MR
2212 (font_fill_lglyph_metrics): Extern it.
2213
2214 * font.c (QCf): New variable.
2215 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
2216 (font_prepare_composition): Delete this function.
2217 (font_range): Type and arguments changed.
2218 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
2219 (font_fill_lglyph_metrics): New function.
b8ff72fa 2220 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 2221 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
2222 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
2223 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
2224
2225 * fontset.h (font_for_char): Extern it.
2226
2227 * fontset.c (font_for_char): New function.
2228
2229 * ftfont.c: Include composite.h.
2230 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 2231 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
2232
2233 * indent.c: Include composite.h and dispextern.h.
2234 (check_composition): Delete this function.
2235 (scan_for_column): Handle composition by
2236 composition_compute_stop_pos, composition_reseat_it, and
2237 composition_update_it.
2238 (compute_motion): Likewise.
2239 (Fvertical_motion): Fix checking of composition.
2240
2241 * keyboard.c (adjust_point_for_property): Check composition by
2242 composition_adjust_point.
2243
b8ff72fa 2244 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
2245 struct glyph_string.
2246
b8ff72fa
SM
2247 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
2248 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
2249 struct glyph.
2250 (produce_composite_glyph): Likewise.
2251
b8ff72fa
SM
2252 * w32term.c (x_draw_composite_glyph_string_foreground):
2253 Adjust for the change of struct glyph_string.
aac0c6e3
MR
2254 (x_draw_glyph_string): Likewise.
2255
2256 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
2257 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
2258
2259 * xdisp.c: Include font.h.
2260 (it_props): Delete the entry for Qauto_composed.
2261 (init_iterator): Initialize it->cmp_it.id to -1.
2262 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 2263 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
2264 (handle_auto_composed_prop): Delete it.
2265 (handle_composition_prop): Handle only static composition.
2266 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
2267 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 2268 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
2269 (pop_it): Likewise.
2270 (get_next_element): Delete next_element_from_composition.
2271 (CHAR_COMPOSED_P): New macro.
2272 (get_next_display_element): For automatic composition, get a face
2273 from the font in the glyph-string.
2274 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 2275 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
2276 (next_element_from_string): Check if the character at the current
2277 position is composed by CHAR_COMPOSED_P.
2278 (next_element_from_buffer): Likewise.
d66c0241
JB
2279 (next_element_from_composition): Adjust for the change of struct it.
2280 Update it->cmp_it.
b8ff72fa
SM
2281 (dump_glyph): Adjust for the change of struct glyph.
2282 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
2283 it and struct glyph. Don't handle automatic composition here.
2284 (fill_gstring_glyph_string): New function.
2285 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 2286 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
2287 (BUILD_GSTRING_GLYPH_STRING): New macro.
2288 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
2289 automatic composition.
b8ff72fa 2290 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 2291 struct glyph.
b8ff72fa 2292 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 2293
b8ff72fa 2294 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
2295 the change of struct glyph_string.
2296 (x_draw_glyph_string): Likewise.
2297
22982008-08-29 Glenn Morris <rgm@gnu.org>
2299
2300 * buffer.c (word-wrap): Doc fix.
2301 * xdisp.c (truncate-partial-width-windows): Doc fix.
2302 Increase default to 50.
2303
23042008-08-29 Chong Yidong <cyd@stupidchicken.com>
2305
2306 * xdisp.c (update_tool_bar_unwind): New function.
2307 (update_tool_bar): Temporarily set selected frame before building
2308 tool-bar items.
2309
23102008-08-28 Michael Albinus <michael.albinus@gmx.de>
2311
2312 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
2313 snprintf, respectively.
2314 (xd_append_arg): Convert strings with Fstring_make_unibyte.
2315
23162008-08-28 Chong Yidong <cyd@stupidchicken.com>
2317
2318 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
2319 LDFLAGS to GNUstep CC invocation.
2320
23212008-08-27 Chong Yidong <cyd@stupidchicken.com>
2322
2323 * indent.c (Fvertical_motion): Revert last change. Handle the
2324 general case where we are moving forward, and PT spans multiple
2325 screen lines.
2326
2327 * eval.c (find_handler_clause): Temporarily increase
2328 max-lisp-eval-depth while printing the backtrace buffer, to
2329 guarantee that help-mode code can run.
2330
23312008-08-27 Eli Zaretskii <eliz@gnu.org>
2332
2333 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
2334 colors under -rv.
2335 (IT_set_frame_parameters): Don't swap foreground and background
2336 colors if `(reverse . t)' is present in the frame properties.
2337 (internal_terminal_init): Call init_frame_faces only for the
2338 initial frame.
2339
23402008-08-27 Andreas Schwab <schwab@suse.de>
2341
2342 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
2343
23442008-08-27 Andreas Schwab <schwab@suse.de>
2345
2346 * search.c (search_buffer): Set char_base to zero only at the end.
2347
23482008-08-27 Kenichi Handa <handa@m17n.org>
2349
b8ff72fa 2350 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
2351
23522008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
2353
2354 * xterm.c (x_term_init): Temporarily hide the partially
2355 initialized terminal while calling vendor-specific-keysyms.
2356
23572008-08-26 Eli Zaretskii <eliz@gnu.org>
2358
2359 * msdos.c (internal_terminal_init): Most initializations done only
2360 once, especially initial_screen_colors[] and termscript open.
2361
23622008-08-26 Chong Yidong <cyd@stupidchicken.com>
2363
2364 * eval.c (Fcondition_case): Doc fix.
2365
2366 * widgetprv.h (EmacsFramePart): Change font member to the new font
2367 struct.
2368
2369 * widget.c: Include character.h and font.h for XSETFONT.
2370 (setup_frame_gcs): Compute X font id from font struct, just once.
2371
23722008-08-26 Eli Zaretskii <eliz@gnu.org>
2373
2374 * term.c (get_named_tty): Fix last change.
2375
23762008-08-26 Chong Yidong <cyd@stupidchicken.com>
2377
2378 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 2379 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
2380
23812008-08-25 Eli Zaretskii <eliz@gnu.org>
2382
2383 * frame.c (do_switch_frame): Mark previously displayed frame as
2384 obscured for FRAME_MSDOS_P frames as well.
2385
23862008-08-24 Eli Zaretskii <eliz@gnu.org>
2387
2388 * frame.c (make_terminal_frame): Initialize f->terminal,
2389 f->terminal->reference_count, and scroll bars on MS-DOS as well.
2390 Set the top frame to newly created frame.
2391 (Fmake_terminal_frame): Reuse the_only_display_info.
2392
2393 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
2394 estimating available memory.
2395
b97439ce 23962008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
2397
2398 * nsterm.m (ns_draw_window_cursor): Don't call
2399 NSDisableScreenUpdates and NSEnableScreenUpdates on
2400 non-NS_IMPL_COCOA systems.
2401
24022008-08-23 Andreas Schwab <schwab@suse.de>
2403
2404 * process.c (procfs_system_process_attributes): Fix use of
2405 uninitialized variables.
2406
24072008-08-23 Eli Zaretskii <eliz@gnu.org>
2408
2409 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
2410
2411 * dispnew.c (init_display): Remove MS-DOS specific conditions for
2412 calling tty-set-up-initial-frame-faces.
2413
b8ff72fa
SM
2414 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
2415 Allow MSDOS frames along with X frames.
aac0c6e3
MR
2416
2417 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
2418 addition to output_termcap.
2419
2420 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
2421
2422 * termchar.h (FRAME_TTY): Support output_msdos_raw.
2423 (struct tty_display_info) [MSDOS]: Add fields related to mouse
2424 highlight.
2425
2426 * process.c [!subprocesses]: Define QCname.
2427 (syms_of_process): Intern and staticpro it.
2428
2429 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
2430 Adjust for changes in encoding/decoding routines.
2431 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
2432 encode_coding and decode_coding.
2433
b8ff72fa 2434 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
2435
2436 * dosfns.c: Include frame.h before termhooks.h.
2437 (dos_cleanup): Use CURTTY ()->termscript instead of a global
2438 variable termscript.
2439
2440 * s/msdos.h (USER_FULL_NAME): Define.
2441 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
2442
2443 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
2444 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
2445 pw->pw_gecos.
2446
2447 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
2448 SELECTED_FRAME as additional (1st) argument.
2449 (tty_read_avail_input): Handle output_msdos_raw in
2450 addition to output_termcap.
2451
2452 * msdos.c: Include frame.h before termhooks.h.
2453 (mouse_on, mouse_off, mouse_moveto, mouse_init)
2454 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
2455 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
2456 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
2457 (IT_set_terminal_modes, IT_reset_terminal_modes)
2458 (IT_set_frame_parameters): Use tty->termscript instead of a global
2459 variable termscript.
2460 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
2461 global variable terminal_coding. Don't refer to
2462 Vnonascii_translation_table.
2463 (internal_terminal_init): Set Vwindow_system in current_kboard.
2464 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
2465 Announce date and time of session start, if termscript is open.
2466 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
2467 term.c:init_tty). Open termscript only of not already open.
2468 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
2469 here instead of dos_ttraw. Don't initialize display if this is an
2470 initial tty. Don't set FRAME_FONT.
2471 (Vwindow_system_version): Bump to 23.
2472 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
2473 is available, set up mouse_position_hook.
2474 (dos_ttraw, IT_set_terminal_modes): If called with initial
2475 terminal, do nothing.
2476 (IT_set_frame_parameters): Handle the Qtty_type frame
2477 parameter by calling internal_terminal_init.
2478 (dos_set_window_size, show_mouse_face)
2479 (clear_mouse_face, IT_note_mode_line_highlight)
2480 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
2481 (dos_rawgetc): Use tty_display_info instead of x_display_info.
2482 (initialize_msdos_display): New function.
2483 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
2484 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
2485 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
2486 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 2487 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
2488 (request_sigio, unrequest_sigio): Don't define, now defined on
2489 sysdep.c.
2490 (IT_write_glyphs): Rewrite to use encode_terminal_code.
2491
2492 * term.c [MSDOS]: Include msdos.h.
2493 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
2494 conditional to DOS_NT. Allow only one call to this function in a
2495 session. Don't allocate a new struct tty_display_info; instead,
2496 reuse the_only_display_info. Call get_tty_size to get screen
2497 dimensions. Call init_baud_rate to set bad_rate.
2498 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
2499 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 2500 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
2501 (get_tty_terminal, get_named_tty, Ftty_type)
2502 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
2503 output_termcap.
b8ff72fa
SM
2504 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
2505 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 2506 only when subprocesses are supported.
aac0c6e3
MR
2507
2508 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
2509 f->output_data.x.
2510 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
2511 terminal devices.
2512
5582fbc7 2513 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
2514 x_output.
2515 (FRAME_FONT): Use output_data.tty.
2516 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
2517 (struct x_display_info): Rename from display_info. Update all users in
2518 msdos.c.
aac0c6e3 2519 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 2520 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
2521 (dos_ttraw): Update prototype.
2522
2523 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
2524 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
2525
25262008-08-23 Jason Rumney <jasonr@gnu.org>
2527
2528 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
2529 (fn_TIFFSetDirectory): New library function used.
2530 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
2531 (tiff_load): Use :index to select among multiple images. Set count
2532 property when multiple images exist.
2533 (gif_format): Use :index, not :image.
2534
25352008-08-23 Chong Yidong <cyd@stupidchicken.com>
2536
2537 * xdisp.c (try_scrolling): Check INT_MAX instead of
2538 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
2539 to obtain INT_MAX.
2540
25412008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
2542
2543 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
2544
25452008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
2546
2547 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
2548 GNUstep library location.
2549
25502008-08-21 Chong Yidong <cyd@stupidchicken.com>
2551
2552 * xfaces.c (x_update_menu_appearance): Check validity of menu font
2553 before using it.
2554
2555 * puresize.h (BASE_PURESIZE): Increase to 1250000.
2556
25572008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2558
2559 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
2560 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
2561 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
2562 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
2563 (EmacsApp-cursor_blink_handler): Remove declaration.
2564 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
2565 match 01 Feb 2008 changes in xterm.c.
2566 (ns_read_socket): Add cast to avoid warning.
2567 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
2568 GNUstep.
2569
25702008-08-20 Chong Yidong <cyd@stupidchicken.com>
2571
2572 * xselect.c (x_get_foreign_selection): Return nil if desired
2573 selection could not be obtained, instead of signalling an error.
2574
25752008-08-20 David Reitter <david.reitter@gmail.com>
2576
2577 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
2578 * nsterm.m: Remove ns-specific code for cursor blinking.
2579 (ns_draw_window_cursor): Clear cursor properly rather than
2580 redrawing the area. Respect width of bar cursors.
2581 These changes enable the use of generic blink-cursor-mode and
2582 generic cursor types in NS and support smooth cursor movements (do
2583 not blink off after command).
2584 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
2585 Nextstep, too.
2586
25872008-08-19 Kenichi Handa <handa@m17n.org>
2588
2589 * font.c (Vfont_log_deferred): New variable.
2590 (font_add_log): Check Vfont_log_deferred.
2591 (font_deferred_log): New function.
2592
2593 * font.h (font_deferred_log): Extern it.
2594
2595 * fontset.c (reorder_font_vector): Use encoding charset of fonts
2596 for sorting.
2597 (face_for_char): Use deferred log.
2598
25992008-08-18 Kenichi Handa <handa@m17n.org>
2600
2601 * fontset.c (face_for_char): Add font log.
2602
2603 * font.c (font_add_log): Add the font properties :script, :lang,
2604 and :otf in the log.
2605
26062008-08-17 Chong Yidong <cyd@stupidchicken.com>
2607
2608 * xdisp.c: Remove dead code.
2609 (handle_invisible_prop, next_overlay_string): Defer call to
2610 setup_for_ellipsis.
2611 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
2612
26132008-08-15 Chong Yidong <cyd@stupidchicken.com>
2614
2615 * xfaces.c (lookup_derived_face): Properly handle possible zero
2616 return value of get_lface_attributes.
2617 (merge_faces): Don't tell lookup_derived_face to signal an error
2618 if face is not found.
2619
2620 * dired.c (Fdirectory_files): Doc fix.
2621
2622 * process.c (make_process): Initialize kill_without_query struct
2623 member.
2624
26252008-08-15 Eli Zaretskii <eliz@gnu.org>
2626
2627 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
2628 Alternative calculation of totphys for Visual Studio 6.
2629
2630 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
2631
2632 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
2633 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
2634 All users changed.
2635 (stat): Only root directory passed to GetDriveType. Allow RAM
2636 disk as well as local fixed disk when w32-get-true-file-attributes
2637 is set to `local'.
2638 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
2639 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
2640 (w32_cached_id, w32_add_to_cache): New functions.
2641 (get_name_and_id): Look account names in the cache before calling
2642 lookup_account_sid.
2643 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
2644 New initialization flags.
2645 (globals_of_w32): Initialize them to zero.
2646 (w32_system_process_attributes): Use w32_cached_id and
2647 w32_add_to_cache.
2648
26492008-08-14 Lawrence Mitchell <wence@gmx.li>
2650
2651 * lread.c (Fread_char, Fread_char_exclusive): If no character
2652 event is read before timeout is reached, return nil, rather than
2653 converting to a number.
2654
26552008-08-14 Chong Yidong <cyd@stupidchicken.com>
2656
2657 * fns.c (use_dialog_box): Doc fix.
2658
2659 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
2660 on OS X.
2661
26622008-08-13 Chong Yidong <cyd@stupidchicken.com>
2663
2664 * frame.c (Qns_parse_geometry): New var.
2665 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
2666
26672008-08-11 Chong Yidong <cyd@stupidchicken.com>
2668
2669 * xdisp.c (x_produce_glyphs): Handle the case when font has no
2670 space character in calculating tabs.
2671
26722008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
2673
2674 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
2675
26762008-08-10 Glenn Morris <rgm@gnu.org>
2677
2678 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
2679 silence gcc "limited range of data type" warnings in some
2680 make_fixnum_or_float calls.
2681
26822008-08-09 Eli Zaretskii <eliz@gnu.org>
2683
2684 * w32.c (w32_system_process_attributes): If the process does not
2685 exist, return nil.
2686
2687 * w32.c: Include thelp32.h, psapi.h and coding.h.
2688 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
2689 declarations.
2690 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
2691 (Process32Next_Proc): New typedefs.
2692 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
2693 (g_b_init_process32_next, g_b_init_open_thread_token)
2694 (g_b_init_impersonate_self, g_b_init_revert_to_self)
2695 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
2696 (g_b_init_get_process_working_set_size)
2697 (g_b_init_global_memory_status_ex): New static variables.
2698 (globals_of_w32): Initialize them.
2699 (create_toolhelp32_snapshot, process32_first, process32_next)
2700 (open_thread_token, impersonate_self, revert_to_self)
2701 (get_process_memory_info, get_process_working_set_size)
2702 (global_memory_status, global_memory_status_ex): New wrapper
2703 functions.
2704 (w32_list_system_processes, w32_system_process_attributes)
2705 (enable_privilege, restore_privilege, ltime, process_times):
2706 New functions.
2707 (convert_time_raw): New function.
2708 (convert_time): Remove conversion of FILETIME into time in 100
2709 nsec units, call convert_time_raw instead.
2710
2711 * process.h (w32_list_system_processes, w32_system_process_attributes):
2712 Add prototypes.
2713 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
2714 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
2715 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
2716 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
2717
2718 * process.c (Fsystem_process_attributes): Doc fix.
2719
27202008-08-08 Chong Yidong <cyd@stupidchicken.com>
2721
2722 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
2723 a continued multi-char glyph; if so, advance to the actual glyph.
2724
27252008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
2726
2727 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
2728
2729 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
2730 (.m.o): Use it.
2731 * config.in: Regenerate.
2732
27332008-08-07 Chong Yidong <cyd@stupidchicken.com>
2734
2735 * xdisp.c (redisplay_window): Revert last change.
2736 (try_window): Check bottom scroll margin too.
2737
27382008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2739
2740 * config.in: Regenerate.
2741
2742 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
2743 -list-load-path-shadows'.
2744 (nsgui.h): Reduce number of things depending on it.
2745
27462008-08-06 Chong Yidong <cyd@stupidchicken.com>
2747
2748 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
2749 instead of window-end which does the wrong thing at eob.
2750 (try_cursor_movement): Minor optimization.
2751 (redisplay_window): If scroll margin is defined, don't assume
2752 window doesn't need scrolling.
2753
27542008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2755
2756 * config.in: Regenerate.
2757
2758 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
2759 (mostlyclean): Don't delete *.d under NS.
2760
2761 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
2762
27632008-08-06 Kenichi Handa <handa@m17n.org>
2764
2765 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
2766
27672008-08-06 Andreas Schwab <schwab@suse.de>
2768
2769 * config.in: Regenerate.
2770
27712008-08-05 Chong Yidong <cyd@stupidchicken.com>
2772
2773 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
2774 forcing a window start.
2775
2776 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
2777 (auto_save_1): Update modtime when auto-save-list-file-name is on.
2778
27792008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2780
2781 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
2782 argument.
2783
27842008-08-05 Juanma Barranquero <lekktu@gmail.com>
2785
2786 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
2787 <scroll-down-aggressively, before-change-functions>:
2788 <after-change-functions>: Reflow docstrings.
2789
27902008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2791 Ken Raeburn <raeburn@gnu.org>
2792
2793 Dock menu customization, based on a patch by Ken Raeburn, plus some
2794 other fixes.
2795 * nsmenu.m (dockMenu): New variable.
2796 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
2797
2798 * nsterm.h (dockMenu): Declare.
2799
2800 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
2801 (ns_term_init): Initialize dockMenu.
2802 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
2803 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
2804 left.
2805
2806 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
2807
28082008-08-04 Chong Yidong <cyd@stupidchicken.com>
2809
2810 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
2811
2812 * config.in: Regenerate.
2813
28142008-08-04 Seiji Zenitani <zenitani@mac.com>
2815
2816 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
2817
28182008-08-04 Chong Yidong <cyd@stupidchicken.com>
2819
2820 * nsterm.h (find_and_call_menu_selection): Fix prototype.
2821
28222008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2823
2824 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
2825
2826 * keyboard.h: Comment an #endif.
2827
2828 * lisp.h (have_menus_p): Adjust comment.
2829
2830 * menu.c (find_and_return_menu_selection): Fix comparison with
2831 client_data.
2832
2833 * nsmenu.m (popup_activated_flag): New variable.
2834 (popup_activated): New function.
2835 (menu-or-popup-active-p): New exported lisp definition.
2836 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
2837 when popup done.
2838 (ns_popup_dialog): Set popup_activated_flag.
2839
2840 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
2841 version for GNUstep (handled by conditional typedef in nsterm.m).
2842 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
2843 in rgb.txt).
2844
2845 * process.c (init_process): Use DARWIN_OS, not DARWIN.
2846
2847 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
2848
2849 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
2850
2851 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
2852 shortcircuit if popup_activated like GTK and X toolkit.
2853
2854 * m/inter386.h: Change DARWIN to DARWIN_OS.
2855
2856 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
2857 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
2858 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
2859 comment on NO_SOCK_SIGIO.
2860
28612008-08-03 Chong Yidong <cyd@stupidchicken.com>
2862
2863 * nsterm.m (windowDidResize): Remove stopModal call.
2864
28652008-08-03 Andreas Schwab <schwab@suse.de>
2866
2867 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
2868 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
2869
28702008-08-02 Chong Yidong <cyd@stupidchicken.com>
2871
2872 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
2873 Don't use uninitialized pointer variable when using getrlimit.
2874
28752008-08-02 Jason Rumney <jasonr@gnu.org>
2876
2877 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
2878
28792008-08-02 Eli Zaretskii <eliz@gnu.org>
2880
2881 * alloc.c (NSTATICS): Bump to 0x640.
2882
2883 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
2884
2885 * lisp.h: Add prototype for directory_files_internal.
2886
2887 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
2888 New functions.
2889 (syms_of_process): Defsubr them. Add initializations for various
2890 Q* symbols used in procfs_system_process_attributes.
2891 (procfs_list_system_processes, procfs_system_process_attributes)
2892 [HAVE_PROCFS]: New functions.
2893 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
2894 (procfs_get_total_memory): New functions.
2895
28962008-08-01 Juanma Barranquero <lekktu@gmail.com>
2897
2898 * xfaces.c (Fx_load_color_file): Fix previous change;
2899 it is #ifdef WINDOWSNT, not WINDOWS_NT.
2900
29012008-08-01 Michael Albinus <michael.albinus@gmx.de>
2902
2903 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
2904
29052008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2906
2907 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
2908
29092008-08-01 Chong Yidong <cyd@stupidchicken.com>
2910
2911 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
2912
2913 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
2914 define NSApplicationDelegateReplySuccess.
2915 (EmacsView -converstationIdentifier): Use long instead of
2916 NSInteger for GNUstep, since it doesn't have NSInteger.
2917
2918 * xmenu.c: Revert last change.
2919
2920 * keyboard.h: Fix last change.
2921
29222008-08-01 Juanma Barranquero <lekktu@gmail.com>
2923
2924 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
2925 on Windows.
2926
29272008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2928
2929 Warning clearing and clean-up in NS port.
2930 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
2931 Add prototypes.
2932 * nsgui.h (FACE_DEFAULT): Remove, unused.
2933 (XGCValues): Change colors to unsigned long.
2934 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
2935 nsterm.m.
2936 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
2937 (ns_list_fonts): Remove, unused.
2938 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
2939 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
2940 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
2941 (nsfont_draw): Compare face colors to 0, not nil.
2942 * nsmenu.m (struct widget_value): Drop unneeded declaration.
2943 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
2944 (-addSubmenuWithTitle:): Use NSMenuItem class.
2945 (ns_popup_menu): Use NO, not NULL, for enabled setting.
2946 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
2947 (ns_clip_to_row): Make gc arg a BOOL.
2948 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
2949 ns_clip_to_row() call.
2950 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
2951 used). Cast FRAME_FONT assignments.
2952 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
2953 (ns_string_to_lispmod): Change arg to const char.
2954 (ns_term_init): Use NSMenuItem class.
2955 (EmacsApp -openFile:): Move to different section of file.
2956 (EmacsApp -application:openFiles:): Don't return a value, call
2957 -replyToOpenOrPrint:.
2958 (EmacsView -keyDown:): Fix up cast.
2959 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
2960 (EmacsView -menuDown:): Cast tag in call to
2961 find_and_call_menu_selection().
2962 (ns_list_fonts): Remove, unused.
2963 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
2964 (ns_fontname_to_xlfd): Make static.
2965 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
2966 Remove prototypes (now in keyboard.h).
2967 (next_menubar_widget_id): Remove, unused.
2968 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
2969 Remove prototypes (now in keyboard.h).
2970 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
2971
29722008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
2973
2974 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
2975 (floatfns.o): Depend on syssignal.h.
2976 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
2977
2978 * systty.h: Fix previous change that removed BSD_TERMIOS.
2979 Add comments to #ifdefs.
2980
29812008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2982
2983 * w32fns.c (w32-load-color-file): Remove.
2984 (x-open-connection): Use renamed Fx_load_color_file.
2985 * xfaces.c (x-load-color-file): Add.
2986 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
2987 Emacs.clr.
2988 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
2989
29902008-07-31 Michael Albinus <michael.albinus@gmx.de>
2991
2992 * dbusbind.c (Fdbus_call_method_asynchronously)
2993 (Fdbus_method_error_internal): New defuns.
2994 (xd_read_message): Handle also reply messages.
2995 (Vdbus_registered_functions_table): Extend docstring.
2996
29972008-07-31 Juanma Barranquero <lekktu@gmail.com>
2998
2999 * keyboard.c (gobble_input): Fix previous change.
3000
30012008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
3002
3003 * bitmaps/README:
3004 * xfns.c:
3005 * termcap.c:
3006 * term.c:
3007 * syswait.h:
3008 * systty.h:
3009 * systime.h:
3010 * syssignal.h:
3011 * sysdep.c:
3012 * process.h:
3013 * process.c:
3014 * print.c:
3015 * ndir.h:
3016 * lread.c:
3017 * keyboard.c:
3018 * getpagesize.h:
3019 * floatfns.c:
3020 * fileio.c:
3021 * emacs.c:
3022 * doc.c:
3023 * dispnew.c:
3024 * dired.c:
3025 * data.c:
3026 * callproc.c:
3027 * buffer.c:
3028 * README:
3029 * Makefile.in:
3030 * s/template.h:
3031 * s/msdos.h:
3032 * m/vax.h: Remove VMS support.
3033 * s/vms.h:
3034 * vlimit.h:
3035 * uaf.h:
3036 * temacs.opt:
3037 * param.h:
3038 * ioctl.h: Remove file.
3039
30402008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
3041
3042 * s/ms-w32.h (MULTI_KBOARD): Remove.
3043 * xterm.c:
3044 * xselect.c:
3045 * xfns.c:
3046 * window.c:
3047 * w32term.c:
3048 * w32fns.c:
3049 * terminal.c:
3050 * termhooks.h:
3051 * term.c:
3052 * sysdep.c:
3053 * keyboard.h:
3054 * keyboard.c:
3055 * frame.h:
3056 * frame.c:
3057 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
3058 * config.in: Regenerate.
3059
30602008-07-30 Jason Rumney <jasonr@gnu.org>
3061
3062 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
3063
3064 * w32font.c (w32font_encode_char): Leave as unicode if in range.
3065 (w32font_open_internal): Get unicode version of textmetrics.
3066 Don't enable or disable glyph indices here.
3067 (w32font_open): Disable use of glyph indices.
3068
3069 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
3070
30712008-07-30 Chong Yidong <cyd@stupidchicken.com>
3072
3073 * minibuf.c (Vread_buffer_function): Doc fix.
3074
30752008-07-30 John Paul Wallington <jpw@pobox.com>
3076
3077 * minibuf.c (read_buffer_completion_ignore_case): New var.
3078 (Fread_buffer): Use it.
3079
30802008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
3081
3082 * systty.h (sensemode): Remove empty #if. Remove reference to
3083 BSD_TERMIOS, unused.
3084
3085 * sysdep.c: Remove reference to DGUX.
3086 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
3087
3088 * config.in: Regenerate.
3089
30902008-07-30 Jason Rumney <jasonr@gnu.org>
3091
3092 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
3093
30942008-07-29 Jason Rumney <jasonr@gnu.org>
3095
3096 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
3097 is populated.
3098 (uniscribe_encode_char): Always use uniscribe.
3099 Avoid using context if cache is populated.
3100
31012008-07-29 Jan Djärv <jan.h.d@swipnet.se>
3102
3103 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
3104 open menu.
3105
3106 * gtkutil.c (menu_nav_ended): Remove.
3107 (create_menus): Remove signal connect for menu_nav_ended.
3108
31092008-07-28 Chong Yidong <cyd@stupidchicken.com>
3110
3111 * xdisp.c (redisplay_window): Check return value of
3112 compute_window_start_on_continuation_line before forcing a window
3113 start.
3114
31152008-07-28 Jason Rumney <jasonr@gnu.org>
3116
3117 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
3118
3119 * w32term.c (w32_enable_unicode_output, cleartype_active):
3120 Remove obsolete display options.
3121 (x_draw_glyph_string_background): Don't use old cleartype_active
3122 workaround.
3123 (w32_initialize): Remove cleartype_active initialization.
3124 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
3125
31262008-07-28 Andreas Schwab <schwab@suse.de>
3127
3128 * lisp.h (init_weak_hash_tables, syms_of_font)
3129 (xd_read_queued_messages, syms_of_dbusbind): Declare.
3130 (remove_hash_entry): Don't declare.
3131 * eval.c (maybe_call_debugger): Make static and move before use.
3132 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
3133 * xdisp.c: Include "gtkutil.h" if USE_GTK.
3134 * xterm.h (x_set_frame_alpha): Declare.
3135
31362008-07-28 Jan Djärv <jan.h.d@swipnet.se>
3137
3138 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
3139 (create_menus): Connect selection-done to menu_nav_ended.
3140
31412008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3142
3143 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
3144 Set Vx_resource_name to a fallback. Replace read of 'buffered'
3145 parameter with read of 'alpha' one.
3146 (Qns_frame_parameter): Remove.
5582fbc7 3147 * nsselect.m (selection-coding-system)
aac0c6e3
MR
3148 (next-selection-coding-system, Vselection_coding_system)
3149 (Vnext_selection_coding_system): Drop.
3150
31512008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3152
3153 * nsfns.m (do-applescript, do_applescript): Rename to
3154 ns-do-applescript, ns_do_applescript, and move within file.
3155
31562008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
3157
3158 Remove support for Mac Carbon.
3159 * mactoolbox.c:
3160 * macterm.h:
3161 * macterm.c:
3162 * macselect.c:
3163 * macmenu.c:
3164 * macgui.h:
3165 * macfns.c:
3166 * mac.c: Remove file.
3167 * s/darwin.h:
3168 * m/intel386.h:
3169 * xfaces.c:
3170 * xdisp.c:
3171 * window.c:
3172 * tparam.c:
3173 * termhooks.h:
3174 * termcap.c:
3175 * term.c:
3176 * syssignal.h:
3177 * sysselect.h:
3178 * sysdep.c:
3179 * process.c:
3180 * lread.c:
3181 * lisp.h:
3182 * keyboard.c:
3183 * image.c:
3184 * fringe.c:
3185 * frame.h:
3186 * frame.c:
3187 * fontset.c:
3188 * font.h:
3189 * font.c:
3190 * fns.c:
3191 * fileio.c:
3192 * emacs.c:
3193 * dispnew.c:
3194 * dispextern.h:
3195 * config.in:
3196 * atimer.c:
2ae37cf0 3197 * Makefile.in: Remove code for Carbon.
aac0c6e3 3198
f0131492 31992008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
3200
3201 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
3202
32032008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3204
3205 * macterm.h (kCGBitmapByteOrder32Host): New define for
3206 non-universal SDKs.
3207
3208 * image.c (mac_create_cg_image_from_image, image_load_image_io)
3209 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
3210
3211 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
3212 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
3213
32142008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
3215
3216 * w32inevt.c: Include dispextern.h.
3217
32182008-07-26 Andreas Schwab <schwab@suse.de>
3219
3220 * print.c (print_object): Fix off-by-one in last change.
3221
32222008-07-25 Juanma Barranquero <lekktu@gmail.com>
3223
3224 * term.c (syms_of_term): Don't initialize default_orig_pair,
3225 default_set_foreground and default_set_background on Windows.
3226
32272008-07-25 Jason Rumney <jasonr@gnu.org>
3228
3229 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
3230 ScriptItemize. Clean up return value checking. Remove unused
3231 variables.
3232 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
3233 shaping engine.
3234
3235 * w32font.c (w32font_has_char): Handle the case where we can't
3236 determine the script for a character.
3237
32382008-07-25 Chong Yidong <cyd@stupidchicken.com>
3239
3240 * term.c (syms_of_term): Initialize default_orig_pair,
3241 default_set_foreground, and default_set_background.
3242
3243 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
3244 clash (bug#86).
3245 (getloadavg): Callers changed.
3246
3247 * image.c (svg_load_image): Fix last change.
3248 (svg_load_image): Use rsvg_handle_get_dimensions to check that
3249 image size is valid. Use g_object_unref instead of deprecated
3250 rsvg_handle_free to free rsvg handle.
3251 (x_from_xcolors): Don't initialize pixmap (silence compiler).
3252
32532008-07-25 Jason Rumney <jasonr@gnu.org>
3254
3255 * w32font.c (w32font_encode_char): Encode characters outside BMP as
3256 surrogates before looking up glyph index.
3257 (w32font_text_extents): Encode as surrogates if falling back to
3258 functions that need UTF-16 wide chars.
3259
3260 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
3261 BMP as surrogates before looking up glyph index.
3262
32632008-07-25 Chong Yidong <cyd@stupidchicken.com>
3264
3265 * image.c (svg_load_image): Check for failure in return value of
3266 rsvg_handle_get_pixbuf. Free rsvg handle when done.
3267
32682008-07-25 Jason Rumney <jasonr@gnu.org>
3269
3270 * w32font.c (Fx_select_font): Reverse sense of second arg.
3271
32722008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
3273
3274 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
3275 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
3276
3277 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
3278 (PURESIZE): Use it.
3279
32802008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
3281
3282 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
3283 * m/alpha.h (TEXT_END):
3284 * m/ibmrs6000.h (TEXT_END):
3285 * m/macppc.h (TEXT_END):
3286 * s/darwin.h (TEXT_END):
3287 * s/msdos.h (TEXT_END): Remove, unused.
3288 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
3289 * s/cygwin.h: Remove comment.
3290
3291 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
3292 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
3293 * m/intel386.h (DOT_GLOBAL_START):
3294 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
3295 (USG): Remove, file not used on USG platforms.
3296
3297 * Makefile.in (HAVE_X11): Remove empty #else.
3298
32992008-07-24 Andreas Schwab <schwab@suse.de>
3300
3301 * fileio.c (Finsert_file_contents): Properly adjust undo list
3302 after format conversion.
3303
33042008-07-24 Jan Djärv <jan.h.d@swipnet.se>
3305
3306 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
3307 (menu_nav_ended): Remove.
3308 (create_menus): Remove signal connect for menu_nav_ended.
3309 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
3310 create_menus.
3311 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
3312
33132008-07-23 Jason Rumney <jasonr@gnu.org>
3314
3315 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
3316 with opened font.
3317 (w32font_open): Set font type to gdi.
3318
3319 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
3320
33212008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
3322
3323 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
3324 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
3325 defines it.
3326 * unexec.c (ADDR_CORRECT): Define unconditionally.
3327
3328 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
3329
3330 * unexec.c: Remove code depending on !COFF and USG, the file is
3331 not used for such systems.
3332
3333 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
3334 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
3335 (LD_SWITCH_SYSTEM_1): Remove, update users.
3336
3337 * s/darwin.h (DATA_END):
3338 * m/intel386.h (DATA_END):
3339 * m/ibmrs6000.h (DATA_END):
3340 * m/alpha.h (DATA_END): Remove, unused.
3341
3342 * config.in: Regenerate.
3343 * s/ms-w32.h (subprocesses): Define unconditionally.
3344 * s/template.h (subprocesses): Update comment.
3345 * s/vms.h (subprocesses):
3346 * s/usg5-4.h (subprocesses):
3347 * s/hpux10-20.h (subprocesses):
3348 * s/gnu-linux.h (subprocesses):
3349 * s/cygwin.h (subprocesses):
3350 * s/bsd-common.h (subprocesses):
3351 * s/aix4-2.h (subprocesses):
3352 * s/darwin.h (subprocesses): Do not define, defined by default now.
3353
3354 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
3355 Remove all references.
3356 (temacs): Add GNUstep specific ld flags.
3357
3358 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
3359 similarly to what X does.
3360
33612008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3362
3363 * nsfns.m (x-list-fonts): Remove.
3364 (syms_of_nsfns): Drop the x-list-fonts declaration.
3365 * nsterm.m: Get rid of remaining "//" comments.
3366
33672008-07-22 Chong Yidong <cyd@stupidchicken.com>
3368
3369 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
3370
3371 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
3372 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
3373 (Fns_own_selection_internal, Fx_disown_selection_internal)
3374 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
3375
3376 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
3377 ... */' style of docstrings. Doc fixes.
3378
33792008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
3380
3381 * terminfo.c (UP, BC, PC): Undo previous change.
3382
3383 * nsfns.m: Rename ns prefixed functions/variables to the
3384 corresponding x versions. Update references.
3385
33862008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
3387
3388 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
3389
33902008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
3391
3392 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
3393 Remove forwarding functions.
3394 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
3395 non-static.
3396 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
3397 non-static.
3398 (ns_frame_parm_handlers): Use the new names.
3399 (syms_of_nsfns): Move to the end of file.
3400
3401 * nsterm.m (syms_of_nsterm): Move to the end of file.
3402
3403 * dispnew.c (init_display): Remove code for X10.
3404
34052008-07-22 Jason Rumney <jasonr@gnu.org>
3406
3407 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
3408 bare drive.
3409
34102008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3411
3412 * nsterm.m (syms_of_nsterm): Remove debugging println.
3413
34142008-07-22 David Reitter <david.reitter@gmail.com>
3415
3416 * nsfns.m (do_applescript, F_do_applescript): NS version of the
3417 Carbon implementation of the same functionality: execute arbitrary
3418 AppleScript code.
3419
34202008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3421
3422 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
3423 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
3424 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3425 (Fx_display_mm_height, Fx_display_mm_width)
3426 (Fx_display_backing_store, Fx_display_visual_class)
3427 (Fx_display_save_under, Fx_open_connection)
3428 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
3429 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
3430 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
3431 (Fx_display_pixel_width, Fx_display_pixel_height)
3432 (Fx_display_usable_bounds, Fx_display_planes)
3433 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
3434 ... */' style of docstrings.
3435
34362008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
3437
3438 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
3439 on this platform.
3440 (mips):
3441 * m/iris4d.h (mips): Do not define.
3442 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
3443
3444 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
3445
3446 * image.c:
3447 * nsfns.m:
3448 * nsselect.m:
3449 * nsterm.h:
3450 * nsterm.m: Rename ns prefixed functions/variables to the
3451 corresponding x versions. Update references.
3452
3453 * m/ibms390x.h (NO_REMAP): Do not undefine.
3454
3455 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
3456
34572008-07-21 Chong Yidong <cyd@stupidchicken.com>
3458
3459 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
3460 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
3461 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
3462 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
3463 (Fns_display_mm_height, Fns_display_mm_width)
3464 (Fns_display_backing_store, Fns_display_visual_class)
3465 (Fns_display_save_under, Fns_open_connection)
3466 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
3467 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
3468 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
3469 (Fns_display_pixel_width, Fns_display_pixel_height)
3470 (Fns_display_usable_bounds, Fx_display_planes)
3471 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
3472
34732008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
3474
3475 * print.c (print_object): Check print_depth before searching for
3476 circularities.
3477
34782008-07-21 Michael Albinus <michael.albinus@gmx.de>
3479
3480 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
3481 only sprintf.
3482
34832008-07-21 Kenichi Handa <handa@m17n.org>
3484
3485 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
3486
34872008-07-20 Andreas Schwab <schwab@suse.de>
3488
3489 * syntax.c (find_start_pos, find_start_value)
3490 (find_start_value_byte, find_start_begv, find_defun_start)
3491 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
3492
34932008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
3494
3495 * s/sol2-3.h: Insert contents of s/sol2.h.
3496 (LD_SWITCH_SYSTEM): Remove redundant definition.
3497 * s/sol2.h: Remove, unused.
3498
34992008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3500
3501 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
3502
35032008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3504
3505 * Makefile.in (ns_appdir): Fix typo in find command.
3506
35072008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
3508
3509 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
3510
3511 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
3512 added not supported anymore.
3513
3514 * s/usg5-4-2.h (LIBS_SYSTEM):
3515 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
3516
3517 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
3518 * s/lynxos.h (GETPGRP_NO_ARG):
3519 * s/hpux10-20.h (NO_SIOCTL_H):
3520 * s/gnu.h (GETPGRP_NO_ARG):
3521 * s/gnu-linux.h (NO_SIOCTL_H):
3522 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
3523 * s/cygwin.h (GETPGRP_NO_ARG):
3524 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
3525 (C_DEBUG_SWITCH): Remove duplicate definition.
3526
3527 * m/ibms390.h: Remove boilerplate comments.
3528
3529 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
3530
3531 * process.c (HAVE_SERIAL): Consolidate ifdefs.
3532 (wait_reading_process_output): Remove code for SunOS, platform not
3533 supported anymore. Use SOLARIS2 instead of sun.
3534
35352008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3536
3537 * font.c (font_open_by_name): Under NS, default lface height to zero.
3538 (font_open_for_lface): Under NS, set size based on frame fontsize.
3539 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
3540 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
3541
35422008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3543
3544 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
3545 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
3546 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
3547 YES/NO.
3548 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
3549 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
3550 * Makefile.in (clean): Clear out build destination dir.
3551
35522008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3553
3554 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
3555 xterm, xselect.
3556 * lisp.h: Remove declaration of hash_remove.
3557 * nsgui.h: Remove redefinitions of hash_remove.
3558 * fns.c (hash_remove): Rename to hash_remove_from_table.
3559
35602008-07-19 Seiji Zenitani <zenitani@mac.com>
3561
3562 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
3563 strdup() the family UTF8String before modifying it.
3564
35652008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3566
3567 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
3568 NS_FACE_BACKGROUND with 0 instead of nil.
3569 * nsfont.m (nsfont_draw): Same.
3570
35712008-07-19 Chong Yidong <cyd@stupidchicken.com>
3572
3573 * nsfns.m (ns_set_background_color): Fix crash.
3574
35752008-07-18 Chong Yidong <cyd@stupidchicken.com>
3576
3577 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
3578
35792008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
3580
3581 * puresize.h (BASE_PURESIZE): Increase to 1240000.
3582
35832008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3584
3585 * gtkutil.c: Include <config.h> instead of "config.h".
3586
3587 * lisp.h (Foverlay_buffer): Add EXFUN.
3588
3589 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
3590 child process to complete child_setup. Undo 2005-09-21 change.
3591
3592 * s/darwin.h: Mention setsid after vfork.
3593
35942008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3595
3596 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
3597 Depend on macgui.h.
3598
3599 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
3600 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
3601
3602 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
3603 and f19.
3604 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
3605
3606 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
3607 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
3608 Remove enumerators.
3609
3610 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
3611 Check if FACE_FROM_ID returns NULL.
3612
36132008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
3614
3615 * w32inevt.c (change_frame_size): Remove extern declaration.
3616 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
3617 change_frame_size.
3618
36192008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
3620
3621 * getloadavg.c: Revert last change (2008-07-15).
3622
36232008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
3624
3625 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
3626 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
3627 from configure.
3628
36292008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
3630
3631 * s/sol2.h:
3632 * s/sol2-4.h: Reorganize conditionals.
3633
3634 * ecrt0.c: Remove code depending on m68000, not used anymore.
3635
3636 * fns.c (hash_remove): Make static.
3637 * lisp.h (hash_remove): Don't prototype.
3638
3639 * m/ibmrs6000.h:
3640 * m/ibms390x.h:
3641 * m/macppc.h: Remove boilerplate comments.
3642
3643 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
3644 Solaris, which does not need them.
3645
3646 * m/vax.h: Remove comments about unsupported systems.
3647
3648 * s/darwin.h: Reorganize ifdefs.
3649
36502008-07-17 Andreas Schwab <schwab@suse.de>
3651
3652 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
3653
36542008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
3655
3656 Use SDATA. Follow coding convention of placing operators at
3657 beginning of next line rather than end of previous line, and placing
3658 spaces around infix operators.
3659
3660 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
3661 in case it was defined already.
3662 USE @GNUSTEP_MAKEFILES@ rather than envvars.
3663 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
3664 ns_default.
3665 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
3666 Lisp_Objects.
3667 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
3668 (ns_defined_color, ns_color_to_lisp): Declare.
3669 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
3670 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
3671 it's accepted even with USE_LISP_UNION_TYPE.
3672 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
3673 (update_frame_tool_bar): Remove apparently obsolete tests for
3674 non-integerness of f->tool_bar_lines.
3675 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
3676 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
3677 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
3678 (nsfont_open): Don't confuse NULL for Qnil.
3679 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
3680 * menu.h (find_and_call_menu_selection):
3681 * menu.c (find_and_call_menu_selection): Use just int for vector size.
3682 (find_and_return_menu_selection): Always return something.
3683 * frame.h: Include dispextern.h for Display_Info.
3684 (display_x_get_resource): Declare.
3685
36862008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
3687
3688 * syntax.c: Remove stdio.h include accidentally introduced in
3689 Emacs.app commit.
3690 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
3691 NS_IMPL_COCOA.
3692 * keyboard.c (handle_async_input, input_available_signal): Remove
3693 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
3694
36952008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
3696
3697 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
3698 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
3699 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
3700 Use SDATA.
3701
3702 * keymap.c: Remove all NS-specific code.
3703 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
3704 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
3705 where_is_preferred_modifier, return a different value depending on how
3706 preferred is the binding.
3707 (where_is_internal): Adjust accordingly.
3708 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
3709 Adjust to new preferred_sequence_p.
3710 (syms_of_keymap): Declare `where-is-preferred-modifier'.
3711 * keyboard.c (parse_solitary_modifier): Not static any more.
3712 * keyboard.h (parse_solitary_modifier): Declare.
3713
37142008-07-16 Andreas Schwab <schwab@suse.de>
3715
3716 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
3717 of easymenu.
3718
37192008-07-16 Chong Yidong <cyd@stupidchicken.com>
3720
3721 * xdisp.c (move_it_in_display_line): Account for word wrap, so
3722 that we don't move off the line.
3723
37242008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
3725
3726 * keyboard.c (Qsuper): Remove.
3727 (parse_menu_item): Don't call where_is_internal specially for NS.
3728
37292008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
3730
3731 * s/gnu-linux.h: Remove boilerplate comments.
3732
3733 * m/alpha.h (__ELF__): Consolidate conditions.
3734
3735 * m/m68k.h (linux): Use GNU_LINUX instead.
3736 Remove boilerplate comments.
3737
3738 * m/intel386.h: Undo refactoring from previous change.
3739 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
3740 too, remove dead code.
3741 (linux): Use GNU_LINUX instead.
3742
37432008-07-16 Jason Rumney <jasonr@gnu.org>
3744
3745 * w32gui.h: Repeat 26 June changes lost by last change.
3746
37472008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
3748
3749 * systty.h: Remove code for Aix on 386, unsupported platform.
3750
3751 * s/ms-w32.h: Remove boilerplate comments.
3752 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
3753
3754 * s/gnu-linux.h (TERM): Remove support.
3755 (HAVE_SYSVIPC): Remove, unused.
3756 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
3757 for this system.
3758
3759 * process.c: Remove support for IRIS, unused.
3760 Remove support for TERM, not relevant anymore.
3761
3762 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
3763 used with the definition.
3764
3765 * s/aix4-2.h (static): Do not undef.
3766
3767 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
3768 only used on Aix.
3769 (HAVE_SYSVIPC): Remove, unused.
3770
3771 * m/hp800.h (CANNOT_DUMP): Do not undef.
3772
3773 * m/alpha.h: Fix comment.
3774
3775 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
3776 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
3777 used by this configuration.
3778 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
3779 * unexec.c: Remove code depending on HPUX and
3780 USG_SHARED_LIBRARIES, not used with this file. Remove code
3781 depending on IRIS, unused. Remove if 0-ed code.
3782
3783 * s/template.h: Remove comments about static.
3784
3785 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
3786 Remove if 0-ed code.
3787 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
3788 were the same as the default.
3789 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
3790 Remove boilerplate comments.
3791 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
3792 (HAVE_SYSVIPC): Remove, unused.
3793 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
3794
3795 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3796 Remove boilerplate comments.
3797 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3798 Remove boilerplate comments.
3799 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3800 Remove boilerplate comments.
3801 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
3802
3803 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
3804 USG systems which do not use DATA_SEG_BITS.
3805 Refactor code. Remove boilerplate comments.
3806
3807 * m/ibms390.h:
3808 * m/m68k.h:
3809 * s/bsd-common.h:
3810 * s/cygwin.h:
3811 * s/darwin.h:
3812 * s/freebsd.h:
3813 * s/gnu.h:
3814 * s/msdos.h: Remove boilerplate comments.
3815
3816 * m/iris4d.h: Remove boilerplate comments and code for systems that
3817 do not use this file.
3818 (IRIS_4D): Remove, unused.
3819
3820 * m/mips.h: Remove boilerplate comments and code for systems that
3821 do not use this file.
3822 (SIGN_EXTEND_CHAR):
3823 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
3824 * unexmips.c: Remove file, unused.
3825
3826 * editfns.c (Fuser_full_name): Replace the only use of
3827 USER_FULL_NAME with its value.
3828 * config.in: Regenerate.
3829
38302008-07-16 David Reitter <david.reitter@gmail.com>
3831
3832 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
3833 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
3834
38352008-07-16 Glenn Morris <rgm@gnu.org>
3836
3837 * emacs.c (system-type): Doc fix.
3838
38392008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
3840
3841 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
3842 If the cache doesn't work, let's fix it, rather than work around it.
3843
38442008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3845
3846 * Makefile.in: Correct additions for nsfont.o in last commit.
3847 * nsfont.m: New file (forgot last commit).
3848
38492008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
3850
3851 * callproc.c (set_initial_environment): Initialize
3852 Vprocess_environment under CANNOT_DUMP (fixes crash when
3853 batch-compiling for bootstrap).
3854
38552008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
3856 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3857
3858 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
3859 fix crash due to different init order.
3860
38612008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3862
3863 Changes and additions for NeXTstep windowing system (Cocoa and
3864 GNUstep) support.
3865
3866 * Makefile.in:
3867 * config.in: Support defines and build commands for NS port.
3868 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
3869 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
3870 * dispextern.h: Include nsgui.h and add needed typedefs under NS
3871 windowing.
3872 (struct face): Add synth_ital field.
3873 * dispnew.c: Include nsterm.h when compiling under NS windowing.
3874 (init_display): Initialize Vinitial_window_system to "ns" when so
3875 compiled.
3876 * emacs.c: Include GSConfig.h when compiling under GNUstep.
3877 (display_arg): Use under NS.
3878 (main): Under NS, allocate autorelease pool and handle command line
3879 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
3880 (standard_args): Add NS-specific args.
3881 (shut_down_emacs): Shut down NS terminal if compiled under NS.
3882 * font.c (DEFAULT_ENCODING): New variable.
3883 (font_find_for_lface): Use it.
3884 (syms_of_font): Load syms_of_nsfont under NS.
3885 * font.h: Declare nsfont_driver when compiled under NS.
3886 * fontset.c: When compiling under NS, include nsterm.h.
3887 (fontset_from_font): Autoconstruct fontset under NS.
3888 * frame.c (various): Under NS, include nsterm.h, add Qns window system
3889 symbol, document and use it.
3890 (do_switch_frame): When for_deletion under Cocoa, add
3891 Fraise_frame(Qnil).
3892 (x_set_frame_parameters): Ensure font attribute changes are picked up.
3893 (x_get_arg): Allow "yes" and "no" as boolean values.
3894 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
3895 Qright under Cocoa.
3896 (focus-follows-mouse): Default to 0 under NS.
3897 * frame.h (enum output_method): Add output_ns.
3898 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
3899 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
3900 (FRAME_WINDOW_P): NS-specific definition.
3901 * fringe.c (max_used_fringe_bitmap): Make public.
3902 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
3903 (getloadavg): Use NeXT code under descendant OS's.
3904 * image.c (includes and header section, x_create_bitmap_from_data)
3905 (x_create_bitmap_from_file, free_bitmap_record, image_background)
3906 (image_background_transparent, x_clear_image_1)
3907 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
3908 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
3909 (x_to_xcolors, x_from_xcolors, x_disable_image)
3910 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
3911 other GUIs, including XPM support using code originally written for
3912 Carbon GUI.
3913 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
3914 using NS API.
3915 (image_ascent): Use font metrics macros instead of direct struct field
3916 access.
3917 * keyboard.c (includes): Add nsterm.h when compiling under NS.
3918 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
3919 Also, handle NS as GTK for menu bar purposes.
3920 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
3921 toolkit where they differ.
3922 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
3923 use cachelist, still needed under NS.
3924 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
3925 (struct widget_value): Define it here for menu.c.
3926 * keymap.c (includes): Include modifier internals.
3927 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
3928 NS.
3929 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
3930 support for preferring sequences using certain modifiers, specified by
3931 the FIRSTONLY argument.
3932 * lisp.h (hash_remove): Rename to avoid name clash when compiling
3933 under NS GNUstep implementation.
3934 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
3935 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
3936 * menu.c: Include nsterm.h under NS.
3937 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
3938 (free_menubar_widget_tree_value, update_submenu_strings)
3939 (find_and_call_menu_selection): Treat NS as X and NT.
3940 (find_and_return_menu_selection): New function, used for popup menus.
3941 * nsgui.h:
3942 * nsterm.h:
3943 * nsfns.m:
3944 * nsimage.m:
3945 * nsmenu.m:
3946 * nsselect.m:
3947 * nsterm.m: New files.
3948 * process.c (wait_reading_process_output): Under NS, call ns_select()
3949 instead of plain select().
3950 * syntax.c (char_quoted): Under NS, avoid a crash when called near
3951 beginning of buffer.
3952 * sysselect.h (init_process): Rename when compiling under Cocoa to
3953 avoid name conflict.
3954 * termhooks.h (display_info): Add ns_display_info to union.
3955 * terminal.c (Fterminal_live_p): Add ns to terminal types.
3956 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
3957 COCOA environment.
3958 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
3959 unexec() signature. (Note, this will dump, but the resulting file
3960 crashes; unexosx is used instead; keeping around for reference and
3961 possible aid in getting dump working under GNUstep.)
3962 * w32gui.h (button_type, widget_value): Remove definitions (now in
3963 keyboard.h).
3964 * window.c: Include nsterm.h when compiling under NS.
3965 * xdisp.c (includes): Include nsterm.h when compiling under NS.
3966 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
3967 other GUI windowing systems.
3968 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
3969 GTK.
3970 (x_consider_frame_title): Under NS, set icon type and frame
3971 modified-state indicator; use ns_set_name_as_filename() when using
3972 formatted title.
3973 (update_window_cursor): Make public when compiling under NS.
3974 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
3975 (hourglass_atimer, Vhourglass_delay
3976 * xfaces.c (header section, init_frame_faces, clear_font_table)
3977 (defined_color, unload_color, x_face_list_fonts)
3978 (prepare_face_for_display): Add NS support parallel to other GUIs.
3979 Emulate GCs like other non-X GUIs.
3980 (split_font_name): Don't lowercase font name under NS.
3981 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
3982 under NS.
3983 * s/darwin.h: Add support for compilation under NS.
3984
39852008-07-15 Jason Rumney <jasonr@gnu.org>
3986
3987 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
3988 (w32_show_hourglass): Rename from show_hourglass.
3989 (w32_hide_hourglass): Rename from hide_hourglass.
3990 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
3991 (Vhourglass_delay): Declare extern.
3992 (hourglass_started): Remove.
3993
3994 * xdisp.c (Vhourglass_delay): Remove static.
3995 (hourglass_started, start_hourglass, cancel_hourglass):
3996 Don't include these versions on WINDOWSNT.
3997
39982008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3999
4000 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
4001 variables (formerly in xfns.c).
4002 (show_hourglass, hide_hourglass): New prototypes (same).
4003 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
4004 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
4005 in xfns.c).
4006 (syms_of_xdisp): Declare/initialize display-hourglass,
4007 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
4008 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
4009 formerly in xfns.c.
4010 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
4011 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
4012 (start_hourglass, cancel_hourglass): Remove.
4013 (show_hourglass, hide_hourglass): Remove prototypes and static
4014 modifiers.
4015 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
4016 hourglass_atimer, hourglass_shown_p declaration/initialization.
4017 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
4018 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
4019 (start_hourglass, cancel_hourglass): Remove.
4020 (show_hourglass, hide_hourglass): Remove prototypes and static
4021 modifiers.
4022 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
4023 hourglass_atimer, hourglass_shown_p declaration/initialization.
4024 * w32fns.c (display_hourglass_p, Vhourglass_delay)
4025 (DEFAULT_HOURGLASS_DELAY): Remove.
4026 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
4027 hourglass_shown_p declaration/initialization.
4028
40292008-07-14 Jason Rumney <jasonr@gnu.org>
4030
4031 * w32fns.c (w32_get_arg): Remove wrapper function.
4032 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
4033 directly.
4034 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
4035
40362008-07-14 Kenichi Handa <handa@m17n.org>
4037
4038 * xfont.c (xfont_open): Add workaround for X's bug.
4039
40402008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4041
4042 * fontset.c: Include <stdio.h> unconditionally.
4043
40442008-07-13 Michael Albinus <michael.albinus@gmx.de>
4045
4046 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
4047 for filtering.
4048
40492008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
4050
4051 * s/vms.h: Use __GNUC__ instead of _GNUC_.
4052
4053 * m/macppc.h:
4054 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
4055
4056 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
4057 (SPECIAL_EMACS_INT):
4058 * m/ia64.h (SPECIAL_EMACS_INT):
4059 * m/amdx86-64.h (SPECIAL_EMACS_INT):
4060 * s/gnu.h (NLIST_STRUCT):
4061 * s/aix4-2.h (X11R5_INHIBIT_I18N):
4062 * s/gnu-linux.h (LINUX):
4063 * s/msdos.h (HAVE_FACES):
4064 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
4065
4066 * systty.h:
4067 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
4068 anymore.
4069
40702008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
4071
4072 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
4073 always defined as int.
4074
4075 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
4076 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
4077 * s/gnu-linux.h (HAVE_WAIT_HEADER):
4078 * s/freebsd.h (HAVE_WAIT_HEADER):
4079 * s/bsd-common.h (HAVE_UNION_WAIT):
4080 * s/aix4-2.h (HAVE_WAIT_HEADER):
4081 * m/mips.h (HAVE_UNION_WAIT):
4082 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
4083 (COFF, static): Do not define, they are undefined later in the file.
4084
4085 * process.c (update_status): Don't use a union.
4086 (status_convert):
4087 (sigchld_handler): Use int instead of WAITTYPE.
4088
40892008-07-12 Chong Yidong <cyd@stupidchicken.com>
4090
4091 * indent.c (Fvertical_motion): Restore hscroll before moving to
4092 goal column.
4093
40942008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
4095
4096 * lisp.h: Remove left over code.
4097
40982008-07-11 Andreas Schwab <schwab@suse.de>
4099
4100 * lisp.h: Fix logic in last change.
4101
4102 * menu.h: New file.
4103 * menu.c: Include it.
4104 * xmenu.c: Likewise.
4105 * Makefile.in: Update dependencies.
4106
41072008-07-11 Kenichi Handa <handa@m17n.org>
4108
4109 * fontset.c (fontset_from_font): Cancel the previous change.
4110
41112008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
4112
4113 * lisp.h:
4114 * w32heap.c:
4115 * emacs.c:
4116 * alloc.c: Replace all references of NO_UNION_TYPE with
4117 USE_LISP_UNION_TYPE.
4118
4119 * m/xtensa.h (NO_UNION_TYPE):
4120 * m/vax.h (NO_UNION_TYPE):
4121 * m/template.h (NO_UNION_TYPE):
4122 * m/sparc.h (NO_UNION_TYPE):
4123 * m/mips.h (NO_UNION_TYPE):
4124 * m/macppc.h (NO_UNION_TYPE):
4125 * m/m68k.h (NO_UNION_TYPE):
4126 * m/iris4d.h (NO_UNION_TYPE):
4127 * m/intel386.h (NO_UNION_TYPE):
4128 * m/ibms390x.h (NO_UNION_TYPE):
4129 * m/ibms390.h (NO_UNION_TYPE):
4130 * m/ibmrs6000.h (NO_UNION_TYPE):
4131 * m/ia64.h (NO_UNION_TYPE):
4132 * m/hp800.h (NO_UNION_TYPE):
4133 * m/arm.h (NO_UNION_TYPE):
4134 * m/amdx86-64.h (NO_UNION_TYPE):
4135 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
4136 defining it the same.
4137
41382008-07-10 Chong Yidong <cyd@stupidchicken.com>
4139
4140 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
4141
41422008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
4143
4144 * fileio.c:
4145 * sysdep.c
4146 * systty.h:
4147 * m/ibmrs6000.h:
4148 * m/iris4d.h:
4149 * s/aix4-2.h:
4150 * s/freebsd.h:
4151 * s/gnu-linux.h:
4152 * s/hpux10-20.h:
4153 * s/hpux11.h:
4154 * s/netbsd.h:
4155 * s/sol2-3.h:
4156 * s/sol2-4.h:
4157 * s/sol2.h:
4158 * s/usg5-4.h:
4159 * s/vms.h: Remove references to unused variables.
4160
41612008-07-10 Andreas Schwab <schwab@suse.de>
4162
4163 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
4164 pattern before matching the generic family.
4165
41662008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
4167
4168 * unexec.c:
4169 * s/vms.h:
4170 * s/usg5-4-2.h:
4171 * s/sol2-5.h:
4172 * s/freebsd.h:
4173 * s/darwin.h: Remove dead code.
4174
4175 * m/template.h:
4176 * m/sparc.h:
4177 * m/mips.h:
4178 * m/m68k.h:
4179 * m/iris4d.h:
4180 * m/intel386.h:
4181 * m/ibms390x.h:
4182 * m/ibms390.h:
4183 * m/ia64.h:
4184 * m/hp800.h:
4185 * m/arm.h:
4186 * m/amdx86-64.h: Remove dead code and references to unused
4187 and compiler defined symbols.
4188
4189 * unexmips.c:
4190 * unexelf.c: Remove references to desupported systems.
4191
4192 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
4193
4194 * m/powermac.h: Remove boilerplate comments.
4195 (NO_REMAP): Remove unused definition.
4196
4197 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
4198 define them.
4199
42002008-07-10 Kenichi Handa <handa@m17n.org>
4201
4202 * xfont.c (xfont_open): Log the reason of failure.
4203
42042008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
4205
4206 * fontset.c (fontset_get_font_group):
4207 * font.c (font_check_otf): Specify argument types.
4208
42092008-07-09 Kenichi Handa <handa@m17n.org>
4210
4211 * coding.c (detect_coding_utf_8): Set detect_info->found only when
4212 non-ASCII char is found.
4213
4214 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
4215 (reorder_font_vector): Change the arg preferred_family to font.
4216 Prefer the spec matching with font.
4217 (fontset_get_font_group): New function.
4218 (fontset_find_font): Change the format of an element of a realized
4219 fontset. Use fontset_get_font_group.
4220 (fontset_font): Try the current fontset, the default fontset, the
4221 fallbacks of the current fontset, and the fallbacks of the default
4222 fontset in this order.
4223 (face_for_char): Delete the shortcut to use the current font.
4224 (fontset_from_font): Don't set fonts for Latin in the fontset.
4225
4226 * font.h (font_make_object, font_match_p): Adjust prototypes.
4227
4228 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
4229
4230 * font.c (font_make_object): New arg entity and pixelsize.
4231 (font_check_otf_features, font_check_otf): New functions.
4232 (font_match_p): Check :lang, :script, and :otf properties.
4233
4234 * xfont.c (xfont_open): Adjust it for the change of
4235 font_make_object.
4236 (xfont_text_extents): Fix initial setting of metrics.
4237
4238 * ftfont.c (struct ftfont_info): New member index, delete member
4239 fc_charset_idx. Make the member order compatible with struct
4240 xftfont_info.
4241 (fc_charset_table): Change charset names to registry names.
4242 (ftfont_pattern_entity): Delete the args registry and
4243 fc_charset_idx. Change the value of :font-entity property
4244 to (FONTNAME . INDEX). Always set :registry property to
4245 `iso10646-1'.
4246 (struct ftfont_cache_data): New struct.
4247 (ftfont_lookup_cache): New arg for_face.
4248 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
4249 (ftfont_driver): Set the member otf_capability.
4250 (ftfont_get_charset): Adjust it for the change of
4251 fc_charset_table.
4252 (OTF_TAG_SYM): New macro.
4253 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
4254 for the change of fc_charset_table.
4255 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
4256 ftfont_pattern_entity. Add FC_INDEX to objset.
4257 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
4258 and ftfont_pattern_entity.
4259 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
4260 font_make_object, struct ftfont_info.
4261 (ftfont_has_char): Use ftfont_get_fc_charset.
4262 (ftfont_otf_features, ftfont_otf_capability): New functions.
4263 (ftfont_shape): Use ftfont_get_otf.
4264 (ftfont_text_extents): Fix initial setting of metrics.
4265
4266 * xftfont.c (struct xftfont_info): New member ft_size. Make the
4267 member order compatible with struct ftfont_info.
4268 (xftfont_open): Add FC_CHARSET to the pattern. Set
4269 xftfont_info->ft_size. Don't unlock the face. Check BDF
4270 properties if appropriate.
4271 (xftfont_close): Unlock the face.
4272 (xftfont_anchor_point, xftfont_shape): Deleted.
4273 (syms_of_xftfont): Don't set members anchor_point and shape of
4274 xftfont_driver.
4275
4276 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
4277 font_make_object.
4278
4279 * w32font.c (w32font_open): Adjust it for the change of
4280 font_make_object.
4281 (w32font_open_internal): Don't set properties of font_object here.
4282
42832008-07-08 Chong Yidong <cyd@stupidchicken.com>
4284
4285 * macfns.c (x_create_tip_frame):
4286 * w32fns.c (x_create_tip_frame):
4287 * xfns.c (x_create_tip_frame): Pass parameter argument to
4288 face-set-after-frame-default.
4289
4290 * xfaces.c (Finternal_merge_in_global_face): Save merged
4291 attributes for the default face back into the face vector.
4292
42932008-07-08 Andreas Schwab <schwab@suse.de>
4294
4295 * fontset.h: Declare fontset_from_font. Don't declare
4296 new_fontset_from_font and fontset_from_font_name.
4297 * xterm.c: Include "fontset.h".
4298 * Makefile.in (xterm.o): Update dependencies.
4299
43002008-07-08 Glenn Morris <rgm@gnu.org>
4301
4302 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
4303 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
4304
43052008-07-07 Chong Yidong <cyd@stupidchicken.com>
4306
4307 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
4308 (x_set_frame_parameters): Don't bind it.
4309
43102008-07-07 Juanma Barranquero <lekktu@gmail.com>
4311
4312 * w32fns.c (map_w32_filename): Declare extern.
4313
43142008-07-07 Jason Rumney <jasonr@gnu.org>
4315
4316 * w32term.c (WS_EX_LAYERED): Define if not already.
4317
43182008-07-06 Chong Yidong <cyd@stupidchicken.com>
4319
4320 * xfaces.c (set_font_frame_param): Don't try to set the font
4321 parameter if it is still unspecified in the lface.
4322
43232008-07-05 Chong Yidong <cyd@stupidchicken.com>
4324
4325 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
4326 face if it didn't already exist.
4327
4328 * xdisp.c (try_window_id): Give up if word-wrapping is on.
4329
43302008-07-05 Andreas Schwab <schwab@suse.de>
4331
4332 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
4333
43342008-07-05 Chong Yidong <cyd@stupidchicken.com>
4335
4336 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
4337 word-wrapping.
4338 (IT_DISPLAYING_WHITESPACE): New macro.
4339 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
4340 when word-wrapping. Simplify word-wrapping logic. Use correct
4341 pixel positions when saving copies of the iterator.
4342 (display_line): Use proper wrap point if the last character on a
4343 line was preceded by whitespace.
4344
43452008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
4346
4347 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
4348
43492008-07-04 Kenichi Handa <handa@m17n.org>
4350
4351 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
4352
4353 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
4354
43552008-07-02 Jason Rumney <jasonr@gnu.org>
4356
4357 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 4358 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
4359
4360 * xdisp.c (next_element_from_display_vector): Move assignment out
4361 of if statement.
4362
43632008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
4364
4365 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
4366
4367 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
4368 (syms_of_fileio): Initialize and export them.
4369 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
4370
4371 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
4372 (Fsystem_move_file_to_trash): New function.
4373 (syms_of_w32fns): Export it to lisp.
4374
43752008-07-01 Jason Rumney <jasonr@gnu.org>
4376
4377 * w32font.c (w32font_text_extents): Don't count overhang as part
4378 of width.
4379
43802008-06-30 Miles Bader <miles@gnu.org>
4381
4382 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
4383 Add `avoid_cursor_p' field.
4384
4385 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
4386 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
4387 (append_glyph, append_composite_glyph, produce_image_glyph)
4388 (append_stretch_glyph): Initialize avoid_cursor_p.
4389 (get_it_property): Rename from `get_line_height_property'.
4390 (x_produce_glyphs): Use get_it_property.
4391 (handle_line_prefix, push_display_prop): New functions.
4392 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
4393 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
4394 New variables.
4395 (syms_of_xdisp): Initialize them.
4396
43972008-06-30 Kenichi Handa <handa@m17n.org>
4398
4399 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
4400 XftDefaultSubstitute (they are called in XftFontMatch).
4401 (xftfont_open): Fix args to ftfont_font_format.
4402
4403 * ftfont.c (fc_charset_table): New member lang.
4404 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 4405 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
4406 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
4407 (ftfont_open): Fix args to ftfont_font_format.
4408 (ftfont_font_format): New arg filename.
4409
44102008-06-30 Chong Yidong <cyd@stupidchicken.com>
4411
4412 * xfaces.c (Finternal_merge_in_global_face): If default face was
4413 modified, realize it again. Update the font face attribute.
4414
44152008-06-29 Jason Rumney <jasonr@gnu.org>
4416
4417 * w32term.c (x_set_frame_alpha): Fix logic.
4418
44192008-06-29 Kenichi Handa <handa@m17n.org>
4420
4421 * fontset.c (Finternal_char_font): Return font-object instead of
4422 font-name.
4423
4424 * composite.c (get_composition_id): Fix the width calculation for TAB.
4425
44262008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
4427
4428 * indent.c (Fvertical_motion): Properly handle float column arg.
4429
44302008-06-28 Jason Rumney <jasonr@gnu.org>
4431
4432 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
4433 (pfnSetLayeredWindowAttributes): New function pointer.
4434 (w32_initialize): Initialize it when supported.
4435 (x_set_frame_alpha): New function.
4436
4437 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
4438 (w32_frame_parm_handlers): Set alpha handler.
4439
4440 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
4441
44422008-06-27 Jason Rumney <jasonr@gnu.org>
4443
4444 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
4445 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
4446 (w32_to_x_charset, x_to_w32_charset)
4447 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
4448 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
4449 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
4450 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
4451 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
4452 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
4453 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
4454 (Qw32_charset_unicode): Remove.
4455 (syms_of_w32fns): Update for above changes.
4456
4457 * w32font.c (w32_to_x_charset, x_to_w32_charset)
4458 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
4459 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
4460 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
4461 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
4462 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
4463 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
4464 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
4465 (syms_of_w32font): Update for above changes.
4466
44672008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
4468
4469 * s/usg5-4.h: Fix previous change: keep the correct branch of a
4470 removed #if.
4471 (USG_SHARED_LIBRARIES): Remove duplicate definition.
4472
44732008-06-26 Juanma Barranquero <lekktu@gmail.com>
4474 Eli Zaretskii <eliz@gnu.org>
4475
4476 * makefile.w32-in (LOCAL_FLAGS):
4477 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
4478
4479 * sysdep.c (_spawnlp, _getpid):
4480 Declare with explicit _cdecl instead of _CRTAPI1.
4481
4482 * editfns.c (Fget_internal_run_time):
4483 Check for WINDOWSNT with #ifdef, not #if.
4484
44852008-06-26 Jason Rumney <jasonr@gnu.org>
4486
4487 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
4488
4489 * w32term.c (x_draw_glyph_string_foreground)
4490 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
4491 Use FONT_HANDLE macro.
4492 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
4493
4494 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
4495 (uniscribe_encode_char): Use FONT_HANDLE macro.
4496
4497 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
4498 (w32font_text_extents): Use precast w32_font.
4499 (w32font_close): Free cached metrics.
4500 (w32font_open_internal): Allocate space for name on stack.
4501
45022008-06-26 Chong Yidong <cyd@stupidchicken.com>
4503
4504 * xdisp.c (extend_face_to_end_of_line): Fix last change.
4505
45062008-06-26 Jason Rumney <jasonr@gnu.org>
4507
4508 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
4509 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
4510
45112008-06-26 Juanma Barranquero <lekktu@gmail.com>
4512
4513 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
4514
45152008-06-26 Jason Rumney <jasonr@gnu.org>
4516
4517 * w32bdf.c, w32bdf.h: Remove obsolete files.
4518
4519 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
4520
4521 * w32gui.h: Don't include w32bdf.h.
4522 (XCharStruct, enum w32_char_font_type, W32FontStruct):
4523 Remove obsolete font support.
4524
4525 * w32font.h (struct w32font_info): Remove compat_w32_font.
4526 Add hfont member.
4527 (FONT_COMPAT): Remove obsolete macro.
4528
4529 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
4530 (w32font_encode_char, w32font_text_extents): Use new hfont member.
4531 (w32font_open_internal): Remove compat code. Set new hfont member.
4532 (Fx_select_font): Use new hfont member.
4533
4534 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
4535 (uniscribe_encode_char): Use new hfont member.
4536
4537 * w32term.c (x_draw_glyph_string_foreground)
4538 (x_draw_composite_glyph_string_foreground): Use new hfont member.
4539 (x_draw_glyph_string): Use metrics in w32font_info.
4540
45412008-06-26 Kenichi Handa <handa@m17n.org>
4542
4543 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
4544
45452008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
4546
4547 * unexnext.c:
4548 * m/ews4800.h:
4549 * m/hp9000s300.h:
4550 * m/ibm370aix.h:
4551 * m/mips-siemens.h:
4552 * m/ncr386.h:
4553 * m/next.h:
4554 * m/pmax.h:
4555 * m/powerpcle.h:
4556 * m/tandem-s2.h:
4557 * s/386bsd.h:
4558 * s/bsd386.h:
4559 * s/bsd4-1.h:
4560 * s/bsd4-2.h:
4561 * s/bsdos2-1.h:
4562 * s/bsdos2.h:
4563 * s/bsdos3.h:
4564 * s/bsdos4.h:
4565 * s/nextstep.h:
4566 * s/ultrix4-3.h:
4567 * s/usg5-0.h:
4568 * s/usg5-2-2.h:
4569 * s/usg5-2.h:
4570 * s/usg5-4-3.h:
4571 * s/ux4800.h:
4572 * s/uxpds.h:
4573 * s/uxpv.h: Remove support for obsolete systems.
4574 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 4575 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
4576 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
4577 Remove, insert contents in s/aix4-2.h.
4578 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
4579 * s/bsd4-3.h: Rename to ...
4580 * s/bsd-common.h: ... this.
4581 * data.c:
4582 * doc.c:
4583 * ecrt0.c:
4584 * emacs.c:
4585 * fileio.c:
4586 * floatfns.c:
4587 * keyboard.c:
4588 * mem-limits.h:
4589 * print.c:
4590 * process.c:
4591 * sysdep.c:
4592 * syssignal.h:
4593 * systty.h:
4594 * syswait.h:
4595 * term.c:
4596 * unexec.c:
4597 * unexelf.c:
4598 * unexhp9k800.c:
4599 * m/hp800.h:
4600 * m/ibmrs6000.h:
4601 * m/mips.h:
4602 * m/vax.h:
4603 * s/darwin.h:
4604 * s/freebsd.h:
4605 * s/gnu.h:
4606 * s/ms-w32.h:
4607 * s/msdos.h:
4608 * s/netbsd.h:
4609 * s/template.h: Remove references to obsolete variables.
4610
4611 * Makefile.in: Add dependencies for all unexec files.
4612 (admindir): Remove unused variable.
4613 (UNEXEC_SRC): Remove references.
4614
46152008-06-25 Chong Yidong <cyd@stupidchicken.com>
4616
4617 * xfns.c (x_default_font_parameter): If Xft is available, first
4618 try Monospace-12 for the default font.
4619
46202008-06-25 Jason Rumney <jasonr@gnu.org>
4621
4622 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
4623
46242008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
4625
4626 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
4627
4628 * buffer.c (syms_of_buffer): Remove default-word-wrap.
4629
46302008-06-25 Juanma Barranquero <lekktu@gmail.com>
4631
4632 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
4633 <scroll-conservatively>: Fix typo in docstring.
4634
4635 * xselect.c (Fx_send_client_event): Doc fix.
4636
46372008-06-25 Kenichi Handa <handa@m17n.org>
4638
4639 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
4640
4641 * font.c (font_parse_fcname): Remove unused variables.
4642 (font_sort_entites): Delete the arg SPEC. Caller changed.
4643 Fix for the case of ! best_only.
4644 (font_delete_unmatched): Check DPI and AVGWIDTH too.
4645
4646 * lisp.h (Fstring_to_unibyte): EXFUN it.
4647
4648 * character.h (str_to_unibyte): Extern it.
4649
4650 * character.c (str_to_unibyte): New function.
4651
4652 * fns.c (Fstring_to_unibyte): New function.
4653 (syms_of_fns): Defsubr it.
4654
46552008-06-24 Kenichi Handa <handa@m17n.org>
4656
4657 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
4658 DPI too.
4659 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
4660
46612008-06-24 Andreas Schwab <schwab@suse.de>
4662
4663 * Makefile.in (${lispsource}loaddefs.el): Rename from
4664 ../lisp/loaddefs.el.
4665 (bootstrap-clean): Do what distclean does but don't remove
4666 Makefile.
4667 (distclean): Depend on bootstrap-clean and remove Makefile.
4668
46692008-06-24 Chong Yidong <cyd@stupidchicken.com>
4670
4671 * buffer.h (struct buffer): New member word_wrap.
4672
4673 * buffer.c (syms_of_buffer): New variables default-word-wrap and
4674 word-wrap.
4675 (init_buffer_once): Initialize them.
4676
4677 * dispextern.h (struct it): Replace bool truncate_lines_p with a
4678 line_wrap enum possessing three possible values.
4679
4680 * termopts.h: Replace truncate_partial_width_windows with
4681 Vtruncate_partial_width_windows.
4682
4683 * dispnew.c (direct_output_for_insert): Avoid direct output when
4684 inserting a space with word wrap on.
4685
4686 * indent.c (compute_motion): Obey integer values of
4687 truncate-partial-width-windows.
4688
4689 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
4690 replacing truncate_partial_width_windows.
4691 (init_iterator): If Vtruncate_partial_width_windows is an integer,
4692 truncate only if the window width is below that integer.
4693 (start_display, resize_mini_window, produce_stretch_glyph)
4694 (display_string, move_it_in_display_line_to): Use line_wrap.
4695 (back_to_previous_visible_line_start, reseat_1): Reset
4696 string_from_display_prop_p.
4697 (display_line): Extend default face to end of line when wrapping.
4698
46992008-06-24 Kim F. Storm <storm@cua.dk>
4700
4701 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
4702 to wrap continued lines at word boundaries.
4703
47042008-06-24 Jason Rumney <jasonr@gnu.org>
4705
4706 * font.c (Ffont_face_attributes): Multiply pixel size before point
4707 conversion to avoid multiplying rounding error.
4708
47092008-06-23 Jason Rumney <jasonr@gnu.org>
4710
4711 * w32term.c (x_draw_glyph_string_background)
4712 (x_draw_glyph_string): Remove old bdf font code.
4713
4714 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
4715
47162008-06-22 Kenichi Handa <handa@m17n.org>
4717
4718 * font.c (font_find_for_lface): Try the adstyle specified in
4719 the property of LFACE_FONT of LFACE (if any).
4720
47212008-06-21 Seiji Zenitani <zenitani@mac.com>
4722 Ryo Yoshitake <ryo@shiftmode.net>
4723
4724 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
4725
47262008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
4727
4728 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
4729 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
4730 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
4731 (witness-emacs): Remove.
4732 (lisp, shortlisp): Move loaddefs.el earlier.
4733 (mostlyclean): Forget about witness-emacs.
4734
47352008-06-22 Glenn Morris <rgm@gnu.org>
4736
4737 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
4738 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
4739
47402008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
4741
4742 * Makefile.in (PRECOMP): Remove.
4743 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
4744 (witness-emacs): Run `compile-first'.
4745 (.el.elc): Use the new compile-onefile target.
4746
47472008-06-21 Kenichi Handa <handa@m17n.org>
4748
4749 * xftfont.c (xftfont_open): Handle QCembolden only when
4750 FC_EMBOLDEN is defined.
4751
47522008-06-21 Andreas Schwab <schwab@suse.de>
4753
4754 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
4755 (.el.elc): Likewise.
4756
47572008-06-21 Miles Bader <miles@gnu.org>
4758
4759 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
4760 build dir, not the lisp source dir.
4761
47622008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
4763
4764 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
4765 (bootstrapclean): Remove.
4766 (.el.elc): New rule.
4767 (PRECOMP): New var.
4768 (../lisp/subdirs.el): Remove.
4769 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
4770 (witness-emacs): New target.
4771 (mostlyclean): Remove witness-emacs as well.
4772 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
4773 Add witness-emacs dependency.
4774
47752008-06-20 Chong Yidong <cyd@stupidchicken.com>
4776
4777 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
4778 defined by the font.
4779
47802008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4781
4782 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
4783 (bootstrap-clean): New target that keeps TAGS around.
4784 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
4785 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
4786
47872008-06-20 Jason Rumney <jasonr@gnu.org>
4788
4789 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
4790 Remove obsolete font code.
4791
4792 * w32font.c (font_matches_spec): Use csb bitfield from font signature
4793 to determine language support.
4794
47952008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4796
4797 * sysdep.c (cfsetspeed): New fun extracted from the code.
4798 (cfmakeraw): Move before first use.
4799
48002008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
4801
4802 * sysdep.c (cfmakeraw): Provide fallback implementation.
4803 (serial_configure): Provide fallback implementation of cfsetspeed.
4804
48052008-06-20 Kenichi Handa <handa@m17n.org>
4806
4807 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
4808 the pattern.
4809
4810 * fontset.c (fontset_from_font): Copy font_spec before changing
4811 the elements.
4812
4813 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
4814
48152008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4816
4817 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
4818 for explicit `font' parameters.
4819
4820 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
4821
48222008-06-19 Kenichi Handa <handa@m17n.org>
4823
4824 * frame.c: Include <ctype.h>.
4825 (x_set_font_backend): Allow spacing characters in the X resource
4826 for FontBackend.
4827
48282008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
4829
4830 * w32fns.c, xfns.c (Qfont_param): New var.
4831 (syms_of_w32fns): Initialize it.
4832 (x_default_font_parameter): Record explicit `font' into
4833 `font-parameter'.
4834
48352008-06-18 Kenichi Handa <handa@m17n.org>
4836
4837 * font.c (font_parse_xlfd): Fix previous change.
4838 (font_parse_fcname): Don't use :fc-unknown-spec.
4839 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
4840 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
4841 (font_add_log): Prepend the driver name to the resulting fonts.
4842
4843 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
4844 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
4845 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
4846
4847 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
4848 (QCembolden): New variables.
4849 (syms_of_xftfont): DEFSYM them.
4850 (xftfont_open): Call XftFontMatch. Don't trust the result of
4851 XftTextExtents8 if the pixel_size is less than 5.
4852
48532008-06-18 Andreas Schwab <schwab@suse.de>
4854
4855 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
4856 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
4857
48582008-06-18 Jason Rumney <jasonr@gnu.org>
4859
4860 * w32font.c (w32font_list, w32font_match): Add logging.
4861
4862 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
4863
48642008-06-17 Chong Yidong <cyd@stupidchicken.com>
4865
4866 * font.c (font_parse_fcname): Store divider characters for
4867 unknown-spec list. For known key symbols, intern using correct
4868 symbol name.
4869
48702008-06-17 Kenichi Handa <handa@m17n.org>
4871
4872 * xfaces.c (realize_default_face): If the frame is not on window
4873 system, set the fontset of face to nil.
4874
48752008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
4876
4877 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
4878
48792008-06-16 Juanma Barranquero <lekktu@gmail.com>
4880
4881 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
4882 (build_font_name_from_vector): Delete externs.
4883
4884 * xfaces.c (struct font_name): Don't declare.
4885
48862008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
4887
4888 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
4889
48902008-06-16 Chong Yidong <cyd@stupidchicken.com>
4891
4892 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
4893
48942008-06-16 Juanma Barranquero <lekktu@gmail.com>
4895
4896 * font.c (Ffont_spec): Fix usage in docstring.
4897 (Ffont_face_attributes): Doc fix.
4898
48992008-06-16 Andreas Schwab <schwab@suse.de>
4900
4901 * font.c (Ffont_face_attributes): Fix definition.
4902
49032008-06-16 Jason Rumney <jasonr@gnu.org>
4904
4905 * font.h (font_style_symbolic_from_value): Remove.
4906
4907 * font.c (font_style_symbolic_from_value): Remove.
4908 (font_style_symbolic): Revert to pre 2008-06-13 version.
4909
4910 * w32font.c (w32_to_fc_weight): New function.
4911 (w32font_full_name, logfont_to_fcname): Use it.
4912
49132008-06-16 Kenichi Handa <handa@m17n.org>
4914
4915 * font.c (font_check_object): Delete it.
4916 (font_clear_cache): Check if a font-object is alive.
4917 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
4918 font-object to nil.
4919 (font_close_object): Don't check FONT_CLOSE_OBJECT.
4920 (font_at): Don't call font_check_object.
4921 (Ffont_get): Return a symbol for :weight, :slant, and :width.
4922
49232008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
4924
4925 * puresize.h (BASE_PURESIZE): Increase to 1230000.
4926
49272008-06-16 Chong Yidong <cyd@stupidchicken.com>
4928
4929 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
4930
49312008-06-15 Chong Yidong <cyd@stupidchicken.com>
4932
4933 * font.c (font_parse_fcname): Only one decimal point.
4934 (font_unparse_fcname): Handle data in family and foundry indices
4935 as symbols, not strings.
4936 (font_unparse_gtkname, Ffont_face_attributes): New functions.
4937
4938 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
4939
4940 * font.h (font_unparse_gtkname): Add prototype.
4941
49422008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
4943
4944 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
4945
49462008-06-15 Andreas Schwab <schwab@suse.de>
4947
4948 * font.c (font_update_drivers): Fix crash when no drivers match.
4949
49502008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
4951
4952 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
4953 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
4954
49552008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
4956
4957 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
4958
49592008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
4960
4961 * process.c (Fserial_process_configure, Fprocess_send_eof):
4962 Use EQ to compare Lisp_Objects.
4963
49642008-06-13 Jason Rumney <jasonr@gnu.org>
4965
4966 * w32fns.c (Fw32_select_font): Remove old font API function.
4967
4968 * w32font.c (logfont_to_fcname): New function.
4969 (Fx_select_font): New font dialog function compatible with
4970 GTK/fontconfig version.
4971
4972 * font.c (font_style_symbolic_from_value): New function.
4973 (font_style_symbolic): Use it.
4974
4975 * font.h (font_style_symbolic_from_value): Declare new function.
4976
49772008-06-13 Juanma Barranquero <lekktu@gmail.com>
4978
4979 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
4980 <font-width-table>: Fix typos in docstrings.
4981
49822008-06-13 Daniel Engeler <engeler@gmail.com>
4983
4984 These changes add serial port access.
4985 * process.c: Add HAVE_SERIAL.
4986 (Fdelete_process, Fprocess_status, Fset_process_buffer)
4987 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
4988 (list_processes_1, select_wrapper, Fstop_process)
4989 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
4990 (status_notify): Modify to handle serial processes.
4991 [HAVE_SERIAL] (Fserial_process_configure)
4992 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
4993 New functions.
4994 * process.h (struct Lisp_Process): Add `type'.
4995 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
4996 New functions.
4997 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
4998 serial ports.
4999 (serial_open, serial_configure) New functions.
5000 * w32.h: Add FILE_SERIAL.
5001 (struct _child_process): Add ovl_read, ovl_write.
5002
50032008-06-13 Kenichi Handa <handa@m17n.org>
5004
5005 * dispextern.h (enum lface_attribute_index): New member
5006 LFACE_FOUNDRY_INDEX.
5007
5008 * font.c (font_score): Delete arg alternate_families. Check only
5009 weight, slant, width, and size. Ignore the difference of alias
5010 style symbols.
5011 (font_sort_entites): Adjust for the above change. Reflect the
5012 order of font-driver to scores.
5013 (font_list_entities): Don't check alternate_familes here.
5014 (font_clear_prop): Handle foundry.
5015 (font_update_lface): Don't parse "foundry-family" form here.
5016 Handle FONT_FOUNDRY_INDEX.
5017 (font_find_for_lface): Likewise. Handle alternate families here.
5018 If registry is nil, try iso8859-1 and ascii-0.
5019 (font_open_for_lface): Pay attention to size in ENTITY.
5020 (font_open_by_name): Simplify by calling font_load_for_lface.
5021 (free_font_driver_list): Delete it.
5022 (font_update_drivers): Preserve the order of backends.
5023 (syms_of_font): Setting of sort_shift_bits adjusted for the change
5024 of font_score and font_sort_entites.
5025 (font_update_sort_order): Likewise.
5026
5027 * xfaces.c (LFACE_FOUNDRY): New macro.
5028 (check_lface_attrs): Check foundry.
5029 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
5030 (merge_face_vectors): Check foundry.
5031 (merge_face_ref): Likewise.
5032 (Finternal_set_lisp_face_attribute): Likewise.
5033 (x_update_menu_appearance): Likewise.
5034 (Finternal_get_lisp_face_attribute): Likewise.
5035 (lface_hash): Likewise.
5036 (lface_same_font_attributes_p): Likewise.
5037 (x_supports_face_attributes_p): Likewise.
5038 (tty_supports_face_attributes_p): Likewise.
5039 (Finternal_set_alternative_font_family_alist): Intern strings.
5040 (Finternal_set_alternative_font_registry_alist): Downcase strings.
5041 (realize_default_face): Set LFACE_FOUNDRY (lface).
5042
5043 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
5044 font-driver at first.
5045
5046 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
5047
50482008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5049
5050 * lread.c (Fload): Use xfree, not free on saved_doc_string.
5051
50522008-06-12 Jim Meyering <meyering@redhat.com>
5053
5054 Make unexec_free handle NULL the same way free does.
5055 * unexmacosx.c (unexec_free): Ignore a NULL argument.
5056
50572008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
5058
5059 * character.h (CHAR_TO_BYTE_SAFE): New macro.
5060 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
5061 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
5062 (WEAK_ALIAS): Simplify.
5063 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
5064 when searching a unibyte buffer.
5065
50662008-06-12 Chong Yidong <cyd@stupidchicken.com>
5067
5068 * xfns.c (Fx_select_font): Rename from x-font-dialog.
5069
50702008-06-12 Juanma Barranquero <lekktu@gmail.com>
5071
5072 * w32font.c: Include ctype.h.
5073
50742008-06-11 Jason Rumney <jasonr@gnu.org>
5075
5076 * w32font.c (w32font_encode_char): Detect missing glyphs that are
5077 misreported as space.
5078 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
5079 as aliases for registry iso10646-1.
5080
50812008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
5082
5083 * buffer.c (clone_per_buffer_values): Skip `name'.
5084
50852008-06-11 Chong Yidong <cyd@stupidchicken.com>
5086
5087 * font.c (font_parse_fcname): Fix last change; accept decimal
5088 points in font size.
5089
50902008-06-10 Jason Rumney <jasonr@gnu.org>
5091
5092 * w32uniscribe.c (add_opentype_font_name_to_list):
5093 Skip non unicode fonts.
5094
50952008-06-10 Chong Yidong <cyd@stupidchicken.com>
5096
5097 * xfns.c (Fx_font_dialog): New function.
5098
5099 * gtkutil.c (xg_dialog_response_cb): Rename from
5100 xg_file_response_callback.
5101 (pop_down_dialog): Rename from pop_down_file_dialog.
5102 (xg_get_file_name): Callers changed.
5103 (xg_get_font_name): New function.
5104
5105 * gtkutil.h (xg_get_font_name): Insert prototype.
5106
51072008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
5108
5109 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
5110 x_underline_minimum_display_offset.
5111 (syms_of_xdisp): Declare it here rather than in xterm.c.
5112 * dispextern.h (underline_minimum_offset): Declare it.
5113 * w32term.c (x_draw_glyph_string): Use it.
5114 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
5115 (syms_of_xterm): Don't declare it any more.
5116 (x_draw_glyph_string): Adjust to the new name.
5117
51182008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
5119
5120 * xterm.c (x_underline_minimum_display_offset): New var.
5121 (x_draw_glyph_string): Use it.
5122 (syms_of_xterm): Declare it.
5123
51242008-06-10 Chong Yidong <cyd@stupidchicken.com>
5125
5126 * font.c (font_parse_fcname): Accept GTK-style font names too.
5127
51282008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
5129
5130 * dired.c (file_name_completion): Don't return t if the match is exact
5131 but with different capitalization.
5132 * minibuf.c (Ftry_completion): Simplify.
5133
5134 * window.c (Vwindow_point_insertion_type): New var.
5135 (set_window_buffer): Use it.
5136 (syms_of_window): Init and export it to Lisp.
5137
51382008-06-10 Kenichi Handa <handa@m17n.org>
5139
5140 * font.h (font_intern_prop): Prototype adjusted.
5141
5142 * font.c (font_intern_prop): New arg force_symbol.
5143 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
5144 Adjust for the change of font_intern_prop.
5145
5146 * ftfont.c (ftfont_pattern_entity):
5147 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
5148 (w32_registry):
5149 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
5150 the change of font_intern_prop.
5151
51522008-06-09 Juanma Barranquero <lekktu@gmail.com>
5153
5154 * w32menu.c (digest_single_submenu): Declare extern.
5155
51562008-06-09 Jason Rumney <jasonr@gnu.org>
5157
5158 * w32term.c (x_make_frame_visible): Use alternate restore flags.
5159
5160 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
5161 (parse_single_submenu): Remove.
5162 (digest_single_submenu): Remove.
5163 (syms_of_w32menu): Don't initialise variables that have moved
5164 to menu.c.
5165 (set_frame_menubar): Sync with version in xmenu.c.
5166 (w32_menu_show): Sync with xmenu_show in xmenu.c.
5167
5168 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
5169 Make static again.
5170
51712008-06-09 Jason Rumney <jasonr@gnu.org>
5172
5173 Changes to w32 files related to the move of common menu code
5174 to menu.c on 2008-06-08 by Chong Yidong.
5175
5176 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
5177 defs to w32gui.h.
5178 (single_keymap_panes, push_menu_item, push_menu_pane):
5179 Make globally visible.
5180
5181 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
5182 (local_free, malloc_widget_value, free_widget_value)
5183 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
5184 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
5185 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
5186 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
5187 (menu_items, menu_items_allocated, menu_items_used)
5188 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
5189 (init_menu_items, finish_menu_items, discard_menu_items)
5190 (grow_menu_items, push_submenu_start, push_submenu_end)
5191 (push_left_right_boundary, push_menu_pane, push_menu_item)
5192 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
5193 (free_menubar_widget_tree_value, parse_single_submenu)
5194 (update_submenu_strings): Remove functions.
5195 (xmalloc_widget_value): Remove and declare extern.
5196
5197 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
5198 (OBJ1): Build it.
5199
5200 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
5201 (local_heap, local_alloc, local_free, malloc_widget_value)
5202 (free_widget_value): Define here.
5203
52042008-06-09 Kenichi Handa <handa@m17n.org>
5205
5206 * font.h (Qascii_0): Extern it.
5207
5208 * font.c (Qascii_0): New variable.
5209 (syms_of_font): DEFSYM it.
5210 (font_open_by_name): If the registry "iso8859-1" fails, try also
5211 "ascii-0".
5212
5213 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
5214
52152008-06-08 Kenichi Handa <handa@m17n.org>
5216
5217 * .gdbinit (xfont): New command.
5218
52192008-06-08 Andreas Schwab <schwab@suse.de>
5220
5221 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
5222 * Makefile.in (menu.o): Update dependencies.
5223
5224 * Makefile.in (obj): Always add menu.o.
5225 * emacs.c (main): Always call syms_of_menu.
5226 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
5227
52282008-06-08 Chong Yidong <cyd@stupidchicken.com>
5229
5230 * Makefile.in: Compile menu.c.
5231
5232 * lisp.h: Declare syms_of_menu.
5233
5234 * emacs.c (main): Call syms_of_menu.
5235
5236 * keyboard.h: Relocate platform-independent menu definitions from
5237 xmenu.c.
5238
5239 * menu.c: New file. Relocate platform-independent menu
5240 definitions from xmenu.c. Suggested by Adrian Robert.
5241
5242 * xmenu.c: Remove platform-independent menu definitions.
5243 (menu_items menu_items_inuse, menu_items_allocated)
5244 (menu_items_used, menu_items_n_panes)
5245 (menu_items_submenu_depth): Move to keyboard.h.
5246 (init_menu_items, finish_menu_items, unuse_menu_items)
5247 (discard_menu_items, restore_menu_items, save_menu_items)
5248 (grow_menu_items, push_submenu_start, push_submenu_end)
5249 (push_left_right_boundary, push_menu_pane, push_menu_item)
5250 (keymap_panes, single_keymap_panes, single_menu_item)
5251 (list_of_panes, list_of_items, find_and_call_menu_selection)
5252 (xmalloc_widget_value, free_menubar_widget_value_tree)
5253 (parse_single_submenu, digest_single_submenu)
5254 (update_submenu_strings): Move to menu.c.
5255
52562008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
5257
5258 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
5259
52602008-06-06 Miles Bader <miles@gnu.org>
5261
5262 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
5263 face, not frame default.
5264
52652008-06-05 Martin Rudalics <rudalics@gmx.at>
5266
5267 * window.c (pop_up_windows, pop_up_frames)
5268 (display_buffer_reuse_frames, Vpop_up_frame_function)
5269 (Vdisplay_buffer_function, Veven_window_heights)
5270 (Vspecial_display_buffer_names, Vspecial_display_regexps)
5271 (Vspecial_display_function, Vsame_window_buffer_names)
5272 (Vsame_window_regexps, split_height_threshold)
5273 (Vsplit_window_preferred_function): Move those vars to window.el.
5274 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
5275 (Fdisplay_buffer): Move those functions to window.el.
5276 (syms_of_window): Remove corresponding declarations.
5277 (display_buffer): New function.
5278 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
5279 * dispnew.c (Flast_nonminibuf_frame): New function.
5280 * buffer.c (Fpop_to_buffer): Move to window.el.
5281
52822008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
5283
5284 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
5285
52862008-06-05 Kenichi Handa <handa@m17n.org>
5287
5288 * coding.c (detect_coding): Fix previous change.
5289 (detect_coding_system): Likewise.
5290
52912008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
5292
5293 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
5294
5295 * keymap.c (Vminibuffer_local_filename_must_match_map):
5296 Rename from Vminibuffer_local_must_match_filename_map.
5297 (syms_of_keymap):
5298 * minibuf.c (Fcompleting_read): Adjust accordingly.
5299 * commands.h: Rename declaration as well.
5300
53012008-06-05 Kenichi Handa <handa@m17n.org>
5302
5303 * font.c (Ffont_spec): Don't use font_parse_family_registry for
5304 family name.
5305 (Ffont_put): Likewise.
5306
5307 * fontset.c (fontset_find_font): Call font_open_for_lface with the
5308 current font-spec.
5309
5310 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
5311 is unspecified.
5312
5313 * xfaces.c (realize_x_face): If the font-related face attributes
5314 are the same as those of default face, realize a new fontset from
5315 default->fontset.
5316 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
5317
53182008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
5319
5320 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
5321 (move_it_in_display_line): New wrapper.
5322
5323 * window.c (window_scroll_pixel_based_preserve_x)
5324 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
5325 (window_scroll_pixel_based, window_scroll_line_based):
5326 Use them to preserve column positions.
5327 (syms_of_window): Initialize them.
5328
5329 * indent.c (Fvertical_motion): Extend first arg to allow passing an
5330 (HPOS . VPOS) pair.
5331
5332 * dispextern.h (move_it_in_display_line): Declare.
5333
53342008-06-05 Juanma Barranquero <lekktu@gmail.com>
5335
5336 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
5337 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
5338 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
5339
53402008-06-04 Juanma Barranquero <lekktu@gmail.com>
5341
5342 * window.c (Fset_window_parameter): Doc fix.
5343 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
5344
53452008-06-04 Joakim Verona <joakim@verona.se>
5346
5347 * window.h (struct window): Add new member window_parameters.
5348
5349 * window.c (Fwindow_parameters, Fwindow_parameter)
5350 (Fset_window_parameter): New defuns.
5351 (syms_of_window): Defsubr the new defuns.
5352 (make_window): Initialize window_parameters to nil.
5353
53542008-06-04 John Paul Wallington <jpw@pobox.com>
5355
5356 * eval.c (Fdefmacro): Doc fix.
5357
53582008-06-04 Kenichi Handa <handa@m17n.org>
5359
5360 * coding.c (detect_coding): Fix handling of coding->head_ascii.
5361 Be sure to call setup_coding_system when we find a proper coding system.
5362 (detect_coding_system): Fix handling of coding->head_ascii.
5363
53642008-06-03 Andreas Schwab <schwab@suse.de>
5365
5366 * font.c (font_prop_validate_spacing): Fix last change.
5367
53682008-06-03 Kenichi Handa <handa@m17n.org>
5369
5370 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
5371 (font_parse_fcname): Fix handling of unknown key.
5372
5373 * xfont.c (xfont_list): Try an alias.
5374
5375 * charset.c (char_charset): Return NULL if the arg charset_list is
5376 specified and C doesn't belong to any of them.
5377
53782008-06-02 Chip Coldwell <coldwell@redhat.com>
5379
5380 * font.c (font_pixel_size): Don't take cdr of an integer.
5381
53822008-06-02 Jim Meyering <meyering@redhat.com>
5383
5384 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
5385 * alloc.c (xfree): Return right away for a NULL arg.
5386 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
5387 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
5388 * mac.c (create_apple_event_from_event_ref): Likewise.
5389 (create_apple_event_from_drag_ref, cfstring_create_normalized):
5390 Likewise.
5391 * doprnt.c (doprnt1): Likewise.
5392 * frame.c (frame): Likewise.
5393 * keyboard.c (wipe_kboard): Likewise.
5394 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
5395 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
5396 * term.c (tty_default_color_capabilities, maybe_fatal)
5397 (delete_tty): Likewise.
5398 * w16select.c (string): Likewise.
5399 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
5400 * w32bdf.c (w32_free_bdf_font): Likewise.
5401 * w32fns.c (w32_unload_font): Likewise.
5402 * w32font.c (w32font_close): Likewise.
5403 * window.c (size_window): Likewise.
5404 * xselect.c (receive_incremental_selection): Likewise.
5405 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
5406 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
5407 * w32.c (stat): Likewise.
5408
5409 Remove useless if-before-free tests.
5410 * editfns.c (Fset_time_zone_rule): Likewise.
5411 * lread.c (nosuffix): Likewise.
5412 * ralloc.c (get_bloc): Likewise.
5413 * regex.c (reg_free): Likewise.
5414 * xftfont.c (xftfont_open, xftfont_close): Likewise.
5415 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
5416 * xsmfns.c (smc_save_yourself_CB): Likewise.
5417
54182008-06-02 Kenichi Handa <handa@m17n.org>
5419
5420 * font.c (font_find_for_lface): Handle float font size.
5421 (font_open_for_lface): Likewise.
5422
5423 * xfaces.c (x_supports_face_attributes_p): Check face->font before
5424 comparing the properties.
5425
54262008-06-01 Jason Rumney <jasonr@gnu.org>
5427
5428 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
5429 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
5430 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
5431 Don't add empty script list.
5432 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
5433
54342008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
5435
5436 * Makefile.in (dot, dotdot): Remove, update users.
5437 ".." has been used elsewhere in the file for a long time.
5438 (LIBXT_STATIC): Remove conditional based on unused variable.
5439
54402008-06-01 Miles Bader <miles@gnu.org>
5441
5442 * xfaces.c (Vface_remapping_alist): New variable.
5443 (syms_of_xfaces): Initialize it.
5444 (enum named_merge_point_kind): New type.
5445 (struct named_merge_point): Add `named_merge_point_kind' field.
5446 (push_named_merge_point): Make cycle detection respect different
5447 named-merge-point kinds.
5448 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
5449 Remove face-name alias resolution.
5450 (lface_from_face_name): New definition using
5451 `lface_from_face_name_no_resolve'.
5452 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
5453 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
5454 (get_lface_attributes): New definition that layers face-remapping on
5455 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
5456 (lookup_basic_face): New function.
5457 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
5458 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
5459 `get_lface_attributes'.
5460 (face_at_buffer_position): Use `lookup_basic_face' to lookup
5461 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
5462 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
5463
5464 * xdisp.c (init_iterator): Pass base_face_id through
5465 `lookup_basic_face' when we actually use it as a face-id.
5466 (handle_single_display_prop): Use `lookup_basic_face' to lookup
5467 DEFAULT_FACE_ID.
5468
5469 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
5470 lookup the initial face-id.
5471
5472 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
5473
54742008-06-01 Juanma Barranquero <lekktu@gmail.com>
5475
5476 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
5477 (Fremove_text_properties): Fix typos in docstrings.
5478
54792008-05-31 Kenichi Handa <handa@m17n.org>
5480
5481 * font.c (font_list_entities): Fix the car part of data to be
5482 stored in the cache.
5483
5484 * ftfont.c (ftfont_font_format): Don't use strcasestr.
5485
54862008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
5487
5488 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
5489 Add a `test' argument so another predicate than `equal' can be used.
5490 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
5491 (map_char_table): Remove unused vars `c' and `i'.
5492 * lisp.h (Foptimize_char_table): Adjust declaration.
5493 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
5494
54952008-05-30 Kenichi Handa <handa@m17n.org>
5496
5497 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
5498 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
5499 defined.
5500
55012008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
5502
5503 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5504 (Fmake_variable_frame_local): Disallow mixing buffer-local and
5505 frame-local settings for the same variable.
5506
55072008-05-30 Kenichi Handa <handa@m17n.org>
5508
5509 * fontset.c (Ffont_info): Move to font.c.
5510 (syms_of_fontset): Delete defsubr of Sfont_info.
5511
5512 * font.c (font_style_to_value, font_score): Delete casting of the
5513 args to xstcasecmp.
5514 (register_font_driver): Increment num_font_drivers only when
5515 registering the driver globally.
5516 (Ffont_info): Move from fontset.c. Handle a font object too.
5517 (syms_of_font): Defsubr Sfont_info.
5518
55192008-05-29 Kenichi Handa <handa@m17n.org>
5520
5521 * coding.h (enum define_coding_utf8_arg_index): New enum.
5522 (enum coding_attr_index): Change coding_attr_utf_16_bom to
5523 coding_attr_utf_bom.
5524 (enum utf_bom_type): Rename from utf_16_bom_type.
5525 (struct utf_16_spec): Adjust for the above change.
5526 (struct coding_system): Add utf_8_bom in `spec' union.
5527
5528 * coding.c (CODING_UTF_8_BOM): New macro.
5529 (enum coding_category): Delete coding_category_utf_8, add
5530 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
5531 coding_category_utf_8_sig.
5532 (CATEGORY_MASK_UTF_8): Delete it.
5533 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
5534 (CATEGORY_MASK_UTF_8_SIG): New macros.
5535 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
5536 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
5537 CATEGORY_MASK_UTF_8_SIG.
5538 (CATEGORY_MASK_UTF_8): New macro.
5539 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
5540 (detect_coding_utf_8): Check BOM.
5541 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
5542 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
5543 (encode_coding_utf_16): Likewise.
5544 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
5545 (detect_coding, detect_coding_system): Handle utf-8-auto.
5546 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
5547 (syms_of_coding): Fix setting up of Vcoding_category_table.
5548
55492008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
5550
5551 * process.c (Faccept_process_output): If `millisec' is non-nil,
5552 `seconds' default to 0.
5553 (wait_reading_process_output): Also return non-nil if we read output
5554 from a non-running process.
5555
55562008-05-29 Jason Rumney <jasonr@gnu.org>
5557
5558 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
5559 `raster' specified.
5560 (add_font_entity_to_list): Allow non-opentype truetype fonts back
5561 in the uniscribe backend, but disallow any font that has no
5562 unicode subrange support.
5563
55642008-05-29 Juanma Barranquero <lekktu@gmail.com>
5565
5566 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
5567 Fix typos in docstrings.
5568
55692008-05-29 Kenichi Handa <handa@m17n.org>
5570
5571 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
5572 (Fx_family_fonts): Set frame correctly.
5573
55742008-05-28 Jason Rumney <jasonr@gnu.org>
5575
5576 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
5577
55782008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
5579
5580 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
5581 calling build_annotations.
5582
55832008-05-28 Juanma Barranquero <lekktu@gmail.com>
5584
5585 * coding.c (Fdecode_coding_region, Fencode_coding_region)
5586 (Fencode_coding_string):
5587 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
5588 <latin-extra-code-table>: Fix typos in docstrings.
5589 (syms_of_coding) <coding-system-alist>: Doc fix.
5590 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
5591
55922008-05-28 Kenichi Handa <handa@m17n.org>
5593
5594 * fontset.c (Ffont_info): Don't call font_close_object.
5595
5596 * font.c (font_parse_family_registry): Use Ffont_put to validate
5597 foundry and family.
5598 (font_delete_unmatched): Don't check spacing.
5599 (font_list_entities): Add spacing to the spec to list fonts.
5600
5601 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
5602 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
5603
5604 * coding.c (encode_coding_raw_text): Fix previous change.
5605 (encode_coding_object): When the dst_object is a buffer and is
5606 different from src_object, move gap to PT.
5607
56082008-05-27 Chong Yidong <cyd@stupidchicken.com>
5609
5610 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
5611
56122008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5613
5614 * coding.c (encode_coding_raw_text): Set coding->produced_char for
5615 all branches. Compute it differently.
5616
5617 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
5618
56192008-05-27 Juanma Barranquero <lekktu@gmail.com>
5620
5621 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
5622 into "else if () ... else ...".
5623
56242008-05-27 Jason Rumney <jasonr@gnu.org>
5625
5626 * w32font.c (w32font_open_internal): Determine if glyph indices
5627 are likely to work here.
5628
56292008-05-27 Chong Yidong <cyd@stupidchicken.com>
5630
5631 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
5632 draw overlap glyphs with appropriate highlighting.
5633
56342008-05-27 Kenichi Handa <handa@m17n.org>
5635
5636 * xfont.c (xfont_open): Fix calculation of font->average_width.
5637
56382008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5639
5640 * casefiddle.c (casify_object): Try to guess better whether the
5641 argument is a byte or a char.
5642
56432008-05-26 Andreas Schwab <schwab@suse.de>
5644
5645 * xselect.c (x_reply_selection_request): Properly handle format == 32.
5646 Always send multiples of format size.
5647
5648 * xterm.c (x_set_frame_alpha): Fix type mismatch.
5649
56502008-05-26 Jason Rumney <jasonr@gnu.org>
5651
5652 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
5653 (compute_metrics): Don't set failure if we just cleared the cache.
5654 (w32_weight_table): Remove unused variable.
5655 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
5656 backwards compatibility.
5657
56582008-05-25 Kenichi Handa <handa@m17n.org>
5659
5660 * w32term.c (x_draw_glyph_string):
5661 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
5662
5663 * xfaces.c: Delete unused function prototypes.
5664 (xstrlwr, font_frame): Delete them.
5665 (clear_face_cache): Delete unused variable.
5666
5667 * xftfont.c (xftfont_open): Delete unused variable.
5668 If underline_thickness is not 1, adjust underline_position.
5669
5670 * ftxfont.c (ftxfont_open): Delete unused variable.
5671
5672 * fontset.c (face_for_char): Optimize for the case of no charset
5673 property.
5674
5675 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
5676 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
5677 (otf_open, font_otf_capability, generate_otf_features)
5678 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
5679 Comment out by surrounding "#if 0" and "#endif" for the moment.
5680 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
5681 (syms_of_font): Codes for accessing above commented out.
5682
56832008-05-24 Eli Zaretskii <eliz@gnu.org>
5684
5685 * w32proc.c: Include dispextern.h.
5686
5687 * w32.c: Include dispextern.h.
5688
56892008-05-23 Juanma Barranquero <lekktu@gmail.com>
5690
5691 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
5692 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
5693 Fix typos in docstrings.
5694
56952008-05-23 Jason Rumney <jasonr@gnu.org>
5696
5697 * xsmfns.c: Remove includes that are already included by config.h.
5698
56992008-05-23 Kenichi Handa <handa@m17n.org>
5700
5701 * charset.c (Qemacs, charset_emacs): New variables.
5702 (char_charset): Fix for non-Unicode characters.
5703 (syms_of_charset): Define charset_emacs.
5704
5705 * w32term.c (x_draw_glyph_string): Be sure to update
5706 s->underline_thickness and s->underline_position. Be sure to draw
5707 underline within the current line area.
5708
5709 * xterm.c (x_draw_glyph_string): Be sure to update
5710 s->underline_thickness and s->underline_position. Be sure to draw
5711 underline within the current line area.
5712
5713 * fontset.c: Delete unused variables and add casting for char *
5714 throughout the file.
5715 (fontset_font): Try the fallback fonts of the current fontset
5716 before consulting the default fontset.
5717
5718 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
5719
5720 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
5721
57222008-05-22 Jason Rumney <jasonr@gnu.org>
5723
5724 * font.c: Don't include strings.h.
5725
5726 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
5727
5728 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
5729 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
5730 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
5731 to call xstrcasecmp.
5732
5733 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
5734
5735 * fontset.c (fs_query_fontset): Use xstrcasecmp.
5736
5737 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
5738
5739 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
5740
57412008-05-22 Kenichi Handa <handa@m17n.org>
5742
5743 * puresize.h (BASE_PURESIZE): Increase to 1220000.
5744
5745 * font.c (font_prop_validate_style): Adjust for the format
5746 change of font_style_table.
5747
5748 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
5749 two args.
5750
5751 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
5752 two args.
5753
57542008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
5755
5756 * minibuf.c (keys_of_minibuf): Delete.
5757 * lisp.h (keys_of_minibuf): Delete.
5758 * emacs.c (main): Don't call keys_of_minibuf.
5759
57602008-05-22 Kenichi Handa <handa@m17n.org>
5761
5762 * ftfont.c (ftfont_resolve_generic_family): Rename from
5763 ftfont_list_generic_family. Return a single family for each
5764 generic family.
5765 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
5766 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
5767 Call font_add_log.
5768 (ftfont_match): Call font_add_log.
5769
5770 * font.h (Ffont_xlfd_name): EXFUN adjusted.
5771 (FONT_DEBUG): Define it.
5772 (font_add_log): Extern it.
5773 (font_assert): Rename from xassert.
5774
5775 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
5776 (xfont_list_family): Call font_add_log.
5777 (xfont_match): Likewise.
5778 (memq_no_quit): Delete.
5779
5780 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
5781 call of Ffont_xlfd_name.
5782
5783 * xfaces.c (struct table_entry, slant_table, weight_table)
5784 (swidth_table): Move to font.c.
5785
5786 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
5787 xassert are changed to font_assert. Delete many unused variables.
5788 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
5789 New variables.
5790 (struct table_entry): Move from xfaces.c and modified.
5791 (weight_table, slant_table, width_table): Move from xfaces.c and
5792 contents adjusted for the change of struct table_entry.
5793 (font_style_to_value, font_style_symbolic): Adjust for the
5794 format change of font_style_table.
5795 (font_parse_family_registry): Don't overwrite existing foundry and
5796 family of font_spec.
5797 (font_score): Fix calculation of diff for sizes.
5798 (font_sort_entites): Call font_add_log.
5799 (font_delete_unmatched): Return a newly created list.
5800 (font_list_entities): Fix previous change. Call font_add_log.
5801 (font_matching_entity, font_open_entity, font_close_entity):
5802 Call font_add_log.
5803 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
5804 (Finternal_set_font_style_table): Delete.
5805 (BUILD_STYLE_TABLE): New macro.
5806 (build_style_table): New function.
5807 (Vfont_log, font_log_env_checked): New variables.
5808 (font_add_log): New function.
5809 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
5810 Declare Lisp variables "font-weight-table", "font-slant-table",
5811 "font-width-table", and "font-log". Initialize font_style_table.
5812
58132008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
5814
5815 * xterm.c (x_set_frame_alpha): Move declarations before statements.
5816
58172008-05-21 Seiji Zenitani <zenitani@mac.com>
5818 Ryo Yoshitake <ryo@shiftmode.net>
5819
5820 * frame.c (Qalpha): Add a new frame parameter `alpha'.
5821 (Vframe_alpha_lower_limit): New variable.
5822 (x_set_alpha): New function.
5823
5824 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
5825
5826 * xfns.c (x-create-frame, Qalpha):
5827 Initialize the frame parameter `alpha'.
5828 * xterm.c (OPAQUE, OPACITY): New.
5829 (x_set_frame_alpha): New function.
5830 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
5831
5832 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
5833 * w32fns.c (w32_frame_parm_handlers): Likewise.
5834
58352008-05-20 Jason Rumney <jasonr@gnu.org>
5836
5837 * w32font.c (add_font_entity_to_list): Don't add non-opentype
5838 truetype fonts to opentype list.
5839
58402008-05-20 Juanma Barranquero <lekktu@gmail.com>
5841
5842 * fontset.c (Ffontset_info): Doc fix.
5843 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
5844 <ignore-relative-composition>: Fix typos in docstrings.
5845
5846 * font.c (syms-of-font) <font-encoding-alist>:
5847 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
5848 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
5849 (Ffont_otf_alternates): Doc fixes.
5850
58512008-05-20 Kenichi Handa <handa@m17n.org>
5852
5853 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
5854 font.h through out the file.
5855 (FONT_DRIVERS): Rename from FONTOBJ.
5856 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
5857 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
5858
5859 * emacs.c (main): Call syms_of_font unconditionally.
5860
5861 * font.h (find_font_encoding): Extern it.
5862
5863 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
5864 fontset.c.
5865 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
5866 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
5867 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
5868 only when HAVE_WINDOW_SYSTEM is defined.
5869 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
5870 when HAVE_WINDOW_SYSTEM is defined.
5871
5872 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
5873 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
5874
5875 * xfaces.c: Include font.h unconditionally.
5876 (merge_face_ref, merge_face_vectors)
5877 (Finternal_set_lisp_face_attribute): Cancel the previous change.
5878
58792008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
5880
5881 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
5882 indirect_variable.
5883 * eval.c (lisp_indirect_variable): New fun.
5884 (Fuser_variable_p): Use it.
5885
58862008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
5887
5888 * lisp.h (indirect_variable):
5889 * data.c (indirect_variable, let_shadows_buffer_binding_p):
5890 Use Lisp_Symbol pointers rather than Lisp_Object.
5891 Adjust callers.
5892 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
5893 To this end, change calling-convention.
5894
5895 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
5896 if some non-hidden buffers are selected by string&pred.
5897
58982008-05-19 Chong Yidong <cyd@stupidchicken.com>
5899
5900 * process.c (wait_reading_process_output): Always check status
5901 when in batch mode.
5902
59032008-05-19 Kenichi Handa <handa@m17n.org>
5904
5905 * font.c (font_list_entities): Fix handling of cache.
5906 (font_matching_entity): Likewise.
5907
5908 * ftfont.c (cs_iso8859_1): Delete.
5909 (ft_face_cache): New variable.
5910 (struct ftfont_info): New member fc_charset_idx.
5911 (ftfont_build_basic_charsets): Delete.
5912 (fc_charset_table): New variable.
5913 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
5914 . FC_CHARSET_IDX) as :font-entity property in the font entity.
5915 Callers changed.
5916 (ftfont_lookup_cache, ftfont_get_charset): New functions.
5917 (ftfont_spec_pattern): New argument fc_charset_idx.
5918 Check registry more rigidly. Change callers.
5919 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
5920 change of :font-entity property of the font.
5921
5922 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
5923 property of the font.
5924
59252008-05-18 Juanma Barranquero <lekktu@gmail.com>
5926
5927 * coding.c (Fcoding_system_p): Rename argument to match docstring.
5928 (Funencodable_char_position, Fcheck_coding_systems_region)
5929 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
5930 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
5931 (Ffind_operation_coding_system, Fset_coding_system_priority)
5932 (Fcoding_system_eol_type): Doc fixes.
5933
59342008-05-17 Glenn Morris <rgm@gnu.org>
5935
5936 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
5937
59382008-05-16 Eli Zaretskii <eliz@gnu.org>
5939
5940 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
5941 and st_gid.
5942
5943 * frame.c (Fdelete_frame): Don't call font_update_drivers if
5944 HAVE_WINDOW_SYSTEM is not defined.
5945
5946 * xfaces.c (merge_face_ref, merge_face_vectors)
5947 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
5948 HAVE_WINDOW_SYSTEM is defined.
5949 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
5950
59512008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
5952
5953 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
5954
59552008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5956
5957 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
5958
59592008-05-15 Kenichi Handa <handa@m17n.org>
5960
5961 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
5962 preference.
5963
59642008-05-15 Glenn Morris <rgm@gnu.org>
5965
5966 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
5967
59682008-05-15 Chong Yidong <cyd@stupidchicken.com>
5969
5970 * fns.c (init_fns): Don't initialize weak_hash_tables here.
5971 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
5972
5973 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
5974
59752008-05-15 Kenichi Handa <handa@m17n.org>
5976
5977 * ftfont.c (ftfont_list): Downcase family name to check generic
5978 families.
5979
5980 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
5981 font-spec for QCfont value.
5982
5983 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
5984 buffer. Check the return value of it.
5985
59862008-05-14 Jason Rumney <jasonr@gnu.org>
5987
5988 * w32term.c (w32_get_glyph_overhangs): Remove.
5989 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
5990
59912008-05-14 Kenichi Handa <handa@m17n.org>
5992
5993 * font.c (font_prop_validate): Make nil a valid value.
5994 (font_clear_cache): Check if the cached vector of entities is nil
5995 or not.
5996
59972008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5998
5999 * emacs.c (main_thread): Conditionalize on
6000 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
6001 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
6002
6003 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
6004 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
6005 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
6006
60072008-05-14 Kenichi Handa <handa@m17n.org>
6008
6009 * coding.c (detect_coding_iso_2022): Ignore a coding category that
6010 has no corresponding coding system.
6011
60122008-05-14 Jason Rumney <jasonr@gnu.org>
6013
6014 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
6015
6016 * w32font.h (w32font_open_internal): Update declaration.
6017
6018 * w32font.c (w32font_open_internal): Change last argument from
6019 w32font_info struct to font object. Fill in font object from
6020 font_entity. Get Outline metrics if possible. Use them to
6021 calculate underline position and thickness. Use xlfd name as name
6022 property. Don't set codepage.
6023 (w32font_open): Pass font_object to w32font_open_internal. Don't
6024 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
6025 (w32font_draw): Use s->font.
6026 (clear_cached_metrics): Don't clear non-existent blocks.
6027
6028 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
6029 font was not found.
6030 (x_draw_glyph_string): Use underline position and thickness from font.
6031
6032 * w32uniscribe.c (uniscribe_open): Pass font_object to
6033 w32font_open_internal.
6034
60352008-05-14 Kenichi Handa <handa@m17n.org>
6036
6037 These changes are to delete all legacy font-handling codes, and
6038 make Emacs use only font-backends.
6039
6040 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
6041 (frame.o, image.o, print.o): Depend on $(FONTSRC).
6042
6043 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
6044
6045 * charset.h (Vcharset_non_preferred_head)
6046 (Vcurrent_iso639_language): Extern them.
6047
6048 * charset.c (Vcharset_non_preferred_head): New variable.
6049 (Vcurrent_iso639_language): New variable.
6050 (syms_of_charset): Declare it as a Lisp variable.
6051 (char_charset): Don't check non preferred charsets. As a last
6052 resort, return charset_unicode.
6053 (Fset_charset_priority): Update Vcharset_non_preferred_head.
6054
6055 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
6056 conditionals. Don't check enable_font_backend. Delete all codes
6057 used only when USE_FONT_BACKEND is not defined.
6058
6059 * dispextern.h (struct glyph_string): Change type of `font' to
6060 `struct font *'.
6061 (struct glyph_string): New member underline_position and
6062 underline_thickness.
6063 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
6064 (struct face): Change type of `font' to `struct font *'. Remove
6065 members `font_name', `font_info_id'.
6066 (per_char_metric, encode_char): Delete externs.
6067 (calc_pixel_width_or_height): Adjust the prototype.
6068
6069 * emacs.c (enable_font_backend): Delete extern.
6070 (main): Don't set enable_font_backend. Don't check the command
6071 line argument "-disable-font-backend".
6072
6073 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
6074 (enum font_property_index): New members FONT_DPI_INDEX,
6075 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
6076 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
6077 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
6078 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
6079 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
6080 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
6081 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
6082 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
6083 (struct font_spec, struct font_entity): New structs.
6084 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
6085 (struct font): Many members from old "struct font_info" moved to
6086 here. Members font and entity deleted.
6087 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
6088 the new font-related objects.
6089 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
6090 (CHECK_FONT_GET_OBJECT): Likewise.
6091 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
6092 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
6093 (struct font_driver): New members case_sensitive anc check. Type
6094 of the member list and open changed.
6095 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
6096 (font_symbolic_width, font_find_object, font_get_spec)
6097 (font_set_lface_from_name): Delete extern.
6098 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
6099
6100 * font.c: Include <strings.h>.
6101 (enable_font_backend): Delete it.
6102 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
6103 (CHECK_VALIDATE_FONT_SPEC): Delete it.
6104 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
6105 (null_string): Delete it.
6106 (null_vector): Make it static.
6107 (font_family_alist): Delete it.
6108 (Qnormal): Extern it.
6109 (QCextra, QClanguage): Delete it.
6110 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
6111 (font_make_spec, font_make_entity, font_make_object)
6112 (font_intern_prop): Renamed from intern_downcase. Don't downcase
6113 the string. Callers changed.
6114 (font_pixel_size): Adjusted for the format change of font-related
6115 objects.
6116 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
6117 (font_style_to_value, font_style_symbolic): New function.
6118 (build_font_family_alist): Delete it.
6119 (font_registry_charsets): Use Fassoc_string instead of
6120 assq_no_quit.
6121 (font_prop_validate_symbol): Don't return null_string.
6122 (font_prop_validate_style): Adjusted for the change of
6123 style-related values in a font vector.
6124 (font_property_table): Delete entries for QClanguage and
6125 QCantialias, add entries for QCavgwidth.
6126 (get_font_prop_index): Delete the 2nd argument FROM.
6127 (font_prop_validate): Arguments changed.
6128 (font_put_extra): Adjusted for the change of font-related objects.
6129 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
6130 (font_parse_fcname, font_unparse_fcname)
6131 (font_prepare_composition): Likewise.
6132 (font_parse_family_registry): Renamed from font_merge_old_spec.
6133 (otf_open): Delete the 1st arg entity.
6134 (font_otf_capability): Adjusted for the above change.
6135 (font_score): New arg alternate_families. Adjusted for the change
6136 of font-related objects.
6137 (font_sort_entites): New arg best_only.
6138 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
6139 Delete them.
6140 (font_match_p): Check alternate families.
6141 (font_find_object): Delete it.
6142 (font_check_object): New function.
6143 (font_clear_cache): Adjusted for the change of font-related objects.
6144 (font_delete_unmatched): New arg.
6145 (font_list_entities): Call font_driver->list with a spec that
6146 doesn't specify style-related properties.
6147 (font_matching_entity): Arguments changed. Caller changed.
6148 (font_open_entity): Adjusted for the change of font-related objects.
6149 (font_close_object, font_has_char, font_encode_char)
6150 (font_get_name, font_get_spec): Likewise.
6151 (font_spec_from_name, font_clear_prop, font_update_lface):
6152 New functions.
6153 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
6154 (font_prepare_for_face, font_done_for_face, font_open_by_name)
6155 (font_at): Adjusted for the change of font-related objects.
6156 (font_range): New function.
6157 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
6158 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
6159 (Fcopy_font_spec, Fmerge_font_spec): New function.
6160 (Ffont_family_list): Renamed from list-families.
6161 (Finternal_set_font_style_table): Arguments changed.
6162 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
6163 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
6164 change of font-related objects.
6165 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
6166
6167 * fontset.h (struct font_info): Delete it. Most members go to
6168 struct font.
6169 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
6170 (enum FONT_SPEC_INDEX): Delete it.
6171 (font_info, list_fonts_func, load_font_func, query_font_func)
6172 (set_frame_fontset_func, find_ccl_program_func)
6173 (get_font_repertory_func, new_fontset_from_font_name): Delete
6174 externs.
6175 (fontset_from_font_name): Extern it.
6176 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
6177 (FONT_INFO_FROM_FACE): Deleted.
6178 (face_for_font): Adjust prototype.
6179
6180 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
6181 conditionals. Don't check enable_font_backend. Delete all codes
6182 used only when USE_FONT_BACKEND is not defined.
6183 (get_font_info_func, list_font_func, load_font_func)
6184 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
6185 (get_font_repertory_func): Delete them.
6186 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
6187 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
6188 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
6189 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
6190 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
6191 (fontset_compare_rfontdef): New function.
6192 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
6193 rfont-defs by qsort. Adjusted for the change of font-group vector.
6194 (load_font_get_repertory): Deleted.
6195 (fontset_find_font): Use new macros to ref/set elements of
6196 font-def and rfont-def.
6197 (fontset_font): Fix the timing of remembering that no font for C.
6198 (free_face_fontset): Do nothing if the face has no fontset.
6199 (face_suitable_for_char_p): Use new macros to ref/set elements of
6200 rfont-def.
6201 (face_for_char): Likewise. Call face_for_char with font_object.
6202 (fs_load_font): Delete. Delete #pragma surrounding it.
6203 (fs_query_fontset): Use strcasecmp instead of strcmp.
6204 (generate_ascii_font_name): Adjusted for the format change of
6205 font-spec.
6206 (Fset_fontset_font): Likewise. Use new macros to set elements of
6207 font-def.
6208 (Fnew_fontset): Use font_unparse_xlfd to generate
6209 FONTSET_ASCII (fontset).
6210 (new_fontset_from_font_name): Deleted.
6211 (fontset_from_font): Renamed from new_fontset_from_font. Check if
6212 a fontset is already created for the font. FIx updating of
6213 Vfontset_alias_alist.
6214 (fontset_ascii_font): Deleted.
6215 (Ffont_info): Adjusted for the format change of font-spec.
6216 (Finternal_char_font): Likewise.
6217 (Ffontset_info): Likewise.
6218 (syms_of_fontset): Don't check load_font_func.
6219
6220 * fns.c (internal_equal): Handle PREV_FONT.
6221
6222 * frame.h: Delete USE_FONT_BACKEND conditional.
6223
6224 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
6225 conditionals. Don't check enable_font_backend. Delete all codes
6226 used only when USE_FONT_BACKEND is not defined.
6227 (x_set_font): Call x_new_font, not x_new_fontset2.
6228 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
6229 already set for the frame.
6230
6231 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
6232 a font-entity by font_make_entity. Use font_intern_prop instead
6233 of intern_downcase. Use FONT_SET_STYLE to set a style-related
6234 font property. If a font is scalable, set avgwidth property to 0.
6235 Set font-entity property by font_put_extra.
6236 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
6237 (ffont_driver): Adjusted for the change of struct font_driver.
6238 (ftfont_spec_pattern): New function.
6239 (ftfont_list): Return a list, not vector.
6240 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
6241 (ftfont_list_family): Don't downcase names.
6242 (ftfont_free_entity): Deleted.
6243 (ftfont_open): Return a font-object. Adjusted for the change of
6244 struct font. Get underline_thickness and underline_position from
6245 font property. Don't update dpyinfo->smallest_font_height and
6246 dpyinfo->smallest_char_width.
6247 (ftfont_close): Don't free `struct font'.
6248 (ftfont_has_char): Adjusted for the format change of font-entity.
6249 (ftfont_encode_char, ftfont_text_extents): Likewise.
6250
6251 * ftxfont.c (ftxfont_list): Return a list, not vector.
6252 (ftxfont_open): Return a font-object. Adjusted for the change of
6253 struct font. Get underline_thickness and underline_position from
6254 font property. Don't update dpyinfo->smallest_font_height and
6255 dpyinfo->smallest_char_width.
6256 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
6257 (ftxfont_draw): Adjusted for the change of struct font.
6258
6259 * image.c (image_ascent): Don't include "charset.h". Include
6260 "character.h" and "font.h".
6261
6262 * lisp.h (enum pvec_type): New member PREV_FONT.
6263 (Fassoc_string): EXFUN it.
6264
6265 * print.c: Include font.h.
6266 (print_object): Handle font-related objects.
6267
6268 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
6269 conditionals. Don't check enable_font_backend. Delete all codes
6270 used only when USE_FONT_BACKEND is not defined.
6271 (handle_auto_composed_prop): Do nothing if it->f is not on a
6272 window system. Check how many following characters can be
6273 displayed by the same font.
6274 (calc_pixel_width_or_height): Type of the 4th arg is changed to
6275 'struct font *'.
6276 (get_char_face_and_encoding): Assign the whole encoding task to
6277 the `encode-char' method of a font driver.
6278 (fill_composite_glyph_string): Adjusted for the change of `struct
6279 face' and `struct glyph_string'.
6280 (fill_glyph_string): Likewise.
6281 (get_per_char_metric): Arguments changed.
6282 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
6283 and `struct glyph_string'.
6284 (produce_stretch_glyph, calc_line_height_property)
6285 (x_produce_glyphs): Likewise.
6286
6287 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
6288 conditionals. Don't check enable_font_backend. Delete all codes
6289 used only when USE_FONT_BACKEND is not defined. Use
6290 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
6291 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
6292 (Qp): Extern them.
6293 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
6294 Deleted.
6295 (struct font_name): Deleted.
6296 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
6297 (compare_fonts_by_sort_order): New function.
6298 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
6299 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
6300 Deleted.
6301 (Fx_family_fonts): Use font_list_entities, and sort fonts by
6302 compare_fonts_by_sort_order.
6303 (Fx_font_family_list): Call Ffont_family_list.
6304 (face_numeric_value, face_numeric_weight, face_numeric_slant)
6305 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
6306 (face_symbolic_slant, face_symbolic_swidth)
6307 (split_font_name_into_vector, build_font_name_from_vector)
6308 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
6309 (font_rescale_ratio, split_font_name, build_font_name)
6310 (free_font_names, sort_fonts, x_face_list_fonts)
6311 (face_font_available_p, sorted_font_list, cmp_font_names)
6312 (font_list_1, concat_font_list, font_list, remove_duplicates):
6313 Deleted.
6314 (Fx_list_fonts): Use Ffont_list.
6315 (LFACE_AVGWIDTH): Deleted.
6316 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
6317 by FONTP.
6318 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
6319 (set_lface_from_font_name): Delete it.
6320 (set_lface_from_font): Renamed from
6321 set_lface_from_font_and_fontset. Caller changed. Don't set
6322 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
6323 for face.
6324 (merge_face_vectors): Copy font-spec if necessary.
6325 Clear properties of the font-spec if necessary.
6326 (merge_face_ref): Clear properties of the font-spec if necessary.
6327 (Finternal_set_lisp_face_attribute): Likewise.
6328 (set_font_frame_param): Use font_load_for_lface to load a
6329 font-object, and call Fmodify_frame_parameters with it.
6330 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
6331 font name by Ffont_xlfd_name.
6332 (Finternal_lisp_face_attribute_values): Don't check QCweight,
6333 QCslant, and QCwidth.
6334 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
6335 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
6336 Compare fonts by EQ.
6337 (lookup_non_ascii_face): Deleted.
6338 (face_for_font): The 2nd argument changed.
6339 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
6340 Check atomic font properties by case insensitive.
6341 (realize_non_ascii_face): Set face->overstrike correctly.
6342 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
6343 (dump_realized_face): Get font name from
6344 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
6345
6346 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
6347 conditionals. Don't check enable_font_backend. Delete all codes
6348 used only when USE_FONT_BACKEND is not defined.
6349 (xic_create_xfontset): Original code deleted and renamed from
6350 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
6351 (x_make_gc): Don't set GCFont in GCs.
6352 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
6353 opened by "fixed".
6354 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
6355 find_ccl_program_func, query_font_func, set_frame_fontset_func,
6356 get_font_repertory_func.
6357
6358 * xfont.c: Include <stdlib.h> and "ccl.h".
6359 (struct xfont_info): New structure.
6360 (xfont_query_font): Deleted.
6361 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
6362 moved from xterm.c.
6363 (xfont_driver): Adjusted for the change of struct font_driver.
6364 (compare_font_names): New function.
6365 (xfont_list_pattern): Sort font names case insensitively. Make
6366 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
6367 (xfont_list): Return a list, not vector.
6368 (xfont_match): If the font doesn't have QCname property, generate
6369 a name from the other font properties.
6370 (xfont_open): Return a font-object. Adjusted for the change of
6371 struct font. Get underline_thickness and underline_position from
6372 font property. Don't update dpyinfo->smallest_font_height and
6373 dpyinfo->smallest_char_width.
6374 (xfont_close): Don't free struct font.
6375 (xfont_prepare_face): Adjusted for the change of struct font.
6376 (xfont_done_face): Deleted.
6377 (xfont_has_char): Adjusted for the change of struct font.
6378 (xfont_encode_char, xfont_draw): Likewise.
6379 (xfont_check): New function.
6380
6381 * xftfont.c (xftfont_list): Adjusted for the change of `list'
6382 callback function.
6383 (xftfont_match): Adjusted for the format change of font-entity.
6384 (xftfont_open): Adjusted for the format change of font-entity and
6385 font-object. Adjusted for the change of struct font. Return a
6386 font-object. Don't update dpyinfo->smallest_font_height and
6387 dpyinfo->smallest_char_width.
6388 (xftfont_close): Block input while calling XftFontClose.
6389 (xftfont_prepare_face): Don't block input while calling
6390 xftfont_get_colors. Adjusted for the change of struct font.
6391 (xftfont_shape): Return value of error case fixed.
6392
6393 * xrdb.c (x_load_resources): Don't setup a fontset resource.
6394
6395 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
6396 conditionals.
6397 (FONT_WIDTH): Return (f)->max_width.
6398 (struct x_display_info): Delete member `font'.
6399 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
6400 (x_find_ccl_program, x_get_font_repertory): Delete externs.
6401 (struct x_output): Change type of `font' to `struct font *'.
6402
6403 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
6404 conditionals. Don't check enable_font_backend. Delete all codes
6405 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
6406 (x_per_char_metric, x_encode_char): Deleted.
6407 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
6408 (x_compute_glyph_string_overhangs): Adjusted for the change of
6409 `struct face'.
6410 (x_draw_glyph_string_foreground)
6411 (x_draw_composite_glyph_string_foreground): Likewise.
6412 (x_draw_glyph_string): Likewise. Use font->underline_position and
6413 font->underline_thickness.
6414 (x_new_font): Renamed from x_new_fontset2.
6415 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
6416 (x_check_font): Call `check' method of a font driver.
6417 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
6418 (x_query_font, x_get_font_repertory): Deleted.
6419 (x_find_ccl_program): Renamed and moved to xfont.c.
6420 (x_redisplay_interface): Adjusted for the change of `struct
6421 redisplay_interface'.
6422
6423 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
6424 conditionals. Don't check enable_font_backend. Delete all codes
6425 used only when USE_FONT_BACKEND is not defined. Surround non-used
6426 code by "#ifdef OLD_FONT" and "endif".
6427 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
6428
6429 * w32font.h (struct w32font_info): New member.
6430 (FONT_COMPAT): New macro.
6431 (w32font_open_internal): Prototype adjusted.
6432
6433 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
6434 OLD_FONT" and "endif".
6435
6436 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
6437 conditionals. Don't check enable_font_backend. Delete all codes
6438 used only when USE_FONT_BACKEND is not defined.
6439 (w32font_open): Return a font-object. Make a font-object by
6440 font_make_object. Adjusted for the change of struct w32font_info.
6441 (w32font_close): Don't free struct font. Adjusted for the change
6442 of struct w32font_info.
6443 (w32font_encode_char, w32font_text_extents, w32font_draw):
6444 Adjusted for the change of struct w32font_info.
6445 (w32font_draw): Likewise.
6446 (w32font_list_internal): Return a list, not vector.
6447 (w32font_open_internal): Change the 4th arg to font-object.
6448 Adjusted for the change of struct w32font_info and font-object format.
6449 (add_font_name_to_list): Don't downcase names.
6450 (w32_enumfont_pattern_entity): Make a font-entity by
6451 font_make_entity. Adjusted for the format change of font-entity.
6452 Use FONT_SET_STYLE to set a style-related font property. If a
6453 font is scalable, set avgwidth property to 0. Set font-entity
6454 property by font_put_extra.
6455 (font_matches_spec): Adjusted for the format change of font-entity.
6456 (w32_weight_table, w32_decode_weight): New variables.
6457 (w32_encode_weight): New function.
6458 (fill_in_logfont): Adjusted for the format change of font-spec.
6459 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
6460 weight value.
6461 (w32font_driver): Adjusted for the change of struct font_driver.
6462
6463 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
6464 conditionals. Don't check enable_font_backend. Surround non-used
6465 code by "#ifdef OLD_FONT" and "endif".
6466 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
6467 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
6468
6469 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
6470 conditionals. Don't check enable_font_backend. Delete all codes
6471 used only when USE_FONT_BACKEND is not defined. Surround non-used
6472 code by "#ifdef OLD_FONT" and "endif".
6473
6474 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
6475 (uniscribe_open): Return value changed to font-object.
6476 Adjusted for the format change of font-object.
6477 (uniscribe_otf_capability): Adjusted for the change of struct font.
6478 (add_opentype_font_name_to_list): Don't downcase names.
6479 (uniscribe_font_driver): Adjusted for the change of struct
6480 font_driver.
6481
64822008-05-13 Chong Yidong <cyd@stupidchicken.com>
6483
6484 * dispnew.c (update_frame_1): Check if tty output is still valid
6485 before flushing it.
6486
64872008-05-13 Jan Djärv <jan.h.d@swipnet.se>
6488
6489 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
6490 to Gtk+ menus.
6491
64922008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
6493
6494 * dired.c (file_name_completion): Tweak the code so as to always do it
6495 in a single pass. Tighten the scope of some variables.
6496
6497 * dired.c (Qdefault_directory): New var.
6498 (file_name_completion): Use it instead of Fexpand_file_name.
6499 (syms_of_dired): Initialize it.
6500
65012008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
6502
6503 * fileio.c (double_dollars): Remove dead code.
6504
65052008-05-10 Eli Zaretskii <eliz@gnu.org>
6506
6507 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
6508 Mention w32-get-true-file-attributes in doc string.
6509
6510 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
6511
65122008-05-09 Glenn Morris <rgm@gnu.org>
6513
6514 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
6515 2008-04-23.
6516
65172008-05-09 Eli Zaretskii <eliz@gnu.org>
6518
6519 Support for reporting owner and group of each file on MS-Windows:
6520 * dired.c (stat_uname, stat_gname): New functions, with special
6521 implementation for w32.
6522 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
6523
6524 * w32.c: Rename the_passwd_* to dflt_passwd_*.
6525 (dflt_group_name): New static variable.
6526 (dflt_group): Rename from the_group.
6527 (init_user_info): Init dflt_group fields. Get user's group name
6528 from LookupAccountSid.
6529 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
6530 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
6531 New initialization states.
6532 (globals_of_w32): Initialize them to zero. Initialize the default
6533 group name to "None".
6534 (GetFileSecurity_Name): New global var, the name of the function
6535 to call for GetFileSecurity.
6536 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
6537 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
6538 (get_file_security, get_security_descriptor_owner)
6539 (get_security_descriptor_group, is_valid_sid)
6540 (get_file_security_desc, get_rid, get_name_and_id)
6541 (get_file_owner_and_group): New functions.
6542 (stat): Use get_file_security_desc and get_file_owner_and_group to
6543 report the owner and primary group of each file. Don't ignore the
6544 high 32 bits of file's size, now that st_size is 64-bit wide.
6545 Fix test when to get true file attributes.
6546 (init_user_info): Use get_rid instead of equivalent inline code.
6547 (fstat): Don't ignore the high 32 bits of file's size.
6548
65492008-05-09 Chong Yidong <cyd@stupidchicken.com>
6550
6551 * image.c (png_load): Use correct bit-depth for setting background
6552 color.
6553
65542008-05-08 Eli Zaretskii <eliz@gnu.org>
6555
6556 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
6557 epa-hook.elc.
6558
65592008-05-08 Juanma Barranquero <lekktu@gmail.com>
6560
6561 * font.c (Ffont_match_p): Don't use `iff' in docstring.
6562
65632008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
6564
6565 * macfns.c (Fx_create_frame): Make a copy of frame parameters
6566 because the original parameters are in pure storage now.
6567 (mac_window): Remove unused params. Update callers.
6568
65692008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
6570
6571 * lread.c (substitute_object_recurse): Use lower-level primitives.
6572 Don't signal errors when traversing sub-char-tables.
6573 Don't loop over all the possible characters when traversing char-tables.
6574
6575 * print.c (print_preprocess): Add sub-char-tables to the print-table,
6576 just like we do in print.c.
6577
65782008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
6579
6580 * minibuf.c (Ftry_completion): Remove code left over from when we used
6581 scmp instead of Fcompare_strings.
6582
65832008-05-04 Juanma Barranquero <lekktu@gmail.com>
6584
6585 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
6586
65872008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6588
6589 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
6590 Create bitmap context in native byte order.
6591
6592 * macterm.c (XDrawLine)
6593 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
6594 context in native byte order.
6595
65962008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6597
6598 * config.in: Regenerate.
6599
6600 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
6601 New definitions for Image I/O support.
6602 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6603 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
6604 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
6605 (mac_data_provider_release_data, image_load_image_io)
6606 [USE_MAC_IMAGE_IO]: New functions.
6607 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
6608 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
6609 (init_image_func_pointer) [MAC_OSX]: Remove function.
6610 (image_load_quartz2d) [MAC_OSX]: Check availability of
6611 CGImageCreateWithPNGDataProvider at compile time.
6612 Use lowercase `false' for boolean constant.
6613 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
6614 Use image_load_image_io.
6615 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
6616 Don't check MyCGImageCreateWithPNGDataProvider.
6617 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
6618 Don't call init_image_func_pointer.
6619
6620 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
6621
6622 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
6623 Make variable non-static.
6624 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
6625 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
6626
6627 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
6628 (RED_FROM_ULONG): Mask off higher bits.
6629 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
6630
6631 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
6632 Include AvailabilityMacros.h.
6633 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
6634 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
6635
66362008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
6637
6638 * chartab.c (Fset_char_table_range): If range is t, really set all
6639 chars to that value.
6640
66412008-05-03 Eli Zaretskii <eliz@gnu.org>
6642
6643 * dired.c (Ffile_attributes): Don't allow the device number become
6644 negative.
6645
66462008-05-02 Daiki Ueno <ueno@unixuser.org>
6647
6648 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
6649
66502008-05-02 Juri Linkov <juri@jurta.org>
6651
6652 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
6653 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
6654 DEFAULT argument as a list of default values in docstrings.
6655
66562008-05-01 Chong Yidong <cyd@stupidchicken.com>
6657
6658 * puresize.h (BASE_PURESIZE): Increase to 1210000.
6659
66602008-05-01 Martin Rudalics <rudalics@gmx.at>
6661
6662 * dispnew.c (change_frame_size_1): Preserve small windows when
6663 shrinking frames by calling set_window_height|width with third
6664 arg 2.
6665
6666 * window.h (struct window): Replace field too_small_ok by field
6667 resize_proportionally.
6668
6669 * window.c (make_window): Initialize resize_proportionally.
6670 (enlarge_window): Temporarily set resize_proportionally to make
6671 sure that shrink_windows does scale the window proportionally.
6672 (shrink_windows): When window has resize_proportionally set try
6673 to shrink it proportionally by stealing from other windows.
6674 (struct saved_window, Fset_window_configuration)
6675 (compare_window_configurations): Handle resize_proportionally.
6676 (WINDOW_TOTAL_SIZE): New macro.
6677 (window_min_size, shrink_windows, size_window): Use it.
6678 (check_min_window_sizes): Remove. Invalid values of
6679 window-min-height|width are handled by window_min_size_2 now.
6680 (size_window, Fsplit_window, enlarge_window)
6681 (adjust_window_trailing_edge, grow_mini_window): Don't call
6682 check_min_window_sizes.
6683 (window_min_size_2, window_min_size_1, window_min_size):
6684 New argument safe_p for retrieving "safe" minimum sizes.
6685 (Fdisplay_buffer, Fsplit_window, enlarge_window)
6686 (adjust_window_trailing_edge, grow_mini_window):
6687 Adjust arguments of window_min_size... functions.
6688 (shrink_windows): Argument min_size removed. New argument
6689 safe_p allows shrinking windows to their safe minimum sizes.
6690 Calculate minimum size and decide whether a window shall be
6691 deleted for each window individually.
6692 (size_window): When nodelete_p equals 2, tell shrink_windows to
6693 delete windows only if their new minimum size is no more safe.
6694 (shrink_window_lowest_first): Call window_min_size_1 to make
6695 sure to preserve modeline of bottom-most window when resizing
6696 the minibuffer.
6697 (Fset_window_configuration, Fcurrent_window_configuration)
6698 (compare_window_configurations): Do not handle
6699 window-min-height|width any more.
6700 (syms_of_window): Clarify window-min-height|width doc-strings.
6701
67022008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
6703
6704 * dired.c (file_name_completion): Fix up the encoding/decoding issue
6705 some more. Copy some of the code from Ftry_completions.
6706 Remove special case code that dates back to initial revision when the
6707 slash was only added when necessary and that can't trigger nowadays.
6708
67092008-04-27 Kenichi Handa <handa@m17n.org>
6710
6711 * font.c (font_prop_validate): Signal `error' instead of `font'.
6712
67132008-04-29 Jason Rumney <jasonr@gnu.org>
6714
6715 * w32fns.c (Fw32_battery_status): New defun.
6716 (syms_of_w32fns): Defsubr it.
6717
67182008-04-28 Andreas Schwab <schwab@suse.de>
6719
6720 * dired.c (file_name_completion): Fix another mixing of encoded
6721 and decoded names.
6722
67232008-04-28 Juanma Barranquero <lekktu@gmail.com>
6724
6725 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
6726
67272008-04-27 Juanma Barranquero <lekktu@gmail.com>
6728
6729 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
6730
67312008-04-27 Andreas Schwab <schwab@suse.de>
6732
6733 * dired.c (file_name_completion): Fix inappropriate mixing of
6734 encoded and decoded names.
6735
6736 * xterm.c (XTread_socket): Fix use of uninitialized variable.
6737
6738 * puresize.h (BASE_PURESIZE): Increase to 1200000.
6739
67402008-04-26 Eli Zaretskii <eliz@gnu.org>
6741
6742 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
6743 2008-03-31, it's not needed anymore with `struct stat' definition
6744 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
6745 for the same reasons.
6746
67472008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
6748
6749 * m/sparc.h: Additional redefinitions for GNU/Linux.
6750
67512008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6752
6753 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
6754 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
6755 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
6756 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
6757 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
6758 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
6759 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
6760 Likewise.
6761
6762 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
6763 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
6764 (mac_ax_number_of_characters): Add externs.
6765 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
6766 [USE_MAC_TSM]: Likewise.
6767 (mac_handle_text_input_event) [MAC_OSX]:
6768 Handle kEventTextInputOffsetToPos for no active input area case.
6769 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
6770 (mac_handle_document_access_event)
6771 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
6772 (install_application_handler) [MAC_OSX]: Register handlers for
6773 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
6774 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
6775 Register mac_handle_document_access_event.
6776
6777 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
6778 Make functions non-static.
6779
67802008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
6781
6782 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
6783 (read_file_name_completion_ignore_case, insert_default_directory)
6784 (Qdefault_directory): Move to minibuffer.el.
6785 (Fread_file_name): Call the new `read-file-name' instead.
6786
67872008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6788
6789 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
6790 Make function non-static.
6791 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
6792 Remove function.
6793 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
6794 Move to mactoolbox.c.
6795 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
6796
6797 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
6798 (mac_rect_make): New macro.
6799
6800 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
6801 instead of float.
6802 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
6803 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
6804 (XSetBackground) [USE_CG_DRAWING]: Likewise.
6805 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
6806 CGRectMake.
6807 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
6808 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
6809 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
6810 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
6811 instead of WindowRef in argument type.
6812 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
6813 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
6814 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
6815 instead of DISPLAY. All uses changed.
6816 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
6817 (x_calc_absolute_position): Simplify so as not to use
6818 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
6819
6820 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
6821 instead of WindowRef in argument type.
6822 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
6823 [TARGET_API_MAC_CARBON]: Remove externs.
6824 (create_apple_event, mac_event_parameters_to_lisp)
6825 [TARGET_API_MAC_CARBON]: Add externs.
6826
6827 * mactoolbox.c (Vmac_ts_script_language_on_focus)
6828 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
6829 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
6830 is clicked.
6831 (x_activate_menubar): Remove extern for saved_menu_event_location.
6832 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
6833 Move from mac.c.
6834
68352008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6836
6837 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
6838 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
6839
68402008-04-23 Jason Rumney <jasonr@gnu.org>
6841
6842 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
6843 attributes only for local files.
6844
6845 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
6846 default to Qlocal.
6847
68482008-04-22 Juri Linkov <juri@jurta.org>
6849
6850 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
6851 read-buffer-to-switch instead of using the letter "B".
6852
68532008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
6854
6855 * fileio.c (Qdefault_directory): New variable.
6856 (Fread_file_name): Use it to pass `dir' to the completion functions.
6857
68582008-04-20 Chong Yidong <cyd@stupidchicken.com>
6859
6860 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
6861
68622008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
6863
6864 * keyboard.c (Vpre_help_message): Remove.
6865 (show_help_echo): Remove default C code.
6866
6867 * dired.c (directory_files_internal, file_name_completion):
6868 Only call ENCODE_FILE if the string is indeed decoded.
6869
68702008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
6871
6872 * Makefile.in (TOOLKIT_DEFINES): Remove.
6873 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
6874
68752008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6876
6877 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
6878 (mactoolbox.o): New target.
6879
6880 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
6881 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
6882
6883 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
6884 Use mac_set_frame_window_background instead of XSetWindowBackground.
6885 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
6886 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
6887 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
6888 instead of SetWindowTitleWithCFString.
6889 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
6890 Move function to mactoolbox.c.
6891 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
6892 Use mac_set_window_modified instead of SetWindowModified.
6893 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
6894 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
6895 (Fx_focus_frame): Use mac_front_non_floating_window instead of
6896 FrontNonFloatingWindow. Use mac_activate_window instead of
6897 ActivateWindow. Use mac_active_non_floating_window instead of
6898 ActiveNonFloatingWindow.
6899 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
6900 Use mac_show_hourglass and mac_hide_hourglass.
6901 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
6902 instead of GetGlobalMouse.
6903 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
6904 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
6905 Use mac_bring_window_to_front instead of BringToFront.
6906 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
6907 mactoolbox.c.
6908 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
6909 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
6910 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
6911 mactoolbox.c.
6912
6913 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
6914 (XtPointer): Move typedef from macmenu.c.
6915 (enum button_type): Move enum from macmenu.c.
6916 (widget_value): Move typedef from macmenu.c.
6917 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
6918 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
6919 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
6920 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
6921 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
6922 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
6923 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
6924 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
6925 (Selection): Move typedef from macselect.c.
6926 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
6927 macterm.c.
6928 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
6929 (mac_is_window_collapsed, mac_bring_window_to_front)
6930 (mac_send_window_behind, mac_hide_window, mac_show_window)
6931 (mac_collapse_window, mac_front_non_floating_window)
6932 (mac_active_non_floating_window, mac_activate_window)
6933 (mac_move_window_structure, mac_move_window, mac_size_window)
6934 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
6935
6936 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
6937 (enum mac_menu_kind): Move enum to mactoolbox.c.
6938 (min_menu_id): Move variable to mactoolbox.c.
6939 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
6940 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
6941 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
6942 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
6943 [TARGET_API_MAC_CARBON]: Likewise.
6944 (XtPointer): Move typedef to macgui.h.
6945 (enum button_type): Move enum to macgui.h.
6946 (widget_value): Move typedef to macgui.h.
6947 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
6948 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
6949 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
6950 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
6951 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
6952 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
6953 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
6954 (popup_activated_flag): Make variable non-static.
6955 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
6956 (add_menu_item, fill_menu, dispose_menus):
6957 Move functions to mactoolbox.c.
6958 (restore_show_help_function, menu_target_item_handler)
6959 (install_menu_target_item_handler, mac_handle_dialog_event)
6960 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
6961 [TARGET_API_MAC_CARBON]: Likewise.
6962 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
6963 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
6964 (find_and_call_menu_selection, name_is_separator): Make function
6965 non-static.
6966 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
6967 to mactoolbox.c.
6968 (set_frame_menubar): Don't call install_menu_quit_handler.
6969 (menu_item_selection): New variable.
6970 (mac_menu_show): Use create_and_show_popup_menu.
6971 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
6972 selection but set variable menu_item_selection. All uses changed.
6973 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
6974 Call install_menu_quit_handler. Move to mactoolbox.c.
6975
6976 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
6977 (Selection): Move typedef to macgui.h.
6978 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
6979 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
6980 Make variables non-static.
6981 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
6982 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
6983 Make functions non-static.
6984 (Vmac_service_selection) [MAC_OSX]: Likewise.
6985 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
6986 (mac_valid_selection_target_p, mac_clear_selection)
6987 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
6988 (mac_put_selection_value, mac_selection_has_target_p)
6989 (mac_get_selection_value, mac_get_selection_target_list)
6990 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
6991 Move functions to mactoolbox.c.
6992 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
6993 Likewise.
6994 (copy_scrap_flavor_data, mac_handle_service_event)
6995 (install_service_handler) [MAC_OSX]: Likewise.
6996 (syms_of_macselect) <Vmac_dnd_known_types>:
6997 Use mac_dnd_default_known_types.
6998
6999 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
7000 Move to mactoolbox.c.
7001 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
7002 (Fx_selection_owner_p): Add EXFUN.
7003 (install_window_handler, remove_window_handler, XSetWindowBackground):
7004 Remove externs.
7005 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
7006 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
7007 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
7008 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
7009 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
7010 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
7011 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
7012 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
7013 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
7014 (create_and_show_popup_menu, mac_get_selection_from_symbol)
7015 (mac_valid_selection_target_p, mac_clear_selection)
7016 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
7017 (mac_put_selection_value, mac_selection_has_target_p)
7018 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
7019 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
7020 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
7021 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
7022 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
7023 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
7024 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
7025 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
7026 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
7027
7028 * mactoolbox.c: New file.
7029
70302008-04-18 Jason Rumney <jasonr@gnu.org>
7031
7032 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
7033
70342008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
7035
7036 * character.c (Fmultibyte_char_to_unibyte):
7037 Return latin1 chars unchanged.
7038
7039 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
7040 relocated if it points to `name'.
7041
70422008-04-17 Kenichi Handa <handa@m17n.org>
7043
7044 * data.c (Faset): Allow setting a multibyte character in an
7045 ASCII-only unibyte string.
7046
7047 * lisp.h (STRING_SET_MULTIBYTE): New macro.
7048
70492008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
7050
7051 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
7052 done in config.h.
7053
70542008-04-16 Juanma Barranquero <lekktu@gmail.com>
7055
7056 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
7057 (Fchar_direction): Add usage in the docstring.
7058
70592008-04-15 Chong Yidong <cyd@stupidchicken.com>
7060
7061 * keyboard.c (read_key_sequence): Remove always-true checks.
7062
70632008-04-14 Jason Rumney <jasonr@gnu.org>
7064
7065 * w32font.c (w32font_open_internal): Set max_bounds.descent in
7066 compatibility struct, for better underline positioning.
7067
70682008-04-13 David Hansen <david.hansen@gmx.net>
7069
7070 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
7071 string.
7072
70732008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
7074
7075 * m/hp800.h (XUINT, XSET): Remove.
7076
70772008-04-12 Juanma Barranquero <lekktu@gmail.com>
7078
7079 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
7080 previous change.
7081
70822008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
7083
7084 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
7085 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
7086
70872008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
7088
7089 * keymap.h (map_keymap_canonical): Declare.
7090 * xmenu.c (single_keymap_panes): Use it.
7091
70922008-04-11 Glenn Morris <rgm@gnu.org>
7093
7094 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
7095 set the target's value to that of the alias.
7096
70972008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
7098
7099 * term.c (set_tty_color_mode): Left over typo.
7100
71012008-04-10 Michael Albinus <michael.albinus@gmx.de>
7102
7103 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
7104 only after check for file name handler functions. Signal, when
7105 native functionality is not supported.
7106 (syms_of_fileio): Declare it unconditionally.
7107
71082008-04-10 Jason Rumney <jasonr@gnu.org>
7109
7110 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
7111 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
7112
7113 * w32.c (logon_network_drive): Also logon to remote drives that
7114 are mapped to drive letters.
7115
71162008-04-10 Glenn Morris <rgm@gnu.org>
7117
7118 * xdisp.c (truncate-partial-width-windows): Doc fix.
7119
71202008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
7121
7122 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
7123 Move functions to minibuffer.el.
7124 (syms_of_fileio): Don't declare them.
7125
71262008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
7127
7128 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
7129 (syms_of_minibuf): Remove its initialization.
7130
7131 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
7132
71332008-04-09 Juanma Barranquero <lekktu@gmail.com>
7134
7135 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
7136
71372008-04-09 Jason Rumney <jasonr@gnu.org>
7138
7139 * makefile.w32-in (distclean): Delete makefile too.
7140 (maintainer-clean): New target.
7141
7142 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
7143
7144 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
7145 for new font backend and composite cases.
7146
71472008-04-09 Jan Djärv <jan.h.d@swipnet.se>
7148
7149 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
7150 Most of the code moved to run_timers.
7151 (do_pending_atimers): Call run_timers.
7152 (run_timers): New function.
7153
7154 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
7155 run atimers.
7156
7157 * process.c (wait_reading_process_output): The same as above.
7158
71592008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
7160
7161 * minibuf.c (last_exact_completion): Remove variable.
7162 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
7163 (complete_and_exit_1, complete_and_exit_2)
7164 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
7165 (Fdisplay_completion_list, display_completion_list_1)
7166 (Fminibuffer_completion_help, Fself_insert_and_exit)
7167 (Fexit_minibuffer, Fminibuffer_message): Move functions to
7168 minibuffer.el.
7169 (syms_of_minibuf): Remove corresponding initializations.
7170
7171 * keyboard.c (Qdeactivate_mark): New var.
7172 (command_loop_1): Use it to call `deactivate-mark'.
7173 (syms_of_keyboard): Initialize it.
7174
7175 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
7176 to another frame.
7177 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
7178 Don't call set_tty_color_mode.
7179 (store_frame_param): Reset previous_frame rather than call
7180 set_tty_color_mode.
7181 * term.c (set_tty_color_mode): Rewrite.
7182 * dispextern.h (set_tty_color_mode): New type.
7183 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
7184
71852008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
7186
7187 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
7188 for generic chars, which do not exist any more in emacs-unicode.
7189
71902008-04-08 Michael Albinus <michael.albinus@gmx.de>
7191
7192 * coding.c (detect_coding_emacs_mule)
7193 (Ffind_operation_coding_system): Fix typo.
7194
71952008-04-08 Jason Rumney <jasonr@gnu.org>
7196
7197 * w32uniscribe.c (SNAME): Extract only symbol name.
7198
7199 * w32font.h (struct w32_metric_cache): New struct.
7200 (w32font_info): Use it.
7201 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
7202 (CACHE_BLOCKSIZE): New constants.
7203
7204 * w32font.c (Qja, Qko, Qzh): New symbols.
7205 (syms_of_w32font): Initialise them.
7206 (font_matches_spec): Use them to filter by language.
7207 (recompute_cached_metrics): Remove function.
7208 (compute_metrics, clear_cached_metrics): New functions.
7209 (w32font_encode_char): Use them to manage metric cache.
7210 (w32font_text_extents): Cache metrics for all glyphs on demand.
7211 Delay converting glyph indices to WORD until needed.
7212 (w32font_open_internal): Initialize metric cache to empty.
7213 (registry_to_w32_charset): Charset should always be a symbol.
7214 (fill_in_logfont, list_all_matching_fonts): Family should
7215 always be a symbol.
7216
72172008-04-06 Jason Rumney <jasonr@gnu.org>
7218
7219 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
7220 Give up if glyph indices not supported. Use uniscribe obtained
7221 ABC widths for individual metrics. Map glyph clusters back to
7222 characters using fClusterStart flag. Return number of glyphs
7223 produced, not chars processed.
7224 (uniscribe_shape): Map char at FROM to current glyph.
7225
72262008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7227
7228 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
7229 Use SetMenuItemHierarchicalMenu.
7230
72312008-04-05 Jason Rumney <jasonr@gnu.org>
7232
7233 * image.c (pbm_load): Allow color values up to 65535.
7234 Throw an error if max_color_idx is outside the supported range.
7235 Report an error when image size is invalid.
7236 Read two bytes at a time when raw images have max_color_idx above 255.
7237
72382008-04-05 Eli Zaretskii <eliz@gnu.org>
7239
7240 * w32.c (readdir): If FindFirstFile/FindNextFile return in
7241 cFileName a file name that includes `?' characters, use the 8+3
7242 alias in cAlternateFileName instead.
7243
72442008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
7245
7246 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
7247 append "CCL: Quitted" when the CCL program is quitted.
7248 (setup_ccl_program): Initialize ccl->quit_silently to zero.
7249
7250 * ccl.h (struct ccl_program): New member quit_silently.
7251
72522008-04-05 Chong Yidong <cyd@stupidchicken.com>
7253
7254 * search.c (compile_pattern_1): Treat non-nil and non-string of
7255 search-spaces-regexp as nil.
7256
7257 * minibuf.c (Fassoc_string): Tweak docstring.
7258
72592008-04-05 Eli Zaretskii <eliz@gnu.org>
7260
7261 * dired.c (Ffile_attributes): Support inode numbers wider than 32
7262 bits. Remove ugly WINDOWSNT-specific kludge introduced on
7263 2008-03-14 to force inode be positive.
7264
7265 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
7266 _S_* ones, since we now use our own sys/stat.h.
7267 (stat, fstat): Don't mangle the inode number.
7268 (init_user_info): Don't restrict UID and GID to 0-60000 range.
7269
72702008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
7271
7272 * frame.h (struct frame): Give one more bit to `visible' since we use
7273 values larger than 1 to indicate obscured frames on ttys.
7274
7275 * keymap.c (Qkeymap_canonicalize): New var.
7276 (Fmap_keymap_internal): New fun.
7277 (describe_map): Use keymap-canonicalize.
7278
7279 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
7280 (Fundo_boundary): Set them.
7281 (syms_of_undo): Initialize them.
7282 (record_point): Use them instead of last_point_position*.
7283 (last_undo_buffer): Change type.
7284
72852008-04-04 Jason Rumney <jasonr@gnu.org>
7286
7287 * w32font.c (w32font_text_extents): Use font's ascent and descent.
7288 (recompute_cached_metrics): Don't set ascent and descent per char.
7289
7290 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
7291 (uniscribe_check_otf): Add GC protection before consing.
7292 Rearrange loop for counting features.
7293
72942008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
7295
7296 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
7297 buffer with byte-size of source buffer.
7298
72992008-04-03 Chong Yidong <cyd@stupidchicken.com>
7300
7301 * callint.c (Fcall_interactively): Handle temporary region even
7302 when shift-select-mode is off.
7303
73042008-04-03 Jason Rumney <jasonr@gnu.org>
7305
7306 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
7307
73082008-04-03 Kenichi Handa <handa@m17n.org>
7309
7310 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
7311 (CATEGORY_MASK_UTF_16): Likewise.
7312 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
7313 binary file.
7314 (detect_coding): Add null-byte detection for a binary file.
7315 (detect_coding_system): Likewise.
7316
73172008-04-03 Jason Rumney <jasonr@gnu.org>
7318
7319 * w32uniscribe.c: New file.
7320
7321 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
7322
7323 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
7324
7325 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
7326 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
7327 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
7328 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
7329 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
7330 (Qphonetic): New symbols.
7331 (syms_of_w32font): Initialize them.
7332 (font_supported_scripts): Use them.
7333 (w32font_list_family): List all charsets.
7334 (w32font_text_extents, recompute_cached_metrics): Fix metric
7335 calculations.
7336 (w32_enumfont_pattern_entity): Make full_type a DWORD.
7337 Give opentype fonts their own format.
7338 (font_matches_spec): New arguments backend and logfont.
7339 Handle :otf spec for uniscribe backend.
7340 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
7341 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
7342
7343 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
7344 font backend.
7345 (globals_of_w32fns): Initialize uniscribe font backend.
7346
7347 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
7348 dependencies.
7349 (w32uniscribe.$(O)): New file to build.
7350 (FONT_OBJ): Include w32uniscribe.$(O).
7351 (LIBS): Add uniscribe libraries.
7352
7353 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
7354
73552008-04-02 Chong Yidong <cyd@stupidchicken.com>
7356
7357 * callint.c (Vshift_select_mode): New var.
7358 (Finteractive): Document new ^ spec.
7359 (Fcall_interactively): Call handle-shift-selection if the ^ spec
7360 is present.
7361
7362 * keyboard.c (Vthis_command_keys_shift_translated): New var.
7363 (command_loop_1): Avoid running the direct display versions of
7364 forward-char and backward-char if shift-selection may occur.
7365 (read_key_sequence): Set Vthis_command_keys_shift_translated if
7366 shift-translation takes place.
7367
7368 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
7369 avoid clobbering by define-minor-mode.
7370
7371 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
7372 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
7373
7374 * syntax.c (Fforward_word): Add ^ interactive spec.
7375
7376 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
7377 (Fscroll_right): Add ^ interactive spec.
7378
73792008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
7380
7381 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
7382
7383 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
7384
7385 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
7386
73872008-03-31 Juri Linkov <juri@jurta.org>
7388
7389 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
7390
73912008-03-30 Jan Djärv <jan.h.d@swipnet.se>
7392
7393 * gtkutil.c (xg_set_geometry): Fix indentation.
7394 (xg_resize_outer_widget): Remove.
7395 (x_wm_size_hint_off): Fix indentation.
7396 (xg_frame_set_char_size): Call flush_and_sync after
7397 gtk_window_resize.
7398 (x_wm_set_size_hint): Pass NULL as geometry window to
7399 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
7400 Add menu bar and tool bar height to base height.
7401 (xg_update_frame_menubar, free_frame_menubar)
7402 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
7403 (update_frame_tool_bar, free_frame_tool_bar):
7404 Change xg_resize_outer_widget to xg_frame_set_char_size.
7405
74062008-03-30 Michael Albinus <michael.albinus@gmx.de>
7407
7408 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
7409 (Fdbus_call_method): New parameter TIMEOUT.
7410 (dbus-send-signal): Optimize UNGCPRO call.
7411
74122008-03-29 Juri Linkov <juri@jurta.org>
7413
7414 * window.c (Fdisplay_buffer): Move call to
7415 Vsplit_window_preferred_function out of conditions that check
7416 if window is eligible for vertical splitting.
7417 When Vsplit_window_preferred_function is non-nil, call it and use
7418 its non-nil return value as window. Otherwise, continue doing
7419 vertical splitting using Fsplit_window with arg horflag=nil.
7420 (syms_of_window) <Vsplit_window_preferred_function>: Change the
7421 default value from `split-window' to nil.
7422
74232008-03-29 Juri Linkov <juri@jurta.org>
7424
7425 * callint.c (Fcall_interactively): Revert 2008-03-16 change
7426 for interactive code letters 'b' and 'B'.
7427
74282008-03-29 Eli Zaretskii <eliz@gnu.org>
7429
7430 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
7431 multibyte string.
7432
74332008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
7434
7435 * keyboard.c (pending_funcalls): New var.
7436 (timer_check): Run it.
7437 (syms_of_keyboard): Initialize it.
7438 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
7439 (Vdelete_terminal_functions): New vars.
7440 (syms_of_terminal): Initialize them.
7441 (Fdelete_terminal): Run delete-terminal-functions.
7442 * xdisp.c (safe_eval): Rewrite.
7443 (safe_call2): New fun.
7444 * frame.c (Qdelete_frame_functions): New var.
7445 (syms_of_frame): Initialize it.
7446 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
7447 * lisp.h (safe_call2, pending_funcalls): Declare.
7448
74492008-03-28 Andreas Schwab <schwab@suse.de>
7450
7451 * indent.c (Fmove_to_column): Move declaration before statements.
7452
74532008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
7454
7455 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
7456 (struct frame): Use bit fields for boolean vars.
7457
7458 * process.c (server_accept_connection): Simplify naming.
7459 (emacs_get_tty_pgrp): Use SDATA.
7460
7461 * coding.c (decode_coding_object): Fix last change.
7462
74632008-03-27 Jason Rumney <jasonr@gnu.org>
7464
7465 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
7466
74672008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
7468
7469 * charset.c (Fdefine_charset_internal): Change the way of
7470 registering charsets in Vcharset_order_list.
7471 (syms_of_charset): Make the charset `eight-bit' supplementary.
7472
74732008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
7474
7475 * regex.c (EXTEND_BUFFER): Change order of pointer addition
7476 operations, to avoid having the difference between pointers
7477 overflow.
7478
74792008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
7480
7481 * indent.c (check_display_width): New fun.
7482 (scan_for_column): Use it.
7483
7484 * data.c (syms_of_data): Mark most-positive-fixnum and
7485 most-negative-fixnum as constants.
7486
7487 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
7488
7489 * indent.c (scan_for_column): Extract from current_column_1.
7490 Merge with the same code from Fmove_to_column.
7491 (current_column_1, Fmove_to_column): Use it.
7492
74932008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
7494
7495 * keymap.c (map_keymap_internal): New fun.
7496 (map_keymap): Use it.
7497 (Fmap_keymap_internal): New fun.
7498 (Fmap_keymap): Remove left-out test from before make_save_value.
7499
7500 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
7501
7502 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
7503 Use XCAR/XCDR.
7504
7505 * process.h (struct Lisp_Process): Remove filter_multibyte.
7506 * process.c (QCfilter_multibyte): Remove.
7507 (setup_process_coding_systems): Don't use filter_multibyte.
7508 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
7509 (read_process_output): Don't adjust multibyteness to filter_multibyte.
7510 (Fset_process_filter_multibyte): Change the coding-system to
7511 approximate the previous behavior.
7512 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
7513 coding-system.
7514
7515 * coding.c (decode_coding_object): When not decoding into a buffer,
7516 obey the coding system's preference of (uni|multi)byte.
7517
75182008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
7519
7520 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
7521 every char is changed and has a different byte-length.
7522 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
7523 Fix int -> EMACS_INT.
7524
75252008-03-23 David Hansen <david.hansen@gmx.net>
7526
7527 * dbusbind.c (xd_read_message): Remove extra copying of message
7528 strings. Check for NULL `interface' or `member'.
7529
75302008-03-22 Eli Zaretskii <eliz@gnu.org>
7531
7532 * w32.c (readdir): If FindFirstFile/FindNextFile return in
7533 cFileName a file name that includes `?' characters, use the 8+3
7534 alias in cAlternateFileName instead.
7535
75362008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
7537
7538 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
7539
75402008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
7541
7542 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
7543 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
7544 work on current_buffer only instead (that was already the case
7545 for some of the code anyway).
7546 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
7547 (temp_set_point, temp_set_point_both): Use EMACS_INT.
7548 (SET_PT, SET_PT_BOTH): Adjust.
7549 * intervals.h (set_point, temp_set_point, set_point_both)
7550 (temp_set_point_both): Remove redundant declarations.
7551
75522008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
7553
7554 * fileio.c (Finsert_file_contents):
7555 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
7556 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
7557 when buffer != current_buffer anyway.
7558
75592008-03-20 Andreas Schwab <schwab@suse.de>
7560
7561 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
7562 as default.
7563
75642008-03-19 Jason Rumney <jasonr@gnu.org>
7565
7566 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
7567 (syms_of_w32fns): Initialize them.
7568 (HOURGLASS_ID): New constant.
7569 (x_window_to_frame): Don't check hourglass_window.
7570 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
7571 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
7572 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
7573 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
7574 Only change the cursor if hourglass is not active.
7575 (Fx_create_frame): Initialize frame's current_cursor.
7576 (hourglass_atimer): Remove.
7577 (hourglass_started): New function.
7578 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
7579 (show_hourglass): Adapt to w32, changing argument to frame.
7580
7581 * w32term.h (struct w32_output): Remove hourglass_window.
7582 Add current_cursor.
7583
7584 * eval.c (call_debugger, Fsignal):
7585 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
7586 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
7587 (Fexecute_extended_command, cancel_hourglass_unwind):
7588 * minibuf.c (read_minibuf):
7589 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
7590
75912008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
7592
7593 * window.c (run_funs): New fun.
7594 (run_window_configuration_change_hook): Use it to run the buffer-local
7595 and the global part of the hook.
7596
7597 * xdisp.c (format_mode_line_unwind_data): Add window argument.
7598 (unwind_format_mode_line): Restore selected window.
7599 (x_consider_frame_title, Fformat_mode_line): Set selected window.
7600
76012008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
7602
7603 * editfns.c (Fchar_equal): Check they are valid characters.
7604
7605 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
7606
76072008-03-17 Andreas Schwab <schwab@suse.de>
7608
7609 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
7610 against a charset.
7611
7612 * lisp.h (Fbuffer_list): Declare.
7613
76142008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 7615
aac0c6e3
MR
7616 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
7617 handlebox_widget is != 0.
7618
76192008-03-16 Juri Linkov <juri@jurta.org>
7620
7621 * callint.c (Fcall_interactively): For interactive code letters
7622 'b' and 'B' put the buffer list into the list of default "future"
7623 values of the minibuffer.
7624
76252008-03-16 Andreas Schwab <schwab@suse.de>
7626
7627 * keyboard.c (read_key_sequence): Fix downcasing of letters with
7628 modifiers.
7629
7630 * regex.c (re_match_2_internal): Correct matching of a charset
7631 against latin-1 characters.
7632
76332008-03-16 Kenichi Handa <handa@m17n.org>
7634
7635 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
7636 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
7637 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
7638 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
7639 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
7640 CHAR_STRING_ADVANCE.
7641 (produce_chars): Fix for the case that the source and the
7642 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
7643 instead of CHAR_STRING_ADVANCE.
7644 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
7645 STRING_CHAR_ADVANCE.
7646
76472008-03-15 Andreas Schwab <schwab@suse.de>
7648
7649 * regex.c (re_match_2_internal): Correct matching of eight bit
7650 characters in unibyte strings.
7651
76522008-03-15 Martin Rudalics <rudalics@gmx.at>
7653
7654 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
7655 at end of range when it coincides with the end of the buffer.
7656
76572008-03-14 Eli Zaretskii <eliz@gnu.org>
7658
7659 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
7660
7661 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
7662
76632008-03-14 Jason Rumney <jasonr@gnu.org>
7664
7665 * editfns.c (initial_tz): New variable.
7666 (syms_of_editfns): Initialize it.
7667 (Fset_time_zone_rule): Set it when first called.
7668 Use it when TZSTRING is nil.
7669
7670 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
7671 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
7672 (monitor_from_point_fn, get_monitor_info_fn): New globals.
7673 (globals_of_w32fns): Initialize them.
7674 (compute_tip_xy): Use them to position tooltips.
7675
76762008-03-14 Glenn Morris <rgm@gnu.org>
7677
7678 * emacs.c (main): Revert previous change.
7679 (standard_args): Revert -internal-script back to -scriptload,
7680 and remove the long-option form.
7681
76822008-03-13 Glenn Morris <rgm@gnu.org>
7683
7684 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
7685 Remove option -enable-font-backend.
7686
76872008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
7688
7689 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
7690
76912008-03-11 Jan Djärv <jan.h.d@swipnet.se>
7692
7693 * xterm.c (x_connection_closed): For GTK: If this is the last
7694 terminal just exit without closing the display.
7695
76962008-03-11 Jason Rumney <jasonr@gnu.org>
7697
7698 * w32font.c (w32font_full_name): Use floor to round.
7699
f0131492 77002008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
7701
7702 * sound.c (alsa_configure): Declare vol at beginning of block.
7703
7704 * fontset.c (Ffontset_info): Remove extra semicolon.
7705
77062008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
7707
7708 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
7709 size of resulting string.
7710
77112008-03-10 Jason Rumney <jasonr@gnu.org>
7712
7713 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
7714
77152008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7716
7717 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
7718 Don't pretend as if characters with display property haven't been
7719 consumed for string-replacing-string case.
7720
77212008-03-08 Kim F. Storm <storm@cua.dk>
7722
7723 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
7724 (get_next_display_element, next_element_from_string)
7725 (next_element_from_ellipsis, next_element_from_buffer): Use it.
7726
77272008-03-08 Andreas Schwab <schwab@suse.de>
7728
7729 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
7730
77312008-03-06 Jason Rumney <jasonr@gnu.org>
7732
7733 * w32font.c (w32_registry): Take font_type argument. Use ANSI
7734 when charset not specified. Only translate ANSI to unicode when
7735 font_type is truetype.
7736 (w32font_coverage_ok): New function.
7737 (add_font_entity_to_list): Use it to filter unsuitable fonts.
7738
77392008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
7740
7741 * lread.c (Fread_char): Resolve modifiers.
7742 (Fread_char_exclusive): Likewise.
7743
7744 * character.c (char_resolve_modifier_mask): New function.
7745 (char_string): Use char_resolve_modifier_mask.
7746 (Fchar_resolve_modifiers): New function.
7747 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
7748 function.
7749
77502008-03-04 Jason Rumney <jasonr@gnu.org>
7751
7752 * makefile.w32-in: Always include w32font.c in the build.
7753 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
7754
77552008-03-04 Andreas Schwab <schwab@suse.de>
7756
7757 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
7758 (versionclean): Likewise.
7759
77602008-03-04 Juanma Barranquero <lekktu@gmail.com>
7761
7762 * .cvsignore: Add oo.
7763
77642008-03-03 Andreas Schwab <schwab@suse.de>
7765
7766 * coding.c (decode_coding_object): Inhibit gap shrinking while
7767 decoding in place.
7768
77692008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
7770
7771 * w32term.c: Remove unused include "gnu.h".
7772 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
7773
7774 * gnu.h: Rename to ...
7775 * emacs-icon.h: ... this.
7776 * xterm.c: Use emacs-icon.h instead of gnu.h.
7777 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
7778
77792008-03-03 Juanma Barranquero <lekktu@gmail.com>
7780
7781 * w32font.c: Include math.h.
7782
77832008-03-03 Jason Rumney <jasonr@gnu.org>
7784
7785 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
7786 Compute options separately.
7787 (w32font_open_internal): Set glyph_idx before caching metrics.
7788
7789 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
7790 Define if system headers don't.
7791 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
7792 (w32font_encode_char): Don't declare here.
7793
7794 * w32font.c (Quniscribe, QCformat): New symbols.
7795 (syms_of_w32font): Define them.
7796 (w32font_has_char): Indicate uncertainty.
7797 (w32font_encode_char): Encode as glyph point. Make static.
7798 (recompute_cached_metrics): New function.
7799 (w32font_open_internal): Use it. Set font to use glyph points
7800 initially. Set format based on type of font.
7801 (w32font_text_extents, w32font_draw): Optionally use glyph points.
7802 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
7803 on it. Set format based on information available here.
7804 (add_font_entity_to_list): Identify backend based on opentype_only.
7805
78062008-03-02 Andreas Schwab <schwab@suse.de>
7807
7808 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
7809
7810 * coding.c (decode_coding_big5, produce_chars):
7811 Fix typos in last change.
7812
78132008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
7814
7815 * gnu.h: New icon.
7816
78172008-03-02 Kenichi Handa <handa@m17n.org>
7818
7819 * coding.c (decode_coding_utf_8): When eol-type of CODING is
7820 `dos', don't decode '\r' if that is the last in the source.
7821 (decode_coding_utf_16, decode_coding_emacs_mule)
7822 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
7823 (decode_coding_raw_text, decode_coding_charset): Likewise.
7824 (produce_chars): Don't decode EOL here. Use EMACS_INT.
7825
78262008-03-01 Jason Rumney <jasonr@gnu.org>
7827
7828 * w32font.c (w32font_full_name): Report point size for scalable fonts.
7829
78302008-03-01 Kim F. Storm <storm@cua.dk>
7831
7832 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
7833
78342008-03-01 Jason Rumney <jasonr@gnu.org>
7835
7836 * w32font.c (w32font_full_name): New function.
7837 (w32font_open_internal): Use it.
7838
78392008-03-01 Kim F. Storm <storm@cua.dk>
7840
7841 * dispnew.c (line_draw_cost): Fix invalid glyph check.
7842
78432008-03-01 Jason Rumney <jasonr@gnu.org>
7844
7845 * font.c (font_unparse_fcname): Increase len when style is a symbol.
7846
78472008-03-01 Jan Djärv <jan.h.d@swipnet.se>
7848
7849 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
7850 xg_frame_resized when the event is for the edit widget.
7851
7852 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
7853
7854 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
7855 set_char_size.
7856 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
7857 operations on widgets here. Just set frame size if needed.
7858 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
7859 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
7860 (x_wm_set_size_hint): Set size hints on the edit widget only, not
7861 the whole frame.
7862 (xg_create_tool_bar): Move attachment of the tool bar to
7863 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
7864 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
7865
78662008-03-01 Jason Rumney <jasonr@gnu.org>
7867
7868 * w32fns.c (w32_msg_pump): Disable debug code.
7869
78702008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7871
7872 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
7873
78742008-02-29 Chong Yidong <cyd@stupidchicken.com>
7875
7876 * xdisp.c (next_overlay_string): Don't set
7877 overlay_strings_at_end_processed_p if we're currently reading from
7878 a display string.
7879
78802008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
7881
7882 * xdisp.c (get_overlay_strings_1): Fix typo.
7883
78842008-02-29 Chong Yidong <cyd@stupidchicken.com>
7885
7886 * xdisp.c (get_overlay_strings_1): Add missing argument type.
7887
78882008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
7889
7890 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
7891
7892 * xdisp.c (display_mode_element): Cancel the previous change.
7893 (decode_mode_spec): Likewise.
7894 (handle_auto_composed_prop): Don't make composition if it->string
7895 is a string.
7896
78972008-02-27 Kim F. Storm <storm@cua.dk>
7898
7899 * lisp.h (GLYPH): Change type from int to struct with separate char
7900 and face_id members.
7901 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
7902 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
7903 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
7904 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
7905 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
7906 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
7907 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
7908 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
7909 handle new Lisp glyph code encoding, either an integer or a cons.
7910
7911 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
7912 (GLYPH_ALIAS): Delete.
7913 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
7914 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
7915 (GLYPH_FROM_CHAR): Replace macro by ...
7916 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
7917
7918 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
7919 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
7920 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
7921 (GLYPH_INVALID_P): New macro.
7922 (spec_glyph_lookup_face): Update prototype.
7923
7924 * dispnew.c (line_draw_cost): Adapt to new glyph type.
7925 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
7926 new glyph code encoding.
7927 (spec_glyph_lookup_face): No return value; update passed glyph instead.
7928 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
7929
7930 * xdisp.c (get_next_display_element, next_element_from_display_vector):
7931 Adapt to new glyph type and new glyph code encoding.
7932
7933 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
7934
7935 * indent.c (current_column, current_column_1, Fmove_to_column)
7936 (compute_motion): Adapt to new glyph code encoding.
7937
7938 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
7939
79402008-02-27 Chong Yidong <cyd@stupidchicken.com>
7941
7942 * process.c (wait_reading_process_output): Check for window
7943 changes caused by timers.
7944 Suggested by Johan Bockgård.
7945
79462008-02-27 Glenn Morris <rgm@gnu.org>
7947
7948 * emacs.c (USAGE1): Add `--disable-font-backend'.
7949
79502008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
7951
7952 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
7953 is made to the buffer.
7954
79552008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
7956
7957 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
7958 (face_at_string_position):
7959 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
7960 (face_at_string_position):
7961 * xdisp.c (display_string, next_overlay_change):
7962 * buffer.h (overlays_at):
7963 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
7964 Update callers.
7965
79662008-02-26 Chong Yidong <cyd@stupidchicken.com>
7967
7968 * editfns.c (Fformat): Doc fix.
7969
79702008-02-26 Juanma Barranquero <lekktu@gmail.com>
7971
7972 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
7973 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
7974 (Ffont_otf_alternates, Fquery_font): Doc fixes.
7975
79762008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
7977
7978 * buffer.c (Fbuffer_swap_text): New function.
7979 (syms_of_buffer): Defsubr it.
7980
79812008-02-25 Chong Yidong <cyd@stupidchicken.com>
7982
7983 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
7984
79852008-02-25 Jason Rumney <jasonr@gnu.org>
7986
7987 * w32font.c (w32font_draw): Draw one character at a time when padding.
7988
79892008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
7990
7991 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
7992 Handle a nil arg. Use run_window_configuration_change_hook.
7993 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
7994 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
7995 Use run_window_configuration_change_hook.
7996
79972008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
7998
7999 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
8000 1-pixel width.
8001
80022008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
8003
8004 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
8005 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
8006 if the glyph in the font is zero pixel with.
8007
8008 * dispextern.h (struct glyph_string): New member padding_p.
8009
8010 * w32font.c (w32font_draw): Pay attention to s->padding_p.
8011
8012 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
8013
8014 * xfont.c (xfont_draw): Pay attention to s->padding_p.
8015
8016 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
8017
8018 * font.c: If the font driver doesn't have `shape' function, return Qnil.
8019
80202008-02-25 Jason Rumney <jasonr@gnu.org>
8021
8022 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
8023
80242008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
8025
8026 Allow fine-grained image-cache flushing.
8027 * dispextern.h (struct image): Add `dependencies' field.
8028 (clear_image_caches): Change arg to Lisp_Object.
8029 * image.c (make_image): Initialize `dependencies' field.
8030 (clear_image_cache): Change arg to allow fine-grained flushing.
8031 Perform the flush even if image-cache-eviction-delay is nil.
8032 (clear_image_caches): Change arg to Lisp_Object.
8033 (Fclear_image_cache): Expand meaning of the argument.
8034 (mark_image): Mark `dependencies' field.
8035 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
8036 (lface_hash): Use XHASH rather than XFASTINT.
8037 (face_at_buffer_position): Fix int -> EMACS_INT position.
8038 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
8039 (select_frame_for_redisplay): Remove code duplication.
8040 (redisplay_internal): Adapt arg to call to clear_image_caches.
8041
80422008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
8043
8044 * s/vms4-0.h:
8045 * s/vms4-2.h:
8046 * s/vms4-4.h:
8047 * s/vms5-5.h: Remove, unused.
8048
8049 * s/irix5-2.h:
8050 * s/irix6-0.h:
8051 * s/riscos5.h:
8052 * s/mach-bsd4-3.h:
8053 * m/mips4.h: Remove files for obsolete systems.
8054
8055 * Makefile.in:
8056 * filelock.c:
8057 * unexmips.c:
8058 * m/hp9000s300.h:
8059 * m/iris4d.h:
8060 * s/aix3-1.h:
8061 * s/hpux.h:
8062 * s/msdos.h:
8063 * s/usg5-0.h:
8064 * s/usg5-2-2.h:
8065 * s/usg5-2.h:
8066 * s/usg5-3.h: Remove references to obsolete variables.
8067
8068 * s/irix5-0.h: Remove, move all the contents ...
8069 * s/irix6-5.h: ... here. Simplify.
8070 * config.in: Regenerate.
8071
80722008-02-24 Jason Rumney <jasonr@gnu.org>
8073
8074 * w32term.c (x_draw_glyph_string_background): Clear the background
8075 manually when cleartype is in use.
8076 (x_draw_glyph_string_foreground): Draw text transparently when
8077 cleartype is in use.
8078
8079 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
8080 a font into it unless we have to.
8081
80822008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
8083
8084 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
8085 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 8086
aac0c6e3
MR
80872008-02-18 Jason Rumney <jasonr@gnu.org>
8088
8089 * w32fns.c (Fw32_shell_execute): Encode parameters.
8090
80912008-02-09 Eli Zaretskii <eliz@gnu.org>
8092
8093 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
8094
80952008-02-05 Juanma Barranquero <lekktu@gmail.com>
8096
8097 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
8098
80992008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
8100
8101 * xterm.c (x_set_offset): Don't change the gravity if
8102 CHANGE_GRAVITY is -1.
8103
81042008-02-23 Chong Yidong <cyd@stupidchicken.com>
8105
8106 * fileio.c (auto_save_error_occurred): New var.
8107 (auto_save_error): Set it.
8108 (Fdo_auto_save): Don't overwrite the error message if an auto-save
8109 error occurred.
8110
81112008-02-23 Eli Zaretskii <eliz@gnu.org>
8112
8113 * w32.c (globals_of_w32): Add initializations for
8114 g_b_init_get_sid_sub_authority and
8115 g_b_init_get_sid_sub_authority_count.
8116
81172008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
8118
8119 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
8120 (font_parse_xlfd): Use them for sanity check.
8121 (Finternal_set_font_style_table): Make sure the table is bijective.
8122
8123 Consolidate the image_cache to the terminal struct.
8124 * termhooks.h (P_): Remove redundant def.
8125 (struct terminal): New field `image_cache'.
8126 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
8127 of FRAME_X_IMAGE_CACHE.
8128 * xterm.h (struct x_display_info): Remove image_cache field.
8129 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
8130 * w32term.h (struct w32_display_info): Remove image_cache field.
8131 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
8132 * macterm.h (struct mac_display_info): Remove image_cache field.
8133 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
8134 * xterm.c (x_term_init):
8135 * w32term.c (w32_term_init):
8136 * macterm.c (mac_term_init): Set the image_cache in the terminal.
8137 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
8138 Remove declarations.
8139 (clear_image_caches, mark_image_cache): New declarations.
8140 * xfaces.c (clear_face_cache):
8141 * xdisp.c (redisplay_internal): Use clear_image_caches.
8142 * image.c (clear_image_cache): Don't check that a frame is on
8143 a window-system before checking if it shares the same cache.
8144 (clear_image_caches): New function.
8145 (Fclear_image_cache): Use it.
8146 (mark_image): Move from allo.c.
8147 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
8148 * alloc.c (mark_image, mark_image_cache): Move to image.c.
8149 (mark_object): Don't call mark_image_cache for frames.
8150 (mark_terminals): Call mark_image_cache.
8151
8152 * lisp.h (Fdelete_terminal): Declare.
8153
8154 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
8155 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
8156 wrong_type_argument.
8157
81582008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
8159
8160 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
8161 malayalam.el, and tamil.el. Add sinhala.el.
8162
81632008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
8164
8165 * xterm.c (x_connection_closed): Consolidate identical tests.
8166 (x_delete_terminal): Don't crash if called via x_connection_closed.
8167
81682008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
8169
8170 * xdisp.c (decode_mode_spec): New arg string.
8171 (display_mode_element): Adjust for the above change.
8172
81732008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
8174
8175 * callint.c (Fcall_interactively): Use AREF.
8176
81772008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
8178
8179 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
8180
81812008-02-18 Jan Djärv <jan.h.d@swipnet.se>
8182
8183 * xfns.c (Fx_show_tip): Set string to " " if empty.
8184
81852008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
8186
8187 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
8188 with Qt.
8189
81902008-02-17 Kenichi Handa <handa@m17n.org>
8191
8192 * ftfont.c (ftfont_shape): Return Lispy number.
8193
8194 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
8195 for GCs.
8196 (Finternal_set_font_selection_order): Call font_update_sort_order
8197 only when enable_font_backend is set.
8198 (realize_x_face): Set face->font_info to that of default face only
8199 when enable_font_backend is set.
8200
8201 * xdisp.c (handle_composition_prop): Set it->c to the fist
8202 character of the composed region.
8203 (fill_composite_glyph_string): Set base_face->font_info to
8204 s->font_info. Get a face for ascii from base_face->ascii_face.
8205 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
8206 with a face already decided.
8207 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
8208 non-negative.
8209 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
8210 call font_prepare_composition unconditionally.
8211
8212 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
8213
8214 * xterm.h (struct x_display_info): New member font.
8215
8216 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
8217 (x_set_mouse_face_gc, x_new_font): Likewise.
8218 (x_term_init): Setup display_info->font.
8219 (x_delete_terminal): Free display_info->font.
8220
8221 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
8222
8223 * ftxfont.c (ftxfont_default_fid): Delete it.
8224 (ftxfont_open): Set xfont->fid to 0.
8225 (ftxfont_end_for_frame): Clear data specific to the frame and the
8226 font-driver.
8227
8228 * xftfont.c (xftfont_default_fid): Delete it.
8229 (xftfont_open): Set xfont->fid to 0.
8230
8231 * fontset.c (FONTSET_OBJLIST): New macro.
8232 (fontset_find_font): Update font-object list of the fontset.
8233 (free_realized_fontset): New function.
8234 (free_face_fontset): Call free_realized_fontset.
8235 (Ffont_info): Call font_close_object only when enable_font_backend
8236 is set.
8237
8238 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
8239 [HAVE_NTGUI]: Include w32term.h.
8240 [MAC_OS]: Include macterm.ch.
8241 (font_otf_ValueRecord): Use make_number.
8242 (font_finish_cache): Fix handling of reference count.
8243 (font_clear_cache): Update num_fonts.
8244 (font_open_entity): Update smallest_char_width and
8245 smallest_font_height of the frame.
8246 (font_close_object): Update num_fonts.
8247 (Fclear_font_cache): Fix finding the target cache data.
8248
82492008-02-16 Glenn Morris <rgm@gnu.org>
8250
8251 * fontset.c (Finternal_char_font): Fix compilation warning.
8252
82532008-02-16 Eli Zaretskii <eliz@gnu.org>
8254
8255 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
8256 instead of char arrays. Enlarge the size of array passed to
8257 get_token_information.
8258
8259 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
8260 warnings.
8261
82622008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
8263
8264 * .gdbinit: Don't set `args', it breaks gdb --args.
8265
82662008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
8267
8268 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
8269 within a narrowed buffer.
8270
82712008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
8272
8273 * coding.c (decode_coding_object, encode_coding_object):
8274 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
8275
82762008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
8277
8278 * coding.c (coding_set_destination): Use BEG_BYTE rather than
8279 hardcoding 1.
8280 (detect_coding_system):
8281 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
8282 (string_char_to_byte, string_byte_to_char, insert_from_gap):
8283 * insdel.c (insert_from_gap):
8284 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
8285 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
8286 (string_to_multibyte):
8287 * character.c (chars_in_text, multibyte_chars_in_text):
8288 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
8289
8290 * character.h (FETCH_STRING_CHAR_ADVANCE)
8291 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
8292 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
8293 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
8294
8295 * casefiddle.c (casify_region): Only call after-change and composition
8296 functions on the part of the region that was changed.
8297
8298 * keyboard.c (read_avail_input):
8299 * frame.c (Fdelete_frame): Call Fdelete_terminal.
8300
83012008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
8302
8303 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
8304 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
8305
83062008-02-11 Juanma Barranquero <lekktu@gmail.com>
8307
8308 * w32menu.c (push_submenu_start, push_submenu_end)
8309 (push_left_right_boundary, push_menu_pane, push_menu_item):
8310 * keyboard.c (read_key_sequence): Don't pass args with side effects
8311 to AREF, it fails when compiling with -DENABLE_CHECKING.
8312
83132008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
8314
8315 * Makefile.in (${lispsource}international/charprop.el):
8316 Delete this target.
8317
8318 * search.c (boyer_moore): Fix incorrect synching of the trunk and
8319 emacs-unicode-2.
8320
83212008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
8322
8323 * terminal.c (Fdelete_terminal): Clean up the `force' path.
8324
83252008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
8326
8327 * frame.c (Qnoelisp): New symbol.
8328 (syms_of_frame): Initialize it.
8329 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
8330 harmless Elisp code, from a strong `force' from x_connection_closed.
8331 * frame.h (Qnoelisp): Declare.
8332 * xterm.c (x_connection_closed): Pass `noelisp'.
8333
8334 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
8335 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
8336 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
8337 rather than `int' for the type of `type'.
8338
83392008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
8340
8341 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
8342
8343 * Makefile.in (GNUC): Remove support for gcc-1.x.
8344
83452008-02-10 Richard Stallman <rms@gnu.org>
8346
8347 * lisp.h (ASET): Use AREF, not ASLOT.
8348
83492008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
8350
8351 * lisp.h (ASET): Check bounds.
8352
83532008-02-10 Glenn Morris <rgm@gnu.org>
8354
8355 * buffer.c (mode-name): Doc fix.
8356
83572008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
8358
8359 * Makefile.in:
8360 * emacs.c:
8361 * gmalloc.c:
8362 * keyboard.c:
8363 * lisp.h:
8364 * m/ibm370aix.h:
8365 * process.c:
8366 * regex.c:
8367 * s/hpux.h:
8368 * sysdep.c:
8369 * sysselect.h:
8370 * systty.h:
8371 * unexec.c:
8372 * w32term.c:
8373 * xsmfns.c:
8374 * xterm.c: Remove code that deals with obsolete variables.
8375
8376 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
8377
8378 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
8379 nothing else needs it anymore.
8380
83812008-02-09 Eli Zaretskii <eliz@gnu.org>
8382
8383 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
8384 instead of unibyte_char_to_multibyte.
8385
83862008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
8387
8388 * s/gnu-linux.h: Remove commented out code.
8389
8390 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
8391
8392 * Makefile.in: Update what RMS says about using autoconf.
8393 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
8394 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
8395 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
8396 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
8397
83982008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
8399
8400 * keymap.c (Fkey_description): Move side effect outside of macro call.
8401
8402 * xfaces.c (Finternal_make_lisp_face):
8403 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
8404
8405 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
8406 (syms_of_fontset): Use ASET.
8407
8408 * fns.c (concat): Move side effect outside of macro call.
8409 (hash_clear): Use ASET.
8410
84112008-02-08 Richard Stallman <rms@gnu.org>
8412
8413 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
8414 If FORCE, and frame has a surrogate minibuffer for another frame,
8415 delete the other frame first.
8416
84172008-02-07 Timo Savola <timo.savola@iki.fi>
8418
8419 * xterm.c (x_detect_focus_change): Handle embed client message.
8420 (handle_one_xevent): Ditto.
8421 (handle_one_xevent): If embedded and we get a button press/release,
8422 request focus.
8423 (xembed_set_info, xembed_send_message): New functions.
8424 (x_make_frame_visible): Call xembed_set_info if embedded.
8425 (x_make_frame_invisible): Call xembed_set_info if embedded.
8426 (x_term_init): Initialize Xatom_XEMBED.
8427 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
8428 (x_iconify_frame): Ditto.
8429
8430 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
8431 (enum xembed_info, enum xembed_message, enum xembed_focus)
8432 (enum xembed_modifier, enum xembed_accelerator): New.
8433 (xembed_set_info, xembed_send_message): Declare.
8434 (FRAME_X_EMBEDDED_P): New.
8435
8436 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
8437 gtk_plug_new.
8438
8439 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
8440 window ID of a frame.
8441 (x_window): Reparent frame if embedded.
8442 (Fx_create_frame): Don't set border width if embedded.
8443
8444 * emacs.c (USAGE3): Add --parent-id.
8445 (standard_args): Ditto.
8446
84472008-02-07 Jan Djärv <jan.h.d@swipnet.se>
8448
8449 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
8450
84512008-02-07 Jim Meyering <meyering@redhat.com>
8452
8453 Use "do...while (0)", not "if (1)...else" in macro definitions.
8454 The latter provokes a warning from gcc about the empty else, when
8455 followed by ";". Also, without that trailing semicolon, it would
8456 silently swallow up any following statement.
8457 * syntax.h (SETUP_SYNTAX_TABLE)
8458 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
8459 * buffer.h (DECODE_POSITION): Likewise.
8460 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
8461 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
8462 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
8463 (FETCH_CHAR_ADVANCE): Likewise.
8464 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
8465
84662008-02-07 Jim Meyering <meyering@redhat.com>
8467
8468 * lread.c [lint]: Don't include <sys/inode.h>.
8469
84702008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
8471
8472 * xselect.c (x_handle_dnd_message):
8473 * xmenu.c (digest_single_submenu, xmenu_show):
8474 * xdisp.c (with_echo_area_buffer_unwind_data)
8475 (format_mode_line_unwind_data, unwind_format_mode_line)
8476 (display_menu_bar):
8477 * eval.c (Ffetch_bytecode):
8478 * doc.c (store_function_docstring):
8479 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
8480 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
8481 * buffer.c (add_overlay_mod_hooklist): Use ASET.
8482
84832008-02-07 Kenichi Handa <handa@m17n.org>
8484
8485 * ftxfont.c (ftxfont_open): Don't set
8486 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
8487
8488 * ftfont.c (ftfont_open): Fix previous change.
8489
84902008-02-06 Jason Rumney <jasonr@gnu.org>
8491
8492 * w32font.c (w32font_text_extents): Fill in lbearing metric.
8493 Use cached metrics for ASCII characters.
8494 (w32font_open_internal): Don't set font's owning_frame.
8495 Cache metrics for ASCII characters.
8496
8497 * w32font.h (struct w32font_info): Add ascii_metrics.
8498 Remove owning_frame.
8499
85002008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
8501
8502 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
8503 to negative value.
8504
8505 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
8506
8507 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
8508
8509 * charset.c (syms_of_charset): Set QCtest and Qeq.
8510
85112008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
8512
8513 * process.c (Fstart_process):
8514 * callproc.c (Fcall_process): Handle the case where
8515 Funhandled_file_name_directory returns nil.
8516
8517 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
8518 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
8519 * font.c (check_gstring): Use them and AREF to access the vector before
8520 we know it's really a gstring.
8521 (Ffont_shape_text): Fix typo.
8522 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Oject mixups.
8523
8524 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
8525 Declare.
8526
8527 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
8528
85292008-02-05 Jason Rumney <jasonr@gnu.org>
8530
8531 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
8532 Set smallest_font_height and smallest_char_width in display info.
8533
85342008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
8535
8536 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
8537
85382008-02-05 Miles Bader <miles@gnu.org>
8539
8540 * xfaces.c (get_lface_attributes, merge_named_face)
8541 (lookup_named_face, lookup_derived_face, realize_named_face):
8542 Revert 2008-02-01 change by cyd@stupidchicken.com.
8543
85442008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
8545
8546 * fontset.c (Ffontset_info): Handle the case of inhibitting the
8547 fallback fonts.
8548 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
8549
85502008-02-04 Jason Rumney <jasonr@gnu.org>
8551
8552 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
8553 set full_name.
8554 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
8555
85562008-02-03 Jason Rumney <jasonr@gnu.org>
8557
8558 * makefile.w32-in (OBJ1): Include font.o here.
8559 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
8560
85612008-02-02 Jason Rumney <jasonr@gnu.org>
8562
8563 * makefile.w32-in (temacs): Bump EMHEAP to 21.
8564
85652008-02-01 Jason Rumney <jasonr@gnu.org>
8566
8567 * s/cygwin.h: Define VIRT_ADDR_VARIES.
8568
8569 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
8570
85712008-02-01 Andreas Schwab <schwab@suse.de>
8572
8573 * Makefile.in (shortlisp, lisp): Update for rename of
8574 ../lisp/language/myanmar.el.
8575
85762008-02-01 Chong Yidong <cyd@stupidchicken.com>
8577
8578 * xfaces.c (get_lface_attributes): Delete function.
8579 (merge_named_face, lookup_named_face, lookup_derived_face)
8580 (realize_named_face): Call lface_from_face_name directly, and use
8581 the fact that merge_face_vectors does not alter its FROM argument.
8582
85832008-02-01 Jason Rumney <jasonr@gnu.org>
8584
8585 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
8586 input in the default locale. Handle non-Unicode multibyte input.
8587
85882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8589
8590 * fontset.c (reorder_font_vector): Exclude nil elements from the
8591 font group. Don't try multiple fonts.
8592 (fontset_font): Adjust for the above change.
8593 (Finternal_char_font): Return nil if the found font doesn't
8594 contain the character ch.
8595
8596 * Makefile.in (lisp, shortlisp): Add cham.el.
8597
85982008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8599
8600 * font.h (FONTP): Make it return 1 also for a font-object.
8601
8602 * .gdbinit (xfontset): New function.
8603
8604 * font.c (font_find_for_lface): Check if the character C is
8605 supported or not only for the first font.
8606
8607 * fontset.c (reorder_font_vector): Fix typo.
8608 (fontset_find_font): Don't add a font-spec specifying a script.
8609 Use 0 (not Qt) for the indication of empty font-group. Change the
8610 format of RFONT-DEF. Return Qt if no font in the font-group
8611 support the character.
8612 (fontset_font): Adjust for the above change. If no font was
8613 found the character, remember that.
8614 (face_for_char): Adjust for the change of RFONT-DEF.
8615 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
8616 no font for the target.
8617 (Finternal_char_font): Adjust for the change of RFONT-DEF.
8618
86192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8620
8621 * font.c (font_load_for_face): Handle the case that the font in
8622 face->lface is a string.
8623
86242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8625
8626 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
8627
86282008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8629
8630 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
8631 Fix previous change. If the frame is not on a window system,
8632 signal an error.
8633
86342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8635
8636 * coding.c (decode_coding_object, encode_coding_object): Adjust
8637 marker positions after conversion.
8638
8639 * lisp.h (struct Lisp_Marker): New member need_adjustment.
8640
86412008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8642
8643 * font.c (font_find_for_lface): Fix the handling of the return
8644 value of font_has_char.
8645 (Ffont_shape_text): Fix previous change.
8646
8647 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
8648 (fontset_ref_and_range): Delete it.
8649 (fontset_find_font): Call char_table_ref_and_range instead of
8650 FONTSET_REF_AND_RANGE.
8651 (make_fontset): Don't setup font groups of Latin here.
8652 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
8653 (new_fontset_from_font): Make the specified font the default for
8654 all Latin characters.
8655
86562008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8657
8658 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
8659 is on a window system before accessing the fontset of the frame.
8660
86612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8662
8663 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
8664
8665 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
8666 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
8667
8668 * font.c (Ffont_shape_text): If the font driver doesn't have a
8669 shaper function, make zero-width glyphs to have at least one-pixel
8670 width. Fix setting of `to' field of glyphs.
8671
86722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8673
8674 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
8675 glyphs.
8676
8677 * font.h (struct font_driver): Improve docstring of member `shape'.
8678
86792008-02-01 Kenichi Handa <handa@m17n.org>
8680
8681 * composite.c (syms_of_composite): Fix docstring of
8682 auto-composition-function.
8683
8684 * font.h (LGLYPH_SIZE): New macro.
8685
8686 * font.c (Ffont_fill_gstring): Stop filling when a character not
8687 supported by the font is found.
8688 (Ffont_shape_text): When a shape callback function returns nil,
8689 try at most two more times with larger gstring.
8690 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
8691
8692 * xdisp.c (handle_auto_composed_prop): Change the argument to
8693 auto-composition-function.
8694
8695 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
8696 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
8697 Lispy glyph and store it in the lgstring.
8698
8699 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
8700
8701 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
8702
87032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8704
8705 * font.c (Ffont_shape_text): Avoid unnecessary composition.
8706
8707 * fontset.c (Vfont_encoding_charset_alist): New variable.
8708 (syms_of_fontset): DEFVAR it.
8709 (reorder_font_vector, fontset_find_font): Optimize for the case of
8710 no need of reordering.
8711 (face_for_char): Map the charset property by
8712 Vfont_encoding_charset_alist.
8713
87142008-02-01 Jason Rumney <jasonr@gnu.org>
8715
8716 * w32font.c (logfonts_match): Don't check adstyle here.
8717 (font_matches_spec): Check here against physical font instead.
8718 (add_font_entity_to_list): Avoid some substitutions.
8719
8720 * font.c (font_parse_fcname): Default weight and slant to normal.
8721 (font_score): Prefer normal fonts if weight or slant unspecified.
8722 (font_score) [WINDOWSNT]: Scale weight difference down to closer
8723 match freetype scores.
8724
87252008-02-01 Jason Rumney <jasonr@gnu.org>
8726
8727 * w32font.c (w32font_text_extents): Don't use the frame stored in the
8728 font, as it may have been deleted.
8729 (w32_enumfont_pattern_entity): Map generic family to adstyle using
8730 most common hyphenless variation.
8731 (logfonts_match): Check generic family.
8732 (font_matches_spec): Don't check generic family here.
8733 (fill_in_logfont): Set generic family based on adstyle.
8734
8735 * w32font.h (w32font_get_cache): Update declaration.
8736
87372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8738
8739 * ftfont.c (ftfont_get_cache): Adjust the argument type.
8740
8741 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
8742 If none of the new drivers are available, call font_update_drivers
8743 with the old drivers.
8744
8745 * w32font.c (w32font_get_cache): Adjust the argument type.
8746
8747 * xfont.c (xfont_get_cache): Adjust the argument type.
8748
8749 * font.h (struct font_driver): Change argument type of get_cache.
8750
8751 * xftfont.c (xftfont_start_for_frame): Delete prototype.
8752
8753 * font.c (Ffont_get): Fix arguments to Fassoc.
8754 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
8755 (font_clear_cache): New function.
8756 (font_list_entities, font_matching_entity): Use font_get_cache.
8757 (font_update_drivers): Call font_clear_cache when finishing a driver.
8758
8759 * fontset.c (fontset_find_font): Fix previous change.
8760
87612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8762
8763 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
8764 dpyinfo->font_table.
8765 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
8766 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
8767
8768 * font.c (font_at): Handle the case that the arg C is negative.
8769 Handle the unibyte case.
8770 (Ffont_at): Call font_at with the arg C -1.
8771
8772 * xdisp.c (handle_auto_composed_prop): Don't get a character at
8773 the position here, and call font_at with the arg C -1.
8774 Don't check the range of the existing composition at the point.
8775
87762008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8777
8778 * fontset.c (fontset_add): New args charset_id and family.
8779 Change caller.
8780 (load_font_get_repertory, fontset_find_font): Assume that
8781 font_spec is always a font-spec object.
8782 (Fset_fontset_font): Always store a font-spec object in a fontset.
8783
8784 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
8785 instead of get_property_and_range.
8786
87872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8788
8789 * xftfont.c (struct xftfont_info): Delete the member ft_face.
8790 (xftfont_open): Don't keep locking face.
8791 (xftfont_close): Don't unlock face.
8792 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
8793
8794 * fontset.c (fontset_find_font): Don't prefer a font of
8795 supplementary charset.
8796
87972008-02-01 Kenichi Handa <handa@m17n.org>
8798
8799 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
8800 script, langsys_tag to langsys, new member script.
8801 (OTF_TAG_STR): Terminate by '\0'.
8802 (ftfont_get_open_type_spec): If :otf prop is is spec, Limit the
8803 listing to the script specified in that property. Fix arg to
8804 OTF_check_features.
8805
88062008-02-01 Jason Rumney <jasonr@gnu.org>
8807
8808 * w32font.h: New file.
8809
8810 * w32font.c: Include it.
8811 (struct w32font_info): Add owning_frame field. Move to w32font.h.
8812 (w32font_open): Set owning_frame.
8813 (w32font_text_extents): Use owning_frame.
8814 (struct font_callback_data): Add opentype_only field.
8815 (add_font_entity_to_list): Use it to filter fonts.
8816 Don't check against full name.
8817 (w32font_list_internal): New function.
8818 (w32font_list): Use it.
8819 (w32font_match_internal): New function.
8820 (w32font_match): Use it.
8821 (w32font_open_internal): New function.
8822 (w32font_open): Use it.
8823 (w32font_get_cache, w32font_close, w32font_has_char)
8824 (w32font_encode_char, w32font_text_extents, w32font_draw):
8825 Make non-static.
8826
8827 * makefile.w32-in (w32font.o): Depend on w32font.h.
8828
88292008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8830
8831 * charset.c (Fdefine_charset_internal): Record a supplementary
8832 charset at the tail of Vcharset_order_list.
8833
8834 * font.c (Ffont_shape_text): Fix the return value.
8835
8836 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
8837
8838 * xdisp.c (handle_auto_composed_prop): Fix previous change.
8839
88402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8841
8842 * ftfont.c (struct OpenTypeSpec): New struct.
8843 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
8844 (ftfont_get_open_type_spec): New function.
8845 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
8846
8847 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
8848
88492008-02-01 Jason Rumney <jasonr@gnu.org>
8850
8851 * w32font.c (add_font_entity_to_list): Compare only the beginning
8852 of full name.
8853
88542008-02-01 Kenichi Handa <handa@m17n.org>
8855
8856 * xdisp.c (handle_auto_composed_prop): Simplify the code.
8857 Never return HANDLED_RECOMPUTE_PROPS.
8858
88592008-02-01 Kenichi Handa <handa@m17n.org>
8860
8861 * font.c (font_gstring_produce): Delete it.
8862
8863 * composite.h (COMPOSITION_METHOD):
8864 Handle COMPOSITION_WITH_GLYPH_STRING.
8865
88662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8867
8868 * xfont.c (Qx): Delete.
8869 (syms_of_xfont): Don't initialize Qx.
8870
8871 * composite.h (enum composition_method):
8872 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
8873
88742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8875
8876 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
8877 (choose_face_font): Accept new form of font-spec.
8878
8879 * frame.h (font_driver_list): Declare it unconditionally.
8880 (struct frame): Define members font_driver_list and font_data_list
8881 unconditionally.
8882
8883 * fontset.c: Include "font.h" unconditionally.
8884 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
8885 (Fset_fontset_font): Accept a font-spec object.
8886
8887 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
8888 PIXEL_SIZE part a wild card.
8889
8890 * dispextern.h (struct glyph_string): Define members clip and
8891 num_clips unconditionally.
8892 (struct face): Define members font_info and extra unconditionally.
8893
8894 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
8895 ftfont_info only when HAVE_LIBOTF is defined.
8896
88972008-02-01 Andreas Schwab <schwab@suse.de>
8898
8899 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
8900 and end.
8901
89022008-02-01 Jason Rumney <jasonr@gnu.org>
8903
8904 * w32font.c (w32font_driver): Add new fields.
8905
89062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8907
8908 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
8909 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
8910 (LIBES): Add @M17N_FLT_CFLAGS@.
8911
8912 * composite.c (compose_text): Don't treat the new style
8913 composition specially.
8914
8915 * emacs.c (main): Call syms_of_font unconditionally.
8916
8917 * font.h (FONT_ENTITY_NOT_LOADABLE)
8918 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
8919 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
8920 (struct font_driver): New member shape.
8921 (font_registry_charsets): Extern it.
8922 (font_find_for_lface, font_prepare_composition): Adjust prototype.
8923 (font_otf_capability, font_drive_otf): Delete their externs.
8924
8925 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
8926 (font_charset_alist, font_registry_charsets): Move from xfont.c
8927 and rename.
8928 (font_prop_validate_otf): New function.
8929 (font_property_table): Register it for QCotf.
8930 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
8931 (font_drive_otf): Delete.
8932 (font_prepare_composition): New arg F. Adjust for the change of
8933 lispy gstring.
8934 (font_find_for_lface): New arg C.
8935 (font_load_for_face): Adjust for the change of font_find_for_lface.
8936 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
8937 lispy gstring.
8938 (Ffont_shape_text): New function.
8939 (Fopen_font): If the font size is not given, use 12-pixel.
8940 (Ffont_at): New arg STRING.
8941 (syms_of_font): Initalize font_charset_alist.
8942 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
8943 conditionally.
8944
8945 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
8946 fonts of the same font-spec. Change the format of RFONT-DEF.
8947 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
8948 Adjust for the change of RFONT-DEF.
8949 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
8950
8951 * ftfont.h: New file.
8952
8953 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
8954 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
8955 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
8956 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
8957 font_otf_capability and font_drive_otf, set ftfont_shape.
8958 (ftfont_list): Adjust for the change of :otf property value.
8959 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
8960 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
8961 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
8962 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
8963 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
8964 (otf_gstring, gstring, m17n_flt_initialized): New variables.
8965
8966 * w32term.c (x_draw_composite_glyph_string_foreground):
8967 Adjust for the change of lispy gstring.
8968
8969 * xdisp.c (handle_composition_prop): Adjust for the change of
8970 lispy gstring. Call a function for auto-composition with the
8971 third arg it->window.
8972 (fill_composite_glyph_string): Adjust for the change of lispy string.
8973 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
8974
8975 * xfaces.c (set_font_frame_param): Adjust for the change of
8976 font_find_for_lface.
8977
8978 * xfont.c (x_font_charset_alist): Move to font.c and rename.
8979 (xfont_registry_charsets): Likewise. Change caller.
8980 (syms_of_xfont): Don't handle x_font_charset_alist.
8981
8982 * xftfont.c: Include "ftfont.h".
8983 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
8984 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
8985 (xftfont_close) [HAVE_LIBOTF]: Close otf.
8986 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
8987 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
8988 Set xftfont_driver.shape to xftfont_shape.
8989
8990 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
8991 the change of lispy gstring.
8992
89932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8994
8995 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
8996
89972008-02-01 Jason Rumney <jasonr@gnu.org>
8998
8999 * w32font.c (w32font_draw): Fill background manually.
9000
90012008-02-01 Jason Rumney <jasonr@gnu.org>
9002
9003 * font.c (Qfontp): Remove unused symbol.
9004 (QCantialias): New symbol.
9005 (syms_of_font): Define it.
9006 (font_property_table): Set a validator for QCantialias.
9007
9008 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
9009 Define if not already.
9010 (QCfamily): Share with xfaces.c.
9011 (Qstandard, Qsubpixel, Qnatural): New symbols.
9012 (syms_of_w32font): Define them. Don't define QCfamily here.
9013 (w32_antialias_type, lispy_antialias_type): New functions.
9014 (w32_enumfont_pattern_entity): New arg requested_font.
9015 Set antialias parameter if non-default was requested.
9016 (fill_in_logfont): Fill in lfQuality if :antialias specified.
9017
90182008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9019
9020 * lread.c (read1): Undo the previous change.
9021
90222008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
9023
9024 * frame.c (Fdelete_frame): Call font_update_drivers only when
9025 USE_FONT_BACKEND is defined.
9026
90272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9028
9029 * font.h (struct font_bitmap): New member bits_per_pixel.
9030 (struct font_driver): New members start_for_frame and end_for_frame.
9031 (struct font_data_list): New struct.
9032 (font_put_frame_data, font_get_frame_data): Extern them.
9033
9034 * frame.h (struct frame): New member font_data_list.
9035
9036 * font.c (font_update_drivers): Call driver->start_for_frame and
9037 driver->end_for_frame at proper timings.
9038 (font_put_frame_data, font_get_frame_data): New functions.
9039 (Ffont_spec): Add usage in the docstring.
9040
9041 * frame.c (make_frame): Initialize f->font_data_list to NULL.
9042 (Fdelete_frame): Call font_update_drivers.
9043
9044 * xftfont.c (struct xftface_info): Delete the member xft_draw.
9045 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
9046 (xftfont_get_xft_draw): New function.
9047 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
9048 (xftfont_end_for_frame): New function.
9049 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
9050
9051 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
9052 Change argument. Cache GCs in the per-frame data.
9053 (struct ftxfont_frame_data): New struct.
9054 (ftxfont_draw_bitmap): New arg gc_fore and flush.
9055 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
9056 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
9057 (ftxfont_end_for_frame): New function.
9058 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
9059
9060 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
9061
90622008-02-01 Kenichi Handa <handa@m17n.org>
9063
9064 * xselect.c (Vselection_coding_system)
9065 (Vnext_selection_coding_system): Delete them.
9066 (syms_of_xselect): Don't declare selection-coding-system and
9067 next-selection-coding-system. They are declared in select.el.
9068
90692008-02-01 Jason Rumney <jasonr@gnu.org>
9070
9071 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
9072
9073 * w32fns.c: Include imm.h.
9074 (get_composition_string_fn, get_ime_context_fn): New optional
9075 system functions.
9076 (globals_of_w32fns): Load them from imm32.dll.
9077 (ignore_ime_char): New flag.
9078 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
9079 WM_IME_ENDCOMPOSITION messages.
9080
9081 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
9082 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
9083
90842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9085
9086 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
9087 (READCHAR_REPORT_MULTIBYTE): New macro.
9088 (readchar): New 2nd arg MULTIBYTE.
9089 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
9090 Make symbol's name multibyte according to the multibyteness of the
9091 source.
9092
90932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9094
9095 * xfaces.c (face_for_overlay_string): Call lookup_face with
9096 correct arguments (fix of synching with the trunk).
9097
90982008-02-01 Kenichi Handa <handa@m17n.org>
9099
9100 * font.c (font_prop_validate_symbol, font_prop_validate_style)
9101 (font_prop_validate_non_neg, font_prop_validate_spacing):
9102 Delete argument prop_index.
9103 (font_property_table): Change arguments to validater. Change Callers.
9104 (font_lispy_object): Delete.
9105 (font_at): Use font_find_object instead fo font_lispy_object.
9106
91072008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9108
9109 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
9110 and file names.
9111
91122008-02-01 Jason Rumney <jasonr@gnu.org>
9113
9114 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
9115 (font_matches_spec): Remove debug output.
9116 (add_font_entity_to_list): Avoid using substituted fonts.
9117
91182008-02-01 Jason Rumney <jasonr@gnu.org>
9119
9120 * doc.c (Fsnarf_documentation):
9121 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
9122
91232008-02-01 Miles Bader <miles@gnu.org>
9124
9125 * dispextern.h (struct glyph_row): Only define "clip" field if
9126 HAVE_WINDOW_SYSTEM is defined.
9127
91282008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
9129
9130 Fix up multi-tty merge.
9131
9132 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
9133 and indentation.
9134
9135 * xfaces.c (free_realized_face, clear_face_gcs):
9136 Include font_done_for_face in the input_blocked section, just in case.
9137
9138 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
9139 (get_char_face_and_encoding): Undo last change and remove the *other*
9140 duplicate definition (i.e. keep the one that's better scoped and that
9141 includes code for the font-backend).
9142
9143 * terminal.c (create_terminal): Default keyboard_coding to
9144 `no-conversion' and terminal_coding to `undecided'.
9145
9146 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
9147
9148 * fontset.c (free_realized_fontsets): Check that the table entry does
9149 contain a fontset before trying to compare it to `base'.
9150
9151 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
9152 syms_of_charset, and syms_of_coding earlier because init_window_once
9153 now needs Vcoding_system_hash_table to be setup.
9154
9155 * coding.h (default_buffer_file_coding): Remove.
9156
9157 * coding.c (default_buffer_file_coding): Remove.
9158 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
9159 than ->symbol, and use the terminal-local coding system.
9160 (syms_of_coding): Don't setup the coding-systems that are not
9161 terminal-local.
9162 (Fdefine_coding_system_internal): Use XCAR/XCDR.
9163
9164 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
9165 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
9166
9167 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
9168 in chartab.c and were re-added here by mistake.
9169 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
9170
9171 * doc.c (Fsnarf_documentation):
9172 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
9173 src to etc.
9174
9175 * ChangeLog.10: Add mistakenly removed entry.
9176
91772008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
9178
9179 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
9180
91812008-02-01 Miles Bader <miles@gnu.org>
9182
9183 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
9184 Add extra args to FACE_FOR_CHAR.
9185
91862008-02-01 Kenichi Handa <handa@m17n.org>
9187
9188 * keymap.c (where_is_internal_1): If key is a cons, store the copy
9189 in sequence.
9190
9191 * chartab.c (map_sub_char_table, map_char_table): If the range
9192 contains just one character, call the function with that character
9193 even if the depth is not 3.
9194
91952008-02-01 Jason Rumney <jasonr@gnu.org>
9196
9197 * w32font.c (w32font_text_extents): Calculate metrics for the
9198 whole string.
9199
92002008-02-01 Jason Rumney <jasonr@gnu.org>
9201
9202 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
9203
92042008-02-01 Jason Rumney <jasonr@gnu.org>
9205
9206 * w32term.c (x_set_glyph_string_clipping): Use
9207 get_glyph_string_clip_rects.
9208 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
9209 Adjust for the change of struct glyph_string.
9210
9211 * w32font.c (w32font_draw): Do clipping here.
9212
92132008-02-01 Kenichi Handa <handa@m17n.org>
9214
9215 * xftfont.c (xftfont_draw): Adjust for the change of struct
9216 glyph_string.
9217
9218 * xterm.c (x_set_glyph_string_clipping): Use
9219 get_glyph_string_clip_rects.
9220 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
9221 Adjust for the change of struct glyph_string.
9222
9223 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
9224 the resulting clip(s}.
9225 (expose_overlaps): Add arg r. Change callers. Set it to
9226 row->clip temporarily.
9227 (expose_window): Redraw rows overlapping the exposed area.
9228
9229 * dispextern.h (struct glyph_row): New member clip.
9230 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
9231 clip_height, new member clip, and num_clips.
9232
92332008-02-01 Kenichi Handa <handa@m17n.org>
9234
9235 * data.c (Fchar_or_string_p): Fix docstring.
9236
92372008-02-01 Kenichi Handa <handa@m17n.org>
9238
9239 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
9240 create a temporary XftDraw object.
9241
92422008-02-01 Kenichi Handa <handa@m17n.org>
9243
9244 * font.c (Ffontp): Fix docstring.
9245
9246 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
9247 strong evidence of ISO-2022.
9248
92492008-02-01 Kenichi Handa <handa@m17n.org>
9250
9251 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
9252 SYNTAX_ENTRY_FOLLOW_PARENT.
9253
92542008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
9255
9256 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
9257 its type.
9258 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
9259 Update to the new type of weak_hash_tables and next_weak.
9260
9261 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
9262 a plain C pointer to Lisp_Hash_Table.
9263
9264 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
9265 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
9266 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
9267 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
9268 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
9269 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
9270 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
9271 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
9272 (GC_EQ): Remove since they've been identical to their non-GC_
9273 alter-egos ever since the markbit was eradicated.
9274
9275 * alloc.c:
9276 * buffer.c:
9277 * buffer.h:
9278 * data.c:
9279 * fileio.c:
9280 * filelock.c:
9281 * fns.c:
9282 * frame.h:
9283 * lisp.h:
9284 * macterm.c:
9285 * print.c:
9286 * process.c:
9287 * w32fns.c:
9288 * w32menu.c:
9289 * w32term.c:
9290 * xfns.c:
9291 * xmenu.c:
9292 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
9293
92942008-02-01 Kenichi Handa <handa@m17n.org>
9295
9296 * chartab.c (map_sub_char_table): Make it work for the top-level
9297 char-table. Fix handling of parent char-table.
9298 (map_char_table): Adjust for the above change.
9299
93002008-02-01 Jason Rumney <jasonr@gnu.org>
9301
9302 * w32font.c (Qgdi): Rename from Qw32.
9303
93042008-02-01 Jason Rumney <jasonr@gnu.org>
9305
9306 * w32bdf.c (get_quoted_string): Make function static.
9307
93082008-02-01 Kenichi Handa <handa@m17n.org>
9309
9310 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
9311 bigger ascent and descent than those of the font, use them as
9312 font's ascent and descent.
9313
93142008-02-01 Kenichi Handa <handa@m17n.org>
9315
9316 * Makefile.in (${lispsource}international/charprop.el): Move this
9317 target within "#ifdef HAVE_UNIDATA" and "#endif".
9318
93192008-02-01 Kenichi Handa <handa@m17n.org>
9320
9321 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
9322 (shortlisp): Add ../lisp/language/tai-viet.el.
9323
93242008-02-01 Ulrich Mueller <ulm@gentoo.org>
9325
9326 * Makefile.in (${lispsource}international/charprop.el): Depend on
9327 temacs${EXEEXT}.
9328
93292008-02-01 Jason Rumney <jasonr@gnu.org>
9330
9331 * w32font.c (w32font_close): Delete the GDI font object.
9332
9333 * w32menu.c: Include character.h.
9334
9335 * w32proc.c: Likewise.
9336
9337 * w32select.c: Likewise.
9338
9339 * makefile.w32-in (w32proc.o): Depend on character.h.
9340
93412008-02-01 Jason Rumney <jasonr@gnu.org>
9342
9343 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
9344
9345 * w32menu.c (syms_of_w32menu): Likewise.
9346
9347 * w32proc.c (syms_of_ntproc): Likewise.
9348
9349 * w32select.c (syms_of_w32select): Likewise.
9350
9351 * w32term.c (syms_of_w32term): Likewise.
9352
93532008-02-01 Jason Rumney <jasonr@gnu.org>
9354
9355 * w32font.c (w32font_draw): Delete brush after using it.
9356
93572008-02-01 Jason Rumney <jasonr@gnu.org>
9358
9359 * w32font.c (w32font_open): Don't set font_idx.
9360 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
9361 to font settings.
9362 (w32font_draw): Fill background explicitly.
9363
93642008-02-01 Jason Rumney <jasonr@gnu.org>
9365
9366 * w32term.c (w32_initialize): Don't call w32font_initialize.
9367
9368 * w32font.c (w32font_info): Remove subranges.
9369 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
9370 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
9371 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
9372 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
9373 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
9374 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
9375 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
9376 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
9377 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
9378 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
9379 New symbols.
9380 (font_callback_data): New struct.
9381 (w32font_list, w32font_match): Use it.
9382 (w32font_open): Don't populate subranges.
9383 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
9384 (w32font_encode_char): Always return unicode code-point as-is.
9385 (w32font_text_extents): Supply a transformation matrix to
9386 GetGlyphOutline. Never look up by glyph index. Avoid looping
9387 twice. Use unicode version of GetTexExtentPoint32 instead of
9388 glyph index version.
9389 (set_fonts_frame): Remove.
9390 (w32_enumfont_pattern_entity): Add frame parameter, use it to
9391 set frame parameter. Use backward compatible fake foundries.
9392 Save generic family in extra slot under QCfamily. Make width slot
9393 constant. Save QCspacing value. Save list of scripts instead of
9394 binary subranges.
9395 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
9396 (add_font_entity_to_list): Use font_callback_data struct. Filter
9397 unwanted fonts.
9398 (add_one_font_entity_to_list): Use font_callback_data struct.
9399 (w32_registry): Default to iso10646_1.
9400 (fill_in_logfont): Use dpi from extra slot. Don't bother with
9401 string font registries. Don't fill in font name if it is a generic
9402 family name, fill family instead. Use spacing, family and script
9403 extra info to fill pitch, family and charset fields.
9404 (list_all_matching_fonts): Use font_callback_data struct.
9405 (unicode_range_for_char): Remove.
9406 (font_supported_scripts): New function.
9407 (w32font_initialize): Remove.
9408 (syms_of_w32font): Update which symbols are defined.
9409
94102008-02-01 Jason Rumney <jasonr@gnu.org>
9411
9412 * font.c (font_pixel_size): Reverse assq_no_quit args.
9413
9414 * w32term.h (FONT_WIDTH): Report max width, not average.
9415 (FONT_MAX_WIDTH): Remove.
9416 (FONT_AVG_WIDTH): New macro.
9417
9418 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
9419 redefinition of FONT_WIDTH.
9420
9421 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
9422 (w32_cache_char_metrics): Use FONT_WIDTH.
9423
9424 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
9425
94262008-02-01 Jason Rumney <jasonr@gnu.org>
9427
9428 * w32font.c (w32font_open): Make lfHeight negative.
9429
9430 * w32fns.c (x_default_font_parameter): Use new style font name.
9431 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
9432
94332008-02-01 Jason Rumney <jasonr@gnu.org>
9434
9435 * w32font.c (QCsubranges): New symbol.
9436 (w32font_open, w32font_has_char): Get subranges from subproperty
9437 of extra.
9438 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
9439 (syms_of_w32font): Define :subranges symbol.
9440
9441 * font.c (font_put_extra): Expose externally.
9442
9443 * font.h (font_put_extra): Move declaration from font.c.
9444
9445 * font.c (Ffont_get): Use font driver to determine otf capability.
9446 (adjust_anchor): Check if driver defines anchor_point before using.
9447
9448 * w32font.c (w32font_open): Handle size, height and pixel_size better.
9449 (w32font_draw): Use options.
9450 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
9451 Fix detection of truetype fonts.
9452 (registry_to_w32_charset): Handle charsets other than iso8859-1
9453 expressed as lisp symbols.
9454 (w32_registry): Express charset as lisp symbol.
9455 (fill_in_logfont): Reverse pixel and point height logic.
9456 Don't set width here. Set quality to default.
9457
9458 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
9459 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
9460
9461 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
9462 Remove redundant loop and allocation.
9463
9464 * makefile.w32-in (font.o, w32font.o): New objects.
9465 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
9466 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
9467
9468 * xdisp.c (fill_composite_glyph_string): Make the first arg to
9469 STORE_XCHARB a valid l-value.
9470
9471 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
9472 calculations for non-Truetype fonts.
9473 (x_draw_glyph_string): Sync with xterm.c.
9474 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
9475 Remove redundant code.
9476 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
9477
9478 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
9479 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
9480
9481 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
9482 (x_to_w32_charset, w32_to_x_charset): Expose externally.
9483
9484 * w32font.c: New file for w32 font backend.
9485
94862008-02-01 Kenichi Handa <handa@m17n.org>
9487
9488 * term.c: Don't include "buffer.h" twice.
9489
94902008-02-01 Kenichi Handa <handa@m17n.org>
9491
9492 * character.c (Funibyte_string): New function.
9493 (syms_of_character): Defsubr it.
9494
94952008-02-01 Jason Rumney <jasonr@gnu.org>
9496
9497 * w32term.c [USE_FONT_BACKEND]:
9498 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
9499 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
9500 (x_draw_glyph_string, x_draw_glyph_string_foreground)
9501 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
9502 (x_free_frame_resources): Sync with xterm.c.
9503
95042008-02-01 Andreas Schwab <schwab@suse.de>
9505
9506 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
9507 char-table size.
9508
95092008-02-01 Kenichi Handa <handa@m17n.org>
9510
9511 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
9512
95132008-02-01 Kenichi Handa <handa@m17n.org>
9514
9515 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
9516 font_otf_gpos, add font_drive_otf.
9517
9518 * fontset.c (fontset_find_font): Pay attention to font size
9519 specified for a font.
9520 (reorder_font_vector): Check contents of font_def.
9521
9522 * font.c (struct otf_list): Delete it.
9523 (otf_list): Make it a lisp variable.
9524 (otf_open): Use lispy otf_list.
9525 (generate_otf_features): Rename from parse_gsub_gpos_spec.
9526 (check_otf_features): New function.
9527 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9528 New functions.
9529 (font_drive_otf): New function merging font_otf_gsub and
9530 font_otf_gpos.
9531 (font_open_for_lface): New arg spec. Change argument order.
9532 (font_load_for_face): Adjust for the change of font_open_for_lface.
9533 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
9534 Ffont_otf_gpos.
9535 (syms_of_font): Staticpro otf_list. Delete defsubr of
9536 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
9537
9538 * xfaces.c (set_font_frame_param): Adjust for the change of
9539 font_open_for_lface.
9540
9541 * font.h (font_open_for_lface): Adjust prototype.
9542 (struct font_driver): Delete members otf_gsub and otf_gpos, add
9543 member otf_drive.
9544 (font_otf_gsub, font_otf_gpos): Delete externs.
9545 (font_drive_otf): Extern it.
9546
95472008-02-01 Kenichi Handa <handa@m17n.org>
9548
9549 * font.c (font_at): If the window W is not on a window system,
9550 return Qnil.
9551
9552 * coding.c (produce_chars, encode_coding): Don't call
9553 insert_from_gap if no characters to produce.
9554
95552008-02-01 Kenichi Handa <handa@m17n.org>
9556
9557 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
9558 Fclear_face_cache.
9559
9560 * xfaces.c (face_for_font): Check also face->font==font->font.font.
9561
95622008-02-01 Miles Bader <miles@gnu.org>
9563
9564 * emacs.c (main): Change default value of `enable_font_backend' to 1.
9565 Parse "--disable-font-backend" option.
9566 (standard_args): Add "--disable-font-backend" option.
9567
95682008-02-01 Kenichi Handa <handa@m17n.org>
9569
9570 * fontset.c (fontset_find_font): New function.
9571 (fontset_font): Use fontset_find_font.
9572 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
9573 Register the specified font for all Latin characters.
9574 (new_fontset_from_font): Register the specified font for all Latin
9575 characters.
9576 (dump_fontset): For a realized fontset, include the base fontset
9577 name in the returned vector.
9578
95792008-02-01 Kenichi Handa <handa@m17n.org>
9580
9581 * character.h (CHAR_STRING): Cast C to unsigned on calling
9582 char_string.
9583
9584 * character.c (char_string): Type of arg C changed to unsigned.
9585 Signal an error if C is an invalid character code.
9586
9587 * editfns.c (general_insert_function, Fchar_to_string):
9588 Use CHARACTERP, not INTEGERP.
9589
95902008-02-01 Kenichi Handa <handa@m17n.org>
9591
9592 * character.h (MIN_MULTIBYTE_LEADING_CODE)
9593 (MAX_MULTIBYTE_LEADING_CODE): New macros.
9594
9595 * regex.c (analyse_first): Fix for multibyte characters in "case
9596 charset:" and "case categoryspec:".
9597
95982008-02-01 Andreas Schwab <schwab@suse.de>
9599
9600 * Makefile.in (LIBES): Move standard libraries to the end.
9601
96022008-02-01 Kenichi Handa <handa@m17n.org>
9603
9604 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
9605 nonzero, don't shrink the buffer nextb.
9606
9607 * buffer.h (struct buffer_text): New member inhibit_shrinking.
9608
9609 * coding.c (coding_alloc_by_making_gap): New arg offset.
9610 (alloc_destination): Call coding_alloc_by_making_gap with the arg
9611 offset.
9612 (decode_coding_iso_2022): Update coding->safe_charsets.
9613 (decode_coding_gap): Temporarily set
9614 current_buffer->text->inhibit_shrinking to 1.
9615
96162008-02-01 Kenichi Handa <handa@m17n.org>
9617
9618 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
9619 indexing into elements of s->cmp and s->char2b.
9620
96212008-02-01 Juanma Barranquero <lekktu@gmail.com>
9622
9623 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
9624
96252008-02-01 Kenichi Handa <handa@m17n.org>
9626
9627 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
9628 target_multibyte instead of multibyte.
9629 (re_match_2_internal): Call bcmp_translate with target_multibyte.
9630 (bcmp_translate): Change the argument name from multibyte to
9631 target_multibyte.
9632
96332008-02-01 Kenichi Handa <handa@m17n.org>
9634
9635 These changes are to compile a regexp into a pattern that can be
9636 used both for multibyte and unibyte targets.
9637
9638 * Makefile.in (search.o): Depend on charset.h.
9639
9640 * character.c (multibyte_char_to_unibyte_safe): New function.
9641
9642 * search.c: Include "charset.h".
9643 (compile_pattern_1): Delete argument multibyte. Don't set
9644 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
9645 (compile_pattern): Don't compare cp->buf.target_multibyte.
9646 Compare cp->buf.charset_unibyte.
9647 (compile_pattern): Set cp->buf.target_multibyte.
9648
9649 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
9650
9651 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
9652
9653 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
9654 multibyte. Change callers.
9655 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
9656 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
9657 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
9658 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
9659 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
9660 (regex_compile): Make the compiled pattern usable both for
9661 multibyte and unibyte targets.
9662 (analyse_first): Make the fastmap usable both for multibyte and
9663 unibyte targets.
9664 (TRANSLATE_VIA_MULTIBYTE): Delete.
9665 (re_match_2_internal): Pay attention to the case that the
9666 multibyteness of bufp and target may be different.
9667
96682008-02-01 Kenichi Handa <handa@m17n.org>
9669
9670 * xdisp.c (x_produce_glyphs): When a font is not found, make the
9671 empty box occupy at least one column width.
9672
96732008-02-01 Miles Bader <miles@gnu.org>
9674
9675 * Makefile.in: Remove redundant HAVE_XFT clause.
9676
96772008-02-01 Kenichi Handa <handa@m17n.org>
9678
9679 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
9680
96812008-02-01 Kenichi Handa <handa@m17n.org>
9682
9683 * fontset.c (Finternal_char_font): Fix for the case of POSITION
9684 being nil.
9685
96862008-02-01 Kenichi Handa <handa@m17n.org>
9687
9688 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
9689
96902008-02-01 Kenichi Handa <handa@m17n.org>
9691
9692 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
9693
96942008-02-01 Kenichi Handa <handa@m17n.org>
9695
9696 * search.c (simple_search): Fix previous change.
9697
96982008-02-01 Kenichi Handa <handa@m17n.org>
9699
9700 * xftfont.c (ftfont_font_format): Extern declaration.
9701
9702 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
9703
9704 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
9705 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
9706
9707 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
9708 (ftfont_font_format): Fix previous change.
9709
9710 * font.h (Ffont_xlfd_name): EXFUN it.
9711
9712 * font.c (font_parse_xlfd): Fix the array size of `f'.
9713 (register_font_driver): Use EQ to compare driver->type.
9714
9715 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
9716 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
9717 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
9718
97192008-02-01 Kenichi Handa <handa@m17n.org>
9720
9721 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
9722 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
9723
97242008-02-01 Kenichi Handa <handa@m17n.org>
9725
9726 * xfont.c (xfont_open): Set font->format.
9727
9728 * xftfont.c (xftfont_open): Set font->format.
9729
9730 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
9731 (ftfont_list): Include FC_FONTFORMAT in FcObject.
9732 (ftfont_open): Set font->format.
9733 (ftfont_font_format): New function.
9734
9735 * font.h (struct font): New member format.
9736
9737 * font.c (Qopentype): New variable.
9738 (syms_of_font): Defsym it.
9739 (Fquery_font): Change the format of the last element of the return
9740 value.
9741
97422008-02-01 Kenichi Handa <handa@m17n.org>
9743
9744 * xfns.c (xic_create_xfontset): Try the default fontset name as a
9745 last resort.
9746
97472008-02-01 Kenichi Handa <handa@m17n.org>
9748
9749 * coding.c (detect_coding_charset): Fix detection of multi-byte
9750 charset.
9751
97522008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
9753
9754 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
9755
97562008-02-01 Kenichi Handa <handa@m17n.org>
9757
9758 * xdisp.c (get_next_display_element): Set it->face_id for the
9759 first component of a composition.
9760 (x_produce_glyphs): Check if the font is changed or not for composition.
9761
97622008-02-01 Kenichi Handa <handa@m17n.org>
9763
9764 * fontset.c (Qlatin): New variable.
9765 (syms_of_fontset): Define it as a lisp symbol.
9766 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
9767
97682008-02-01 Kenichi Handa <handa@m17n.org>
9769
9770 * font.c (font_unparse_fcname): Pay attention to the case that
9771 some of font property is a null string.
9772
97732008-02-01 Kenichi Handa <handa@m17n.org>
9774
9775 * term.c: Include "composite.h".
9776 (encode_terminal_code): Output all components of composition.
9777 Check the size of encode_terminal_src.
9778 (produce_glyphs): For composition, call produce_composite_glyph.
9779 (append_composite_glyph, produce_composite_glyph): New functions.
9780
9781 * xdisp.c (x_produce_glyphs): In handling composition, if a font
9782 is not found, get font_info from the current ascii face.
9783
97842008-02-01 Kenichi Handa <handa@m17n.org>
9785
9786 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
9787 buffer-file-name to Qnil before calling insert_from_buffer.
9788
9789 * font.c (font_unparse_fcname): Pay attention to the case that
9790 foundry is a null string.
9791
97922008-02-01 Kenichi Handa <handa@m17n.org>
9793
9794 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
9795
9796 * font.c (Qunicode_sip): New variable.
9797 (syms_of_font): Declare it as a Lisp symbol.
9798
9799 * font.h (Qunicode_sip): Extern it.
9800
98012008-02-01 Kenichi Handa <handa@m17n.org>
9802
9803 * composite.c (get_composition_id): Pay attention to TAB component.
9804
9805 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
9806 TAB. Adjust for the change of s->char2b which always points to
9807 the first element of allocated memory.
9808
9809 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
9810
9811 * xdisp.c (handle_composition_prop): Set it->c to the first
9812 non-TAB component.
9813 (fill_composite_glyph_string): Change argument.
9814 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
9815 (x_produce_glyphs): Fix handling of left/right padding.
9816
98172008-02-01 Kenichi Handa <handa@m17n.org>
9818
9819 * coding.c (detect_coding_system): Fix for handling off
9820 inhibit_iso_escape_detection. Fix for the case that no coding
9821 system is defined for a specific coding category.
9822
98232008-02-01 Kenichi Handa <handa@m17n.org>
9824
9825 * font.c (font_matching_entity): Delete unused local var.
9826
9827 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
9828 opening a font.
9829
9830 * fileio.c (Finsert_file_contents): On recovering a file, assume
9831 Unix-like eol.
9832 (choose_write_coding_system): On auto-saving a file, force
9833 Unix-like eol.
9834
9835 * coding.c (setup_coding_system): Fix setting of
9836 coding->common_flags based on eol_type.
9837 (coding_inherit_eol_type): If PARENT is not nil, be sure to
9838 inherit from it.
9839
98402008-02-01 Kenichi Handa <handa@m17n.org>
9841
9842 * alloc.c (NSTATICS): Increas to 0x600.
9843
98442008-02-01 Kenichi Handa <handa@m17n.org>
9845
9846 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
9847 (ftfont_list): Don't check :name property.
9848 (ftfont_match): New function.
9849 (ftfont_pattern_entity): If the pattern doesn't contain
9850 FC_SPACING, don't assume FC_MONO.
9851
9852 * font.h (struct font_driver): New member `match'.
9853 (font_update_drivers): Adjust prototype.
9854
9855 * font.c (font_parse_fcname, font_parse_name): Don't change :name
9856 property of FONT.
9857 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
9858 them unconditionally.
9859 (font_matching_entity): New function.
9860 (font_open_by_name): Try font_matching_entity if exact match is
9861 not found.
9862 (font_update_drivers): Delete the arg FONT. Return a list of
9863 actually used backends. Don't free faces, font caches here.
9864 Don't store data in frame parameters. Don't call x_set_font.
9865 (Ffont_spec): Store :name property as is.
9866 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
9867 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
9868 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
9869 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
9870 Call font->driver->otf_gsub instead of font_otf_gsub.
9871
9872 * frame.c (x_set_font_backend): Do more works that were done in
9873 font_update_drivers before.
9874
9875 * xfont.c (xfont_match): New function.
9876 (xfont_driver): Set xfont_driver.match to xfont_match.
9877 (xfont_draw): Set font in GC if necessary.
9878
9879 * ftxfont.c (ftxfont_match): New function.
9880 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
9881
9882 * xftfont.c (xftfont_match): New function.
9883 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
9884
98852008-02-01 Kenichi Handa <handa@m17n.org>
9886
9887 * font.h (struct font): New member scalable.
9888 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
9889 (font_otf_gsub): Adjust prototype.
9890
9891 * font.c (font_otf_capability): Fix handling of the default langsys.
9892 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
9893 Check the contents of SPEC.
9894 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
9895 (check_gstring): New function.
9896 (REPLACEMENT_CHARACTER): New macro.
9897 (font_otf_gsub): New arg alternate_subst. Be sure to set all
9898 glyph codes of GSTRING.
9899 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
9900 (font_prepare_composition): Set cmp->glyph_len.
9901 (font_open_entity): Set font->scalable.
9902 (Ffont_get): Handle :otf property.
9903 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
9904 functions.
9905 (Fquery_font): Use font->font.full_name.
9906 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
9907 Sfont_otf_alternates.
9908
9909 * ftfont.c (ftfont_open): Set font->font.full_name and
9910 font->font.name properly. Fix calculation of font->font.height
9911 and font->min_width.
9912
9913 * ftxfont.c (ftxfont_create_gcs): New function.
9914 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
9915 (ftxfont_draw_backgrond): Fix filling region.
9916 (ftxfont_default_fid): New function.
9917 (ftxfont_open): Set xfont->fid to the return value of
9918 ftxfont_default_fid.
9919 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
9920 (ftxfont_done_face): Free only GCs that are created by
9921 ftxfont_create_gcs.
9922 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
9923
9924 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
9925 Clip to src->width, etc (not src->clip_XXX).
9926
9927 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
9928 FontBackend frame parameter.
9929
99302008-02-01 Kenichi Handa <handa@m17n.org>
9931
9932 * font.h (struct font_driver_list): New member `on'.
9933 (Fclear_font_cache): EXFUN it.
9934 (font_update_drivers): Extern it.
9935
9936 * font.c (font_unparse_fcname): Fix typo (swidth->width).
9937 (font_list_entities): Check driver_list->on.
9938 (register_font_driver): Initalize `on' member to 0.
9939 (font_update_drivers): New function.
9940 (Fclear_font_cache): Check driver_list->on.
9941
9942 * frame.h (Qfont_backend): Extern it.
9943 (x_set_font_backend): Extern it.
9944
9945 * frame.c (Qfont_backend): New variable.
9946 (frame_parms): New element for font-backend.
9947 (x_set_font_backend): New function.
9948
9949 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
9950 FontBackend frame parameter.
9951 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
9952 x_set_font_backend.
9953
9954 * xfont.c (xfont_list): Don't try listing by :name property if the
9955 name is not for XLFD.
9956
99572008-02-01 Kenichi Handa <handa@m17n.org>
9958
9959 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
9960 (LGLYPH_SET_TO): New macros.
9961 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
9962 element of G is vector or not.
9963 (font_at): Extern it.
9964
9965 * font.c: Include window.h.
9966 (font_lispy_object): New function.
9967 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
9968 end of valid glyph.
9969 (font_close_object): Fix getting (struct font *).
9970 (font_at): New function.
9971 (Ffont_get): If FONT is a font-object, get entity from it.
9972 (Ffont_make_gstring): Initialize elements of glyphs with nil.
9973 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
9974 range check.
9975 (Ffont_at): New function.
9976 (syms_of_font): Defsubr Sfont_at.
9977
9978 * xdisp.c (it_props): Move the entry for Qauto_composed to just
9979 before the entry for Qcomposition.
9980 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
9981 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
9982 the font in gstring.
9983 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
9984 LGLYPH_FORM (g) to detect the end of valid glyph.
9985 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
9986 we are composing with gstring.
9987
9988 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
9989 Check if adjustment is vector or not.
9990
9991 * Makefile.in (font.o): Make it depends on window.h.
9992
99932008-02-01 Kenichi Handa <handa@m17n.org>
9994
9995 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
9996 adjustment is vector or not.
9997
99982008-02-01 Miles Bader <miles@gnu.org>
9999
10000 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
10001
100022008-02-01 Kenichi Handa <handa@m17n.org>
10003
10004 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
10005 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
10006 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
10007
10008 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
10009 (DEVICE_DELTA): Fix typo.
10010 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
10011 LGLYPH format.
10012
10013 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
10014 the change of LGLYPH format.
10015
100162008-02-01 Kenichi Handa <handa@m17n.org>
10017
10018 * ftfont.c (ftfont_list): Fix typo.
10019 (ftfont_build_basic_charsets): Don't include letters with diacritics.
10020
100212008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10022
10023 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
10024
10025 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
10026 xftface_info is non-NULL.
10027
100282008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10029
10030 * ftfont.c (ftfont_list): Move misplaced #endif.
10031
100322008-02-01 Kenichi Handa <handa@m17n.org>
10033
10034 * ftfont.c (ftfont_list): Pay attention to the case that
10035 FC_CAPABILITY is not defined.
10036
100372008-02-01 Kenichi Handa <handa@m17n.org>
10038
10039 * xftfont.c (xftfont_open): Set charset related members to -1.
10040
10041 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
10042 QCname.
10043 (ftfont_open): Set charset related members to -1.
10044
10045 * fontset.c (Votf_script_alist): New variable.
10046 (syms_of_fontset): Initialize it.
10047 (fontset_font): Delete unused variable.
10048
10049 * fontset.h (Votf_script_alist): Extern it.
10050
10051 * font.c (font_find_for_lface): Optimize code.
10052
10053 * font.h (font_close_object, font_merge_old_spec): Extern them.
10054
100552008-02-01 Kenichi Handa <handa@m17n.org>
10056
10057 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
10058 (syms_of_font): Initialize them.
10059 (font_pixel_size): Allow float value in dpi.
10060 (font_prop_validate_type): Delete.
10061 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
10062 Change caller.
10063 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
10064 (font_prop_validate_extra): Delete.
10065 (font_prop_validate_spacing): New function.
10066 (font_property_table): Add elements for all known properties.
10067 (get_font_prop_index): Rename from check_font_prop_name. New
10068 argument FROM. Change caller.
10069 (font_prop_validate): Validate all known properties.
10070 (font_put_extra): Delete argument force. Change caller.
10071 (font_expand_wildcards): Make it static. Fix the way of shrinking
10072 the possible range.
10073 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
10074 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
10075 Change caller.
10076 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
10077 (font_parse_fcname): Delete argument merge. Fix parsing of point
10078 size. Don't validate properties values here. Change caller.
10079 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
10080 (font_open_by_name): Delete unused variable.
10081 (Ffont_spec): Likewise. Validate property values.
10082 (Ffont_match_p): New function.
10083
10084 * font.h (QCscalable): Extern it.
10085 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
10086
10087 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
10088
10089 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
10090 (xfont_list_pattern): New function.
10091 (xfont_list): Use xfont_list_pattern.
10092
100932008-02-01 Kenichi Handa <handa@m17n.org>
10094
10095 * font.h (Flist_fonts): EXFUN it.
10096
100972008-02-01 Jason Rumney <jasonr@gnu.org>
10098
10099 * w32term.c (w32_initialize): Add back smoothing_type and
10100 smoothing_enabled definitions.
10101
101022008-02-01 Kenichi Handa <handa@m17n.org>
10103
10104 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
10105 s->face->font on determining underline position.
10106
101072008-02-01 Kenichi Handa <handa@m17n.org>
10108
10109 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
10110 (font_has_char): Accept font-object too.
10111 (font_find_for_lface): Try at first with a size specified in face.
10112
101132008-02-01 Kenichi Handa <handa@m17n.org>
10114
10115 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
10116 font_open_by_name.
10117
101182008-02-01 Kenichi Handa <handa@m17n.org>
10119
10120 * font.h (QCspacing, QCdpi): Extern them.
10121 (enum font_spacing): New enum.
10122 (FONT_PIXEL_SIZE_QUANTUM): New macro.
10123
10124 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
10125 (QCspacing, QCdpi): New variables.
10126 (syms_of_font): Initialize them.
10127 (font_pixel_size): New function.
10128 (font_put_extra): New function.
10129 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
10130 in FONT_EXTRA.
10131 (font_parse_fcname): Handle enumerated values (e.g. bold).
10132 Fix handling font size. Add QCname property that contains only
10133 unknown properties.
10134 (font_score): Change argument. Change caller. Pay attention to
10135 FONT_PIXEL_SIZE_QUANTUM.
10136 (font_sort_entites, font_list_entities, font_find_for_lface)
10137 (font_open_for_lface, font_open_by_name): Fix handling of font size.
10138 (Ffont_spec): Add QCname property that contains only unknown properties.
10139
10140 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
10141 include weight in listing pattern, instead check weight of each
10142 listed font. Don't include scalable in pattern. Pay attention to
10143 FONT_PIXEL_SIZE_QUANTUM.
10144
101452008-02-01 Kenichi Handa <handa@m17n.org>
10146
10147 * font.c (font_parse_fcname): Fix parsing of point-size.
10148 (font_unparse_fcname): Produce symbolic names for style properties.
10149 (font_list_entities): Handle float size correctly.
10150 (font_open_by_name): Prefer `normal' property values if the name
10151 doesn't specify them.
10152
10153 * fontset.c (Finternal_char_font): Use font_get_name, not
10154 Ffont_xlfd_name.
10155
10156 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
10157 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
10158 pattern. Don't force scalable.
10159
10160 * xftfont.c (xftfont_open): For generating a name, start from
10161 96-byte buffer.
10162
101632008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10164
10165 * frame.h (x_new_fontset2): Fix prototype.
10166
101672008-02-01 Kenichi Handa <handa@m17n.org>
10168
10169 * font.h (struct font_driver): Delete member parse_name.
10170 (font_match_p, font_get_spec, font_parse_fcname)
10171 (font_unparse_fcname): Extern them.
10172 (font_get_name): Adjust prototype.
10173
10174 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
10175 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
10176 (font_expand_wildcards): Fix handling ENCODING field. Avoid
10177 unnecessary checks for weight, slant, and swidth.
10178 (font_parse_fcname): New function.
10179 (font_unparse_fcname): New function.
10180 (font_parse_name): New function.
10181 (font_match_p): New function.
10182 (font_get_name): Change return value to Lisp string.
10183 (font_get_spec): New function.
10184 (Qunspecified, Qignore_defface): Don't extern them.
10185 (font_find_for_lface): Assume that LFACE is fully specified.
10186 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
10187 object, use it for FACE.
10188 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
10189 driver->parse_name.
10190 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
10191
10192 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
10193 prototype.
10194
10195 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
10196 argument F. Don't call Fnew_fontset. Instead, directly call
10197 make_fontset.
10198
10199 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
10200
10201 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
10202 of x_new_fontset2.
10203
10204 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
10205 (Qsans__serif): New variables.
10206 (ftfont_generic_family_list): New variable.
10207 (syms_of_ftfont): Initialize the above variables.
10208 (ftfont_pattern_entity): Delete argument NAME.
10209 (ftfont_list_generic_family): New function.
10210 (ftfont_parse_name): Delete this function.
10211 (ftfont_list): Try generic family only when FcFontList found no font.
10212 (ftfont_list_family): Fix args to FcObjectSetBuild.
10213
10214 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
10215 object in attrs[LFACE_FONT_INDEX].
10216 (set_lface_from_font_name): Cancel all changes for font-backend.
10217 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
10218 function.
10219 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
10220 font object in QCfont attribute.
10221 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
10222 (realize_default_face) [USE_FONT_BACKEND]: Call
10223 set_lface_from_font_and_fontset.
10224
10225 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
10226 "fixed", and signal error here if no suitable font was found.
10227
10228 * xfont.c (xfont_parse_name): Delete this function.
10229
10230 * xftfont.c (xftfont_open): Change coding style of error
10231 handling. Generate fontconfig's fontname pattern.
10232
10233 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
10234 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
10235
10236 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
10237 Both args FONTSET and FONT_OBJECT must be existing ones.
10238
102392008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10240
10241 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
10242
102432008-02-01 Kenichi Handa <handa@m17n.org>
10244
10245 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
10246
10247 * font.h (struct font): Fix typo.
10248
10249 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
10250 XLFD_XXX_INDEX.
10251 (enum xlfd_field_mask): New enum.
10252 (intern_font_field): Changed argument. Change caller. If digits
10253 are followed by non-digits, return a symbol.
10254 (font_expand_wildcards): New function.
10255 (font_parse_xlfd): Fix wildcard handling.
10256 (Ffont_spec): If :name is specified, reflect the info in the other
10257 properties.
10258
10259 * ftfont.c (ftfont_pattern_entity): Fix typo.
10260 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
10261 locale.
10262
102632008-02-01 Kenichi Handa <handa@m17n.org>
10264
10265 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
10266
10267 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
10268 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
10269 registry doesn't specify encoding part.
10270 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
10271 (font_open_by_name): At first try parsing the name.
10272 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
10273 as Lisp symbols.
10274
10275 * fontset.c (reorder_font_vector): Pay attention to the case that
10276 the 3rd element of font_def is nil.
10277 (fontset_font): For the default fontset, append one more fontset
10278 elements for a script-based font specification. Don't add script
10279 attribute on finding a font.
10280 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
10281 font name.
10282 (fontset_ascii_font): If a font can't be opened, return nil.
10283
10284 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
10285 (ftfont_pattern_entity): New function.
10286 (ftfont_get_cache): Assume that freetype_font_cache is already
10287 initialized.
10288 (ftfont_list): Handle the case that a file is specified in font
10289 name. Use ftfont_pattern_entity to generate entities.
10290 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
10291 (syms_of_ftfont): Initialize freetype_font_cache.
10292
10293 * xftfont.c (xftfont_open): Make the font name fontconfig's
10294 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
10295 (xftfont_close): Free font->font.name if not NULL.
10296
10297 * xfont.c (xfont_list): If script is specified for a font, return
10298 null_vector.
10299 (xfont_list_family): Declare argument type.
10300
10301 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
10302 name, set LFACE_FONT (lface) to nil.
10303
10304 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
10305 return Qnil.
10306
103072008-02-01 Kenichi Handa <handa@m17n.org>
10308
10309 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
10310 (standard_args): Add "-enable-font-backend".
10311
103122008-02-01 Kenichi Handa <handa@m17n.org>
10313
10314 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
10315 (struct xftdraw_list, xftdraw_list): Delete them.
10316 (register_xftdraw, check_xftdraw): Delete them.
10317 (xftfont_prepare_face): Don't call register_xftdraw.
10318 (xftfont_done_face): Don't call check_xftdraw.
10319 (xftfont_draw): Get background color only when with_background is
10320 nonzero.
10321
10322 * xfont.c (xfont_encode_char): Fix calculation of char2b.
10323
103242008-02-01 Kenichi Handa <handa@m17n.org>
10325
10326 These changes are for the new font handling codes.
10327
10328 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
10329 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
10330 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
10331 (FONTSRC, FONTOBJ): New variables.
10332 (obj): Add $(FONTOBJ).
10333 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
10334 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
10335 @LIBOTF_LIBS@.
10336 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
10337 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
10338
10339 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
10340
10341 * character.h (Vscript_representative_chars): Extern it.
10342
10343 * character.c (Vscript_representative_chars): New variable.
10344 (syms_of_character): Declare it as a Lisp variable.
10345
10346 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
10347 enable_font_backend is nonzero, accept the composition method
10348 COMPOSITION_WITH_GLYPH_STRING.
10349
10350 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
10351 enumeration COMPOSITION_WITH_GLYPH_STRING.
10352
10353 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
10354 members clip_x, clip_y, clip_width, and clip_height.
10355 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
10356
10357 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
10358 --enable-font-backend. Call syms_of_font.
10359
10360 * fns.c (assoc_no_quit): New function.
10361
10362 * fontset.h (FONT_INFO_FROM_FACE): New macro.
10363 (face_for_font, new_fontset_from_font)
10364 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
10365
10366 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
10367 (fontset_font, fontset_ascii, face_for_char)
10368 (make_fontset_for_ascii_face, Ffont_info)
10369 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
10370 is nonzero, use font-backend mechanism.
10371 (find_font_encoding): Make it non-static.
10372 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
10373 New functions.
10374
10375 * frame.h (struct frame): New members resx and resy.
10376 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
10377 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
10378
10379 * frame.c [USE_FONT_BACKEND]: Include "font.h".
10380 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
10381
10382 * lisp.h (assoc_no_quit): Extern it.
10383
10384 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
10385 Through out the file, use FONT_INFO_FROM_FACE instead of
10386 FONT_INFO_FROM_ID, use get_per_char_metric instead of
10387 rif->per_char_metric.
10388 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
10389 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
10390 (get_glyph_face_and_encoding, fill_composite_glyph_string)
10391 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
10392 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
10393 nonzero, use font-backend mechanism.
10394 (get_per_char_metric): New function.
10395
10396 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
10397 (set_lface_from_font_name)
10398 (set_font_frame_param, free_realized_face)
10399 (prepare_face_for_display, clear_face_gcs)
10400 (Finternal_set_font_selection_order, realize_x_face)
10401 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
10402 font-backend mechanism.
10403 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
10404 (load_face_font) [USE_FONT_BACKEND]: Abort.
10405 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
10406 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
10407
10408 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
10409 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
10410 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
10411 nonzero, register all available font drivers. Call
10412 x_default_font_parameter for deciding a font.
10413 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
10414
10415 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
10416 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
10417 (x_set_glyph_string_clipping_exactly)
10418 (x_compute_glyph_string_overhangs)
10419 (x_draw_glyph_string_foreground)
10420 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
10421 (x_free_frame_resources) [USE_FONT_BACKEND]: If
10422 enable_font_backend is nonzero, use font-backend mechanism.
10423 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
10424
104252008-02-01 Kenichi Handa <handa@m17n.org>
10426
10427 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
10428 system_eol_type.
10429 (syms_of_coding): Initialize system_eol_type.
10430
10431 * process.c (Fset_process_coding_system): Inherit system's eol
10432 format if necessary.
10433
104342008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10435
10436 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
10437
104382008-02-01 Kenichi Handa <handa@m17n.org>
10439
10440 * coding.c (decode_eol): Pay attention to buffer relocation in
10441 del_range_2.
10442 (decode_coding): Call decode_eol before restoring undo_list.
10443
104442008-02-01 Kenichi Handa <handa@m17n.org>
10445
10446 * charset.c (Fdefine_charset_internal): Fix setting of
10447 emacs_mule_bytes.
10448
104492008-02-01 Kenichi Handa <handa@m17n.org>
10450
10451 * keyboard.c (read_char): Check if C is a character or not before
10452 looking up Vkeyboard_translate_table.
10453
104542008-02-01 Kenichi Handa <handa@m17n.org>
10455
10456 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
10457 condition to terminate the loop.
10458
104592008-02-01 Kenichi Handa <handa@m17n.org>
10460
10461 * coding.c (produce_composition): Compare charbuf[i] instead of
10462 args[i] against 0.
10463 (Fterminal_coding_system): Use EQ to compare Lisp objects.
10464
104652008-02-01 Kenichi Handa <handa@m17n.org>
10466
10467 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
10468 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
10469 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
10470 detect_coding.
10471 (emacs_mule_char): Handle old style (Emacs 20) component character
10472 of a composition.
10473 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
10474 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
10475 composition rule.
10476 (decode_coding_emacs_mule): Handle invalid bytes correctly.
10477
104782008-02-01 Kenichi Handa <handa@m17n.org>
10479
10480 * coding.c (encode_coding_ccl): Allocate destination dynamically
10481 when necessary.
10482
104832008-02-01 Kenichi Handa <handa@m17n.org>
10484
10485 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
10486 the loop. When quitted, show a proper error message.
10487
104882008-02-01 Kenichi Handa <handa@m17n.org>
10489
10490 * xterm.c (x_set_glyph_string_clipping_exactly): Set
10491 src->clip_head and src->clip_tail temporarily instead of src->hl.
10492
10493 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
10494 character sequence.
10495 (Fccl_execute_on_string): Use ASET, not XSET.
10496
104972008-02-01 Kenichi Handa <handa@m17n.org>
10498
10499 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
10500
105012008-02-01 Kenichi Handa <handa@m17n.org>
10502
10503 * coding.c (decode_coding): Fix the condition of terminating the
10504 decoding loop.
10505
105062008-02-01 Kenichi Handa <handa@m17n.org>
10507
10508 * data.c (Faset): On setting a character bigger than 255 in a
10509 unibyte string, signal an error instead of make the string multibyte.
10510
105112008-02-01 Kenichi Handa <handa@m17n.org>
10512
10513 * charset.c (map_charset_chars): Fix for ascii-compatible charset
10514 made by a mapping table.
10515
105162008-02-01 Kenichi Handa <handa@m17n.org>
10517
10518 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
10519 not.
10520 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
10521 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
10522
10523 * xterm.c (x_draw_composite_glyph_string_foreground): Check
10524 s->face is NULL or not.
10525
105262008-02-01 Kenichi Handa <handa@m17n.org>
10527
10528 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
10529 (x_draw_glyph_string): Fix drawing of right_overhang and
10530 left_overhang around/on cursor.
10531
10532 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
10533
105342008-02-01 Kenichi Handa <handa@m17n.org>
10535
10536 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
10537
105382008-02-01 Kenichi Handa <handa@m17n.org>
10539
10540 * coding.c (Fdefine_coding_system_internal)
10541 (Fdefine_coding_system_alias): Avoid a duplicated element in
10542 Vcoding_system_alist.
10543
105442008-02-01 Kenichi Handa <handa@m17n.org>
10545
10546 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
10547
10548 * coding.c (Qcoding_system_define_form): New variable.
10549 (syms_of_coding): Intern and staticpro it.
10550 (Fcoding_system_p): Check Qcoding_system_define_form.
10551 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
10552
10553 * coding.h (CODING_SYSTEM_P): If ID is not available, call
10554 Fcoding_system_p.
10555 (CHECK_CODING_SYSTEM): If ID is not available, call
10556 Fcheck_coding_system.
10557 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
10558 Try also Fcheck_coding_system.
10559
105602008-02-01 Kenichi Handa <handa@m17n.org>
10561
10562 * coding.c (code_conversion_restore): GCPRO arg.
10563
105642008-02-01 Kenichi Handa <handa@m17n.org>
10565
10566 * character.c (lisp_string_width): Check multibyteness of STRING.
10567
105682008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10569
10570 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
10571 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
10572 (decode_mac_font_name): Use decode_coding_c_string instead of
10573 decode_coding.
10574 (x_load_font): Initialize fontp->fontset to -1. Set
10575 fontp->encoding_type.
10576
105772008-02-01 Kenichi Handa <handa@m17n.org>
10578
10579 * search.c (search_buffer): Give up BM search on case-fold-search
10580 if one of a target character has a case-equivalence of different
10581 byte length even if that target charcter is an ASCII.
10582 (simple_search): Fix calculation of byte length of matched text.
10583 (boyer_moore): Fix handling of case-equivalent multibyte characters.
10584
105852008-02-01 Kenichi Handa <handa@m17n.org>
10586
10587 * coding.c (decode_coding): Fix handling of invalid bytes.
10588
105892008-02-01 Kenichi Handa <handa@m17n.org>
10590
10591 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
10592 Unicode characters.
10593
105942008-02-01 Kenichi Handa <handa@m17n.org>
10595
10596 * coding.c (encode_coding_object): If a pre-write-conversion
10597 function makes a new buffer, kill it.
10598
105992008-02-01 Kenichi Handa <handa@m17n.org>
10600
10601 * coding.c (QCascii_compatible_p): New variable.
10602 (syms_of_coding): Initialize it.
10603 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
10604 calling string_char.
10605 (record_conversion_result): Add `default:' case.
10606 (coding_charset_list): Delete unused variable `coding_type'.
10607 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
10608 property in the plist of the coding system.
10609 (Fcoding_system_put): Check QCascii_compatible_p.
10610
106112008-02-01 Miles Bader <miles@gnu.org>
10612
10613 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
10614 removed calculation of frame `f', as it's now used.
10615
106162008-02-01 Kenichi Handa <handa@m17n.org>
10617
10618 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
10619 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
10620 (UNIDATA): New variable.
10621 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
10622 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
10623 $(RUN_TEMACS) unconditionally.
10624
106252008-02-01 Kenichi Handa <handa@m17n.org>
10626
10627 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
10628 (admindir): New variable.
10629 ($(lispsource)international/charprop.el): New target.
10630
106312008-02-01 Miles Bader <miles@gnu.org>
10632
10633 * character.c (chars-in-region): Remove obsolete function.
10634 (syms_of_character): Remove its initialization.
10635
106362008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
10637
10638 * w32select.c (validate_coding_system)
10639 (setup_windows_coding_system): New functions.
10640 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
10641 setup_windows_coding_system.
10642 (setup_config, Fw32_get_clipboard_data): Use
10643 validate_coding_system.
10644 (Fx_selection_exists): Move call to setup_config to a place
10645 where signals are allowed.
10646
10647 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
10648 (Fcheck_coding_system): Add declarations.
10649
106502008-02-01 Kenichi Handa <handa@m17n.org>
10651
10652 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
10653
106542008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10655
10656 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
10657 string as the second argument for x_new_fontset.
10658
106592008-02-01 Kenichi Handa <handa@m17n.org>
10660
10661 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
10662 (encode_coding_object): Use safe_call instead of call2.
10663
106642008-02-01 Kenichi Handa <handa@m17n.org>
10665
10666 * fontset.c (Fset_fontset_font): Check family element of a given vector.
10667
10668 * Makefile.in (lisp): Include charprop.el.
10669
106702008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10671
10672 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
10673 Not sure if it's unnecessary.
10674
106752008-02-01 Steven Tamm <steventamm@mac.com>
10676
10677 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
10678 some possibly unnecessary fontset checking code that crashed
10679 when creating a new frame.
10680
106812008-02-01 Kenichi Handa <handa@m17n.org>
10682
10683 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
10684 lookup_face.
10685
10686 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
10687
10688 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
10689
106902008-02-01 Kenichi Handa <handa@m17n.org>
10691
10692 * coding.c: Cancel the change done in HEAD on 2008-02-01.
10693 (coding_charset_list): New function.
10694
10695 * coding.h (coding_charset_list): Extern it.
10696
106972008-02-01 Kenichi Handa <handa@m17n.org>
10698
10699 * fontset.c (Fset_fontset_font): Call find_font_encoding with
10700 concatenation of family and registry.
10701
107022008-02-01 Kenichi Handa <handa@m17n.org>
10703
10704 * character.h (BYTE8_STRING): Fix typo.
10705
10706 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
10707 string to multibyte (sync to HEAD).
10708
10709 * casefiddle.c (casify_region): Handle changes in byte-length
10710 using replace_range_2 (sync to HEAD).
10711
107122008-02-01 Andreas Schwab <schwab@suse.de>
10713
10714 * chartab.c (map_char_table): GCPRO table and arg.
10715
107162008-02-01 Kenichi Handa <handa@m17n.org>
10717
10718 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
10719 already at limit.
10720
107212008-02-01 Kenichi Handa <handa@m17n.org>
10722
10723 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
10724 instead of fast_c_string_match_ignore_case.
10725 (find_font_encoding): Change argument to Lisp_Object. Use
10726 fast_string_match_ignore_case instead of
10727 fast_c_string_match_ignore_case. Change caller.
10728
107292008-02-01 Kenichi Handa <handa@m17n.org>
10730
10731 * xdisp.c (get_next_display_element): In unibyte case, decide to
10732 display in octal form by checking a character by
10733 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
10734
10735 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
10736
10737 * character.c (unibyte_has_multibyte_table): New variable.
10738
10739 * character.h (unibyte_has_multibyte_table): Extern it.
10740 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
10741
107422008-02-01 Kenichi Handa <handa@m17n.org>
10743
10744 * coding.c (encode_coding_iso_2022): Fix handling of charset
10745 annotation.
10746
107472008-02-01 Kenichi Handa <handa@m17n.org>
10748
10749 * coding.c (setup_coding_system): If coding_system is nil, use
10750 Qundecided.
10751 (Fterminal_coding_system): Return nil if terminal coding system is
10752 `undecided'.
10753 (syms_of_coding): Define coding-system `undecided' here. Setup
10754 terminal_coding as `undecided'.
10755
107562008-02-01 Kenichi Handa <handa@m17n.org>
10757
10758 * xdisp.c (message_dolog, set_message_1): Call
10759 unibyte_char_to_multibyte with arg type int.
10760
10761 * lread.c (read1): Fix reading of a char-table.
10762
10763 * print.c (print_object): Include sub char-table in circularities
10764 detection.
10765
107662008-02-01 Kenichi Handa <handa@m17n.org>
10767
10768 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
10769 Append the found sequences in car of ARGS instead of prepending.
10770
107712008-02-01 Kenichi Handa <handa@m17n.org>
10772
10773 * fileio.c (report_file_error): Make a unibyte string from
10774 strerror (errorno).
10775 (Fsubstitute_in_file_name): Fix the arg to
10776 unibyte_char_to_multibyte. It is evaluated twice.
10777
107782008-02-01 Kenichi Handa <handa@m17n.org>
10779
10780 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
10781
107822008-02-01 Kenichi Handa <handa@m17n.org>
10783
10784 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
10785 BOM is not found.
10786 (detect_coding, detect_coding_system): Optimization for ISO-2022
10787 when no 8-bit data is found.
10788
107892008-02-01 Jason Rumney <jasonr@gnu.org>
10790
10791 * w32fns.c (x_to_w32_font): Update to use new coding struct.
10792
107932008-02-01 Kenichi Handa <handa@m17n.org>
10794
10795 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
10796 CHARS.
10797
107982008-02-01 Steven Tamm <steventamm@mac.com>
10799
10800 * macterm.c (mac_encode_char): Add charset argument and update
10801 to use encoding_type.
10802 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
10803 switch to pure fontset.
10804 (decode_mac_font_name): Temporarily remove decoding.
10805 (x_font_name_to_mac_font_name): Temporarily remove encoding.
10806 (x_load_font): Temporarily remove encoding.
10807
108082008-02-01 Kenichi Handa <handa@m17n.org>
10809
10810 * xfaces.c (Fface_font): If frame is not on a window system,
10811 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
10812 refer to face->font.
10813 (split_font_name_into_vector, build_font_name_from_vector)
10814 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
10815 when HAVE_WINDOW_SYSTEM is defined.
10816
108172008-02-01 Kenichi Handa <handa@m17n.org>
10818
10819 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
10820 (x_produce_glyphs): Fix setting of members of cmp in case
10821 cmp->glyph_len is zero.
10822
10823 * fontset.c (Fset_fontset_font): Fix docstring.
10824 (Ffontset_info): Make it backward compatible. New arg ALL.
10825
108262008-02-01 Kim F. Storm <storm@cua.dk>
10827
10828 * process.c (read_process_output): Grow decoding_buf when needed;
10829 this could cause a crash in allocate_string and compact_small_strings.
10830
108312008-02-01 Kenichi Handa <handa@m17n.org>
10832
10833 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
10834
108352008-02-01 Kenichi Handa <handa@m17n.org>
10836
10837 * coding.c (setup_coding_system): Set coding->common_flags
10838 correctly for raw-text.
10839 (consume_chars): On encoding unibyte text by raw-text, don't check
10840 multibyte form.
10841 (encode_coding): On encoding by raw-text, never use translation tables.
10842
10843 * fileio.c (e_write): Short cut for the case of no encoding.
10844
108452008-02-01 Kenichi Handa <handa@m17n.org>
10846
10847 * coding.c (detect_coding, detect_coding_system): Delete unused
10848 variables.
10849
108502008-02-01 Kenichi Handa <handa@m17n.org>
10851
10852 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
10853 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
10854
108552008-02-01 Kenichi Handa <handa@m17n.org>
10856
10857 * coding.c (Ffind_coding_systems_region_internal): Include
10858 raw-text and no-conversion in the result.
10859
108602008-02-01 Kenichi Handa <handa@m17n.org>
10861
10862 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
10863 (load_font_get_repertory): Delete unnecessary check of ENCODING of
10864 FONT_DEF.
10865 (font_def_arg, add_arg, from_arg, to_arg): New args.
10866 (set_fontset_font): Change argument.
10867 (Fset_fontset_font): Fix for the case that TARGET is a script
10868 name and charset name.
10869 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
10870
108712008-02-01 Kenichi Handa <handa@m17n.org>
10872
10873 * fontset.c (fontset_font): Rename from fontset_face. Change return
10874 value.
10875 (face_suitable_for_char_p, face_for_char): Adjust for the change
10876 of fontset_font.
10877 (make_fontset_for_ascii_face): Fix setting of the fontset element
10878 for ASCII.
10879 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
10880 to get a font name.
10881 (Ffontset_info): Adjust for the change of fontset_font.
10882
10883 * coding.c (emacs_mule_char): Check invalid code more rigidly.
10884
10885 * character.h (LEADING_CODE_LATIN_1_MIN)
10886 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
10887
108882008-02-01 Kenichi Handa <handa@m17n.org>
10889
10890 * editfns.c (check_translation): New function.
10891 (Ftranslate_region_internal): Handle M:N mapping.
10892
108932008-02-01 Kenichi Handa <handa@m17n.org>
10894
10895 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
10896
108972008-02-01 Kenichi Handa <handa@m17n.org>
10898
10899 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
10900 goto invalid_code.
10901 (decode_coding_iso_2022): Fix handling of invalid designation.
10902
10903 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
10904 after calling code_conversion_save.
10905
109062008-02-01 Kenichi Handa <handa@m17n.org>
10907
10908 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
10909
10910 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
10911
10912 * fontset.c: Include "intervals.h".
10913 (fontset_face): Fix comparing of Lisp_Objects.
10914 (free_face_fontset, new_fontset_from_font_name): Fix
10915 Lisp_Object/int mixup.
10916
10917 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
10918
10919 * coding.c: Add many prototypes for static functions.
10920 (get_translation_table): Allow max_lookup to be NULL.
10921 (decode_coding, Ffind_coding_systems_region_internal)
10922 (Funencodable_char_position, Fcheck_coding_systems_region): Call
10923 get_translation_table with max_lookup NULL.
10924
109252008-02-01 Kenichi Handa <handa@m17n.org>
10926
10927 * coding.c (get_translation_table): Declare it as Lisp_Object.
10928 (LOOKUP_TRANSLATION_TABLE): New macro.
10929 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
10930 instead of CHAR_TABLE_REF.
10931
109322008-02-01 Kenichi Handa <handa@m17n.org>
10933
10934 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
10935 annotation data format.
10936 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
10937 Change arguments FROM and TO to single argument NCHARS. Change caller.
10938 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
10939 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10940 (decode_coding_ccl, decode_coding_charset): Pay attention to
10941 coding->charbuf_used.
10942 (get_translation): New function.
10943 (produce_chars): New arguments translation_table and last_block.
10944 Translate characters here. Return number of carryover chars.
10945 Change caller.
10946 (produce_composition): New argument pos. Change caller.
10947 Adjust for the change of annotation data format.
10948 (produce_charset, produce_annotation): Likewise.
10949 (decode_coding, encode_coding): Don't call translate_chars.
10950 (consume_chars): New arg translation_table. Change caller.
10951 (translate_chars): Delete.
10952 (syms_of_coding): Make translation-table's number of extra slots 2.
10953
109542008-02-01 Kenichi Handa <handa@m17n.org>
10955
10956 * search.c (simple_search): Fix setting this_pos_byte in backward
10957 search.
10958
10959 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
10960 byte sequence.
10961 (detect_coding_ccl): Fix setting of the variable valids.
10962
109632008-02-01 Kenichi Handa <handa@m17n.org>
10964
10965 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
10966
10967 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
10968
10969 * editfns.c (Ftranslate_region_internal): Rename from
10970 Ftranslate_region. Accept a char-table in TABLE.
10971 (syms_of_editfns): Defsubr Stranslate_region_internal.
10972
10973 * xfaces.c (set_lface_from_font_name): If a font is specified for
10974 a frame, generate a fontset from the font.
10975 (build_scalable_font_name): If the scalable font is requested for
10976 a specific size, don't change that size.
10977 (try_font_list): Try a scalable font also in the case that a
10978 pattern string is specified.
10979
109802008-02-01 Kenichi Handa <handa@m17n.org>
10981
10982 * xfaces.c (Fface_font): New optional arg CHARACTER.
10983
109842008-02-01 Kenichi Handa <handa@m17n.org>
10985
10986 * charset.h (CHARSET_OFFSET): New macro.
10987
109882008-02-01 Kenichi Handa <handa@m17n.org>
10989
10990 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
10991
10992 * fontset.c (fontset_face): Handle the case that repertory is a
10993 char-table.
10994 (find_font_encoding): Return nil for unknown encoding.
10995 (Fset_fontset_font): Ignore a font of unknown encoding.
10996
109972008-02-01 Kenichi Handa <handa@m17n.org>
10998
10999 * keymap.c (describe_vector): Handle default value of a char table.
11000
11001 * fontset.c (fontset_face): Handle fallback fonts correctly.
11002 (Ffontset_info): Return infomation about fallback fonts.
11003
110042008-02-01 Kenichi Handa <handa@m17n.org>
11005
11006 * fontset.c (FONTSET_DEFAULT): New macro.
11007 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
11008 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
11009 the case that it is nil.
11010 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
11011 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
11012
11013 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
11014 subset or superset.
11015
110162008-02-01 Kenichi Handa <handa@m17n.org>
11017
11018 * emacs.c (main): Call init_charset after syms_of_XXX.
11019
11020 * charset.c (Vcharset_map_directory): Delete.
11021 (Vcharset_map_path): New variable.
11022 (load_charset_map_from_file): Use Vcharset_map_path instead.
11023 (init_charset): Initialize Vcharset_map_path.
11024 (syms_of_charset): Delete declaration of "charset-map-directory",
11025 add declaration of "charset-map-path".
11026
110272008-02-01 Kenichi Handa <handa@m17n.org>
11028
11029 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
11030 ASCII only string.
11031
11032 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
11033
11034 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
11035 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
11036
110372008-02-01 Kenichi Handa <handa@m17n.org>
11038
11039 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
11040
11041 * coding.c (QCmnemonic, QCdefalut_char)
11042 (QCdecode_translation_table, QCencode_translation_table)
11043 (QCpost_read_conversion, QCpre_write_conversion): New variables.
11044 (get_translation_table): Return a list of translation tables if
11045 necessary.
11046 (decode_coding): Call get_translation_table with ENCODEP 0.
11047 (char_encodable_p): If translation_table is non-nil, always call
11048 translate_char.
11049 (Fdefine_coding_system_internal): Accept list of translation
11050 tables as :encode-translation-table and :decode-translation-table.
11051 (Fcoding_system_put): New function.
11052 (syms_of_coding): Declare new symbols. Defsubr
11053 Scoding_system_put.
11054 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
11055 typically JISX0212.
11056
11057 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
11058 when the charset is superset type.
11059
11060 * character.c (translate_char): Accept list of translation tables.
11061
110622008-02-01 Kenichi Handa <handa@m17n.org>
11063
11064 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
11065 (CODING_ATTR_TRANS_TBL): New macro.
11066
11067 * coding.c (get_translation_table): New function.
11068 (translate_chars): Fix the bug of skipping annotation data.
11069 (decode_coding, encode_coding): Utilize get_translation_table.
11070 (char_encodable_p, Funencodable_char_position): Translate char if
11071 necessary.
11072 (Ffind_coding_systems_region_internal)
11073 (Fcheck_coding_systems_region): Setup translation table for encode
11074 in a coding system attribute vector in advance.
11075 (Fdefine_coding_system_internal): Allow a symbol as translation
11076 table. For shift-jis type coding system, allow 4th charset.
11077
110782008-02-01 Kenichi Handa <handa@m17n.org>
11079
11080 * coding.c (decode_coding_sjis): Check the first byte rigidly.
11081
11082 * xdisp.c (get_next_display_element): Pass -1 as POS to
11083 FACE_FOR_CHAR if displaying a C-string.
11084
110852008-02-01 Kenichi Handa <handa@m17n.org>
11086
11087 * composite.c (get_composition_id): Handle xoff and yoff in a
11088 composition rule.
11089
11090 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
11091 (struct composition): New member lbearing and rbearing.
11092
11093 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
11094 (x_get_glyph_overhangs): Handle a composition glyph.
11095 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
11096
11097 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
11098 composition glyph.
11099
111002008-02-01 Kenichi Handa <handa@m17n.org>
11101
11102 * print.c: Include charset.h.
11103 (Vprint_charset_text_property): New variable.
11104 (Qdefault): Extern it.
11105 (PRINT_STRING_NON_CHARSET_FOUND)
11106 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
11107 (print_check_string_result): New variable.
11108 (print_check_string_charset_prop): New function.
11109 (print_prune_charset_plist): New variable.
11110 (print_prune_string_charset): New function.
11111 (print_object): Call print_prune_string_charset if
11112 Vprint_charset_text_property is not t.
11113 (print_interval): Print nothing if interval->plist is nil.
11114 (syms_of_print): Declare Vprint_charset_text_property as a lisp
11115 variable. Init and staticpro print_prune_charset_plist.
11116
111172008-02-01 Kenichi Handa <handa@m17n.org>
11118
11119 * fontset.c (new_fontset_from_font_name): Use the specified font
11120 for all characters in the new fontset.
11121
11122 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
11123 OBJECT args.
11124
11125 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
11126 OBJECT args for composition too.
11127
11128 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
11129 OBJECT args.
11130
111312008-02-01 Kenichi Handa <handa@m17n.org>
11132
11133 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
11134
11135 * fontset.c (reorder_font_vector): Adjust for the change of
11136 FONT_DEF format.
11137 (fontset_face): New arg id. Change caller.
11138 (face_for_char): New args pos and object.
11139 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
11140 (fs_query_fontset): Check NAME by Fassoc too.
11141 (Fset_fontset_font): Allow non-XLFD font name.
11142 (Ffontset_info): Adjust for the change of FONT_DEF format.
11143
11144 * fontset.h (face_for_char): Adjust prototype.
11145
11146 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
11147 (append_space, extend_face_to_end_of_line)
11148 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
11149 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
11150
11151 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
11152 POS and OBJECT args.
11153
11154 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
11155 POS and OBJECT args.
11156
111572008-02-01 Jason Rumney <jasonr@gnu.org>
11158
11159 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
11160 of GlobalAlloc'ed memory.
11161
111622008-02-01 Kenichi Handa <handa@m17n.org>
11163
11164 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
11165
11166 * charset.h (charset_table_used): Delete extern.
11167
11168 * charset.c (charset_table_used): Make it static.
11169 (map_charset_chars): Fix args to c_function with.
11170
11171 * chartab.c (map_sub_char_table_for_charset): Fix args to
11172 c_function with.
11173
11174 * coding.h (enum coding_result_code): Delete
11175 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
11176
11177 * coding.c (Qinsufficient_source, Qinconsistent_eol)
11178 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
11179 (Vlast_code_conversion_error): New variables.
11180 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
11181 (ONE_MORE_BYTE): Record error if any instead of signaling an
11182 error. If non-ASCII multibyte char is found, return the negative
11183 value of the code. All callers changed to check it.
11184 (ONE_MORE_BYTE_NO_CHECK): Likewise.
11185 (record_conversion_result): New function. Change all codes setting
11186 coding->result to call this function.
11187 (detect_coding_utf_8, decode_coding_utf_8)
11188 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
11189 Don't use the local variable incomplete.
11190 (emacs_mule_char): Change the second arg to `const'.
11191 (decode_coding): Fix of flushing out unprocessed data.
11192 (make_conversion_work_buffer): Fix making of a work buffer.
11193 (decode_coding_object): Return coding->dst_object.
11194
11195 * fontset.c (set_fontset_font): Fix args.
11196
11197 * lisp.h (CHARACTERBITS): Define as 22.
11198
11199 * process.c (send_process): Be sure to set coding->src_multibyte.
11200
11201 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
11202
112032008-02-01 Kenichi Handa <handa@m17n.org>
11204
11205 * xdisp.c (handle_auto_composed_prop): Give limit to
11206 Fnext_single_char_property_change.
11207
112082008-02-01 Kenichi Handa <handa@m17n.org>
11209
11210 * composite.c (syms_of_composite): Don't make the composition hash
11211 table weak.
11212
11213 * fontset.c (Fset_fontset_font): Fix docstring.
11214
11215 * lisp.h (detect_coding_system): Adjust prototype.
11216
11217 * fileio.c (kill_workbuf_unwind): Delete this function.
11218 (Finsert_file_contents): Adjust the call of detect_coding_system.
11219 Get conversion_buffer by code_conversion_save. Use the macro
11220 CODING_MAY_REQUIRE_DECODING. After decoding, update
11221 coding_system.
11222
11223 * coding.h (make_conversion_work_buffer): Delete extern.
11224 (code_conversion_save): Extern it.
11225
11226 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
11227 (CODING_GET_INFO): Delete argument eol_type. Change callers.
11228 (decode_coding_utf_8): Don't do eol converion.
11229 (detect_coding_utf_16): Check coding->src_chars, not
11230 coding->src_bytes. Add heuristics for those that have no signature.
11231 (decode_coding_emacs_mule, decode_coding_iso_2022)
11232 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
11233 Don't do eol converion.
11234 (adjust_coding_eol_type): Return a new coding system.
11235 (detect_coding): Don't detect eol. Fix for utf-16 detection.
11236 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
11237 each change.
11238 (decode_coding): Pay attention to undo_list. Do eol conversion for
11239 all types of coding-systems (if necessary).
11240 (Vcode_conversion_work_buf_list): Delete it.
11241 (Vcode_conversion_reused_workbuf): Rename from
11242 Vcode_conversion_reused_work_buf.
11243 (Vcode_conversion_workbuf_name): New variable.
11244 (reused_workbuf_in_use): New variable.
11245 (make_conversion_work_buffer): Delete the arg DEPTH.
11246 (code_conversion_restore): Change argument to cons.
11247 (code_conversion_save): Delete the argument BUFFER. Change callers.
11248 (detect_coding_system): New argument src_chars. Change callers.
11249 Fix for utf-16 detection.
11250 (init_coding_once): Don't use ISO_carriage_return.
11251 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
11252 reused_workbuf_in_use.
11253
112542008-02-01 Kenichi Handa <handa@m17n.org>
11255
11256 * keymap.c (store_in_keymap): Pay attention to the case that idx
11257 is a cons specifying a character range.
11258
112592008-02-01 Kenichi Handa <handa@m17n.org>
11260
11261 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
11262 HANDLED_RECOMPUTE_PROPS.
11263
11264 * coding.c (Fdefine_coding_system_internal): Fix checking of
11265 ascii compatibility.
11266
112672008-02-01 Kenichi Handa <handa@m17n.org>
11268
11269 * charset.c (find_charsets_in_text): Delete unused locale variable.
11270 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
11271
11272 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
11273 Resync charset_list to Vemacs_mule_charset_list.
11274
11275 * keymap.c (store_in_keymap): Pay attention to the case that idx
11276 is a cons specifying a character range.
11277
112782008-02-01 Kenichi Handa <handa@m17n.org>
11279
11280 * composite.c (update_compositions): Bind inhibit-read-only, etc
11281 to t before calling remove-list-of-text-properties.
11282
11283 * print.c (print_object): Always print ASCII chars as is.
11284
112852008-02-01 Kenichi Handa <handa@m17n.org>
11286
11287 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
11288
11289 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
11290 is a char table.
11291
112922008-02-01 Kenichi Handa <handa@m17n.org>
11293
11294 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
11295
112962008-02-01 Kenichi Handa <handa@m17n.org>
11297
11298 * xfaces.c (set_lface_from_font_name): Fix for the case that
11299 FONTNAME is not fontset name.
11300
113012008-02-01 Kenichi Handa <handa@m17n.org>
11302
11303 * fns.c (base64_encode_1): Fix previous change.
11304
113052008-02-01 Kenichi Handa <handa@m17n.org>
11306
11307 * fontset.c (set_fontset_font): New function.
11308 (Fset_fontset_font): If a font is specified for a charset, use
11309 map_charset_chars to store the font spec in a fontset.
11310
113112008-02-01 Kenichi Handa <handa@m17n.org>
11312
11313 * fontset.c (fontset_face): Create a fallback fontset on demand.
11314 (make_fontset): Don't create a fallback fontset here.
11315 (free_face_fontset): Free a fallback fontset (if any) too.
11316 (n_auto_fontsets): Delete this variable.
11317 (auto_fontset_alist): New variable.
11318 (new_fontset_from_font_name): Check auto_fontset_alist.
11319 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
11320 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
11321 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
11322 Defsubr Sfontset_list_all.
11323
113242008-02-01 Kenichi Handa <handa@m17n.org>
11325
11326 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
11327
113282008-02-01 Kenichi Handa <handa@m17n.org>
11329
11330 * fontset.c (Fnew_fontset): Check NAME more rigidly.
11331
113322008-02-01 Kenichi Handa <handa@m17n.org>
11333
11334 * editfns.c (Fgoto_char): Fix docstring.
11335
113362008-02-01 Kenichi Handa <handa@m17n.org>
11337
11338 * insdel.c (insert_from_gap): Adjust intervals correctly.
11339
113402008-02-01 Jason Rumney <jasonr@gnu.org>
11341
11342 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
11343 (pfnGetFontUnicodeRanges): New dynamically loaded function.
11344 (w32_initialize): Try to load it.
11345 (x_get_font_repertory): Use it if available.
11346 (w32_encode_char): Add shortcut for unicode output.
11347
11348 * w32fns.c (w32_load_system_font): Default charset to -1.
11349 (x_to_w32_charset): Match all fonts for unicode.
11350 (w32_to_x_charset): New parameter matching. Don't return partial
11351 or wildcard charsets.
11352 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
11353 (w32_codepage_for_font): Return CP_UNICODE for unicode.
11354 (w32_to_x_font): Match charset to real charset.
11355 (enum_font_cb2): Always list unicode versions.
11356
11357 * makefile.w32-in (temacs): Increase EMHEAP.
11358
113592008-02-01 Jason Rumney <jasonr@gnu.org>
11360
11361 * w32term.c (w32_encode_char): New charset parameter.
11362 font_info.encoding becomes encoding_type.
11363 (x_get_font_repertory): New function. Warning: stub only!
11364 (x_new_font): Return quickly if font already set.
11365 (x_new_fontset): fontsetname parameter is Lisp_Object.
11366 Use new fs_query_fontset. Try new_fontset_from_font_name.
11367 Use fontset_name for return value.
11368
11369 * w32term.h: Declare x_get_font_repertory.
11370
11371 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
11372 place of find_charset_in_text. Use encode_coding_object in place
11373 of encode_coding.
11374 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
11375 decode_coding.
11376
11377 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
11378 of x_new_fontset.
11379 (w32_load_system_font): Initialize charset as unicode.
11380 font_info.encoding becomes encoding_type.
11381 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
11382 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
11383 (syms_of_w32fns): Set get_font_repertory_func.
11384
11385 * w32console.c: Include character.h. Use terminal_encode_buffer
11386 from term.c.
11387 (write_glyphs): Use new version of encode_terminal_code. Use
11388 encode_coding_object in place of encode_coding.
11389
11390 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
11391 encoding becomes encoding_type.
11392
11393 * term.c (terminal_encode_buffer): Make externally visible.
11394
11395 * makefile.w32-in: Add character.h dependancies.
11396 (character.o, chartab.o): New targets.
11397
113982008-02-01 Kenichi Handa <handa@m17n.org>
11399
11400 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
11401 CODING_ID_EOL_TYPE.
11402
114032008-02-01 Andreas Schwab <schwab@suse.de>
11404
11405 * coding.c (produce_chars): Revert last change.
11406
114072008-02-01 Kenichi Handa <handa@m17n.org>
11408
11409 * charset.h (charset_unicode): Extern it.
11410
11411 * charset.c (string_xstring_p): Check by (C >= 0x100).
11412 (find_charsets_in_text): Change format of the arc CHARSETS. New
11413 arg MULTIBYTE.
11414 (Ffind_charset_region, Ffind_charset_string): Adjust for the
11415 change of find_charsets_in_text.
11416 (Fsplit_char): Fix doc. Never return unknown.
11417
11418 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
11419
11420 * coding.c (Fdefine_coding_system_alias): Update
11421 Vcoding_system_list.
11422
11423 * fontset.c (load_font_get_repertory): Pay attention to the case
11424 that ENCODING of a font is specified by a char-table.
11425
11426 * xterm.c (x_get_font_repertory): Handle the case that the
11427 encoding of font is other than Unicode.
11428
114292008-02-01 Kenichi Handa <handa@m17n.org>
11430
11431 * term.c (encode_terminal_code): Don't handle glyph-table. Check
11432 if a character is encodable by the terminal coding system. If
11433 not, produces proper number of `?'s. Update
11434 terminal_encode_buffer and terminal_encode_buf_size if necessary.
11435 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
11436
114372008-02-01 Kenichi Handa <handa@m17n.org>
11438
11439 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
11440 variables.
11441 (encode_terminal_code): Change argument. Encode multiple
11442 characters at once. Store the result of encoding in
11443 terminal_encode_buffer.
11444 (write_glyphs, insert_glyphs): Adjust for the change of
11445 encode_terminal_code.
11446 (term_init): Initialize terminal_encode_buffer and
11447 terminal_encode_buf_size.
11448
11449 * coding.c (consume_chars): If coding->src_object is nil, don't
11450 check annotation.
11451
114522008-02-01 Kenichi Handa <handa@m17n.org>
11453
11454 * character.c (char_string): Use ASCII_CHAR_P instead of
11455 SINGLE_BYTE_CHAR_P.
11456
114572008-02-01 Kenichi Handa <handa@m17n.org>
11458
11459 * xdisp.c (handle_auto_composed_prop): Check if the last
11460 characters of auto-composed region is newly composed with the
11461 following characters.
11462 (handle_composition_prop): Fix checking of point being inside
11463 composition.
11464
114652008-02-01 Kenichi Handa <handa@m17n.org>
11466
11467 * fns.c (concat): Don't change multibyteness of the result by
11468 concatenating an 8-bit character.
11469
11470 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
11471 multibyteness of the result when newelt is an 8-bit character.
11472
114732008-02-01 Dave Love <fx@gnu.org>
11474
11475 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
11476 EMACS_INT.
11477
11478 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
11479
11480 * xfaces.c (face_numeric_value): Declare dim size_t.
11481 (Finternal_lisp_face_equal_p): Remove unused f.
11482
11483 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
11484 (MATRIX_ROW): Remove unused vars.
11485 (draw_glyphs, x_insert_glyphs, fast_find_position)
11486 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
11487 byte/char counts.
11488
11489 * regex.c (regex_compile): Remove unused var.
11490
11491 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
11492
11493 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
11494 (Faccessible_keymaps, where_is_internal): Remove unused vars.
11495
11496 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
11497
11498 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
11499
11500 * fileio.c (Fwrite_region): Remove unused var.
11501
11502 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
11503 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
11504
11505 * composite.c (Fremove_list_of_text_properties): Declare.
11506
11507 * coding.c (inhibit_pre_post_conversion): Remove (unused).
11508 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
11509 (coding_inherit_eol_type): Remove unused attrs.
11510 (detect_coding): Cast arg of detect_eol.
11511
11512 * charset.c (syms_of_charset): Remove unused var p.
11513 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
11514 byte/char counts.
11515
11516 * casetab.c (set_case_table): Remove unused var.
11517
11518 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
11519 unused vars.
11520
115212008-02-01 Dave Love <fx@gnu.org>
11522
11523 * xterm.c (x_bitmap_mask): Declare.
11524
115252008-02-01 Dave Love <fx@gnu.org>
11526
11527 * xterm.c (x_term_init): Fix type error.
11528
11529 * lisp.h: Add Funibyte_char_to_multibyte.
11530
11531 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
11532 (Fset_coding_system_priority): Doc fix.
11533
11534 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
11535
11536 * indent.c (check_composition): Make start and end EMACS_INT.
11537
11538 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
11539
11540 * xdisp.c (handle_composition_prop, check_point_in_composition):
11541 Make buffer positions EMACS_INT.
11542
11543 * composite.c (find_composition, run_composition_function)
11544 (update_compositions, Ffind_composition_internal): Make buffer
11545 positions EMACS_INT.
11546
11547 * composite.h (find_composition, update_compositions): Make
11548 position args EMACS_INT.
11549
11550 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
11551
11552 * intervals.c (get_property_and_range):
11553 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
11554
11555 * unexalpha.c: Don't include varargs.h.
11556
115572008-02-01 Dave Love <fx@gnu.org>
11558
11559 * coding.h (ENCODE_UTF_8): New.
11560
11561 * Makefile.in (gtkutil.o): Depend on coding.h.
11562
11563 * coding.c (Fset_coding_system_priority): Doc fix.
11564
115652008-02-01 Kenichi Handa <handa@m17n.org>
11566
11567 * fileio.c (Finsert_file_contents): Call setup_coding_system in
11568 the case of auto saving.
11569
115702008-02-01 Andreas Schwab <schwab@suse.de>
11571
11572 * chartab.c (map_char_table, map_char_table_for_charset): Protect
11573 `range' from GC.
11574
115752008-02-01 Kenichi Handa <handa@m17n.org>
11576
11577 * coding.c (decode_coding_sjis): Check bytes more rigidly.
11578
115792008-02-01 Kenichi Handa <handa@m17n.org>
11580
11581 * fileio.c (choose_write_coding_system): Return a decided coding system.
11582 (Fwrite_region): Set Vlast_coding_system_used to the return value
11583 of choose_write_coding_system.
11584
115852008-02-01 Kenichi Handa <handa@m17n.org>
11586
11587 * charset.c (Fset_charset_priority): Pay attention to duplicated
11588 arguments.
11589
11590 * coding.c (QCcategory): New variable.
11591 (syms_of_coding): Defsym it. Set all elements of
11592 Vcoding_category_table and their symbol values.
11593 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
11594 coding-category-XXX, and coding-category-list.
11595 (Fdefine_coding_system_internal): Add category in the plist.
11596
115972008-02-01 Kenichi Handa <handa@m17n.org>
11598
11599 * callproc.c (Fcall_process): Handle carryover correctly.
11600
11601 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
11602 (raw_text_coding_system): Check NILP (coding_system).
11603 (coding_inherit_eol_type): Check NILP (coding_system) and
11604 NILP (parent).
11605 (consume_chars): Fix for the case of raw-text.
11606
11607 * process.c (read_process_output): Handle carryover correctly.
11608
116092008-02-01 Dave Love <fx@gnu.org>
11610
11611 * regex.c (re_search_2): Fix last change.
11612
116132008-02-01 Kenichi Handa <handa@m17n.org>
11614
11615 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
11616 target_multibyte. Even in a unibyte case, return a converted
11617 multibyte char.
11618 (GET_CHAR_AFTER): New macro.
11619 (PATFETCH): Translate via multibyte char.
11620 (HANDLE_UNIBYTE_RANGE): Delete this macro.
11621 (SETUP_MULTIBYTE_RANGE): New macro.
11622 (regex_compile): Setup compiled code so that its multibyteness
11623 matches that of a target. Fix the handling of "[X-YZ]" using
11624 SETUP_MULTIBYTE_RANGE.
11625 (analyse_first) <charset>: For filling fastmap for all multibyte
11626 characters, don't check by BASE_LEADING_CODE_P.
11627 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
11628 the same as RE_MULTIBYTE_P (bufp) now.
11629 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
11630 (TARGET_CHAR_AND_LENGTH): Delete this macro.
11631 (TRANSLATE_VIA_MULTIBYTE): New macro.
11632 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
11633 It is the same as RE_MULTIBYTE_P (bufp) now.
11634 <exactn>: Translate via multibyte.
11635 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
11636 translate it.
11637 <charset, charset_not>: Fetch a character by
11638 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
11639 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
11640 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
11641 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
11642 by GET_CHAR_AFTER.
11643 (bcmp_translate): Likewise.
11644
11645 * search.c (compile_pattern): Check the member target_multibyte,
11646 not the member multibyte of buf.
11647
11648 * lread.c (read1): While reading a string, set force_singlebyte
11649 and force_multibyte correctly.
11650
11651 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
11652 up of unibyte_to_multibyte_table.
11653
116542008-02-01 Kenichi Handa <handa@m17n.org>
11655
11656 * coding.c (setup_coding_system): If coding has
11657 post-read-conversion or pre-write-conversion, set
11658 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
11659 respectively.
11660 (decode_coding_gap): Run post-read-conversion if any.
11661
11662 * fileio.c (Finsert_file_contents): Even if we read into a
11663 unibyte buffer, check if we must decode the result or not.
11664
116652008-02-01 Kenichi Handa <handa@m17n.org>
11666
11667 * coding.c (make_conversion_work_buffer): Change the work buffer
11668 name to the same one as that of Emacs 21.
11669
116702008-02-01 Kenichi Handa <handa@m17n.org>
11671
11672 * coding.h (make_conversion_work_buffer): Adjust prototype.
11673 (code_conversion_restore): Don't extern it.
11674
11675 * coding.c (detected_mask): Delete unused variable.
11676 (decode_coding_iso_2022): Pay attention to the byte sequence of
11677 CTEXT extended segment, and retain those bytes as is.
11678 (decode_coding_ccl): Delete unused variable `valids'.
11679 (setup_coding_system): Delete unused variable `category'.
11680 (consume_chars): Delete unused variable `category'. Make it work
11681 for non-multibyte case.
11682 (make_conversion_work_buffer): Change argument.
11683 (saved_coding): Delete unused variable.
11684 (code_conversion_restore): Don't check saved_coding->destination.
11685 (code_conversion_save): New function.
11686 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
11687 instead of record_unwind_protect.
11688 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
11689 (detect_coding_system): Delete unused variable `mask'.
11690 (Fdefine_coding_system_internal): Delete unused variable id.
11691
11692 * fileio.c (kill_workbuf_unwind): New function.
11693 (Finsert_file_contents): On replacing, call
11694 make_conversion_work_buffer with correct args, and call
11695 record_unwind_protect with the first arg kill_workbuf_unwind.
11696
11697 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
11698
116992008-02-01 Kenichi Handa <handa@m17n.org>
11700
11701 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
11702 (fontset_add): Fix for the case that TO is less than TO1.
11703 (Ffontset_info): Don't use fallback fontset on checking the
11704 default fontset.
11705 (dump_fontset): New function for debugging.
11706
11707 * coding.c (Fdefine_coding_system_internal): Fix for the case that
11708 coding_type is Qcharset.
11709
117102008-02-01 Kenichi Handa <handa@m17n.org>
11711
11712 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
11713 (map_char_table): Don't inherit the value from the parent on
11714 initializing VAL. Adjust for the above change.
11715
117162008-02-01 Kenichi Handa <handa@m17n.org>
11717
11718 * coding.c (Qsignature, Qendian): Delete these variables.
11719 (syms_of_coding): Don't initialize them.
11720 (CATEGORY_MASK_UTF_16_AUTO): New macro.
11721 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
11722 detect_info->found.
11723 (decode_coding_utf_16): Don't detect BOM here.
11724 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
11725 is NOT utf_16_without_bom.
11726 (setup_coding_system): For a coding system of type utf-16, check
11727 if the attribute :endian is Qbig or not (not nil or not), and set
11728 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
11729 (detect_coding): If coding type is utf-16 and BOM detection is
11730 required, detect it.
11731 (Fdefine_coding_system_internal): For a coding system of type
11732 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
11733
117342008-02-01 Kenichi Handa <handa@m17n.org>
11735
11736 * coding.c (coding_set_source): Fix for the case that the current
11737 buffer is different from coding->src_object.
11738 (decode_coding_object): Don't use the conversion work buffer if
11739 DST_OBJECT is a buffer.
11740
117412008-02-01 Dave Love <fx@gnu.org>
11742
11743 * lread.c (read_emacs_mule_char) [len==2]: Index
11744 emacs_mule_charset correctly.
11745
117462008-02-01 Dave Love <fx@gnu.org>
11747
11748 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
11749 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
11750 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
11751 treated specially.)
11752 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
11753 (detected_mask): Remove Big5 bits.
11754
117552008-02-01 Kenichi Handa <handa@m17n.org>
11756
11757 The following changes are to make the font rescaling facility
11758 compatible with Emacs 21.
11759
11760 * xfaces.c (Vface_font_rescale_alist): Rename from
11761 Vface_resizing_fonts.
11762 (struct font_name): Rename member resizing_ratio to rescale_ratio.
11763 (font_rescale_ratio): Rename from font_resizing_ratio.
11764 (split_font_name): Set font->rescale_ratio.
11765 (better_font_p): Pay attention to font->rescale_ratio.
11766 (build_scalable_font_name): Likewise. Change RESX, and RESY
11767 fields.
11768 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
11769
117702008-02-01 Kenichi Handa <handa@m17n.org>
11771
11772 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
11773 (Qutf_16_le): Remove these variables.
11774 (syms_of_coding): Don't DEFSYM them.
11775 (decode_coding_utf_16): Fix handling of BOM.
11776 (encode_coding_utf_16): Fix handling of BOM.
11777
117782008-02-01 Kenichi Handa <handa@m17n.org>
11779
11780 * fileio.c (Finsert_file_contents): On replacing, before decoding
11781 the file into the work buffer, set point of the work buffer to the end.
11782
117832008-02-01 Dave Love <fx@gnu.org>
11784
11785 * coding.c (Fcheck_coding_systems_region): Fix type errors.
11786
117872008-02-01 Dave Love <fx@gnu.org>
11788
11789 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
11790 and fix C types.
11791
117922008-02-01 Kenichi Handa <handa@m17n.org>
11793
11794 * xdisp.c (SKIP_GLYPHS): New macro.
11795 (set_cursor_from_row): Pay attention to string display properties.
11796
11797 * category.c (copy_category_entry): Fix for the case that RANGE
11798 is an integer.
11799
11800 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
11801
11802 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
11803
118042008-02-01 Kenichi Handa <handa@m17n.org>
11805
11806 * charset.c (Fcharset_id_internal): New function.
11807 (syms_of_charset): Defsubr it.
11808
11809 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
11810 with the last arg charset_list acquired from coding.
11811 (Fdefine_coding_system_internal): For ccl-based coding system, fix
11812 the attribute coding_attr_ccl_valids.
11813
11814 * coding.h (enum define_coding_ccl_arg_index): Set the first
11815 member coding_arg_ccl_decoder to coding_arg_max.
11816
11817 * ccl.h (ccl_driver): Adjust prototype.
11818
11819 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
11820 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 11821 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
11822 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
11823 last arg Qnil.
11824
118252008-02-01 Kenichi Handa <handa@m17n.org>
11826
11827 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
11828 call encode_char.
11829
11830 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
11831
118322008-02-01 Dave Love <fx@gnu.org>
11833
11834 * composite.c (syms_of_composite): Make composition_hash_table weak.
11835
118362008-02-01 Kenichi Handa <handa@m17n.org>
11837
11838 * dispextern.h (check_face_attributes, generate_ascii_font_name)
11839 (font_name_registry): Don't extern them.
11840 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
11841
11842 * fontset.h (Qfontset): Don't extern it.
11843 (new_fontset_from_font_name): Extern it.
11844
11845 * fontset.c: Give 8 extra slots to fontset objects.
11846 (Qfontset_info): New variable.
11847 (syms_of_fontset): Defsym it.
11848 (FONTSET_FALLBACK): New macro.
11849 (fontset_face): Try also the default fontset.
11850 (make_fontset): Realize a fallback fontset from the default fontset.
11851 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
11852 using split_font_name_into_vector and build_font_name_from_vector.
11853 (Fset_fontset_font): Access the elements of font_spec by enum
11854 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
11855 name by using split_font_name_into_vector.
11856 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
11857 generate a proper font name from the fontset name. Update
11858 Vfontset_alias_alist.
11859 (n_auto_fontsets): New variable.
11860 (new_fontset_from_font_name): New function.
11861 (Ffont_info): Store the information about fonts generated from the
11862 default fontset in the first extra slot of the returned char-table.
11863
11864 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
11865 (font_name_registry): Delete function.
11866 (split_font_name_into_vector): New function.
11867 (build_font_name_from_vector): New function.
11868 (font_list): The argument REGISTRY is now a list of registry names.
11869 (choose_face_font): If we are choosing an ASCII font, and ATTRS
11870 specifies an explicit font name, return the name as is. Make a
11871 list of registy names.
11872
11873 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
11874 of x_new_fontset.
11875 (Fx_create_frame): Don't call x_new_fontset here. Just use
11876 x_list_fonts to check the existence of fonts.
11877
11878 * xterm.h (x_new_fontset): Adjust prototype.
11879
11880 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
11881 string. Use new_fontset_from_font_name to create a fontset from a
11882 font name.
11883
118842008-02-01 Kenichi Handa <handa@m17n.org>
11885
11886 * syntax.c (Vfind_word_boundary_function_table): New name for
11887 Vnext_word_boundary_function_table.
11888 (find-word-boundary-function-table): New name for
11889 next-word-boundary-function-table.
11890
118912008-02-01 Dave Love <fx@gnu.org>
11892
11893 * Makefile.in: Fix some dependencies.
11894
11895 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
11896 set it to nil before returning.
11897
11898 * composite.c (update_compositions): Fix type error.
11899
11900 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
11901
119022008-02-01 Kenichi Handa <handa@m17n.org>
11903
11904 * xterm.c (x_new_font): Optimize for the case that the font is
11905 already set for the frame.
11906
119072008-02-01 Kenichi Handa <handa@m17n.org>
11908
11909 * chartab.c (char_table_ascii): Check if the char table contents
11910 is sub-char-table or not.
11911 (char_table_set, char_table_set_range): Fix argument to
11912 char_table_ascii.
11913
11914 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
11915 (detect_coding_utf_8, detect_coding_utf_16)
11916 (detect_coding_emacs_mule, detect_coding_iso_2022)
11917 (detect_coding_sjis, detect_coding_big5)
11918 (detect_coding_ccl, detect_coding_charset): Change argument MASK
11919 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
11920 sequence is valid in this coding system. Change callers.
11921 (MAX_ANNOTATION_LENGTH): New macro.
11922 (ADD_ANNOTATION_DATA): New macro.
11923 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
11924 ADD_ANNOTATION_DATA. Change the format of annotation data.
11925 (ADD_CHARSET_DATA): New macro.
11926 (emacs_mule_char): New argument ID. Change callers.
11927 (decode_coding_emacs_mule, decode_coding_iso_2022)
11928 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
11929 Produce charset annotation data in coding->charbuf.
11930 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
11931 to charset annotation data in coding->charbuf.
11932 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
11933 coding->common_flags if the coding system is iso-2022 based and
11934 uses designation.
11935 (produce_composition): Adjust for the new annotation data format.
11936 (produce_charset): New function.
11937 (produce_annotation): Handle charset annotation.
11938 (handle_composition_annotation, handle_charset_annotation): New
11939 functions.
11940 (consume_chars): Handle charset annotation. Utilize the above two
11941 functions.
11942 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
11943 buffer, get the deleted text as a string and set
11944 coding->src_object to that string.
11945 (detect_coding, detect_coding_system): Use the new struct
11946 coding_detection_info.
11947
11948 * coding.h (struct coding_detection_info): New structure.
11949 (struct coding_system): Adjust prototype of the member `detector'.
11950 (CODING_ANNOTATE_CHARSET_MASK): New macro.
11951
119522008-02-01 Kenichi Handa <handa@m17n.org>
11953
11954 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
11955
119562008-02-01 Dave Love <fx@gnu.org>
11957
11958 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
11959 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
11960 to new local and nullify apropos_accumulate before returning.
11961 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
11962
119632008-02-01 Kenichi Handa <handa@m17n.org>
11964
11965 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
11966 correctly.
e3eea1fc 11967
aac0c6e3
MR
119682008-02-01 Dave Love <fx@gnu.org>
11969
11970 * fns.c (Flanginfo): Call synchronize_system_time_locale.
11971
119722008-02-01 Kenichi Handa <handa@m17n.org>
11973
11974 The following changes are to make character composition happen
11975 automatically on displaying.
11976
11977 * Makefile.in (lisp, shortlisp): Add composite.elc.
11978
11979 * composite.h (Qauto_composed, Vauto_composition_function)
11980 (Qauto_composition_function): Extern them.
11981
11982 * composite.c (Vcomposition_function_table)
11983 (Qcomposition_function_table): Delete variables.
11984 (Qauto_composed, Vauto_composition_function)
11985 (Qauto_composition_function): New variables.
11986 (run_composition_function): Don't call
11987 compose-chars-after-function.
11988 (update_compositions): Clear `auto-composed' text property.
11989 (compose_chars_in_text): Delete this function.
11990 (syms_of_composite): Staticpro Qauto_composed and
11991 Qauto_composition_function. Declare Vauto_composition_function as
11992 a Lisp variable.
11993
11994 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
11995
11996 * xdisp.c (it_props): Add an entry for Qauto_composed.
11997 (handle_auto_composed_prop): New function.
11998
11999 * xselect.c (selection_data_to_lisp_data): Don't call
12000 compose_chars_in_text.
12001
120022008-02-01 Dave Love <fx@gnu.org>
12003
12004 * keyboard.c (read_char): Modify checking around use of
12005 Vkeyboard_translate_table.
12006
12007 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12008 and fix C types.
12009
120102008-02-01 Kenichi Handa <handa@m17n.org>
12011
12012 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
12013 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
12014 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
12015 the case that the last byte is '\r' correctly.
12016 (decode_coding): Flush out the unprocessed data correctly.
12017 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
12018
120192008-02-01 Dave Love <fx@gnu.org>
12020
12021 * xterm.c (XTread_socket): Fix changes for defined keysyms.
12022 Add XK_ISO... case.
12023 (xaw_scroll_callback): Revert last change.
12024
120252008-02-01 Kenichi Handa <handa@m17n.org>
12026
12027 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
12028
120292008-02-01 Kenichi Handa <handa@m17n.org>
12030
12031 * xfaces.c (Vface_resizing_fonts): New variable.
12032 (struct font_name): New member `resizing_ratio'.
12033 (font_resizing_ratio): New function.
12034 (split_font_name): Set font->resizing_ratio.
12035 (better_font_p): Pay attention to font->resizing_ratio.
12036 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
12037 RESX, and RESY fields.
12038 (try_alternative_families): Try scalable fonts if
12039 Vscalable_fonts_allowed is not Qt.
12040 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
12041
120422008-02-01 Dave Love <fx@gnu.org>
12043
12044 * xterm.c (xaw_scroll_callback): Cast correctly.
12045
120462008-02-01 Dave Love <fx@gnu.org>
12047
12048 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
12049 (lispy_kana_keys): Comment out.
12050 (make_lispy_event) [XK_kana_A]: Comment out.
12051
12052 * xterm.c (xaw_scroll_callback): Cast call_data.
12053 (XTread_socket): Deal with ASCII keysyms.
12054 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
12055
120562008-02-01 Dave Love <fx@gnu.org>
12057
12058 * xterm.c (Vx_keysym_table): New.
12059 (syms_of_xterm): Initialize it.
12060 (XTread_socket): Use it.
12061 From head: Eliminate incorrect optimization that tried to avoid
12062 decoding the output of X*LookupString.
12063 (x_get_font_repertory): Delete charset declaration.
12064
120652008-02-01 Kenichi Handa <handa@m17n.org>
12066
12067 * coding.c (detect_coding_charset): If only ASCII bytes are found,
12068 return 0.
12069 (Fdefine_coding_system_internal): Setup
12070 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
12071
120722008-02-01 Dave Love <fx@gnu.org>
12073
12074 * coding.c (Fcheck_coding_system): Doc fix.
12075
12076 * editfns.c (Finsert_byte): Return a proper value.
12077
120782008-02-01 Kenichi Handa <handa@m17n.org>
12079
12080 * coding.c (decode_coding): Fix args to translate_chars. Pay
12081 attention to Vstandard_translation_table_for_decode.
12082 (encode_coding): Fix args to translate_chars. Pay attention to
12083 Vstandard_translation_table_for_encode.
12084
12085 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
12086 SINGLE_BYTE_CHAR_P.
12087
12088 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
12089 not by SINGLE_BYTE_CHAR_P.
12090
12091 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
12092 SINGLE_BYTE_CHAR_P.
12093
12094 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
12095 SINGLE_BYTE_CHAR_P.
12096
12097 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
12098 by SINGLE_BYTE_CHAR_P.
12099
12100 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
12101 SINGLE_BYTE_CHAR_P.
12102
121032008-02-01 Dave Love <fx@gnu.org>
12104
12105 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
12106
121072008-02-01 Dave Love <fx@gnu.org>
12108
12109 * fns.c (Flanginfo): Fix typo.
12110
12111 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
12112
121132008-02-01 Kenichi Handa <handa@m17n.org>
12114
12115 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
12116 (detect_coding_emacs_mule, detect_coding_iso_2022)
12117 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
12118 incomplete byte sequence. Don't update *mask when correctly detected.
12119 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
12120 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
12121 (detect_coding, detect_coding_system): Adjust for the changes above.
12122
121232008-02-01 Kenichi Handa <handa@m17n.org>
12124
12125 * character.c (char_string): Rename from
12126 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
12127 (string_char): Rename from string_char.
12128
12129 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
12130 if C is greater than MAX_3_BYTE_CHAR.
12131 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
12132 string_char instead of string_char_with_unification.
12133
121342008-02-01 Dave Love <fx@gnu.org>
12135
12136 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
12137
121382008-02-01 Kenichi Handa <handa@m17n.org>
12139
12140 * keymap.c (push_key_description): Pay attention to force_multibyte.
12141
12142 * regex.c (re_search_2): Fix for the case of unibyte buffer.
12143
121442008-02-01 Dave Love <fx@gnu.org>
12145
12146 * charset.c (define_charset_internal): Rename `supprementary'.
12147
12148 * Makefile.in (lisp, shortlisp): Remove latin-N.
12149
121502008-02-01 Dave Love <fx@gnu.org>
12151
12152 * xfns.c (x_window, x_window): Use use_xim.
12153
12154 * xterm.c (use_xim): Initialize.
12155 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
12156 (x_term_init): Maybe set use_xim.
12157
12158 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
12159
121602008-02-01 Kenichi Handa <handa@m17n.org>
12161
12162 * search.c (search_buffer): Fix case-fold-search of multibyte
12163 characters.
12164 (boyer_moore): Rename the last argument to char_high_bits.
12165
121662008-02-01 Kenichi Handa <handa@m17n.org>
12167
12168 * xdisp.c (display_string): Fix for the case of zero width glyph.
12169
12170 * xfns.c (x_set_font): Change the error message of the case that
12171 x_new_fontset returns Qt.
12172
12173 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
12174 (Finternal_set_lisp_face_attribute): Use signal_error for the
12175 error of invalid fontset.
12176
12177 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
12178 fontset, return Qt.
12179
121802008-02-01 Dave Love <fx@gnu.org>
12181
12182 * unexelf.c (unexec): Make .got handling not SGI-specific.
12183
12184 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
12185
12186 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
12187
12188 * keyboard.c (read_key_sequence): Fix type error.
12189
12190 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
12191 type error.
12192
12193 * fontset.c (fontset_add): Return Lisp_Object.
12194
121952008-02-01 Dave Love <fx@gnu.org>
12196
12197 * charset.h (charset_ordered_list_tick): Declare extern.
12198
121992008-02-01 Kenichi Handa <handa@m17n.org>
12200
12201 The following changes (and some of 2008-02-01 changes of mine) are
12202 for handling syntax, category, and case conversion for unibyte
12203 characters by converting them to multibyte on the fly. With these
12204 changes, we don't have to setup syntax and case tables for unibyte
12205 characters in each language environment.
12206
12207 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
12208 multibyte if necessary.
12209
12210 * bytecode.c (Fbyte_code): Likewise.
12211
12212 * character.h (LEADING_CODE_LATIN_1_MIN)
12213 (LEADING_CODE_LATIN_1_MAX): New macros.
12214 (unibyte_to_multibyte_table): Extern it.
12215 (unibyte_char_to_multibyte): New macro.
12216 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
12217 (CHAR_LEADING_CODE): New macro.
12218 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
12219
12220 * character.c (unibyte_to_multibyte_table): New variable.
12221 (unibyte_char_to_multibyte): Move to character.h and define as macro.
12222 (multibyte_char_to_unibyte): If C is an eight-bit character,
12223 convert it to the corresponding byte value.
12224
12225 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
12226 not 1, signals an error. Update the elements of
12227 unibyte_to_multibyte_table.
12228 (init_charset_once): Initialize unibyte_to_multibyte_table.
12229 (syms_of_charset): Define the charset `iso-8859-1'.
12230
12231 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
12232 as is without converting it to unibyte. In a unibyte buffer,
12233 convert C to multibyte before checking the syntax.
12234
12235 * lisp.h (unibyte_char_to_multibyte): Delete extern.
12236
12237 * minibuf.c (Fminibuffer_complete_word): Use the macro
12238 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
12239
12240 * regex.h (struct re_pattern_buffer): New member target_multibyte.
12241
12242 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
12243 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
12244 that is zero, convert an eight-bit char to multibyte.
12245 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
12246 non-emacs case.
12247 (PATFETCH): Convert an eight-bit char to multibyte.
12248 (HANDLE_UNIBYTE_RANGE): New macro.
12249 (regex_compile): Setup the compiled pattern for multibyte chars
12250 even if the given regex string is unibyte. Use PATFETCH_RAW
12251 instead of PATFETCH in many places. To handle `charset'
12252 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
12253 only for ASCII chars.
12254 (analyse_first) <exactn>: Simplify because the compiled pattern
12255 is multibyte.
12256 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
12257 <charset>: Use CHAR_LEADING_CODE to get leading codes.
12258 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
12259 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
12260 multibyte always 1.
12261 (re_search_2): In emacs, set the locale variable multibyte to 1,
12262 otherwise to 0. New local variable target_multibyte. Check it
12263 to decide the multibyteness of STR1 and STR2. If
12264 target_multibyte is zero, convert unibyte chars to multibyte
12265 before translating and checking fastmap.
12266 (TARGET_CHAR_AND_LENGTH): New macro.
12267 (re_match_2_internal): In emacs, set the locale variable multibyte
12268 to 1, otherwise to 0. New local variable target_multibyte. Check
12269 it to decide the multibyteness of STR1 and STR2. Use
12270 TARGET_CHAR_AND_LENGTH to fetch a character from D.
12271 <charset, charset_not>: If multibyte is nonzero, check fastmap
12272 only for ASCII chars. Call bcmp_translate with
12273 target_multibyte, not with multibyte.
12274 <begline>: Declare the local variable C as `unsigned'.
12275 (bcmp_translate): Change the last arg name to target_multibyte.
12276
12277 * search.c (compile_pattern_1): Don't adjust the multibyteness of
12278 the regexp pattern and the matching target. Set cp->buf.multibyte
12279 to the multibyteness of the regexp pattern. Set
12280 cp->but.target_multibyte to the multibyteness of the matching target.
12281 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
12282 FETCH_STRING_CHAR_ADVANCE.
12283 (Freplace_match): Convert unibyte chars to multibyte.
12284
12285 * syntax.c (char_quoted, back_comment, scan_words)
12286 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
12287 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
12288 unibyte chars to multibyte.
12289 (skip_chars): Delete the arg syntaxp, and move the code for
12290 handling syntaxes to skip_syntaxes. Change callers.
12291 Fix the case that the multibyteness of STRING and the current
12292 buffer doesn't match.
12293 (skip_syntaxes): New function.
12294 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
12295 SINGLE_BYTE_CHAR_P.
12296
122972008-02-01 Kenichi Handa <handa@m17n.org>
12298
12299 * xfaces.c (QCfontset): New variable.
12300 (LFACE_FONTSET): New macro.
12301 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
12302 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
12303 (Finternal_set_lisp_face_attribute)
12304 (Finternal_get_lisp_face_attribute): Handle QCfontset.
12305 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
12306 check also LFACE_FONTSET_INDEX.
12307 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
12308 attrs[LFACE_FONT_INDEX].
12309 (syms_of_xfaces): Intern and staticpro QCfontset.
12310
12311 * dispextern.h (enum lface_attribute_index): New member
12312 LFACE_FONTSET_INDEX.
12313
12314 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
12315
123162008-02-01 Kenichi Handa <handa@m17n.org>
12317
12318 * coding.c (coding_set_destination): Fix coding->destination for
12319 the case converting a region.
12320 (encode_coding_utf_8): Encode eight-bit chars as single byte.
12321 (encode_coding_object): Fix coding->dst_pos and
12322 coding->dst_pos_byte for the case converting a region.
12323
12324 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
12325
12326 * character.h (BYTE8_STRING): New macro.
12327
12328 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
12329
123302008-02-01 Kenichi Handa <handa@m17n.org>
12331
12332 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
12333 characters by octal form.
12334
12335 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
12336
12337 * buffer.h (_fetch_multibyte_char_len): Delete extern.
12338 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
12339 _fetch_multibyte_char_len.
12340 (FETCH_CHAR_AS_MULTIBYTE): New macro.
12341
12342 * casetab.c (set_canon, set_identity, shuffle): Simplify.
12343
12344 * casefiddle.c (casify_object): Simplify. Handle the case that
12345 the case conversion change the byte length.
12346 (casify_region): Likewise.
12347
12348 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
12349
12350 * character.c (_fetch_multibyte_char_len): Delete this variable.
12351 (syms_of_character): Setup Vprintable_chars.
12352
12353 * editfns.c (Fchar_equal): Fix for the unibyte case.
12354 (Finsert_byte): New function.
12355 (syms_of_editfns): Defsubr it.
12356
12357 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
12358 of direct code 0x3ffff.
12359
12360 * search.c (Freplace_match): Fix for the unibyte case.
12361
123622008-02-01 Kenichi Handa <handa@m17n.org>
12363
12364 * lread.c (safe_to_load_p): Fix the logic.
12365
12366 * syntax.c (scan_words): Don't treat characters belonging to
12367 different scripts as constituting a word.
12368
12369 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12370
12371 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
12372
12373 * emacs.c (main): In the case of --unibyte, instead of aborting on
12374 finding non-empty buffer, make it unibyte.
12375
123762008-02-01 Kenichi Handa <handa@m17n.org>
12377
12378 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
12379 to create a fontset.
12380
123812008-02-01 Dave Love <fx@gnu.org>
12382
12383 * character.c (Funibyte_char_to_multibyte): Doc fix.
12384
12385 * xfns.c [HAVE_STDLIB_H]: Fix last change.
12386
123872008-02-01 Kenichi Handa <handa@m17n.org>
12388
12389 * fontset.c (fontset_add): Make the type `int'.
12390 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
12391
12392 * character.c (unibyte_char_to_multibyte)
12393 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
12394 charset_unibyte, not charset_primary.
12395
12396 * charset.h (charset_unibyte): Extern it instead of charset_primary.
12397
12398 * charset.c (charset_unibyte): Rename from charset_primary.
12399 (Funibyte_charset): Rename from Fprimary_charset.
12400 (Fset_unibyte_charset): Rename from Fset_primary_charset.
12401 (syms_of_charset): Adjust for the above changes.
12402
12403 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
12404 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
12405 it->multibyte_p is zero.
12406
12407 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
12408 Delete extern.
12409
124102008-02-01 Kenichi Handa <handa@m17n.org>
12411
12412 * coding.c (Fdefine_coding_system_internal): Fix category setting
12413 for a coding system of type iso-2022.
12414
124152008-02-01 Kenichi Handa <handa@m17n.org>
12416
12417 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
12418
124192008-02-01 Kenichi Handa <handa@m17n.org>
12420
12421 * syntax.c (Vnext_word_boundary_function_table): New variable.
12422 (next-word-boundary-function-table): Declare it as a Lisp variable
12423 in syms_of_syntax.
12424 (scan_words): Call functions in Vnext_word_boundary_function_table
12425 if any.
12426
12427 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
12428
12429 * fontset.c (fs_load_font): If fontp->charset is not negative,
12430 return fontp without setting its members.
12431
124322008-02-01 Dave Love <fx@gnu.org>
12433
12434 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
12435
12436 * m/sparc.h (HAVE_ALLOCA): Delete.
12437
12438 * s/irix6-5.h: Don't include strings.h.
12439 (bcopy, bzero, bcmp): Don't undef.
12440
12441 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
12442
12443 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
12444 (TIOCSIGSEND): Don't test IRIX6.
12445 (bcopy, bzero, bcmp): Define conditionally.
12446
124472008-02-01 Kenichi Handa <handa@m17n.org>
12448
12449 * buffer.c (Qas, Qmake, Qto): New variables.
12450 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
12451 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
12452
12453 * callproc.c (Fcall_process): Don't call insert_1_both directly if
12454 we are inserting a process output into a multibyte buffer.
12455
12456 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
12457 multibyte_char_to_unibyte.
12458
12459 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
12460 by the primary charset, make it eight-bit char.
12461 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
12462
12463 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
12464 (charset_8_bit__control, charset_8_bit_graphic)
12465 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
12466 (define_charset_internal): New function.
12467 (syms_of_charset): Call define_charset_internal for pre-defined
12468 charsets.
12469
12470 * charset.h (charset_8_bit): Extern it.
12471
12472 * coding.c (make_conversion_work_buffer): Adjust for the change
12473 of Fset_buffer_multibyte.
12474 (encode_coding_raw_text): Increment p0 in the loop.
12475
12476 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
12477
12478 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
12479 for the change of Fset_buffer_multibyte.
12480
12481 * fns.c (Fstring_to_multibyte): New function.
12482 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
12483
124842008-02-01 Dave Love <fx@gnu.org>
12485
12486 * xfns.c (x_put_x_image): Declare args.
12487
12488 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
12489 (try_font_list): Declare an arg.
12490
12491 * xdisp.c (message2_nolog, set_message): Declare an arg.
12492
12493 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
12494
12495 * syntax.c (scan_sexps_forward): Declare an arg.
12496
12497 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
12498 Declare an arg.
12499
12500 * lisp.h (Fnew_fontset): Declare.
12501
12502 * keymap.c (push_key_description): Call CHARACTERP correctly.
12503
12504 * fontset.c (fontset_add): Declare args. Call make_number correctly.
12505 (face_for_char): Delete unused vars.
12506 (Fset_fontset_font): Doc fix. Delete unused vars.
12507
12508 * doc.c (Fsubstitute_command_keys): Delete unused vars.
12509
12510 * composite.c (update_compositions): Declare arg.
12511
12512 * cm.c (calccost, cmgoto): Declare args.
12513
12514 * charset.c: Remove `emacs' conditional. Doc fixes.
12515 (map_char_table_for_charset): Declare.
12516
12517 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
12518
12519 * ccl.c: Remove `emacs' conditional.
12520
125212008-02-01 Kenichi Handa <handa@m17n.org>
12522
12523 The following changes are to allow specifying multiple font
12524 patterns for a character range (specified by script or charset).
12525
12526 * Makefile.in (abbrev.o): Depend on syntax.h.
12527 (xfaces.o): Depend on charset.h.
12528
12529 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
12530 SINGLE_BYTE_CHAR_P.
12531
12532 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
12533
12534 * character.h (Vchar_script_table): Extern it.
12535
12536 * character.c (Vscript_alist): Delete.
12537 (Vchar_script_table, Qchar_script_table): New variable.
12538 (syms_of_character): Declare Vchar_script_table as a lisp variable
12539 and initialize it.
12540
12541 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
12542 have property char-table-extra-slots, make no extra slot.
12543
12544 * dispextern.h (struct face): Delete member `charset'.
12545 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
12546 SINGLE_BYTE_CHAR_P.
12547 (choose_face_font, lookup_non_ascii_face, font_name_registry):
12548 Add prototypes.
12549 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
12550 (generate_ascii_font_name): Rename from generate_ascii_font.
12551
12552 * fontset.h (get_font_repertory_func): New prototype.
12553 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
12554 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
12555
12556 * fontset.c (Qprepend, Qappend): New variables.
12557 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
12558 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
12559 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
12560 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
12561 (fontset_ref_and_range, fontset_add, reorder_font_vector)
12562 (load_font_get_repertory): New functions.
12563 (fontset_set): Delete.
12564 (fontset_face): New arg FACE. Return face ID, not face.
12565 Complete re-write to handle new fontset structure. Change caller.
12566 (free_face_fontset): Use ASET istead of AREF (X) = Y.
12567 (face_for_char): Don't call lookup_face.
12568 (make_fontset_for_ascii_face): New arg FACE.
12569 (fs_load_font): New arg CHARSET_ID. Don't check
12570 Vfont_encoding_alist here.
12571 (find_font_encoding): New function.
12572 (list_fontsets): Use STRINGP, not ! NILP.
12573 (accumulate_script_ranges): New function.
12574 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
12575 re-written to handle new fontset structure.
12576 (Ffontset_font): Return a copy of element.
12577 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
12578 docstring of font-encoding-alist.
12579
12580 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
12581 (Fset_fotset_font): Fix arguments to 5.
12582
12583 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
12584
12585 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
12586 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12587 (highlight_trailing_whitespace): Adjust for the change of
12588 lookup_named_face.
12589
12590 * xfaces.c: Include charset.h.
12591 (load_face_font): Delete argument C. Change caller.
12592 (generate_ascii_font_name): Rename from generate_ascii_font.
12593 (font_name_registry): New function.
12594 (cache_face): Store ascii faces before non-ascii faces in buckets.
12595 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
12596 Lookup only ascii faces.
12597 (lookup_non_ascii_face): New function.
12598 (lookup_named_face): Delete argument C. Change caller.
12599 (lookup_derived_face): Delete argument C. Change caller.
12600 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
12601 a string, just call font_list with it.
12602 (choose_face_font): Delete arguments FACE and C. New arg
12603 FONT_SPEC. Change caller.
12604 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
12605 Change caller.
12606 (realize_non_ascii_face): New function.
12607 (realize_x_face): Call load_face_font here.
12608 (realize_tty_face): Delete argument C. Change caller.
12609 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
12610 get a face ID.
12611 (dump_realized_face): Don't print charset of FACE.
12612
12613 * xfns.c (x_set_font): Always call x_new_fontset and
12614 store_frame_parameter.
12615 (Fx_create_frame): Call x_new_fontset, not x_new_font.
12616 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
12617
12618 * xterm.h (x_get_font_repertory): Extern it.
12619
12620 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
12621 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
12622 it->multibyte_p is zero.
12623 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12624 (x_new_fontset): If FONTSETNAME doesn't match any existing
12625 fontsets, create a new one.
12626 (x_get_font_repertory): New function.
12627
126282008-02-01 Kenichi Handa <handa@m17n.org>
12629
12630 * coding.c (Ffind_coding_systems_region_internal): Detect an
12631 ASCII only string correctly.
12632
12633 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
12634 version is 0.
12635
126362008-02-01 Kenichi Handa <handa@m17n.org>
12637
12638 * lread.c: Include "coding.h".
12639 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
12640 (load_each_byte, unread_char): New variables.
12641 (readchar_backlog): Delete.
12642 (readchar): Return a character unless load_each_byte is nonzero.
12643 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
12644 cons. If unread_char is not -1, simply return it.
12645 (unreadchar): Handle the case that readcharfun is
12646 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
12647 (read_multibyte): Delete.
12648 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
12649 (read_emacs_mule_char): New functions.
12650 (Fload): Even if the file doesn't have the extension ".elc", if
12651 safe_to_load_p returns a positive version number, assume that the
12652 file contains bytecompiled code. If the version is less than 22,
12653 load the file while decoding multibyte sequences by emacs-mule.
12654 (readevalloop): Don't use readchar_backlog.
12655 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
12656 (Fread_from_string): Pay attention to the case that STREAM is a cons.
12657 (read_escape): Delete the arg BYTEREP.
12658 (read1): Set load_each_byte to 1 temporarily while handling
12659 #@NUMBER. Don't call read_multibyte.
12660 (read_vector): Call Fread with a cons. If readcharfun is
12661 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
12662 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
12663 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
12664 and Qload_force_doc_strings.
12665
126662008-02-01 Kenichi Handa <handa@m17n.org>
12667
12668 * xdisp.c (face_before_or_after_it_pos): Call
12669 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
12670
126712008-02-01 Kenichi Handa <handa@m17n.org>
12672
12673 * character.h (TRAILING_CODE_P): New macro.
12674 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
12675 (string_char_with_unification): Fix prototype.
12676 (Vscript_alist): Extern it.
12677
12678 * character.c (Vscript_alist): New variable.
12679 (string_char_with_unification, str_as_unibyte)
12680 (string_escape_byte8): Add `const' to local variables.
12681 (syms_of_character): Declare script-alist as a Lisp variable.
12682
12683 * charset.h (Vcharset_ordered_list): Extern it.
12684 (charset_ordered_list_tick): Extern it.
12685 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
12686 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
12687 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
12688 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
12689 (Funify_charset): Adjust for the change of Funify_charset.
12690
12691 * charset.c (charset_ordered_list_tick): New variable.
12692 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
12693 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
12694 deunify intead of unify a charset.
12695 (string_xstring_p): Add `const' to local variables.
12696 (find_charsets_in_text): Add `const' to arguments and local variables.
12697 (encode_char): Adjust for the change of Funify_charset. Fix
12698 detecting of invalid code.
12699 (Fset_charset_priority): Increment charset_ordered_list_tick.
12700 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
12701 and TO_CODE.
12702
12703 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
12704 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
12705 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
12706 (decode_coding_ccl, consume_chars)
12707 (Ffind_coding_systems_region_internal)
12708 (Fcheck_coding_systems_region): Add `const' to local variables.
12709
12710 * print.c (print_object): Use octal form for printing the
12711 contents of a bool vector.
12712
127132008-02-01 Dave Love <fx@gnu.org>
12714
12715 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
12716 <version == 20>: Refuse to load.
12717
127182008-02-01 Dave Love <fx@gnu.org>
12719
12720 * fns.c: Move coding.h.
12721 (Qcodeset, Qdays, Qmonths): New.
12722 (concat): Use CHARACTERP instead of INTEGERP.
12723 (Flocale_codeset): Delete.
12724 (Flanginfo): New function.
12725 (syms_of_fns): Change accordingly.
12726
12727 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
12728
127292008-02-01 Dave Love <fx@gnu.org>
12730
12731 * casetab.c (init_casetab_once, init_casetab_once): Fix
12732 CHAR_TABLE_SET call.
12733
12734 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
12735
12736 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
12737
12738 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
12739 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
12740 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
12741
12742 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
12743
12744 * coding.c (ENCODE_DESIGNATION, decode_eol)
12745 (make_conversion_work_buffer, code_conversion_restore)
12746 (Fdefine_coding_system_internal): Convert Lisp types.
12747 (code_conversion_restore): Use EQ, not ==.
12748 (Fencode_coding_string): Fix code_convert_string call.
12749
12750 * coding.h (code_convert_region): Fix prototype.
12751
12752 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
12753
12754 * fontset.c (fontset_ref, fontset_set, fs_load_font)
12755 (Ffontset_info): Convert Lisp types.
12756
12757 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
12758
12759 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
12760
12761 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
12762
12763 * chartab.c: Include "...h", not <...h> in some cases.
12764
12765 * callproc.c (Fcall_process): Remove unused variables.
12766
127672008-02-01 Dave Love <fx@gnu.org>
12768
12769 * coding.c (Fset_coding_system_priority): Allow null arg list.
12770
127712008-02-01 Dave Love <fx@gnu.org>
12772
12773 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
12774 (Fself_insert_and_exit): Use CHARACTERP.
12775
12776 * callproc.c (Fcall_process): Remove unused vars.
12777
12778 * xterm.c (XTread_socket): Add extra dead keysyms.
12779
12780 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
12781
12782 * dispextern.h: Remove prototypes for redraw_frame,
12783 redraw_garbaged_frames.
12784
12785 * cmds.c (Fself_insert_command): Use CHARACTERP.
12786
12787 * chartab.c (make_sub_char_table): Remove unused var.
12788 (Fset_char_table_default, Fmap_char_table): Doc fix.
12789
12790 * keymap.c (access_keymap): Remove generic char code.
12791 (push_key_description): Use CHARACTERP.
12792
127932008-02-01 Dave Love <fx@gnu.org>
12794
12795 * charset.c: Doc fixes.
12796 (Funify_charset): Extra checking.
12797
127982008-02-01 Dave Love <fx@gnu.org>
12799
12800 * lread.c: Remove some unused variables.
12801 (safe_to_load_p): If safe, return the magic number version byte.
12802 (Fload): Maybe use load-with-code-conversion.
12803
128042008-02-01 Kenichi Handa <handa@m17n.org>
12805
12806 * category.c (Fmodify_category_entry): Don't modify the contents
12807 of category_set for characters out of the range. Avoid
12808 unnecessary modification.
12809
12810 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
12811 Vchar_unify_table. The default value of the table is now nil.
12812
12813 * character.c (syms_of_character): Setup Vchar_width_table for
12814 eight-bit-control and raw-byte chars.
12815
12816 * charset.h (enum define_charset_arg_index): Delete
12817 charset_arg_parents and add charset_arg_subset and
12818 charset_arg_superset.
12819 (enum charset_attr_index): Delete charset_parents and add
12820 charset_subset and charset_superset.
12821 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
12822 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
12823 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
12824 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
12825 (CHARSET_SUPERSET): New macros.
12826 (charset_work): Extern it.
12827 (ENCODE_CHAR): Use charset_work.
12828 (CHAR_CHARSET_P): Adjust for the change of encoder format.
12829 (map_charset_chars): Extern it.
12830
12831 * charset.c (load_charset_map): Set the default value of encoder
12832 and deunifier char-tables to nil.
12833 (map_charset_chars): Change argument. Change callers. Use
12834 map_char_table_for_charset instead of map_char_table.
12835 (Fmap_charset_chars): New optional args from_code and to_code.
12836 (Fdefine_charset_internal): Adjust for the change of
12837 `define-charset' (:parents -> :subset or :superset).
12838 (charset_work): New variable.
12839 (encode_char, syms_of_charset): Adjust for the change of
12840 Fdefine_charset_internal.
12841 (Ffind_charset_string): Setup the vector `charsets' correctly.
12842
12843 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
12844 the previous change.
12845 (char_table_ref_and_range): Adjust for the above change.
12846 (map_sub_char_table_for_charset): New function.
12847 (map_char_table_for_charset): New function.
12848
12849 * keymap.c (describe_vector): Handle a char-table directly here.
12850 (describe_char_table): Delete.
12851
12852 * lisp.h (map_charset_chars): Delete.
12853
128542008-02-01 Dave Love <fx@gnu.org>
12855
12856 * fns.c (count_combining): Comment out (unused).
12857 (Flocale_codeset): New.
12858 (syms_of_fns): Defsubr it.
12859
12860 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
12861 (size_t): Remove.
12862
128632008-02-01 Dave Love <fx@gnu.org>
12864
12865 * Makefile.in (chartab.o): Depend on charset.h.
12866
128672008-02-01 Kenichi Handa <handa@m17n.org>
12868
12869 * character.c (syms_of_character): Set the default value of
12870 Vprintable_chars to Qnil.
12871
128722008-02-01 Dave Love <fx@gnu.org>
12873
12874 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
12875
128762008-02-01 Kenichi Handa <handa@m17n.org>
12877
12878 * charset.c (load_charset_map): Handle the case that from < to
12879 correctly.
12880
12881 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
12882 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
12883 Pay attention to raw-8-bit chars.
12884
128852008-02-01 Kenichi Handa <handa@m17n.org>
12886
12887 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
12888 It is not bytecompiled now.
12889
12890 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
12891 (charset_jisx0208): New variables.
12892 (Fdefine_charset_internal): Setup them if appropriate.
12893 (init_charset_once): Initialize them to -1.
12894
12895 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
12896 (charset_jisx0208): Extern them.
12897
12898 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
12899 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
12900 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
12901 (setup_iso_safe_charsets): Fix arguments to Fassq.
12902 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
12903 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
12904 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
12905 (encode_coding_iso_2022): Change the 1st arg to
12906 ENCODE_ISO_CHARACTER to a variable.
12907
129082008-02-01 Kenichi Handa <handa@m17n.org>
12909
12910 * charset.h (enum define_charset_arg_index): New enums
12911 charset_arg_min_code and charset_arg_max_code.
12912 (struct charset): New member char_index_offset.
12913
12914 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
12915 Take charset->char_index_offset into account.
12916 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
12917 args[charset_arg_max_code]. Setup charset.char_index_offset.
12918 (syms_of_charset): Fix args to Fdefine_charset_internal.
12919
129202008-02-01 Dave Love <fx@gnu.org>
12921
12922 * coding.c (decode_coding_utf_8): Reject overlong sequences.
12923
129242008-02-01 Dave Love <fx@gnu.org>
12925
12926 * coding.c: Doc fixes.
12927 (Fcoding_system_aliases): Fix return value.
12928 (Qmac): Remove (duplicated) definition.
12929
129302008-02-01 Dave Love <fx@gnu.org>
12931
12932 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
12933 functions.
12934
12935 * character.c (Fstring): Doc fix.
12936
12937 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
12938
12939 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
12940 ids.
12941 (font-encoding-alist): Doc fix.
12942
129432008-02-01 Dave Love <fx@gnu.org>
12944
12945 * term.c (costs_set): Declare static, non-initialized for pcc.
12946 (encode_terminal_code): Remove unused var.
12947
12948 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
12949 for K&R.
12950
12951 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
12952
12953 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
12954 (suffixes): Move out of make_subsidiaries for K&R.
12955
12956 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
12957
12958 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
12959
129602008-02-01 Dave Love <fx@gnu.org>
12961
12962 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
12963
12964 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
12965
129662008-02-01 Yong Lu <lyongu@asia-infonet.com>
12967
12968 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
12969
12970 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
12971
129722008-02-01 Kenichi Handa <handa@m17n.org>
12973
12974 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
12975 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
12976
129772008-02-01 Kenichi Handa <handa@m17n.org>
12978
12979 * coding.c (decode_coding_charset): Adjust for the change of
12980 Fdefine_coding_system_internal.
12981 (Fdefine_coding_system_internal): For a coding system of
12982 `charset' type, store a list of charset IDs in
12983 `charset_attr_charset_valids' element of coding attributes.
12984
129852008-02-01 Kenichi Handa <handa@m17n.org>
12986
12987 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
12988 (emacs_mule_char): New arg src. Delete arg `composition'. Change
12989 caller. Handle 2-byte and 3-byte charsets correctly.
12990 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
12991 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
12992 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
12993 (DECODE_EMACS_MULE_21_COMPOSITION): Call
12994 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
12995 sequence.
12996 (decode_coding_emacs_mule): Handle composition correctly. Rewind
12997 `src' and `consumed_chars' correctly before calling emacs_mule_char.
12998 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
12999 and alt&rule composition.
13000 (decode_coding_iso_2022): Handle composition correctly.
13001 (init_coding_once): Setup emacs_mule_bytes for private charsets.
13002
13003 * charset.c (Fdefine_charset_internal): Fix bug for the case of
13004 re-defining a charset. If the charset has :emacs-mule-id, setup
13005 emacs_mule_bytes.
13006 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
13007
130082008-02-01 Kenichi Handa <handa@m17n.org>
13009
13010 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
13011 (encode_coding_big5, encode_coding_charset): If coding requires safe
13012 encoding, produce a character specified by
13013 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
13014
130152008-02-01 Dave Love <fx@gnu.org>
13016
13017 * xterm.c (XSetIMValues): Declare.
13018
13019 * process.c: Conditionally include sys/wait.h, pty.h.
13020
13021 * print.c (print_object): Fix print format for 64-bit systems.
13022
13023 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
13024
13025 * buffer.c (emacs_strerror): Declare.
13026
13027 * fontset.c (Fclear_face_cache): Declare.
13028 (accumulate_font_info): Comment-out (unused).
13029 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
13030 variables.
13031
13032 * character.h (string_escape_byte8): Declare.
13033
13034 * charset.c (load_charset_map, load_charset_map_from_file): Remove
13035 unused vars.
13036 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
13037 (Fmap_charset_chars): Doc fix.
13038
13039 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
13040 (Fset_coding_system_priority, Fset_coding_system_priority)
13041 (Fdefine_coding_system_internal): Doc fix.
13042
130432008-02-01 Dave Love <fx@gnu.org>
13044
13045 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
13046
130472008-02-01 Kenichi Handa <handa@m17n.org>
13048
13049 * character.c (string_escape_byte8): Make multibyte string with
13050 correct size.
13051
13052 * charset.c (Fmake_char): Delete unnecessary code.
13053
130542008-02-01 Kenichi Handa <handa@m17n.org>
13055
13056 * xfns.c (x_encode_text): Allocate coding.destination here, and
13057 call encode_coding_object with dst_object Qnil.
13058
13059 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
13060 multibyte form correctly.
13061
13062 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
13063 against Vfont_encoding_alist.
13064
13065 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
13066 handling of charset list.
13067 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
13068 (decode_coding_object): Move point to coding->dst_pos before
13069 calling post-read-conversion function.
13070 (encode_coding_object): Give correct arguments to
13071 pre-write-conversion. Ignore the return value of
13072 pre-write-conversion function. Pay attention to the case that
13073 pre-write-conversion changes the current buffer. If dst_object is
13074 Qt, even if coding->src_bytes is zero, allocate at least one byte
13075 to coding->destination.
13076
13077 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
13078
13079 * charset.c (Fmake_char): Make it more backward compatible.
13080 (Fmap_charset_chars): Fix docstring.
13081
130822008-02-01 Dave Love <fx@gnu.org>
13083
13084 * coding.c: Doc fixes.
13085 (Fdefine_coding_system_alias): Use names, not symbols, in
13086 coding-system-alist.
13087
130882008-02-01 Kenichi Handa <handa@m17n.org>
13089
13090 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
13091 of calling free_realized_face.
13092
130932008-02-01 Yong Lu <lyongu@asia-infonet.com>
13094
13095 * charset.c (read_hex): Don't treat SPC as a comment starter.
13096 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
13097 (Fdecode_char): Fix typo.
13098
130992008-02-01 Kenichi Handa <handa@m17n.org>
13100
13101 * charset.h (struct charset): New member `code_space_mask'.
13102
13103 * coding.c (coding_set_source): Delete the local variable beg_byte.
13104 (encode_coding_charset, Fdefine_coding_system_internal):
13105 Delete the local variable charset.
13106 (Fdefine_coding_system_internal): Setup
13107 attrs[coding_attr_charset_valids] correctly.
13108
13109 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
13110 member to check if CODE is valid or not.
13111 (Fdefine_charset_internal): Initialize `code_space_mask' member.
13112 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
13113 is within the range of charset->min_code and carset->max_code.
13114
131152008-02-01 Dave Love <fx@gnu.org>
13116
13117 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
13118
13119 * dispextern.h (generate_ascii_font): Fix return type.
13120
13121 * xfaces.c (generate_ascii_font): Fix arg declaration.
13122
13123 * coding.c (coding_inherit_eol_type)
13124 (Fset_terminal_coding_system_internal)
13125 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
13126
131272008-02-01 Kenichi Handa <handa@m17n.org>
13128
13129 * coding.c (decode_coding_charset, encode_coding_charset): Handle
13130 multiple charsets correctly.
13131
131322008-02-01 Kenichi Handa <handa@m17n.org>
13133
13134 * search.c (boyer_moore): Fix handling of multibyte character
13135 translation.
13136
13137 * xdisp.c (display_mode_element): When the variable `elt' is
13138 changed, update `this' and `lisp_string'.
13139
131402008-02-01 Kenichi Handa <handa@m17n.org>
13141
13142 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
13143
13144 * callproc.c (Fcall_process): Be sure to give the current buffer
13145 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
13146
13147 * charset.c (struct charset_map_entries): New struct.
13148 (load_charset_map): Rename from parse_charset_map. New args
13149 entries and n_entries. Change caller.
13150 (load_charset_map_from_file): Rename from load_charset_map.
13151 Change caller. New arg control_flag. Call load_charset_map at
13152 the tail.
13153 (load_charset_map_from_vector): New function.
13154 (Fdefine_charset_internal): Setup charset.compact_codes_p.
13155 (encode_char): If the charset is compact, change a character index
13156 to a code point.
13157
13158 * coding.c (coding_alloc_by_making_gap): Check the case that the
13159 source and destination are the same correctly.
13160 (decode_coding_raw_text): Set coding->consumed_char and
13161 coding->consumed to 0.
13162 (produce_chars): If coding->chars_at_source is nonzero, update
13163 coding->consumed_char and coding->consumed before calling
13164 alloc_destination.
13165 (Fdefine_coding_system_alias): Register ALIAS in
13166 Vcoding_system_alist.
13167 (syms_of_coding): Define `no-conversion' coding system at the tail.
13168
13169 * fileio.c (Finsert_file_contents): Set coding_system instead of
13170 val. If the current buffer is multibyte, always call
13171 decode_coding_gap.
13172
13173 * xfaces.c (try_font_list): Give higher priority to fontset's
13174 family than face's family.
13175
131762008-02-01 Kenichi Handa <handa@m17n.org>
13177
13178 * callproc.c (Fcall_process): Be sure to give the current buffer
13179 to decode_coding_c_string.
13180
13181 * xfaces.c (try_font_list): Give a family specified in a fontset
13182 higher priority than a family specified in a face.
13183
131842008-02-01 Kenichi Handa <handa@m17n.org>
13185
13186 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
13187 Fix arguments to insert_from_buffer.
13188
13189 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
13190
131912008-02-01 Kenichi Handa <handa@m17n.org>
13192
13193 * coding.c (produce_chars): Set the variable `multibytep' correctly.
13194 (decode_coding_gap): Set coding->dst_multibyte correctly.
13195
131962008-02-01 Kenichi Handa <handa@m17n.org>
13197
13198 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
13199 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
13200 (encode_coding_utf_16): Substitute coding->default_char for
13201 non-Unicode characters.
13202 (decode_coding): Don't call record_insert here.
13203 (setup_coding_system): Initialize `surrogate' of
13204 coding->spec.utf_16 to 0.
13205 (EMIT_ONE_BYTE): Fix for multibyte case.
13206
13207 * insdel.c (insert_from_gap): Call record_insert.
13208
132092008-02-01 Kenichi Handa <handa@m17n.org>
13210
13211 * casefiddle.c (casify_region): Fix multibyte case.
13212
13213 * character.c (c_string_width): Add return type `int'.
13214 (char_string_with_unification): Delete arg ADVANCED.
13215
13216 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
13217 (CHAR_STRING): Adjust for the change of char_string_with_unification.
13218 (CHAR_STRING_ADVANCE): Make it do-while statement.
13219
13220 * chartab.c (sub_char_table_set_range): Optimize for the case
13221 DEPTH == 3. Add workaround code for a GCC optimization bug.
13222
13223 * charset.c (parse_charset_map): Remove an unused variable.
13224
13225 * coding.c: Delete unused variables.
13226
13227 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
13228 earlier. If inserted is zero and the coding system doesn't
13229 require flushing, don't call decode_coding_gap.
13230
13231 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
13232
132332008-02-01 Kenichi Handa <handa@m17n.org>
13234
13235 The following changes are for using Unicode as an internal
13236 character model, and use UTF-8 format for buffer/string
13237 representation.
13238
13239 * .gdbinit (xchartable): Adjust for the change of char table structure.
13240 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
13241
13242 * Makefile.in (obj): Add character.o and chartab.o.
13243 (lisp, shortlisp): Remove utf-8.elc.
13244 (*.o): For many files, change dependency on charset.h to
13245 character.h, and add dependency on character.h.
13246 (character.o, chartab.o): New targets.
13247
13248 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
13249 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
13250 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
13251 of "charset.h".
13252
13253 * dired.c, filelock.c: Include "character.h".
13254
13255 * alloc.c: Include "character.h" instead of "charset.h".
13256 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
13257 (syms_of_alloc): Remove defsubr for Smake_char_table.
13258
13259 * buffer.c: Include "character.h" instead of "charset.h", don't
13260 include "coding.h".
13261 (Fset_buffer_multibyte): Adjust for UTF-8.
13262
13263 * buffer.h: EXFUN Fbuffer_live_p.
13264
13265 * callproc.c: Include "character.h" instead of "charset.h".
13266 (Fcall_process): Big change for the new code-conversion APIs.
13267
13268 * casetab.c: Include "character.h" instead of "charset.h".
13269 (set_canon, set_identity, shuffle): Adjust for the new
13270 map_char_table spec.
13271 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
13272 accessing the char table structure.
13273
13274 * chartab.c: New file that implements char table.
13275
13276 * category.c: Include "character.h".
13277 (copy_category_entry): New function.
13278 (copy_category_table): Call map_char_table and copy_category_entry.
13279 (Fmake_category_table): Initialize all top-level slots.
13280 (char_category_set): New function.
13281 (modify_lower_category_set): Delete.
13282 (Fmodify_category_entry): Call char_table_ref_and_range.
13283
13284 * category.h (CATEGORY_SET): Just call char_category_set.
13285
13286 * ccl.c: Include "character.h".
13287 (Qccl, Qcclp): New variables.
13288 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
13289 it's less than 256.
13290 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
13291 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
13292 and DST type.
13293 (ccl_driver): Change types of argument, adjust code accordingly.
13294 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
13295 ccl_driver.
13296 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
13297
13298 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
13299 New members src_multibyte, dst_multibyte, consumed, and produced.
13300 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
13301 (CODING_SPEC_CCL_PROGRAM): New macro.
13302 (ccl_driver): Update prototype.
13303 (Qccl, Qcclp, Fccl_program_p): Extern them.
13304 (CHECK_CCL_PROGRAM): New macro.
13305
13306 * character.c, character.h, chartab.c: New files.
13307
13308 * charset.c: Mostly re-written. Move character and multibyte sequence
13309 handling codes to character.c.
13310
13311 * charset.h: Mostly re-written. Move character and multibyte sequence
13312 handling codes to character.h.
13313
13314 * coding.c, coding.h: Mostly re-written.
13315
13316 * composite.c: Include "character.h" instead of "charset.h".
13317 (CHAR_WIDTH): Move to character.h.
13318 (HASH_KEY, HASH_VALUE): Delete.
13319
13320 * composite.h (enum composition_method): Change order of enumeration
13321 symbols.
13322
13323 * data.c: Include "character.h" instead of "charset.h".
13324 (Faref): Call CHAR_TABLE_REF for a char table.
13325 (Faset): Call CHAR_TABLE_SET for a char table.
13326
13327 * dispextern.h (free_realized_face, check_face_attribytes)
13328 (generate_ascii_font): Extern them.
13329 (free_realized_multibyte_face): Delete extern.
13330
13331 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
13332 table structure.
13333
13334 * editfns.c: Include "character.h" instead of "charset.h".
13335 (Fchar_to_string): Always call CHAR_STRING.
13336
13337 * emacs.c (main): Call init_charset_once, init_charset,
13338 syms_of_chartab, and syms_of_character.
13339
13340 * fileio.c: Include "character.h" instead of "charset.h".
13341 (Finsert_file_contents): Big change for the new code-conversion API.
13342 (choose_write_coding_system, Fwrite_region): Likewise.
13343 (build_annotations_2): Delete.
13344 (e_write): Big change for the new code-conversion API.
13345
13346 * fns.c: Include "character.h" instead of "charset.h".
13347 (copy_sub_char_table): Move to chartab.c.
13348 (Fcopy_sequence): Call copy_char_table for a char table.
13349 (concat): Delete codes calling count_multibyte.
13350 (string_char_to_byte, string_byte_to_char): Adjust for the new
13351 multibyte form.
13352 (internal_equal): Adjust for the change of char table structure.
13353 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
13354 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
13355 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
13356 (char_table_translate, optimize_sub_char_table)
13357 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
13358 chartab.c.
13359 (char_table_ref_and_index): Delete.
13360 (HASH_KEY, HASH_VALUE): Move to lisp.h.
13361 (Fmd5): Call preferred_coding_system instead of accessing
13362 Vcoding_category_list. Adjust for the new code-conversion API.
13363 (syms_of_fns): Move defsubr for char table related functions to
13364 chartab.c.
13365
13366 * fontset.c: Mostly re-written.
13367
13368 * fontset.h (struct font_info): Change type of the member encoding_type.
13369 (enum FONT_SPEC_INDEX): New enum.
13370 (fontset_font_pattern, fs_load_font): Update prototype.
13371 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
13372
13373 * indent.c: Include "character.h" instead of "charset.h".
13374 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
13375
13376 * insdel.c: Include "character.h" instead of "charset.h".
13377 (copy_text): Don't refer to Vnonascii_translation_table.
13378 (insert_from_gap): New function.
13379
13380 * keyboard.c: Include "character.h" instead of "charset.h".
13381 (command_loop_1): Never call direct_output_forward_char before
13382 a non-ASCII character.
13383 (read_char): If Vkeyboard_translate_table is a char table, always
13384 translate a character.
13385
13386 * keymap.c: Include "character.h".
13387 (store_in_keymap): Handle the case that IDX is a cons.
13388 (Fdefine_key): Handle the case that KEY is a cons and the car part
13389 is also a cons (range).
13390 (push_key_description): Adjust for the new character code.
13391 (describe_vector): Call describe_char_table for a char table.
13392 (describe_char_table): New function.
13393
13394 * keymap.h (describe_char_table): Extern it.
13395
13396 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
13397 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
13398 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
13399 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
13400 Delete.
13401 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
13402 structure.
13403 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
13404 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
13405 (CHARTAB_SIZE_BITS_3): New macros.
13406 (chartab_size): Extern it.
13407 (struct Lisp_Char_Table): Re-design.
13408 (struct Lisp_Sub_Char_Table): New structure.
13409 (HASH_KEY, HASH_VALUE): Move from fns.c.
13410 (CHARACTERBITS): Define as 22.
13411 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
13412 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
13413 (GC_SUB_CHAR_TABLE_P): New macro.
13414 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
13415 (code_convert_string_norecord): Deleted extern.
13416 (init_character_once, syms_of_character, init_charset)
13417 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
13418
13419 * lread.c: Include "character.h".
13420 (read_multibyte): New arg NBYTES.
13421 (read_escape): Change the meaning of returned *BYTEREP.
13422 (to_multibyte): Delete.
13423 (read1): Adjust the handling of char table and string.
13424
13425 * print.c: Include "character.h" instead of "charset.h".
13426 (print_string): Convert 8-bit raw bytes to octal form by
13427 string_escape_byte8.
13428 (print_object): Adjust for the new multibyte form. Print 8-bit
13429 raw bytes always in octal form. Handle sub char table correctly.
13430
13431 * process.c: Include "character.h" instead of "charset.h".
13432 (read_process_output, send_process): Adjust for the new
13433 code-conversion API.
13434
13435 * puresize.h (BASE_PURESIZE): Increase.
13436
13437 * regex.c: Include "character.h" instead of "charset.h".
13438 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
13439 (regex_compile): Accept a range whose starting and ending
13440 character have different leading bytes.
13441 (analyse_first): Adjust for the above change.
13442
13443 * search.c: Include "character.h" instead of "charset.h".
13444 (search_buffer, boyer_moore): Adjust for the new multibyte form.
13445 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
13446
13447 * syntax.c: Include "character.h" instead of "charset.h".
13448 (syntax_parent_lookup): Delete.
13449 (Fmodify_syntax_entry): Accept a cons as CHAR.
13450 (skip_chars): Adjust for the new multibyte form.
13451 (init_syntax_once): Call char_table_set_range instead of directly
13452 accessing the structure of a char table.
13453
13454 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
13455 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
13456 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
13457 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
13458
13459 * term.c: Include "buffer.h" and "character.h".
13460 (encode_terminal_code, write_glyphs): Adjust for the new
13461 code-conversion API.
13462 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
13463
13464 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
13465
13466 * xdisp.c: Include "character.h".
13467 (get_next_display_element): Adjust for the new multibyte form.
13468 (disp_char_vector): Adjust for the new char table structure.
13469 (decode_mode_spec_coding): Adjust for the new structure of
13470 coding system.
13471 (decode_mode_spec): Adjust for the new code-conversion API.
13472
13473 * xfaces.c: Include "character.h" instead of "charset.h".
13474 (load_face_font): Adjust for the change of choose_face_font and
13475 FS_LOAD_FONT.
13476 (generate_ascii_font): New function.
13477 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
13478 (set_font_frame_param): Adjust for the change of choose_face_font.
13479 (free_realized_face): Make it public.
13480 (free_realized_faces_for_fontset): Rename from
13481 free_realized_multibyte_face. Free also faces realized for ASCII.
13482 (choose_face_font): Change arguments. Adjust for the change of
13483 fontset_font_pattern and FS_LOAD_FONT.
13484
13485 * xfns.c: Include "character.h".
13486 (x_encode_text): Adjust for the new code-conversion API.
13487
13488 * xselect.c: Don't include "charset.h".
13489 (selection_data_to_lisp_data): Adjust for the new code conversion API.
13490
13491 * xterm.c: Include "character.h".
13492 (x_encode_char): New argument CHARSET. Change caller.
13493 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
13494 Call ENCODE_CHAR instead of SPLIT_CHAR.
13495 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
13496 CHAR_WIDTH instead of CHARSET_WIDTH.
13497 (XTread_socket): Adjust for the new code-conversion API.
13498 (x_new_font): Adjust for the change of FS_LOAD_FONT.
13499 (x_load_font): Adjust for the change of struct font.
13500
135012008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13502
13503 * xfaces.c (face_at_buffer_position): Remove unused vars.
13504
135052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13506
13507 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
13508 Fix overflow checking.
13509
135102008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13511
13512 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
13513 Cancel previous change.
13514
135152008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
13516
13517 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
13518 ccl->eight_bit_control. Fix check for buffer overflow.
13519 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
13520 (ccl_driver): Initialize extra_bytes to 0.
13521
135222008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
13523
13524 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
13525 return it ORed with ctrl_modifier.
13526
135272008-01-29 Miles Bader <miles@gnu.org>
13528
13529 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
13530
135312008-01-28 Jason Rumney <jasonr@gnu.org>
13532
13533 * w32.c (stat): Don't double check for networked drive.
13534
135352008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
13536
13537 * window.c (run_window_configuration_change_hook): New function.
13538 Code extracted from set_window_buffer. Set the selected frame.
13539 (set_window_buffer): Use it.
13540 * window.h (run_window_configuration_change_hook): Declare.
13541 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
13542
13543 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
13544
135452008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
13546
13547 * Makefile.in: Remove references to unused macros.
13548
135492008-01-26 Eli Zaretskii <eliz@gnu.org>
13550
13551 * w32.c (g_b_init_get_sid_sub_authority)
13552 (g_b_init_get_sid_sub_authority_count): New static variables.
13553 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
13554 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
13555 (init_user_info): Use them to retrieve uid and gid.
13556 Use 500/513, the Windows defaults, as Administrator's uid/gid.
13557 (fstat): Use pw_uid and pw_gid from the_passwd structure for
13558 st_uid and st_gid of the file.
13559
135602008-01-26 Jason Rumney <jasonr@gnu.org>
13561
13562 * w32.c (logon_network_drive): New function.
13563 (stat): Use it.
13564
135652008-01-26 Chong Yidong <cyd@stupidchicken.com>
13566
13567 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
13568 invisible text covered with an ellipsis.
13569
135702008-01-25 Richard Stallman <rms@gnu.org>
13571
13572 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
13573 jump back to beginning. Move some other initializations after that.
13574 (Qwindow_text_change_functions, Vwindow_text_change_functions):
13575 New variables.
13576 (syms_of_xdisp): Init them.
13577
13578 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
13579
13580 * buffer.c (reset_buffer_local_variables):
13581 Implement `permanent-local-hook'.
13582 (Qpermanent_local_hook): New variable.
13583 (syms_of_buffer): Init and staticpro it.
13584
135852008-01-25 Michael Albinus <michael.albinus@gmx.de>
13586
13587 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
13588
135892008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
13590
13591 * fns.c (Fclrhash): Return TABLE.
13592
135932008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13594
13595 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
13596 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
13597 is set even without positional changes.
13598 (x_scroll_bar_clear): Set bar->redraw_needed_p.
13599
13600 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
13601
136022008-01-23 Jason Rumney <jasonr@gnu.org>
13603
13604 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
13605
13606 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
13607 the unicode range available in MULE by locale-coding-system.
13608 Improve dbcs lead byte detection. Set event timestamp and modifiers
13609 earlier.
13610
136112008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13612
13613 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
13614 [MAC_OSX] (init_mac_osx_environment): Initialize it.
13615 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
13616 when used on child processes.
13617
136182008-01-21 Michael Albinus <michael.albinus@gmx.de>
13619
13620 * dbusbind.c (Fdbus_method_return_internal): Rename from
13621 Fdbus_method_return.
13622 (Fdbus_unregister_object): Move to dbus.el.
13623 (Fdbus_call_method, Fdbus_method_return_internal)
13624 (Fdbus_send_signal): Improve debug messages.
13625
136262008-01-20 Martin Rudalics <rudalics@gmx.at>
13627
13628 * undo.c (undo_inhibit_record_point): New variable.
13629 (syms_of_undo): Initialize it.
13630 (record_point): Don't record point when undo_inhibit_record_point
13631 is set.
13632
136332008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
13634
13635 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
13636
13637 * xdisp.c (Qauto_hscroll_mode): New var.
13638 (syms_of_xdisp): Initialize it.
13639 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
13640 window's buffer.
13641 (hscroll_windows): Don't check automatic_hscrolling_p here.
13642
13643 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
13644 vscroll if we're setting window-buffer to the value it already has.
13645
136462008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
13647
13648 * m/intel386.h: Remove references to XENIX.
13649
136502008-01-17 Andreas Schwab <schwab@suse.de>
13651
13652 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
13653 instead of HAVE_X86_64_LIB64_DIR.
13654 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
13655
136562008-01-17 Glenn Morris <rgm@gnu.org>
13657
13658 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
13659 to HAVE_X86_64_LIB64_DIR.
13660
136612008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
13662
13663 * s/irix3-3.h:
13664 * s/irix4-0.h:
13665 * s/386-ix.h:
13666 * s/domain.h:
13667 * s/hpux9-x11r4.h:
13668 * s/hpux9shxr4.h: Remove files for systems no longer supported.
13669
13670 * sysdep.c: Remove code containing references to symbols defined
13671 by unsupported systems.
13672
136732008-01-16 Glenn Morris <rgm@gnu.org>
13674
13675 * coding.c (select-safe-coding-system-function): Doc fix.
13676
136772008-01-15 Glenn Morris <rgm@gnu.org>
13678
13679 * config.in: Revert 2008-01-13 change: this is a generated file.
13680
136812008-01-13 Tom Tromey <tromey@redhat.com>
13682
13683 * lisp.h: Fix typo.
13684
136852008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
13686
13687 * m/sequent-ptx.h:
13688 * m/sequent.h:
13689 * s/ptx.h:
13690 * s/ptx4-2.h:
13691 * s/ptx4.h: Remove files for systems no longer supported.
13692
13693 * callproc.c (Fcall_process): Fix previous change.
13694
136952008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
13696
13697 * unexsunos4.c: Remove file, system not supported anymore.
13698
13699 * m/mips.h:
13700 * m/intel386.h:
13701 * callproc.c:
13702 * config.in:
13703 * ecrt0.c:
13704 * emacs.c:
13705 * fileio.c:
13706 * frame.c:
13707 * getpagesize.h:
13708 * keyboard.c:
13709 * lread.c:
13710 * process.c:
13711 * puresize.h:
13712 * sysdep.c:
13713 * systty.h:
13714 * syswait.h:
13715 * unexec.c:
13716 * xdisp.c:
13717 * alloc.c: Remove code containing references to symbols defined by
13718 unsupported systems.
13719
137202008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
13721
13722 * coding.c (detect_coding_mask): Fix previous change.
13723
137242008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
13725
13726 * coding.c (detect_coding_iso2022): New arg
13727 latin_extra_code_state. Allow Latin extra codes only
13728 when *latin_extra_code_state is nonzero.
13729 (detect_coding_mask): If there is a NULL byte, detect the encoding
13730 as UTF-16 or binary. If Latin extra codes exist, detect the
13731 encoding as ISO-2022 only when there's no other proper encoding is
13732 found.
13733
137342008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13735
13736 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
13737 #ifdef MAC_OS.
13738
137392008-01-08 Richard Stallman <rms@gnu.org>
13740
13741 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
13742
137432008-01-06 Nick Roberts <nickrob@snap.net.nz>
13744
13745 * keyboard.c (parse_menu_item): Don't enclose key bindings on
13746 menu bar in parentheses.
13747
137482008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
13749
13750 * m/7300.h:
13751 * m/acorn.h:
13752 * m/alliant-2800.h:
13753 * m/alliant.h:
13754 * m/alliant1.h:
13755 * m/alliant4.h:
13756 * m/altos.h:
13757 * m/amdahl.h:
13758 * m/apollo.h:
13759 * m/att3b.h:
13760 * m/aviion-intel.h:
13761 * m/aviion.h:
13762 * m/celerity.h:
13763 * m/clipper.h:
13764 * m/cnvrgnt.h:
13765 * m/convex.h:
13766 * m/cydra5.h:
13767 * m/delta88k.h:
13768 * m/dpx2.h:
13769 * m/dual.h:
13770 * m/elxsi.h:
13771 * m/f301.h:
13772 * m/gould-np1.h:
13773 * m/gould.h:
13774 * m/i860.h:
13775 * m/ibmps2-aix.h:
13776 * m/ibmrt-aix.h:
13777 * m/ibmrt.h:
13778 * m/irist.h:
13779 * m/is386.h:
13780 * m/isi-ov.h:
13781 * m/mega68.h:
13782 * m/mg1.h:
13783 * m/news-r6.h:
13784 * m/news-risc.h:
13785 * m/news.h:
13786 * m/nh3000.h:
13787 * m/nh4000.h:
13788 * m/ns16000.h:
13789 * m/ns32000.h:
13790 * m/nu.h:
13791 * m/orion.h:
13792 * m/orion105.h:
13793 * m/paragon.h:
13794 * m/pfa50.h:
13795 * m/plexus.h:
13796 * m/pyramid.h:
13797 * m/pyrmips.h:
13798 * m/sh3el.h:
13799 * m/sps7.h:
13800 * m/sr2k.h:
13801 * m/stride.h:
13802 * m/sun1.h:
13803 * m/sun2.h:
13804 * m/sun3-68881.h:
13805 * m/sun3-fpa.h:
13806 * m/sun3-soft.h:
13807 * m/sun3.h:
13808 * m/sun386.h:
13809 * m/symmetry.h:
13810 * m/tad68k.h:
13811 * m/tahoe.h:
13812 * m/targon31.h:
13813 * m/tek4300.h:
13814 * m/tekxd88.h:
13815 * m/tower32.h:
13816 * m/tower32v3.h:
13817 * m/ustation.h:
13818 * m/wicat.h:
13819 * m/xps100.h:
13820 * s/cxux.h:
13821 * s/cxux7.h:
13822 * s/dgux.h:
13823 * s/dgux4.h:
13824 * s/dgux5-4-3.h:
13825 * s/dgux5-4r2.h:
13826 * s/esix.h:
13827 * s/esix5r4.h:
13828 * s/hiuxmpp.h:
13829 * s/hiuxwe2.h:
13830 * s/iris3-5.h:
13831 * s/iris3-6.h:
13832 * s/isc2-2.h:
13833 * s/isc3-0.h:
13834 * s/isc4-0.h:
13835 * s/isc4-1.h:
13836 * s/newsos5.h:
13837 * s/newsos6.h:
13838 * s/osf1.h:
13839 * s/osf5-0.h:
13840 * s/riscix1-1.h:
13841 * s/riscix12.h:
13842 * s/sco4.h:
13843 * s/sco5.h:
13844 * s/sunos4-0.h:
13845 * s/sunos4-1.h:
13846 * s/sunos413.h:
13847 * s/sunos4shr.h:
13848 * s/umax.h:
13849 * s/unipl5-2.h:
13850 * s/xenix.h:
13851 * cxux-crt0.s:
13852 * unexapollo.c:
13853 * unexconvex.c:
13854 * unexenix.c:
13855 * unexsni.c: Remove files for systems no longer supported.
13856
13857 * m/intel386.h: Remove references to unsupported systems.
13858
13859 * w32.c (get_emacs_configuration): Remove reference to i860.
13860
13861 * sysdep.c: Remove dead code.
13862
138632008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
13864
13865 * s/rtu.h:
13866 * m/masscomp.h: Remove files. Platform is obsolete.
13867
138682008-01-04 Michael Albinus <michael.albinus@gmx.de>
13869
13870 * dbusbind.c (Fdbus_method_return): New function.
13871 (xd_read_message): Add the serial number to the event.
13872 (Fdbus_register_method): Activate the function.
13873
138742008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
13875
13876 * keyboard.c (read_key_sequence): Fix typo.
13877
138782008-01-03 Michael Albinus <michael.albinus@gmx.de>
13879
13880 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
13881 (xd_signature, xd_append_arg): Handle element type detection for
13882 empty arrays.
13883 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
13884 SDATA () calls; this must be solved more general.
13885 (Fdbus_register_signal): Use SBYTES instead of strlen.
13886
138872008-01-03 Magnus Henoch <magnus@zemdatav>
13888
13889 * dbusbind.c (xd_append_arg): Use unsigned char instead of
13890 unsigned int for byte values (necessary for big-endian platform).
13891 (Fdbus_call_method): Handle the case of no returned arguments.
13892
138932007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
13894
13895 * dbusbind.c (xd_read_message): Use non-static input_event struct.
13896
138972007-12-31 Magnus Henoch <mange@freemail.hu>
13898
13899 * dbusbind.c (xd_signature): Signature of variant is just "v".
13900
139012007-12-30 Michael Albinus <michael.albinus@gmx.de>
13902
13903 * dbusbind.c: Fix several errors and compiler warnings.
13904 Reported by Tom Tromey <tromey@redhat.com>.
13905 (XD_ERROR, XD_DEBUG_MESSAGE)
13906 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
13907 (xd_append_arg): Part for basic D-Bus types rewritten.
13908 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
13909 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
13910 appropriate.
13911 (xd_read_message): Return Qnil. Don't signal an error; it is not
13912 useful during event reading.
13913 (Fdbus_register_signal): Signal an error if the check for
13914 FUNCTIONP fails.
13915 (Fdbus_register_method): New function. The implementation is not
13916 complete, the call of the function signals an error therefore.
13917 (Fdbus_unregister_object): New function, renamed from
13918 Fdbus_unregister_signal. The initial check signals an error, if
13919 the object is not well formed.
13920
139212007-12-30 Richard Stallman <rms@gnu.org>
13922
13923 * textprop.c (get_char_property_and_overlay):
13924 Signal error if POSITION is out of range in a buffer.
13925
139262007-12-29 Martin Rudalics <rudalics@gmx.at>
13927
13928 * w32fns.c (Fx_create_frame): Make copy of frame parameters
13929 because the original parameters are in pure storage now.
13930
139312007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13932
13933 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
13934
139352007-12-22 Eli Zaretskii <eliz@gnu.org>
13936
13937 * callint.c (syms_of_callint) <command-history>: Add reference to
13938 history-length in the doc string.
13939
139402007-12-17 Jason Rumney <jasonr@gnu.org>
13941
13942 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
13943 before passing as wParam.
13944
139452007-12-22 Michael Albinus <michael.albinus@gmx.de>
13946
13947 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
13948 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
13949 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
13950 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
13951 as number.
13952 (Fdbus_call_method): Fix docstring.
13953
139542007-12-21 Michael Albinus <michael.albinus@gmx.de>
13955
13956 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
13957 New macros.
13958 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
13959 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
13960 Simplify.
13961 (xd_signature): New function.
13962 (xd_append_arg): Compute also signatures. Major rewrite.
13963 (xd_retrieve_arg): Make debug messages friendly.
13964 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
13965 Check for signatures of arguments.
13966
139672007-12-19 Michael Albinus <michael.albinus@gmx.de>
13968
13969 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
13970 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
13971 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
13972 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
13973 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
13974 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
13975 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
13976 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
13977 (xd_retrieve_value): Remove. Functionality included in ...
13978 (xd_append_arg): New function.
13979 (Fdbus_call_method, Fdbus_send_signal): Apply it.
13980
139812007-12-16 Michael Albinus <michael.albinus@gmx.de>
13982
13983 * dbusbind.c (top): Include <stdio.h>.
13984 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
13985 dbus_message_new_method_call and dbus_message_new_signal.
13986 (Fdbus_register_signal): Rename unique_name to uname.
13987 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
13988 non-existing unique name. Fix typos in matching rule. Return an
13989 object which is useful in Fdbus_unregister_signal.
13990 (Fdbus_unregister_signal): Reimplementation, in order to remove
13991 only the corresponding entry.
13992 (Vdbus_registered_functions_table): Change the order of entries.
13993 Apply these changes in xd_read_message and Fdbus_register_signal.
13994
139952007-12-16 Andreas Schwab <schwab@suse.de>
13996
13997 * fileio.c (Finsert_file_contents): Fix overflow check to not
13998 depend on undefined integer overflow.
13999
140002007-12-14 Jason Rumney <jasonr@gnu.org>
14001
14002 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
14003 for characters above 127.
14004
140052007-12-13 Jason Rumney <jasonr@gnu.org>
14006
14007 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
14008 before dereferencing array.
14009 (lookup_vk_code): Remove zero comparison.
14010
140112007-12-14 Michael Albinus <michael.albinus@gmx.de>
14012
14013 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
14014 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
14015 Use `unsigned int' instead of `uint'.
14016 (xd_read_message, Fdbus_register_signal): Split expressions into
14017 multiple lines before operators "&&" and "||", according to the
14018 GNU Coding Standards.
14019
140202007-12-14 Eli Zaretskii <eliz@gnu.org>
14021
14022 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
14023
140242007-12-12 Juri Linkov <juri@jurta.org>
14025
14026 * buffer.c (Frename_buffer): In interactive spec replace
14027 `read-buffer' with `read-string' that uses `buffer-name-history'
14028 as history, and the current buffer's name as default.
14029
140302007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
14031
14032 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
14033 manipulating the backtrace manually.
14034 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
14035 (struct backtrace, backtrace_list): Remove.
14036 (command_loop_1): Remove dead var `no_direct'.
14037
14038 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
14039 preserve non-built-in buffer-local variables.
14040 (Fkill_all_local_variables): Don't re-create&re-set permanent
14041 buffer-local variables.
14042
140432007-12-09 Juri Linkov <juri@jurta.org>
14044
14045 * buffer.c (Frename_buffer): Change interactive spec from "s" to
14046 Lisp code that uses `read-buffer' with current buffer as default.
14047
140482007-12-08 Michael Albinus <michael.albinus@gmx.de>
14049
14050 * dbusbind.c (xd_read_message): Generate an event for every
14051 registered handler. There might be several handlers registered
14052 for the same signal.
14053 (Fdbus_register_signal): Don't overwrite a registration for the
14054 same signal. Add a new registration if handlers are different.
14055 (Vdbus_registered_functions_table): Rework doc string.
14056
140572007-12-07 Michael Albinus <michael.albinus@gmx.de>
14058
14059 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
14060 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
14061 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
14062 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
14063 Unify argument lists.
14064 (xd_read_message, Fdbus_register_signal): Reorder and extend event
14065 arguments and hash table keys. Use unique name for service.
14066 (Fdbus_unregister_signal): Remove checks.
14067 (Vdbus_registered_functions_table): Fix doc string.
14068
140692007-12-05 Magnus Henoch <mange@freemail.hu>
14070
14071 * process.c (make_process): Initialize pty_flag to 0.
14072
140732007-12-05 Jason Rumney <jasonr@gnu.org>
14074
14075 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
14076 specified XBMs.
14077
140782007-12-05 Richard Stallman <rms@gnu.org>
14079
14080 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
14081
140822007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14083
14084 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
14085 New variable.
14086 (mac_try_close_socket) [MAC_OSX]: New function.
14087 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
14088 Update cfsockets_for_select. Replace invalid CFRunLoop source.
14089
14090 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
14091 Use mac_try_close_socket.
14092
140932007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14094
14095 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
14096 reloc_base.
14097 (copy_dysymtab): Compute relocation base here.
14098 (rebase_reloc_address) [__ppc64__]: New function.
14099 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
14100 changed.
14101
141022007-12-05 Jason Rumney <jasonr@gnu.org>
14103
14104 * w32proc.c (sys_spawnve): Quote args with wildcards.
14105
141062007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14107
14108 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
14109 __objc_* sections.
14110 (unrelocate) [_LP64]: Set relocation base to address of data segment.
14111
141122007-12-05 Michael Albinus <michael.albinus@gmx.de>
14113
14114 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
14115 Move check for Vdbus_registered_functions_table to
14116 xd_read_queued_messages.
14117 (xd_read_queued_messages): Protect xd_read_message calls by
14118 internal_condition_case_1.
14119
141202007-12-04 Michael Albinus <michael.albinus@gmx.de>
14121
14122 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
14123 Qdbus_system_bus and Qdbus_session_bus, respectively.
14124 (Vdbus_intern_symbols): Remove.
14125 (Vdbus_registered_functions_table): New hash table.
14126 (XD_SYMBOL_INTERN_SYMBOL): Remove.
14127 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
14128 Rewrite in order to manage registered functions by hash table
14129 Vdbus_registered_functions_table.
14130
141312007-12-03 Jan Djärv <jan.h.d@swipnet.se>
14132
14133 * xterm.c: Update URL to Window Manager Specification in comment.
14134
141352007-12-02 Michael Albinus <michael.albinus@gmx.de>
14136
14137 * config.in (HAVE_DBUS): Add.
14138
14139 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
14140 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
14141 (obj): Add $(DBUS_OBJ).
14142 (LIBES): Add $(DBUS_LIBS).
14143 (dbusbind.o): New target.
14144
14145 * dbusbind.c: New file.
14146
14147 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
14148
14149 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
14150 (Qdbus_event): New Lisp symbol.
14151 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
14152 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 14153 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
14154
14155 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
14156
141572007-12-01 Richard Stallman <rms@gnu.org>
14158
14159 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
14160
141612007-11-30 Jason Rumney <jasonr@gnu.org>
14162
14163 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
14164 (w32con_reset_terminal_modes): Clear screen buffer.
14165 (w32_face_attributes): Don't use color indexes that are out of range.
14166 Only reverse the default colors.
14167
14168 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
14169 WINDOWSNT.
14170
14171 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
14172
141732007-11-29 Jason Rumney <jasonr@gnu.org>
14174
14175 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
14176 (w32_face_attributes): Use Vtty_defined_color_alist to determine
14177 if the terminal colors are initialized.
14178 (unspecified_fg, unspecified_bg): Remove unused declarations.
14179
141802007-11-29 Andreas Schwab <schwab@suse.de>
14181
14182 * keyboard.c (apply_modifiers): Fix typo.
14183
141842007-11-29 Richard Stallman <rms@gnu.org>
14185
14186 * keymap.c (Fcurrent_local_map): Doc fix.
14187
141882007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
14189
14190 * s/gnu-kfreebsd.h: New file.
14191
141922007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
14193
14194 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
14195 Don't cast redundantly.
14196
14197 * keyboard.c (KEY_TO_CHAR): New macro.
14198 (parse_modifiers, apply_modifiers): Accept integer arguments.
14199 (read_key_sequence): Use them to unify the "shift->unshift" mapping
14200 for chars and symbol keys.
14201 After doing such remapping, apply function-key-map again.
14202
142032007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
14204
14205 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
14206 compiled anymore.
14207
142082007-11-26 Andreas Schwab <schwab@suse.de>
14209
14210 * process.c (list_processes_1): Fix indentation level of the
14211 command column.
14212
142132007-11-23 Andreas Schwab <schwab@suse.de>
14214
14215 * editfns.c (Fformat): Handle %c specially since it requires the
14216 argument to be of type int.
14217
142182007-11-23 Markus Triska <markus.triska@gmx.at>
14219
14220 * emacs.c (main): Call init_editfns before init_process, since
14221 init_process sets Vprocess_connection_type depending on OS release.
14222
142232007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
14224
14225 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
14226 (find_symbol_value): Use do_symval_forwarding.
14227
14228 * data.c (set_internal): Set the value in the `cons-cell' (for
14229 Buffer_Local_values) not only for frame-local variables.
14230
142312007-11-22 Andreas Schwab <schwab@suse.de>
14232
14233 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
14234 values to sprintf.
14235 * keymap.c (Fsingle_key_description): Likewise.
14236 * print.c (print_object): Likewise.
14237
142382007-11-22 Jan Djärv <jan.h.d@swipnet.se>
14239
14240 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
14241 file for image is nil.
14242
142432007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
14244
14245 * term.c: Include stdarg.h.
14246 (fatal): Implement using varargs.
14247 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
14248
142492007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
14250
14251 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
14252 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
14253 Update call to buffer_slot_type_mismatch.
14254 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
14255 (buffer_slot_type_mismatch): Update.
14256 * buffer.c (buffer_local_types): Remove.
14257 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
14258 (defvar_per_buffer): Set the type in the buffer_objfwd.
14259
142602007-11-21 Jason Rumney <jasonr@gnu.org>
14261
14262 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
14263 CreateFileMapping returns NULL on failure.
14264
142652007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
14266
14267 * search.c (Fset_match_data): Remove the `evaporate' feature.
14268 (unwind_set_match_data): Don't use the `evaporate' feature.
14269
142702007-11-21 Jason Rumney <jasonr@gnu.org>
14271
14272 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
14273
14274 * w32console.c (w32con_write_glyphs): Remove unused variables.
14275
142762007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
14277
14278 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
14279
14280 * s/darwin.h (MULTI_KBOARD): Remove.
14281
14282 * macfns.c (x_create_tip_frame, Fx_create_frame)
14283 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
14284
142852007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
14286
14287 * buffer.c (Fbuffer_local_value): Remove redundant test.
14288 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
14289 than in `current-buffer' to match the comment.
14290 Do the swap using swap_in_global_binding.
14291
14292 * data.c (store_symval_forwarding, set_internal):
14293 * eval.c (specbind): Remove dead code.
14294
14295 * coding.c (detect_coding, Fupdate_coding_systems_internal):
14296 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
14297 Since we do not want to see internal Lisp_*fwd objects here.
14298
142992007-11-18 Jan Djärv <jan.h.d@swipnet.se>
14300
14301 * sysdep.c (init_system_name): Use getaddrinfo if available.
14302
14303 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
14304 (x_scroll_bar_note_movement): start, end, with, height in struct
14305 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
14306
143072007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
14308
14309 * puresize.h (BASE_PURESIZE): Increase to 1190000.
14310
143112007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
14312
14313 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
14314 This undoes Richard's change of 14-Oct-2002.
14315
14316 * alloc.c (allocate_other_vector):
14317 * lisp.h (allocate_other_vector): Remove.
14318
14319 * window.c (struct save_window_data): Move non-lisp data to the end
14320 and make it `int' rather than Lisp_Object.
14321 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
14322 Done wrap/unwrap integer values.
14323 (Fset_window_configuration, compare_window_configurations):
14324 Update use of fields to their new types.
14325
14326 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
14327 Turn integer fields into `int'. Merge x_window_low and x_window_high.
14328 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
14329 (SET_SCROLL_BAR_X_WINDOW): Remove.
14330 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
14331 Access the new x_window field directly.
14332 * xterm.c (x_scroll_bar_create): Use a pseudovector.
14333 Don't wrap/unwrap integers into Lisp_Objects.
14334 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
14335 (x_scroll_bar_report_motion):
14336 Don't wrap/unwrap integers into Lisp_Objects.
14337 (x_term_init): Use SDATA.
14338 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
14339 (x_scroll_bar_set_handle, x_scroll_bar_remove)
14340 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
14341 (x_scroll_bar_report_motion, x_scroll_bar_clear):
14342 * xfns.c (x_set_background_color):
14343 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
14344 Access the new x_window field directly.
14345
14346 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
14347 (allocate_pseudovector): Make non-static.
14348
14349 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
14350 (allocate_pseudovector): Declare.
14351 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
14352
143532007-11-15 Andreas Schwab <schwab@suse.de>
14354
14355 * editfns.c (Fformat): Correctly format EMACS_INT values.
14356 Also take precision into account when formatting an integer.
14357
14358 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
14359
143602007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
14361
14362 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
14363 (syms_of_keyboard): Defsubr it.
14364
14365 * data.c (swap_in_global_binding): Fix longstanding bug where
14366 store_symval_forwarding was not called with the right second argument,
14367 thus causing objfwd-ing from being dropped.
14368
143692007-11-14 Juanma Barranquero <lekktu@gmail.com>
14370
14371 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
14372 (Fx_display_pixel_height, Fx_display_planes)
14373 (Fx_display_color_cells, Fx_server_max_request_size)
14374 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
14375 (Fx_display_visual_class, Fx_display_save_under):
14376 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
14377 (Fx_display_pixel_height, Fx_display_planes)
14378 (Fx_display_color_cells, Fx_server_max_request_size)
14379 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
14380 (Fx_display_mm_height, Fx_display_mm_width)
14381 (Fx_display_backing_store, Fx_display_visual_class)
14382 (Fw32_select_font, Fx_display_save_under):
14383 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
14384 (Fx_display_pixel_height, Fx_display_planes)
14385 (Fx_display_color_cells, Fx_server_max_request_size)
14386 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
14387 (Fx_display_save_under): Fix typos in docstrings.
14388
143892007-11-14 Juanma Barranquero <lekktu@gmail.com>
14390
14391 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
14392 corresponding to deleted entries; they are an implementation detail.
14393 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
14394 Remove variables.
14395 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
14396 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
14397 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
14398 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
14399 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
14400 (Fw32_define_rgb_color, Fw32_load_color_file)
14401 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
14402 Fix typos in docstrings.
14403 (Fx_server_version): Reflow docstring.
14404 (Fw32_shell_execute): Doc fixes.
14405
144062007-11-13 Juanma Barranquero <lekktu@gmail.com>
14407
14408 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
14409 if w32_parse_hot_key returned nil.
14410
144112007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
14412
14413 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
14414
144152007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 14416
aac0c6e3
MR
14417 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
14418
14419 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
14420
14421 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
14422 Remove W32_SCROLL_BAR_CLICK_EVENT.
14423
14424 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
14425 Add MULTIMEDIA_KEY_EVENT.
14426
14427 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
14428 (lispy_multimedia_keys) [WINDOWSNT]: New array.
14429 (make_lispy_event) [WINDOWSNT]: Use it to translate
14430 MULTIMEDIA_KEY_EVENT.
14431
14432 * w32term.h (WM_APPCOMMAND): Define if not already.
14433 (GET_APPCOMMAND_LPARAM): Likewise.
14434
14435 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
14436 WM_APPCOMMAND.
14437
14438 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
14439 (syms_of_w32fns): Export and initialize it.
14440 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
14441
144422007-11-09 Chong Yidong <cyd@stupidchicken.com>
14443
14444 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
14445 twice.
14446
14447 * xdisp.c (handle_face_prop): Fix last change.
14448
144492007-11-09 Richard Stallman <rms@gnu.org>
14450
14451 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
14452 not just for after-strings and before-strings.
14453 Call face_for_overlay_string and pass the overlay to it.
14454 (handle_display_prop): Determine whether property came from an overlay.
14455 Pass OVERLAY arg to handle_single_display_spec.
14456 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
14457 (load_overlay_strings): Fill in it->string_overlays.
14458 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
14459
14460 * xfaces.c (face_for_overlay_string): Function renamed from
14461 face_at_buffer_position_no_overlays, and add arg OVERLAY.
14462
14463 * dispextern.h (struct it): New elt string_overlays.
14464 New elt from_overlay, also in stack.
14465 Rearrange a few elements.
14466 (face_for_overlay_string): Decl renamed from
14467 face_at_buffer_position_no_overlays, and add argument.
14468
144692007-11-09 Richard Stallman <rms@gnu.org>
14470
14471 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
14472 to get the base face for an overlay string.
14473
14474 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
14475
14476 * xfaces.c (face_at_buffer_position_no_overlays): New function.
14477
14478 * xdisp.c (handle_stop): Move some code out of loop.
14479
144802007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14481
14482 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
14483 Fix conversion from Lisp object to ATSUFontID.
14484
144852007-11-09 Jason Rumney <jasonr@gnu.org>
14486
14487 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
14488
144892007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14490
14491 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
14492 Don't assume regions are aligned to page boundary.
14493 (print_load_command_name): Add LC_UUID if defined.
14494
144952007-11-09 Richard Stallman <rms@gnu.org>
14496
14497 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
14498
144992007-11-07 Jason Rumney <jasonr@gnu.org>
14500
14501 * s/windows95.h: Remove.
14502
145032007-11-06 Jan Djärv <jan.h.d@swipnet.se>
14504
14505 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
14506 abort with a message on unhandled store_type values.
14507
145082007-11-01 Jan Djärv <jan.h.d@swipnet.se>
14509
14510 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
14511 Remove HAVE_X11R5 and HAVE_X11R4.
14512
145132007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
14514
14515 * Makefile.in: Remove references to sunfns.c and sunfns.o.
14516
145172007-11-01 Johan Bockgård <bojohan@gnu.org>
14518
14519 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
14520 Don't set s->stippled_p here, since it has already been set by
14521 x_set_glyph_string_gc from x_draw_glyph_string.
14522
145232007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
14524
14525 * sunfns.c: Remove file.
14526
14527 * m/sun386.h:
14528 * m/sun2.h:
14529 * m/sparc.h: Remove Sun windows code.
14530
145312007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
14532
14533 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
14534 (init_keyboard): Set current_kboard's window-system to nil.
14535 (tty_read_avail_input): Typo.
14536 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
14537
145382007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
14539
14540 * s/usg5-4.h:
14541 * s/usg5-3.h:
14542 * s/ptx.h:
14543 * m/is386.h:
14544 * m/ibmps2-aix.h:
14545 * Makefile.in: Remove all mentions of X10.
14546
14547 * dispnew.c (syms_of_display): Don't mention version 10.
14548
145492007-10-28 Juanma Barranquero <lekktu@gmail.com>
14550
14551 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
14552 ($(BLD)/abbrev.$(O)): Remove.
14553
145542007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
14555
14556 Rewrite abbrev.c in Elisp.
14557 * image.c (Qcount): Don't declare as extern.
14558 (syms_of_image): Initialize and staticpro `Qcount'.
14559 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
14560 * emacs.c (main): Don't call syms_of_abbrev.
14561 * Makefile.in (obj): Remove abbrev.o.
14562 (abbrev.o): Remove.
14563 * abbrev.c: Remove.
14564
145652007-10-26 Martin Rudalics <rudalics@gmx.at>
14566
14567 * window.c (window_min_size_2): Don't count header-line.
14568
145692007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
14570
14571 * frame.h (struct frame): Move all bit fields after the first bit
14572 field to take advantage of the available space. Group all the
14573 chars together to reduce wasted space due to padding.
14574
145752007-10-26 Juanma Barranquero <lekktu@gmail.com>
14576
14577 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
14578
14579 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
14580 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
14581 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
14582 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
14583 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
14584 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
14585 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
14586 (last_marked, mark_object_loop_halt): Make static.
14587
14588 * frame.c (syms_of_frame) <delete-frame-functions>:
14589 Fix typo in docstring.
14590
145912007-10-25 Juanma Barranquero <lekktu@gmail.com>
14592
14593 * w32.c (init_environment): Fix tiny memory leak.
14594 (w32_get_resource): Remove unused variable `ok'.
14595
145962007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
14597
14598 Make `window-system' into a keyboard-local variable (rather than
14599 frame-local as done originally by multi-tty).
14600
14601 * keyboard.h (struct kboard): Add Vwindow_system.
14602 * keyboard.c (init_kboard): Set a default for Vwindow_system.
14603 (mark_kboards): Mark Vwindow_system.
14604
14605 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
14606 (init_display): Don't set the obsolete `window-system' frame-param.
14607
14608 * xterm.c (x_term_init):
14609 * w32term.c (w32_create_terminal):
14610 * term.c (init_tty): Set Vwindow_system.
14611 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
14612 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
14613
14614 * xfns.c (Fx_create_frame, x_create_tip_frame):
14615 * w32fns.c (Fx_create_frame, x_create_tip_frame):
14616 * macfns.c (Fx_create_frame):
14617 Don't set the obsolete `window-system' frame-param.
14618
14619 * frame.h (Qwindow_system): Remove.
14620 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
14621 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
14622
146232007-10-24 Richard Stallman <rms@gnu.org>
14624
14625 * frame.c (x_figure_window_size): For fullscreen case,
14626 set USPosition | PPosition without clobbering rest of window_prompting.
14627
14628 * keyboard.c (Fcurrent_idle_time): Doc fix.
14629
14630 * print.c (Fwith_output_to_temp_buffer): Doc fix.
14631
146322007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
14633
14634 * process.c (unwind_request_sigio): Only define if __ultrix__.
14635
14636 * callproc.c (child_setup): Remove spurious *.
14637
14638 * lisp.h (Fget_text_property): Declare.
14639 (have_menus_p): Declare it here rather than in sys-dep header files.
14640 * macterm.h (have_menus_p):
14641 * msdos.h (have_menus_p):
14642 * xterm.h (have_menus_p): Remove.
14643
14644 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
14645 (Fmake_variable_frame_local): Just check the variable's const-ness
14646 rather than checking nil or t.
14647
146482007-10-22 Jason Rumney <jasonr@gnu.org>
14649
14650 * w32fns.c: Include math.h.
14651 (w32_abort): Declaration moved to nt/config.nt.
14652
14653 * s/ms-w32.h (HAVE_STDLIB_H): Define.
14654 (abort): Redefinition moved to nt/config.nt.
14655
14656 * m/windowsnt.h: Remove.
14657
146582007-10-22 Juanma Barranquero <lekktu@gmail.com>
14659
14660 * emacs.c (Fdump_emacs): Fix typo in message.
14661 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
14662 <installation-directory>: Reflow docstring.
14663
146642007-10-22 Juri Linkov <juri@jurta.org>
14665
14666 * minibuf.c: Allow minibuffer default to be a list of default values.
14667 With empty input use the first element of this list as returned default.
14668 (string_to_object)
14669 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
14670 (read_minibuf): If defalt is cons, set histstring to its car.
14671 (Fread_string): If default_value is cons, set val to its car.
14672 (Fread_buffer): If def is cons, use its car.
14673 (Fcompleting_read): If defalt is cons, set val to its car.
14674
146752007-10-21 Michael Albinus <michael.albinus@gmx.de>
14676
14677 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
14678
146792007-10-20 Juanma Barranquero <lekktu@gmail.com>
14680
14681 * doc.c (Fdocumentation): Check for advice in all cases.
14682
146832007-10-19 Chong Yidong <cyd@stupidchicken.com>
14684
14685 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
14686
146872007-10-19 Richard Stallman <rms@gnu.org>
14688
14689 * doc.c (Fdocumentation): Check for and handle an advised function.
14690
146912007-10-19 Juanma Barranquero <lekktu@gmail.com>
14692
14693 * process.c (Fset_process_filter): Doc fix.
14694
146952007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
14696
14697 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
14698 which caused key-translation-map to applied repeatedly (thus breaking
14699 double-mode).
14700
147012007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
14702
14703 * xselect.c (x_own_selection, x_handle_selection_clear)
14704 (x_clear_frame_selections):
14705 * w32menu.c (list_of_panes, list_of_items):
14706 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
14707 * textprop.c (validate_plist, interval_has_all_properties)
14708 (interval_has_some_properties, interval_has_some_properties_list)
14709 (add_properties, text_property_list):
14710 * process.c (Fget_buffer_process, list_processes_1, status_notify):
14711 * minibuf.c (Fassoc_string):
14712 * macselect.c (x_own_selection, x_clear_frame_selections)
14713 (Fx_disown_selection_internal):
14714 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
14715 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
14716
147172007-10-17 Chong Yidong <cyd@stupidchicken.com>
14718
14719 * process.c: Link to libs for calling res_init() if available.
14720 (Fmake_network_process): Call res_init() before getaddrinfo or
14721 gethostbyname, if possible.
14722
147232007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
14724
14725 * lread.c (read1): Set pvectype for char_tables.
14726
14727 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
14728 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
14729 Add type checks.
14730 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
14731
14732 * alloc.c (free_misc): Use XMISCTYPE.
14733 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
14734
147352007-10-17 Glenn Morris <rgm@gnu.org>
14736
14737 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
14738 (syms_of_minibuf): Add Qcompletion_ignore_case.
14739 * dired.c (Qcompletion_ignore_case): Change to external.
14740 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
14741 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
14742 (Fread_file_name): Use it rather than intern'ing.
14743
14744 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
14745 (Fread_coding_system): Ignore case of user input.
14746
147472007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14748
14749 * xdisp.c (handle_display_prop): Ignore display specs after
14750 replacing one when string text is being replaced.
14751 (handle_single_display_spec): Pretend as if characters with display
14752 property haven't been consumed only when buffer text is being replaced.
14753
147542007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
14755
14756 * xfns.c (Fx_create_frame, Fx_display_list):
14757 * window.c (window_fixed_size_p, enlarge_window)
14758 (shrink_window_lowest_first):
14759 * macterm.c (init_font_name_table):
14760 * macfns.c (Fx_create_frame, Fx_display_list):
14761 * lread.c (close_load_descs):
14762 * keyboard.c (read_char_x_menu_prompt):
14763 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
14764 * coding.c (code_convert_region_unwind): Test the type of an object
14765 rather than just !NILP before extracting data from it.
14766
14767 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
14768
14769 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
14770 (XMISCANY): New macro.
14771 (XMISCTYPE): Use it.
14772 (struct Lisp_Misc_Any): New type.
14773 (union Lisp_Misc): Use it.
14774 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
14775 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
14776 (find_symbol_value, set_internal, default_value, Fset_default)
14777 (Fmake_variable_buffer_local, Fmake_local_variable)
14778 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
14779 (Flocal_variable_if_set_p, Fvariable_binding_locus):
14780 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
14781 * alloc.c (allocate_buffer): Set the size and tag.
14782 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
14783 Use XMISCANY.
14784 (die): Follow the GNU convention for error messages.
14785 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
14786 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
14787 tag any more.
14788 (set_buffer_internal_1):
14789 * frame.c (store_frame_param):
14790 * eval.c (specbind):
14791 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
14792
14793 * doc.c (Fsnarf_documentation): Simplify.
14794
147952007-10-14 Juanma Barranquero <lekktu@gmail.com>
14796
14797 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
14798 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
14799
148002007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
14801
14802 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
14803
148042007-10-14 Juanma Barranquero <lekktu@gmail.com>
14805
14806 * eval.c (do_autoload): Don't save autoloads.
14807
14808 * data.c (Ffset): Save autoload of the function being set.
14809
148102007-10-07 John Paul Wallington <jpw@pobox.com>
14811
14812 * xfns.c (x_create_tip_frame): Set the `display-type' frame
14813 parameter before setting up faces.
14814
148152007-10-13 Eli Zaretskii <eliz@gnu.org>
14816
14817 * ccl.c (Fregister_code_conversion_map):
14818 * keyboard.c (append_tool_bar_item): Reformat last change.
14819
14820 * lisp.h (eabs): Rename from `abs'. All callers changed.
14821
148222007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
14823
14824 * buffer.c (add_overlay_mod_hooklist):
14825 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
14826 * fontset.c (make_fontset):
14827 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
14828 (append_tool_bar_item):
14829 * macmenu.c (grow_menu_items):
14830 * w32menu.c (grow_menu_items):
14831 * xmenu.c (grow_menu_items): Use larger_vector.
14832
148332007-10-13 Eli Zaretskii <eliz@gnu.org>
14834
14835 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
14836 selected frame'' on MSDOS).
14837
148382007-10-12 Martin Rudalics <rudalics@gmx.at>
14839
14840 * frame.c (Qexplicit_name): New variable.
14841 (x_report_frame_params): Report it in parameter alist.
14842 (syms_of_frame): Intern and staticpro it.
14843
148442007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
14845
14846 * macfns.c (x_create_tip_frame): Set terminal for frame.
14847
148482007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
14849
14850 * frame.c (Qenvironment): Remove.
14851 (syms_of_frame) <Qenvironment>: Don't initialize.
14852 (Fdelete_frame): Don't treat the `environment' param specially.
14853 * frame.h (Qenvironment): Don't declare.
14854 * callproc.c (set_initial_environment): Don't set unused frame param.
14855
14856 * frame.c (Fframe_with_environment): Remove.
14857 (syms_of_frame) <Sframe_with_environment>: Don't declare.
14858
14859 * lisp.h (Fframe_with_environment): Don't declare.
14860
148612007-10-10 Juanma Barranquero <lekktu@gmail.com>
14862
14863 * indent.c (indent_tabs_mode, last_known_column)
14864 (last_known_column_modified): Make static.
14865 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
14866
148672007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
14868
14869 * puresize.h (BASE_PURESIZE): Increase to 1170000.
14870
148712007-10-09 Jason Rumney <jasonr@gnu.org>
14872
14873 * w32term.c (x_set_window_size): Disable code that attempts to tell
14874 Lisp code about a size change before it actually happens.
14875
148762007-10-09 Richard Stallman <rms@gnu.org>
14877
14878 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
14879 return HANDLED_RETURN.
14880
148812007-10-08 Martin Rudalics <rudalics@gmx.at>
14882
14883 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
14884 when there's an unread command event.
14885
14886 * frame.c (focus_follows_mouse): Move here from frame.el to allow
14887 window autoselection act appropriately when leaving selected frame.
14888 (syms_of_frame): Initialize focus_follows_mouse.
14889 * frame.h (focus_follows_mouse): Extern it.
14890 * macterm.c (XTread_socket): When focus_follows_mouse is nil
14891 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
14892 * msdos.c (dos_rawgetc): Likewise.
14893 * w32term.c (w32_read_socket): Likewise.
14894 * xterm.c (handle_one_xevent): Likewise.
14895 * xdisp.c (syms_of_xdisp): In doc-string of
14896 mouse-autoselect-window mention focus-follows-mouse.
14897
148982007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14899
14900 * macterm.c (mac_load_query_font): Fix missing return value.
14901 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
14902 Add BLOCK_INPUT.
14903
149042007-10-08 Richard Stallman <rms@gnu.org>
14905
14906 * xdisp.c (get_window_cursor_type): Implement documented behavior
14907 for cursor-in-non-selected-windows = t.
14908
149092007-10-08 Jason Rumney <jasonr@gnu.org>
14910
14911 * w32.c (w32_get_resource): Always close registry keys.
14912
149132007-10-08 Jason Rumney <jasonr@gnu.org>
14914
14915 * makefile.w32-in (LIBS): Add COMCTL32.
14916
14917 * w32fns.c (globals_of_w32fns): Init common controls.
14918
149192007-10-08 Richard Stallman <rms@gnu.org>
14920
14921 * image.c (our_memory_buffer): Rename from omfib_buffer.
14922
149232007-10-08 Richard Stallman <rms@gnu.org>
14924
14925 * buffer.c (Foverlays_at): Doc fix.
14926
149272007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
14928
14929 * fns.c (Fplist_put): Preserve uneven tail data.
14930
149312007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
14932
14933 * termhooks.h (enum event_kind): Remove trailing comma.
14934
14935 * frame.h (enum): Remove trailing comma.
14936
149372007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
14938
14939 * w32proc.c (delete_child): Don't terminate threads of zombies.
14940
149412007-10-08 Martin Rudalics <rudalics@gmx.at>
14942
14943 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
14944
14945 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
14946 last-repeatable-command.
14947 (init_kboard): Initialize Vlast_repeatable_command.
14948 (command_loop_1): Set it to real_this_command unless that was
14949 bound to an input event.
14950 (mark_kboards): Mark it.
14951
149522007-10-08 Richard Stallman <rms@gnu.org>
14953
14954 * eval.c (condition-case): Doc fix.
14955
149562007-10-08 Masatake YAMATO <jet@gyve.org>
14957
14958 * xfaces.c (tty_supports_face_attributes_p): Fix code
14959 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
14960 was copied and not edited.
14961
149622007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
14963
14964 Add new `input-decode-map' keymap and use it for terminal
14965 escape sequences.
14966 * keyboard.h (struct kboard): Add Vinput_decode_map.
14967 Remove Vlocal_key_translation_map.
14968 * keyboard.c (read_key_sequence): Add support for input-decode-map.
14969 (init_kboard): Init input-decode-map.
14970 Replace local-key-translation-map back with key-translation-map.
14971 (syms_of_keyboard): Declare input-decode-map.
14972 Remove local-key-translation-map. Update docstrings.
14973 (mark_kboards): Mark Vinput_decode_map.
14974 Don't mark Vlocal_key_translation_map.
14975 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
14976 Replace local-key-translation-map back with key-translation-map.
14977 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
14978 Bind in input-decode-map rather than function-key-map.
14979
14980 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
14981 This was made redundant by the previous introduction of XSETPVECTYPE.
14982
149832007-10-09 Richard Stallman <rms@gnu.org>
14984
14985 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
14986
149872007-09-29 Richard Stallman <rms@gnu.org>
14988
14989 * eval.c (internal_condition_case_2, internal_condition_case_1)
14990 (internal_condition_case): Reenable abort if x_catching_errors ()
14991 to see if that really happens and why.
14992
149932007-10-06 Andreas Schwab <schwab@suse.de>
14994
14995 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
14996
149972007-10-04 Juanma Barranquero <lekktu@gmail.com>
14998
14999 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
15000
150012007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
15002
15003 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
15004
150052007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
15006
15007 * window.h (struct window):
15008 * window.c (struct save_window_data, struct saved_window):
15009 * termhooks.h (struct terminal):
15010 * process.h (struct Lisp_Process):
15011 * frame.h (struct frame):
15012 * buffer.h (struct buffer):
15013 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
15014 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
15015 The size field of (pseudo)vectors is now unsigned.
15016 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
15017
15018 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
15019 Turn `count' into an integer.
15020
15021 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
15022 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
15023 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
15024 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
15025 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
15026
15027 * alloc.c (allocate_pseudovector): New fun.
15028 (ALLOCATE_PSEUDOVECTOR): New macro.
15029 (allocate_window, allocate_terminal, allocate_frame)
15030 (allocate_process): Use it.
15031 (mark_vectorlike): New function.
15032 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
15033 (mark_terminals): Use it.
15034 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
15035 (Fmake_byte_code): Use XSETPVECTYPE.
15036
15037 * frame.c (Fframe_parameters): Minor simplification.
15038
15039 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
15040
15041 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
15042
15043 * buffer.c (Fget_buffer_create, init_buffer_once):
15044 * lread.c (defsubr):
15045 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
15046
15047 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
15048 defined differently in the m/*.h files.
15049 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
15050 (XSETPVECTYPE): New macro.
15051 (XSETPSEUDOVECTOR): Use it.
15052
15053 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
15054 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
15055
15056 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
15057 * lread.c (defvar_per_buffer):
15058 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
15059
15060 * window.c (candidate_window_p): Only consider as visible frames that
15061 are on the same terminal.
15062
15063 * m/ibms390x.h (MARKBIT): Remove unused macro.
15064
150652007-10-01 Juanma Barranquero <lekktu@gmail.com>
15066
15067 * lread.c (Fload): Fix typo in docstring.
15068
150692007-10-01 Michaël Cadilhac <michael@cadilhac.name>
15070
15071 * floatfns.c (Fexpt): Manually check for overflows, so that a power
15072 of a non-zero value can't yield zero.
15073
150742007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
15075
15076 * term.c (term_clear_mouse_face, term_mouse_highlight)
15077 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
15078
15079 * print.c (safe_debug_print): Use XHASH.
15080
15081 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
15082 Lisp elements such as tags.
15083 (XHASH): New macro.
15084 (EQ): Use it.
15085 (SREF, SSET, STRING_COPYIN): Use SDATA.
15086 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
15087
15088 * alloc.c (mark_terminal): Remove left-over declaration.
15089 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
15090 (allocate_vectorlike): Remove type argument. Adjust callers.
15091 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
15092 Only handle the one remaining MEM_TYPE_VECTORLIKE.
15093
15094 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
15095 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
15096 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
15097 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
15098 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
15099 Use them.
15100
15101 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
15102 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
15103 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
15104
151052007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
15106
15107 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
15108 loaded by default.
15109
151102007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
15111
15112 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
15113 on this tty.
15114 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
15115
15116 * term.c (mouse_face_window): Rename from Qmouse_face_window.
15117 Update all users.
15118 (handle_one_term_event): Use Gpm_DrawPointer.
15119 (Fgpm_mouse_start): Rename from Fterm_open_connection.
15120 Signal errors instead of returning nil. Always return nil.
15121 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
15122 Make it a noop if gpm-mouse was not activated.
15123 (syms_of_term): Update names.
15124
151252007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
15126
15127 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
15128 (init_sys_modes): Check that gpm_tty is the current tty.
15129
15130 * alloc.c (allocate_terminal): Set the vector size to only count the
15131 lisp fields. Initialize those to nil.
15132 (mark_object): Don't treat terminals specially.
15133 (mark_terminal): Remove.
15134 (mark_terminals): Use mark_object instead.
15135
15136 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
15137 the GC to the beginning.
15138
15139 * indent.h:
15140 * indent.c: Use EMACS_INT for ints coming from Elisp data.
15141
15142 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
15143
151442007-09-25 Jason Rumney <jasonr@gnu.org>
15145
15146 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
15147
15148 * w32console.c (create_w32cons_output): Remove.
15149
15150 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
15151
15152 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
15153 (reset_sys_modes): Use reset_terminal_modes_hook.
15154
151552007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
15156
15157 * eval.c (do_autoload): Don't output any message.
15158
151592007-09-24 Juri Linkov <juri@jurta.org>
15160
15161 * emacs.c (standard_args): Change priority of "--no-splash"
15162 from 40 to 3. Add "--no-desktop" with the same priority.
15163
151642007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
15165
15166 * alloc.c (gc_sweep): Check cons cell mark bits word by word
15167 and optimize the case where they are all 1.
15168
151692007-09-23 Johannes Weiner <hannes@saeurebad.de>
15170
15171 * lisp.h (abs): Define if not defined.
15172 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
15173 Don't define `abs', since it's defined in lisp.h.
15174
151752007-09-22 Eli Zaretskii <eliz@gnu.org>
15176
15177 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
15178 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
15179 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
15180 (init_tty): Use DEV_TTY instead of "/dev/tty".
15181 [WINDOWSNT]: No need to protect from NAME arg being null.
15182
151832007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
15184
15185 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
15186 up the tty state.
15187
151882007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
15189
15190 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
15191 (gpm_tty): Change its type.
15192 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
15193 (gpm_tty): Change its type and initialize it.
15194 (Fterm_open_connection): Check the frame is indeed a tty.
15195 Use the new gpm_tty.
15196 (Fterm_close_connection): Use the new gpm_tty.
15197 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
15198 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
15199
152002007-09-21 Juanma Barranquero <lekktu@gmail.com>
15201
15202 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
15203 underline_color, to draw strike-through.
15204
152052007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
15206
15207 * lisp.h (allocate_terminal): Declare.
15208
15209 * window.c (candidate_window_p): Consider frames that are being placed
15210 by the user as somewhere between visible and iconified.
15211 (window_loop): Prefer windows on the current frame.
15212 (Fselect_window): Move the use of select-frame to the beginning so we
15213 can just delegate all the work (it'll call us back anyway).
15214
15215 * frame.c (Qdisplay_environment_variable):
15216 * frame.h (Qdisplay_environment_variable): Delete.
15217
15218 * .gdbinit (xbacktrace): Print the arg's address rather than the value
15219 of the first arg, since that value may be a union.
15220
15221 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
15222 parameter rather than Qdisplay_environment_variable. If all else
15223 fails, look for DISPLAY in initial-environment.
15224
152252007-09-21 Glenn Morris <rgm@gnu.org>
15226
15227 * Makefile.in (emacstool): Remove target.
15228 (lisp, shortlisp): Remove termdev.elc.
15229
152302007-09-21 Markus Triska <markus.triska@gmx.at>
15231
15232 * xterm.c (x_delete_display): Compile session management conditionally.
15233
152342007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
15235
15236 * callproc.c (getenv_internal_1): New function.
15237 (getenv_internal): Use it.
15238 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
15239
15240 * terminal.c (get_terminal): Don't accept ints to represent terminals.
15241 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
15242 (Fset_terminal_parameter): Work with dead terminals as well.
15243 (Fmodify_terminal_parameters): Remove.
15244
15245 * terminal.c (get_terminal): Handle terminals.
15246 Make sure the terminal returned is live.
15247 (create_terminal): Use allocate_terminal.
15248 (mark_terminals): Move to alloc.c.
15249 (delete_terminal): Use terminal->name as liveness status.
15250 NULL out fields after freeing their contents.
15251 Don't deallocate the object.
15252 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
15253 rather than an int.
15254 (Fterminal_live_p): Accept non-integer arguments.
15255 (Fterminal_list): Return terminal objects rather than an ints.
15256
15257 * alloc.c (enum mem_type): New member for `terminal' objects.
15258 (allocate_terminal): New function.
15259 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
15260 Handle terminals.
15261 (mark_terminal): New fun.
15262 (mark_terminals): Move from terminal.c.
15263
15264 * term.c (get_tty_terminal): Don't treat output_initial specially.
15265 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
15266 (delete_tty): Use terminal->name as liveness status.
15267
15268 * termhooks.h (struct terminal): Make it into a pseudovector.
15269 Remove `deleted' replaced by checking `name's nullness.
15270
15271 * print.c (print_object): Handle terminals.
15272
15273 * lisp.h (enum pvec_type): New `terminal' pseudovector.
15274 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
15275
15276 * frame.c (make_terminal_frame):
15277 * keyboard.c (tty_read_avail_input):
15278 * w32term.c (x_delete_terminal):
15279 * xfns.c (Fx_create_frame, x_create_tip_frame):
15280 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
15281
152822007-09-20 Glenn Morris <rgm@gnu.org>
15283
15284 * process.c (Fmake_network_process): Doc fix.
15285
152862007-09-19 Jason Rumney <jasonr@gnu.org>
15287
15288 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
15289
152902007-09-19 Michaël Cadilhac <michael@cadilhac.name>
15291
15292 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
15293 Fix a C warning regarding variable constness.
15294
15295 * xterm.c (handle_one_xevent): Fix a C warning.
15296
152972007-09-18 Jason Rumney <jasonr@gnu.org>
15298
15299 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
15300
153012007-09-17 Jan Djärv <jan.h.d@swipnet.se>
15302
15303 * gtkutil.c (gdpy_def): New variable.
15304 (xg_initialize): Initialize gdpy_def.
15305 (xg_display_close): If no other display exists, set gdpy_def to a
15306 new connection.
15307
153082007-09-16 Jan Djärv <jan.h.d@swipnet.se>
15309
15310 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
15311 when we have no file name for the icon.
15312 (xg_tool_bar_expose_callback): Remove.
15313 (xg_create_tool_bar): Don't connect expose signal to
15314 xg_tool_bar_expose_callback.
15315 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
15316
153172007-09-16 Andreas Schwab <schwab@suse.de>
15318
15319 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
15320 values instead of zapping them.
15321
153222007-09-14 Glenn Morris <rgm@gnu.org>
15323
15324 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
15325 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
15326 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
15327 scope and rename to omfib_buffer for clarity.
15328 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
15329
153302007-09-14 Kenichi Handa <handa@m17n.org>
15331
15332 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
15333
153342007-09-13 Jason Rumney <jasonr@gnu.org>
15335
15336 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
15337
15338 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
15339
15340 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
15341 (mac_term_init): Call here instead, passing rif.
15342
153432007-09-13 Glenn Morris <rgm@gnu.org>
15344
15345 * s/hpux.h: No longer define `static' as nothing.
15346
153472007-09-13 Johan Bockgård <bojohan@gnu.org>
15348
15349 * callint.c (Fcall_interactively): Remove unused var `fun'.
15350
153512007-09-12 Romain Francoise <romain@orebokech.com>
15352
15353 * window.c (prefer_window_split_horizontally, display_buffer):
15354 Revert 2007-09-08 change.
15355
153562007-09-12 Glenn Morris <rgm@gnu.org>
15357
15358 * alloca.c: Remove file.
15359 * Makefile.in (alloca): Do not undef.
15360 (allocaobj, alloca.o): Remove.
15361 (otherobj): Remove allocaobj.
15362 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
15363 * regex.c (C_ALLOCA): Remove all references and code that was only
15364 used when this was defined.
15365 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
15366 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
15367 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
15368
15369 * Makefile.in (SOURCES, unlock, relock): Delete.
15370
15371 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
15372 (menu_grab_callback): All uses changed.
15373
15374 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
15375 (x_reply_selection_request): All uses changed.
15376
153772007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
15378
15379 * lread.c (load_warn_old_style_backquotes): Change message to look
15380 better when it appears in the middle of byte-compiler messages.
15381
153822007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
15383
15384 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
15385
15386 * xterm.c (x_create_terminal): Add comment.
15387
15388 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
15389
153902007-09-10 Richard Stallman <rms@gnu.org>
15391
15392 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
15393
153942007-09-10 Michaël Cadilhac <michael@cadilhac.name>
15395
15396 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
15397 (DEFUN): Document `intspec', use it instead of `prompt'.
15398
15399 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
15400
15401 * data.c (Finteractive_form): If the interactive specification starts
15402 with a `(', use it as a Lisp form.
15403
15404 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
15405 name and file modes.
15406
15407 * callint.c (Fcall_interactively): Comment fixes.
15408
154092007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
15410
15411 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
15412 and compiled functions.
15413
154142007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
15415
15416 * window.c (prefer_window_split_horizontally): New variable.
15417 (display_buffer): Consider splitting window horizontally depending
15418 on prefer_window_split_horizontally.
15419
154202007-09-08 Eli Zaretskii <eliz@gnu.org>
15421
15422 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
15423
154242007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
15425
15426 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
15427
15428 * frame.c (x_set_frame_parameters): Check number is positive before
15429 using XFASTINT.
15430
15431 * window.c (freeze_window_start): Don't presume selected_window holds
15432 a window object.
15433 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
15434
154352007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
15436
15437 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
15438
154392007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
15440
15441 * window.c (Vsplit_window_preferred_function): New var.
15442 (Fdisplay_buffer): Use it.
15443 (syms_of_window): Export, and initialize it.
15444
154452007-09-06 Pixel <pixel@mandriva.com> (tiny change)
15446
15447 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
15448
154492007-09-06 Glenn Morris <rgm@gnu.org>
15450
15451 * gtkutil.c (menu_grab_callback) <cnt>:
15452 * xselect.c (x_reply_selection_request) <cnt>: Move static
15453 variable to file scope.
15454
154552007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
15456
15457 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
15458 consistent values of selected_frame and selected_window.
15459
154602007-09-04 Jason Rumney <jasonr@gnu.org>
15461
15462 * w32console.c (initialize_w32_display): Zero unused hooks.
15463
154642007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
15465
15466 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
15467 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
15468
154692007-09-04 Jason Rumney <jasonr@gnu.org>
15470
15471 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
15472 in w32console.c. Set up input. Remove XXX comments that have been
15473 confirmed as correct.
15474
15475 * s/ms-w32.h (MULTI_KBOARD): Define.
15476
15477 * w32console.c (one_and_only_w32cons): Remove.
15478 (initialize_w32_display): Take terminal argument.
15479
15480 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
15481 initialize_w32_display.
15482 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
15483
15484 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
15485
15486 * keyboard.c (discard_mouse_events): Discard it.
15487 (make_lispy_event): Translate it to a lisp event.
15488 (lispy_wheel_names): Add wheel-left and right events.
15489 (syms_of_keyboard): Enlarge wheel_syms.
15490
15491 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
15492 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
15493
15494 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
15495
15496 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
15497 from WM_MOUSEHWHEEL.
15498 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
15499
15500 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
15501 terminal.
15502
15503 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
15504 keyboard for the terminal.
15505
155062007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
15507
15508 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
15509 (Vresume_tty_hook): Rename from Vresume_tty_functions.
15510 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
15511 and resume-tty-function to resume-tty-hook.
15512 (Fsuspend_tty, Fresume_tty): Use new names.
15513
155142007-09-02 Jan Djärv <jan.h.d@swipnet.se>
15515
15516 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
15517 if it starts with "n:".
15518
155192007-08-31 Jan Djärv <jan.h.d@swipnet.se>
15520
15521 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
15522
155232007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
15524
15525 * frame.h:
15526 * frame.c (Qterm_environment_variable): Remove.
15527 (syms_of_frame): Don't init and staticpro it.
15528
15529 * callproc.c (getenv_internal): Remove special case for $TERM.
15530
15531 * callproc.c (Vinitial_environment): New variable.
15532 (set_initial_environment): Initialize it.
15533 (syms_of_callproc): Declare it.
15534 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
15535 TERM under which a process runs is never related to the TERM in which
15536 Emacs is running.
15537
155382007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
15539
15540 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
15541 * s/darwin.h: ... do it here.
15542
155432007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
15544
15545 * lisp.h (set_initial_environment): Rename from set_global_environment.
15546
15547 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
15548 removed by mistake on the multi-tty branch.
15549
15550 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
15551 (Fmodify_frame_parameters): Return a value.
15552
15553 * image.c (png_load): Comment-out var only used in commented-out code.
15554
15555 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
15556 before passing it to mark_object.
15557
15558 * xfaces.c (internal_resolve_face_name): Return a value.
15559 (internal_resolve_face_name, resolve_face_name_error): Comment out.
15560
15561 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
15562 (x_icon): Comment-out var only used in commented-out code.
15563
155642007-08-29 Romain Francoise <romain@orebokech.com>
15565
15566 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
15567 QUIT hasn't been provided.
15568
155692007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
15570
15571 * callproc.c (child_setup, getenv_internal): Use the
15572 display-environment-variable and term-environment-variable frame params.
15573 (set_initial_environment): Initialise Vprocess_environment.
15574
15575 * config.in: Disable multi-keyboard support on a mac.
15576
15577 * frame.c (Qterm_environment_variable)
15578 (Qdisplay_environment_variable): New variables.
15579 (syms_of_frame): Intern and staticpro them.
15580 (Fmake_terminal_frame): Disable output method test.
15581
15582 * frame.h: Declare them here.
15583
15584 * macfns.c (x_set_mouse_color): Get rif from the frame.
15585 (x_set_tool_bar_lines): Don't use updating_frame.
15586 (mac_window): Add 2 new parameters for consistency with other systems.
15587 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
15588 frame parameters following what is done in X11 and w32. Don't use
15589 FRAME_MAC_DISPLAY_INFO.
15590 (Fx_open_connection, start_hourglass): Remove window-system check.
15591 (x_create_tip_frame): Get the keyboard from the terminal.
15592
15593 * macmenu.c: Reorder includes.
15594 (Fx_popup_menu): Use terminal specific mouse_position_hook.
15595
15596 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
15597 terminal parameter.
15598 (x_clear_frame): Add a frame parameter.
15599 (note_mouse_movement): Get rif from the frame.
15600 (mac_term_init): Initialize the terminal.
15601 (mac_initialize): Make static and move terminal initialization ...
15602 (mac_create_terminal): ... to this new function.
15603
15604 * macterm.h (struct mac_display_info): Add terminal.
15605 (mac_initialize): Delete declaration.
15606
15607 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
15608
15609 * sysdep.c: Comment out text after #endif.
15610
15611 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
15612 is defined. Better initialize ttys in windows. Use terminal
15613 specific mouse_position_hook.
15614
15615 * termhooks.h (union display_info): Add mac_display_info.
15616
15617 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
15618 Set the default minibuffer frame, window_system and the rest of the
15619 frame parameters following what is done in X11.
15620
15621 * w32term.c (w32_initialize): Make static.
15622
15623 * xselect.c (x_handle_selection_clear): Only access
15624 terminal->kboard when MULTI_KBOARD is defined.
15625
15626 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
15627 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
15628
156292007-08-29 Jason Rumney <jasonr@gnu.org>
15630
15631 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
15632 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
15633
15634 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
15635 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
15636
15637 * keyboard.c (restore_kboard_configuration): Only define when
15638 MULTI_KBOARD defined.
15639
15640 * makefile.w32-in: Update dependancies from Makefile.in.
15641 (OBJ1): Add terminal.$(O)
15642
15643 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
15644 Don't define function body.
15645 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
15646
15647 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
15648
15649 * w32.c (request_sigio, unrequest_sigio): Remove.
15650
15651 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
15652 (w32con_clear_frame, w32con_clear_end_of_line)
15653 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
15654 (w32con_delete_glyphs, w32con_set_terminal_window)
15655 (scroll_line, w32_sys_ring_bell): Add frame arg.
15656 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
15657 Add terminal arg.
15658 (PICK_FRAME): Remove.
15659 (w32con_write_glyphs): Use frame specific terminal coding.
15660 (one_and_only_w32cons): New global variable.
15661 (initialize_w32_display): Use it for storing hooks.
15662 (create_w32cons_output): New function.
15663
15664 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
15665 arg a frame.
15666
15667 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
15668 Set window_system.
15669 (x_set_tool_bar_lines): Don't use updating_frame.
15670 (Fx_create_frame): Set terminal and ref count.
15671 (Fx_open_connection): Remove window-system check.
15672
15673 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
15674
15675 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
15676 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
15677 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
15678 Add frame arg.
15679 (x_delete_terminal, w32_create_terminal): New functions.
15680 (w32_term_init): Create a terminal.
15681 (w32_initialize): Move terminal specific initialization to
15682 w32_create_terminal.
15683
15684 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
15685 (w32_clear_rect, w32_clear_area): Use background from frame.
15686 (w32_display_info): Add terminal.
15687 (w32_sys_ring_bell, x_delete_display): Declare here.
15688
15689 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
15690
15691 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
15692
156932007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
15694
15695 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
15696 Fix get_named_tty calls for the controlling tty.
15697
156982007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
15699
15700 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
15701
157022007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
15703
15704 * term.c (tty_insert_glyphs): Add missing first parameter.
15705
157062007-08-29 Károly Lőrentey <karoly@lorentey.hu>
15707
15708 * buffer.c (Fbuffer_list, Fbury_buffer):
15709 Take frame->buried_buffer_list into account.
15710
15711 * cm.c (current_tty): New variable, for cmputc().
15712 (cmputc): Use it.
15713 (cmcheckmagic): Add tty parameter, look up terminal streams there.
15714 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
15715 (cmgoto): Add tty parameter. Pass it on to calccost().
15716 Use emacs_tputs() instead of tputs().
15717
15718 * cm.h (emacs_tputs): New macro to set current_tty, and then call
15719 tputs().
15720 (current_tty): New variable, for cmputc().
15721 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
15722
15723 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
15724 (internal_condition_case, internal_condition_case_1)
15725 (internal_condition_case_2): Don't abort when x_catching_errors.
15726
15727 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
15728 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
15729 prevent crashes caused by bogus longjmps in read_char.
15730
15731 * keymap.h (Fset_keymap_parent): Add EXFUN.
15732
15733 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
15734 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
15735 Remove redundant definition.
15736
15737 * macfns.c (x_set_mouse_color, x_make_gc):
15738 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15739
15740 * w32term.c (x_free_frame_resources):
15741 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15742 (w32_initialize): Use the accessor macros for terminal characteristics.
15743
15744 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
15745 Use the accessor macros for terminal characteristics.
15746 * msdos.c (internal_terminal_init): Use the accessor macros for
15747 terminal characteristics.
15748 (ScreenVisualBell, internal_terminal_init):
15749 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15750
15751 * termopts.h (no_redraw_on_reenter): Declare.
15752
15753 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
15754 (mark_terminals, mark_ttys): Declare.
15755 (Fgarbage_collect): Call them.
15756 (mark_object): Mark buried_buffer_list.
15757
15758 * prefix-args.c: Include stdlib.h for exit.
15759
15760 * syssignal.h: Add comment.
15761
15762 * indent.c: Include stdio.h.
15763
15764 * window.h (Vinitial_window_system): Declare.
15765 (Vwindow_system): Delete declaration.
15766
15767 * fontset.c (Finternal_char_font): Use FRAME_RIF.
15768
15769 * image.c (lookup_image): Don't initialize `c' until the xasserts
15770 have been run.
15771
15772 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
15773 FRAME_FOREGROUND_PIXEL.
15774
15775 * print.c (print_preprocess): Don't lose print_depth levels while
15776 iterating.
15777
15778 * widget.c (update_from_various_frame_slots):
15779 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15780
15781 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
15782 frames.
15783 (window_internal_height): Remove bogus make_number call.
15784 (init_window_once): Call make_terminal_frame with two zero parameters.
15785
15786 * fileio.c (Fread_file_name): Update comment.
15787
15788 * callint.c (Fcall_interactively):
15789 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
15790 Make sure it is correctly unwound.
15791
15792 * xsmfns.c (x_session_close): New function.
15793
15794 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
15795 Delete declarations.
15796
15797 * xterm.h: Remove declaration for x_fully_uncatch_errors.
15798 (x_output): Remove background_pixel and foreground_pixel fields.
15799 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
15800 (x_delete_device, x_session_close): Declare.
15801
15802 * lread.c: Include setjmp.h. Update declaration of `read_char'.
15803 (read_filtered_event): Call `read_char' with a local
15804 `wrong_kboard_jmpbuf'.
15805
15806 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
15807 Don't call single_kboard_state. Use FRAME_RIF.
15808
15809 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
15810 systems.
15811
15812 * lisp.h (set_process_environment): Rename to `set_global_environment'.
15813 (Fframe_with_environment, Fset_input_meta_mode)
15814 (Fset_quit_char): EXFUN.
15815 (x_create_device, tty_output, terminal, tty_display_info): Declare.
15816 (init_sys_modes, reset_sys_modes): Update prototypes.
15817 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
15818
15819 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
15820 Vlocal_key_translation_map, and Vkeyboard_translate_table.
15821 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
15822 Delete declarations.
15823 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
15824 (temporarily_switch_to_single_kboard, tty_read_avail_input):
15825 New declarations.
15826
15827 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
15828 already does that during init_display(). Call syms_of_keymap
15829 before syms_of_keyboard. Call `syms_of_terminal'.
15830 Call set_initial_environment, not set_process_environment.
15831 (shut_down_emacs): Call reset_all_sys_modes() instead of
15832 reset_sys_modes().
15833
15834 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
15835 (internal_resolve_face_name, resolve_face_name_error): New functions.
15836 (resolve_face_name): Protect against loops and errors thrown by Fget.
15837 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
15838 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
15839
15840 * scroll.c: Replace CURTTY() with local variables throughout the
15841 file (where applicable).
15842 (calculate_scrolling, calculate_direct_scrolling)
15843 (scrolling_1, scroll_cost): Use the accessor macros for terminal
15844 characteristics.
15845
15846 * keymap.c (Vfunction_key_map): Remove.
15847 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
15848 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
15849 (Vkey_translation_map): Remove.
15850 (syms_of_keymap): Remove DEFVAR for key-translation-map.
15851 (Fdescribe_buffer_bindings)
15852 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
15853 Update for terminal-local key-translation-map.
15854
15855 * Makefile.in (callproc.o): Update dependencies.
15856 (lisp, shortlisp): Add termdev.elc.
15857 (obj): Add terminal.o.
15858 (terminal.o): Add dependencies.
15859 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
15860 (data.o, fns.o): Add termhooks.h dependency.
15861 (SOME_MACHINE_LISP): Add dnd.elc.
15862 (minibuf.o): Fix typo.
15863 Update dependencies.
15864
15865 * data.c (do_symval_forwarding, store_symval_forwarding)
15866 (find_symbol_value): Use the selected frame's keyboard, not
15867 current_kboard.
15868
15869 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
15870 Vwindow_system.
15871
15872 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
15873 Fmenu_bar_open.
15874 (syms_of_xmenu): Update defsubr.
15875 (mouse_position_for_popup, Fx_popup_menu)
15876 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
15877 (set_frame_menubar, free_frame_menubar)
b97439ce 15878 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
15879 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
15880 an X frame.
15881
15882 * xselect.c (x_own_selection): Abort if not an X frame.
15883 (some_frame_on_display): Check if it is an X frame.
15884 (x_handle_selection_clear): Deal with MULTI_KBOARD.
15885
15886 * coding.c: Include frame.h and termhooks.h.
15887 (terminal_coding, keyboard_coding): Delete.
15888 (Fset_terminal_coding_system_internal)
15889 (Fset_keyboard_coding_system_internal)
15890 (Fkeyboard_coding_system)
15891 (Fterminal_coding_system): Add a terminal parameter.
15892 Get terminal_coding from the terminal.
15893 (init_coding_once): Don't call setup_coding_system here.
15894
15895 * dispextern.h (set_scroll_region, turn_off_insert)
15896 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
15897 (tty_clear_end_of_line, tty_setup_colors)
15898 (delete_tty, updating_frame)
15899 (produce_special_glyphs, produce_glyphs, write_glyphs)
15900 (insert_glyphs): Remove.
15901 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
15902 (tty_turn_off_highlight, get_tty_size): Add declaration.
15903 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
15904
15905 * frame.h (enum output_method): Add output_initial.
15906 (struct x_output): Delete.
15907 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
15908 Access foreground_pixel and background_pixel directly from the frame.
15909 (tty_display): Delete.
15910 (struct frame): Add buried_buffer_list, foreground_pixel,
15911 background_pixel and terminal. Delete kboard.
15912 (union output_data): Add tty.
15913 (FRAME_KBOARD): Get the kboard from the terminal.
15914 (FRAME_INITIAL_P): New macro.
15915 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
15916 (Qterm_environment_variable, Qdisplay_environment_variable)
15917 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
15918 New declarations.
15919
15920 * termchar.h (tty_output, tty_display_info): New structures.
15921 (tty_list): Declare.
15922 (FRAME_TTY, CURTTY): New macros.
15923 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
15924 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
15925 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
15926 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
15927
15928 * callproc.c: Include frame.h and termhooks.h, for terminal
15929 parameters.
15930 (add_env): New function.
15931 (child_setup): Use it.
15932 (child_setup, getenv_internal): Handle the new Vprocess_environment.
15933 (getenv_internal): Fix get_terminal_param call.
15934 (Fgetenv_internal, egetenv): Update doc.
15935 (syms_of_callproc): Initialize Vprocess_environment to nil.
15936 Register and initialize them. Remove obsolete defvars. Update doc
15937 strings.
15938 (child_setup): Handle Vlocal_environment_variables.
15939 (getenv_internal): Add terminal parameter.
15940 Handle Vlocal_environment_variables.
15941 (Fgetenv_internal): Add terminal parameter.
15942 (child_setup, getenv_internal, Fgetenv_internal): Store the local
15943 environment in a frame (not terminal) parameter. Update doc strings.
15944 (set_initial_environment): Rename from set_global_environment.
15945 Store Emacs environment in initial frame parameter.
15946
15947 * xdisp.c (redisplay_internal): Update references to
15948 `previous_terminal_frame'.
15949 (display_mode_line, Fformat_mode_line): Replace calls to
15950 `push_frame_kboard' with `push_kboard'.
15951 (get_glyph_string_clip_rects): Add extra parentheses and
15952 braces to prevent compiler warnings.
15953 (calc_pixel_width_or_height): Add xassert to check that the
15954 frame is alive. Don't call `lookup_image' on a termcap frame.
15955 (message2_nolog, message3_nolog, redisplay_internal)
15956 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
15957 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
15958 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
15959 (Fx_display_pixel_width, Fx_display_pixel_height)
15960 (Fx_display_planes, Fx_display_color_cells)
15961 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
15962 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
15963 (Fx_display_backing_store, Fx_display_visual_class)
15964 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
15965 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
15966
15967 * xfns.c (x_set_foreground_color x_set_background_color)
15968 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
15969 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15970 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
15971 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
15972 terminal that is being deleted.
15973 (Fx_create_frame): Use `store_frame_param' to set `window-system'
15974 frame parameter, and make sure it overrides any user-supplied setting.
15975 (Fx_close_connection, Fx_synchronize): Unify argument names with
15976 the rest of the DEFUNs.
15977
15978 * dispnew.c (Fsend_string_to_terminal): Update call to
15979 `get_tty_terminal'.
15980 (Fredraw_frame, Fsend_string_to_terminal)
15981 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
15982 FRAME_TERMCAP_P and FRAME_TTY.
15983 (window_change_signal): Don't believe width/height values that are
15984 impossibly small.
15985 (Vinitial_window_system): Rename from Vwindow_system.
15986 (termscript, Wcm, rif): Delete.
15987
15988 * termhooks.h (struct terminal): New struct containing the
15989 previously global text display hooks and new members NAME,
15990 DELETED and PARAM_ALIST.
15991 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
15992 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
15993 (FRAME_RIF): New macros.
15994 (get_terminal_param, get_device): New declarations.
15995 (termscript): Delete declaration.
15996
15997 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
15998 (XTflash, x_free_frame_resources, x_scroll_bar_create)
15999 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
16000 FRAME_FOREGROUND_PIXEL.
16001 (x_fully_uncatch_errors): Disable definition.
16002 (x_scroll_bar_expose): Fix reference to foreground pixel.
16003 (XTread_socket): Disable loop on all X displays.
16004 (x_delete_terminal): Don't set terminal->deleted and let
16005 delete_terminal delete the frames on the terminal.
16006 (x_delete_display): Doc update to reflect changes in
16007 delete_terminal.
16008 (x_display_info) <terminal>: Move member earlier in the struct.
16009 (deleting_tty): Remove old variable.
16010 (Fsuspend_tty): Call clear_tty_hooks.
16011 (Fresume_tty, init_tty): Call set_tty_hooks.
16012 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
16013 errors on X frames.
16014 (x_catch_errors_unwind): Abort if x_error_message is NULL.
16015 (handle_one_xevent): Initialize `f' to NULL.
16016 (x_delete_terminal, x_create_terminal): New functions.
16017 (XTset_terminal_modes, XTreset_terminal_modes)
16018 (XTread_socket, x_connection_closed, x_term_init)
16019 (x_term_init, x_delete_display): Add terminal parameter.
16020 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
16021 X connections.
16022
16023 * frame.c: Include termchar.h.
16024 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
16025 (Qwindow_system, Qenvironment, Qterm_environment_variable)
16026 (Qdisplay_environment_variable): New vars.
16027 (Fframep): Deal with output_initial.
16028 (Fframe-live-p): Doc fix.
16029 (Fwindow-system): New function.
16030 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
16031 (make_terminal_frame): Don't create frames on a terminal that is
16032 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16033 (store_frame_param): Check for found_for_frame before calling XFRAME.
16034 (Fmake_terminal_frame): Handle NULL tty names correctly.
16035 (syms_of_frame): Enhance doc string of `default-frame-alist'.
16036 (Fdelete_frame): Remove unused variable `count'. Don't allow other
16037 frames to refer to a deleted frame in their 'environment parameter.
16038 (Fframe_with_environment): New function.
16039 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
16040 (get_future_frame_param): New function.
16041 (Fmake_terminal_frame): Use it.
16042 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
16043
16044 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
16045 * sysdep.c (reset_sys_modes): Update for renames.
16046
16047 * keyboard.c (tty_read_avail_input): New function.
16048 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
16049 (syms_of_keyboard): Defsubr them.
16050 (Fset_input_meta_mode, Fset_quit_char): New functions.
16051 (Fset_input_mode): Split to above functions.
16052 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
16053 parameter. Use it in call to `read_char'.
16054 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
16055 Set wrong_kboard_jmpbuf correctly in recursive calls.
16056 Use current_kboard to access Vkeyboard_translate_table.
16057 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
16058 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
16059 Update longjmp invocations. Remember the original current_kboard,
16060 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
16061 changes it. Comment out unnecessary calls to
16062 `record_single_kboard_state' and `any_kboard_state'.
16063 Update recursive calls.
16064 (wrong_kboard_jmpbuf): Remove global variable.
16065 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
16066 Handle deleted interrupted_kboards correctly; that is a legal
16067 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
16068 and read_char calls. Abort if interrupted_kboard died in read_char.
16069 (any_kboard_state, single_kboard_state)
16070 (push_frame_kboard): Remove function.
16071 (pop_kboard): Switch out of single_kboard mode if the kboard has
16072 been deleted. Remove unused variable. Help debugging by not
16073 changing current_kboard unnecessarily. Set current_kboard to the
16074 kboard of the selected frame when the stored kboard object has
16075 been deleted before pop_kboard.
16076 (temporarily_switch_to_single_kboard): Change first parameter to a
16077 frame pointer. Throw an error when caller wants to change kboards
16078 while in single_kboard mode. Don't push_kboard if we weren't in
16079 single kboard state. Don't pop_kboard if we popped into any
16080 kboard state.
16081 (restore_kboard_configuration): Abort if pop_kboard changed the
16082 kboard in single_kboard mode. Call pop_kboard only after setting
16083 up single_kboard mode.
16084 (Frecursive_edit): Switch to single_kboard mode only in nested
16085 command loops.
16086 (cmd_error, command_loop, command_loop_1, timer_check):
16087 Comment out unnecessary call to `any_kboard_state' and
16088 `record_single_kboard_state'.
16089 (delete_kboard): Exit single_kboard mode if we have just deleted
16090 that kboard. Use FRAME_KBOARD.
16091 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
16092 `fatal_error_signal'.
16093 (record_single_kboard_state): Don't push_kboard if we weren't in
16094 single kboard state. Don't pop_kboard if we popped into any
16095 kboard state.
16096 (push_frame_kboard): Rename to push_kboard.
16097 (kbd_buffer_get_event): Use FRAME_TERMINAL.
16098 (read_avail_input): Read input from all terminals.
16099 (mark_kboards): Also mark Vkeyboard_translate_table.
16100 (kbd_buffer_store_event_hold): Simplify condition.
16101 (read_key_sequence): Reinitialize fkey and keytran at each replay.
16102 (Vkeyboard_translate_table): Move to struct kboard.
16103 (init_kboard): Initialize Vkeyboard_translate_table.
16104 (syms_of_keyboard): Use DEFVAR_KBOARD to define
16105 Vkeyboard_translate_table. Update doc strings. Update docs of
16106 local-function-key-map and function-key-map.
16107
16108 * terminal.c: New file.
16109
16110 * term.c: Include errno.h.
16111 (Vring_bell_function, device_list, initial_device)
16112 (next_device_id, ring_bell, update_begin, update_end)
16113 (set_terminal_window, cursor_to, raw_cursor_to)
16114 (clear_to_end, clear_frame, clear_end_of_line)
16115 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
16116 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
16117 (syms_of_term): Move their initialization to terminal.c.
16118 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
16119 (Ftty_display_color_cells)
16120 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
16121 (clear_tty_hooks, set_tty_hooks)
16122 (init_tty, maybe_fatal): New functions.
16123 (Ftty_type): Return nil if terminal is not on a tty instead of
16124 throwing an error. Doc update.
16125 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
16126 Doc update. Initialize new subrs and variables.
16127 (delete_tty): Use terminal->deleted.
16128 (tty_set_terminal_modes): Rename from set_terminal_modes.
16129 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
16130 (set_scroll_region): Rename to `tty_set_scroll_region'.
16131 (turn_on_insert): Rename to `tty_turn_on_insert'.
16132 (turn_off_insert): Rename to `tty_turn_off_insert'.
16133 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
16134 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
16135 (toggle_highligh): Rename to `tty_toggle_highlight'.
16136 (background_highlight): Rename to `tty_background_highlight'.
16137 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
16138 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
16139 (tty_set_scroll_region, tty_background_highlight)
16140 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
16141 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
16142 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
16143 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
16144 Add static modifier.
16145 (tty_reset_terminal_modes, tty_set_terminal_window)
16146 (tty_set_scroll_region, tty_background_highlight)
16147 (tty_highlight_if_desired, tty_cursor_to)
16148 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
16149 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
16150 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
16151 renames.
16152
161532007-08-28 Jan Djärv <jan.h.d@swipnet.se>
16154
16155 * keyboard.c: Qrtl is new.
16156 (parse_tool_bar_item): Handle :rtl keyword.
16157 (syms_of_keyboard): Intern :rtl keyword.
16158
16159 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
16160
16161 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
16162 so no Lisp code is executed.
16163 (file_for_image, find_rtl_image): New functions.
16164 (xg_get_image_for_pixmap): Use file_for_image.
16165 (update_frame_tool_bar): If direction is RTL, use RTL image if
16166 defined. Use Gtk stock images if defined.
16167
161682007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16169
16170 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
16171 for nonexistent or zero-width glyph in composition glyph.
16172
161732007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
16174
16175 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
16176
16177 * xdisp.c (Finvisible_p): New function.
16178 (syms_of_xdisp): defsubr it.
16179
161802007-08-24 Juanma Barranquero <lekktu@gmail.com>
16181
16182 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
16183 Doc fixes.
16184
161852007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16186
16187 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
16188
161892007-08-24 Martin Rudalics <rudalics@gmx.at>
16190
16191 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
16192 whether decoding has modified buffer contents.
16193
161942007-08-24 Jason Rumney <jasonr@gnu.org>
16195
16196 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
16197 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
16198 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
16199 (init_svg_functions) [HAVE_NTGUI]: New function.
16200 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
16201 (svg_load_image): Use them.
16202 (svg_load_image) [HAVE_NTGUI]: Implement background.
16203
162042007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16205
16206 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
16207 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
16208 (LIBX): Remove @RSVG_LIBS@.
16209 (LIBES): Add $(RSVG_LIBS).
16210
16211 * image.c (svg_load_image): Blend with specified background if exists.
16212 Use IMAGE_BACKGROUND. Add Mac OS Support.
16213
16214 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
16215 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
16216 Remove macros.
16217 [MAC_OSX] (socket_callback): Do nothing.
16218 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
16219 ReceiveNextEvent.
16220 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
16221 socket_callback.
16222 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
16223
162242007-08-22 Glenn Morris <rgm@gnu.org>
16225
16226 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
16227
162282007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
16229
16230 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
16231
16232 * image.c: Add support for SVG images. Some additional comments
16233 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
16234 (svg_image_p): New function to test for SVG image.
16235 (svg_load): New function to load SVG image.
16236 (svg_load_image): New function, helper for svg_load.
16237 (Qsvg): New Lisp_object.
16238 (svg_keyword_index): New enum.
16239 (svg_format): New static `image_keyword' struct.
16240 (svg_type): New static `image_type' struct.
16241 (librsvg/rsvg.h): Include it.
16242
162432007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
16244
16245 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
16246
162472007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
16248
16249 * lread.c (Qold_style_backquotes): New var.
16250 (syms_of_lread): Init and staticpro it.
16251 (load_warn_old_style_backquotes): New fun.
16252 (Fload): Use them to warn about old style backquotes.
16253 (end_of_file_error, Fload): Remove unused vars.
16254
16255 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
16256
16257 * lread.c (Vold_style_backquotes): New var.
16258 (syms_of_lread): Init and export it to Elisp.
16259 (read1): Set it when we find an old-style (back)quote.
16260
162612007-08-22 Jason Rumney <jasonr@gnu.org>
16262
16263 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
16264
162652007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
16266
16267 * puresize.h (BASE_PURESIZE): Increase to 1140000.
16268
162692007-08-19 Richard Stallman <rms@gnu.org>
16270
16271 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
16272
162732007-08-19 Andreas Schwab <schwab@suse.de>
16274
16275 * alloc.c (pure): Round PURESIZE up.
16276
162772007-08-17 Jan Djärv <jan.h.d@swipnet.se>
16278
16279 * xterm.c (handle_one_xevent): Remove check that mouse click is in
16280 active frame.
16281
162822007-08-16 Richard Stallman <rms@gnu.org>
16283
16284 * eval.c (Fcommandp): Add parens to clarify.
16285
16286 * minibuf.c (Fall_completions): Use enum for type of table.
16287
16288 * emacs.c (USAGE2): Improve text.
16289
162902007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
16291
16292 * term.c (tty_default_color_capabilities): Declare static
16293 variables in file scope, to avoid HPUX compiler problem.
16294
162952007-08-13 Jan Djärv <jan.h.d@swipnet.se>
16296
16297 * gtkutil.c (update_frame_tool_bar): Use -1 as index
16298 to gtk_toolbar_insert.
16299
163002007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
16301
16302 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
16303
16304 * insdel.c (reset_var_on_error): New fun.
16305 (signal_before_change, signal_after_change):
16306 Use it to reset (after|before)-change-functions to nil in case of error.
16307 Bind inhibit-modification-hooks to t.
16308 Don't bind (after|before)-change-functions to nil while they run.
16309
163102007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16311
16312 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
16313 filling pixmap with stippled background.
16314
163152007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16316
16317 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
16318 Don't use invisible frame as parent window for repositioning.
16319
163202007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
16321
16322 * print.c (new_backquote_output): Rename from old_backquote_output.
16323 (print): Inverse its logic (according to its name) so as to match the
16324 behavior of new_backquote_flag in lread.c.
16325
163262007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16327
16328 * gmalloc.c (posix_memalign): New function.
16329
16330 * macterm.c (frame_highlight, frame_unhighlight): Don't call
16331 ActivateControl/DeactivateControl here.
16332 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
16333 frame-notice-user-settings is non-nil.
16334 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
16335 for kEventParamFMFontStyle.
16336 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
16337 mac_pass_command_to_system and mac_pass_control_to_system here.
16338 (XTread_socket): Call ActivateControl/DeactivateControl here.
16339 (XTread_socket) [TARGET_API_MAC_CARBON]:
16340 Check mac_pass_command_to_system and mac_pass_control_to_system here.
16341 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
16342 for window repositioning.
16343
163442007-08-08 Glenn Morris <rgm@gnu.org>
16345
16346 * Replace `iff' in doc-strings and comments.
16347
163482007-08-07 Chong Yidong <cyd@stupidchicken.com>
16349
16350 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
16351
163522007-08-07 Martin Rudalics <rudalics@gmx.at>
16353
16354 * fileio.c (Finsert_file_contents): Run format-decode and
16355 after_insert_file_functions on entire buffer when REPLACE is
16356 non-nil and inhibit modification_hooks and point_motion_hooks.
16357 For consistency, run after_insert_file_functions iff something
16358 got inserted. Move signal_after_change and update_compositions
16359 after code running after_insert_file_functions. Make sure that
16360 undo_list doesn't record intermediate steps of the decoding process.
16361
163622007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16363
16364 * emacs.c (main)
16365 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
16366 Call malloc_enable_thread on interactive startup.
16367
16368 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
16369 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
16370 [USE_PTHREAD]: Conditionalize with it.
16371 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
16372 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
16373 New functions.
16374
163752007-08-06 Chong Yidong <cyd@stupidchicken.com>
16376
16377 * xdisp.c (redisplay_window): When restoring original buffer
16378 position, make sure it is still valid.
16379
16380 * image.c (png_load): Ignore png-supplied background color.
16381
163822007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16383
16384 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
16385 Use kCFAbsoluteTimeIntervalSince1970.
16386
16387 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
16388 New variable.
16389 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
16390 event loop should be quit.
16391 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
16392 Quit dialog event loop if quit_dialog_event_loop is set.
16393
16394 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
16395 (Selection): New typedef. Use instead of ScrapRef.
16396 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
16397 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
16398 (mac_clear_selection): Rename from clear_scrap.
16399 (get_flavor_type_from_symbol): New argument SEL and subsume function of
16400 scrap_has_target_type. All uses changed.
16401 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
16402 (mac_selection_has_target_p): New functions.
16403 (mac_put_selection_value): Rename from put_scrap_string.
16404 (mac_get_selection_value): Rename from get_scrap_string.
16405 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
16406 (put_scrap_private_timestamp, scrap_has_target_type)
16407 (get_scrap_private_timestamp): Remove functions.
16408 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
16409 (x_own_selection, x_get_local_selection):
16410 Use mac_valid_selection_value_p.
16411 (x_own_selection): Don't use put_scrap_private_timestamp.
16412 Record OWNERSHIP-INFO into Vselection_alist instead.
16413 (x_get_local_selection): Don't check type if request is local.
16414 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
16415 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
16416
164172007-08-04 Jan Djärv <jan.h.d@swipnet.se>
16418
16419 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
16420 add comment explaining why.
16421
164222007-08-03 Richard Stallman <rms@gnu.org>
16423
16424 * fileio.c (Fvisited_file_modtime): Use make_time.
16425
164262007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
16427
16428 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
16429 build.
16430
164312007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
16432
16433 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
16434
164352007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
16436
16437 * puresize.h (BASE_PURESIZE): Increase to 1130000.
16438
164392007-07-30 Richard Stallman <rms@gnu.org>
16440
16441 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
16442
164432007-07-29 Jan Djärv <jan.h.d@swipnet.se>
16444
16445 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
16446
164472007-07-28 Nick Roberts <nickrob@snap.net.nz>
16448
16449 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
16450 remote default-directory.
16451
16452 * buffer.c (mode-line-format): Update doc string.
16453
164542007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16455
16456 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
16457 scroll bar gap.
16458 (x_scroll_bar_create): Set bar->fringe_extended_p.
16459 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
16460 on frame edge. Check fringe background extension. Don't clear
16461 extended fringe background area.
16462
16463 * w32term.h (struct scroll_bar): New member fringe_extended_p.
16464 (w32_fill_area): Enclose multiple statements with do ... while (0).
16465
16466 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
16467 Extend fringe background to scroll bar gap.
16468 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
16469 Set bar->fringe_extended_p.
16470 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
16471 Put leftmost/rightmost scroll bars on frame edge. Check fringe
16472 background extension. Don't clear extended fringe background area.
16473
16474 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
16475 New member fringe_extended_p.
16476
164772007-07-25 Glenn Morris <rgm@gnu.org>
16478
16479 * Relicense all FSF files to GPLv3 or later.
16480
16481 * COPYING: Switch to GPLv3.
16482
164832007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
16484
16485 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
16486
16487 * data.c (Finteractive_form): Check for the presence of an
16488 `interactive-form' symbol property more thoroughly.
16489
16490 * data.c (Finteractive_form): Use an `interactive-form' property if
16491 present, analogous to the function-documentation property.
16492
164932007-07-24 Jason Rumney <jasonr@gnu.org>
16494
16495 * w32fns.c (x_real_positions): Get real position from OS instead of
16496 calculating it.
16497
164982007-07-23 Jason Rumney <jasonr@gnu.org>
16499
16500 * filelock.c (current_lock_owner): Allow for @ sign in username.
16501
165022007-07-22 Nick Roberts <nickrob@snap.net.nz>
16503
16504 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
16505 remote default-directory.
16506
16507 * buffer.c (mode-line-format): Describe above case in doc string.
16508
165092007-07-20 Eli Zaretskii <eliz@gnu.org>
16510
16511 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
16512 Define if not defined.
16513
165142007-07-18 Jason Rumney <jasonr@gnu.org>
16515
16516 * w32proc.c (w32_executable_type): Handle 64 bit executables.
16517
165182007-07-18 Richard Stallman <rms@gnu.org>
16519
16520 * data.c (Fsetq_default): Doc fix.
16521
16522 * eval.c (Fsetq): Doc fix.
16523
165242007-07-18 Juanma Barranquero <lekktu@gmail.com>
16525
16526 * coding.c (Ffind_operation_coding_system):
16527 * eval.c (For, Fand): Doc fixes.
16528 Reported by Johan Bockgård.
16529
165302007-07-18 Jan Djärv <jan.h.d@swipnet.se>
16531
16532 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
16533
16534 * xterm.h: Declare x_ewmh_activate_frame.
16535
16536 * xterm.c (x_ewmh_activate_frame): New function.
16537 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
16538
165392007-07-17 Martin Rudalics <rudalics@gmx.at>
16540
16541 * window.c (Fdisplay_buffer): If largest or LRU window is the
16542 only window, split it even if it is not eligible for splitting.
16543 This restores the original behavior broken by the 2007-07-15
16544 change.
16545
165462007-07-17 Glenn Morris <rgm@gnu.org>
16547
16548 * abbrev.c (abbrev_check_chars): New function.
16549 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
16550 Call abbrev_check_chars to check abbrev characters are word
16551 constituents. Doc fix.
16552
165532007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
16554
16555 * process.c (Fstart_process, Fmake_network_process)
16556 (read_process_output): Fix up last changes.
16557
165582007-07-16 Eli Zaretskii <eliz@gnu.org>
16559
16560 * makefile.w32-in (clean): Don't delete *~.
16561
165622007-07-16 Andreas Schwab <schwab@suse.de>
16563
16564 * window.c (Fdisplay_buffer): Use NILP.
16565 (Fset_window_scroll_bars): Likewise.
16566
165672007-07-15 Martin Rudalics <rudalics@gmx.at>
16568
16569 * window.c (window_min_size_2): New function.
16570 (window_min_size_1, size_window, Fdisplay_buffer)
16571 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
16572 windows without mode- or header-lines when window-min-height is
16573 too small.
16574 (size_window): Reset nodelete_p after testing it, following an
16575 earlier note by Kim F. Storm.
16576 (display_buffer): Do not set split_height_threshold to twice the
16577 value of window_min_height to avoid changing the value of a
16578 customizable variable. Rather explicitly check whether the
16579 height of the window that shall be splitted is at least as large
16580 as split_height_threshold.
16581 (Fwindow_full_width_p): New defun.
16582 (syms_of_window): Defsubr it.
16583
16584 * window.h: Add EXFUN for Fwindow_full_width_p.
16585
165862007-07-14 Jason Rumney <jasonr@gnu.org>
16587
16588 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
16589
165902007-07-14 Richard Stallman <rms@gnu.org>
16591
16592 * eval.c (maybe_call_debugger): New function.
16593 (find_handler_clause): Use maybe_call_debugger.
16594 Call it when the handler says `debug'.
16595 Eliminate DEBUGGER_VALUE_PTR.
16596 (Fsignal): Eliminate debugger_value.
16597 (Qdebug): New variable.
16598 (syms_of_eval): Initialize it.
16599
166002007-07-14 Juanma Barranquero <lekktu@gmail.com>
16601
16602 * eval.c (Fprogn):
16603 * keyboard.c (Ftrack_mouse):
16604 * print.c (Fwith_output_to_temp_buffer):
16605 * window.c (Fsave_window_excursion): Doc fix.
16606
166072007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
16608
16609 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
16610
166112007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
16612
16613 * process.h (struct Lisp_Process): Turn slots infd, outfd,
16614 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
16615 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
16616 read_output_delay, and read_output_skip from Lisp_Objects to ints.
16617 Remove unused encoding_carryover.
16618 * process.c: Adjust all functions accordingly.
16619
166202007-07-12 Richard Stallman <rms@gnu.org>
16621
16622 * term.c: Include unistd.h only if HAVE_UNISTD_H.
16623
166242007-07-11 Jason Rumney <jasonr@gnu.org>
16625
16626 * makefile.w32-in (LIBS): Include OLE32.
16627
16628 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
16629 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
16630
166312007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
16632
16633 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
16634 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
16635 from a Lisp_Object into a bare pointer.
16636 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
16637 Adjust the code correspondingly.
16638
16639 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
16640
16641 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
16642 (term_show_mouse_face): Remove unused var `j'.
16643 (handle_one_term_event): Remove unused vars `i' and `j'.
16644 Don't cast return value of ttyname since it's not necessary.
16645
166462007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
16647
16648 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
16649 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
16650
16651 * fns.c (map_char_table): Use an array of int for `indices' rather than
16652 an array of Lisp_Objects (which are only ever integers anyway).
16653 (Fmap_char_table): Update caller.
16654 * lisp.h: Update prototype.
16655 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
16656 * fontset.c (Ffontset_info):
16657 * casetab.c (set_case_table): Update callers.
16658
16659 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
16660
16661 * keymap.c (struct accessible_keymaps_data)
16662 (struct where_is_internal_data): New structures.
16663 (accessible_keymaps_1, where_is_internal_1): Use them to change
16664 interface to adhere to the one used by map_keymap.
16665 (Faccessible_keymaps, where_is_internal): Use map_keymap.
16666 (accessible_keymaps_char_table, where_is_internal_2): Remove.
16667
16668 * keymap.h (map_keymap_function_t): More informative prototype.
16669
166702007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
16671
16672 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
16673 (looking_at_1): Don't change search_regs and last_thing_searched
16674 if `inhibit-changing-match-data' is non-nil.
16675 (string_match_1, search_buffer, set_search_regs): Likewise.
16676 (syms_of_search): Add Lisp level definition for
16677 `inhibit-changing-match-data' and set it to nil.
16678 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
16679 start and end of the match, instead of using values in search_regs.
16680
166812007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
16682
16683 * minibuf.c (Fcompleting_read): New value `confirm-only'
16684 for `require-match'.
16685
166862007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
16687
16688 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
16689 part of the 2007-06-27 change to syms_of_fileio.
16690
166912007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16692
16693 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
16694 Check WINDOWP before using XWINDOW. Consolidate return statements.
16695
166962007-06-27 Richard Stallman <rms@gnu.org>
16697
16698 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
16699
167002007-06-27 Juanma Barranquero <lekktu@gmail.com>
16701
16702 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
16703
167042007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16705
16706 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
16707 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
16708 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
16709 (_free_internal, memalign): Use them.
16710 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
16711 Initialize to PTHREAD_MUTEX_INITIALIZER.
16712 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
16713 (morecore_nolock): Rename from morecore. All uses changed.
16714 Use only nolock versions of internal allocation functions.
16715 (_malloc_internal_nolock, _realloc_internal_nolock)
16716 (_free_internal_nolock): New functions created from
16717 _malloc_internal, _realloc_internal, and _free_internal.
16718 (_malloc_internal, _realloc_internal, _free_internal): Use them.
16719 Copy hook value to automatic variable before its use.
16720 (memalign): Copy hook value to automatic variable before its use.
16721
167222007-06-26 Kenichi Handa <handa@m17n.org>
16723
16724 * coding.c (Ffind_operation_coding_system): Docstring improved.
16725 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
16726
167272007-06-25 David Kastrup <dak@gnu.org>
16728
16729 * keymap.c (Fcurrent_active_maps): Add `position' argument.
16730 (Fwhere_is_internal): Adjust call to `current-active-maps' to
16731 cater for additional parameter.
16732
16733 * keymap.h: Adjust number of parameters to `current-active-maps'.
16734
16735 * doc.c (Fsubstitute_command_keys): Adjust call of
16736 `current-active-maps'.
16737
167382007-06-25 David Kastrup <dak@gnu.org>
16739
16740 * callint.c (Fcall_interactively): Make the parsing of interactive
16741 specs somewhat more readable.
16742
167432007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16744
16745 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
16746 to scroll bar gap also when bitmap fills fringe. Draw only foreground
16747 if extended background has already been filled.
16748
167492007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16750
16751 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
16752 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
16753
16754 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
16755 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
16756 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
16757 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
16758 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
16759 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
16760 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
16761 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
16762 Run timers during dialog popup.
16763 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
16764
167652007-06-21 Jason Rumney <jasonr@gnu.org>
16766
16767 * image.c (convert_mono_to_color_image): Swap fore and background.
16768
167692007-06-20 Jason Rumney <jasonr@gnu.org>
16770
16771 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
16772 (w32_free_bdf_font): Unmap memory not handle.
16773
167742007-06-20 Sam Steingold <sds@gnu.org>
16775
16776 * gmalloc.c (__morecore): Fix the declaration to comply with the
16777 definition.
16778
167792007-06-20 Juanma Barranquero <lekktu@gmail.com>
16780
16781 * w32term.c (w32_delete_display): Remove leftover declaration.
16782 (w32_define_cursor, w32_initialize): Make static.
16783
16784 * w32.c (_wsa_errlist): Fix typo in error message.
16785 (init_environment): Ignore any environment variable from the
16786 registry having a null value.
16787
167882007-06-20 Glenn Morris <rgm@gnu.org>
16789
16790 * Makefile.in (LIBGIF): Default to -lgif.
16791
167922007-06-17 Jason Rumney <jasonr@gnu.org>
16793
16794 * w32menu.c (add_menu_item): Don't use multibyte string functions on
16795 unicode strings.
16796
167972007-06-16 Juanma Barranquero <lekktu@gmail.com>
16798
16799 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
16800 Fix typo in docstring.
16801
168022007-06-16 Eli Zaretskii <eliz@gnu.org>
16803
16804 * w32menu.c (add_menu_item): Escape `&' characters in menu items
16805 and their keybindings.
16806
168072007-06-15 Chong Yidong <cyd@stupidchicken.com>
16808
16809 * composite.c (update_compositions): Fix last fix.
16810
168112007-06-14 Jason Rumney <jasonr@gnu.org>
16812
16813 * w32.c (get_process_times_fn): New function pointer.
16814 (globals_of_w32): Intialize it if present in kernel32.dll.
16815 (w32_get_internal_run_time): New function.
16816
16817 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
16818
168192007-06-14 Kenichi Handa <handa@etlken.m17n.org>
16820
16821 * composite.c (update_compositions): Check the validness of
16822 compositions.
16823
168242007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16825
16826 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
16827 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
16828
16829 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
16830 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
16831
16832 * macgui.h (USE_MAC_TOOLBAR): New define.
16833
16834 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
16835 Return immediately unless popup is activated.
16836
16837 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
16838 background to scroll bar gap.
16839 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
16840 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
16841 scroll bars on frame edge. Check fringe background extension.
16842 Don't clear extended fringe background area.
16843 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
16844 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
16845 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
16846 [USE_MAC_TOOLBAR]: New macros.
16847 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
16848 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
16849 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
16850 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
16851 [USE_MAC_TOOLBAR]: New functions.
16852 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
16853 manually if previous repositioning has failed.
16854 (mac_handle_keyboard_event): Use precomputed event kind.
16855 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
16856 as tool bar item click. Handle mouse movement over tool bar items.
16857
16858 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
16859 toolbar_win_gravity.
16860 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
16861 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
16862 Add externs.
16863
16864 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
16865 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
16866
168672007-06-14 Chong Yidong <cyd@stupidchicken.com>
16868
16869 * image.c (search_image_cache): Remove unused variable.
16870
168712007-06-13 Chong Yidong <cyd@stupidchicken.com>
16872
16873 * xfns.c, xmenu.c: Link to xaw3d if available.
16874
168752007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16876
16877 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
16878 frame_foreground and frame_background.
16879
16880 * image.c (lookup_image): Save frame foreground and background colors.
16881 (search_image_cache): Check if saved and current frame colors match.
16882
168832007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
16884
16885 * regex.c (regex_compile): Remove the `regnum' counter.
16886 Use bufp->re_nsub instead. Add support for \(?N:RE\).
16887
168882007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
16889
16890 * term.c: Include intervals.h to declare Fget_text_property.
16891
168922007-06-10 Jason Rumney <jasonr@gnu.org>
16893
16894 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
16895
168962007-06-08 Juanma Barranquero <lekktu@gmail.com>
16897
16898 * callint.c (Fcall_interactively):
16899 * editfns.c (Fdelete_and_extract_region):
16900 * fileio.c (Fread_file_name):
16901 * fns.c (Fmapconcat):
16902 * keyboard.c (cmd_error_internal):
16903 * keymap.c (Fkey_description):
16904 * lread.c (openp):
16905 * minibuf.c (read_minibuf):
16906 * search.c (wordify):
16907 * sunfns.c (sel_read):
16908 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
16909 * xfns.c (x_default_scroll_bar_color_parameter):
16910 * xmenu.c (menu_help_callback):
16911 * xselect.c (Fx_get_atom_name):
16912 * xterm.c (x_term_init): Use empty_unibyte_string.
16913
169142007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
16915
16916 * alloc.c (init_strings): Initialize canonical empty strings.
16917 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
16918 canonical empty string when the requested size is 0.
16919
16920 * emacs.c (empty_unibyte_string): Rename from empty_string.
16921 (empty_multibyte_string): New canonical empty string.
16922 (syms_of_emacs): Don't initialize empty_string.
16923
16924 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
16925 string, if appropriate.
16926 (empty_unibyte_string, empty_multibyte_string): New externs.
16927 (empty_string): Remove extern.
16928
16929 * lread.c (syms_of_lread): Use empty_unibyte_string.
16930
169312007-06-07 Jason Rumney <jasonr@gnu.org>
16932
16933 * s/ms-w32.h: Don't define HAVE_TZNAME.
16934
16935 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
16936
169372007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16938
16939 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
16940
16941 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
16942 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
16943
16944 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
16945 Don't call next handler.
16946 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
16947 Remove argument. Install handler to application.
16948 (set_frame_menubar): Don't change deep_p.
16949 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
16950 FRAME_OUTER_TO_INNER_DIFF_Y.
16951 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
16952 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
16953 [HAVE_DIALOGS]: New macros.
16954 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
16955 Use them.
16956 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
16957
16958 * macselect.c [MAC_OSX] (install_service_handler): Rename from
16959 init_service_handler. All callers changed. Return OSStatus value.
16960
16961 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
16962 All callers changed so as not to call SetPortWindowPort.
16963 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
16964 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
16965 mac_draw_string_common.
16966 (mac_draw_image_string_qd): Likewise.
16967 (mac_draw_string_common): Use them. Add INLINE.
16968 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
16969 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
16970 GetGlobalMouse.
16971 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
16972 and FRAME_OUTER_TO_INNER_DIFF_Y.
16973 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
16974 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
16975 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
16976 repositioning window to mac_handle_window_event.
16977 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
16978 saving window location to mac_handle_window_event
16979 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
16980 (install_menu_target_item_handler): Remove argument in extern.
16981 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
16982 Also accept command events.
16983 (do_keystroke): New function created from XTread_socket.
16984 (init_command_handler): Remove functions.
16985 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
16986 and save window location by kEventWindowShowing and kEventWindowHiding
16987 handlers here. Don't call next handler for window state change and
16988 focus events.
16989 (mac_handle_application_event, mac_handle_keyboard_event)
16990 [TARGET_API_MAC_CARBON]: New functions.
16991 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
16992 kEventWindowShowing and kEventWindowHiding events. Move installation
16993 of mouse, font, text input and menu target item handlers to
16994 install_application_handler.
16995 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
16996 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
16997 New function.
16998 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
16999 Register it.
17000 (XTread_socket) [TARGET_API_MAC_CARBON]:
17001 Consolidate SendEventToEventTarget calls.
17002 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
17003 Move application activation handler to mac_handle_application_event.
17004 Move keyboard handler to mac_handle_keyboard_event.
17005 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
17006 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
17007 init_command_handler. Call install_application_handler.
17008
17009 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
17010 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
17011
170122007-06-07 Glenn Morris <rgm@gnu.org>
17013
17014 * emacs.c (main): Use `emacs-copyright' in --version output.
17015
170162007-06-06 Chong Yidong <cyd@stupidchicken.com>
17017
17018 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
17019
170202007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17021
17022 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
17023
17024 * macgui.h: Replace WindowPtr with WindowRef.
17025
17026 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
17027 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
17028 Replace ControlHandle with ControlRef.
17029 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
17030
17031 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
17032 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
17033 Replace ControlHandle with ControlRef.
17034 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
17035 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
17036
17037 * macterm.h (struct scroll_bar): Rename member control_handle_low
17038 and control_handle_high to control_ref_low and control_ref_high.
17039 All uses changed.
17040 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
17041 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
17042 respectively. All uses changed.
17043 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
17044 (install_window_handler, remove_window_handler): Replace WindowPtr
17045 with WindowRef in externs.
17046
170472007-06-05 Juanma Barranquero <lekktu@gmail.com>
17048
17049 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
17050
170512007-06-03 Nick Roberts <nickrob@snap.net.nz>
17052
17053 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
17054
17055 * frame.c (Fmouse_position, Fmouse_pixel_position):
17056 Condition on HAVE_GPM too.
17057
17058 * term.c (term_mouse_highlight): Remove unused variables.
17059 (Fterm_open_connection): Set gpm_zerobased to 1.
17060 (term_mouse_movement, term_mouse_click, handle_one_term_event):
17061 Use zero based co-ordinates.
17062 (handle_one_term_event): Report a drag as mouse movement too.
17063
17064 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
17065
170662007-06-03 Chong Yidong <cyd@stupidchicken.com>
17067
17068 * image.c (search_image_cache): New function. Require background
17069 color match if background color is unspecified in the image spec.
17070 (uncache_image, lookup_image): Use it.
17071
170722007-06-01 Juanma Barranquero <lekktu@gmail.com>
17073
17074 * window.c (Fshrink_window): Reflow docstring.
17075
170762007-06-02 Chong Yidong <cyd@stupidchicken.com>
17077
17078 * Version 22.1 released.
17079
170802007-06-01 Richard Stallman <rms@gnu.org>
17081
17082 * xfns.c (x_encode_text): Add GCPRO.
17083
170842007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17085
17086 * xfns.c (x_set_name_internal): Save encoded name before
17087 x_encode_text in case string data is relocated.
17088
170892007-05-31 Richard Stallman <rms@gnu.org>
17090
17091 * buffer.c (syms_of_buffer): Doc fix.
17092
170932007-05-30 Nick Roberts <nickrob@snap.net.nz>
17094
17095 * sysdep.c (init_sys_modes): Add rather than replace with
17096 O_NONBLOCK.
17097
17098 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
17099 term_mouse_moveto.
17100
17101 * termhooks.h (term_mouse_moveto): New extern.
17102
17103 * term.c (mouse_face_window): Rename...
17104 (Qmouse_face_window): ...to this.
17105 (term_show_mouse_face, term_clear_mouse_face)
17106 (term_mouse_highlight): Use Qmouse_face_window.
17107 (term_mouse_moveto): New function.
17108 (term_mouse_position): Make it work.
17109 (syms_of_term): Uncomment assignment to mouse_position_hook.
17110 Staticpro Qmouse_face_window.
17111
171122007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17113
17114 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
17115 around current_column call.
17116
171172007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
17118
17119 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
17120 * xdisp.c (next_element_from_buffer):
17121 * window.c (delete_window):
17122 * term.c (term_mouse_highlight):
17123 * msdos.c (getdefdir):
17124 * macterm.c (mac_create_bitmap_from_bitmap_data)
17125 (init_font_name_table):
17126 * fns.c (Fsxhash):
17127 * data.c (Fmake_local_variable):
17128 * ccl.c (ccl_driver): Likewise.
17129
171302007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17131
17132 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
17133 Call mac_wakeup_from_rne on window size change.
17134
171352007-05-25 Chong Yidong <cyd@stupidchicken.com>
17136
17137 * image.c (uncache_image): Fix typo.
17138
171392007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
17140
17141 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
17142
171432007-05-22 Richard Stallman <rms@gnu.org>
17144
17145 * xterm.c (x_connection_closed): Remove NO_RETURN.
17146
171472007-05-22 Martin Rudalics <rudalics@gmx.at>
17148
17149 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
17150
171512007-05-21 Chong Yidong <cyd@stupidchicken.com>
17152
17153 * image.c (uncache_image): New function.
17154 (Fimage_refresh): New function.
17155
171562007-05-20 Jan Djärv <jan.h.d@swipnet.se>
17157
17158 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
17159
171602007-05-20 Nick Roberts <nickrob@snap.net.nz>
17161
17162 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
17163 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
17164
171652007-05-20 Nick Roberts <nickrob@snap.net.nz>
17166
17167 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
17168 conditional on [HAVE_GPM_H].
17169
171702007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
17171
17172 * syntax.c (skip_chars): Update syntax-table only after we checked that
17173 the new location is valid.
17174
171752007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17176
17177 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
17178 mac_get_window_bounds.
17179
171802007-05-20 Nick Roberts <nickrob@snap.net.nz>
17181
17182 * Makefile.in (LIBGPM): Allow it to be set from configure.
17183 If set then link Emacs with it.
17184
17185 * config.in: Regenerate.
17186
17187 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
17188 New externs.
17189
17190 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
17191 Include gpm.h.
17192 (handle_one_term_event, term_gpm): New externs.
17193
17194 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
17195 and allow it to be interrupted by SIGIO.
17196
17197 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
17198 (wait_reading_process_output): Wait on gpm_fd too.
17199 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
17200 (add_gpm_wait_descriptor_called_flag): New variable.
17201 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
17202
17203 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
17204 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
17205 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
17206 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
17207 (make_lispy_event): Add case GPM_CLICK_EVENT.
17208 (read_avail_input): Handle mouse input.
17209
17210 * term.c (write_glyphs_with_face): New function.
17211 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
17212 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
17213 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
17214 (mouse_face_face_id, term_gpm, pos_x, pos_y)
17215 (last_mouse_x, last_mouse_y): New variables.
17216 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
17217 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
17218 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
17219 (Fterm_close_connection): New functions.
17220 (term_init): Initialise mouse_face_window.
17221
172222007-05-19 Chong Yidong <cyd@stupidchicken.com>
17223
17224 * xdisp.c (redisplay_window): If first window line is a
17225 continuation line, recompute the new window start instead of
17226 recentering.
17227
172282007-05-18 Glenn Morris <rgm@gnu.org>
17229
17230 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
17231 Suggested by Alfred M. Szmidt <ams@gnu.org>.
17232
172332007-05-17 Glenn Morris <rgm@gnu.org>
17234
17235 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
17236
172372007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17238
17239 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
17240 dead key repeat and up events.
17241
172422007-05-14 Chong Yidong <cyd@stupidchicken.com>
17243
17244 * image.c (pbm_load): Check image size for monochrome pbm.
17245
172462007-05-13 Chong Yidong <cyd@stupidchicken.com>
17247
17248 * xterm.c (XTread_socket): Revert last change.
17249
172502007-05-12 Chong Yidong <cyd@stupidchicken.com>
17251
17252 * image.c (pbm_load): Correctly check image size for greyscale pbm.
17253
17254 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
17255
172562007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
17257
17258 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
17259 mixup (YAILOM).
17260
172612007-05-07 Andreas Schwab <schwab@suse.de>
17262
17263 * keymap.c (Flookup_key): Fix typo in last change.
17264
172652007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
17266
17267 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
17268 mapping for unibyte strings.
17269
172702007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17271
17272 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
17273 (Fx_popup_dialog) [MAC_OSX]: Likewise.
17274
172752007-04-29 Richard Stallman <rms@gnu.org>
17276
17277 * insdel.c (replace_range): For undo, record insertion first.
17278
172792007-04-29 Andreas Schwab <schwab@suse.de>
17280
17281 * lisp.h (VECSIZE): Use OFFSETOF.
17282
172832007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17284
17285 * xdisp.c (try_window_reusing_current_matrix): Fix number of
17286 disabled lines.
17287
172882007-04-28 Richard Stallman <rms@gnu.org>
17289
17290 * lread.c (read_escape): In a string, \s is always space.
17291
172922007-04-27 Jan Djärv <jan.h.d@swipnet.se>
17293
17294 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
17295
17296 * gtkutil.c (xg_update_menubar, create_menus): Create empty
17297 submenu for menu bar items.
17298
17299See ChangeLog.10 for earlier changes.
17300
17301;; Local Variables:
17302;; coding: utf-8
17303;; add-log-time-zone-rule: t
17304;; bug-reference-url-format: "http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=%s"
17305;; End:
17306
76b6f707 17307 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
17308
17309 This file is part of GNU Emacs.
17310
17311 GNU Emacs is free software: you can redistribute it and/or modify
17312 it under the terms of the GNU General Public License as published by
17313 the Free Software Foundation, either version 3 of the License, or
17314 (at your option) any later version.
17315
17316 GNU Emacs is distributed in the hope that it will be useful,
17317 but WITHOUT ANY WARRANTY; without even the implied warranty of
17318 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17319 GNU General Public License for more details.
17320
17321 You should have received a copy of the GNU General Public License
17322 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
17323
17324;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40