(diff-hunk-kill): Fix the search of the next hunk (bug#4368).
[bpt/emacs.git] / src / ChangeLog
CommitLineData
f9b7b5ac
SM
12009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * keymap.c (where_is_internal): Filter out shadowed remappings.
4 Assume that where_is_internal returns unshadowed bindings to simplify
5 the code and get rid of the gotos. Use ASIZE.
6
04f4b72d
JD
72009-09-04 Jan Djärv <jan.h.d@swipnet.se>
8
4da146f2
JD
9 * xterm.c (x_focus_changed): If we get a focusout and pointer
10 is invisible, make it visible.
11
04f4b72d
JD
12 * xterm.h: Remove condition for declaration of
13 x_*_window_to_frame.
14
7cef7ce3
SM
152009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
16
17 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
18 initial terminal as well.
19
a54fa5b7
JD
202009-09-02 Jan Djärv <jan.h.d@swipnet.se>
21
22 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 23 x_menubar_window_to_frame.
a54fa5b7
JD
24
25 * xterm.c: Remove declarations also in xterm.h
26 (XTmouse_position): Do not return valid positions
27 for clicks in the menubar and the toolbar for Gtk+.
28
29 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
30 if the widget for the event has the same top level as a frame,
31 return the frame.
32 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
33 internal windows, bug #4122.
34 (x_non_menubar_window_to_frame): Remove.
35
5a021dd0
GM
362009-09-02 Glenn Morris <rgm@gnu.org>
37
38 * buffer.c (default-major-mode): Move most of the doc from here...
39 (major-mode): ... to here.
40
548fe2f3
NR
412009-08-30 Nick Roberts <nickrob@snap.net.nz>
42
43 * process.c (wait_reading_process_output): Keep the descriptor
44 when pty is used by a non-child process, e.g., in I/O buffer of
45 GDB this allows inferior to be restarted.
46
e0840eef
EZ
472009-08-29 Eli Zaretskii <eliz@gnu.org>
48
49 * xdisp.c (redisplay_internal): Remove redundant test and collapse
50 both branches into one.
51
82e98df4
SM
522009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
53
54 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
55 (main): Use enable-multibyte-characters rather than
56 default-enable-multibyte-characters. Output a warning message when
57 running a unibyte session.
58
890617cb
YM
592009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
60
61 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
62 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
63 (copy_data_segment): Also copy __program_vars section.
64 (copy_dyld_info) [LC_DYLD_INFO]: New function.
65 (dump_it) [LC_DYLD_INFO]: Use it.
66
67 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
68
e7adeadc
EZ
692009-08-28 Eli Zaretskii <eliz@gnu.org>
70
71 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
72 $(SRC)/buildobj.h.
73 (buildobj.h): Renamed from $(SRC)/buildobj.h.
74 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
75 $(SRC)/buildobj.h.
76 (clean): Add buildobj.h.
77
3ed8bbdc
TZ
782009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
79
80 * print.c (print_object): Set escapeflag to 1 when printing
81 hashtable keys and values.
82
155a6764
SM
832009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
84
85 * lread.c (read_integer): Use doubles (and potentially return a float
86 number) as we do in string-to-number.
87 (read1): Use strtol to read integers, signal errors on strtol's
88 overflow and use floats if strtol's output is too large for
89 Elisp integers.
90
877610de
EZ
912009-08-27 Eli Zaretskii <eliz@gnu.org>
92
93 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
94 (make-buildobj-SH): Fix last change.
95 (SRC): Move to before where it's first used.
96
ef73e7be
KH
972009-08-27 Kenichi Handa <handa@m17n.org>
98
550c8289
KH
99 * process.c (send_process): Use encode_coding_object instead of
100 encode_coding_string to perform eol-conversion even if the string
101 is unibyte.
102
60afa08d
KH
103 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
104 character.
105
ef73e7be 106 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 107 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 108
7b3a82d7
DN
1092009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
110
5654bf63
DN
111 * callproc.c (Fcall_process): Remove always true #if.
112
7b3a82d7
DN
113 * lisp.h: Replace #if 0 code for checking with text pointing to
114 the --enable-checking configure flag.
115
116 * emacs.c (main): Mention the --enable-profiling configure flag
117 instead of using CFLAGS.
118
878bde49
KR
1192009-08-26 Ken Raeburn <raeburn@raeburn.org>
120
121 * Makefile.in (buildobj.h): New target.
122 (doc.o): Depend on it.
123 (temacs${EXEEXT}): Don't generate buildobj.lst.
124 (mostlyclean): Delete buildobj.h, not buildobj.lst.
125 * makefile.w32-in ($(SRC)/buildobj.h): New target.
126 ($(BLD)/doc.$(O)): Depend on it.
127 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
128 provided by Eli Zaretskii.)
129 ($(TEMACS)): Don't generate buildobj.lst.
130 * doc.c: Include buildobj.h.
131 (buildobj): New static variable.
132 (Fsnarf_documentation): Use it, instead of opening and reading
133 buildobj.lst.
134
1574224c
MA
1352009-08-25 Michael Albinus <michael.albinus@gmx.de>
136
137 * dbusbind.c (Fdbus_call_method)
138 (Fdbus_call_method_asynchronously): Use English numeric format for
139 timeout values in doc string.
140
d9da2f45
KH
1412009-08-25 Kenichi Handa <handa@m17n.org>
142
ef73e7be
KH
143 * alloc.c (mark_char_table): New function.
144 (mark_object): Use mark_char_table for a char-table.
145
d9da2f45
KH
146 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
147 (CHAR_TABLE_REF): Use it.
148
c8edcc01
KR
1492009-08-23 Ken Raeburn <raeburn@raeburn.org>
150
151 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
152 before invoking the newly build emacs to check for load-path
153 shadowing.
154
7763401b
GM
1552009-08-22 Glenn Morris <rgm@gnu.org>
156
157 * Makefile.in (bootstrap_exe): New variable.
158 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
159 Use ${bootstrap_exe}.
160
729eadda
EZ
1612009-08-22 Eli Zaretskii <eliz@gnu.org>
162
163 * coding.h (encode_coding_string): Don't encode unibyte strings.
164 (Bug#4047)
165
eb4c6ace
MA
1662009-08-22 Michael Albinus <michael.albinus@gmx.de>
167
168 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
169
170 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
171 intended as hotfix only.
172 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
173
36e34d1b
AR
1742009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
175
176 * nsterm.m (ns_get_color): Update documentation properly for last
177 change, and clean up loose ends in the code left by it. Fix
178 longstanding bug with 16-bit hex parsing, and add support for
179 yet another X11 format (rgb:r/g/b) for compatibility.
180 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
181 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
182
f983eb8a
SM
1832009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
184
185 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
186
3f56d3c6
MA
1872009-08-20 Michael Albinus <michael.albinus@gmx.de>
188
189 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
190 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
191 (xd_initialize, xd_pending_messages): Check, whether
192 $DBUS_SESSION_BUS_ADDRESS is set.
193
fb641d68
YM
1942009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
195
196 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
197
198 * nsterm.m (ns_get_color): Remove incompatible color formats again.
199
cf59a374
GM
2002009-08-20 Glenn Morris <rgm@gnu.org>
201
202 * emacs.c (system-type): Doc fix.
203
1373f3be
SM
2042009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
205
206 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
207 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
208
058ed861
MA
2092009-08-18 Michael Albinus <michael.albinus@gmx.de>
210
1373f3be
SM
211 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
212 New functions.
058ed861
MA
213 (xd_initialize): Revert change from 2009-08-16.
214
563a866e 2152009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
216
217 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 218 font-group vector, return nil.
5fc05db0 219
e42bdf01
CY
2202009-08-17 Chong Yidong <cyd@stupidchicken.com>
221
222 * process.c (status_notify): Don't perform redisplay.
223 (Fdelete_process, list_processes_1, process_send_signal):
224 Expliticly perform redisplay.
225 (wait_reading_process_output): Always check process status, but
226 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
227
4230ab74
KR
2282009-08-17 Ken Raeburn <raeburn@raeburn.org>
229
1373f3be 230 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
231 (XFLOAT_INIT): New macro for storing a float value.
232 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
233 * fns.c (sxhash): Copy out the value of a float in order to
234 examine its bytes.
235 * dbusbind.c (xd_append_arg): Likewise.
236
4230ab74
KR
237 * emacs.c (main): Don't call syms_of_data twice.
238
a0645cdd
MA
2392009-08-16 Michael Albinus <michael.albinus@gmx.de>
240
241 * dbusbind.c (xd_initialize): Add connection file descriptor to
242 input_wait_mask, in order to let select() detect, whether a new
243 message has been arrived.
ca4f31ea 244 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 245
485db0ba
MA
2462009-08-15 Michael Albinus <michael.albinus@gmx.de>
247
1373f3be
SM
248 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
249 New functions.
485db0ba
MA
250
251 * lisp.h (xd_pending_messages): Declare.
252
253 * keyboard.c (readable_events): Call xd_pending_messages.
254
b5b98ff4
CY
2552009-08-15 Chong Yidong <cyd@stupidchicken.com>
256
1373f3be 257 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 258
f8354c6e
CY
259 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
260
b5b98ff4
CY
261 * buffer.c (set_buffer_internal_1)
262 (swap_out_buffer_local_variables): Check for unbound local
263 variables (Bug#4138).
264
8b9fc636
EZ
2652009-08-14 Eli Zaretskii <eliz@gnu.org>
266
267 * process.c (create_pty): Fix last change.
268
ce959360
CY
2692009-08-13 Chong Yidong <cyd@stupidchicken.com>
270
271 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
272 (xbm_load_image): Caller changed.
64b807c9 273 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 274
c7baf7e9
NR
2752009-08-13 Nick Roberts <nickrob@snap.net.nz>
276
277 * process.c (create_pty): New function.
278 (Fstart_process): Use it to allow Emacs to just associate a pty
279 with the buffer. See associated change in gdb-mi.el.
280 (list_processes_1): Deal with no program name.
281 (start_process_unwind): Use pid == -2 to mean no process.
282
1ac9108a
SM
2832009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
284
285 * cmds.c (nonundocount): New global variable.
286 (keys_of_cmds): Initialize it.
287 (Fself_insert_command): Use it to combine upto 20 sequential chars
288 into a single undo entry, just like the Qself_insert_command code in
289 keyboard.c does.
290 Call frame_make_pointer_invisible, also like the Qself_insert_command
291 code in keyboard.c does.
292 * keyboard.c (command_loop_1): Use the new global nonundocount rather
293 than its own local replacement for it.
294
e267324c
KR
2952009-08-10 Ken Raeburn <raeburn@raeburn.org>
296
1ac9108a 297 * fns.c (concat): Don't re-set string length to its current value.
77437343 298
1ac9108a
SM
299 * coding.h (decode_coding_string, encode_coding_string):
300 Use SBYTES macro.
f0bed503 301
1ac9108a 302 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
303 (doprnt): Merge with doprnt1, discarding lispstrings code.
304 * lisp.h (doprnt_lisp): Don't declare.
305
416e006d
JL
3062009-08-07 Juri Linkov <juri@jurta.org>
307
308 * puresize.h (BASE_PURESIZE): Increase to 1270000.
309
6f7d5780
DN
3102009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
311
312 * print.c (syms_of_print): Undo previous change.
313
f19a0f5b
TZ
3142009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
315
316 * lread.c (read1, syms_of_lread): Read hashtables back from the
317 readable format.
318
319 * print.c (print_preprocess, print_object): Print hashtables fully
320 and readably.
321 (syms_of_print): Provide 'hashtable-print-readable.
322
b9173dc2
AR
3232009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
324
325 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
326 no family set.
327 (nsfont_open): Handle case when entity has no family.
328
1586503c
AR
3292009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
330
331 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
332 element, not a list, for match case.
333
087048cd
KH
3342009-07-28 Kenichi Handa <handa@m17n.org>
335
336 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
337 rigidly.
338
339 * xfont.c (xfont_list_pattern): Don't ignore the return value of
340 font_parse_xlfd. Check font properties more rigidly.
341
780c2506
DN
3422009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
343
31fd7c5c
JB
344 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
345 bsd-common.h.
780c2506 346
a8c0cc18
KH
3472009-07-27 Kenichi Handa <handa@m17n.org>
348
349 * xfaces.c (face_with_height): Call font_clear_prop.
350
4fbe2306
CY
3512009-07-26 Chong Yidong <cyd@stupidchicken.com>
352
111d9af3
CY
353 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
354
355 * xterm.c (x_term_init): Use Qx.
356
4fbe2306
CY
357 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
358
1ac9108a 359 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
360 (ns_get_color): Revert 2009-07-16 change.
361
beb0b7f9
EZ
3622009-07-25 Eli Zaretskii <eliz@gnu.org>
363
364 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 365 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 366
2baf5e76
KR
3672009-07-25 Ken Raeburn <raeburn@raeburn.org>
368
1ac9108a
SM
369 * coding.h (decode_coding_string, encode_coding_string):
370 Use SCHARS macro.
8890e5f5 371
2baf5e76 372 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 373 (load_depth): Delete.
2baf5e76
KR
374 (Qload_in_progress): New variable.
375 (load_unwind): Don't reference load_depth or load_in_progress.
376 (Fload): Likewise; specbind Qload_in_progress instead.
377 (init_lread): Don't initialize load_depth.
378 (syms_of_lread): Initialize and protect Qload_in_progress.
379
1395c6f5
AR
3802009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
381
382 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
383
4e2f36cf
AR
3842009-07-23 Yavor Doganov <yavor@gnu.org>
385
386 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
387
5dd9a6f7
AR
3882009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
389
390 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
391 Bugs 3792, 3720, 2402.
392 (ns_lookup_indexed_color): Check for bad index.
393 (ns_index_color): Init unused slot to 0.
394 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
395 Bug 3714, possibly 3082.
5dd9a6f7 396
c902b920
JR
3972009-07-22 Jason Rumney <jasonr@gnu.org>
398
1ac9108a
SM
399 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
400 Position IME window at cursor (Bug#2570).
c902b920
JR
401 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
402 (globals_of_w32fns): Dynamically load functions required above.
403
404 * w32term.c (w32_draw_window_cursor): Send message to reposition
405 any IME window.
406
090101cf
CY
4072009-07-21 Chong Yidong <cyd@stupidchicken.com>
408
409 * fileio.c: Revert 2009-07-16 changes.
410 (Vauto_save_include_big_deletions): New variable.
411 (Fdo_auto_save): Disable auto-save only if
412 auto-save-include-big-deletions is nil.
413
e6583e3d
CY
4142009-07-21 Chong Yidong <cyd@stupidchicken.com>
415
416 * xdisp.c (move_it_to): For continued lines ending in a tab, take
417 the overflowed pixels into account (Bug#3879).
418
ece435a5
KR
4192009-07-21 Ken Raeburn <raeburn@raeburn.org>
420
421 * lread.c (load_depth): New variable.
422 (Fload, load_unwind, init_lread): Set it to the load recursion
423 depth; set load_in_progress as a simple boolean based on the
424 current load_depth. (Bug#3892)
425
40b2d973
AR
4262009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
427
428 * nsfont.m (ns_has_attribute): Remove.
429 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
430
10be7e0d
JL
4312009-07-18 Juri Linkov <juri@jurta.org>
432
433 * process.c (Fset_process_query_on_exit_flag): Mention killing
434 a buffer in docstring.
435
fa055055
KH
4362009-07-17 Kenichi Handa <handa@m17n.org>
437
438 * casetab.c (shuffle): Fix the logic of setting up the cycle.
439
042f7b69
YM
4402009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
441
442 * nsfns.m (Fns_set_alpha): Remove function.
443 (syms_of_nsfns): Don't defsubr it.
444
445 * nsterm.m (ns_get_color): Remove incompatible color formats.
446 (ns_color_to_lisp): Generate #rrggbb color format string.
447
4be941e3
RS
4482009-07-16 Richard Stallman <rms@gnu.org>
449
450 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
451 (Fset_buffer_auto_saved): Handle save_length = -2.
452
4e6b227d
CY
4532009-07-16 Chong Yidong <cyd@stupidchicken.com>
454
455 * xterm.c (Qx_gtk_map_stock): New var.
456
457 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
458 of calling intern each time.
459
a1856973
YM
4602009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
461
462 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
463 does tiling.
464
465 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
466
497e54d8
KH
4672009-07-14 Kenichi Handa <handa@m17n.org>
468
72d36834
KH
469 * font.c (font_vconcat_entity_vectors): New function.
470 (struct font_sort_data): New member font_driver_preference.
471 (font_compare): Check font_driver_preference.
472 (font_sort_entities): The format of the first argument changed.
473 (font_delete_unmatched): Likewise.
474 (font_list_entities): The return type changed.
475 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
476 (font_find_for_lface): Adjuste for the above changes.
477 Don't suppress the checking of C even if the repertory supports it.
478 (Flist_fonts): Adjust for the above changes.
72d36834 479
1ac9108a
SM
480 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
481 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
482 Reject a font who has adstyle property that is different from a
483 langname derived from registry property.
1ac9108a 484 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 485
b6046155
EZ
4862009-07-13 Eli Zaretskii <eliz@gnu.org>
487
488 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
489 local copy of dirfilename.
490
fb6b6049
KH
4912009-07-13 Kenichi Handa <handa@m17n.org>
492
e2402a5e
KH
493 * chartab.c (sub_char_table_ref_and_range): Fix the range check
494 against max_char.
495
fb6b6049
KH
496 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
497 calling XSYMBOL (sym).
498
65156807
EZ
4992009-07-11 Eli Zaretskii <eliz@gnu.org>
500
1ac9108a
SM
501 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
502 New function.
503 (directory_files_internal) [WINDOWSNT]:
504 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
505 the filesystem of the directory is fast or slow.
506
507 * w32.c (logon_network_drive): Don't assume PATH is an absolute
508 file name.
509 (is_slow_fs): New function.
510 (stat): Use it to determine whether to issue more system calls to
511 get accurate file attributes, when w32-get-true-file-attributes is
512 `local'.
513
e0ab5fcf
JD
5142009-07-10 Jan Djärv <jan.h.d@swipnet.se>
515
516 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 517 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
518 parameter font-parameter as default to the font dialog.
519
784ceded
KH
5202009-07-10 Kenichi Handa <handa@m17n.org>
521
522 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
523
fb8edc0b
EZ
5242009-07-09 Eli Zaretskii <eliz@gnu.org>
525
1ac9108a 526 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 527
fb8edc0b
EZ
528 * w32.c (stat): Treat UNC file names as residing on remote
529 drives. (Bug#3542)
530
635c75b1
KH
5312009-07-09 Kenichi Handa <handa@m17n.org>
532
533 * fontset.c (fontset_find_font): Fix previous change.
534
c1d5ce94
MA
5352009-07-08 Michael Albinus <michael.albinus@gmx.de>
536
537 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
538 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
539 error flag.
540
edb61b39
KH
5412009-07-08 Kenichi Handa <handa@m17n.org>
542
374bf7e4
KH
543 * fontset.c (fontset_find_font): Fix the logic of handling
544 charset_matched.
545 (font_for_char): Delete unused var.
546 (generate_ascii_font_name): Delete it.
547
edb61b39
KH
548 * coding.h (JIS_TO_SJIS2): Fix the code range check.
549
550 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
551 (encode_coding_sjis): Fix the code range check.
552
0f3f018c
CY
5532009-07-07 Chong Yidong <cyd@stupidchicken.com>
554
555 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
556 (Fexpand_file_name): Copy string data properly (Bug#3772).
557
fcaf6f3a
JD
5582009-07-07 Jan Djärv <jan.h.d@swipnet.se>
559
560 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
561 first MapNotify.
562
6809ca75
KH
5632009-07-07 Kenichi Handa <handa@m17n.org>
564
565 * character.h (unibyte_has_multibyte_table): Delete extern.
566 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
567
568 * charset.c (Fset_charset_priority): Update charset_unibyte.
569 (syms_of_charset): Initialize charset_unibyte.
570
571 * character.c (unibyte_has_multibyte_table): Delete it.
572 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
573 charset_unibyte.
574 (multibyte_char_to_unibyte_safe): Likewise.
575 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
576
1ac9108a 577 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
578 (x_produce_glyphs): Likewise.
579
580 * .gdbinit (xcharset): Fix the treating $arg0.
581
ad9e2d54
EZ
5822009-07-04 Eli Zaretskii <eliz@gnu.org>
583
584 Emulation of `getloadavg' on MS-Windows.
585 * w32.c: Include float.h
586 (g_b_init_get_native_system_info, g_b_init_get_system_times)
587 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
588 (get_native_system_info, get_system_times): New functions.
589 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
590 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
591 (globals_of_w32): Initialize g_b_init_get_native_system_info,
592 g_b_init_get_system_times, and num_of_processors.
593
0a3472c7
JR
5942009-07-03 Jason Rumney <jasonr@gnu.org>
595
596 * w32term.c (w32_initialize): Use standard types.
597
80904120
EZ
5982009-07-03 Eli Zaretskii <eliz@gnu.org>
599
600 * dired.c (Ffile_attributes): Decode user and group names by the
601 locale's encoding. (Bug#3443)
602
6978862d
DN
6032009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
604
f8d23104
DN
605 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
606 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
607
608 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
609
610 * term.c (init_tty): Remove spurious #ifdef.
611
6978862d
DN
612 * m/mips.h: Mention this file is also used for netbsd.
613 * m/pmax.h: Remove file.
614
e044e4fc
JD
6152009-07-03 Jan Djärv <jan.h.d@swipnet.se>
616
617 * xterm.h (struct x_display_info): Add invisible_cursor.
618 (struct x_output): Add current_cursor.
619
620 * xterm.c (XTtoggle_invisible_pointer): New function.
621 (x_define_frame_cursor): Don't define cursor if invisible or the
622 same as before. Set current_cursor.
623 (x_create_terminal): Set toggle_invisible_pointer_hook.
624
625 * xfns.c (make_invisible_cursor): New function.
626 (x_set_mouse_color): Call make_invisible_cursor.
627 Set current_cursor.
628 (x_window): Set current_cursor.
629
630 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
631
632 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
633 inserting a character.
634 (read_avail_input): Call frame_make_pointer_visible.
635
636 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
637 (frame_make_pointer_invisible, frame_make_pointer_visible):
638 New functions.
e044e4fc
JD
639 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
640
641 * frame.h: Declare frame_make_pointer_invisible and
642 frame_make_pointer_visible.
643 (struct frame): Add pointer_invisible.
644
574c8efa
JD
6452009-07-02 Jan Djärv <jan.h.d@swipnet.se>
646
7b507248
JD
647 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
648 frame isn't visible.
649 (xg_frame_resized): If width/height is -1, get size of window
650 from X server.
651
652 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
653 for MapNotify.
654
835bdaa7 655 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 656 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 657 (flush_and_sync): Reintroduce.
574c8efa 658
3f1c6666 6592009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 660
31fd7c5c 661 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
662
663 * xterm.c (x_handle_net_wm_state): Also look for sticky.
664 (x_term_init): Initialize Xatom_net_wm_state_sticky.
665
666 * frame.h: Declare Qsticky.
667
cad9ef74
JD
668 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
669
670 * nsfns.m (ns_frame_parm_handlers): Ditto.
671
672 * frame.c: Declare Qsticky.
673 (frame_parms): Add sticky.
674
675 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
676
677 * xterm.h: Declare x_set_sticky.
678
679 * xterm.c (x_set_sticky): New function.
680
69b16610
JD
681 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
682 (xg_tool_bar_menu_proxy): Attach enter/leave events to
683 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
684
685 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
686
687 * frame.c: Qmaximized is new.
688 (x_set_frame_parameters): Do not handle fullscreen specially.
689 Only set width and height if explicitly set.
690 (x_set_fullscreen): Handle Qmaximized.
691 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
692 (syms_of_frame): Initialize Qmaximized.
693
1ac9108a
SM
694 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
695 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
696
697 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
698 for Expose event. Add call to x_check_fullscreen for MapNotify event.
699 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
700 set gravity to NorthWestGravity when USE_GTK.
701 (set_wm_state): New function.
31fd7c5c 702 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
703 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
704 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 705 or the case when no window manager is running. That means remove calls
3f1c6666
JD
706 to x_real_positions and x_fullscreen_adjust.
707
708 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
709 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
710 flush_and_sync.
711 (xg_height_changed): New function.
712 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
713 and gtk_window_set_policy. Set frame gravity after parsing the
714 geometry string.
3f1c6666
JD
715 (xg_update_frame_menubar, free_frame_menubar)
716 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
717 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
718 Remove calls to xg_frame_set_char_size.
719
fd503d99
KH
7202009-07-01 Kenichi Handa <handa@m17n.org>
721
722 * keyboard.c (decode_keyboard_code): New function.
723 (tty_read_avail_input): Decode the input bytes if necessary.
724
1ac9108a
SM
725 * coding.c (setup_coding_system):
726 Initialize coding->carryover_bytes to 0.
fd503d99
KH
727 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
728 use Qno_conversion.
729
24ed93fb
YM
7302009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
731
732 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
733
99061dfc
CY
7342009-06-30 Chong Yidong <cyd@stupidchicken.com>
735
1ac9108a 736 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 737
ff90fbde
JR
7382009-06-30 Jason Rumney <jasonr@gnu.org>
739
740 * w32term.c (w32_initialize): Use GetModuleHandle for library that
741 is already loaded.
742 Set user model ID if supported (bug#1849).
743
5f445726
JM
7442009-06-29 Jim Meyering <meyering@redhat.com>
745
746 Remove useless if-before-xfree test.
747 * nsfont.m (nsfont_close): Remove useless test.
748 * term.c (delete_tty): Likewise.
749 * w32.c (system_process_attributes): Likewise.
750 * w32font.c (w32font_close): Likewise.
751 * xfaces.c (x_free_gc): Likewise.
752 * xselect.c (buffer): Likewise.
753
b9607587
AS
7542009-06-28 Andreas Schwab <schwab@linux-m68k.org>
755
756 * process.c (send_process): Keep decoded string in a local
757 variable and protect it from GC. (Bug#3521)
758
89ba96f4
EZ
7592009-06-28 Eli Zaretskii <eliz@gnu.org>
760
761 * term.c (create_tty_output) [MSDOS]: #ifdef away.
762 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
763
098a1589
CY
7642009-06-28 Chong Yidong <cyd@stupidchicken.com>
765
485422be
CY
766 * xdisp.c (start_display, handle_face_prop)
767 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
768 (redisplay_window, try_window_id, produce_image_glyph):
769 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 770
098a1589
CY
771 * xterm.c (x_update_window_begin, x_new_focus_frame)
772 (x_scroll_bar_handle_click, handle_one_xevent)
773 (handle_one_xevent, XTread_socket, x_focus_on_frame)
774 (x_make_frame_visible, x_make_frame_invisible)
775 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
776 code chunks that are now obsolete.
777
78c38319
MA
7782009-06-28 Michael Albinus <michael.albinus@gmx.de>
779
780 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
781 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
782 for hours, when optimzation is enabled.
783 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
784 (xd_read_message): Make them static.
785
4189ed40
CY
7862009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
787
788 * term.c (turn_on_face): Allow simultaneously bold and dim
789 terminal faces (Bug#3530).
790
cd9b5e16
CY
7912009-06-27 Chong Yidong <cyd@stupidchicken.com>
792
4e23bedb
CY
793 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
794
cd9b5e16
CY
795 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
796 truncation glyphs (Bug#3686).
797
07cc3c35
GM
7982009-06-27 Glenn Morris <rgm@gnu.org>
799
800 * m/pmax.h: Restore file, with only netbsd portions.
801
31fd7c5c 8022009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 803
cd9b5e16 804 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 805
42d4a64f
KH
8062009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
807
808 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
809 the arg FORCE_SYMBOL.
810
930fe55b 8112009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
812
813 * fontset.c (fontset_find_font): When a usable rfont_def is found
814 in a fallback font-group, make it the first element of the group.
815
57ebc3fd
CY
8162009-06-24 Chong Yidong <cyd@stupidchicken.com>
817
818 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
819
f084f942
KH
8202009-06-24 Kenichi Handa <handa@m17n.org>
821
822 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
823 set for C.
824 (fontset_font): Record the availability of a font for C both in
825 the realized fontsets of the current one and the default one.
826
2f686c87
DN
8272009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
828
829 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
830 conditional, it is always defined on AIX.
831
666e158e
MB
8322009-06-23 Miles Bader <miles@gnu.org>
833
834 * window.c (Vrecenter_redisplay): New variable.
835 (syms_of_window): Initialize it.
836 (Qtty): New extern declaration.
837 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
838
c6da7cd2
JM
8392009-06-23 Jim Meyering <meyering@redhat.com>
840
1ac9108a
SM
841 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
842 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 843 pointer dereferences are guaranteed to be valid.
c6da7cd2 844
678dca3d
KH
8452009-06-23 Kenichi Handa <handa@m17n.org>
846
74d75424
KH
847 * emacs.c (main): Call init_font ().
848
849 * font.h (Vfont_log): Extern it.
850 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
851
852 * font.c (font_sort_entities, font_list_entities)
853 (font_matching_entity, font_open_entity)
854 (font_close_object): Change font_add_log to FONT_ADD_LOG.
855 (Vfont_log): Delete static.
856 (font_log_env_checked): Delete this variable.
857 (font_add_log): Don't check font_log_env_checked.
858 (font_deferred_log): Check Vfont_log.
859 (init_font): New function.
860
678dca3d
KH
861 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
862
863 * w32font.c: Change font_add_log to FONT_ADD_LOG.
864
865 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
866
867 * xfont.c: Change font_add_log to FONT_ADD_LOG.
868
869 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
870 (face_for_char): Don't call font_deferred_log here.
871 (font_for_char): Likewise.
872
8a668709
CY
8732009-06-22 Chong Yidong <cyd@stupidchicken.com>
874
9a01ee33
CY
875 * w32term.c (x_draw_glyph_string): Use the glyph string's width
876 rather than its background_width for drawing the overline and
877 underline (Bug#489).
878
879 * xterm.c (x_draw_glyph_string): Use the glyph string's width
880 rather than its background_width for drawing the overline and
881 underline (Bug#489).
ec7c9926
CY
882 (xg_default_icon_file): New variable.
883 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
884 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 885
8a668709
CY
886 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
887 (load_overlay_strings): Remove externs.
888 (fast_find_position): Function deleted.
889 (mouse_face_from_buffer_pos): New function, based on
890 fast_find_position. Correctly handle before-strings,
891 display-strings, and after-strings (Bug#1220).
892 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
893
4d4c02d8
CY
8942009-06-21 Chong Yidong <cyd@stupidchicken.com>
895
1ac9108a 896 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
897 (move_it_in_display_line_to, move_it_in_display_line_to)
898 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
899
70243478
CY
9002009-06-21 Chong Yidong <cyd@stupidchicken.com>
901
902 * Branch for 23.1.
903
13087e59
JR
9042009-06-21 Jason Rumney <jasonr@gnu.org>
905
906 * w32term.c (keyboard_codepage): New static variable.
907 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
908 (w32_read_socket) [WM_CHAR]: Use it to decode character
909 input (bug#3237).
910 (w32_initialize): Initialize it.
911 (codepage_for_locale): New function.
912
4735b74e
KR
9132009-06-20 Ken Raeburn <raeburn@raeburn.org>
914
915 * process.c (status_message): Pass Faset index argument as a lisp
916 object, so as to work with USE_LISP_UNION_TYPE.
917
0e727afa
YM
9182009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
919
920 * coding.c (Ffind_coding_systems_region_internal):
921 Cache checked characters.
922
cf299835
KH
9232009-06-18 Kenichi Handa <handa@m17n.org>
924
1ac9108a 925 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 926
90f20d94
AS
9272009-06-18 Andreas Schwab <aschwab@redhat.com>
928
929 * xdisp.c (redisplay_internal): Check that the frame is still
930 live after redisplay of its windows.
931 (redisplay_windows): Check that the window is still live.
932
7f1faf1c
KH
9332009-06-17 Andreas Schwab <schwab@linux-m68k.org>
934
935 * coding.c (detect_coding_utf_16): Fix previous change.
936
cc13543e
KH
9372009-06-16 Kenichi Handa <handa@m17n.org>
938
939 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
940 UTF-16 by checking the dispersion of Eth and Oth bytes.
941
977b85f4
AS
9422009-06-15 Andreas Schwab <schwab@linux-m68k.org>
943
944 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
945
66bd43d1
KH
9462009-06-15 Kenichi Handa <handa@m17n.org>
947
948 * process.c (status_message): Fix previous change. Be sure to
949 decode a localized string.
950
cb5ca9c5
YM
9512009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
952
953 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
954 add comment explaining why.
955
ec7709ba 9562009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 957
ec7709ba 958 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 959
4b7f335c
AR
9602009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
961
962 * nsfont.m (ns_attribute_value): Remove.
963 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
964 (ns_has_attribute): Shrink the normal range.
965 (ns_findfonts): Don't worry about requested spec in determining
966 need for synthItal.
e41820ee 967 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 968
73b26103
SZ
9692009-06-14 Seiji Zenitani <zenitani@mac.com>
970
971 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
972
5753e4da
KH
9732009-06-11 Kenichi Handa <handa@m17n.org>
974
975 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
976 overhang for the static composition case.
977
3561b671
KH
9782009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
979
5753e4da
KH
980 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
981 overhang for the automatic composition case.
982
3561b671
KH
983 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
984 composition case.
985
852bbd41
CY
9862009-06-10 Chong Yidong <cyd@stupidchicken.com>
987
988 * xdisp.c (get_next_display_element): When handling wrap-prefix
989 and line-prefix, treat \n as a control character (bug#3502).
990
9903d1e6
KH
9912009-06-10 Kenichi Handa <handa@m17n.org>
992
993 * font.c (font_parse_family_registry): Fix for one-char foundry.
994 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
995
0bcbaaaa
CY
9962009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
997
998 * process.c (status_message): Fix handling of multibyte signal
999 string (Bug#3499).
1000
40aa3f13
JM
10012009-06-09 Jim Meyering <meyering@redhat.com>
1002
1f80c7e2
CY
1003 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
1004 color name is missing.
40aa3f13 1005
72d51285
KH
10062009-06-09 Kenichi Handa <handa@m17n.org>
1007
1008 * charset.c (Fmap_charset_chars): In docstring, state clearly that
1009 FROM-CODE and TO-CODE are codepoints of CHARSET.
1010
c1d04d84
AR
10112009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1012
1013 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
1014
10152009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1016
1017 Changes to support :script/:lang/:otf in NS font driver.
1018 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
1019 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
1020 indicate not part of font driver interface, and change callers.
1021 (ns_get_family): Remove pointless null check.
1022 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
1023 ns_spec_to_descriptor, ns_descriptor_to_entity.
1024 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
1025 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
1026 (ns_spec_to_descriptor, ns_descriptor_to_entity)
1027 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
1028 (ns_get_req_script, ns_accumulate_script_ranges)
1029 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
1030 New functions.
1031 (nsfont_list, nsfont_match): Use ns_findfonts.
1032 (nsfont_open): Use font descriptor instead of traits.
1033 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
1034 (dump_glyphstring): Rename to ns_dump_glyphstring.
1035
c7eb9816
AR
1036 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
1037
c1d04d84
AR
1038 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
1039
1040 * fontset.c (fontset_from_font): Remove NS-specific code.
1041
ec7709ba 10422009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
1043
1044 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
1045 nonactive windows.
1046
31fd7c5c 10472009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 1048
1ac9108a 1049 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 1050
68852c13 10512009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
1052
1053 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
1054
6756cd1d
CY
10552009-06-07 Chong Yidong <cyd@stupidchicken.com>
1056
1057 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
1058 account for the overflowing of newlines into the last glyph on the
1059 display line (Bug#3482).
1060
28bf482a
DR
10612009-06-05 David Reitter <david.reitter@gmail.com>
1062
ec7709ba
JB
1063 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
1064 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
1065 Fns_selection_exists_p, Fns_selection_owner_p.
1066
fdb55376
JR
10672009-06-03 Jason Rumney <jasonr@gnu.org>
1068
1069 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
1070 available. (Bug#3379)
1071
05129fbe
KH
10722009-05-29 Kenichi Handa <handa@m17n.org>
1073
1ac9108a
SM
1074 * coding.c (get_translation_table):
1075 Check Venable_character_translation.
05129fbe 1076
ec7709ba 10772009-05-26 David Reitter <david.reitter@gmail.com>
15891144 1078
ec7709ba
JB
1079 * nsterm.m (ns_raise_frame): Only raise frame if visible.
1080 (x_make_frame_visible): Move frame to front rather than calling
15891144 1081 ns_raise_frame().
ec7709ba 1082 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 1083 isn't key window.
ec7709ba 1084 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
1085 drawRect may be called by NSView even if the frame is hidden.
1086
ec7709ba
JB
1087 * nsfns.m (Fx_create_frame): Follow other ports in
1088 determining visibility; default to t. Ensure async_visible is set.
15891144 1089
21f73755
EZ
10902009-05-23 Eli Zaretskii <eliz@gnu.org>
1091
1092 * dired.c (Ffile_attributes): Doc fix.
1093
34001e41
CY
10942009-05-22 Chong Yidong <cyd@stupidchicken.com>
1095
1096 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
1097
46306a17
SM
10982009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
1099
1100 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
1101 and xfont_scratch_props.
1102 (syms_of_xfont): Do it here instead.
1103 (xfont_find_ccl_program): Delete, unused.
1104 (xfont_open): Delete unused var `i'.
1105
ef6e0694
KH
11062009-05-21 Kenichi Handa <handa@m17n.org>
1107
1108 * fontset.c (Qlatin): Don't make it static.
1109
46306a17
SM
1110 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
1111 New functions.
ef6e0694
KH
1112 (xfont_scripts_cache, xfont_scratch_props): New variables.
1113 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
1114 (xfont_list_pattern): Argument changed. Callers changed.
1115 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
1116 (xfont_list): Don't reject a font spec with :script property.
1117 (xfont_has_char): Fix setting of encoding.
1118 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
1119 xfont_scratch_props.
1120
11212009-05-19 Kenichi Handa <handa@m17n.org>
1122
46306a17 1123 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
1124 Callers changed.
1125
11262009-05-18 Kenichi Handa <handa@m17n.org>
1127
1128 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
1129
ac71ced7
SM
11302009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
1131
1132 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
1133 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
1134
1c6d1051
YM
11352009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1136
1137 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
1138 (x_delete_terminal): Dissociate resource database from display and
1139 then call XrmDestroyDatabase before closing display.
1140
9b9b779c
AR
11412009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1142
1143 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
1144 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
1145 whether selected frame is viable before raising it (based on patch
1146 by David Reitter), and improve commentary.
1147 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 1148
cccd42d5
KH
11492009-05-15 Kenichi Handa <handa@m17n.org>
1150
1151 * font.c (Ffont_spec): Check arguments.
1152
337fbd17
CY
11532009-05-14 Chong Yidong <cyd@stupidchicken.com>
1154
1155 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
1156 weight when testing attributes (Bug#3282).
1157
47a6002f
JD
11582009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1159
1160 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
1161 what we expect to get in the next ConfigureNotify event.
1162
9cb363db
YM
1163 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
1164 before Xft one (Bug#1696).
1165
b9126609
CY
11662009-05-07 David Reitter <david.reitter@gmail.com>
1167
1168 * nsfns.m (Fx_display_planes): Compute bitplanes using
1169 NSBitsPerPixelFromDepth (Bug#3207).
1170
27a69fd9
CY
11712009-05-10 Chong Yidong <cyd@stupidchicken.com>
1172
1173 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
1174
00f37552
TTN
11752009-05-10 Ulrich Mueller <ulm@gentoo.org>
1176
1177 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
1178
2d82a920
DR
11792009-05-07 David Reitter <david.reitter@gmail.com>
1180
ec7709ba
JB
1181 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
1182 Respect mouse face background.
2d82a920 1183
46b0d52d
DR
11842009-05-07 David Reitter <david.reitter@gmail.com>
1185
ec7709ba
JB
1186 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
1187 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
1188 in ns_update_begin and ns_update_end.
1189
ce1b23bb
SM
11902009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1191
5996e1b7
SM
1192 * nsfns.m (ns_get_screen): Rewrite.
1193 Don't presume selected-frame is of type `ns'.
1194
ba98e3a0
SM
1195 * font.c (font_update_drivers): Sanity fallback to avoid disabling
1196 all drivers.
1197
ce1b23bb
SM
1198 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
1199
bcda200f
YM
12002009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1201
1202 * keyboard.h (add_user_signal): Fix typo in extern.
1203
1204 * lisp.h (add_user_signal): Remove extern.
1205
1206 * unexelf.c (unexec): Consider a section to precede the .bss section
1207 if its addresses overlap that of .bss.
1208 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
1209 instead of dumping process.
1210
864660a2
SM
12112009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1212
1213 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
1214
50da4e56
SM
12152009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
1216
1217 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
1218
51520a1a
DN
12192009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1220
1221 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
1222 any statements.
1223
409ea3a1
AS
12242009-05-02 Andreas Schwab <schwab@linux-m68k.org>
1225
59c4c60f
AS
1226 * process.c (read_process_output): Make sure the current buffer is
1227 always restored.
1228
409ea3a1
AS
1229 * coding.c (record_conversion_result): Don't modify
1230 Vlast_code_conversion_error for successful result.
1231 (alloc_destination): Don't clobber conversion result. (Bug#1650)
1232
56f00ed2
KH
12332009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1234
1235 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 1236 (load_charset_map): Remove unnecessary code.
56f00ed2 1237
4491c9d2
DR
12382009-04-30 David Reitter <david.reitter@gmail.com>
1239
35f5b128 1240 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
1241 through f24.
1242
6970f632
CY
12432009-04-30 Chong Yidong <cyd@stupidchicken.com>
1244
1245 * xfaces.c (face_at_buffer_position): New arg base_face_id.
1246
1247 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
1248 face_at_buffer_position.
1249 (face_before_or_after_it_pos, get_next_display_element)
1250 (note_mouse_highlight): Update face_at_buffer_position call.
1251
1252 * term.c (term_mouse_highlight):
1253 * msdos.c (IT_note_mouse_highlight):
1254 * fontset.c (Finternal_char_font):
35f5b128 1255 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
1256
1257 * dispextern.h (face_at_buffer_position): Update prototype.
1258
0c616f63
KH
12592009-04-30 Kenichi Handa <handa@m17n.org>
1260
35f5b128 1261 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 1262
ad3aaf33
AS
12632009-04-29 Andreas Schwab <schwab@linux-m68k.org>
1264
1265 * callproc.c (Fcall_process): Fix GC protection. Make sure
1266 current buffer is always restored.
1267
c3c963a0
YM
12682009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1269
1270 * atimer.c (init_atimer): Also clear stopped_atimers.
1271
1272 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
1273
7e3386cb
YM
1274 * process.c (create_process): Clean up merger residues of
1275 2008-07-17 change.
1276
91f68422
CY
12772009-04-29 Ulrich Mueller <ulm@gentoo.org>
1278
1279 * lread.c (Vread_circle): New variable.
1280 (read1): Disable recursive read if Vread_circle is nil.
1281
24b34550
KH
12822009-04-29 Kenichi Handa <handa@m17n.org>
1283
1284 * fontset.h (set_default_ascii_font): Delete extern.
1285
1286 * fontset.c (set_default_ascii_font): Delete this unused function.
1287
1288 * frame.c (x_set_font): When ARG is a font-object, check if the
1289 font-object matches with the ASCII font-spec of the frame's
9c358bda 1290 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 1291
77bf07e1
AS
12922009-04-28 Andreas Schwab <schwab@linux-m68k.org>
1293
1294 * fns.c (Flocale_info): Protect vector from GC during decoding.
1295
1296 * process.c (Fstart_process): Protect argv strings from GC during
1297 encoding.
1298
2c55aacf
AS
12992009-04-27 Andreas Schwab <schwab@linux-m68k.org>
1300
1301 * sysdep.c: Include <ctype.h>.
1302
b892d3c9
DR
13032009-04-27 David Reitter <david.reitter@gmail.com>
1304
35f5b128 1305 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
1306 Remove commented-out code.
1307
9d0644c4
JB
13082009-04-26 Johan Bockgård <bojohan@gnu.org>
1309
1310 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1311
b7053016
JR
13122009-04-25 Jason Rumney <jasonr@gnu.org>
1313
1314 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
1315
4e8231f3
YM
13162009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1317
1318 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
1319 Swap bytes in short integer if fringe bitmap width > 8.
1320
493dcf2c
KH
13212009-04-23 Kenichi Handa <handa@m17n.org>
1322
1323 * xfaces.c (Fx_list_fonts): If a font size is specified in
1324 PATTERN, set it in returned scalable fonts.
1325
401e9e57
CY
13262009-04-22 Chong Yidong <cyd@stupidchicken.com>
1327
708e05dc
CY
1328 * keyboard.c (Fset_input_meta_mode): Doc fix.
1329
1330 * dispnew.c (Fsend_string_to_terminal): Doc fix.
1331
1ac9108a 1332 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
1333
1334 * coding.c (Fterminal_coding_system): Doc fix.
1335
1336 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
1337 (Fx_display_pixel_height, Fx_display_planes)
1338 (Fx_display_color_cells, Fx_server_max_request_size)
1339 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1340 (Fx_display_mm_height, Fx_display_mm_width)
1341 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
1342 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
1343 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
1344 (check_x_display_info): Handle terminal objects instead of
1345 terminal ids.
1346
401e9e57
CY
1347 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
1348 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
1349 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
1350 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 1351
df80c7f0
KH
13522009-04-21 Kenichi Handa <handa@m17n.org>
1353
5a8f12af 1354 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 1355 (font_score): Check AVGWIDTH too.
908567ef 1356
df80c7f0
KH
1357 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
1358 worst case.
1ac9108a
SM
1359 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
1360 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 1361
705af33f
JR
13622009-04-19 Jason Rumney <jasonr@gnu.org>
1363
1364 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 1365 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
1366
1367 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
1368 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
1369 get_phys_cursor_geometry.
1370
b71ac3dd 1371 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
1372 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
1373 using get_phys_cursor_geometry.
1374
1375 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
1376 correctly calculated.
1377
dc2933eb
JD
13782009-04-19 Jan Djärv <jan.h.d@swipnet.se>
1379
1ac9108a
SM
1380 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
1381 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
1382 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
1383 is deprecated.
1384
973e7849
AS
13852009-04-18 Andreas Schwab <schwab@linux-m68k.org>
1386
1387 * font.c (font_put_frame_data): Use xfree instead of free.
1388
314d66f4
JB
13892009-04-17 Juanma Barranquero <lekktu@gmail.com>
1390
1391 * w32font.c (Qja, Qko): Remove declarations.
1392 (syms_of_w32font): Don't DEFSYM them.
1393
cf702558
CY
13942009-04-17 Chong Yidong <cyd@stupidchicken.com>
1395
1396 * font.c (Qja, Qko): Move definitions here from ftfont.c.
1397
1398 * font.h (Qja, Qko): Extern them.
1399
1400 * ftfont.c (Qja, Qko): Remove declarations.
1401
1402 * xfont.c (Qja, Qko): Remove declarations.
1403
b50504f5
KH
14042009-04-17 Kenichi Handa <handa@m17n.org>
1405
bde25748
KH
1406 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
1407 string from a vector to handle Latin-1 characters correctly.
1408
b50504f5
KH
1409 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
1410 entity even if the cache hits.
1411
f4646fff
AS
14122009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1413
1414 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 1415 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 1416
e7deaab0
AS
1417 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
1418 * lisp.h: Adjust prototypes.
1419
0a0e7d49
CY
14202009-04-16 Chong Yidong <cyd@stupidchicken.com>
1421
1422 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
1423 change (Bug#3003).
1424
3c908a57
KH
14252009-04-16 Kenichi Handa <handa@m17n.org>
1426
1ac9108a 1427 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
1428
1429 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
1430 adstyle.
1431
1432 * ftfont.c (Qja, Qko): Don't make them static.
1433 (enum ftfont_cache_for): New enum.
1434 (fc_charset_table): Undo the previous change.
1435 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
1436 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
1437 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
1438 non-scarable font, try to get AVERAGE_WIDTH.
1439 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
1440 Change ft_face_cache from a list of a hash-table. Don't check
1441 `ja' and `ko' adstyle here.
1442 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
1443 FTFONT_CACHE_FOR_CHARET.
1444 (ftfont_get_charset): Undo the previous change.
1ac9108a 1445 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
1446 (ftfont_close): Likewise.
1447 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
1448
1449 * font.c (font_sort_entites): Change the meaning of the arg
1450 BEST-ONLY. Don't optimize for VEC of lenght 1.
1451 (font_select_entity): Just return the value of font_sort_entites.
1452
1453 * xfaces.c (merge_face_vectors): Reflect font properties in
1454 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
1455 font_clear_prop if a face attribute doesn't change.
1456
3c908a57
KH
1457 * charset.h (charset_ksc5601): Extern it.
1458
1459 * charset.c (charset_ksc5601): New variable.
1460 (Fdefine_charset_internal): Set charset_ksc5601.
1461 (init_charset_once): Initialize charset_ksc5601 to -1.
1462
d65859c3
DN
14632009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1464
1465 * fileio.c (history_delete_duplicates): Remove unused declaration.
1466
1467 * callint.c (history_delete_duplicates): New declaration.
1468 (Fcall_interactively): Remove command history duplicates when
1469 history_delete_duplicates is true.
1470
3ba010e5
EZ
14712009-04-14 Eli Zaretskii <eliz@gnu.org>
1472
1473 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
1474
06f19b91
KH
14752009-04-14 Kenichi Handa <handa@m17n.org>
1476
1477 * font.c (Ffont_info): Fix docstring. Fix the second element of
1478 the returned value (bug#2949).
1479
2cce8bfc
CY
14802009-04-14 Chong Yidong <cyd@stupidchicken.com>
1481
1482 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
1483
d156542d
KH
14842009-04-14 Kenichi Handa <handa@m17n.org>
1485
1486 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
1487 encoding charset is ascii_compatible.
1488
1489 * charset.c (Fdefine_charset_internal): Make charset
1490 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
1491 code_offset is 0, and covers all ASCII characters.
1492
86fa089e
SM
14932009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1494
1495 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
1496 (ns_string_to_pasteboard_internal):
1497 * nsmenu.m (process_dialog):
1498 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
1499 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
1500 * lisp.h (Fx_load_color_file): Declare.
1501
a8a3728b
KH
15022009-04-13 Kenichi Handa <handa@m17n.org>
1503
1ac9108a 1504 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
1505 (font_select_entity): Suppress the code to optimize for the same
1506 kind of fonts.
1507 (font_load_for_lface): Get a font that supports at least ASCII
1508 characters.
1509
1510 * ftfont.c (Qja, Qko): New variables.
1511 (fc_charset_table): Delete uniquifier data for iso8859-1.
1512 (ftfont_get_latin1_charset): New function.
1513 (get_adstyle_property): New function.
1514 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
1515 bitmap fonts.
1516 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
1517 Delete iso-8859-1 range from the charset of fonts whose adstyle is
1518 `ko' or `ja'.
1519 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 1520 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
1521 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
1522 property.
1523 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
1524 (syms_of_ftfont): DEFSYM Qja and Qko.
1525
483670b5
KH
15262009-04-09 Kenichi Handa <handa@m17n.org>
1527
12b55765
KH
1528 * charset.c (map_charset_chars): For a charset of `superset'
1529 method, fix calculation of code range.
1530
483670b5
KH
1531 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
1532 from the list of extra properties.
1533 (font_clear_prop): Be sure to delete `:name' font property.
1534
57d3b93b
KH
15352009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1536
b4b2c2ca
YM
1537 * dispnew.c (redraw_overlapping_rows): Fix detection of
1538 overlapping for topmost and bottommost rows.
1539
1ac9108a 1540 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 1541
472c3609
JR
15422009-04-06 Jason Rumney <jasonr@gnu.org>
1543
1544 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
1545
ab193662
KH
15462009-04-06 Kenichi Handa <handa@m17n.org>
1547
1548 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
1549
1550 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
1551
0c26f026
KH
15522009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1553
1554 * ftfont.c (ftfont_open): Fix checking of the return value of
1555 FT_Load_Char. Fix setting font->underline_thickness.
1556
e173bbce
CY
15572009-04-04 Chong Yidong <cyd@stupidchicken.com>
1558
1559 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
1560 (Fterminal_parameters, Fterminal_parameter)
1561 (Fset_terminal_parameter): In doc string, refer to terminal
1562 objects rather than terminal ids.
1563
693a2698
EZ
15642009-04-04 Eli Zaretskii <eliz@gnu.org>
1565
1566 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
1567 ret_lim_data. (Bug#2867)
1568
d5221487
CY
15692009-04-03 Chong Yidong <cyd@stupidchicken.com>
1570
1571 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
1572 so they don't get wider than the window, matching 2006-01-23
1573 change to the partner function in xdisp.c (Bug#2800).
1574
223509a3
KH
15752009-04-03 Kenichi Handa <handa@m17n.org>
1576
1577 * print.c (print_object): Make each lowest sub_char_table start a
1578 new line (Bug#2866).
1579
74fcd0b1
KH
15802009-04-02 Kenichi Handa <handa@m17n.org>
1581
1582 * fontset.c (fontset_font): Record no-font when a fontset
1583 explicitly tells not to try another font-specs.
1584
c542407d
SM
15852009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
1586
1587 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
1588
e3869731
KH
15892009-03-30 Kenichi Handa <handa@m17n.org>
1590
d8d2f142
KH
1591 * fontset.c (fontset_from_font): Specify only registry in a
1592 font-spec for all characters supported by that registry.
1593
e3869731
KH
1594 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
1595 even if HAVE_M17N_FLT is not defined.
1596
5da5f805
CY
15972009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
1598
1599 * ftfont.c: Conditionalize prototyping and use of
1600 ftfont_variation_glyphs.
1601
ab226c50
SM
16022009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1603
9628fed7
SM
1604 * frame.c (delete_frame): Work around compiler bug.
1605
1606 * editfns.c (general_insert_function): Adjust to insdel.c changes.
1607 * insdel.c (prepare_to_modify_buffer, signal_before_change):
1608 Some more EMACS_INT.
1609 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
1610
1611 * xdisp.c (dump_glyph): Fix typo.
1612
ae19ba7c
SM
1613 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
1614 (adjust_markers_gap_motion, adjust_markers_for_delete)
1615 (adjust_markers_for_insert, adjust_point)
1616 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
1617 (make_gap, copy_text, count_size_as_multibyte, insert)
1618 (insert_and_inherit, insert_before_markers)
1619 (insert_before_markers_and_inherit, insert_1)
1620 (count_combining_before, count_combining_after, insert_1_both)
1621 (insert_from_string, insert_from_string_before_markers)
1622 (insert_from_string_1, insert_from_gap, insert_from_buffer)
1623 (insert_from_buffer_1, adjust_after_replace)
1624 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
1625 (replace_range_2, del_range, del_range_1, del_range_byte)
1626 (del_range_both, del_range_2, modify_region)
1627 (prepare_to_modify_buffer, signal_before_change)
1628 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
1629 for buffer positions and sizes.
1630 * lisp.h: Adjust prototypes accordingly.
1631
1632 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
1633 (non_regular_inserted, non_regular_nbytes, read_non_regular)
1634 (Finsert_file_contents): Use EMACS_INT for buffer positions.
1635
ab226c50
SM
1636 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
1637
46dfb8fb
JD
16382009-03-27 Jan Djärv <jan.h.d@swipnet.se>
1639
1640 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
1641 lines and columns so we keep the same pixel height and width.
1642
1643 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
1644 the property _NET_WM_STATE has changed.
46dfb8fb
JD
1645 (x_handle_net_wm_state): New function to update frame parameter
1646 fullscreen.
1647 (x_term_init): Initialize atoms for _NET_WM_STATE.
1648
1649 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
1650
d347e494
SM
16512009-03-27 Kevin Ryde <user42@zip.com.au>
1652
1653 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
1654 Gpm_GetEvent as an error that justifies closing the filedescriptor.
1655 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
1656 (Fgpm_mouse_stop): Pass that new parameter.
1657 * termhooks.h (close_gpm): Adjust prototype.
1658
84db11d6
SM
16592009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
1660
c95a5008
SM
1661 * lisp.h (Fx_focus_frame): Declare.
1662
84db11d6
SM
1663 * callint.c (Fcall_interactively): For '^' just delegate the work to
1664 handle-shift-selection.
1665 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
1666
0a1958d6
CY
16672009-03-24 Chong Yidong <cyd@stupidchicken.com>
1668
0bfdff23
CY
1669 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
1670
0a1958d6
CY
1671 * data.c (Qinteractive_form): New variable.
1672 (Finteractive_form): Use it.
1673
1674 * eval.c (Fcommandp): Use Qinteractive_form.
1675
58aec0d6
JR
16762009-03-24 Jason Rumney <jasonr@gnu.org>
1677
1678 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
1679 Calculate total size precisely. Decode environment variables
1680 before substituting. (Bug#38)
1681
553dd618
KH
16822009-03-24 Kenichi Handa <handa@m17n.org>
1683
1684 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 1685 encoding (Bug#2722).
553dd618 1686
c39ea606
JD
16872009-03-23 Jan Djärv <jan.h.d@swipnet.se>
1688
1689 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
1690 that gdpy is set.
1691
bc9b2b5e
AM
16922009-03-22 Alan Mackenzie <acm@muc.de>
1693
1694 * callint.c (Finteractive): Clarify the doc string - even
1695 promptless elements need \n separators.
1696
9f995a76
JR
16972009-03-22 Jason Rumney <jasonr@gnu.org>
1698
1699 * w32term.c (syms_of_w32term): Doc fix for
1700 x-use-underline-position-properties.
1701
22749e9a
EZ
17022009-03-21 Eli Zaretskii <eliz@gnu.org>
1703
1704 * w32.c (getpwuid): Change argument type to unsigned.
1705 (struct w32_id): Change type of `rid' member to unsigned.
1706 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
1707 argument ID to unsigned. All callers changed.
1708 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
1709
e00553bf
EZ
17102009-03-20 Eli Zaretskii <eliz@gnu.org>
1711
1712 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
1713 negative, produce a float value.
1714
1715 * dired.c (make_uid, make_gid): New functions.
1716 (Ffile_attributes): Use them to avoid negative UID and GID.
1717
f761d6b6
JB
17182009-03-20 Juanma Barranquero <lekktu@gmail.com>
1719
1720 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
1721 (syms_of_keyboard) <command-hook-internal, input-method-function>:
1722 Fix typos in docstrings.
1723
d507f8d7
KH
17242009-03-19 Kenichi Handa <handa@m17n.org>
1725
1726 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
1727 changed, use font_load_for_lface to get a new font object.
1728 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
1729
1730 * frame.c (x_set_font): Handle the case that ARG is a cons.
1731
c68845e0
GM
17322009-03-19 Glenn Morris <rgm@gnu.org>
1733
1734 * fileio.c (Fsubstitute_in_file_name): Doc fix.
1735
bfa49dd1
CY
17362009-03-19 Chong Yidong <cyd@stupidchicken.com>
1737
1738 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
1739
8458d4c1
KH
17402009-03-19 Kenichi Handa <handa@m17n.org>
1741
1742 * charset.c (load_charset_map_from_file): When a mapfile can't be
1743 loaded, signal an error.
1744
78e7d1fe
EZ
17452009-03-18 Eli Zaretskii <eliz@gnu.org>
1746
1747 * dired.c (Ffile_attributes): Make sure UID and GID are always
1748 positive, even if the value is too large for a positive EMACS_INT.
1749 Doc fix.
1750
1751 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
1752
5da9fdfa
YM
17532009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1754
1755 * xmenu.c (xdialog_show): Move Fredisplay call ...
1756 (Fx_popup_dialog): ... here.
1757
7519c40d
SM
17582009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
1759
1760 * dired.c (file_name_completion): Disable the first optimization just
1761 installed, since it is not implemented correctly.
1762
2cd298e2
SM
17632009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1764
1765 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 1766 only if the entry can affect bestmatch.
2cd298e2
SM
1767 Stop the search early, as Ftry_completion already does.
1768
48d37adf
CY
17692009-03-17 Chong Yidong <cyd@stupidchicken.com>
1770
e10c9c93 1771 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 1772
9286b16a
CY
17732009-03-15 Chong Yidong <cyd@stupidchicken.com>
1774
1775 * keyboard.c (parse_menu_item): Don't display remappings as menu
1776 equivalent bindings (Bug#788).
1777
f7b146dc
JR
17782009-03-15 Jason Rumney <jasonr@gnu.org>
1779
1780 * w32term.h (WM_EMACS_PAINT): New message.
1781 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
1782 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
1783 before passing to lisp thread. (Bug#950)
1784
f761d6b6 17852009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 1786
d93f9575
CY
1787 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
1788 variable as it was never reset.
1789 (ns_term_init): Remove initialization of Lisp-settable defaults
1790 and ns_expand_space.
1791 (-setPanelFromDefaultValues): Remove ns_expand_space.
1792 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
1793 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
1794 i.e. no additional spacing, similar to Carbon port.
1795
d93f9575
CY
1796 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
1797 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 1798
305018ec
JD
17992009-03-14 Jan Djärv <jan.h.d@swipnet.se>
1800
1801 * sound.c (alsa_configure): Remove call to deprecated
1802 snd_pcm_sw_params_set_xfer_align.
1803
f761d6b6 18042009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
1805
1806 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
1807 after clicking in a detached tool bar.
1808 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
1809
46e722a9
SM
18102009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
1811
348db3dd
SM
1812 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
1813 int/Lisp_Object mixup).
46e722a9 1814
a3d16f39
KH
18152009-03-13 Kenichi Handa <handa@m17n.org>
1816
1817 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 1818 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
1819 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
1820 (set_fontset_font): Change ARG to a vector. Handle range_list in
1821 ARG correctly.
1822 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 1823 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
1824 the above change.
1825 (fontset_from_font): Fix previous change.
fe24f56a 1826 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
1827 entry. If FONTSET is the default fontset, don't set the extra
1828 slot of the returning char-table.
1829
b066e6b6
JB
18302009-03-12 Juanma Barranquero <lekktu@gmail.com>
1831
1832 * nsfns.m (Fx_close_connection): Doc fix.
1833 (Fns_do_applescript): Reflow docstring.
1834 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
1835 (Fx_display_pixel_width, Fx_display_pixel_height)
1836 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
1837 Fix typos in docstrings.
1838 (Fns_set_alpha): Fix typos in error messages.
1839
d472514e 18402009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 1841
d472514e 1842 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
1843 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
1844 were used for such events.
1845
d472514e
JB
1846 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
1847 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 1848
d472514e 1849 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
1850 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
1851
fb930676
KH
18522009-03-11 Kenichi Handa <handa@m17n.org>
1853
ff85581a
KH
1854 * font.h (font_open_by_spec): Extern it.
1855
c50b7e98
KH
1856 * font.c (font_open_by_spec): New function.
1857 (font_open_by_name): Use font_open_by_spec.
1858
fb930676
KH
1859 * frame.c (x_set_font): When ARG is a font-object, don't alter the
1860 fontset of the frame.
1861
1862 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
1863 modify the default font of frames that use this fontset.
1864 (num_auto_fontsets): New variable.
1865 (fontset_from_font): Use num_auto_fontsets to decide a fontset
1866 name. Be sure to set FONTSET_ASCII to the correct font name.
1867 (update_auto_fontset_alist): New function.
1868
df4e8455
JB
18692009-03-11 Juanma Barranquero <lekktu@gmail.com>
1870
1871 * makefile.w32-in: Update dependencies.
1872
0a375797
AR
18732009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1874
1875 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
1876
61313fa3
SM
18772009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1878
1879 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
1880
b55103fb
CY
18812009-03-10 Chong Yidong <cyd@stupidchicken.com>
1882
1883 * lread.c (Feval_buffer): Doc fix.
1884
dde2559c
KH
18852009-03-09 Kenichi Handa <handa@m17n.org>
1886
1887 * charset.c (Qfile_name_handler_alist): Extern it.
1888 (load_charset_map_from_file): Temporarily bind
1889 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
1890
df4e8455 18912009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 1892
47f588bb
GM
1893 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
1894 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 1895
4ddf94bd
AR
18962009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1897
4c9bdfc2
AR
1898 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
1899 (x_set_window_size): Change back to calculated method of setting
1900 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
1901 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
1902 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
1903
fe41ae9e
AR
1904 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
1905
4c9bdfc2
AR
1906 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
1907 accelerator in parens under GNUstep.
1908
825d0875
KH
19092009-03-06 Kenichi Handa <handa@m17n.org>
1910
1911 These changes are to detect incorrect composition sequence without
f3b3be74 1912 looking ahead the source. (Bug#2370)
825d0875
KH
1913
1914 * coding.h: Include "composite.h".
1915 (enum compisition_state): New enum.
1916 (struct compisition_status): New struct.
1917 (struct iso_2022_spec): New member cmp_status.
1918 (struct emacs_mule_spec): New struct.
1919 (struct coding_system): New members ctext_extended_segment_len and
1920 embedded_utf_8. Change the union member
1921 spec.emacs_mule_full_support to spec.emacs_mule.
1922
1923 * coding.c (CODING_ISO_CMP_STATUS): New macro.
1924 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 1925 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
1926 (ADD_COMPOSITION_DATA): New arg nbytes.
1927 (emacs_mule_char): New arg cmp_status.
1928 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
1929 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
1930 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
1931 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
1932 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
1933 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
1934 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
1935 (EMACS_MULE_COMPOSITION_END): New macro.
1936 (emacs_mule_finish_composition): New function.
1937 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
1938 (decode_coding_emacs_mule): Avoid long looking ahead while
1939 handling composition.
1940 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
1941 (ENCODE_COMPOSITION_RULE): New macro.
1942 (finish_composition): New function.
1943 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
1944 (DECODE_COMPOSITION_START): New implementation.
1945 (DECODE_COMPOSITION_END): Likewise.
1946 (STORE_COMPOSITION_RULE): New macro.
1947 (decode_coding_iso_2022): Avoid long looking ahead while handling
1948 composition, CTEXT extended segment, and embedded UTF-8.
1949 (setup_coding_system): For a coding of type iso-2022, reset
1950 CODING_ISO_EXTSEGMENT_LEN (coding) and
1951 CODING_ISO_EMBEDDED_UTF_8 (coding).
1952 (get_translation): Delete arguments last_block, from_nchars,
1953 to_nchars. Callers changed.
1954 (produce_chars): Don't modify charbuf. Adjusted for the change of
1955 get_translation.
98a326f7 1956 (produce_composition): Adjust for the new annotation sequence.
825d0875 1957 (handle_composition_annotation): Likewise.
98a326f7 1958 (consume_chars): Adjust for the change of get_translation.
825d0875 1959
ccbc4452
AR
19602009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
1961
4ddf94bd 1962 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 1963
988a7ddb
KH
19642009-03-05 Kenichi Handa <handa@m17n.org>
1965
1966 * font.c (font_select_entity): New function.
1967 (font_find_for_lface): Use font_select_entity to select a font.
1968
1969 * fontset.c (fontset_find_font): If a font found without
a8a3728b 1970 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
1971 font with C restriction.
1972
98a326f7 19732009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 1974
be1bce46 1975 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 1976
10ea2b82
JR
19772009-03-04 Jason Rumney <jasonr@gnu.org>
1978
2c93b248 1979 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 1980 characters that have already been read. (Bug#2569)
2c93b248 1981
10ea2b82
JR
1982 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
1983 Log an error message if check_image_size failed.
1984 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 1985 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 1986
71a0c011
EZ
19872009-03-02 Eli Zaretskii <eliz@gnu.org>
1988
1989 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
1990 when decoding process output.
1991
2f63bba8
RS
19922009-03-01 Richard M Stallman <rms@gnu.org>
1993
1994 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
1995
1996 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
1997
0a9564cb
EZ
19982009-02-28 Eli Zaretskii <eliz@gnu.org>
1999
2000 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
2001 (decode_coding_emacs_mule, decode_coding_iso_2022)
2002 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2003 (decode_coding_raw_text, decode_coding_charset)
2004 (setup_coding_system, decode_eol, decode_coding, consume_chars):
2005 Honor inhibit-eol-conversion. (Bug #2186)
2006
449148b3
JR
20072009-02-28 Jason Rumney <jasonr@gnu.org>
2008
2009 * coding.c (detect_coding_charset): If not checking latin extra,
2010 fail on characters between 0x80 and 0xA0. (Bug#2354)
2011
a4aee864
EZ
20122009-02-28 Eli Zaretskii <eliz@gnu.org>
2013
2014 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 2015 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 2016
d88bee5a
GM
20172009-02-27 Glenn Morris <rgm@gnu.org>
2018
2019 * callint.c (Finteractive): Doc fix.
2020
a808f22d
KH
20212009-02-27 Kenichi Handa <handa@m17n.org>
2022
2023 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
2024
caf8d60c
CY
20252009-02-27 Chong Yidong <cyd@stupidchicken.com>
2026
2027 * font.c (font_style_to_value): Set value for unknown symbols to
2028 100 instead of 255.
b61137ea
CY
2029 (weight_table, slant_table, width_table): Treat "unspecified" as
2030 the default value.
caf8d60c 2031
1a0de25c
JB
20322009-02-26 Juanma Barranquero <lekktu@gmail.com>
2033
2034 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
2035
8fc45744
JB
20362009-02-25 Juanma Barranquero <lekktu@gmail.com>
2037
107bd7d1
JB
2038 * lread.c (Fload): Stop checking Vloads_in_progress and signal
2039 error as soon as a recursive load is detected.
8fc45744 2040
f097e223
AR
20412009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2042
2043 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
2044 before caching.
2045
8810a12f
KH
20462009-02-24 Kenichi Handa <handa@m17n.org>
2047
2048 * fontset.c (fontset_find_font): Fix the condition for checking
2049 unavailable font.
2050
2c7d1565
GM
20512009-02-24 Glenn Morris <rgm@gnu.org>
2052
2053 * xfaces.c (Finternal_set_font_selection_order): Remove leading
2054 whitespace that confuses documentation.
2055
a20878b6
MB
20562009-02-23 Miles Bader <miles@gnu.org>
2057
2058 * process.c (Flist_system_processes, Fprocess_attributes)
2059 (syms_of_process): Rename `system-process-attributes' to
2060 `process-attributes'.
2061
b3b58c01
AS
20622009-02-22 Andreas Schwab <schwab@linux-m68k.org>
2063
1b3b981b
AS
2064 * coding.h (struct coding_system): Make safe_charsets a pointer to
2065 unsigned char.
2066 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
2067 being 255.
2068 (SAFE_CHARSET_P): Likewise.
2069 (setup_iso_safe_charsets): Properly setup safe_charsets.
2070 (Fdefine_coding_system_internal): Likewise.
2071 (setup_coding_system): Likewise. Remove unneeded casts.
2072 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
2073 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
2074 unneeded casts.
2075
b3b58c01
AS
2076 * insdel.c (del_range_2): Don't modify gap contents when called
2077 from decode_coding_object. (Bug#1809)
2078
0b6f228c
CY
20792009-02-21 Chong Yidong <cyd@stupidchicken.com>
2080
2081 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
2082 Qfont_object.
2083 (Ftype_of): Recognize font objects.
2084
2085 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
2086
2087 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
2088 moved to data.c.
2089
52f8870b
AR
20902009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2091
2092 * nsterm.m (x_make_frame_invisible): Unset async_visible,
2093 async_iconified. Based on a patch by Christian Lynbech
2094 <christian.lynbech@tieto.com>.
2095 (EmacsView-windowDidMiniaturize:): Unset async_visible.
2096
7087d5e9
GM
20972009-02-20 Glenn Morris <rgm@gnu.org>
2098
2099 * syntax.c (Fskip_chars_forward): Fix doc typo.
2100
41d2ceef
CY
21012009-02-20 Chong Yidong <cyd@stupidchicken.com>
2102
2103 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
2104
1a3b7ca6
CY
21052009-02-19 Chong Yidong <cyd@stupidchicken.com>
2106
2107 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
2108
73cce38d
KH
21092009-02-19 Kenichi Handa <handa@m17n.org>
2110
2111 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 2112 Don't overflow coding->carryover. (Bug#2370)
73cce38d 2113
a51092ee
DN
21142009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
2115
2116 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
2117
c423ecca
KH
21182009-02-18 Kenichi Handa <handa@m17n.org>
2119
2120 * font.c (font_check_otf_features): Fix handling of `nil' element.
2121 (Ffont_spec): Describe :lang and :otf in the docstring.
2122
4c1958f4
AS
21232009-02-16 Andreas Schwab <schwab@suse.de>
2124
2125 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
2126 string.
2127
5704f39a
KH
21282009-02-16 Kenichi Handa <handa@m17n.org>
2129
2130 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 2131 (Bug#1723)
5704f39a 2132
8f0085aa
CY
21332009-02-14 Chong Yidong <cyd@stupidchicken.com>
2134
a057d86a 2135 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
2136
2137 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
2138 (handle_line_prefix): Suppress wrapping of wrap prefixes.
2139
aff01dd9
EZ
21402009-02-14 Eli Zaretskii <eliz@gnu.org>
2141
2142 * msdos.c (MAX_SCREEN_BUF): New macro.
2143 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
2144 Encode the entire run of glyphs sharing the same face, instead of
2145 doing that one glyph at a time (fixes a bug with displaying
2146 double-size characters).
2147
ba301db3
AR
21482009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
2149
2150 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
2151
2152 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
2153 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 2154 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
2155
2156 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 2157 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 2158
51d861de
SM
21592009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
2160
2161 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
2162 invisible areas.
2163
7fed8996
JR
21642009-02-12 Jason Rumney <jasonr@gnu.org>
2165
631ea4fb
JR
2166 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
2167 (add_font_entity_to_list): Call check_face_name even when family
2168 is unspecified.
2169
cb4a3e42
JR
2170 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2171 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 2172 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 2173
7fed8996 2174 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 2175 raster fonts. (Bug#2219)
7fed8996 2176
895416e3
KH
21772009-02-12 Kenichi Handa <handa@m17n.org>
2178
2179 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
2180 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
2181 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 2182 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2183 (find_automatic_composition): While looking forward and backward,
2184 check static composition. Fix where to stop looking forward.
2185 (composition_adjust_point): Fix checking of static composition.
2186 (Fcomposition_get_gstring): Pay attention to
1dacf998 2187 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2188
2189 * lisp.h (fast_looking_at): Extern it.
2190
2191 * search.c (fast_looking_at): New function.
2192
51d861de 2193 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
2194 <struct glyph>.u.cmp.to.
2195 (append_composite_glyph): Likewise.
2196
51d861de 2197 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
2198 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
2199 composition.
51d861de 2200 (append_composite_glyph): Adjust for the change of
895416e3
KH
2201 <strcut glyph>.u.cmp.to.
2202
8510724d
JB
22032009-02-11 Juanma Barranquero <lekktu@gmail.com>
2204
2205 * casetab.c (init_casetab_once):
2206 * coding.c (ALLOC_CONVERSION_WORK_AREA):
2207 * font.c (font_update_lface):
2208 * fontset.c (Fnew_fontset):
2209 * ftfont.c (ftfont_drive_otf):
2210 * xfont.c (xfont_open):
2211 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
2212
294fa707
SM
22132009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
2214
2215 * fileio.c (Fwrite_region): !NILP -> CONSP.
2216
b5bfebec
AS
22172009-02-10 Andreas Schwab <schwab@suse.de>
2218
2219 * process.c (send_process): Properly relocate pointer into data
adab88bd 2220 when using encoded data. (Bug#2272)
b5bfebec 2221
cb84a2be
KH
22222009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
2223
2224 * coding.c (detect_coding_charset): Fix previous change.
2225
89e09428
JR
22262009-02-08 Jason Rumney <jasonr@gnu.org>
2227
2228 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 2229 disappeared while hourglass was displayed. (Bug #2193)
89e09428 2230
4470a277
AS
22312009-02-07 Andreas Schwab <schwab@suse.de>
2232
2233 * unexelf.c (unexec): Fix error message.
2234
3175b12a
AR
22352009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
2236
2237 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 2238 when modal window is active. (Bug #2152)
3175b12a
AR
2239 (applicationShouldTerminate:): Remove now-unneeded while loop
2240 around NSRunAlertPanel.
2241
2242 * nsmenu.m (popupSession): New file-global variable.
2243 (pop_down_menu): End the popupSession before closing dialog.
2244 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
2245 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
2246 don't query NSApp for events (just sleep instead).
2247
8434d0b8
EZ
22482009-02-07 Eli Zaretskii <eliz@gnu.org>
2249
51d861de
SM
2250 * coding.c (syms_of_coding) <translation-table-for-input>:
2251 Modify doc string to discourage use for character code unification.
8434d0b8 2252
aa82edfd
CY
22532009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2254
2255 * atimer.c (run_timers): Update pending_atimers.
2256
2d283c7c
CY
22572009-02-06 Chong Yidong <cyd@stupidchicken.com>
2258
eb306cab
CY
2259 * image.c (svg_load_image): Fix last change.
2260
2d283c7c
CY
2261 * xfns.c (Fx_create_frame): Signal an error if no font is
2262 found (Bug#2147).
2263
4d8e170e
JB
22642009-02-05 Juanma Barranquero <lekktu@gmail.com>
2265
2266 * character.c (syms_of_character) <script-representative-chars>:
2267 Fix typo in docstring.
2268
c96169a0
AR
22692009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2270
2271 * nsmenu.m (pop_down_menu): New function.
2272 (ns_popup_dialog): Call it on unwind.
2273 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
2274 call timer_check() (Bug#2154).
2275 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
2276 handling_signal is set.
2277 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
2278
31fd7c5c 2279 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
2280
2281 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
2282
2283 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
2284
51d861de
SM
2285 * keyboard.c (poll_for_input_1, handle_async_input):
2286 Set handling_signal under HAVE_NS.
c96169a0 2287
aacd8ba1
GM
22882009-02-04 Glenn Morris <rgm@gnu.org>
2289
2290 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
2291
4cb75c4b
KH
22922009-02-04 Kenichi Handa <handa@m17n.org>
2293
2294 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
2295
2296 * charset.c (Fchar_charset): New optional arg restriction.
2297
2298 * coding.h (coding_system_charset_list): Extern it.
2299
2300 * coding.c (coding_system_charset_list): New function.
2301
2302 * composite.c: Include coding.h and termhooks.h.
2303 (composition_gstring_p): Fix for the terminal case.
2304 (composition_gstring_width): Likewise.
2305 (fill_gstring_body): Likewise.
2306 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
2307 the frame.
2308 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
2309 is within a composition.
867d4bb3 2310 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
2311
2312 * term.c (encode_terminal_code): Fix handling of composition.
2313 (produce_composite_glyph): For static composition, get pixel_width
2314 from struct composition.
2315
826ba17e
AS
23162009-02-02 Andreas Schwab <schwab@suse.de>
2317
2318 * unexelf.c (unexec): Handle unaligned bss offset.
2319
8ad093db
AR
23202009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2321
2322 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
2323 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 2324
8ad093db
AR
2325 * keyboard.c (handle_interrupt): Don't call
2326 quit_throw_to_read_char() under NS.
d0a76a6e 2327
8ad093db
AR
2328 * blockinput.h: Remove NS-specific code.
2329
4d18a7a2
DN
23302009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
2331
db878925
DN
2332 * dispnew.c (window_change_signal): Don't try to get the size of a
2333 suspended tty frame.
2334 * term.c (Fresume_tty): Resize if the size has changed while the
2335 tty was suspended.
2336
4d18a7a2
DN
2337 * alloc.c (mark_stack): Properly conditionalize previous change.
2338
8984df7c
JB
23392009-01-30 Juanma Barranquero <lekktu@gmail.com>
2340
2341 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
2342 * w32term.c (w32_read_socket) [SYNC_INPUT]:
2343 Remove; this code is not used on Windows.
2344
75f4f1ac
EZ
23452009-01-30 Eli Zaretskii <eliz@gnu.org>
2346
2347 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
2348 EOLs that also has stray ^M characters.
2349
07a1e794
JB
23502009-01-30 Juanma Barranquero <lekktu@gmail.com>
2351
2352 * atimer.c (run_timers, alarm_signal_handler):
2353 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
2354 * w32inevt.c (w32_console_read_socket):
2355 * w32term.c (w32_read_socket):
2356 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
2357
a8b11cc9
CY
23582009-01-30 Chong Yidong <cyd@stupidchicken.com>
2359
2360 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
2361 Initialize it as a relative filename pattern.
2362 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
2363 (Fcall_process_region): Simplify temp file creation using
2364 temporary-file-directory.
2365
c279587b
EZ
23662009-01-29 Eli Zaretskii <eliz@gnu.org>
2367
2368 * msdos.c: Rename pending_signals to msdos_pending_signals.
2369 (sig_suspender, sigprocmask): Adjust.
2370
a8fe3242
CY
23712009-01-29 Chong Yidong <cyd@stupidchicken.com>
2372
2373 * keyboard.c (pending_signals): New var.
2374 (poll_for_input, input_available_signal, init_keyboard): Set it.
2375 (process_pending_signals): New function.
2376
2377 * lisp.h (QUIT): Check pending_signals instead of
2378 interrupt_input_pending. Use process_pending_signals.
2379
51d861de 2380 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 2381
51d861de 2382 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
2383
2384 * sysdep.c (emacs_write): Use process_pending_signals.
2385
2386 * xterm.c (XTread_socket): Update pending_signals.
2387
2388 * w32term.c (w32_read_socket): Update pending_signals.
2389
2390 * w32inevt.c (w32_console_read_socket): Update pending_signals.
2391
6570a1c4
KH
23922009-01-29 Kenichi Handa <handa@m17n.org>
2393
2394 * xftfont.c (xftfont_has_char): New function.
2395 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
2396
d72a4afa
AR
23972009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2398
2399 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
2400 under GNUstep.
2401 (ns_query_color): New declaration.
2402
2403 * nsterm.m (ns_confirm_quit): New variable.
2404 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
2405 (EmacsApp-applicationShouldTerminate:): Use it.
2406 (EmacsPrefsController): Let user set it.
2407 (ns_query_color): New function.
2408 (ns_defined_color): Use it.
2409 (ns_initialize): Drop.
2410 (ns_term_init): Add two lines from ns_initialize(), and set
2411 input_interrupt_mode to nil.
2412
2413 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 2414 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 2415
9fe78804
KH
24162009-01-28 Kenichi Handa <handa@m17n.org>
2417
2418 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
2419 (fontset_get_font_group): Remember that no font-group is specified
2420 for C.
9fe78804 2421
fa57de36
CY
24222009-01-27 Chong Yidong <cyd@stupidchicken.com>
2423
930600e9
CY
2424 * fns.c (concat): Check for string overflow (bug#1787).
2425
fa57de36
CY
2426 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
2427 Quadruple undo limits (bug#1501).
2428
7179ce7b
KH
24292009-01-27 Kenichi Handa <handa@m17n.org>
2430
2431 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
2432 directly use GT_Get_Char_index.
2433
2434 * xftfont.c (struct xftfont_info): New member `index'.
2435
2436 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 2437 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 2438
5be8fcc0
CY
24392009-01-26 Kenichi Handa <handa@m17n.org>
2440
2441 * fontset.c (fontset_find_font): Fix handling of non-cons return
2442 value of fontset_get_font_group.
2443 (fontset_font): Revert last change.
2444
19ae3e61
JR
24452009-01-26 Jason Rumney <jasonr@gnu.org>
2446
2447 * w32font.c (w32font_list_internal): Return quickly if registry is
2448 unknown. Simplify final return.
2449 (add_font_entity_to_list): Break complex logic down into more
2450 manageable chunks. Move unknown registry check to
2451 w32font_list_internal.
2452
8612b71a
AR
24532009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
2454
2455 Changes to remove Feval calls from GUI under NS.
2456
d8038940
JB
2457 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
2458 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
2459 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
2460
2461 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
2462 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
2463 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
2464 instead of NON_ASCII_KEYSTROKE_EVENT.
2465 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
2466 (EmacsApp-applicationShouldTerminate:): Query user.
2467 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
2468 instead of Feval.
2469
2470 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
2471
2472 * keyboard.c (kbd_buffer_get_event): Check for it.
2473 (keys_of_keyboard): Define lispy keys for
2474 ns-put/unput-working-text.
2475
2476 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
2477 versions.
2478 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
2479
6288ae55
CY
24802009-01-25 Chong Yidong <cyd@stupidchicken.com>
2481
2482 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 2483 setting current_buffer directly. (Bug#2044)
6288ae55 2484
289e7f8f
CY
24852009-01-24 Chong Yidong <cyd@stupidchicken.com>
2486
5ce87308 2487 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 2488 any work. (Bug#1952, bug#1990).
5ce87308 2489
64cc3cf6 2490 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 2491
b3243e6f
AR
24922009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2493
2494 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
2495 (ns_no_defaults): New declaration.
2496 (main): Use it.
e0d2e69a 2497
d900b2af 2498 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 2499
d900b2af 2500 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 2501
d900b2af
AR
2502 * nsterm.m (ns_no_defaults): New variable.
2503 (ns_initialize): Don't read defaults when ns_no_defaults.
2504 (EmacsView-readSelectionFromPasteboard:)
2505 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 2506 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
2507 (ns_dumpglyphs_stretch): New function.
2508 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 2509 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 2510
e0d2e69a
AR
2511 * nsimage.m (setPixmapData:): Set to ignore image DPI.
2512
3ac71f5d
CY
25132009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
2514
2515 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
2516 call for Sparc64.
2517
3fe53a83
AR
25182009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2519
2520 * nsfns.m:
2521 * nsgui.h:
2522 * nsmenu.m:
2523 * nsselect.m:
2524 * nsterm.h:
2525 * nsterm.m: Remove '23' comments that indicated code added during
2526 update from emacs-20 -> emacs-23.
2527
10f87c6f 25282009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
2529
2530 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 2531 ns_alternate_modifier. (Bug#1217)
a3b53a85 2532
c7cef62d
AR
2533 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
2534 Display all shortcuts, including those w/o super modifier.
2535
575fb8bd
AR
2536 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
2537
918b848b
CY
25382009-01-22 Chong Yidong <cyd@stupidchicken.com>
2539
2540 * fileio.c (Vwrite_region_post_annotation_function)
2541 (Vwrite_region_annotation_buffers): New vars.
2542 (build_annotations_unwind): Just reset
2543 Vwrite_region_annotation_buffers.
2544 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
2545 Call write-region-post-annotation-function.
2546 (build_annotations): Add to Vwrite_region_annotation_buffers if
2547 buffer changes.
2548
a39e2539
AR
25492009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2550
2551 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
2552 Tiger.
51d861de
SM
2553 * nsfns.m (ns_do_applescript):
2554 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 2555
35ed44db
AR
25562009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
2557
2558 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
2559
cbe0b5bf
AR
25602009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2561
2562 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 2563
6049d3a0
AR
2564 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
2565
2566 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
2567 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
2568 handle Ctrl-tab. (Bug#1841)
2569 (ns_get_color): Use unsigned long long for scanned hex string value.
2570 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 2571 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 2572 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 2573 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 2574 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 2575 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 2576 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 2577
d3810c21 2578 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 2579 DPI. (Bug#1316)
d3810c21
AR
2580 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
2581 values in onTiger section.
4c7077c3 2582
e301e634
CY
25832009-01-19 Chong Yidong <cyd@stupidchicken.com>
2584
7f82490b
CY
2585 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
2586 Check return value of font_spec_from_name.
64cc3cf6 2587 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
2588
2589 * font.c (font_spec_from_name): Return Qnil if font name could not
2590 be parsed.
2591 (font_parse_name): Treat a `?' character as part of an XLFD.
2592
e301e634
CY
2593 * fns.c (Fsubstring): Doc fix.
2594
1c0db158
KH
25952009-01-19 Kenichi Handa <handa@m17n.org>
2596
51d861de 2597 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
2598 (ftfont_list): Likewise.
2599
acf20901
JB
26002009-01-18 Juanma Barranquero <lekktu@gmail.com>
2601
fff4e459
JB
2602 * dbusbind.c (Fdbus_register_signal):
2603 * process.c (conv_sockaddr_to_lisp):
2604 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
2605
acf20901
JB
2606 * callproc.c (Fgetenv_internal): Doc fix.
2607
e7abcdfb
CY
26082009-01-16 Chong Yidong <cyd@stupidchicken.com>
2609
2610 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
2611 it is not even used.
2612
b60861e6
GM
26132009-01-16 Glenn Morris <rgm@gnu.org>
2614
2615 * font.c (Ffont_variation_glyphs): Silence compiler.
2616
8db52afe
JB
26172009-01-15 Juanma Barranquero <lekktu@gmail.com>
2618
2619 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
2620 Reported by David Robinow <drobinow@gmail.com>.
2621
4cddb209
KH
26222009-01-15 Kenichi Handa <handa@m17n.org>
2623
51d861de 2624 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 2625
f247f67b
JR
26262009-01-14 Jason Rumney <jasonr@gnu.org>
2627
2628 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 2629 never a fontset. (Bug#1562)
f247f67b 2630
f56a4450
KH
26312009-01-14 Kenichi Handa <handa@m17n.org>
2632
2633 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 2634 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 2635
4e99855e
CY
26362009-01-13 Chong Yidong <cyd@stupidchicken.com>
2637
2638 * font.c (font_clear_prop): If clearing the family, clear the font
2639 width index too.
2640
fff4e459 2641 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 2642
24f01470
JB
26432009-01-12 Juanma Barranquero <lekktu@gmail.com>
2644
2645 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
2646 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
2647 functions, use sizeof.
2648
a41240a3
MR
26492009-01-12 Martin Rudalics <rudalics@gmx.at>
2650
2651 * keyboard.c (read_char): Fix case where last_nonmenu_event
2652 returned a bad value with submenus. (Bug#447)
2653
944636b8
CY
26542009-01-12 Chong Yidong <cyd@stupidchicken.com>
2655
2656 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
2657 family, clear the font width index too.
2658
0dad7c6f
JR
26592009-01-11 Jason Rumney <jasonr@gnu.org>
2660
2661 * keyboard.c (cmd_error_internal): Exit when errors occur before
2662 frame creation and not in daemon mode. (Bug#1836)
2663
7c2363af
CY
26642009-01-10 Chong Yidong <cyd@stupidchicken.com>
2665
2666 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
2667 of a display vector, backtrack.
2668 (try_window_reusing_current_matrix): Check glyph type before
2669 referencing charpos member.
2670
97b1b294
EZ
26712009-01-10 Eli Zaretskii <eliz@gnu.org>
2672
2673 Fix Bug #876:
2674
2675 * coding.c (inhibit_null_byte_detection): New variable.
2676 (detect_coding, detect_coding_system): Don't pay attention to null
2677 bytes if inhibit_null_byte_detection is non-zero.
51d861de 2678 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
2679 <inhibit-iso-escape-detection>: Doc fix.
2680
4624b6e3
JR
26812009-01-09 Jason Rumney <jasonr@gnu.org>
2682
2683 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 2684 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
2685 Only report Unicode Plane 2 fonts as unicode-sip.
2686
323b840c
CY
26872009-01-09 Chong Yidong <cyd@stupidchicken.com>
2688
51d861de
SM
2689 * xfaces.c (Fx_font_family_list): Delete function.
2690 Move compatibility version to faces.el.
323b840c 2691
51d861de 2692 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 2693
eba7400d
MR
26942009-01-09 Martin Rudalics <rudalics@gmx.at>
2695
2696 * frame.c (x_set_frame_parameters): Remember requested value for
2697 fullscreen before it's reset by the parameter handler.
2698
4b09796d
GM
26992009-01-09 Glenn Morris <rgm@gnu.org>
2700
2701 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 2702 (last_command_event): ... and update all users.
4b09796d
GM
2703 (last_input_char): For clarity, rename to...
2704 (last_input_event): ... and update all users.
2705 (last-command-char, last-input-char): Move to subr.el as aliases.
2706 * cmds.c, commands.h: Update for last_command_char rename.
2707
14ccea62
CY
27082009-01-08 Chong Yidong <cyd@stupidchicken.com>
2709
51d861de 2710 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 2711
5f004711
JR
27122009-01-08 Jason Rumney <jasonr@gnu.org>
2713
2714 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
2715 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
2716 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
2717 Don't declare.
fff4e459 2718 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
2719 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
2720
b71f6f73
KH
27212009-01-07 Kenichi Handa <handa@m17n.org>
2722
50b06221 2723 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 2724 remember the coding system used for decoding in
50b06221
KH
2725 coding_system (Bug#1039).
2726
b71f6f73 2727 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 2728 breaking the loop. (Bug#870)
b71f6f73
KH
2729 (decode_coding_utf_16, decode_coding_emacs_mule)
2730 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2731 (decode_coding_charset): Likewise.
2732
56f668f7
MR
27332009-01-05 Martin Rudalics <rudalics@gmx.at>
2734
2735 * frame.c (x_set_frame_parameters): Make sure height (width) get
2736 applied when fullwidth (fullheight) is set. (Bug#1522)
2737
5da9424d
JB
27382009-01-04 Juanma Barranquero <lekktu@gmail.com>
2739
2740 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
2741 (utc_base): Declare as ULONGLONG, not long double.
2742 (convert_time_raw): Delete.
2743 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
2744 (initialize_utc_base): New function.
2745 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
2746 (convert_from_time_t): Use initialize_utc_base; compute result with
2747 64-bit arithmetic.
2748 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
2749
c4605e09
EZ
27502009-01-03 Eli Zaretskii <eliz@gnu.org>
2751
9acef61c 2752 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
2753 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
2754 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
2755 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
2756 [!subprocesses]: Define.
2757 (syms_of_process) [!subprocesses]: Intern and staticpro them.
2758 (Flist_system_processes, Fsystem_process_attributes)
2759 [!subprocesses]: Call list_system_processes and
2760 system_process_attributes instead of returning Qnil.
2761
9acef61c
JB
2762 * dosfns.c (system_process_attributes, list_system_processes):
2763 New functions.
c4605e09
EZ
2764
2765 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
2766
2767 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
2768 Don't use the default (no-op) implementation.
2769
8b7d0a16
JR
27702009-01-03 Jason Rumney <jasonr@gnu.org>
2771
a6d46bc1
JR
2772 * keyboard.c (parse_modifiers_uncached): Wheel events are
2773 clicks (bug#687).
2774
8b7d0a16
JR
2775 * w32term.c (x_query_colors, x_query_color): New functions.
2776
2777 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
2778 (svg_load_image): Cast returned pointers from dynamically loaded
2779 functions. Eliminate W32 specific code.
2780
bfe11752
DN
27812009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
2782
89e2438a
DN
2783 * nsfns.m (x_set_foreground_color, x_set_background_color)
2784 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
2785 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
2786 x_ prefix instead of ns_. Update references.
2787 (syms_of_nsfns): Add a FIXME comment.
2788
2789 * nsterm.m (x_set_cursor_type): New prototype.
2790 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
2791
bfe11752
DN
2792 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
2793 for Solaris instead of incorrectly providing Qutime and Qcutime.
2794
031da700
EZ
27952009-01-02 Eli Zaretskii <eliz@gnu.org>
2796
2797 * w32.c (process_times): Compute sum of utime and stime.
2798 (system_process_attributes): Add Qtime to the alist.
2799
2800 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
2801 and add them to the alist.
2802
2803 * process.c (top level) <Qtime, Qctime>: New variables.
2804 (syms_of_process): staticpro them.
2805 (Fsystem_process_attributes): Add their documentation to the doc
2806 string.
2807
2808 * process.h: Declare Qtime and Qctime.
2809
df23bf08
JR
28102009-01-02 Jason Rumney <jasonr@gnu.org>
2811
9acef61c 2812 * image.c (Qgobject): New symbol.
df23bf08
JR
2813 (syms_of_image): Initialize it.
2814 (init_svg_functions): Load some functions from gobject library.
2815
5bbdf7aa
DN
28162009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
2817
2818 * frame.c (make_terminal_frame): Remove redundant code and useless
2819 block.
2820
63136da6
AS
28212009-01-01 Andreas Schwab <schwab@suse.de>
2822
2823 * process.c (conv_sockaddr_to_lisp): Add workaround for
2824 getsockname bug on BSD.
2825
9ef69046
CY
28262009-01-01 Chong Yidong <cyd@stupidchicken.com>
2827
d6fafbe0
CY
2828 * xfns.c (x_create_tip_frame): Set border width of the X window.
2829
51d861de 2830 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 2831
f9c34147
JR
28322009-01-01 Jason Rumney <jasonr@gnu.org>
2833
9acef61c 2834 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
2835 Don't block input, as per earlier xterm.c changes.
2836
f5497e45
AR
28372008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
2838
2839 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
2840 (ns_appkit_version_int): New function.
2841 (x-server-version): Use ns_appkit_version_int and follow 21+
2842 convention of returning 3 integers.
2843
c19cab20
KH
28442008-12-30 Kenichi Handa <handa@m17n.org>
2845
2846 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
2847 (CHAR_SURROGATE_PAIR_P): New macro.
2848
2849 * font.h (struct font_driver): New member get_variation_glyphs.
2850
9acef61c 2851 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
2852 (Ffont_variation_glyphs): New function.
2853 (syms_of_font): Defsubr it.
2854
2855 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
2856 ftfont_variation_glyphs.
2857 (setup_otf_gstring): New function.
2858 (ftfont_drive_otf): Use it.
2859 (ftfont_shape_by_flt): Handle variation selector.
2860 (ftfont_variation_glyphs): New function.
2861
28cd591f
MR
28622008-12-30 Martin Rudalics <rudalics@gmx.at>
2863
2864 * frame.c (Vemacs_iconified): Remove.
2865
7f714baf
JR
28662008-12-30 Jason Rumney <jasonr@gnu.org>
2867
2868 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 2869 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 2870
9d2d22ab
CY
28712008-12-30 Chong Yidong <cyd@stupidchicken.com>
2872
2873 * indent.c (Fvertical_motion): Don't advance iterator if we have
2874 reseated to the desired position.
2875
2876 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
2877 checking for pos match.
2878
545312c2
KH
28792008-12-30 Kenichi Handa <handa@m17n.org>
2880
1ede3eb6
KH
2881 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
2882 just get the low 8-bit of the code.
2883
545312c2
KH
2884 * font.c (font_intern_prop): Validate str as multibyte.
2885
bd7bbf29
DN
28862008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2887
31e0750e
DN
2888 * dispextern.h (struct face): Move lface and hash from the middle
2889 of bitfields.
2890
bd7bbf29
DN
2891 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
2892
b5672e7c
DN
28932008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2894
2895 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
2896 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
2897 instead of intervals.h.
2898
d704470f
AS
28992008-12-26 Andreas Schwab <schwab@suse.de>
2900
2901 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
2902 cons.
2903
54b33868
MR
29042008-12-26 Martin Rudalics <rudalics@gmx.at>
2905
2906 * textprop.c (Qminibuffer_prompt): New variable.
2907 (syms_of_textprop): Initialize it.
2908 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
2909 in minibuffer-prompt face. (Bug#1662)
2910
40b615d6
JR
29112008-12-25 Jason Rumney <jasonr@gnu.org>
2912
2913 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
2914
baae5c2d
JR
29152008-12-24 Jason Rumney <jasonr@gnu.org>
2916
2917 * ralloc.c (r_alloc_reset_variable): New function.
2918
2919 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 2920 record of what points where. (Bug#716)
baae5c2d 2921
a9051c88
DN
29222008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
2923
2924 * minibuf.c (read_minibuf): Follow the non-interactive case when
2925 running as a daemon, before detaching.
2926
8b146312
AS
29272008-12-22 Andreas Schwab <schwab@suse.de>
2928
2929 * buffer.c (init_buffer): Use realloc instead of xrealloc.
2930 * gtkutil.c (free_widget_value): Use xfree instead of free.
2931
56f2de10
MR
29322008-12-22 Martin Rudalics <rudalics@gmx.at>
2933
2934 * frame.c (delete_frame): New function derived from
2935 Fdelete_frame to handle Qnoelisp value for FORCE argument.
2936 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
2937 (Fdelete_frame): Call delete_frame. Remove line from doc-string
2938 saying that FORCE non-nil doesn't run `delete-frame-functions'.
2939 * frame.h: Extern delete_frame.
2940 * window.c (window_loop):
2941 * terminal.c (delete_terminal):
2942 * xterm.c (x_connection_closed):
2943 * xfns.c (Fx_hide_tip):
9acef61c 2944 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 2945
1fc200d6
JR
29462008-12-21 Jason Rumney <jasonr@gnu.org>
2947
2948 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
2949 when character maps to .notdef character.
2950
5e252df2
SM
29512008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
2952
2953 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
2954
99b72cc4
JR
29552008-12-20 Jason Rumney <jasonr@gnu.org>
2956
2957 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 2958 a graphical frame on Windows. (Bug#1325)
99b72cc4 2959
acc49a52
JD
29602008-12-20 Jan Djärv <jan.h.d@swipnet.se>
2961
2962 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
2963
6ea15123
CY
29642008-12-20 Chong Yidong <cyd@stupidchicken.com>
2965
2966 * minibuf.c (Fread_buffer): Doc fix.
2967
b2dab6c8
JR
29682008-12-20 Jason Rumney <jasonr@gnu.org>
2969
54ea0c87 2970 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 2971 server name in UNC paths. (Bug#719)
54ea0c87 2972
b2dab6c8 2973 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 2974 charbuf. (Bug#1035)
b2dab6c8 2975
6d1921be
DN
29762008-12-19 Daniel Engeler <engeler@gmail.com>
2977
2978 * sysdep.c (serial_configure): Fix typo.
2979
53934c98
DN
29802008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2981
2982 * sysdep.c: Include alloca.h.
f4f634e8
DN
2983 (system_process_attributes): Add implementation for Solaris.
2984
2985 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 2986
06e111a6
DN
29872008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2988
2989 Reorganize implementation of Flist_system_processes and
2990 Fsystem_process_attributes. No functional changes.
2991 * process.c: Don't #include pwd.h, grp.h and limits.h.
2992 (Flist_system_processes): Just call list_system_processes.
2993 (Fsystem_process_attributes): Just call system_process_attributes.
2994 (procfs_list_system_processes, time_from_jiffies)
2995 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
2996 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
2997
2998 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
2999 (list_system_processes): Rename from
3000 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
3001 Provide a do nothing implementation.
3002 (system_process_attributes): Rename from
3003 procfs_list_system_processes.
3004 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 3005 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
3006
3007 * w32.c (list_system_processes): Rename from
3008 w32_list_system_processes.
3009 (system_process_attributes): Rename from
3010 w32_system_process_attributes.
3011
3012 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
3013
3014 * process.h (w32_list_system_processes)
3015 (w32_system_process_attributes): Remove.
3016 (list_system_processes, system_process_attributes): New
3017 prototypes.
3018
6a705b23
KH
30192008-12-19 Kenichi Handa <handa@m17n.org>
3020
3021 * xfont.c (xfont_decode_coding_xlfd): New function.
3022 (xfont_encode_coding_xlfd): New function.
3023 (xfont_list_pattern): Decode XLFD by iso-8859-1.
3024 (xfont_list): Decode and encode XLFD by iso-8859-1.
3025 (xfont_match): Likewise.
3026 (xfont_list_family): Likewise.
3027 (xfont_open): Likewise.
3028
d66c0241 3029 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
3030 names are utf-8.
3031
d66c0241 3032 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
3033 names are utf-8.
3034
5a130941
JD
30352008-12-18 Jan Djärv <jan.h.d@swipnet.se>
3036
3037 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
3038 changed.
bfd20325
JD
3039 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
3040 clicked on a detached tool bar button.
5a130941 3041
fd95644b
DN
30422008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
3043
3044 * emacs.c (main): Print and error and exit when no data is read
3045 from the pipe.
3046
e6eee6ae
JR
30472008-12-17 Jason Rumney <jasonr@gnu.org>
3048
3049 * w32font.c (w32font_has_char): Always return -1.
3050
a35dd56b
KH
30512008-12-16 Kenichi Handa <handa@m17n.org>
3052
3053 * font.c (font_open_entity): Fix previous change.
3054
0e3635c2
DN
30552008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
3056
3057 * process.c: Include <limits.h>.
3058
d4835507 30592008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
3060
3061 * font.c (font_update_drivers): Fix mistake in reconstructing the
3062 driver list.
3063
30642008-12-16 Chong Yidong <cyd@stupidchicken.com>
3065
3066 * font.c (font_clear_cache): Fix format of font cache data.
3067
e2cbc401
CY
30682008-12-15 Chong Yidong <cyd@stupidchicken.com>
3069
3070 * xftfont.c (xftfont_open): Free Xft font pattern if
3071 XftFontOpenPattern fails.
3072
3073 * xterm.c (x_free_frame_resources): Remove extraneous call to
3074 free_frame_faces.
3075
b131d535
CY
30762008-12-13 Chong Yidong <cyd@stupidchicken.com>
3077
3078 * xterm.c (x_delete_display): Move xim_close_dpy call to
3079 x_delete_terminal.
3080 (x_delete_terminal): Call xim_close_dpy.
3081
e6df5336
JR
30822008-12-13 Jason Rumney <jasonr@gnu.org>
3083
3084 * w32font.c (intern_font_name): New function.
3085 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
3086 (w32font_open_internal, Fx_select_font): Decode font name.
3087 (fill_in_logfont, list_all_matching_fonts): Encode font name.
3088
3089 * w32font.h (intern_font_name): Declare new function.
3090
3091 * w32uniscribe.c (add_opentype_font_name_to_list):
3092 Use intern_font_name.
3093
20d68145
CY
30942008-12-13 Chong Yidong <cyd@stupidchicken.com>
3095
9f2554de
CY
3096 * frame.c (Fdelete_frame): Call free_font_driver_list.
3097
3d9bec9a
CY
3098 * font.c (free_font_driver_list): Implement missing function.
3099
20d68145
CY
3100 * w32term.c (w32_term_init): Don't initialize the image cache
3101 here; it will be done in init_frame_faces.
3102
3103 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
3104 (struct x_display_info): Remove unused member null_pixel. New
3105 member xim_callback_data.
3106
3107 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
3108 (xim_initialize): Save pointer to callback function data.
3109 (xim_close_dpy): Free callback function data. Call XCloseIM,
3110 reverting 2008-11-04 change by David Smith.
3111 (x_term_init): Don't initialize the image cache here; it will be
3112 done in init_frame_faces. Remove ancient "null_pixel" cruft.
3113 (x_delete_display): Free x_dnd_atoms member.
3114
96f9306b
KH
31152008-12-13 Kenichi Handa <handa@m17n.org>
3116
6dec9044
JB
3117 * font.c (font_rescale_ratio): Moved from xfaces.c.
3118 Argument type changed. Handle a font-spec too.
96f9306b 3119 (font_score): Check Vface_font_rescale_alist.
6dec9044 3120 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
3121
3122 * xfaces.c (font_rescale_ratio): Moved to font.c.
3123
8d5b4964
CY
31242008-12-13 Chong Yidong <cyd@stupidchicken.com>
3125
3126 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
3127
e6df5336
JR
31282008-12-12 Jason Rumney <jasonr@gnu.org>
3129
3130 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
3131 Vwindow_system_version to the real w32 major version.
3132
97c6058a
DN
31332008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
3134
3135 * term.c (init_tty): Move setting the terminal name before the
3136 potential user: maybe_fatal.
3137
ec4e88d7
CY
31382008-12-11 Chong Yidong <cyd@stupidchicken.com>
3139
d4835507
JB
3140 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
3141 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 3142
b4233ec9
JR
31432008-12-11 Jason Rumney <jasonr@gnu.org>
3144
8ec71e23 3145 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 3146 SYMBOL_CHARSET. (Bug#547)
8ec71e23 3147
b4233ec9 3148 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 3149 size for surrogates. (Bug#1096, bug#872)
b4233ec9 3150
011a0143
JB
31512008-12-11 Juanma Barranquero <lekktu@gmail.com>
3152
3153 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
3154
3c309f34
JB
31552008-12-11 Juanma Barranquero <lekktu@gmail.com>
3156
3157 * process.c (Fsystem_process_attributes, syms_of_process):
3158 Fix typo in name of Ssystem_process_attributes.
3159 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
3160
fedc6ab5
JB
31612008-12-11 Juanma Barranquero <lekktu@gmail.com>
3162
3163 * syntax.c (Fmodify_syntax_entry): Doc fix.
3164
ba3de0e8
JB
31652008-12-10 Juanma Barranquero <lekktu@gmail.com>
3166
3167 * font.c (Ffont_spec): Move usage to end of docstring.
3168
174f1c74
JR
31692008-12-10 Jason Rumney <jasonr@gnu.org>
3170
3171 * w32font.c (Qcham): New symbol.
3172 (font_supported_scripts): Add cham, and comments for other new
3173 scripts in bitfield from OpenType spec.
9d32f818
JR
3174 (add_font_entity_to_list): Limit unicode-sip fonts to those that
3175 contain characters beyond the bmp.
174f1c74 3176
7b649478
KH
31772008-12-10 Kenichi Handa <handa@m17n.org>
3178
3179 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 3180 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
3181 Qunicode_sip.
3182
2133e2d1
JB
31832008-12-10 Juanma Barranquero <lekktu@gmail.com>
3184
3185 * coding.c (QCdefault_char): Rename from QCdefalut_char.
3186 (Fcoding_system_put): Use QCdefault_char.
3187 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
3188
9af886ee
CY
31892008-12-09 Chong Yidong <cyd@stupidchicken.com>
3190
74d819eb
CY
3191 * xftfont.c (syms_of_xftfont): Fix typo.
3192
4ccfa1c0 3193 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 3194
7c19d3ae
DN
31952008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
3196
3197 * emacs.c (main): Close daemon_pipe on exec.
3198
567826bb
CY
31992008-12-08 Chong Yidong <cyd@stupidchicken.com>
3200
3201 * termchar.h (struct tty): New members termcap_term_buffer and
3202 termcap_strings_buffer.
3203
3204 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 3205 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
3206 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
3207 All callers changed.
3208 (init_tty): Store termcap data and string buffers in new struct
3209 tty members termcap_term_buffer and termcap_strings_buffer.
3210 (delete_tty): Free them.
4ccfa1c0 3211 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 3212
aa96c42b
SZ
32132008-12-07 Seiji Zenitani <zenitani@mac.com>
3214
3215 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 3216 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 3217
b7e1d896
CY
32182008-12-06 Chong Yidong <cyd@stupidchicken.com>
3219
3220 * coding.c (make_conversion_work_buffer): Disable buffer
3221 modification hooks in the work buffer.
3222
b5ec91a5
EZ
32232008-12-05 Eli Zaretskii <eliz@gnu.org>
3224
3225 * process.c (procfs_system_process_attributes): If `nread' has a
3226 negative value, assign zero to it.
3227
a5d2a52b
CY
32282008-12-05 Chong Yidong <cyd@stupidchicken.com>
3229
68c5540b 3230 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 3231
7bf1bb21
KH
32322008-12-05 Kenichi Handa <handa@m17n.org>
3233
3234 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
3235 second character is a combining character.
3236
2fdc7d00
EZ
32372008-12-05 Eli Zaretskii <eliz@gnu.org>
3238
3239 * process.c (procfs_system_process_attributes): Don't use cmd,
3240 cmdsize, and q without initializing them first.
3241
bf6bfba8
JR
32422008-12-04 Jason Rumney <jasonr@gnu.org>
3243
3244 * w32font.c (w32font_draw): Initialize orig_clip before getting
3245 it, and delete it when finished.
3246
a3b1a468
DN
32472008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
3248
3249 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
3250 case when running as a daemon before detaching.
3251
8b8be8eb
JB
32522008-12-03 Juanma Barranquero <lekktu@gmail.com>
3253
805f2638 3254 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 3255
b1bde622
KH
32562008-12-03 Kenichi Handa <handa@m17n.org>
3257
e500c47d
KH
3258 * font.c (font_at): Set `multibyte' at first.
3259
ca516334
KH
3260 * coding.c (decode_coding_charset): Check type of an element of
3261 vector VALIDS.
7bf1bb21 3262 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 3263
4ccfa1c0 3264 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
3265 (font_for_char): Likewise.
3266
1e5ecd37
CY
32672008-12-03 Chong Yidong <cyd@stupidchicken.com>
3268
d5b01609 3269 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
3270 (font_update_lface): Handle fonts with corrupted size specs,
3271 i.e. non-int and non-float.
d5b01609 3272
11e3a6e4 3273 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 3274 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 3275 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 3276
ab06788b
CY
3277 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
3278
1e5ecd37 3279 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 3280 underline_minimum_offset for underline position.
1e5ecd37 3281
63c125ab
DN
32822008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
3283
3284 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
3285
3286 * character.c (c_string_width): Specify the type for LEN.
3287
3a8406e1
KH
32882008-12-03 Kenichi Handa <handa@m17n.org>
3289
4ccfa1c0 3290 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 3291 (decode_coding_utf_8): Likewise.
4ccfa1c0 3292 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 3293 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 3294
651df7d9
CY
32952008-12-02 Chong Yidong <cyd@stupidchicken.com>
3296
3297 * keyboard.c (make_lispy_position): Only use PT if the selected
3298 window is current.
3299
1f625c6c
AS
33002008-12-02 Andreas Schwab <schwab@suse.de>
3301
f7741ce9
AS
3302 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
3303
1f625c6c
AS
3304 * doprnt.c (doprnt1): Fix size of charbuf.
3305
92bc2678
CY
33062008-12-02 Chong Yidong <cyd@stupidchicken.com>
3307
3308 * keyboard.c (timer_check): Revert last change.
3309
93b9e8cc
JB
33102008-12-02 Juanma Barranquero <lekktu@gmail.com>
3311
3312 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
3313
fd7a37d5
JB
33142008-12-01 Juanma Barranquero <lekktu@gmail.com>
3315
3316 * makefile.w32-in: Update dependencies.
3317 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
3318
c115043b
AS
33192008-12-01 Andreas Schwab <schwab@suse.de>
3320
3321 * font.c (register_font_driver): Use xmalloc.
3322 (font_put_frame_data): Likewise.
3323
f5668d2a
CY
33242008-12-01 Chong Yidong <cyd@stupidchicken.com>
3325
860d96be
CY
3326 * xfaces.c (realize_x_face): Make abort condition clearer.
3327
f5668d2a
CY
3328 * gtkutil.c (update_frame_tool_bar): Initialize variable.
3329
379c17e7
CY
33302008-11-30 Chong Yidong <cyd@stupidchicken.com>
3331
3332 * keyboard.c (timer_check): After a timer runs, ensure that the
3333 selected window's buffer is current.
3334
35f36d65
JB
33352008-11-30 Juanma Barranquero <lekktu@gmail.com>
3336
f952c61c
JB
3337 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
3338 It was accidentally restored by the Unicode merge.
3339
35f36d65
JB
3340 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
3341
b23077df
JB
33422008-11-29 Juanma Barranquero <lekktu@gmail.com>
3343
3344 * w32proc.c: Include "coding.h".
3345 (Fw32_short_file_name): Encode filename passed to Windows API.
3346 (Fw32_long_file_name): Encode filename passed to Windows API and
3347 decode back the result. (Bug#1433)
3348
b8ebe9dd
KH
33492008-11-29 Kenichi Handa <handa@m17n.org>
3350
8cc53f96
KH
3351 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
3352 not before accessing it.
3353
b8ebe9dd
KH
3354 * charset.c (Fdefine_charset_internal): After calculating
3355 min_char, max_char, and fastmap, copy the charset structure again.
3356 (encode_char): Fix the previous change.
3357
59bc82c0
SZ
33582008-11-28 Seiji Zenitani <zenitani@mac.com>
3359
3360 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
3361
3362 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
3363
3364 * nsterm.m (x_set_frame_alpha): New function.
3365
32247e3d
EZ
33662008-11-27 Eli Zaretskii <eliz@gnu.org>
3367
3368 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
3369
b003e5ff
JB
33702008-11-27 Juanma Barranquero <lekktu@gmail.com>
3371
3372 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
3373 pointer to check_face_name.
3374
708550f5
KH
33752008-11-27 Kenichi Handa <handa@m17n.org>
3376
3377 * category.h (SET_CATEGORY_SET): Call set_category_set.
3378 (set_category_set): Extern it.
3379
3380 * category.c (hash_get_category_set): New function.
3381 (Fmodify_category_entry): Adjusted for the change of
3382 char_table_ref_and_range. Call hash_get_category_set to get a
3383 category set to store in the table.
3384
3385 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
3386 Funify_charset.
3387
2ae37cf0 3388 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
3389 (DECODE_CHAR): Check if the decoder vector is ready.
3390 (ENCODE_CHAR): Check if the encoder char-table is ready.
3391 (maybe_unify_char): Extern it.
3392
3393 * charset.c (Vchar_unified_charset_table): Delete it.
3394 (inhibit_load_charset_map): New variable.
3395 (temp_charset_work): New variable.
3396 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
3397 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
3398 New macros.
3399 (load_charset_map): Meaning of control_flag changed. If
3400 inhibit_load_charset_map is nonzero, setup a table in
3401 temp_charset_work.
3402 (load_charset): New argument control_flag.
3403 (map_charset_for_dump): New function.
3404 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
3405 map_charset_for_dump.
3406 (Fdefine_charset_internal): If the charset method is MAP, load
3407 mapping tables by calling load_charset.
3408 (Funify_charset): Don't load a mapping table but directly set
3409 Vchar_unify_table.
3410 (maybe_unify_char): New function.
3411 (decode_char): Don't handle the deleted method MAP_DEFERRED.
3412 Handle the case of inhibit_load_charset_map being nonzero.
3413 (encode_char): Don't handle the deleted method MAP_DEFERRED.
3414 Handle the case of inhibit_load_charset_map being nonzero.
3415 (Fclear_charset_maps): Just free temp_charset_work.
3416 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
3417 variable.
3418
3419 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
3420 change of char_table_ref_and_range.
3421 (char_table_ref_and_range): Change the meaning of argument FROM
3422 and TO. Now the caller must provide initial values for *FROM
3423 and *TO.
3424
3425 * fontset.c (fontset_add): Adjusted for the change of
3426 char_table_ref_and_range.
3427 (fontset_get_font_group): Likewise.
3428 (Ffontset_info): Likewise.
3429
3430 * keymap.c (describe_vector): Adjusted for the change of
3431 char_table_ref_and_range. For char-table, put boundary between
3432 non-ASCII and 8-bit characters.
3433
3434 * print.c (print_object): For bool-vector, delete unnecessary
3435 check of ASCII_BYTE_P.
3436
9196133b
JR
34372008-11-26 Jason Rumney <jasonr@gnu.org>
3438
3439 * w32font.c (w32font_open_internal): Don't include external
9acef61c 3440 leading in font height. (Bug#879)
9196133b 3441
9f688acf
GM
34422008-11-26 Glenn Morris <rgm@gnu.org>
3443
3444 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
3445 redefinition with ifdef. (Bug#1383)
3446
90d19aff
AR
34472008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3448
3449 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
3450
4ccfa1c0 34512008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
3452
3453 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
3454 New EmacsView methods.
3455 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
3456 Fixes bug #1048,1357,1414.
3457
34582008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3459
3460 Fix bug #1362.
3461 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
3462 is not an indexed color.
3463 * nsterm.m (free_indexed_color): Add argument checking.
3464 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
3465
e7d5ecb3
CY
34662008-11-24 Chong Yidong <cyd@stupidchicken.com>
3467
3468 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
3469 Document confirm-after-completion value for
3470 minibuffer-completion-confirm.
3471
c285743c
JR
34722008-11-24 Jason Rumney <jasonr@gnu.org>
3473
3474 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
3475 warning.
3476
b0857706
JR
34772008-11-23 Jason Rumney <jasonr@gnu.org>
3478
3479 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
3480 restored before returning.
3481
3482 * w32font.c (check_face_name): New function.
3483 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 3484 fonts. (Bug#642)
b0857706 3485
ee50ff07
MR
34862008-11-22 Martin Rudalics <rudalics@gmx.at>
3487
3488 * buffer.c (Fswitch_to_buffer): Reword and mention new option
3489 confirm-nonexistent-file-or-buffer in doc-string.
3490
b8ff72fa
SM
34912008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
3492
3493 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
3494 Fix copy/paste typo. Add checks.
3495
cee53ed4
KH
34962008-11-21 Kenichi Handa <handa@m17n.org>
3497
3498 * coding.c (detect_coding_iso_2022): Reject invalid composition
3499 sequence.
3500 (DECODE_COMPOSITION_START): If the current source is the last
3501 block, and the current composition doesn't end, regard this
3502 sequence as invalid.
3503 (decode_coding_iso_2022): Handle invalid composition sequence.
3504
f6ef1e65
MR
35052008-11-20 Martin Rudalics <rudalics@gmx.at>
3506
3507 * window.c (coordinates_in_window): Don't return
3508 ON_VERTICAL_BORDER for the rightmost position of a mode/header
3509 line when the window is not the rightmost one. (Bug#1372)
3510
e08b1705
MR
35112008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
3512
3513 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
3514
ad98e89f
EZ
35152008-11-15 Eli Zaretskii <eliz@gnu.org>
3516
3517 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
3518 and bright_bg if noninteractive is non-zero.
3519
fb098a4b
CY
35202008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3521
3522 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
3523 x_draw_glyph_string_background.
3524
3525 * w32term.c (x_draw_glyph_string): Likewise.
3526
ce952b6e
CY
35272008-11-15 Chong Yidong <cyd@stupidchicken.com>
3528
3529 * xterm.c (x_draw_glyph_string): Stop drawing the background of
3530 the next glyph string once past the overhang width.
3531
3532 * nsterm.m (ns_draw_glyph_string): Likewise.
3533
3534 * w32term.c (x_draw_glyph_string): Likewise.
3535
26ea7079
CY
35362008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
3537
3538 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
3539 double file close.
3540
1c33c906
MR
35412008-11-14 Martin Rudalics <rudalics@gmx.at>
3542
3543 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
3544 dedicated status of window before attempting to display another
3545 buffer in it.
3546
8fc29035
JB
35472008-11-14 Juanma Barranquero <lekktu@gmail.com>
3548
3549 * msdos.c (Fmsdos_long_file_names):
3550 (syms_of_msdos) <dos-unsupported-char-glyph>:
3551 * dosfns.c (Fint86): Fix typos in docstrings.
3552
55fb4286
EZ
35532008-11-14 Eli Zaretskii <eliz@gnu.org>
3554
3555 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
3556
3fda0315
KY
35572008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
3558
3559 * puresize.h (BASE_PURESIZE): Increase to 1260000.
3560
7e849c17
CY
35612008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
3562
3563 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
3564
3565 * frame.h: Negative alpha means "don't touch".
3566
3567 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
3568
3569 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
3570
b9fd67bd
DN
35712008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
3572
3573 * hftctl.c:
3574 * chpdef.h:
3575 * acldef.h: Remove files used only for systems no longer supported.
3576
3577 * Makefile.in: Fix .o alphabetical ordering.
3578 (hftctl.o): Remove dependency, file removed.
3579 (keymap.o, print.o): Depend on charset.h.
3580
d5998e03
KH
35812008-11-10 Kenichi Handa <handa@m17n.org>
3582
2ae37cf0 3583 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 3584
be70e183
CY
35852008-11-08 Chong Yidong <cyd@stupidchicken.com>
3586
3587 * dired.c (file_name_completion): If completion_ignore_case is
3588 enabled, ignore case when checking completion-regexp-list.
3589
7cf94eac
EZ
35902008-11-08 Eli Zaretskii <eliz@gnu.org>
3591
3592 * vm-limit.c (get_lim_data): Fix last change.
3593
ee107a89
KH
35942008-11-08 Kenichi Handa <handa@m17n.org>
3595
3596 * character.c (Fget_byte): New function.
3597 (syms_of_character): Defsubr Fget_byte.
3598
5fd15622
CY
35992008-11-07 Chong Yidong <cyd@stupidchicken.com>
3600
3601 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
3602 cursor position is valid after scrolling.
3603
13d62fad
JB
36042008-11-06 Juanma Barranquero <lekktu@gmail.com>
3605
3606 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
3607
a1dd2936
GM
36082008-11-06 Glenn Morris <rgm@gnu.org>
3609
3610 * xterm.c (handle_one_xevent): Don't let popup menus cause
3611 mouse-autoselect-window related window switching. (Bug#1261)
3612
860cd236
CY
36132008-11-04 David Smith <davidsmith@acm.org> (tiny change)
3614
3615 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
3616
653a3150
AS
36172008-11-04 Andreas Schwab <schwab@suse.de>
3618
3619 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
3620
870f5cac
CY
36212008-11-03 Chong Yidong <cyd@stupidchicken.com>
3622
3623 * xfns.c (Fx_wm_set_size_hint): New function.
3624
1e02f3cb
MR
36252008-11-03 Martin Rudalics <rudalics@gmx.at>
3626
3627 * textprop.c (Fprevious_single_char_property_change): Return 0
3628 when there's no change in a string. (Bug#1301)
3629
e630dfc6
MR
36302008-11-02 Martin Rudalics <rudalics@gmx.at>
3631
3632 * frame.c (do_switch_frame): New argument NORECORD passed to
3633 Fselect_window.
3634 (Fselect_frame): New argument NORECORD passed to
3635 do_switch_frame.
3636 (Fset_frame_selected_window): New argument NORECORD passed to
3637 Fselect_frame.
3638 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
3639 in call of do_switch_frame.
3640 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
3641 Handle NORECORD argument in call of Fselect_frame.
3642 * lisp.h (do_switch_frame, Fselect_frame)
3643 (Fset_frame_selected_window): Adjust declarations.
3644 * window.c (select_frame_norecord): New function.
3645 (run_window_configuration_change_hook): Use it and call
3646 Fselect_frame with NORECORD set.
3647 (Fselect_window): Pass NORECORD to Fselect_frame.
3648 (Fset_window_configuration): Handle NORECORD argument in call of
3649 do_switch_frame.
3650 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
3651 Fset_frame_selected_window.
3652 * keyboard.c (command_loop_1): Handle NORECORD in call of
3653 Fselect_frame (currently ifdefd).
3654
9020b223
GM
36552008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
3656
3657 * emacs.c (USAGE2): Untabify.
3658
793ffee8
SM
36592008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
3660
3661 * composite.c (fill_gstring_header): Fix copy/paste typo.
3662
ab6d1131
MR
36632008-10-31 Martin Rudalics <rudalics@gmx.at>
3664
3665 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
3666 (Fother_window): Rename argument and rewrite doc-string.
3667 (select_window_norecord): Fix return value. (Bug#1276)
3668
601a9cf1
JB
36692008-10-30 Juanma Barranquero <lekktu@gmail.com>
3670
3671 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
3672 new frames overriding foreground for tooltips. Based on similar patch
3673 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
3674
813b0652
CY
36752008-10-29 Chong Yidong <cyd@stupidchicken.com>
3676
3677 * emacs.c (Fdaemon_initialized): Initialize nfd.
3678
4414f58f
MR
36792008-10-29 Martin Rudalics <rudalics@gmx.at>
3680
3681 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
3682 (Fwindow_text_height): Clarify doc-strings.
3683 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
3684 doc-string of window-scroll-functions.
3685
ecdcaa09
RS
36862008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
3687
3688 * category.c (syms_of_category): Fix typo in docstring.
3689
23fe745a
JB
36902008-10-28 Juanma Barranquero <lekktu@gmail.com>
3691
3692 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
3693 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
3694 Fix typos in docstrings.
3695
ff808935
DN
36962008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
3697
3698 * emacs.c (daemon_pipe): Make non-static.
3699 (IS_DAEMON): Move definition ...
3700 * lisp.h (IS_DAEMON): ... here.
3701 (daemon_pipe): Declare.
3702 (is_daemon): Remove.
3703 * dispnew.c (init_display): Use IS_DAEMON.
3704
fc012771
SM
37052008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
3706
3707 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
3708 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
3709
3710 * emacs.c (is_daemon): Remove.
3711 (main): Don't set is_daemon.
3712 (IS_DAEMON): New macro.
3713 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 3714 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
3715 parent exits.
3716 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
3717
d8bdbe6f
CY
37182008-10-27 Chong Yidong <cyd@stupidchicken.com>
3719
d1a072bf
CY
3720 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
3721 over-sized glyph, draw it with the default glyph width.
3722
e2e325aa
CY
3723 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3724 glyph, draw it with the default glyph width.
3725
3726 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3727 glyph, draw it with the default glyph width.
3728
d8bdbe6f
CY
3729 * xdisp.c (try_scrolling): When computing the distance from the
3730 scroll margin to PT, try moving some distance past the window
3731 bottom before giving up.
3732
7bfac547
MR
37332008-10-27 Martin Rudalics <rudalics@gmx.at>
3734
3735 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
3736 (Fset_window_buffer): Explain in doc-string that a window can be
3737 "strongly" dedicated to its buffer.
3738
4ff029f6
DN
37392008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
3740
3741 * emacs.c (daemon_name): New variable.
3742 (main): Deal with --daemon=SERVER_NAME.
3743 (Fdaemonp): Return a name if one was passed to --daemon.
3744
5790ef40
DN
37452008-10-26 Romain Francoise <romain@orebokech.com>
3746
f9bd0df9 3747 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
3748 (main): Create a pipe before forking, make the parent exit only after
3749 the child has closed its end of the pipe. Move closing the
3750 descriptors ...
3751 (Fdaemon_initialized): ... here. New function.
3752
f5385255
SM
37532008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
3754
4d632321
SM
3755 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
3756 the previous unoptimized table.
3757
f5385255
SM
3758 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
3759 the distinction between non-nil and non-t value of `dedicated'.
3760
6c56a0f3
CY
37612008-10-25 Chong Yidong <cyd@stupidchicken.com>
3762
3763 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 3764 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 3765
fec89261
MR
37662008-10-25 Martin Rudalics <rudalics@gmx.at>
3767
3768 * window.c (Fget_buffer_window, Fdelete_windows_on)
3769 (Freplace_buffer_in_windows): Make buffer argument optional and
3770 rename to buffer_or_name.
3771
34fcddd0
CY
37722008-10-24 Chong Yidong <cyd@stupidchicken.com>
3773
f5385255
SM
3774 * xdisp.c (handle_single_display_spec, handle_display_prop):
3775 Undo 2005-05-16 change.
34fcddd0
CY
3776 (handle_stop): Pop iterator if it's loaded with an empty string.
3777 (get_overlay_strings_1): Don't save iterator if it's loaded with
3778 an empty string (bug#1201).
3779
064766f2
KH
37802008-10-24 Kenichi Handa <handa@m17n.org>
3781
3782 * ftfont.c (ftfont_otf_features): Fix previous change.
3783 (ftfont_otf_capability): Check FeatureList.FeatureCount before
3784 calling ftfont_otf_features.
3785
f9bd0df9 37862008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
3787
3788 * font.c (font_match_p): Fix for the case that a vector of
3789 characters is in script-representative-chars.
3790
1dae9197
MA
37912008-10-24 Michael Albinus <michael.albinus@gmx.de>
3792
3793 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 3794 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
3795 (xd_read_queued_messages): Catch Qdbus_error from the macros.
3796 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
3797 macro. (Bug#1186).
3798
f9bd0df9 37992008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
3800
3801 * s/sol2-10.h: New file.
3802
878a4584
JB
38032008-10-23 Juanma Barranquero <lekktu@gmail.com>
3804
3805 * xdisp.c (fill_glyph_string): Fix typo in source (though the
3806 poor beast has survived 9+ years and the jump from xterm.c!).
3807
cd265ca6
MR
38082008-10-23 Martin Rudalics <rudalics@gmx.at>
3809
3810 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
3811 Reword doc-string.
f5385255 3812 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 3813
472a4dc9
JB
38142008-10-23 Juanma Barranquero <lekktu@gmail.com>
3815
3816 * character.c (syms_of_character) <script-representative-chars>:
3817 <unicode-category-table>: Doc fixes.
3818
159bd5a2
NF
38192008-10-23 Noah Friedman <friedman@splode.com>
3820
3821 * coding.c (make_conversion_work_buffer): Check that
3822 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
3823 Fget_buffer_create.
3824
49f9c344
KH
38252008-10-23 Kenichi Handa <handa@m17n.org>
3826
3827 * font.c (font_add_log): Check the values of extra properties.
3828
12bb3111
MR
38292008-10-22 Martin Rudalics <rudalics@gmx.at>
3830
3831 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3832 Reword doc-string.
3833 (Fset_window_parameter): Use NILP.
3834 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 3835 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 3836
bbeb4e99
JB
38372008-10-22 Juanma Barranquero <lekktu@gmail.com>
3838
3839 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
3840
38412008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
3842
3843 * nsfns.m (ns_appkit_version): New function.
3844 (x-server-version): Use it.
3845 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
3846 (x-server-vendor): Don't check_ns().
3847
3848 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
3849
a9b555d3
JB
38502008-10-22 Juanma Barranquero <lekktu@gmail.com>
3851
3852 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3853 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
3854
4626499f
KH
38552008-10-22 Kenichi Handa <handa@m17n.org>
3856
e3681952
KH
3857 * syntax.c (scan_words): Call word_boundary_p instead of comparing
3858 scripts.
3859
4626499f
KH
3860 * category.c (word_boundary_p): Check scripts instead of charset.
3861 Handle nil value in word-separating-categories and
3862 word-combining-categories.
3863 (syms_of_category): Fix docstrings of word-separating-categories
3864 and word-combining-categories.
3865
1560f91a
EZ
38662008-10-21 Eli Zaretskii <eliz@gnu.org>
3867
3868 * coding.c (Fencode_coding_region, Fdecode_coding_region)
3869 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
3870
f4668441
MR
38712008-10-21 Martin Rudalics <rudalics@gmx.at>
3872
3873 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
3874 Rename arg "buffer" to "buffer_or_name".
3875 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
3876 it optional.
3877 (no_switch_window): Remove since the return value is not used.
a9b555d3 3878 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
3879 Consider window as dedicated when Fwindow_dedicated_p returns a
3880 non-nil value.
3881 * lisp.h: Remove prototype for no_switch_window.
3882
fd75ddb2
JD
38832008-10-21 Jan Djärv <jan.h.d@swipnet.se>
3884
3885 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 3886 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 3887
07295713
KH
38882008-10-21 Kenichi Handa <handa@m17n.org>
3889
3890 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
3891 check Vlatin_extra_code_table.
3892
712adc82
EZ
38932008-10-20 Eli Zaretskii <eliz@gnu.org>
3894
3895 * fileio.c (Fset_file_modes): Doc fix.
3896
f549eb0b
MA
38972008-10-19 Michael Albinus <michael.albinus@gmx.de>
3898
3899 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
3900 in arrays.
3901
aac0c6e3
MR
39022008-10-19 Martin Rudalics <rudalics@gmx.at>
3903
3904 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3905 Mention kill-buffer in doc-string.
3906 (Fset_window_buffer): Reinsert tem check removed in last commit.
3907 (Fenlarge_window, Fshrink_window): Have argument names and
3908 doc-string follow Elisp manual more closely.
3909
39102008-10-18 Eli Zaretskii <eliz@gnu.org>
3911
3912 * fileio.c (Fset_file_modes): Doc fix.
3913
39142008-10-18 Martin Rudalics <rudalics@gmx.at>
3915
3916 * window.c (Fwindow_width, Fset_window_start)
3917 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
3918 (Fdelete_windows_on, Freplace_buffer_in_windows):
3919 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
3920 (Fwindow_dedicated_p): Make window argument optional.
3921 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
3922 (Fset_window_buffer): Respect any non-nil dedicated value for
3923 window. Rename "buffer" argument to "buffer_or_name".
3924
39252008-10-18 Ulrich Mueller <ulm@gentoo.org>
3926
3927 * m/sh3.h: New file, machine description for SuperH.
3928
39292008-10-17 Martin Rudalics <rudalics@gmx.at>
3930
3931 * window.c (Fsplit_window): Rename arg horflag to horizontal.
3932
39332008-10-17 Kenichi Handa <handa@m17n.org>
3934
3935 * ftfont.c (ftfont_otf_features): Fix indexing
3936 gsub_gpos->FeatureList.Feature. Check the validity of indices.
3937
39382008-10-16 Magnus Henoch <mange@freemail.hu>
3939
3940 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
3941 (Fdbus_call_method_asynchronously): Ditto.
3942 This change makes C-h f display the argument list.
3943
39442008-10-16 Chong Yidong <cyd@stupidchicken.com>
3945
3946 * fileio.c (Fexpand_file_name): Doc fix.
3947
3948 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
3949 of :foreground and :background equivalent to unspecified (20.x
3950 compatibility).
3951
39522008-10-15 Eli Zaretskii <eliz@gnu.org>
3953
3954 * buffer.c (syms_of_buffer): Doc fix.
3955
39562008-10-14 Kenichi Handa <handa@m17n.org>
3957
3958 * font.c (font_clear_prop): When clearing font width, clear the
3959 average width field too.
3960
39612008-10-12 Andreas Schwab <schwab@suse.de>
3962
3963 * ftfont.c (ftfont_shape_by_flt): Make static.
3964 * ftfont.h (ftfont_shape_by_flt): Don't declare.
3965
3966 * font.c: Don't include <m17n-flt.h>.
3967
39682008-10-10 Eli Zaretskii <eliz@gnu.org>
3969
3970 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
3971
39722008-10-09 Eli Zaretskii <eliz@gnu.org>
3973
3974 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
3975 away code.
3976
39772008-10-09 Chong Yidong <cyd@stupidchicken.com>
3978
3979 * dispnew.c (update_text_area): Avoid looping due to large glyph
3980 overhangs (bug#1070).
3981
39822008-10-09 Kenichi Handa <handa@m17n.org>
3983
3984 * fontset.c (face_for_char): If face->fontset is negative, just
3985 return ascii_face.
3986
f5385255
SM
3987 * font.c (font_delete_unmatched): Fix previous change.
3988 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
3989
39902008-10-09 Martin Rudalics <rudalics@gmx.at>
3991
3992 * frame.c (Fraise_frame): On text-only terminals select frame in
3993 order to make it visible. (Bug#1061)
3994
39952008-10-08 Chong Yidong <cyd@stupidchicken.com>
3996
3997 * fontset.c (fontset_find_font): Check frame validity.
3998
39992008-10-07 Chong Yidong <cyd@stupidchicken.com>
4000
a9b555d3 4001 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
4002 (xg_display_close): Allow Emacs to close all displays (bug#985).
4003
40042008-10-06 Andreas Schwab <schwab@suse.de>
4005
f5385255 4006 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
4007
40082008-10-06 Chong Yidong <cyd@stupidchicken.com>
4009
f5385255 4010 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 4011
a9b555d3 4012 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
4013
4014 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
4015 during initialization.
4016
40172008-10-04 Eli Zaretskii <eliz@gnu.org>
4018
4019 * xdisp.c (redisplay_internal): If frame switched, redisplay the
4020 whole thing on MSDOS frames as well as on a TTY.
4021
4022 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
4023 well as for TTY.
4024 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
4025 well as on a TTY.
4026
4027 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
4028 as well as for TTY.
4029
4030 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
4031
4032 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
4033 MSDOS frames as well.
4034
40352008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4036
4037 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
4038 correct arguments.
b71ac3dd 4039 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
4040
40412008-10-03 Glenn Morris <rgm@gnu.org>
4042
4043 * emacs.c (USAGE1): Add --daemon.
4044
40452008-10-02 Eli Zaretskii <eliz@gnu.org>
4046
4047 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
4048 100, so it's in percents as advertised.
4049
40502008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4051
4052 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
4053 (ns_output.current_cursor, ns_output.desired_cursor)
4054 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
4055 (FRAME_NEW_CURSOR_COLOR): Remove.
4056
4057 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 4058 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
4059 enumeration (HOLLOW_BOX_CURSOR, etc.).
4060
4061 * nsterm.m (ns_frame_rehighlight): Remove commented code.
4062 (draw_window_cursor): Simplify code.
f5385255
SM
4063 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
4064 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 4065 updates manually.
a9b555d3
JB
4066 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
4067 Use core Emacs cursor types.
aac0c6e3 4068
b8ff72fa 4069 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
4070
40712008-10-02 Martin Rudalics <rudalics@gmx.at>
4072
4073 * process.c (Faccept_process_output): Fix doc-string.
4074
40752008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
4076
4077 * gmalloc.c (__sbrk): Also define for uClibc.
4078
4079 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
4080 for uClibc.
4081
40822008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4083
4084 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
4085 styles.
4086 (nsfont_open): Reenable the cache.
4087
40882008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4089
4090 * font.c (font_matching_entity): Reflect ATTRS in font selection.
4091 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
4092
40932008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
4094
4095 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
4096 a suspended terminal.
4097
40982008-09-30 Michael Albinus <michael.albinus@gmx.de>
4099
4100 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
4101
41022008-09-30 Eli Zaretskii <eliz@gnu.org>
4103
4104 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
4105
41062008-09-30 Chong Yidong <cyd@stupidchicken.com>
4107
4108 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
4109 in a continued line coincides with a line beginning.
4110
41112008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4112
4113 * nsfont.m (nsfont_trait_distance): Fix bug.
4114 (nsfont_list): Return a list rather than a vector (syncs with Handa
4115 changes of 2008-05-14).
4116 (nsfont_open): Improve logging.
4117
41182008-09-29 Andreas Schwab <schwab@suse.de>
4119
4120 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4121
41222008-09-28 Martin Rudalics <rudalics@gmx.at>
4123
4124 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
4125 name as char-resolve-modifiers.
4126 Reported by: Markus Triska <markus.triska@gmx.at>
4127
41282008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
4129
4130 * dispnew.c (init_display): Return earlier when running as a daemon.
4131
41322008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4133
4134 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
4135
41362008-09-27 Eli Zaretskii <eliz@gnu.org>
4137
4138 * composite.c (Fcomposition_get_gstring)
4139 (Fcompose_region_internal, Fcompose_string_internal)
4140 (Ffind_composition_internal): Doc fix.
4141 (syms_of_composite) <compose-chars-after-function>: Doc fix.
4142 (syms_of_composite) <auto-composition-function>: Doc fix.
4143 (syms_of_composite) <composition-function-table>: Doc fix.
4144
41452008-09-25 Chong Yidong <cyd@stupidchicken.com>
4146
4147 * search.c (wordify): New argument for lax word-ends.
4148 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
4149
41502008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
4151
4152 * lisp.h (is_daemon): Declare.
4153 * dispnew.c (init_display): Do not try to initialize the terminal
4154 when running as a daemon.
4155
41562008-09-22 Chong Yidong <cyd@stupidchicken.com>
4157
4158 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
4159 x_display_pixel_height.
4160
41612008-09-22 Martin Rudalics <rudalics@gmx.at>
4162
4163 * undo.c (record_point): Don't call Fundo_boundary for first
4164 change. (Bug#731)
4165
41662008-09-22 Juanma Barranquero <lekktu@gmail.com>
4167
4168 * emacs.c (Fdaemonp): Doc fix.
4169
41702008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
4171
4172 * emacs.c (main): Place #ifdef in the proper place.
4173
41742008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
4175
4176 * emacs.c (standard_args): Add --daemon.
4177 (main): Disconnect from the terminal when --daemon is passed.
4178 (is_daemon): New variable.
4179 (Fdaemonp): New function.
4180 (syms_of_emacs): Defsubr it.
4181
41822008-09-20 Chong Yidong <cyd@stupidchicken.com>
4183
4184 * xdisp.c (get_next_display_element): Handle string display
4185 correctly when checking for the end of a box run.
4186
41872008-09-20 Glenn Morris <rgm@gnu.org>
4188
4189 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
4190 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
4191 (Frename_file): Avoid copying to trash if a rename involves
4192 a delete. (Bug#964).
4193
41942008-09-20 Eli Zaretskii <eliz@gnu.org>
4195
4196 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
4197 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
4198 frames as well as termcap frames.
4199 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
4200 get_named_tty.
4201
42022008-09-19 Eli Zaretskii <eliz@gnu.org>
4203
4204 * process.c (procfs_system_process_attributes): Fix cmdline in
4205 case /proc/PID/cmdline is empty.
4206
4207 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
4208 x_display_pixel_height.
4209
42102008-09-19 Juanma Barranquero <lekktu@gmail.com>
4211
4212 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
4213
4214 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
4215 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
4216
42172008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
4218
4219 * dispextern.h (struct it): Move line_wrap away from the middle of
4220 bitfields. Move voffset in struct iterator_stack_entry after the
4221 bitfields. Move tab_width near after another short.
4222
42232008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
4224
4225 * frame.h (struct frame): Move alpha from the middle of bitfields.
4226
4227 * window.h (struct window): Move frozen_window_start_p after the
4228 rest of the bitfields to reduce padding.
4229
42302008-09-18 Chong Yidong <cyd@stupidchicken.com>
4231
4232 * xterm.h (x_display_info): Remove `height' and `width' members.
4233
4234 * nsterm.h (ns_display_info): Remove `height' and `width' members.
4235
4236 * w32term.h (w32_display_info): Remove `height', `width',
4237 `height_in', and `width_in' members.
4238
b8ff72fa
SM
4239 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4240 New functions.
aac0c6e3
MR
4241 (x_calc_absolute_position): Use them.
4242 (x_term_init): Omit removed `height' and `width' members.
4243
b8ff72fa
SM
4244 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4245 New functions.
aac0c6e3
MR
4246 (w32_read_socket, x_calc_absolute_position): Use them.
4247 (w32_initialize_display_info, w32_term_init): Omit removed members
4248 of w32_display_info.
4249
b8ff72fa
SM
4250 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
4251 New functions.
4252 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 4253
b8ff72fa
SM
4254 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4255 New functions.
aac0c6e3
MR
4256 (x_calc_absolute_position): Use them.
4257 (x_term_init): Omit removed `height' and `width' members.
4258
4259 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
4260 (compute_tip_xy):
4261 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
4262 * xmenu.c (menu_position_func): Use x_display_pixel_height and
4263 x_display_pixel_width.
4264
42652008-09-18 Kenichi Handa <handa@m17n.org>
4266
4267 * composite.c (fill_gstring_header): Don't check FROM and TO here.
4268 (composition_compute_stop_pos): Fix handling of static composition.
4269 (Fcomposition_get_gstring): Check FROM and TO at first.
4270
42712008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4272
46e722a9 4273 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
4274 mixup (YAILOM).
4275
42762008-09-17 Chong Yidong <cyd@stupidchicken.com>
4277
4278 * indent.c (Fvertical_motion): Use position reported by iterator
4279 instead of PT for determining screen motion (bug#943).
4280
42812008-09-17 Romain Francoise <romain@orebokech.com>
4282
4283 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
4284
42852008-09-17 Kenichi Handa <handa@m17n.org>
4286
4287 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
4288
4289 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
4290 if necessary.
4291
42922008-09-16 Kenichi Handa <handa@m17n.org>
4293
4294 * coding.c (make_conversion_work_buffer): Avoid calling
4295 Fget_buffer_create if it is not necessary.
4296
42972008-09-15 Martin Rudalics <rudalics@gmx.at>
4298
4299 * window.c (Fselect_window): Don't update window_select_count and
4300 use_time when norecord is not nil.
4301
43022008-09-14 Kenichi Handa <handa@m17n.org>
4303
4304 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
4305 specpdl_ptr.
4306
43072008-09-12 Kenichi Handa <handa@m17n.org>
4308
4309 * indent.c (scan_for_column): Don't handle automatic composition
4310 if the current buffer is not associated with a window.
4311
4312 * composite.c (composition_reseat_it): If the current buffer is
4313 not associated with a window, ignore the automatic composition.
4314 (find_automatic_composition): Likewise.
4315
43162008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4317
4318 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
4319 (Fgpm_mouse_stop): Use it.
4320 * termhooks.h (close_gpm): Declare.
4321 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
4322 connection if Gpm_GetEvent fails.
4323
4324 * window.c (set_window_buffer): Always preserve current-buffer.
4325
43262008-09-12 Glenn Morris <rgm@gnu.org>
4327
4328 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
4329
43302008-09-11 Glenn Morris <rgm@gnu.org>
4331
4332 * charset.c (charset-map-path): Doc fix.
4333
43342008-09-10 Kenichi Handa <handa@m17n.org>
4335
4336 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
4337
4338 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
4339 compose a grapheme cluster with the preceding base glyph.
4340
4341 * composite.c (composition_compute_stop_pos): Fix previous change.
4342 Reset cmp_it->id to -1 at first.
4343
43442008-09-10 Glenn Morris <rgm@gnu.org>
4345
4346 * Makefile.in (character.o, chartab.o): Fix config.h typo.
4347
43482008-09-09 Chong Yidong <cyd@stupidchicken.com>
4349
4350 * keyboard.c (read_key_sequence): Reapply translation maps when
4351 switching keyboards.
4352
43532008-09-09 Kenichi Handa <handa@m17n.org>
4354
4355 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
4356 characters.
4357
4358 * composite.c (FORWARD_CHAR): Fix calculation
4359 of (POSITION).pos_byte.
4360 (composition_compute_stop_pos): Limit the search of composition to
4361 at most 500 characters ahead. If we reach the limit or find a
4362 newline, set cmp_it->ch to -2 and return 0.
4363 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
4364
43652008-09-08 Kenichi Handa <handa@m17n.org>
4366
4367 * indent.c (Fvertical_motion): Be sure to set
4368 it_overshoot_expected if it.cmp_it.id is non-negative.
4369
43702008-09-07 Andreas Schwab <schwab@suse.de>
4371
4372 * callproc.c (Fcall_process): Don't hold references to string data
4373 across garbage collection. Move initialisation of new_argv down
4374 to avoid compiler bug.
4375
43762008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4377
4378 * process.c (Fsystem_process_attributes): Doc fix.
4379
43802008-09-07 Chong Yidong <cyd@stupidchicken.com>
4381
4382 * callproc.c (Fcall_process): Canonicalize current directory name.
4383
4384 * xdisp.c (move_it_to): When moving by vpos, ensure that the
4385 iterator advances to the next line if the current line ends in a
4386 continued tab.
4387
43882008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
4389
4390 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
4391 member to point to cmp_from.
4392
4393 * xdisp.c: Doc fix for references to gidx data member.
4394
43952008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
4396
4397 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
4398
43992008-09-07 Kenichi Handa <handa@m17n.org>
4400
4401 * composite.c (FORWARD_CHAR): Check STOP after
4402 incrementing (POSITION).pos.
4403
44042008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4405
4406 * process.c (Fsystem_process_attributes): Doc fix.
4407
44082008-09-06 Chong Yidong <cyd@stupidchicken.com>
4409
4410 * keyboard.c (Ftop_level): Doc fix.
4411
44122008-09-06 Eli Zaretskii <eliz@gnu.org>
4413
4414 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
4415 minibuffer, don't let lower part of menu invade the echo area.
4416
4417 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
4418 "char *q" to access menu text and advance through it. Revert the
4419 change that displayed ">" instead of ASCII character 0x10.
4420
44212008-09-05 Eli Zaretskii <eliz@gnu.org>
4422
4423 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
4424 toggle boxes and radio buttons on MS-DOS as well.
4425
44262008-09-05 Kenichi Handa <handa@m17n.org>
4427
4428 * composite.c (autocmp_chars): Check lookback count.
4429 (composition_compute_stop_pos): Set cmp_it->lookback.
4430 (composition_reseat_it): Check lookback count.
4431 (struct position_record): New struct.
4432 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
4433 (find_automatic_composition): New function.
4434 (composition_adjust_point): Use find_automatic_composition.
4435
4436 * dispextern.h (struct composition_it): New member lookback.
4437
44382008-09-02 Chong Yidong <cyd@stupidchicken.com>
4439
4440 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
4441 if moving by a single line.
4442
44432008-09-02 Andreas Schwab <schwab@suse.de>
4444
4445 * xterm.c (x_delete_display): Fix merge error.
4446
4447 * fileio.c (Fexpand_file_name): Remove unused variables.
4448
44492008-09-02 Eli Zaretskii <eliz@gnu.org>
4450
4451 * fileio.c (Fexpand_file_name): Copy argument `name' into local
4452 storage on all platforms, not just on DOS_NT.
4453
44542008-09-02 Jason Rumney <jasonr@gnu.org>
4455
b8ff72fa
SM
4456 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
4457 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
4458
44592008-09-01 Chong Yidong <cyd@stupidchicken.com>
4460
4461 * xfaces.c (Finternal_set_alternative_font_family_alist)
4462 (Finternal_set_alternative_font_registry_alist): Properly copy
4463 entire alist structure.
4464
44652008-09-01 Kenichi Handa <handa@m17n.org>
4466
d66c0241 4467 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 4468 representative chars of the script is a vector.
d66c0241
JB
4469 (ftfont_list): Handle the case where the representative chars of
4470 the script is a vector.
aac0c6e3
MR
4471
4472 * character.c (syms_of_character): Docstring of
4473 script-representative-chars fixed.
4474
44752008-08-31 Eli Zaretskii <eliz@gnu.org>
4476
4477 * msdos.c (BUILD_CHAR_GLYPH): New macro.
4478 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
4479 the menu. Allocate larger buffer for `text', to account for
4480 possible ^C characters.
4481
44822008-08-31 Martin Rudalics <rudalics@gmx.at>
4483
4484 * xdisp.c (prepare_menu_bars): Don't call
4485 Vwindow_size_change_functions with arg Qt.
4486
44872008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
4488
4489 * font.h (font_range):
4490 * fileio.c (report_file_error):
46e722a9
SM
4491 * composite.c (composition_update_it): Yet another int/Lisp_Object
4492 mixup (YAILOM).
aac0c6e3
MR
4493
44942008-08-30 Glenn Morris <rgm@gnu.org>
4495
4496 * data.c (Fmake_variable_frame_local): Doc fix.
4497
4498 * frame.c (Fmodify_frame_parameters): Doc fix.
4499
45002008-08-30 Eli Zaretskii <eliz@gnu.org>
4501
4502 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
4503 needed by GetTokenInformation.
4504 (w32_system_process_attributes): Check return values of all system
4505 APIs.
4506
4507 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
4508 only when the state changes.
4509 (IT_update_begin, IT_update_end): Add termscript trace.
4510
4511 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
4512 clipboard is unavailable. Set dst to NULL if it doesn't point to
4513 malloc'ed data.
4514 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
4515 passing random values to xfree.
4516
4517 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 4518 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
4519
45202008-08-29 Jason Rumney <jasonr@gnu.org>
4521
4522 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
4523
45242008-08-29 Eli Zaretskii <eliz@gnu.org>
4525
4526 * composite.c (fill_gstring_body): Avoid compiler warnings.
4527
4528 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
4529 LGLYPH_SET_CODE to avoid compiler warnings.
4530
2ae37cf0 4531 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
4532
4533 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
4534
4535 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
4536 LGLYPH_SET_CODE.
4537
45382008-08-29 Kenichi Handa <handa@m17n.org>
4539
4540 * fileio.c (report_file_error): Don't downcase the first character
4541 of errstring if it is still unibyte.
4542
45432008-08-29 Kenichi Handa <handa@m17n.org>
4544
4545 These changes are to re-implement the automatic composition so
4546 that it doesn't use text properties.
4547
4548 * Makefile.in (ftfont.o): Depend on composite.h.
4549 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
4550
4551 * character.h (Vunicode_category_table): Extern it.
4552
4553 * character.c (Vunicode_category_table): New variable.
4554 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
4555
4556 * chartab.c (optimize_sub_char_table): Perform more greedy
4557 optimization.
4558
b8ff72fa
SM
4559 * composite.h (enum composition_method):
4560 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
4561 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
4562 (Vcomposition_function_table): Extern it.
4563 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
4564 (composition_gstring_put_cache, composition_gstring_from_id)
4565 (composition_gstring_p, composition_gstring_width)
4566 (composition_compute_stop_pos, composition_reseat_it)
4567 (composition_update_it, composition_adjust_point): Extern them.
4568 (Fcomposition_get_gstring): EXFUN it.
4569
d66c0241 4570 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
4571 (Vcomposition_function_table)
4572 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
4573 (gstring_hash_table, gstring_work, gstring_work_headers):
4574 New variables.
aac0c6e3
MR
4575 (gstring_lookup_cache, composition_gstring_put_cache)
4576 (composition_gstring_from_id, composition_gstring_p)
4577 (composition_gstring_width, fill_gstring_header)
4578 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
4579 (composition_reseat_it, composition_update_it)
b8ff72fa 4580 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
4581 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
4582 and gstring_work_headers. DEFVAR_LISP composition-function-table.
4583 Defsubr compostion_get_gstring.
4584
4585 * dispextern.h (struct glyph): New union u.cmp. Delete the member
4586 cmp_id.
4587 (struct glyph_string): Delete the member gidx. New members
4588 cmp_id, cmp_from, and cmp_to.
4589 (enum it_method): Delete GET_FROM_COMPOSITION.
4590 (struct composition_it): New struct.
4591 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
4592 Delete c, len, cmp_id, cmp_len in u.comp.
4593
4594 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 4595 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 4596 (enum lglyph_indices): Likewise.
b8ff72fa 4597 (font_range): Adjust extern.
aac0c6e3
MR
4598 (font_fill_lglyph_metrics): Extern it.
4599
4600 * font.c (QCf): New variable.
4601 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4602 (font_prepare_composition): Delete this function.
4603 (font_range): Type and arguments changed.
4604 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
4605 (font_fill_lglyph_metrics): New function.
b8ff72fa 4606 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 4607 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
4608 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
4609 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
4610
4611 * fontset.h (font_for_char): Extern it.
4612
4613 * fontset.c (font_for_char): New function.
4614
4615 * ftfont.c: Include composite.h.
4616 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 4617 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
4618
4619 * indent.c: Include composite.h and dispextern.h.
4620 (check_composition): Delete this function.
4621 (scan_for_column): Handle composition by
4622 composition_compute_stop_pos, composition_reseat_it, and
4623 composition_update_it.
4624 (compute_motion): Likewise.
4625 (Fvertical_motion): Fix checking of composition.
4626
4627 * keyboard.c (adjust_point_for_property): Check composition by
4628 composition_adjust_point.
4629
b8ff72fa 4630 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
4631 struct glyph_string.
4632
b8ff72fa
SM
4633 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
4634 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
4635 struct glyph.
4636 (produce_composite_glyph): Likewise.
4637
b8ff72fa
SM
4638 * w32term.c (x_draw_composite_glyph_string_foreground):
4639 Adjust for the change of struct glyph_string.
aac0c6e3
MR
4640 (x_draw_glyph_string): Likewise.
4641
4642 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
4643 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4644
4645 * xdisp.c: Include font.h.
4646 (it_props): Delete the entry for Qauto_composed.
4647 (init_iterator): Initialize it->cmp_it.id to -1.
4648 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 4649 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
4650 (handle_auto_composed_prop): Delete it.
4651 (handle_composition_prop): Handle only static composition.
4652 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
4653 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 4654 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
4655 (pop_it): Likewise.
4656 (get_next_element): Delete next_element_from_composition.
4657 (CHAR_COMPOSED_P): New macro.
4658 (get_next_display_element): For automatic composition, get a face
4659 from the font in the glyph-string.
4660 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 4661 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
4662 (next_element_from_string): Check if the character at the current
4663 position is composed by CHAR_COMPOSED_P.
4664 (next_element_from_buffer): Likewise.
d66c0241
JB
4665 (next_element_from_composition): Adjust for the change of struct it.
4666 Update it->cmp_it.
b8ff72fa
SM
4667 (dump_glyph): Adjust for the change of struct glyph.
4668 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
4669 it and struct glyph. Don't handle automatic composition here.
4670 (fill_gstring_glyph_string): New function.
4671 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 4672 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
4673 (BUILD_GSTRING_GLYPH_STRING): New macro.
4674 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
4675 automatic composition.
b8ff72fa 4676 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 4677 struct glyph.
b8ff72fa 4678 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 4679
b8ff72fa 4680 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
4681 the change of struct glyph_string.
4682 (x_draw_glyph_string): Likewise.
4683
46842008-08-29 Glenn Morris <rgm@gnu.org>
4685
4686 * buffer.c (word-wrap): Doc fix.
4687 * xdisp.c (truncate-partial-width-windows): Doc fix.
4688 Increase default to 50.
4689
46902008-08-29 Chong Yidong <cyd@stupidchicken.com>
4691
4692 * xdisp.c (update_tool_bar_unwind): New function.
4693 (update_tool_bar): Temporarily set selected frame before building
4694 tool-bar items.
4695
46962008-08-28 Michael Albinus <michael.albinus@gmx.de>
4697
4698 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
4699 snprintf, respectively.
4700 (xd_append_arg): Convert strings with Fstring_make_unibyte.
4701
47022008-08-28 Chong Yidong <cyd@stupidchicken.com>
4703
4704 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
4705 LDFLAGS to GNUstep CC invocation.
4706
47072008-08-27 Chong Yidong <cyd@stupidchicken.com>
4708
4709 * indent.c (Fvertical_motion): Revert last change. Handle the
4710 general case where we are moving forward, and PT spans multiple
4711 screen lines.
4712
4713 * eval.c (find_handler_clause): Temporarily increase
4714 max-lisp-eval-depth while printing the backtrace buffer, to
4715 guarantee that help-mode code can run.
4716
47172008-08-27 Eli Zaretskii <eliz@gnu.org>
4718
4719 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
4720 colors under -rv.
4721 (IT_set_frame_parameters): Don't swap foreground and background
4722 colors if `(reverse . t)' is present in the frame properties.
4723 (internal_terminal_init): Call init_frame_faces only for the
4724 initial frame.
4725
47262008-08-27 Andreas Schwab <schwab@suse.de>
4727
4728 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
4729
47302008-08-27 Andreas Schwab <schwab@suse.de>
4731
4732 * search.c (search_buffer): Set char_base to zero only at the end.
4733
47342008-08-27 Kenichi Handa <handa@m17n.org>
4735
b8ff72fa 4736 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
4737
47382008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
4739
4740 * xterm.c (x_term_init): Temporarily hide the partially
4741 initialized terminal while calling vendor-specific-keysyms.
4742
47432008-08-26 Eli Zaretskii <eliz@gnu.org>
4744
4745 * msdos.c (internal_terminal_init): Most initializations done only
4746 once, especially initial_screen_colors[] and termscript open.
4747
47482008-08-26 Chong Yidong <cyd@stupidchicken.com>
4749
4750 * eval.c (Fcondition_case): Doc fix.
4751
4752 * widgetprv.h (EmacsFramePart): Change font member to the new font
4753 struct.
4754
4755 * widget.c: Include character.h and font.h for XSETFONT.
4756 (setup_frame_gcs): Compute X font id from font struct, just once.
4757
47582008-08-26 Eli Zaretskii <eliz@gnu.org>
4759
4760 * term.c (get_named_tty): Fix last change.
4761
47622008-08-26 Chong Yidong <cyd@stupidchicken.com>
4763
4764 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 4765 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
4766
47672008-08-25 Eli Zaretskii <eliz@gnu.org>
4768
4769 * frame.c (do_switch_frame): Mark previously displayed frame as
4770 obscured for FRAME_MSDOS_P frames as well.
4771
47722008-08-24 Eli Zaretskii <eliz@gnu.org>
4773
4774 * frame.c (make_terminal_frame): Initialize f->terminal,
4775 f->terminal->reference_count, and scroll bars on MS-DOS as well.
4776 Set the top frame to newly created frame.
4777 (Fmake_terminal_frame): Reuse the_only_display_info.
4778
4779 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
4780 estimating available memory.
4781
b97439ce 47822008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
4783
4784 * nsterm.m (ns_draw_window_cursor): Don't call
4785 NSDisableScreenUpdates and NSEnableScreenUpdates on
4786 non-NS_IMPL_COCOA systems.
4787
47882008-08-23 Andreas Schwab <schwab@suse.de>
4789
4790 * process.c (procfs_system_process_attributes): Fix use of
4791 uninitialized variables.
4792
47932008-08-23 Eli Zaretskii <eliz@gnu.org>
4794
4795 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
4796
4797 * dispnew.c (init_display): Remove MS-DOS specific conditions for
4798 calling tty-set-up-initial-frame-faces.
4799
b8ff72fa
SM
4800 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
4801 Allow MSDOS frames along with X frames.
aac0c6e3
MR
4802
4803 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
4804 addition to output_termcap.
4805
4806 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
4807
4808 * termchar.h (FRAME_TTY): Support output_msdos_raw.
4809 (struct tty_display_info) [MSDOS]: Add fields related to mouse
4810 highlight.
4811
4812 * process.c [!subprocesses]: Define QCname.
4813 (syms_of_process): Intern and staticpro it.
4814
4815 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
4816 Adjust for changes in encoding/decoding routines.
4817 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
4818 encode_coding and decode_coding.
4819
b8ff72fa 4820 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
4821
4822 * dosfns.c: Include frame.h before termhooks.h.
4823 (dos_cleanup): Use CURTTY ()->termscript instead of a global
4824 variable termscript.
4825
4826 * s/msdos.h (USER_FULL_NAME): Define.
4827 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
4828
4829 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
4830 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
4831 pw->pw_gecos.
4832
4833 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
4834 SELECTED_FRAME as additional (1st) argument.
4835 (tty_read_avail_input): Handle output_msdos_raw in
4836 addition to output_termcap.
4837
4838 * msdos.c: Include frame.h before termhooks.h.
4839 (mouse_on, mouse_off, mouse_moveto, mouse_init)
4840 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
4841 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
4842 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
4843 (IT_set_terminal_modes, IT_reset_terminal_modes)
4844 (IT_set_frame_parameters): Use tty->termscript instead of a global
4845 variable termscript.
4846 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
4847 global variable terminal_coding. Don't refer to
4848 Vnonascii_translation_table.
4849 (internal_terminal_init): Set Vwindow_system in current_kboard.
4850 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
4851 Announce date and time of session start, if termscript is open.
4852 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
4853 term.c:init_tty). Open termscript only of not already open.
4854 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
4855 here instead of dos_ttraw. Don't initialize display if this is an
4856 initial tty. Don't set FRAME_FONT.
4857 (Vwindow_system_version): Bump to 23.
4858 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
4859 is available, set up mouse_position_hook.
4860 (dos_ttraw, IT_set_terminal_modes): If called with initial
4861 terminal, do nothing.
4862 (IT_set_frame_parameters): Handle the Qtty_type frame
4863 parameter by calling internal_terminal_init.
4864 (dos_set_window_size, show_mouse_face)
4865 (clear_mouse_face, IT_note_mode_line_highlight)
4866 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
4867 (dos_rawgetc): Use tty_display_info instead of x_display_info.
4868 (initialize_msdos_display): New function.
4869 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
4870 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
4871 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
4872 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 4873 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
4874 (request_sigio, unrequest_sigio): Don't define, now defined on
4875 sysdep.c.
4876 (IT_write_glyphs): Rewrite to use encode_terminal_code.
4877
4878 * term.c [MSDOS]: Include msdos.h.
4879 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
4880 conditional to DOS_NT. Allow only one call to this function in a
4881 session. Don't allocate a new struct tty_display_info; instead,
4882 reuse the_only_display_info. Call get_tty_size to get screen
4883 dimensions. Call init_baud_rate to set bad_rate.
4884 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
4885 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 4886 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
4887 (get_tty_terminal, get_named_tty, Ftty_type)
4888 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
4889 output_termcap.
b8ff72fa
SM
4890 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
4891 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 4892 only when subprocesses are supported.
aac0c6e3
MR
4893
4894 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
4895 f->output_data.x.
4896 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
4897 terminal devices.
4898
5582fbc7 4899 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
4900 x_output.
4901 (FRAME_FONT): Use output_data.tty.
4902 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
4903 (struct x_display_info): Rename from display_info. Update all users in
4904 msdos.c.
aac0c6e3 4905 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 4906 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
4907 (dos_ttraw): Update prototype.
4908
4909 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
4910 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
4911
49122008-08-23 Jason Rumney <jasonr@gnu.org>
4913
4914 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
4915 (fn_TIFFSetDirectory): New library function used.
4916 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
4917 (tiff_load): Use :index to select among multiple images. Set count
4918 property when multiple images exist.
4919 (gif_format): Use :index, not :image.
4920
49212008-08-23 Chong Yidong <cyd@stupidchicken.com>
4922
4923 * xdisp.c (try_scrolling): Check INT_MAX instead of
4924 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
4925 to obtain INT_MAX.
4926
49272008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
4928
4929 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
4930
49312008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
4932
4933 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
4934 GNUstep library location.
4935
49362008-08-21 Chong Yidong <cyd@stupidchicken.com>
4937
4938 * xfaces.c (x_update_menu_appearance): Check validity of menu font
4939 before using it.
4940
4941 * puresize.h (BASE_PURESIZE): Increase to 1250000.
4942
49432008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4944
4945 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
4946 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
4947 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
4948 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
4949 (EmacsApp-cursor_blink_handler): Remove declaration.
4950 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
4951 match 01 Feb 2008 changes in xterm.c.
4952 (ns_read_socket): Add cast to avoid warning.
4953 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
4954 GNUstep.
4955
49562008-08-20 Chong Yidong <cyd@stupidchicken.com>
4957
4958 * xselect.c (x_get_foreign_selection): Return nil if desired
4959 selection could not be obtained, instead of signalling an error.
4960
49612008-08-20 David Reitter <david.reitter@gmail.com>
4962
4963 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
4964 * nsterm.m: Remove ns-specific code for cursor blinking.
4965 (ns_draw_window_cursor): Clear cursor properly rather than
4966 redrawing the area. Respect width of bar cursors.
4967 These changes enable the use of generic blink-cursor-mode and
4968 generic cursor types in NS and support smooth cursor movements (do
4969 not blink off after command).
4970 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
4971 Nextstep, too.
4972
49732008-08-19 Kenichi Handa <handa@m17n.org>
4974
4975 * font.c (Vfont_log_deferred): New variable.
4976 (font_add_log): Check Vfont_log_deferred.
4977 (font_deferred_log): New function.
4978
4979 * font.h (font_deferred_log): Extern it.
4980
4981 * fontset.c (reorder_font_vector): Use encoding charset of fonts
4982 for sorting.
4983 (face_for_char): Use deferred log.
4984
49852008-08-18 Kenichi Handa <handa@m17n.org>
4986
4987 * fontset.c (face_for_char): Add font log.
4988
4989 * font.c (font_add_log): Add the font properties :script, :lang,
4990 and :otf in the log.
4991
49922008-08-17 Chong Yidong <cyd@stupidchicken.com>
4993
4994 * xdisp.c: Remove dead code.
4995 (handle_invisible_prop, next_overlay_string): Defer call to
4996 setup_for_ellipsis.
4997 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
4998
49992008-08-15 Chong Yidong <cyd@stupidchicken.com>
5000
5001 * xfaces.c (lookup_derived_face): Properly handle possible zero
5002 return value of get_lface_attributes.
5003 (merge_faces): Don't tell lookup_derived_face to signal an error
5004 if face is not found.
5005
5006 * dired.c (Fdirectory_files): Doc fix.
5007
5008 * process.c (make_process): Initialize kill_without_query struct
5009 member.
5010
50112008-08-15 Eli Zaretskii <eliz@gnu.org>
5012
5013 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
5014 Alternative calculation of totphys for Visual Studio 6.
5015
5016 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
5017
5018 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
5019 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
5020 All users changed.
5021 (stat): Only root directory passed to GetDriveType. Allow RAM
5022 disk as well as local fixed disk when w32-get-true-file-attributes
5023 is set to `local'.
5024 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
5025 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
5026 (w32_cached_id, w32_add_to_cache): New functions.
5027 (get_name_and_id): Look account names in the cache before calling
5028 lookup_account_sid.
5029 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
5030 New initialization flags.
5031 (globals_of_w32): Initialize them to zero.
5032 (w32_system_process_attributes): Use w32_cached_id and
5033 w32_add_to_cache.
5034
50352008-08-14 Lawrence Mitchell <wence@gmx.li>
5036
5037 * lread.c (Fread_char, Fread_char_exclusive): If no character
5038 event is read before timeout is reached, return nil, rather than
5039 converting to a number.
5040
50412008-08-14 Chong Yidong <cyd@stupidchicken.com>
5042
5043 * fns.c (use_dialog_box): Doc fix.
5044
5045 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
5046 on OS X.
5047
50482008-08-13 Chong Yidong <cyd@stupidchicken.com>
5049
5050 * frame.c (Qns_parse_geometry): New var.
5051 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
5052
50532008-08-11 Chong Yidong <cyd@stupidchicken.com>
5054
5055 * xdisp.c (x_produce_glyphs): Handle the case when font has no
5056 space character in calculating tabs.
5057
50582008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
5059
5060 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
5061
50622008-08-10 Glenn Morris <rgm@gnu.org>
5063
5064 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
5065 silence gcc "limited range of data type" warnings in some
5066 make_fixnum_or_float calls.
5067
50682008-08-09 Eli Zaretskii <eliz@gnu.org>
5069
5070 * w32.c (w32_system_process_attributes): If the process does not
5071 exist, return nil.
5072
5073 * w32.c: Include thelp32.h, psapi.h and coding.h.
5074 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
5075 declarations.
5076 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
5077 (Process32Next_Proc): New typedefs.
5078 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
5079 (g_b_init_process32_next, g_b_init_open_thread_token)
5080 (g_b_init_impersonate_self, g_b_init_revert_to_self)
5081 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
5082 (g_b_init_get_process_working_set_size)
5083 (g_b_init_global_memory_status_ex): New static variables.
5084 (globals_of_w32): Initialize them.
5085 (create_toolhelp32_snapshot, process32_first, process32_next)
5086 (open_thread_token, impersonate_self, revert_to_self)
5087 (get_process_memory_info, get_process_working_set_size)
5088 (global_memory_status, global_memory_status_ex): New wrapper
5089 functions.
5090 (w32_list_system_processes, w32_system_process_attributes)
5091 (enable_privilege, restore_privilege, ltime, process_times):
5092 New functions.
5093 (convert_time_raw): New function.
5094 (convert_time): Remove conversion of FILETIME into time in 100
5095 nsec units, call convert_time_raw instead.
5096
5097 * process.h (w32_list_system_processes, w32_system_process_attributes):
5098 Add prototypes.
5099 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
5100 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
5101 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
5102 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
5103
5104 * process.c (Fsystem_process_attributes): Doc fix.
5105
51062008-08-08 Chong Yidong <cyd@stupidchicken.com>
5107
5108 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
5109 a continued multi-char glyph; if so, advance to the actual glyph.
5110
51112008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
5112
5113 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
5114
5115 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
5116 (.m.o): Use it.
5117 * config.in: Regenerate.
5118
51192008-08-07 Chong Yidong <cyd@stupidchicken.com>
5120
5121 * xdisp.c (redisplay_window): Revert last change.
5122 (try_window): Check bottom scroll margin too.
5123
51242008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5125
5126 * config.in: Regenerate.
5127
5128 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
5129 -list-load-path-shadows'.
5130 (nsgui.h): Reduce number of things depending on it.
5131
51322008-08-06 Chong Yidong <cyd@stupidchicken.com>
5133
5134 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
5135 instead of window-end which does the wrong thing at eob.
5136 (try_cursor_movement): Minor optimization.
5137 (redisplay_window): If scroll margin is defined, don't assume
5138 window doesn't need scrolling.
5139
51402008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5141
5142 * config.in: Regenerate.
5143
5144 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
5145 (mostlyclean): Don't delete *.d under NS.
5146
5147 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
5148
51492008-08-06 Kenichi Handa <handa@m17n.org>
5150
5151 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
5152
51532008-08-06 Andreas Schwab <schwab@suse.de>
5154
5155 * config.in: Regenerate.
5156
51572008-08-05 Chong Yidong <cyd@stupidchicken.com>
5158
5159 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
5160 forcing a window start.
5161
5162 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
5163 (auto_save_1): Update modtime when auto-save-list-file-name is on.
5164
51652008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5166
5167 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
5168 argument.
5169
51702008-08-05 Juanma Barranquero <lekktu@gmail.com>
5171
5172 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
5173 <scroll-down-aggressively, before-change-functions>:
5174 <after-change-functions>: Reflow docstrings.
5175
51762008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5177 Ken Raeburn <raeburn@gnu.org>
5178
5179 Dock menu customization, based on a patch by Ken Raeburn, plus some
5180 other fixes.
5181 * nsmenu.m (dockMenu): New variable.
5182 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
5183
5184 * nsterm.h (dockMenu): Declare.
5185
5186 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
5187 (ns_term_init): Initialize dockMenu.
5188 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
5189 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
5190 left.
5191
5192 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
5193
51942008-08-04 Chong Yidong <cyd@stupidchicken.com>
5195
5196 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
5197
5198 * config.in: Regenerate.
5199
52002008-08-04 Seiji Zenitani <zenitani@mac.com>
5201
5202 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
5203
52042008-08-04 Chong Yidong <cyd@stupidchicken.com>
5205
5206 * nsterm.h (find_and_call_menu_selection): Fix prototype.
5207
52082008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5209
5210 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
5211
5212 * keyboard.h: Comment an #endif.
5213
5214 * lisp.h (have_menus_p): Adjust comment.
5215
5216 * menu.c (find_and_return_menu_selection): Fix comparison with
5217 client_data.
5218
5219 * nsmenu.m (popup_activated_flag): New variable.
5220 (popup_activated): New function.
5221 (menu-or-popup-active-p): New exported lisp definition.
5222 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
5223 when popup done.
5224 (ns_popup_dialog): Set popup_activated_flag.
5225
5226 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
5227 version for GNUstep (handled by conditional typedef in nsterm.m).
5228 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
5229 in rgb.txt).
5230
5231 * process.c (init_process): Use DARWIN_OS, not DARWIN.
5232
5233 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
5234
5235 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
5236
5237 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
5238 shortcircuit if popup_activated like GTK and X toolkit.
5239
5240 * m/inter386.h: Change DARWIN to DARWIN_OS.
5241
5242 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
5243 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
5244 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
5245 comment on NO_SOCK_SIGIO.
5246
52472008-08-03 Chong Yidong <cyd@stupidchicken.com>
5248
5249 * nsterm.m (windowDidResize): Remove stopModal call.
5250
52512008-08-03 Andreas Schwab <schwab@suse.de>
5252
5253 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
5254 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
5255
52562008-08-02 Chong Yidong <cyd@stupidchicken.com>
5257
5258 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
5259 Don't use uninitialized pointer variable when using getrlimit.
5260
52612008-08-02 Jason Rumney <jasonr@gnu.org>
5262
5263 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
5264
52652008-08-02 Eli Zaretskii <eliz@gnu.org>
5266
5267 * alloc.c (NSTATICS): Bump to 0x640.
5268
5269 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
5270
5271 * lisp.h: Add prototype for directory_files_internal.
5272
5273 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
5274 New functions.
5275 (syms_of_process): Defsubr them. Add initializations for various
5276 Q* symbols used in procfs_system_process_attributes.
5277 (procfs_list_system_processes, procfs_system_process_attributes)
5278 [HAVE_PROCFS]: New functions.
5279 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
5280 (procfs_get_total_memory): New functions.
5281
52822008-08-01 Juanma Barranquero <lekktu@gmail.com>
5283
5284 * xfaces.c (Fx_load_color_file): Fix previous change;
5285 it is #ifdef WINDOWSNT, not WINDOWS_NT.
5286
52872008-08-01 Michael Albinus <michael.albinus@gmx.de>
5288
5289 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
5290
52912008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5292
5293 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
5294
52952008-08-01 Chong Yidong <cyd@stupidchicken.com>
5296
5297 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
5298
5299 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
5300 define NSApplicationDelegateReplySuccess.
5301 (EmacsView -converstationIdentifier): Use long instead of
5302 NSInteger for GNUstep, since it doesn't have NSInteger.
5303
5304 * xmenu.c: Revert last change.
5305
5306 * keyboard.h: Fix last change.
5307
53082008-08-01 Juanma Barranquero <lekktu@gmail.com>
5309
5310 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
5311 on Windows.
5312
53132008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5314
5315 Warning clearing and clean-up in NS port.
5316 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
5317 Add prototypes.
5318 * nsgui.h (FACE_DEFAULT): Remove, unused.
5319 (XGCValues): Change colors to unsigned long.
5320 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
5321 nsterm.m.
5322 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
5323 (ns_list_fonts): Remove, unused.
5324 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
5325 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
5326 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
5327 (nsfont_draw): Compare face colors to 0, not nil.
5328 * nsmenu.m (struct widget_value): Drop unneeded declaration.
5329 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
5330 (-addSubmenuWithTitle:): Use NSMenuItem class.
5331 (ns_popup_menu): Use NO, not NULL, for enabled setting.
5332 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
5333 (ns_clip_to_row): Make gc arg a BOOL.
5334 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
5335 ns_clip_to_row() call.
5336 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
5337 used). Cast FRAME_FONT assignments.
5338 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
5339 (ns_string_to_lispmod): Change arg to const char.
5340 (ns_term_init): Use NSMenuItem class.
5341 (EmacsApp -openFile:): Move to different section of file.
5342 (EmacsApp -application:openFiles:): Don't return a value, call
5343 -replyToOpenOrPrint:.
5344 (EmacsView -keyDown:): Fix up cast.
5345 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
5346 (EmacsView -menuDown:): Cast tag in call to
5347 find_and_call_menu_selection().
5348 (ns_list_fonts): Remove, unused.
5349 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
5350 (ns_fontname_to_xlfd): Make static.
5351 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
5352 Remove prototypes (now in keyboard.h).
5353 (next_menubar_widget_id): Remove, unused.
5354 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
5355 Remove prototypes (now in keyboard.h).
5356 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
5357
53582008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
5359
5360 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
5361 (floatfns.o): Depend on syssignal.h.
5362 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
5363
5364 * systty.h: Fix previous change that removed BSD_TERMIOS.
5365 Add comments to #ifdefs.
5366
53672008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5368
5369 * w32fns.c (w32-load-color-file): Remove.
5370 (x-open-connection): Use renamed Fx_load_color_file.
5371 * xfaces.c (x-load-color-file): Add.
5372 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
5373 Emacs.clr.
5374 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
5375
53762008-07-31 Michael Albinus <michael.albinus@gmx.de>
5377
5378 * dbusbind.c (Fdbus_call_method_asynchronously)
5379 (Fdbus_method_error_internal): New defuns.
5380 (xd_read_message): Handle also reply messages.
5381 (Vdbus_registered_functions_table): Extend docstring.
5382
53832008-07-31 Juanma Barranquero <lekktu@gmail.com>
5384
5385 * keyboard.c (gobble_input): Fix previous change.
5386
53872008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5388
5389 * bitmaps/README:
5390 * xfns.c:
5391 * termcap.c:
5392 * term.c:
5393 * syswait.h:
5394 * systty.h:
5395 * systime.h:
5396 * syssignal.h:
5397 * sysdep.c:
5398 * process.h:
5399 * process.c:
5400 * print.c:
5401 * ndir.h:
5402 * lread.c:
5403 * keyboard.c:
5404 * getpagesize.h:
5405 * floatfns.c:
5406 * fileio.c:
5407 * emacs.c:
5408 * doc.c:
5409 * dispnew.c:
5410 * dired.c:
5411 * data.c:
5412 * callproc.c:
5413 * buffer.c:
5414 * README:
5415 * Makefile.in:
5416 * s/template.h:
5417 * s/msdos.h:
5418 * m/vax.h: Remove VMS support.
5419 * s/vms.h:
5420 * vlimit.h:
5421 * uaf.h:
5422 * temacs.opt:
5423 * param.h:
5424 * ioctl.h: Remove file.
5425
54262008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5427
5428 * s/ms-w32.h (MULTI_KBOARD): Remove.
5429 * xterm.c:
5430 * xselect.c:
5431 * xfns.c:
5432 * window.c:
5433 * w32term.c:
5434 * w32fns.c:
5435 * terminal.c:
5436 * termhooks.h:
5437 * term.c:
5438 * sysdep.c:
5439 * keyboard.h:
5440 * keyboard.c:
5441 * frame.h:
5442 * frame.c:
5443 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
5444 * config.in: Regenerate.
5445
54462008-07-30 Jason Rumney <jasonr@gnu.org>
5447
5448 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
5449
5450 * w32font.c (w32font_encode_char): Leave as unicode if in range.
5451 (w32font_open_internal): Get unicode version of textmetrics.
5452 Don't enable or disable glyph indices here.
5453 (w32font_open): Disable use of glyph indices.
5454
5455 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
5456
54572008-07-30 Chong Yidong <cyd@stupidchicken.com>
5458
5459 * minibuf.c (Vread_buffer_function): Doc fix.
5460
54612008-07-30 John Paul Wallington <jpw@pobox.com>
5462
5463 * minibuf.c (read_buffer_completion_ignore_case): New var.
5464 (Fread_buffer): Use it.
5465
54662008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
5467
5468 * systty.h (sensemode): Remove empty #if. Remove reference to
5469 BSD_TERMIOS, unused.
5470
5471 * sysdep.c: Remove reference to DGUX.
5472 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
5473
5474 * config.in: Regenerate.
5475
54762008-07-30 Jason Rumney <jasonr@gnu.org>
5477
5478 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
5479
54802008-07-29 Jason Rumney <jasonr@gnu.org>
5481
5482 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
5483 is populated.
5484 (uniscribe_encode_char): Always use uniscribe.
5485 Avoid using context if cache is populated.
5486
54872008-07-29 Jan Djärv <jan.h.d@swipnet.se>
5488
5489 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
5490 open menu.
5491
5492 * gtkutil.c (menu_nav_ended): Remove.
5493 (create_menus): Remove signal connect for menu_nav_ended.
5494
54952008-07-28 Chong Yidong <cyd@stupidchicken.com>
5496
5497 * xdisp.c (redisplay_window): Check return value of
5498 compute_window_start_on_continuation_line before forcing a window
5499 start.
5500
55012008-07-28 Jason Rumney <jasonr@gnu.org>
5502
5503 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
5504
5505 * w32term.c (w32_enable_unicode_output, cleartype_active):
5506 Remove obsolete display options.
5507 (x_draw_glyph_string_background): Don't use old cleartype_active
5508 workaround.
5509 (w32_initialize): Remove cleartype_active initialization.
5510 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
5511
55122008-07-28 Andreas Schwab <schwab@suse.de>
5513
5514 * lisp.h (init_weak_hash_tables, syms_of_font)
5515 (xd_read_queued_messages, syms_of_dbusbind): Declare.
5516 (remove_hash_entry): Don't declare.
5517 * eval.c (maybe_call_debugger): Make static and move before use.
5518 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
5519 * xdisp.c: Include "gtkutil.h" if USE_GTK.
5520 * xterm.h (x_set_frame_alpha): Declare.
5521
55222008-07-28 Jan Djärv <jan.h.d@swipnet.se>
5523
5524 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
5525 (create_menus): Connect selection-done to menu_nav_ended.
5526
55272008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5528
5529 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
5530 Set Vx_resource_name to a fallback. Replace read of 'buffered'
5531 parameter with read of 'alpha' one.
5532 (Qns_frame_parameter): Remove.
5582fbc7 5533 * nsselect.m (selection-coding-system)
aac0c6e3
MR
5534 (next-selection-coding-system, Vselection_coding_system)
5535 (Vnext_selection_coding_system): Drop.
5536
55372008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5538
5539 * nsfns.m (do-applescript, do_applescript): Rename to
5540 ns-do-applescript, ns_do_applescript, and move within file.
5541
55422008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
5543
5544 Remove support for Mac Carbon.
5545 * mactoolbox.c:
5546 * macterm.h:
5547 * macterm.c:
5548 * macselect.c:
5549 * macmenu.c:
5550 * macgui.h:
5551 * macfns.c:
5552 * mac.c: Remove file.
5553 * s/darwin.h:
5554 * m/intel386.h:
5555 * xfaces.c:
5556 * xdisp.c:
5557 * window.c:
5558 * tparam.c:
5559 * termhooks.h:
5560 * termcap.c:
5561 * term.c:
5562 * syssignal.h:
5563 * sysselect.h:
5564 * sysdep.c:
5565 * process.c:
5566 * lread.c:
5567 * lisp.h:
5568 * keyboard.c:
5569 * image.c:
5570 * fringe.c:
5571 * frame.h:
5572 * frame.c:
5573 * fontset.c:
5574 * font.h:
5575 * font.c:
5576 * fns.c:
5577 * fileio.c:
5578 * emacs.c:
5579 * dispnew.c:
5580 * dispextern.h:
5581 * config.in:
5582 * atimer.c:
2ae37cf0 5583 * Makefile.in: Remove code for Carbon.
aac0c6e3 5584
f0131492 55852008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
5586
5587 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
5588
55892008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5590
5591 * macterm.h (kCGBitmapByteOrder32Host): New define for
5592 non-universal SDKs.
5593
5594 * image.c (mac_create_cg_image_from_image, image_load_image_io)
5595 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5596
5597 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
5598 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5599
56002008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
5601
5602 * w32inevt.c: Include dispextern.h.
5603
56042008-07-26 Andreas Schwab <schwab@suse.de>
5605
5606 * print.c (print_object): Fix off-by-one in last change.
5607
56082008-07-25 Juanma Barranquero <lekktu@gmail.com>
5609
5610 * term.c (syms_of_term): Don't initialize default_orig_pair,
5611 default_set_foreground and default_set_background on Windows.
5612
56132008-07-25 Jason Rumney <jasonr@gnu.org>
5614
5615 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
5616 ScriptItemize. Clean up return value checking. Remove unused
5617 variables.
5618 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
5619 shaping engine.
5620
5621 * w32font.c (w32font_has_char): Handle the case where we can't
5622 determine the script for a character.
5623
56242008-07-25 Chong Yidong <cyd@stupidchicken.com>
5625
5626 * term.c (syms_of_term): Initialize default_orig_pair,
5627 default_set_foreground, and default_set_background.
5628
5629 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
5630 clash (bug#86).
5631 (getloadavg): Callers changed.
5632
5633 * image.c (svg_load_image): Fix last change.
5634 (svg_load_image): Use rsvg_handle_get_dimensions to check that
5635 image size is valid. Use g_object_unref instead of deprecated
5636 rsvg_handle_free to free rsvg handle.
5637 (x_from_xcolors): Don't initialize pixmap (silence compiler).
5638
56392008-07-25 Jason Rumney <jasonr@gnu.org>
5640
5641 * w32font.c (w32font_encode_char): Encode characters outside BMP as
5642 surrogates before looking up glyph index.
5643 (w32font_text_extents): Encode as surrogates if falling back to
5644 functions that need UTF-16 wide chars.
5645
5646 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
5647 BMP as surrogates before looking up glyph index.
5648
56492008-07-25 Chong Yidong <cyd@stupidchicken.com>
5650
5651 * image.c (svg_load_image): Check for failure in return value of
5652 rsvg_handle_get_pixbuf. Free rsvg handle when done.
5653
56542008-07-25 Jason Rumney <jasonr@gnu.org>
5655
5656 * w32font.c (Fx_select_font): Reverse sense of second arg.
5657
56582008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
5659
5660 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
5661 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
5662
5663 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
5664 (PURESIZE): Use it.
5665
56662008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
5667
5668 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
5669 * m/alpha.h (TEXT_END):
5670 * m/ibmrs6000.h (TEXT_END):
5671 * m/macppc.h (TEXT_END):
5672 * s/darwin.h (TEXT_END):
5673 * s/msdos.h (TEXT_END): Remove, unused.
5674 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
5675 * s/cygwin.h: Remove comment.
5676
5677 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
5678 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
5679 * m/intel386.h (DOT_GLOBAL_START):
5680 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
5681 (USG): Remove, file not used on USG platforms.
5682
5683 * Makefile.in (HAVE_X11): Remove empty #else.
5684
56852008-07-24 Andreas Schwab <schwab@suse.de>
5686
5687 * fileio.c (Finsert_file_contents): Properly adjust undo list
5688 after format conversion.
5689
56902008-07-24 Jan Djärv <jan.h.d@swipnet.se>
5691
5692 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
5693 (menu_nav_ended): Remove.
5694 (create_menus): Remove signal connect for menu_nav_ended.
5695 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
5696 create_menus.
5697 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
5698
56992008-07-23 Jason Rumney <jasonr@gnu.org>
5700
5701 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
5702 with opened font.
5703 (w32font_open): Set font type to gdi.
5704
5705 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
5706
57072008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
5708
5709 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
5710 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
5711 defines it.
5712 * unexec.c (ADDR_CORRECT): Define unconditionally.
5713
5714 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
5715
5716 * unexec.c: Remove code depending on !COFF and USG, the file is
5717 not used for such systems.
5718
5719 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
5720 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
5721 (LD_SWITCH_SYSTEM_1): Remove, update users.
5722
5723 * s/darwin.h (DATA_END):
5724 * m/intel386.h (DATA_END):
5725 * m/ibmrs6000.h (DATA_END):
5726 * m/alpha.h (DATA_END): Remove, unused.
5727
5728 * config.in: Regenerate.
5729 * s/ms-w32.h (subprocesses): Define unconditionally.
5730 * s/template.h (subprocesses): Update comment.
5731 * s/vms.h (subprocesses):
5732 * s/usg5-4.h (subprocesses):
5733 * s/hpux10-20.h (subprocesses):
5734 * s/gnu-linux.h (subprocesses):
5735 * s/cygwin.h (subprocesses):
5736 * s/bsd-common.h (subprocesses):
5737 * s/aix4-2.h (subprocesses):
5738 * s/darwin.h (subprocesses): Do not define, defined by default now.
5739
5740 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
5741 Remove all references.
5742 (temacs): Add GNUstep specific ld flags.
5743
5744 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
5745 similarly to what X does.
5746
57472008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5748
5749 * nsfns.m (x-list-fonts): Remove.
5750 (syms_of_nsfns): Drop the x-list-fonts declaration.
5751 * nsterm.m: Get rid of remaining "//" comments.
5752
57532008-07-22 Chong Yidong <cyd@stupidchicken.com>
5754
5755 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
5756
5757 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
5758 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
5759 (Fns_own_selection_internal, Fx_disown_selection_internal)
5760 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
5761
5762 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
5763 ... */' style of docstrings. Doc fixes.
5764
57652008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5766
5767 * terminfo.c (UP, BC, PC): Undo previous change.
5768
5769 * nsfns.m: Rename ns prefixed functions/variables to the
5770 corresponding x versions. Update references.
5771
57722008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
5773
5774 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
5775
57762008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5777
5778 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
5779 Remove forwarding functions.
5780 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
5781 non-static.
5782 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
5783 non-static.
5784 (ns_frame_parm_handlers): Use the new names.
5785 (syms_of_nsfns): Move to the end of file.
5786
5787 * nsterm.m (syms_of_nsterm): Move to the end of file.
5788
5789 * dispnew.c (init_display): Remove code for X10.
5790
57912008-07-22 Jason Rumney <jasonr@gnu.org>
5792
5793 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
5794 bare drive.
5795
57962008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5797
5798 * nsterm.m (syms_of_nsterm): Remove debugging println.
5799
58002008-07-22 David Reitter <david.reitter@gmail.com>
5801
5802 * nsfns.m (do_applescript, F_do_applescript): NS version of the
5803 Carbon implementation of the same functionality: execute arbitrary
5804 AppleScript code.
5805
58062008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5807
5808 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
5809 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
5810 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5811 (Fx_display_mm_height, Fx_display_mm_width)
5812 (Fx_display_backing_store, Fx_display_visual_class)
5813 (Fx_display_save_under, Fx_open_connection)
5814 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
5815 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
5816 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5817 (Fx_display_pixel_width, Fx_display_pixel_height)
5818 (Fx_display_usable_bounds, Fx_display_planes)
5819 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
5820 ... */' style of docstrings.
5821
58222008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
5823
5824 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
5825 on this platform.
5826 (mips):
5827 * m/iris4d.h (mips): Do not define.
5828 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
5829
5830 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
5831
5832 * image.c:
5833 * nsfns.m:
5834 * nsselect.m:
5835 * nsterm.h:
5836 * nsterm.m: Rename ns prefixed functions/variables to the
5837 corresponding x versions. Update references.
5838
5839 * m/ibms390x.h (NO_REMAP): Do not undefine.
5840
5841 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
5842
58432008-07-21 Chong Yidong <cyd@stupidchicken.com>
5844
5845 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
5846 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
5847 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
5848 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
5849 (Fns_display_mm_height, Fns_display_mm_width)
5850 (Fns_display_backing_store, Fns_display_visual_class)
5851 (Fns_display_save_under, Fns_open_connection)
5852 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
5853 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
5854 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5855 (Fns_display_pixel_width, Fns_display_pixel_height)
5856 (Fns_display_usable_bounds, Fx_display_planes)
5857 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
5858
58592008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
5860
5861 * print.c (print_object): Check print_depth before searching for
5862 circularities.
5863
58642008-07-21 Michael Albinus <michael.albinus@gmx.de>
5865
5866 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
5867 only sprintf.
5868
58692008-07-21 Kenichi Handa <handa@m17n.org>
5870
5871 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
5872
58732008-07-20 Andreas Schwab <schwab@suse.de>
5874
5875 * syntax.c (find_start_pos, find_start_value)
5876 (find_start_value_byte, find_start_begv, find_defun_start)
5877 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
5878
58792008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5880
5881 * s/sol2-3.h: Insert contents of s/sol2.h.
5882 (LD_SWITCH_SYSTEM): Remove redundant definition.
5883 * s/sol2.h: Remove, unused.
5884
58852008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5886
5887 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
5888
58892008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5890
5891 * Makefile.in (ns_appdir): Fix typo in find command.
5892
58932008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5894
5895 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
5896
5897 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
5898 added not supported anymore.
5899
5900 * s/usg5-4-2.h (LIBS_SYSTEM):
5901 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
5902
5903 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5904 * s/lynxos.h (GETPGRP_NO_ARG):
5905 * s/hpux10-20.h (NO_SIOCTL_H):
5906 * s/gnu.h (GETPGRP_NO_ARG):
5907 * s/gnu-linux.h (NO_SIOCTL_H):
5908 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5909 * s/cygwin.h (GETPGRP_NO_ARG):
5910 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
5911 (C_DEBUG_SWITCH): Remove duplicate definition.
5912
5913 * m/ibms390.h: Remove boilerplate comments.
5914
5915 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
5916
5917 * process.c (HAVE_SERIAL): Consolidate ifdefs.
5918 (wait_reading_process_output): Remove code for SunOS, platform not
5919 supported anymore. Use SOLARIS2 instead of sun.
5920
59212008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5922
5923 * font.c (font_open_by_name): Under NS, default lface height to zero.
5924 (font_open_for_lface): Under NS, set size based on frame fontsize.
5925 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
5926 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
5927
59282008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5929
5930 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
5931 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
5932 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
5933 YES/NO.
5934 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
5935 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
5936 * Makefile.in (clean): Clear out build destination dir.
5937
59382008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5939
5940 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
5941 xterm, xselect.
5942 * lisp.h: Remove declaration of hash_remove.
5943 * nsgui.h: Remove redefinitions of hash_remove.
5944 * fns.c (hash_remove): Rename to hash_remove_from_table.
5945
59462008-07-19 Seiji Zenitani <zenitani@mac.com>
5947
5948 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
5949 strdup() the family UTF8String before modifying it.
5950
59512008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5952
5953 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
5954 NS_FACE_BACKGROUND with 0 instead of nil.
5955 * nsfont.m (nsfont_draw): Same.
5956
59572008-07-19 Chong Yidong <cyd@stupidchicken.com>
5958
5959 * nsfns.m (ns_set_background_color): Fix crash.
5960
59612008-07-18 Chong Yidong <cyd@stupidchicken.com>
5962
5963 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
5964
59652008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
5966
5967 * puresize.h (BASE_PURESIZE): Increase to 1240000.
5968
59692008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5970
5971 * gtkutil.c: Include <config.h> instead of "config.h".
5972
5973 * lisp.h (Foverlay_buffer): Add EXFUN.
5974
5975 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
5976 child process to complete child_setup. Undo 2005-09-21 change.
5977
5978 * s/darwin.h: Mention setsid after vfork.
5979
59802008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5981
5982 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
5983 Depend on macgui.h.
5984
5985 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
5986 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
5987
5988 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
5989 and f19.
5990 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
5991
5992 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
5993 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
5994 Remove enumerators.
5995
5996 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
5997 Check if FACE_FROM_ID returns NULL.
5998
59992008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
6000
6001 * w32inevt.c (change_frame_size): Remove extern declaration.
6002 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
6003 change_frame_size.
6004
60052008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6006
6007 * getloadavg.c: Revert last change (2008-07-15).
6008
60092008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6010
6011 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
6012 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
6013 from configure.
6014
60152008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
6016
6017 * s/sol2.h:
6018 * s/sol2-4.h: Reorganize conditionals.
6019
6020 * ecrt0.c: Remove code depending on m68000, not used anymore.
6021
6022 * fns.c (hash_remove): Make static.
6023 * lisp.h (hash_remove): Don't prototype.
6024
6025 * m/ibmrs6000.h:
6026 * m/ibms390x.h:
6027 * m/macppc.h: Remove boilerplate comments.
6028
6029 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
6030 Solaris, which does not need them.
6031
6032 * m/vax.h: Remove comments about unsupported systems.
6033
6034 * s/darwin.h: Reorganize ifdefs.
6035
60362008-07-17 Andreas Schwab <schwab@suse.de>
6037
6038 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
6039
60402008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
6041
6042 Use SDATA. Follow coding convention of placing operators at
6043 beginning of next line rather than end of previous line, and placing
6044 spaces around infix operators.
6045
6046 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
6047 in case it was defined already.
6048 USE @GNUSTEP_MAKEFILES@ rather than envvars.
6049 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
6050 ns_default.
6051 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
6052 Lisp_Objects.
6053 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
6054 (ns_defined_color, ns_color_to_lisp): Declare.
6055 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
6056 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
6057 it's accepted even with USE_LISP_UNION_TYPE.
6058 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
6059 (update_frame_tool_bar): Remove apparently obsolete tests for
6060 non-integerness of f->tool_bar_lines.
6061 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
6062 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
6063 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
6064 (nsfont_open): Don't confuse NULL for Qnil.
6065 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
6066 * menu.h (find_and_call_menu_selection):
6067 * menu.c (find_and_call_menu_selection): Use just int for vector size.
6068 (find_and_return_menu_selection): Always return something.
6069 * frame.h: Include dispextern.h for Display_Info.
6070 (display_x_get_resource): Declare.
6071
60722008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
6073
6074 * syntax.c: Remove stdio.h include accidentally introduced in
6075 Emacs.app commit.
6076 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
6077 NS_IMPL_COCOA.
6078 * keyboard.c (handle_async_input, input_available_signal): Remove
6079 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
6080
60812008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6082
6083 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
6084 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
6085 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
6086 Use SDATA.
6087
6088 * keymap.c: Remove all NS-specific code.
6089 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
6090 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
6091 where_is_preferred_modifier, return a different value depending on how
6092 preferred is the binding.
6093 (where_is_internal): Adjust accordingly.
6094 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
6095 Adjust to new preferred_sequence_p.
6096 (syms_of_keymap): Declare `where-is-preferred-modifier'.
6097 * keyboard.c (parse_solitary_modifier): Not static any more.
6098 * keyboard.h (parse_solitary_modifier): Declare.
6099
61002008-07-16 Andreas Schwab <schwab@suse.de>
6101
6102 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
6103 of easymenu.
6104
61052008-07-16 Chong Yidong <cyd@stupidchicken.com>
6106
6107 * xdisp.c (move_it_in_display_line): Account for word wrap, so
6108 that we don't move off the line.
6109
61102008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6111
6112 * keyboard.c (Qsuper): Remove.
6113 (parse_menu_item): Don't call where_is_internal specially for NS.
6114
61152008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6116
6117 * s/gnu-linux.h: Remove boilerplate comments.
6118
6119 * m/alpha.h (__ELF__): Consolidate conditions.
6120
6121 * m/m68k.h (linux): Use GNU_LINUX instead.
6122 Remove boilerplate comments.
6123
6124 * m/intel386.h: Undo refactoring from previous change.
6125 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
6126 too, remove dead code.
6127 (linux): Use GNU_LINUX instead.
6128
61292008-07-16 Jason Rumney <jasonr@gnu.org>
6130
6131 * w32gui.h: Repeat 26 June changes lost by last change.
6132
61332008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6134
6135 * systty.h: Remove code for Aix on 386, unsupported platform.
6136
6137 * s/ms-w32.h: Remove boilerplate comments.
6138 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
6139
6140 * s/gnu-linux.h (TERM): Remove support.
6141 (HAVE_SYSVIPC): Remove, unused.
6142 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
6143 for this system.
6144
6145 * process.c: Remove support for IRIS, unused.
6146 Remove support for TERM, not relevant anymore.
6147
6148 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
6149 used with the definition.
6150
6151 * s/aix4-2.h (static): Do not undef.
6152
6153 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
6154 only used on Aix.
6155 (HAVE_SYSVIPC): Remove, unused.
6156
6157 * m/hp800.h (CANNOT_DUMP): Do not undef.
6158
6159 * m/alpha.h: Fix comment.
6160
6161 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
6162 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
6163 used by this configuration.
6164 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
6165 * unexec.c: Remove code depending on HPUX and
6166 USG_SHARED_LIBRARIES, not used with this file. Remove code
6167 depending on IRIS, unused. Remove if 0-ed code.
6168
6169 * s/template.h: Remove comments about static.
6170
6171 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
6172 Remove if 0-ed code.
6173 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
6174 were the same as the default.
6175 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
6176 Remove boilerplate comments.
6177 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
6178 (HAVE_SYSVIPC): Remove, unused.
6179 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
6180
6181 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6182 Remove boilerplate comments.
6183 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6184 Remove boilerplate comments.
6185 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6186 Remove boilerplate comments.
6187 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
6188
6189 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
6190 USG systems which do not use DATA_SEG_BITS.
6191 Refactor code. Remove boilerplate comments.
6192
6193 * m/ibms390.h:
6194 * m/m68k.h:
6195 * s/bsd-common.h:
6196 * s/cygwin.h:
6197 * s/darwin.h:
6198 * s/freebsd.h:
6199 * s/gnu.h:
6200 * s/msdos.h: Remove boilerplate comments.
6201
6202 * m/iris4d.h: Remove boilerplate comments and code for systems that
6203 do not use this file.
6204 (IRIS_4D): Remove, unused.
6205
6206 * m/mips.h: Remove boilerplate comments and code for systems that
6207 do not use this file.
6208 (SIGN_EXTEND_CHAR):
6209 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
6210 * unexmips.c: Remove file, unused.
6211
6212 * editfns.c (Fuser_full_name): Replace the only use of
6213 USER_FULL_NAME with its value.
6214 * config.in: Regenerate.
6215
62162008-07-16 David Reitter <david.reitter@gmail.com>
6217
6218 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
6219 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6220
62212008-07-16 Glenn Morris <rgm@gnu.org>
6222
6223 * emacs.c (system-type): Doc fix.
6224
62252008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
6226
6227 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
6228 If the cache doesn't work, let's fix it, rather than work around it.
6229
62302008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6231
6232 * Makefile.in: Correct additions for nsfont.o in last commit.
6233 * nsfont.m: New file (forgot last commit).
6234
62352008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6236
6237 * callproc.c (set_initial_environment): Initialize
6238 Vprocess_environment under CANNOT_DUMP (fixes crash when
6239 batch-compiling for bootstrap).
6240
62412008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6242 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6243
6244 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
6245 fix crash due to different init order.
6246
62472008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6248
6249 Changes and additions for NeXTstep windowing system (Cocoa and
6250 GNUstep) support.
6251
6252 * Makefile.in:
6253 * config.in: Support defines and build commands for NS port.
6254 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
6255 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
6256 * dispextern.h: Include nsgui.h and add needed typedefs under NS
6257 windowing.
6258 (struct face): Add synth_ital field.
6259 * dispnew.c: Include nsterm.h when compiling under NS windowing.
6260 (init_display): Initialize Vinitial_window_system to "ns" when so
6261 compiled.
6262 * emacs.c: Include GSConfig.h when compiling under GNUstep.
6263 (display_arg): Use under NS.
6264 (main): Under NS, allocate autorelease pool and handle command line
6265 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
6266 (standard_args): Add NS-specific args.
6267 (shut_down_emacs): Shut down NS terminal if compiled under NS.
6268 * font.c (DEFAULT_ENCODING): New variable.
6269 (font_find_for_lface): Use it.
6270 (syms_of_font): Load syms_of_nsfont under NS.
6271 * font.h: Declare nsfont_driver when compiled under NS.
6272 * fontset.c: When compiling under NS, include nsterm.h.
6273 (fontset_from_font): Autoconstruct fontset under NS.
6274 * frame.c (various): Under NS, include nsterm.h, add Qns window system
6275 symbol, document and use it.
6276 (do_switch_frame): When for_deletion under Cocoa, add
6277 Fraise_frame(Qnil).
6278 (x_set_frame_parameters): Ensure font attribute changes are picked up.
6279 (x_get_arg): Allow "yes" and "no" as boolean values.
6280 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
6281 Qright under Cocoa.
6282 (focus-follows-mouse): Default to 0 under NS.
6283 * frame.h (enum output_method): Add output_ns.
6284 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
6285 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
6286 (FRAME_WINDOW_P): NS-specific definition.
6287 * fringe.c (max_used_fringe_bitmap): Make public.
6288 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
6289 (getloadavg): Use NeXT code under descendant OS's.
6290 * image.c (includes and header section, x_create_bitmap_from_data)
6291 (x_create_bitmap_from_file, free_bitmap_record, image_background)
6292 (image_background_transparent, x_clear_image_1)
6293 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6294 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
6295 (x_to_xcolors, x_from_xcolors, x_disable_image)
6296 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
6297 other GUIs, including XPM support using code originally written for
6298 Carbon GUI.
6299 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
6300 using NS API.
6301 (image_ascent): Use font metrics macros instead of direct struct field
6302 access.
6303 * keyboard.c (includes): Add nsterm.h when compiling under NS.
6304 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
6305 Also, handle NS as GTK for menu bar purposes.
6306 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
6307 toolkit where they differ.
6308 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
6309 use cachelist, still needed under NS.
6310 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
6311 (struct widget_value): Define it here for menu.c.
6312 * keymap.c (includes): Include modifier internals.
6313 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
6314 NS.
6315 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
6316 support for preferring sequences using certain modifiers, specified by
6317 the FIRSTONLY argument.
6318 * lisp.h (hash_remove): Rename to avoid name clash when compiling
6319 under NS GNUstep implementation.
6320 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
6321 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
6322 * menu.c: Include nsterm.h under NS.
6323 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
6324 (free_menubar_widget_tree_value, update_submenu_strings)
6325 (find_and_call_menu_selection): Treat NS as X and NT.
6326 (find_and_return_menu_selection): New function, used for popup menus.
6327 * nsgui.h:
6328 * nsterm.h:
6329 * nsfns.m:
6330 * nsimage.m:
6331 * nsmenu.m:
6332 * nsselect.m:
6333 * nsterm.m: New files.
6334 * process.c (wait_reading_process_output): Under NS, call ns_select()
6335 instead of plain select().
6336 * syntax.c (char_quoted): Under NS, avoid a crash when called near
6337 beginning of buffer.
6338 * sysselect.h (init_process): Rename when compiling under Cocoa to
6339 avoid name conflict.
6340 * termhooks.h (display_info): Add ns_display_info to union.
6341 * terminal.c (Fterminal_live_p): Add ns to terminal types.
6342 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
6343 COCOA environment.
6344 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
6345 unexec() signature. (Note, this will dump, but the resulting file
6346 crashes; unexosx is used instead; keeping around for reference and
6347 possible aid in getting dump working under GNUstep.)
6348 * w32gui.h (button_type, widget_value): Remove definitions (now in
6349 keyboard.h).
6350 * window.c: Include nsterm.h when compiling under NS.
6351 * xdisp.c (includes): Include nsterm.h when compiling under NS.
6352 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
6353 other GUI windowing systems.
6354 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
6355 GTK.
6356 (x_consider_frame_title): Under NS, set icon type and frame
6357 modified-state indicator; use ns_set_name_as_filename() when using
6358 formatted title.
6359 (update_window_cursor): Make public when compiling under NS.
6360 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
6361 (hourglass_atimer, Vhourglass_delay
6362 * xfaces.c (header section, init_frame_faces, clear_font_table)
6363 (defined_color, unload_color, x_face_list_fonts)
6364 (prepare_face_for_display): Add NS support parallel to other GUIs.
6365 Emulate GCs like other non-X GUIs.
6366 (split_font_name): Don't lowercase font name under NS.
6367 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
6368 under NS.
6369 * s/darwin.h: Add support for compilation under NS.
6370
63712008-07-15 Jason Rumney <jasonr@gnu.org>
6372
6373 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
6374 (w32_show_hourglass): Rename from show_hourglass.
6375 (w32_hide_hourglass): Rename from hide_hourglass.
6376 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
6377 (Vhourglass_delay): Declare extern.
6378 (hourglass_started): Remove.
6379
6380 * xdisp.c (Vhourglass_delay): Remove static.
6381 (hourglass_started, start_hourglass, cancel_hourglass):
6382 Don't include these versions on WINDOWSNT.
6383
63842008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6385
6386 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
6387 variables (formerly in xfns.c).
6388 (show_hourglass, hide_hourglass): New prototypes (same).
6389 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
6390 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
6391 in xfns.c).
6392 (syms_of_xdisp): Declare/initialize display-hourglass,
6393 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
6394 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
6395 formerly in xfns.c.
6396 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6397 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6398 (start_hourglass, cancel_hourglass): Remove.
6399 (show_hourglass, hide_hourglass): Remove prototypes and static
6400 modifiers.
6401 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
6402 hourglass_atimer, hourglass_shown_p declaration/initialization.
6403 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6404 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6405 (start_hourglass, cancel_hourglass): Remove.
6406 (show_hourglass, hide_hourglass): Remove prototypes and static
6407 modifiers.
6408 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
6409 hourglass_atimer, hourglass_shown_p declaration/initialization.
6410 * w32fns.c (display_hourglass_p, Vhourglass_delay)
6411 (DEFAULT_HOURGLASS_DELAY): Remove.
6412 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
6413 hourglass_shown_p declaration/initialization.
6414
64152008-07-14 Jason Rumney <jasonr@gnu.org>
6416
6417 * w32fns.c (w32_get_arg): Remove wrapper function.
6418 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
6419 directly.
6420 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
6421
64222008-07-14 Kenichi Handa <handa@m17n.org>
6423
6424 * xfont.c (xfont_open): Add workaround for X's bug.
6425
64262008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6427
6428 * fontset.c: Include <stdio.h> unconditionally.
6429
64302008-07-13 Michael Albinus <michael.albinus@gmx.de>
6431
6432 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
6433 for filtering.
6434
64352008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
6436
6437 * s/vms.h: Use __GNUC__ instead of _GNUC_.
6438
6439 * m/macppc.h:
6440 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
6441
6442 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
6443 (SPECIAL_EMACS_INT):
6444 * m/ia64.h (SPECIAL_EMACS_INT):
6445 * m/amdx86-64.h (SPECIAL_EMACS_INT):
6446 * s/gnu.h (NLIST_STRUCT):
6447 * s/aix4-2.h (X11R5_INHIBIT_I18N):
6448 * s/gnu-linux.h (LINUX):
6449 * s/msdos.h (HAVE_FACES):
6450 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
6451
6452 * systty.h:
6453 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
6454 anymore.
6455
64562008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
6457
6458 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
6459 always defined as int.
6460
6461 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
6462 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
6463 * s/gnu-linux.h (HAVE_WAIT_HEADER):
6464 * s/freebsd.h (HAVE_WAIT_HEADER):
6465 * s/bsd-common.h (HAVE_UNION_WAIT):
6466 * s/aix4-2.h (HAVE_WAIT_HEADER):
6467 * m/mips.h (HAVE_UNION_WAIT):
6468 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
6469 (COFF, static): Do not define, they are undefined later in the file.
6470
6471 * process.c (update_status): Don't use a union.
6472 (status_convert):
6473 (sigchld_handler): Use int instead of WAITTYPE.
6474
64752008-07-12 Chong Yidong <cyd@stupidchicken.com>
6476
6477 * indent.c (Fvertical_motion): Restore hscroll before moving to
6478 goal column.
6479
64802008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6481
6482 * lisp.h: Remove left over code.
6483
64842008-07-11 Andreas Schwab <schwab@suse.de>
6485
6486 * lisp.h: Fix logic in last change.
6487
6488 * menu.h: New file.
6489 * menu.c: Include it.
6490 * xmenu.c: Likewise.
6491 * Makefile.in: Update dependencies.
6492
64932008-07-11 Kenichi Handa <handa@m17n.org>
6494
6495 * fontset.c (fontset_from_font): Cancel the previous change.
6496
64972008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6498
6499 * lisp.h:
6500 * w32heap.c:
6501 * emacs.c:
6502 * alloc.c: Replace all references of NO_UNION_TYPE with
6503 USE_LISP_UNION_TYPE.
6504
6505 * m/xtensa.h (NO_UNION_TYPE):
6506 * m/vax.h (NO_UNION_TYPE):
6507 * m/template.h (NO_UNION_TYPE):
6508 * m/sparc.h (NO_UNION_TYPE):
6509 * m/mips.h (NO_UNION_TYPE):
6510 * m/macppc.h (NO_UNION_TYPE):
6511 * m/m68k.h (NO_UNION_TYPE):
6512 * m/iris4d.h (NO_UNION_TYPE):
6513 * m/intel386.h (NO_UNION_TYPE):
6514 * m/ibms390x.h (NO_UNION_TYPE):
6515 * m/ibms390.h (NO_UNION_TYPE):
6516 * m/ibmrs6000.h (NO_UNION_TYPE):
6517 * m/ia64.h (NO_UNION_TYPE):
6518 * m/hp800.h (NO_UNION_TYPE):
6519 * m/arm.h (NO_UNION_TYPE):
6520 * m/amdx86-64.h (NO_UNION_TYPE):
6521 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
6522 defining it the same.
6523
65242008-07-10 Chong Yidong <cyd@stupidchicken.com>
6525
6526 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
6527
65282008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6529
6530 * fileio.c:
6531 * sysdep.c
6532 * systty.h:
6533 * m/ibmrs6000.h:
6534 * m/iris4d.h:
6535 * s/aix4-2.h:
6536 * s/freebsd.h:
6537 * s/gnu-linux.h:
6538 * s/hpux10-20.h:
6539 * s/hpux11.h:
6540 * s/netbsd.h:
6541 * s/sol2-3.h:
6542 * s/sol2-4.h:
6543 * s/sol2.h:
6544 * s/usg5-4.h:
6545 * s/vms.h: Remove references to unused variables.
6546
65472008-07-10 Andreas Schwab <schwab@suse.de>
6548
6549 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
6550 pattern before matching the generic family.
6551
65522008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6553
6554 * unexec.c:
6555 * s/vms.h:
6556 * s/usg5-4-2.h:
6557 * s/sol2-5.h:
6558 * s/freebsd.h:
6559 * s/darwin.h: Remove dead code.
6560
6561 * m/template.h:
6562 * m/sparc.h:
6563 * m/mips.h:
6564 * m/m68k.h:
6565 * m/iris4d.h:
6566 * m/intel386.h:
6567 * m/ibms390x.h:
6568 * m/ibms390.h:
6569 * m/ia64.h:
6570 * m/hp800.h:
6571 * m/arm.h:
6572 * m/amdx86-64.h: Remove dead code and references to unused
6573 and compiler defined symbols.
6574
6575 * unexmips.c:
6576 * unexelf.c: Remove references to desupported systems.
6577
6578 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
6579
6580 * m/powermac.h: Remove boilerplate comments.
6581 (NO_REMAP): Remove unused definition.
6582
6583 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
6584 define them.
6585
65862008-07-10 Kenichi Handa <handa@m17n.org>
6587
6588 * xfont.c (xfont_open): Log the reason of failure.
6589
65902008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
6591
6592 * fontset.c (fontset_get_font_group):
6593 * font.c (font_check_otf): Specify argument types.
6594
65952008-07-09 Kenichi Handa <handa@m17n.org>
6596
6597 * coding.c (detect_coding_utf_8): Set detect_info->found only when
6598 non-ASCII char is found.
6599
6600 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
6601 (reorder_font_vector): Change the arg preferred_family to font.
6602 Prefer the spec matching with font.
6603 (fontset_get_font_group): New function.
6604 (fontset_find_font): Change the format of an element of a realized
6605 fontset. Use fontset_get_font_group.
6606 (fontset_font): Try the current fontset, the default fontset, the
6607 fallbacks of the current fontset, and the fallbacks of the default
6608 fontset in this order.
6609 (face_for_char): Delete the shortcut to use the current font.
6610 (fontset_from_font): Don't set fonts for Latin in the fontset.
6611
6612 * font.h (font_make_object, font_match_p): Adjust prototypes.
6613
6614 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
6615
6616 * font.c (font_make_object): New arg entity and pixelsize.
6617 (font_check_otf_features, font_check_otf): New functions.
6618 (font_match_p): Check :lang, :script, and :otf properties.
6619
6620 * xfont.c (xfont_open): Adjust it for the change of
6621 font_make_object.
6622 (xfont_text_extents): Fix initial setting of metrics.
6623
6624 * ftfont.c (struct ftfont_info): New member index, delete member
6625 fc_charset_idx. Make the member order compatible with struct
6626 xftfont_info.
6627 (fc_charset_table): Change charset names to registry names.
6628 (ftfont_pattern_entity): Delete the args registry and
6629 fc_charset_idx. Change the value of :font-entity property
6630 to (FONTNAME . INDEX). Always set :registry property to
6631 `iso10646-1'.
6632 (struct ftfont_cache_data): New struct.
6633 (ftfont_lookup_cache): New arg for_face.
6634 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
6635 (ftfont_driver): Set the member otf_capability.
6636 (ftfont_get_charset): Adjust it for the change of
6637 fc_charset_table.
6638 (OTF_TAG_SYM): New macro.
6639 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
6640 for the change of fc_charset_table.
6641 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
6642 ftfont_pattern_entity. Add FC_INDEX to objset.
6643 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
6644 and ftfont_pattern_entity.
6645 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
6646 font_make_object, struct ftfont_info.
6647 (ftfont_has_char): Use ftfont_get_fc_charset.
6648 (ftfont_otf_features, ftfont_otf_capability): New functions.
6649 (ftfont_shape): Use ftfont_get_otf.
6650 (ftfont_text_extents): Fix initial setting of metrics.
6651
6652 * xftfont.c (struct xftfont_info): New member ft_size. Make the
6653 member order compatible with struct ftfont_info.
6654 (xftfont_open): Add FC_CHARSET to the pattern. Set
6655 xftfont_info->ft_size. Don't unlock the face. Check BDF
6656 properties if appropriate.
6657 (xftfont_close): Unlock the face.
6658 (xftfont_anchor_point, xftfont_shape): Deleted.
6659 (syms_of_xftfont): Don't set members anchor_point and shape of
6660 xftfont_driver.
6661
6662 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
6663 font_make_object.
6664
6665 * w32font.c (w32font_open): Adjust it for the change of
6666 font_make_object.
6667 (w32font_open_internal): Don't set properties of font_object here.
6668
66692008-07-08 Chong Yidong <cyd@stupidchicken.com>
6670
6671 * macfns.c (x_create_tip_frame):
6672 * w32fns.c (x_create_tip_frame):
6673 * xfns.c (x_create_tip_frame): Pass parameter argument to
6674 face-set-after-frame-default.
6675
6676 * xfaces.c (Finternal_merge_in_global_face): Save merged
6677 attributes for the default face back into the face vector.
6678
66792008-07-08 Andreas Schwab <schwab@suse.de>
6680
6681 * fontset.h: Declare fontset_from_font. Don't declare
6682 new_fontset_from_font and fontset_from_font_name.
6683 * xterm.c: Include "fontset.h".
6684 * Makefile.in (xterm.o): Update dependencies.
6685
66862008-07-08 Glenn Morris <rgm@gnu.org>
6687
6688 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
6689 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
6690
66912008-07-07 Chong Yidong <cyd@stupidchicken.com>
6692
6693 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
6694 (x_set_frame_parameters): Don't bind it.
6695
66962008-07-07 Juanma Barranquero <lekktu@gmail.com>
6697
6698 * w32fns.c (map_w32_filename): Declare extern.
6699
67002008-07-07 Jason Rumney <jasonr@gnu.org>
6701
6702 * w32term.c (WS_EX_LAYERED): Define if not already.
6703
67042008-07-06 Chong Yidong <cyd@stupidchicken.com>
6705
6706 * xfaces.c (set_font_frame_param): Don't try to set the font
6707 parameter if it is still unspecified in the lface.
6708
67092008-07-05 Chong Yidong <cyd@stupidchicken.com>
6710
6711 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
6712 face if it didn't already exist.
6713
6714 * xdisp.c (try_window_id): Give up if word-wrapping is on.
6715
67162008-07-05 Andreas Schwab <schwab@suse.de>
6717
6718 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
6719
67202008-07-05 Chong Yidong <cyd@stupidchicken.com>
6721
6722 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
6723 word-wrapping.
6724 (IT_DISPLAYING_WHITESPACE): New macro.
6725 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
6726 when word-wrapping. Simplify word-wrapping logic. Use correct
6727 pixel positions when saving copies of the iterator.
6728 (display_line): Use proper wrap point if the last character on a
6729 line was preceded by whitespace.
6730
67312008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
6732
6733 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
6734
67352008-07-04 Kenichi Handa <handa@m17n.org>
6736
6737 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
6738
6739 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
6740
67412008-07-02 Jason Rumney <jasonr@gnu.org>
6742
6743 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 6744 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
6745
6746 * xdisp.c (next_element_from_display_vector): Move assignment out
6747 of if statement.
6748
67492008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
6750
6751 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
6752
6753 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
6754 (syms_of_fileio): Initialize and export them.
6755 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
6756
6757 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
6758 (Fsystem_move_file_to_trash): New function.
6759 (syms_of_w32fns): Export it to lisp.
6760
67612008-07-01 Jason Rumney <jasonr@gnu.org>
6762
6763 * w32font.c (w32font_text_extents): Don't count overhang as part
6764 of width.
6765
67662008-06-30 Miles Bader <miles@gnu.org>
6767
6768 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
6769 Add `avoid_cursor_p' field.
6770
6771 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
6772 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
6773 (append_glyph, append_composite_glyph, produce_image_glyph)
6774 (append_stretch_glyph): Initialize avoid_cursor_p.
6775 (get_it_property): Rename from `get_line_height_property'.
6776 (x_produce_glyphs): Use get_it_property.
6777 (handle_line_prefix, push_display_prop): New functions.
6778 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
6779 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
6780 New variables.
6781 (syms_of_xdisp): Initialize them.
6782
67832008-06-30 Kenichi Handa <handa@m17n.org>
6784
6785 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
6786 XftDefaultSubstitute (they are called in XftFontMatch).
6787 (xftfont_open): Fix args to ftfont_font_format.
6788
6789 * ftfont.c (fc_charset_table): New member lang.
6790 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 6791 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
6792 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
6793 (ftfont_open): Fix args to ftfont_font_format.
6794 (ftfont_font_format): New arg filename.
6795
67962008-06-30 Chong Yidong <cyd@stupidchicken.com>
6797
6798 * xfaces.c (Finternal_merge_in_global_face): If default face was
6799 modified, realize it again. Update the font face attribute.
6800
68012008-06-29 Jason Rumney <jasonr@gnu.org>
6802
6803 * w32term.c (x_set_frame_alpha): Fix logic.
6804
68052008-06-29 Kenichi Handa <handa@m17n.org>
6806
6807 * fontset.c (Finternal_char_font): Return font-object instead of
6808 font-name.
6809
6810 * composite.c (get_composition_id): Fix the width calculation for TAB.
6811
68122008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
6813
6814 * indent.c (Fvertical_motion): Properly handle float column arg.
6815
68162008-06-28 Jason Rumney <jasonr@gnu.org>
6817
6818 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
6819 (pfnSetLayeredWindowAttributes): New function pointer.
6820 (w32_initialize): Initialize it when supported.
6821 (x_set_frame_alpha): New function.
6822
6823 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
6824 (w32_frame_parm_handlers): Set alpha handler.
6825
6826 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
6827
68282008-06-27 Jason Rumney <jasonr@gnu.org>
6829
6830 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
6831 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
6832 (w32_to_x_charset, x_to_w32_charset)
6833 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6834 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6835 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6836 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6837 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6838 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6839 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
6840 (Qw32_charset_unicode): Remove.
6841 (syms_of_w32fns): Update for above changes.
6842
6843 * w32font.c (w32_to_x_charset, x_to_w32_charset)
6844 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6845 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6846 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6847 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6848 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6849 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6850 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
6851 (syms_of_w32font): Update for above changes.
6852
68532008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
6854
6855 * s/usg5-4.h: Fix previous change: keep the correct branch of a
6856 removed #if.
6857 (USG_SHARED_LIBRARIES): Remove duplicate definition.
6858
68592008-06-26 Juanma Barranquero <lekktu@gmail.com>
6860 Eli Zaretskii <eliz@gnu.org>
6861
6862 * makefile.w32-in (LOCAL_FLAGS):
6863 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
6864
6865 * sysdep.c (_spawnlp, _getpid):
6866 Declare with explicit _cdecl instead of _CRTAPI1.
6867
6868 * editfns.c (Fget_internal_run_time):
6869 Check for WINDOWSNT with #ifdef, not #if.
6870
68712008-06-26 Jason Rumney <jasonr@gnu.org>
6872
6873 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
6874
6875 * w32term.c (x_draw_glyph_string_foreground)
6876 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
6877 Use FONT_HANDLE macro.
6878 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
6879
6880 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6881 (uniscribe_encode_char): Use FONT_HANDLE macro.
6882
6883 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
6884 (w32font_text_extents): Use precast w32_font.
6885 (w32font_close): Free cached metrics.
6886 (w32font_open_internal): Allocate space for name on stack.
6887
68882008-06-26 Chong Yidong <cyd@stupidchicken.com>
6889
6890 * xdisp.c (extend_face_to_end_of_line): Fix last change.
6891
68922008-06-26 Jason Rumney <jasonr@gnu.org>
6893
6894 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
6895 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
6896
68972008-06-26 Juanma Barranquero <lekktu@gmail.com>
6898
6899 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
6900
69012008-06-26 Jason Rumney <jasonr@gnu.org>
6902
6903 * w32bdf.c, w32bdf.h: Remove obsolete files.
6904
6905 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
6906
6907 * w32gui.h: Don't include w32bdf.h.
6908 (XCharStruct, enum w32_char_font_type, W32FontStruct):
6909 Remove obsolete font support.
6910
6911 * w32font.h (struct w32font_info): Remove compat_w32_font.
6912 Add hfont member.
6913 (FONT_COMPAT): Remove obsolete macro.
6914
6915 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
6916 (w32font_encode_char, w32font_text_extents): Use new hfont member.
6917 (w32font_open_internal): Remove compat code. Set new hfont member.
6918 (Fx_select_font): Use new hfont member.
6919
6920 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6921 (uniscribe_encode_char): Use new hfont member.
6922
6923 * w32term.c (x_draw_glyph_string_foreground)
6924 (x_draw_composite_glyph_string_foreground): Use new hfont member.
6925 (x_draw_glyph_string): Use metrics in w32font_info.
6926
69272008-06-26 Kenichi Handa <handa@m17n.org>
6928
6929 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
6930
69312008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
6932
6933 * unexnext.c:
6934 * m/ews4800.h:
6935 * m/hp9000s300.h:
6936 * m/ibm370aix.h:
6937 * m/mips-siemens.h:
6938 * m/ncr386.h:
6939 * m/next.h:
6940 * m/pmax.h:
6941 * m/powerpcle.h:
6942 * m/tandem-s2.h:
6943 * s/386bsd.h:
6944 * s/bsd386.h:
6945 * s/bsd4-1.h:
6946 * s/bsd4-2.h:
6947 * s/bsdos2-1.h:
6948 * s/bsdos2.h:
6949 * s/bsdos3.h:
6950 * s/bsdos4.h:
6951 * s/nextstep.h:
6952 * s/ultrix4-3.h:
6953 * s/usg5-0.h:
6954 * s/usg5-2-2.h:
6955 * s/usg5-2.h:
6956 * s/usg5-4-3.h:
6957 * s/ux4800.h:
6958 * s/uxpds.h:
6959 * s/uxpv.h: Remove support for obsolete systems.
6960 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 6961 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
6962 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
6963 Remove, insert contents in s/aix4-2.h.
6964 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
6965 * s/bsd4-3.h: Rename to ...
6966 * s/bsd-common.h: ... this.
6967 * data.c:
6968 * doc.c:
6969 * ecrt0.c:
6970 * emacs.c:
6971 * fileio.c:
6972 * floatfns.c:
6973 * keyboard.c:
6974 * mem-limits.h:
6975 * print.c:
6976 * process.c:
6977 * sysdep.c:
6978 * syssignal.h:
6979 * systty.h:
6980 * syswait.h:
6981 * term.c:
6982 * unexec.c:
6983 * unexelf.c:
6984 * unexhp9k800.c:
6985 * m/hp800.h:
6986 * m/ibmrs6000.h:
6987 * m/mips.h:
6988 * m/vax.h:
6989 * s/darwin.h:
6990 * s/freebsd.h:
6991 * s/gnu.h:
6992 * s/ms-w32.h:
6993 * s/msdos.h:
6994 * s/netbsd.h:
6995 * s/template.h: Remove references to obsolete variables.
6996
6997 * Makefile.in: Add dependencies for all unexec files.
6998 (admindir): Remove unused variable.
6999 (UNEXEC_SRC): Remove references.
7000
70012008-06-25 Chong Yidong <cyd@stupidchicken.com>
7002
7003 * xfns.c (x_default_font_parameter): If Xft is available, first
7004 try Monospace-12 for the default font.
7005
70062008-06-25 Jason Rumney <jasonr@gnu.org>
7007
7008 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
7009
70102008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
7011
7012 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
7013
7014 * buffer.c (syms_of_buffer): Remove default-word-wrap.
7015
70162008-06-25 Juanma Barranquero <lekktu@gmail.com>
7017
7018 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
7019 <scroll-conservatively>: Fix typo in docstring.
7020
7021 * xselect.c (Fx_send_client_event): Doc fix.
7022
70232008-06-25 Kenichi Handa <handa@m17n.org>
7024
7025 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
7026
7027 * font.c (font_parse_fcname): Remove unused variables.
7028 (font_sort_entites): Delete the arg SPEC. Caller changed.
7029 Fix for the case of ! best_only.
7030 (font_delete_unmatched): Check DPI and AVGWIDTH too.
7031
7032 * lisp.h (Fstring_to_unibyte): EXFUN it.
7033
7034 * character.h (str_to_unibyte): Extern it.
7035
7036 * character.c (str_to_unibyte): New function.
7037
7038 * fns.c (Fstring_to_unibyte): New function.
7039 (syms_of_fns): Defsubr it.
7040
70412008-06-24 Kenichi Handa <handa@m17n.org>
7042
7043 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
7044 DPI too.
7045 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
7046
70472008-06-24 Andreas Schwab <schwab@suse.de>
7048
7049 * Makefile.in (${lispsource}loaddefs.el): Rename from
7050 ../lisp/loaddefs.el.
7051 (bootstrap-clean): Do what distclean does but don't remove
7052 Makefile.
7053 (distclean): Depend on bootstrap-clean and remove Makefile.
7054
70552008-06-24 Chong Yidong <cyd@stupidchicken.com>
7056
7057 * buffer.h (struct buffer): New member word_wrap.
7058
7059 * buffer.c (syms_of_buffer): New variables default-word-wrap and
7060 word-wrap.
7061 (init_buffer_once): Initialize them.
7062
7063 * dispextern.h (struct it): Replace bool truncate_lines_p with a
7064 line_wrap enum possessing three possible values.
7065
7066 * termopts.h: Replace truncate_partial_width_windows with
7067 Vtruncate_partial_width_windows.
7068
7069 * dispnew.c (direct_output_for_insert): Avoid direct output when
7070 inserting a space with word wrap on.
7071
7072 * indent.c (compute_motion): Obey integer values of
7073 truncate-partial-width-windows.
7074
7075 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
7076 replacing truncate_partial_width_windows.
7077 (init_iterator): If Vtruncate_partial_width_windows is an integer,
7078 truncate only if the window width is below that integer.
7079 (start_display, resize_mini_window, produce_stretch_glyph)
7080 (display_string, move_it_in_display_line_to): Use line_wrap.
7081 (back_to_previous_visible_line_start, reseat_1): Reset
7082 string_from_display_prop_p.
7083 (display_line): Extend default face to end of line when wrapping.
7084
70852008-06-24 Kim F. Storm <storm@cua.dk>
7086
7087 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
7088 to wrap continued lines at word boundaries.
7089
70902008-06-24 Jason Rumney <jasonr@gnu.org>
7091
7092 * font.c (Ffont_face_attributes): Multiply pixel size before point
7093 conversion to avoid multiplying rounding error.
7094
70952008-06-23 Jason Rumney <jasonr@gnu.org>
7096
7097 * w32term.c (x_draw_glyph_string_background)
7098 (x_draw_glyph_string): Remove old bdf font code.
7099
7100 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
7101
71022008-06-22 Kenichi Handa <handa@m17n.org>
7103
7104 * font.c (font_find_for_lface): Try the adstyle specified in
7105 the property of LFACE_FONT of LFACE (if any).
7106
71072008-06-21 Seiji Zenitani <zenitani@mac.com>
7108 Ryo Yoshitake <ryo@shiftmode.net>
7109
7110 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
7111
71122008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
7113
7114 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
7115 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
7116 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
7117 (witness-emacs): Remove.
7118 (lisp, shortlisp): Move loaddefs.el earlier.
7119 (mostlyclean): Forget about witness-emacs.
7120
71212008-06-22 Glenn Morris <rgm@gnu.org>
7122
7123 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
7124 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
7125
71262008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7127
7128 * Makefile.in (PRECOMP): Remove.
7129 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
7130 (witness-emacs): Run `compile-first'.
7131 (.el.elc): Use the new compile-onefile target.
7132
71332008-06-21 Kenichi Handa <handa@m17n.org>
7134
7135 * xftfont.c (xftfont_open): Handle QCembolden only when
7136 FC_EMBOLDEN is defined.
7137
71382008-06-21 Andreas Schwab <schwab@suse.de>
7139
7140 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
7141 (.el.elc): Likewise.
7142
71432008-06-21 Miles Bader <miles@gnu.org>
7144
7145 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
7146 build dir, not the lisp source dir.
7147
71482008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7149
7150 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
7151 (bootstrapclean): Remove.
7152 (.el.elc): New rule.
7153 (PRECOMP): New var.
7154 (../lisp/subdirs.el): Remove.
7155 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
7156 (witness-emacs): New target.
7157 (mostlyclean): Remove witness-emacs as well.
7158 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
7159 Add witness-emacs dependency.
7160
71612008-06-20 Chong Yidong <cyd@stupidchicken.com>
7162
7163 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
7164 defined by the font.
7165
71662008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7167
7168 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
7169 (bootstrap-clean): New target that keeps TAGS around.
7170 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
7171 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
7172
71732008-06-20 Jason Rumney <jasonr@gnu.org>
7174
7175 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
7176 Remove obsolete font code.
7177
7178 * w32font.c (font_matches_spec): Use csb bitfield from font signature
7179 to determine language support.
7180
71812008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7182
7183 * sysdep.c (cfsetspeed): New fun extracted from the code.
7184 (cfmakeraw): Move before first use.
7185
71862008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
7187
7188 * sysdep.c (cfmakeraw): Provide fallback implementation.
7189 (serial_configure): Provide fallback implementation of cfsetspeed.
7190
71912008-06-20 Kenichi Handa <handa@m17n.org>
7192
7193 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
7194 the pattern.
7195
7196 * fontset.c (fontset_from_font): Copy font_spec before changing
7197 the elements.
7198
7199 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
7200
72012008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7202
7203 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
7204 for explicit `font' parameters.
7205
7206 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
7207
72082008-06-19 Kenichi Handa <handa@m17n.org>
7209
7210 * frame.c: Include <ctype.h>.
7211 (x_set_font_backend): Allow spacing characters in the X resource
7212 for FontBackend.
7213
72142008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
7215
7216 * w32fns.c, xfns.c (Qfont_param): New var.
7217 (syms_of_w32fns): Initialize it.
7218 (x_default_font_parameter): Record explicit `font' into
7219 `font-parameter'.
7220
72212008-06-18 Kenichi Handa <handa@m17n.org>
7222
7223 * font.c (font_parse_xlfd): Fix previous change.
7224 (font_parse_fcname): Don't use :fc-unknown-spec.
7225 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
7226 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
7227 (font_add_log): Prepend the driver name to the resulting fonts.
7228
7229 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
7230 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
7231 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
7232
7233 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
7234 (QCembolden): New variables.
7235 (syms_of_xftfont): DEFSYM them.
7236 (xftfont_open): Call XftFontMatch. Don't trust the result of
7237 XftTextExtents8 if the pixel_size is less than 5.
7238
72392008-06-18 Andreas Schwab <schwab@suse.de>
7240
7241 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
7242 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
7243
72442008-06-18 Jason Rumney <jasonr@gnu.org>
7245
7246 * w32font.c (w32font_list, w32font_match): Add logging.
7247
7248 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
7249
72502008-06-17 Chong Yidong <cyd@stupidchicken.com>
7251
7252 * font.c (font_parse_fcname): Store divider characters for
7253 unknown-spec list. For known key symbols, intern using correct
7254 symbol name.
7255
72562008-06-17 Kenichi Handa <handa@m17n.org>
7257
7258 * xfaces.c (realize_default_face): If the frame is not on window
7259 system, set the fontset of face to nil.
7260
72612008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7262
7263 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
7264
72652008-06-16 Juanma Barranquero <lekktu@gmail.com>
7266
7267 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
7268 (build_font_name_from_vector): Delete externs.
7269
7270 * xfaces.c (struct font_name): Don't declare.
7271
72722008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
7273
7274 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
7275
72762008-06-16 Chong Yidong <cyd@stupidchicken.com>
7277
7278 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
7279
72802008-06-16 Juanma Barranquero <lekktu@gmail.com>
7281
7282 * font.c (Ffont_spec): Fix usage in docstring.
7283 (Ffont_face_attributes): Doc fix.
7284
72852008-06-16 Andreas Schwab <schwab@suse.de>
7286
7287 * font.c (Ffont_face_attributes): Fix definition.
7288
72892008-06-16 Jason Rumney <jasonr@gnu.org>
7290
7291 * font.h (font_style_symbolic_from_value): Remove.
7292
7293 * font.c (font_style_symbolic_from_value): Remove.
7294 (font_style_symbolic): Revert to pre 2008-06-13 version.
7295
7296 * w32font.c (w32_to_fc_weight): New function.
7297 (w32font_full_name, logfont_to_fcname): Use it.
7298
72992008-06-16 Kenichi Handa <handa@m17n.org>
7300
7301 * font.c (font_check_object): Delete it.
7302 (font_clear_cache): Check if a font-object is alive.
7303 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
7304 font-object to nil.
7305 (font_close_object): Don't check FONT_CLOSE_OBJECT.
7306 (font_at): Don't call font_check_object.
7307 (Ffont_get): Return a symbol for :weight, :slant, and :width.
7308
73092008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
7310
7311 * puresize.h (BASE_PURESIZE): Increase to 1230000.
7312
73132008-06-16 Chong Yidong <cyd@stupidchicken.com>
7314
7315 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
7316
73172008-06-15 Chong Yidong <cyd@stupidchicken.com>
7318
7319 * font.c (font_parse_fcname): Only one decimal point.
7320 (font_unparse_fcname): Handle data in family and foundry indices
7321 as symbols, not strings.
7322 (font_unparse_gtkname, Ffont_face_attributes): New functions.
7323
7324 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
7325
7326 * font.h (font_unparse_gtkname): Add prototype.
7327
73282008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7329
7330 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
7331
73322008-06-15 Andreas Schwab <schwab@suse.de>
7333
7334 * font.c (font_update_drivers): Fix crash when no drivers match.
7335
73362008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
7337
7338 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
7339 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
7340
73412008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
7342
7343 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
7344
73452008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
7346
7347 * process.c (Fserial_process_configure, Fprocess_send_eof):
7348 Use EQ to compare Lisp_Objects.
7349
73502008-06-13 Jason Rumney <jasonr@gnu.org>
7351
7352 * w32fns.c (Fw32_select_font): Remove old font API function.
7353
7354 * w32font.c (logfont_to_fcname): New function.
7355 (Fx_select_font): New font dialog function compatible with
7356 GTK/fontconfig version.
7357
7358 * font.c (font_style_symbolic_from_value): New function.
7359 (font_style_symbolic): Use it.
7360
7361 * font.h (font_style_symbolic_from_value): Declare new function.
7362
73632008-06-13 Juanma Barranquero <lekktu@gmail.com>
7364
7365 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
7366 <font-width-table>: Fix typos in docstrings.
7367
73682008-06-13 Daniel Engeler <engeler@gmail.com>
7369
7370 These changes add serial port access.
7371 * process.c: Add HAVE_SERIAL.
7372 (Fdelete_process, Fprocess_status, Fset_process_buffer)
7373 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
7374 (list_processes_1, select_wrapper, Fstop_process)
7375 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
7376 (status_notify): Modify to handle serial processes.
7377 [HAVE_SERIAL] (Fserial_process_configure)
7378 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
7379 New functions.
7380 * process.h (struct Lisp_Process): Add `type'.
7381 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
7382 New functions.
7383 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
7384 serial ports.
b71ac3dd 7385 (serial_open, serial_configure): New functions.
aac0c6e3
MR
7386 * w32.h: Add FILE_SERIAL.
7387 (struct _child_process): Add ovl_read, ovl_write.
7388
73892008-06-13 Kenichi Handa <handa@m17n.org>
7390
7391 * dispextern.h (enum lface_attribute_index): New member
7392 LFACE_FOUNDRY_INDEX.
7393
7394 * font.c (font_score): Delete arg alternate_families. Check only
7395 weight, slant, width, and size. Ignore the difference of alias
7396 style symbols.
7397 (font_sort_entites): Adjust for the above change. Reflect the
7398 order of font-driver to scores.
7399 (font_list_entities): Don't check alternate_familes here.
7400 (font_clear_prop): Handle foundry.
7401 (font_update_lface): Don't parse "foundry-family" form here.
7402 Handle FONT_FOUNDRY_INDEX.
7403 (font_find_for_lface): Likewise. Handle alternate families here.
7404 If registry is nil, try iso8859-1 and ascii-0.
7405 (font_open_for_lface): Pay attention to size in ENTITY.
7406 (font_open_by_name): Simplify by calling font_load_for_lface.
7407 (free_font_driver_list): Delete it.
7408 (font_update_drivers): Preserve the order of backends.
7409 (syms_of_font): Setting of sort_shift_bits adjusted for the change
7410 of font_score and font_sort_entites.
7411 (font_update_sort_order): Likewise.
7412
7413 * xfaces.c (LFACE_FOUNDRY): New macro.
7414 (check_lface_attrs): Check foundry.
7415 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
7416 (merge_face_vectors): Check foundry.
7417 (merge_face_ref): Likewise.
7418 (Finternal_set_lisp_face_attribute): Likewise.
7419 (x_update_menu_appearance): Likewise.
7420 (Finternal_get_lisp_face_attribute): Likewise.
7421 (lface_hash): Likewise.
7422 (lface_same_font_attributes_p): Likewise.
7423 (x_supports_face_attributes_p): Likewise.
7424 (tty_supports_face_attributes_p): Likewise.
7425 (Finternal_set_alternative_font_family_alist): Intern strings.
7426 (Finternal_set_alternative_font_registry_alist): Downcase strings.
7427 (realize_default_face): Set LFACE_FOUNDRY (lface).
7428
7429 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
7430 font-driver at first.
7431
7432 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
7433
74342008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7435
7436 * lread.c (Fload): Use xfree, not free on saved_doc_string.
7437
74382008-06-12 Jim Meyering <meyering@redhat.com>
7439
7440 Make unexec_free handle NULL the same way free does.
7441 * unexmacosx.c (unexec_free): Ignore a NULL argument.
7442
74432008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
7444
7445 * character.h (CHAR_TO_BYTE_SAFE): New macro.
7446 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
7447 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
7448 (WEAK_ALIAS): Simplify.
7449 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
7450 when searching a unibyte buffer.
7451
74522008-06-12 Chong Yidong <cyd@stupidchicken.com>
7453
7454 * xfns.c (Fx_select_font): Rename from x-font-dialog.
7455
74562008-06-12 Juanma Barranquero <lekktu@gmail.com>
7457
7458 * w32font.c: Include ctype.h.
7459
74602008-06-11 Jason Rumney <jasonr@gnu.org>
7461
7462 * w32font.c (w32font_encode_char): Detect missing glyphs that are
7463 misreported as space.
7464 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
7465 as aliases for registry iso10646-1.
7466
74672008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
7468
7469 * buffer.c (clone_per_buffer_values): Skip `name'.
7470
74712008-06-11 Chong Yidong <cyd@stupidchicken.com>
7472
7473 * font.c (font_parse_fcname): Fix last change; accept decimal
7474 points in font size.
7475
74762008-06-10 Jason Rumney <jasonr@gnu.org>
7477
7478 * w32uniscribe.c (add_opentype_font_name_to_list):
7479 Skip non unicode fonts.
7480
74812008-06-10 Chong Yidong <cyd@stupidchicken.com>
7482
7483 * xfns.c (Fx_font_dialog): New function.
7484
7485 * gtkutil.c (xg_dialog_response_cb): Rename from
7486 xg_file_response_callback.
7487 (pop_down_dialog): Rename from pop_down_file_dialog.
7488 (xg_get_file_name): Callers changed.
7489 (xg_get_font_name): New function.
7490
7491 * gtkutil.h (xg_get_font_name): Insert prototype.
7492
74932008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7494
7495 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
7496 x_underline_minimum_display_offset.
7497 (syms_of_xdisp): Declare it here rather than in xterm.c.
7498 * dispextern.h (underline_minimum_offset): Declare it.
7499 * w32term.c (x_draw_glyph_string): Use it.
7500 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
7501 (syms_of_xterm): Don't declare it any more.
7502 (x_draw_glyph_string): Adjust to the new name.
7503
75042008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
7505
7506 * xterm.c (x_underline_minimum_display_offset): New var.
7507 (x_draw_glyph_string): Use it.
7508 (syms_of_xterm): Declare it.
7509
75102008-06-10 Chong Yidong <cyd@stupidchicken.com>
7511
7512 * font.c (font_parse_fcname): Accept GTK-style font names too.
7513
75142008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7515
7516 * dired.c (file_name_completion): Don't return t if the match is exact
7517 but with different capitalization.
7518 * minibuf.c (Ftry_completion): Simplify.
7519
7520 * window.c (Vwindow_point_insertion_type): New var.
7521 (set_window_buffer): Use it.
7522 (syms_of_window): Init and export it to Lisp.
7523
75242008-06-10 Kenichi Handa <handa@m17n.org>
7525
7526 * font.h (font_intern_prop): Prototype adjusted.
7527
7528 * font.c (font_intern_prop): New arg force_symbol.
7529 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
7530 Adjust for the change of font_intern_prop.
7531
7532 * ftfont.c (ftfont_pattern_entity):
7533 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
7534 (w32_registry):
7535 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
7536 the change of font_intern_prop.
7537
75382008-06-09 Juanma Barranquero <lekktu@gmail.com>
7539
7540 * w32menu.c (digest_single_submenu): Declare extern.
7541
75422008-06-09 Jason Rumney <jasonr@gnu.org>
7543
7544 * w32term.c (x_make_frame_visible): Use alternate restore flags.
7545
7546 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
7547 (parse_single_submenu): Remove.
7548 (digest_single_submenu): Remove.
7549 (syms_of_w32menu): Don't initialise variables that have moved
7550 to menu.c.
7551 (set_frame_menubar): Sync with version in xmenu.c.
7552 (w32_menu_show): Sync with xmenu_show in xmenu.c.
7553
7554 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
7555 Make static again.
7556
75572008-06-09 Jason Rumney <jasonr@gnu.org>
7558
7559 Changes to w32 files related to the move of common menu code
7560 to menu.c on 2008-06-08 by Chong Yidong.
7561
7562 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
7563 defs to w32gui.h.
7564 (single_keymap_panes, push_menu_item, push_menu_pane):
7565 Make globally visible.
7566
7567 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
7568 (local_free, malloc_widget_value, free_widget_value)
7569 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
7570 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
7571 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
7572 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
7573 (menu_items, menu_items_allocated, menu_items_used)
7574 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
7575 (init_menu_items, finish_menu_items, discard_menu_items)
7576 (grow_menu_items, push_submenu_start, push_submenu_end)
7577 (push_left_right_boundary, push_menu_pane, push_menu_item)
7578 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
7579 (free_menubar_widget_tree_value, parse_single_submenu)
7580 (update_submenu_strings): Remove functions.
7581 (xmalloc_widget_value): Remove and declare extern.
7582
7583 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
7584 (OBJ1): Build it.
7585
7586 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
7587 (local_heap, local_alloc, local_free, malloc_widget_value)
7588 (free_widget_value): Define here.
7589
75902008-06-09 Kenichi Handa <handa@m17n.org>
7591
7592 * font.h (Qascii_0): Extern it.
7593
7594 * font.c (Qascii_0): New variable.
7595 (syms_of_font): DEFSYM it.
7596 (font_open_by_name): If the registry "iso8859-1" fails, try also
7597 "ascii-0".
7598
7599 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
7600
76012008-06-08 Kenichi Handa <handa@m17n.org>
7602
7603 * .gdbinit (xfont): New command.
7604
76052008-06-08 Andreas Schwab <schwab@suse.de>
7606
7607 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
7608 * Makefile.in (menu.o): Update dependencies.
7609
7610 * Makefile.in (obj): Always add menu.o.
7611 * emacs.c (main): Always call syms_of_menu.
7612 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
7613
76142008-06-08 Chong Yidong <cyd@stupidchicken.com>
7615
7616 * Makefile.in: Compile menu.c.
7617
7618 * lisp.h: Declare syms_of_menu.
7619
7620 * emacs.c (main): Call syms_of_menu.
7621
7622 * keyboard.h: Relocate platform-independent menu definitions from
7623 xmenu.c.
7624
7625 * menu.c: New file. Relocate platform-independent menu
7626 definitions from xmenu.c. Suggested by Adrian Robert.
7627
7628 * xmenu.c: Remove platform-independent menu definitions.
7629 (menu_items menu_items_inuse, menu_items_allocated)
7630 (menu_items_used, menu_items_n_panes)
7631 (menu_items_submenu_depth): Move to keyboard.h.
7632 (init_menu_items, finish_menu_items, unuse_menu_items)
7633 (discard_menu_items, restore_menu_items, save_menu_items)
7634 (grow_menu_items, push_submenu_start, push_submenu_end)
7635 (push_left_right_boundary, push_menu_pane, push_menu_item)
7636 (keymap_panes, single_keymap_panes, single_menu_item)
7637 (list_of_panes, list_of_items, find_and_call_menu_selection)
7638 (xmalloc_widget_value, free_menubar_widget_value_tree)
7639 (parse_single_submenu, digest_single_submenu)
7640 (update_submenu_strings): Move to menu.c.
7641
76422008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
7643
7644 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
7645
76462008-06-06 Miles Bader <miles@gnu.org>
7647
7648 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
7649 face, not frame default.
7650
76512008-06-05 Martin Rudalics <rudalics@gmx.at>
7652
7653 * window.c (pop_up_windows, pop_up_frames)
7654 (display_buffer_reuse_frames, Vpop_up_frame_function)
7655 (Vdisplay_buffer_function, Veven_window_heights)
7656 (Vspecial_display_buffer_names, Vspecial_display_regexps)
7657 (Vspecial_display_function, Vsame_window_buffer_names)
7658 (Vsame_window_regexps, split_height_threshold)
7659 (Vsplit_window_preferred_function): Move those vars to window.el.
7660 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
7661 (Fdisplay_buffer): Move those functions to window.el.
7662 (syms_of_window): Remove corresponding declarations.
7663 (display_buffer): New function.
7664 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
7665 * dispnew.c (Flast_nonminibuf_frame): New function.
7666 * buffer.c (Fpop_to_buffer): Move to window.el.
7667
76682008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7669
7670 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
7671
76722008-06-05 Kenichi Handa <handa@m17n.org>
7673
7674 * coding.c (detect_coding): Fix previous change.
7675 (detect_coding_system): Likewise.
7676
76772008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7678
7679 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
7680
7681 * keymap.c (Vminibuffer_local_filename_must_match_map):
7682 Rename from Vminibuffer_local_must_match_filename_map.
7683 (syms_of_keymap):
7684 * minibuf.c (Fcompleting_read): Adjust accordingly.
7685 * commands.h: Rename declaration as well.
7686
76872008-06-05 Kenichi Handa <handa@m17n.org>
7688
7689 * font.c (Ffont_spec): Don't use font_parse_family_registry for
7690 family name.
7691 (Ffont_put): Likewise.
7692
7693 * fontset.c (fontset_find_font): Call font_open_for_lface with the
7694 current font-spec.
7695
7696 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
7697 is unspecified.
7698
7699 * xfaces.c (realize_x_face): If the font-related face attributes
7700 are the same as those of default face, realize a new fontset from
7701 default->fontset.
7702 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
7703
77042008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7705
7706 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
7707 (move_it_in_display_line): New wrapper.
7708
7709 * window.c (window_scroll_pixel_based_preserve_x)
7710 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
7711 (window_scroll_pixel_based, window_scroll_line_based):
7712 Use them to preserve column positions.
7713 (syms_of_window): Initialize them.
7714
7715 * indent.c (Fvertical_motion): Extend first arg to allow passing an
7716 (HPOS . VPOS) pair.
7717
7718 * dispextern.h (move_it_in_display_line): Declare.
7719
77202008-06-05 Juanma Barranquero <lekktu@gmail.com>
7721
7722 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
7723 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
7724 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
7725
77262008-06-04 Juanma Barranquero <lekktu@gmail.com>
7727
7728 * window.c (Fset_window_parameter): Doc fix.
7729 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
7730
77312008-06-04 Joakim Verona <joakim@verona.se>
7732
7733 * window.h (struct window): Add new member window_parameters.
7734
7735 * window.c (Fwindow_parameters, Fwindow_parameter)
7736 (Fset_window_parameter): New defuns.
7737 (syms_of_window): Defsubr the new defuns.
7738 (make_window): Initialize window_parameters to nil.
7739
77402008-06-04 John Paul Wallington <jpw@pobox.com>
7741
7742 * eval.c (Fdefmacro): Doc fix.
7743
77442008-06-04 Kenichi Handa <handa@m17n.org>
7745
7746 * coding.c (detect_coding): Fix handling of coding->head_ascii.
7747 Be sure to call setup_coding_system when we find a proper coding system.
7748 (detect_coding_system): Fix handling of coding->head_ascii.
7749
77502008-06-03 Andreas Schwab <schwab@suse.de>
7751
7752 * font.c (font_prop_validate_spacing): Fix last change.
7753
77542008-06-03 Kenichi Handa <handa@m17n.org>
7755
7756 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
7757 (font_parse_fcname): Fix handling of unknown key.
7758
7759 * xfont.c (xfont_list): Try an alias.
7760
7761 * charset.c (char_charset): Return NULL if the arg charset_list is
7762 specified and C doesn't belong to any of them.
7763
77642008-06-02 Chip Coldwell <coldwell@redhat.com>
7765
7766 * font.c (font_pixel_size): Don't take cdr of an integer.
7767
77682008-06-02 Jim Meyering <meyering@redhat.com>
7769
7770 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
7771 * alloc.c (xfree): Return right away for a NULL arg.
7772 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
7773 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
7774 * mac.c (create_apple_event_from_event_ref): Likewise.
7775 (create_apple_event_from_drag_ref, cfstring_create_normalized):
7776 Likewise.
7777 * doprnt.c (doprnt1): Likewise.
7778 * frame.c (frame): Likewise.
7779 * keyboard.c (wipe_kboard): Likewise.
7780 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
7781 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
7782 * term.c (tty_default_color_capabilities, maybe_fatal)
7783 (delete_tty): Likewise.
7784 * w16select.c (string): Likewise.
7785 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
7786 * w32bdf.c (w32_free_bdf_font): Likewise.
7787 * w32fns.c (w32_unload_font): Likewise.
7788 * w32font.c (w32font_close): Likewise.
7789 * window.c (size_window): Likewise.
7790 * xselect.c (receive_incremental_selection): Likewise.
7791 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
7792 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
7793 * w32.c (stat): Likewise.
7794
7795 Remove useless if-before-free tests.
7796 * editfns.c (Fset_time_zone_rule): Likewise.
7797 * lread.c (nosuffix): Likewise.
7798 * ralloc.c (get_bloc): Likewise.
7799 * regex.c (reg_free): Likewise.
7800 * xftfont.c (xftfont_open, xftfont_close): Likewise.
7801 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
7802 * xsmfns.c (smc_save_yourself_CB): Likewise.
7803
78042008-06-02 Kenichi Handa <handa@m17n.org>
7805
7806 * font.c (font_find_for_lface): Handle float font size.
7807 (font_open_for_lface): Likewise.
7808
7809 * xfaces.c (x_supports_face_attributes_p): Check face->font before
7810 comparing the properties.
7811
78122008-06-01 Jason Rumney <jasonr@gnu.org>
7813
7814 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
7815 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
7816 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
7817 Don't add empty script list.
7818 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
7819
78202008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
7821
7822 * Makefile.in (dot, dotdot): Remove, update users.
7823 ".." has been used elsewhere in the file for a long time.
7824 (LIBXT_STATIC): Remove conditional based on unused variable.
7825
78262008-06-01 Miles Bader <miles@gnu.org>
7827
7828 * xfaces.c (Vface_remapping_alist): New variable.
7829 (syms_of_xfaces): Initialize it.
7830 (enum named_merge_point_kind): New type.
7831 (struct named_merge_point): Add `named_merge_point_kind' field.
7832 (push_named_merge_point): Make cycle detection respect different
7833 named-merge-point kinds.
7834 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
7835 Remove face-name alias resolution.
7836 (lface_from_face_name): New definition using
7837 `lface_from_face_name_no_resolve'.
7838 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
7839 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
7840 (get_lface_attributes): New definition that layers face-remapping on
7841 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
7842 (lookup_basic_face): New function.
7843 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
7844 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
7845 `get_lface_attributes'.
7846 (face_at_buffer_position): Use `lookup_basic_face' to lookup
7847 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
7848 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
7849
7850 * xdisp.c (init_iterator): Pass base_face_id through
7851 `lookup_basic_face' when we actually use it as a face-id.
7852 (handle_single_display_prop): Use `lookup_basic_face' to lookup
7853 DEFAULT_FACE_ID.
7854
7855 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
7856 lookup the initial face-id.
7857
7858 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
7859
78602008-06-01 Juanma Barranquero <lekktu@gmail.com>
7861
7862 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
7863 (Fremove_text_properties): Fix typos in docstrings.
7864
78652008-05-31 Kenichi Handa <handa@m17n.org>
7866
7867 * font.c (font_list_entities): Fix the car part of data to be
7868 stored in the cache.
7869
7870 * ftfont.c (ftfont_font_format): Don't use strcasestr.
7871
78722008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7873
7874 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
7875 Add a `test' argument so another predicate than `equal' can be used.
7876 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
7877 (map_char_table): Remove unused vars `c' and `i'.
7878 * lisp.h (Foptimize_char_table): Adjust declaration.
7879 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
7880
78812008-05-30 Kenichi Handa <handa@m17n.org>
7882
7883 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
7884 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
7885 defined.
7886
78872008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7888
7889 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7890 (Fmake_variable_frame_local): Disallow mixing buffer-local and
7891 frame-local settings for the same variable.
7892
78932008-05-30 Kenichi Handa <handa@m17n.org>
7894
7895 * fontset.c (Ffont_info): Move to font.c.
7896 (syms_of_fontset): Delete defsubr of Sfont_info.
7897
7898 * font.c (font_style_to_value, font_score): Delete casting of the
7899 args to xstcasecmp.
7900 (register_font_driver): Increment num_font_drivers only when
7901 registering the driver globally.
7902 (Ffont_info): Move from fontset.c. Handle a font object too.
7903 (syms_of_font): Defsubr Sfont_info.
7904
79052008-05-29 Kenichi Handa <handa@m17n.org>
7906
7907 * coding.h (enum define_coding_utf8_arg_index): New enum.
7908 (enum coding_attr_index): Change coding_attr_utf_16_bom to
7909 coding_attr_utf_bom.
7910 (enum utf_bom_type): Rename from utf_16_bom_type.
7911 (struct utf_16_spec): Adjust for the above change.
7912 (struct coding_system): Add utf_8_bom in `spec' union.
7913
7914 * coding.c (CODING_UTF_8_BOM): New macro.
7915 (enum coding_category): Delete coding_category_utf_8, add
7916 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
7917 coding_category_utf_8_sig.
7918 (CATEGORY_MASK_UTF_8): Delete it.
7919 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
7920 (CATEGORY_MASK_UTF_8_SIG): New macros.
7921 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
7922 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
7923 CATEGORY_MASK_UTF_8_SIG.
7924 (CATEGORY_MASK_UTF_8): New macro.
7925 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
7926 (detect_coding_utf_8): Check BOM.
7927 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
7928 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
7929 (encode_coding_utf_16): Likewise.
7930 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
7931 (detect_coding, detect_coding_system): Handle utf-8-auto.
7932 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
7933 (syms_of_coding): Fix setting up of Vcoding_category_table.
7934
79352008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
7936
7937 * process.c (Faccept_process_output): If `millisec' is non-nil,
7938 `seconds' default to 0.
7939 (wait_reading_process_output): Also return non-nil if we read output
7940 from a non-running process.
7941
79422008-05-29 Jason Rumney <jasonr@gnu.org>
7943
7944 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
7945 `raster' specified.
7946 (add_font_entity_to_list): Allow non-opentype truetype fonts back
7947 in the uniscribe backend, but disallow any font that has no
7948 unicode subrange support.
7949
79502008-05-29 Juanma Barranquero <lekktu@gmail.com>
7951
7952 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
7953 Fix typos in docstrings.
7954
79552008-05-29 Kenichi Handa <handa@m17n.org>
7956
7957 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
7958 (Fx_family_fonts): Set frame correctly.
7959
79602008-05-28 Jason Rumney <jasonr@gnu.org>
7961
7962 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
7963
79642008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7965
7966 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
7967 calling build_annotations.
7968
79692008-05-28 Juanma Barranquero <lekktu@gmail.com>
7970
7971 * coding.c (Fdecode_coding_region, Fencode_coding_region)
7972 (Fencode_coding_string):
7973 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
7974 <latin-extra-code-table>: Fix typos in docstrings.
7975 (syms_of_coding) <coding-system-alist>: Doc fix.
7976 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
7977
79782008-05-28 Kenichi Handa <handa@m17n.org>
7979
7980 * fontset.c (Ffont_info): Don't call font_close_object.
7981
7982 * font.c (font_parse_family_registry): Use Ffont_put to validate
7983 foundry and family.
7984 (font_delete_unmatched): Don't check spacing.
7985 (font_list_entities): Add spacing to the spec to list fonts.
7986
7987 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
7988 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
7989
7990 * coding.c (encode_coding_raw_text): Fix previous change.
7991 (encode_coding_object): When the dst_object is a buffer and is
7992 different from src_object, move gap to PT.
7993
79942008-05-27 Chong Yidong <cyd@stupidchicken.com>
7995
7996 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
7997
79982008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7999
8000 * coding.c (encode_coding_raw_text): Set coding->produced_char for
8001 all branches. Compute it differently.
8002
8003 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
8004
80052008-05-27 Juanma Barranquero <lekktu@gmail.com>
8006
8007 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
8008 into "else if () ... else ...".
8009
80102008-05-27 Jason Rumney <jasonr@gnu.org>
8011
8012 * w32font.c (w32font_open_internal): Determine if glyph indices
8013 are likely to work here.
8014
80152008-05-27 Chong Yidong <cyd@stupidchicken.com>
8016
8017 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
8018 draw overlap glyphs with appropriate highlighting.
8019
80202008-05-27 Kenichi Handa <handa@m17n.org>
8021
8022 * xfont.c (xfont_open): Fix calculation of font->average_width.
8023
80242008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8025
8026 * casefiddle.c (casify_object): Try to guess better whether the
8027 argument is a byte or a char.
8028
80292008-05-26 Andreas Schwab <schwab@suse.de>
8030
8031 * xselect.c (x_reply_selection_request): Properly handle format == 32.
8032 Always send multiples of format size.
8033
8034 * xterm.c (x_set_frame_alpha): Fix type mismatch.
8035
80362008-05-26 Jason Rumney <jasonr@gnu.org>
8037
8038 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
8039 (compute_metrics): Don't set failure if we just cleared the cache.
8040 (w32_weight_table): Remove unused variable.
8041 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
8042 backwards compatibility.
8043
80442008-05-25 Kenichi Handa <handa@m17n.org>
8045
8046 * w32term.c (x_draw_glyph_string):
8047 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
8048
8049 * xfaces.c: Delete unused function prototypes.
8050 (xstrlwr, font_frame): Delete them.
8051 (clear_face_cache): Delete unused variable.
8052
8053 * xftfont.c (xftfont_open): Delete unused variable.
8054 If underline_thickness is not 1, adjust underline_position.
8055
8056 * ftxfont.c (ftxfont_open): Delete unused variable.
8057
8058 * fontset.c (face_for_char): Optimize for the case of no charset
8059 property.
8060
8061 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
8062 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
8063 (otf_open, font_otf_capability, generate_otf_features)
8064 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
8065 Comment out by surrounding "#if 0" and "#endif" for the moment.
8066 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
8067 (syms_of_font): Codes for accessing above commented out.
8068
80692008-05-24 Eli Zaretskii <eliz@gnu.org>
8070
8071 * w32proc.c: Include dispextern.h.
8072
8073 * w32.c: Include dispextern.h.
8074
80752008-05-23 Juanma Barranquero <lekktu@gmail.com>
8076
8077 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
8078 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
8079 Fix typos in docstrings.
8080
80812008-05-23 Jason Rumney <jasonr@gnu.org>
8082
8083 * xsmfns.c: Remove includes that are already included by config.h.
8084
80852008-05-23 Kenichi Handa <handa@m17n.org>
8086
8087 * charset.c (Qemacs, charset_emacs): New variables.
8088 (char_charset): Fix for non-Unicode characters.
8089 (syms_of_charset): Define charset_emacs.
8090
8091 * w32term.c (x_draw_glyph_string): Be sure to update
8092 s->underline_thickness and s->underline_position. Be sure to draw
8093 underline within the current line area.
8094
8095 * xterm.c (x_draw_glyph_string): Be sure to update
8096 s->underline_thickness and s->underline_position. Be sure to draw
8097 underline within the current line area.
8098
8099 * fontset.c: Delete unused variables and add casting for char *
8100 throughout the file.
8101 (fontset_font): Try the fallback fonts of the current fontset
8102 before consulting the default fontset.
8103
8104 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
8105
8106 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
8107
81082008-05-22 Jason Rumney <jasonr@gnu.org>
8109
8110 * font.c: Don't include strings.h.
8111
8112 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
8113
8114 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
8115 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
8116 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
8117 to call xstrcasecmp.
8118
8119 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
8120
8121 * fontset.c (fs_query_fontset): Use xstrcasecmp.
8122
8123 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
8124
8125 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
8126
81272008-05-22 Kenichi Handa <handa@m17n.org>
8128
8129 * puresize.h (BASE_PURESIZE): Increase to 1220000.
8130
8131 * font.c (font_prop_validate_style): Adjust for the format
8132 change of font_style_table.
8133
8134 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
8135 two args.
8136
8137 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
8138 two args.
8139
81402008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
8141
8142 * minibuf.c (keys_of_minibuf): Delete.
8143 * lisp.h (keys_of_minibuf): Delete.
8144 * emacs.c (main): Don't call keys_of_minibuf.
8145
81462008-05-22 Kenichi Handa <handa@m17n.org>
8147
8148 * ftfont.c (ftfont_resolve_generic_family): Rename from
8149 ftfont_list_generic_family. Return a single family for each
8150 generic family.
8151 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
8152 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
8153 Call font_add_log.
8154 (ftfont_match): Call font_add_log.
8155
8156 * font.h (Ffont_xlfd_name): EXFUN adjusted.
8157 (FONT_DEBUG): Define it.
8158 (font_add_log): Extern it.
8159 (font_assert): Rename from xassert.
8160
8161 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
8162 (xfont_list_family): Call font_add_log.
8163 (xfont_match): Likewise.
8164 (memq_no_quit): Delete.
8165
8166 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
8167 call of Ffont_xlfd_name.
8168
8169 * xfaces.c (struct table_entry, slant_table, weight_table)
8170 (swidth_table): Move to font.c.
8171
8172 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
8173 xassert are changed to font_assert. Delete many unused variables.
8174 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
8175 New variables.
8176 (struct table_entry): Move from xfaces.c and modified.
8177 (weight_table, slant_table, width_table): Move from xfaces.c and
8178 contents adjusted for the change of struct table_entry.
8179 (font_style_to_value, font_style_symbolic): Adjust for the
8180 format change of font_style_table.
8181 (font_parse_family_registry): Don't overwrite existing foundry and
8182 family of font_spec.
8183 (font_score): Fix calculation of diff for sizes.
8184 (font_sort_entites): Call font_add_log.
8185 (font_delete_unmatched): Return a newly created list.
8186 (font_list_entities): Fix previous change. Call font_add_log.
8187 (font_matching_entity, font_open_entity, font_close_entity):
8188 Call font_add_log.
8189 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
8190 (Finternal_set_font_style_table): Delete.
8191 (BUILD_STYLE_TABLE): New macro.
8192 (build_style_table): New function.
8193 (Vfont_log, font_log_env_checked): New variables.
8194 (font_add_log): New function.
8195 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
8196 Declare Lisp variables "font-weight-table", "font-slant-table",
8197 "font-width-table", and "font-log". Initialize font_style_table.
8198
81992008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
8200
8201 * xterm.c (x_set_frame_alpha): Move declarations before statements.
8202
82032008-05-21 Seiji Zenitani <zenitani@mac.com>
8204 Ryo Yoshitake <ryo@shiftmode.net>
8205
8206 * frame.c (Qalpha): Add a new frame parameter `alpha'.
8207 (Vframe_alpha_lower_limit): New variable.
8208 (x_set_alpha): New function.
8209
8210 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
8211
8212 * xfns.c (x-create-frame, Qalpha):
8213 Initialize the frame parameter `alpha'.
8214 * xterm.c (OPAQUE, OPACITY): New.
8215 (x_set_frame_alpha): New function.
8216 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
8217
8218 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
8219 * w32fns.c (w32_frame_parm_handlers): Likewise.
8220
82212008-05-20 Jason Rumney <jasonr@gnu.org>
8222
8223 * w32font.c (add_font_entity_to_list): Don't add non-opentype
8224 truetype fonts to opentype list.
8225
82262008-05-20 Juanma Barranquero <lekktu@gmail.com>
8227
8228 * fontset.c (Ffontset_info): Doc fix.
8229 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
8230 <ignore-relative-composition>: Fix typos in docstrings.
8231
8232 * font.c (syms-of-font) <font-encoding-alist>:
8233 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
8234 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
8235 (Ffont_otf_alternates): Doc fixes.
8236
82372008-05-20 Kenichi Handa <handa@m17n.org>
8238
8239 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
8240 font.h through out the file.
8241 (FONT_DRIVERS): Rename from FONTOBJ.
8242 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
8243 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
8244
8245 * emacs.c (main): Call syms_of_font unconditionally.
8246
8247 * font.h (find_font_encoding): Extern it.
8248
8249 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
8250 fontset.c.
8251 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
8252 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
8253 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
8254 only when HAVE_WINDOW_SYSTEM is defined.
8255 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
8256 when HAVE_WINDOW_SYSTEM is defined.
8257
8258 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
8259 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
8260
8261 * xfaces.c: Include font.h unconditionally.
8262 (merge_face_ref, merge_face_vectors)
8263 (Finternal_set_lisp_face_attribute): Cancel the previous change.
8264
82652008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
8266
8267 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
8268 indirect_variable.
8269 * eval.c (lisp_indirect_variable): New fun.
8270 (Fuser_variable_p): Use it.
8271
82722008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
8273
8274 * lisp.h (indirect_variable):
8275 * data.c (indirect_variable, let_shadows_buffer_binding_p):
8276 Use Lisp_Symbol pointers rather than Lisp_Object.
8277 Adjust callers.
8278 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
8279 To this end, change calling-convention.
8280
8281 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
8282 if some non-hidden buffers are selected by string&pred.
8283
82842008-05-19 Chong Yidong <cyd@stupidchicken.com>
8285
8286 * process.c (wait_reading_process_output): Always check status
8287 when in batch mode.
8288
82892008-05-19 Kenichi Handa <handa@m17n.org>
8290
8291 * font.c (font_list_entities): Fix handling of cache.
8292 (font_matching_entity): Likewise.
8293
8294 * ftfont.c (cs_iso8859_1): Delete.
8295 (ft_face_cache): New variable.
8296 (struct ftfont_info): New member fc_charset_idx.
8297 (ftfont_build_basic_charsets): Delete.
8298 (fc_charset_table): New variable.
8299 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
8300 . FC_CHARSET_IDX) as :font-entity property in the font entity.
8301 Callers changed.
8302 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8303 (ftfont_spec_pattern): New argument fc_charset_idx.
8304 Check registry more rigidly. Change callers.
8305 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
8306 change of :font-entity property of the font.
8307
8308 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
8309 property of the font.
8310
83112008-05-18 Juanma Barranquero <lekktu@gmail.com>
8312
8313 * coding.c (Fcoding_system_p): Rename argument to match docstring.
8314 (Funencodable_char_position, Fcheck_coding_systems_region)
8315 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
8316 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
8317 (Ffind_operation_coding_system, Fset_coding_system_priority)
8318 (Fcoding_system_eol_type): Doc fixes.
8319
83202008-05-17 Glenn Morris <rgm@gnu.org>
8321
8322 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
8323
83242008-05-16 Eli Zaretskii <eliz@gnu.org>
8325
8326 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
8327 and st_gid.
8328
8329 * frame.c (Fdelete_frame): Don't call font_update_drivers if
8330 HAVE_WINDOW_SYSTEM is not defined.
8331
8332 * xfaces.c (merge_face_ref, merge_face_vectors)
8333 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
8334 HAVE_WINDOW_SYSTEM is defined.
8335 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
8336
83372008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
8338
8339 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
8340
83412008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8342
8343 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
8344
83452008-05-15 Kenichi Handa <handa@m17n.org>
8346
8347 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
8348 preference.
8349
83502008-05-15 Glenn Morris <rgm@gnu.org>
8351
8352 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
8353
83542008-05-15 Chong Yidong <cyd@stupidchicken.com>
8355
8356 * fns.c (init_fns): Don't initialize weak_hash_tables here.
8357 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
8358
8359 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
8360
83612008-05-15 Kenichi Handa <handa@m17n.org>
8362
8363 * ftfont.c (ftfont_list): Downcase family name to check generic
8364 families.
8365
8366 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
8367 font-spec for QCfont value.
8368
8369 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
8370 buffer. Check the return value of it.
8371
83722008-05-14 Jason Rumney <jasonr@gnu.org>
8373
8374 * w32term.c (w32_get_glyph_overhangs): Remove.
8375 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
8376
83772008-05-14 Kenichi Handa <handa@m17n.org>
8378
8379 * font.c (font_prop_validate): Make nil a valid value.
8380 (font_clear_cache): Check if the cached vector of entities is nil
8381 or not.
8382
83832008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8384
8385 * emacs.c (main_thread): Conditionalize on
8386 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8387 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
8388
8389 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
8390 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
8391 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8392
83932008-05-14 Kenichi Handa <handa@m17n.org>
8394
8395 * coding.c (detect_coding_iso_2022): Ignore a coding category that
8396 has no corresponding coding system.
8397
83982008-05-14 Jason Rumney <jasonr@gnu.org>
8399
8400 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
8401
8402 * w32font.h (w32font_open_internal): Update declaration.
8403
8404 * w32font.c (w32font_open_internal): Change last argument from
8405 w32font_info struct to font object. Fill in font object from
8406 font_entity. Get Outline metrics if possible. Use them to
8407 calculate underline position and thickness. Use xlfd name as name
8408 property. Don't set codepage.
8409 (w32font_open): Pass font_object to w32font_open_internal. Don't
8410 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
8411 (w32font_draw): Use s->font.
8412 (clear_cached_metrics): Don't clear non-existent blocks.
8413
8414 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
8415 font was not found.
8416 (x_draw_glyph_string): Use underline position and thickness from font.
8417
8418 * w32uniscribe.c (uniscribe_open): Pass font_object to
8419 w32font_open_internal.
8420
84212008-05-14 Kenichi Handa <handa@m17n.org>
8422
8423 These changes are to delete all legacy font-handling codes, and
8424 make Emacs use only font-backends.
8425
8426 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
8427 (frame.o, image.o, print.o): Depend on $(FONTSRC).
8428
8429 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
8430
8431 * charset.h (Vcharset_non_preferred_head)
8432 (Vcurrent_iso639_language): Extern them.
8433
8434 * charset.c (Vcharset_non_preferred_head): New variable.
8435 (Vcurrent_iso639_language): New variable.
8436 (syms_of_charset): Declare it as a Lisp variable.
8437 (char_charset): Don't check non preferred charsets. As a last
8438 resort, return charset_unicode.
8439 (Fset_charset_priority): Update Vcharset_non_preferred_head.
8440
8441 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
8442 conditionals. Don't check enable_font_backend. Delete all codes
8443 used only when USE_FONT_BACKEND is not defined.
8444
8445 * dispextern.h (struct glyph_string): Change type of `font' to
8446 `struct font *'.
8447 (struct glyph_string): New member underline_position and
8448 underline_thickness.
8449 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
8450 (struct face): Change type of `font' to `struct font *'. Remove
8451 members `font_name', `font_info_id'.
8452 (per_char_metric, encode_char): Delete externs.
8453 (calc_pixel_width_or_height): Adjust the prototype.
8454
8455 * emacs.c (enable_font_backend): Delete extern.
8456 (main): Don't set enable_font_backend. Don't check the command
8457 line argument "-disable-font-backend".
8458
8459 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
8460 (enum font_property_index): New members FONT_DPI_INDEX,
8461 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
8462 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
8463 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
8464 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
8465 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
8466 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
8467 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
8468 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
8469 (struct font_spec, struct font_entity): New structs.
8470 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
8471 (struct font): Many members from old "struct font_info" moved to
8472 here. Members font and entity deleted.
8473 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
8474 the new font-related objects.
8475 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
8476 (CHECK_FONT_GET_OBJECT): Likewise.
8477 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
8478 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
8479 (struct font_driver): New members case_sensitive anc check. Type
8480 of the member list and open changed.
8481 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
8482 (font_symbolic_width, font_find_object, font_get_spec)
8483 (font_set_lface_from_name): Delete extern.
8484 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
8485
8486 * font.c: Include <strings.h>.
8487 (enable_font_backend): Delete it.
8488 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
8489 (CHECK_VALIDATE_FONT_SPEC): Delete it.
8490 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
8491 (null_string): Delete it.
8492 (null_vector): Make it static.
8493 (font_family_alist): Delete it.
8494 (Qnormal): Extern it.
8495 (QCextra, QClanguage): Delete it.
8496 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
8497 (font_make_spec, font_make_entity, font_make_object)
8498 (font_intern_prop): Renamed from intern_downcase. Don't downcase
8499 the string. Callers changed.
8500 (font_pixel_size): Adjusted for the format change of font-related
8501 objects.
8502 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
8503 (font_style_to_value, font_style_symbolic): New function.
8504 (build_font_family_alist): Delete it.
8505 (font_registry_charsets): Use Fassoc_string instead of
8506 assq_no_quit.
8507 (font_prop_validate_symbol): Don't return null_string.
8508 (font_prop_validate_style): Adjusted for the change of
8509 style-related values in a font vector.
8510 (font_property_table): Delete entries for QClanguage and
8511 QCantialias, add entries for QCavgwidth.
8512 (get_font_prop_index): Delete the 2nd argument FROM.
8513 (font_prop_validate): Arguments changed.
8514 (font_put_extra): Adjusted for the change of font-related objects.
8515 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
8516 (font_parse_fcname, font_unparse_fcname)
8517 (font_prepare_composition): Likewise.
8518 (font_parse_family_registry): Renamed from font_merge_old_spec.
8519 (otf_open): Delete the 1st arg entity.
8520 (font_otf_capability): Adjusted for the above change.
8521 (font_score): New arg alternate_families. Adjusted for the change
8522 of font-related objects.
8523 (font_sort_entites): New arg best_only.
8524 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
8525 Delete them.
8526 (font_match_p): Check alternate families.
8527 (font_find_object): Delete it.
8528 (font_check_object): New function.
8529 (font_clear_cache): Adjusted for the change of font-related objects.
8530 (font_delete_unmatched): New arg.
8531 (font_list_entities): Call font_driver->list with a spec that
8532 doesn't specify style-related properties.
8533 (font_matching_entity): Arguments changed. Caller changed.
8534 (font_open_entity): Adjusted for the change of font-related objects.
8535 (font_close_object, font_has_char, font_encode_char)
8536 (font_get_name, font_get_spec): Likewise.
8537 (font_spec_from_name, font_clear_prop, font_update_lface):
8538 New functions.
8539 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
8540 (font_prepare_for_face, font_done_for_face, font_open_by_name)
8541 (font_at): Adjusted for the change of font-related objects.
8542 (font_range): New function.
8543 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
8544 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
8545 (Fcopy_font_spec, Fmerge_font_spec): New function.
8546 (Ffont_family_list): Renamed from list-families.
8547 (Finternal_set_font_style_table): Arguments changed.
8548 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
8549 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
8550 change of font-related objects.
8551 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
8552
8553 * fontset.h (struct font_info): Delete it. Most members go to
8554 struct font.
8555 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
8556 (enum FONT_SPEC_INDEX): Delete it.
8557 (font_info, list_fonts_func, load_font_func, query_font_func)
8558 (set_frame_fontset_func, find_ccl_program_func)
8559 (get_font_repertory_func, new_fontset_from_font_name): Delete
8560 externs.
8561 (fontset_from_font_name): Extern it.
8562 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
8563 (FONT_INFO_FROM_FACE): Deleted.
8564 (face_for_font): Adjust prototype.
8565
8566 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
8567 conditionals. Don't check enable_font_backend. Delete all codes
8568 used only when USE_FONT_BACKEND is not defined.
8569 (get_font_info_func, list_font_func, load_font_func)
8570 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
8571 (get_font_repertory_func): Delete them.
8572 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
8573 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
8574 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
8575 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
8576 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
8577 (fontset_compare_rfontdef): New function.
8578 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
8579 rfont-defs by qsort. Adjusted for the change of font-group vector.
8580 (load_font_get_repertory): Deleted.
8581 (fontset_find_font): Use new macros to ref/set elements of
8582 font-def and rfont-def.
8583 (fontset_font): Fix the timing of remembering that no font for C.
8584 (free_face_fontset): Do nothing if the face has no fontset.
8585 (face_suitable_for_char_p): Use new macros to ref/set elements of
8586 rfont-def.
8587 (face_for_char): Likewise. Call face_for_char with font_object.
8588 (fs_load_font): Delete. Delete #pragma surrounding it.
8589 (fs_query_fontset): Use strcasecmp instead of strcmp.
8590 (generate_ascii_font_name): Adjusted for the format change of
8591 font-spec.
8592 (Fset_fontset_font): Likewise. Use new macros to set elements of
8593 font-def.
8594 (Fnew_fontset): Use font_unparse_xlfd to generate
8595 FONTSET_ASCII (fontset).
8596 (new_fontset_from_font_name): Deleted.
8597 (fontset_from_font): Renamed from new_fontset_from_font. Check if
8598 a fontset is already created for the font. FIx updating of
8599 Vfontset_alias_alist.
8600 (fontset_ascii_font): Deleted.
8601 (Ffont_info): Adjusted for the format change of font-spec.
8602 (Finternal_char_font): Likewise.
8603 (Ffontset_info): Likewise.
8604 (syms_of_fontset): Don't check load_font_func.
8605
8606 * fns.c (internal_equal): Handle PREV_FONT.
8607
8608 * frame.h: Delete USE_FONT_BACKEND conditional.
8609
8610 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
8611 conditionals. Don't check enable_font_backend. Delete all codes
8612 used only when USE_FONT_BACKEND is not defined.
8613 (x_set_font): Call x_new_font, not x_new_fontset2.
8614 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
8615 already set for the frame.
8616
8617 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
8618 a font-entity by font_make_entity. Use font_intern_prop instead
8619 of intern_downcase. Use FONT_SET_STYLE to set a style-related
8620 font property. If a font is scalable, set avgwidth property to 0.
8621 Set font-entity property by font_put_extra.
8622 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
8623 (ffont_driver): Adjusted for the change of struct font_driver.
8624 (ftfont_spec_pattern): New function.
8625 (ftfont_list): Return a list, not vector.
8626 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
8627 (ftfont_list_family): Don't downcase names.
8628 (ftfont_free_entity): Deleted.
8629 (ftfont_open): Return a font-object. Adjusted for the change of
8630 struct font. Get underline_thickness and underline_position from
8631 font property. Don't update dpyinfo->smallest_font_height and
8632 dpyinfo->smallest_char_width.
8633 (ftfont_close): Don't free `struct font'.
8634 (ftfont_has_char): Adjusted for the format change of font-entity.
8635 (ftfont_encode_char, ftfont_text_extents): Likewise.
8636
8637 * ftxfont.c (ftxfont_list): Return a list, not vector.
8638 (ftxfont_open): Return a font-object. Adjusted for the change of
8639 struct font. Get underline_thickness and underline_position from
8640 font property. Don't update dpyinfo->smallest_font_height and
8641 dpyinfo->smallest_char_width.
8642 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
8643 (ftxfont_draw): Adjusted for the change of struct font.
8644
8645 * image.c (image_ascent): Don't include "charset.h". Include
8646 "character.h" and "font.h".
8647
8648 * lisp.h (enum pvec_type): New member PREV_FONT.
8649 (Fassoc_string): EXFUN it.
8650
8651 * print.c: Include font.h.
8652 (print_object): Handle font-related objects.
8653
8654 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
8655 conditionals. Don't check enable_font_backend. Delete all codes
8656 used only when USE_FONT_BACKEND is not defined.
8657 (handle_auto_composed_prop): Do nothing if it->f is not on a
8658 window system. Check how many following characters can be
8659 displayed by the same font.
8660 (calc_pixel_width_or_height): Type of the 4th arg is changed to
8661 'struct font *'.
8662 (get_char_face_and_encoding): Assign the whole encoding task to
8663 the `encode-char' method of a font driver.
8664 (fill_composite_glyph_string): Adjusted for the change of `struct
8665 face' and `struct glyph_string'.
8666 (fill_glyph_string): Likewise.
8667 (get_per_char_metric): Arguments changed.
8668 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
8669 and `struct glyph_string'.
8670 (produce_stretch_glyph, calc_line_height_property)
8671 (x_produce_glyphs): Likewise.
8672
8673 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
8674 conditionals. Don't check enable_font_backend. Delete all codes
8675 used only when USE_FONT_BACKEND is not defined. Use
8676 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
8677 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
8678 (Qp): Extern them.
8679 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
8680 Deleted.
8681 (struct font_name): Deleted.
8682 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
8683 (compare_fonts_by_sort_order): New function.
8684 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
8685 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
8686 Deleted.
8687 (Fx_family_fonts): Use font_list_entities, and sort fonts by
8688 compare_fonts_by_sort_order.
8689 (Fx_font_family_list): Call Ffont_family_list.
8690 (face_numeric_value, face_numeric_weight, face_numeric_slant)
8691 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
8692 (face_symbolic_slant, face_symbolic_swidth)
8693 (split_font_name_into_vector, build_font_name_from_vector)
8694 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
8695 (font_rescale_ratio, split_font_name, build_font_name)
8696 (free_font_names, sort_fonts, x_face_list_fonts)
8697 (face_font_available_p, sorted_font_list, cmp_font_names)
8698 (font_list_1, concat_font_list, font_list, remove_duplicates):
8699 Deleted.
8700 (Fx_list_fonts): Use Ffont_list.
8701 (LFACE_AVGWIDTH): Deleted.
8702 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
8703 by FONTP.
8704 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
8705 (set_lface_from_font_name): Delete it.
8706 (set_lface_from_font): Renamed from
8707 set_lface_from_font_and_fontset. Caller changed. Don't set
8708 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
8709 for face.
8710 (merge_face_vectors): Copy font-spec if necessary.
8711 Clear properties of the font-spec if necessary.
8712 (merge_face_ref): Clear properties of the font-spec if necessary.
8713 (Finternal_set_lisp_face_attribute): Likewise.
8714 (set_font_frame_param): Use font_load_for_lface to load a
8715 font-object, and call Fmodify_frame_parameters with it.
8716 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
8717 font name by Ffont_xlfd_name.
8718 (Finternal_lisp_face_attribute_values): Don't check QCweight,
8719 QCslant, and QCwidth.
8720 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
8721 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
8722 Compare fonts by EQ.
8723 (lookup_non_ascii_face): Deleted.
8724 (face_for_font): The 2nd argument changed.
8725 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
8726 Check atomic font properties by case insensitive.
8727 (realize_non_ascii_face): Set face->overstrike correctly.
8728 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
8729 (dump_realized_face): Get font name from
8730 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
8731
8732 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
8733 conditionals. Don't check enable_font_backend. Delete all codes
8734 used only when USE_FONT_BACKEND is not defined.
8735 (xic_create_xfontset): Original code deleted and renamed from
8736 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
8737 (x_make_gc): Don't set GCFont in GCs.
8738 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
8739 opened by "fixed".
8740 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
8741 find_ccl_program_func, query_font_func, set_frame_fontset_func,
8742 get_font_repertory_func.
8743
8744 * xfont.c: Include <stdlib.h> and "ccl.h".
8745 (struct xfont_info): New structure.
8746 (xfont_query_font): Deleted.
8747 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
8748 moved from xterm.c.
8749 (xfont_driver): Adjusted for the change of struct font_driver.
8750 (compare_font_names): New function.
8751 (xfont_list_pattern): Sort font names case insensitively. Make
8752 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
8753 (xfont_list): Return a list, not vector.
8754 (xfont_match): If the font doesn't have QCname property, generate
8755 a name from the other font properties.
8756 (xfont_open): Return a font-object. Adjusted for the change of
8757 struct font. Get underline_thickness and underline_position from
8758 font property. Don't update dpyinfo->smallest_font_height and
8759 dpyinfo->smallest_char_width.
8760 (xfont_close): Don't free struct font.
8761 (xfont_prepare_face): Adjusted for the change of struct font.
8762 (xfont_done_face): Deleted.
8763 (xfont_has_char): Adjusted for the change of struct font.
8764 (xfont_encode_char, xfont_draw): Likewise.
8765 (xfont_check): New function.
8766
8767 * xftfont.c (xftfont_list): Adjusted for the change of `list'
8768 callback function.
8769 (xftfont_match): Adjusted for the format change of font-entity.
8770 (xftfont_open): Adjusted for the format change of font-entity and
8771 font-object. Adjusted for the change of struct font. Return a
8772 font-object. Don't update dpyinfo->smallest_font_height and
8773 dpyinfo->smallest_char_width.
8774 (xftfont_close): Block input while calling XftFontClose.
8775 (xftfont_prepare_face): Don't block input while calling
8776 xftfont_get_colors. Adjusted for the change of struct font.
8777 (xftfont_shape): Return value of error case fixed.
8778
8779 * xrdb.c (x_load_resources): Don't setup a fontset resource.
8780
8781 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
8782 conditionals.
8783 (FONT_WIDTH): Return (f)->max_width.
8784 (struct x_display_info): Delete member `font'.
8785 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
8786 (x_find_ccl_program, x_get_font_repertory): Delete externs.
8787 (struct x_output): Change type of `font' to `struct font *'.
8788
8789 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
8790 conditionals. Don't check enable_font_backend. Delete all codes
8791 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
8792 (x_per_char_metric, x_encode_char): Deleted.
8793 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
8794 (x_compute_glyph_string_overhangs): Adjusted for the change of
8795 `struct face'.
8796 (x_draw_glyph_string_foreground)
8797 (x_draw_composite_glyph_string_foreground): Likewise.
8798 (x_draw_glyph_string): Likewise. Use font->underline_position and
8799 font->underline_thickness.
8800 (x_new_font): Renamed from x_new_fontset2.
8801 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
8802 (x_check_font): Call `check' method of a font driver.
8803 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
8804 (x_query_font, x_get_font_repertory): Deleted.
8805 (x_find_ccl_program): Renamed and moved to xfont.c.
8806 (x_redisplay_interface): Adjusted for the change of `struct
8807 redisplay_interface'.
8808
8809 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
8810 conditionals. Don't check enable_font_backend. Delete all codes
8811 used only when USE_FONT_BACKEND is not defined. Surround non-used
8812 code by "#ifdef OLD_FONT" and "endif".
8813 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
8814
8815 * w32font.h (struct w32font_info): New member.
8816 (FONT_COMPAT): New macro.
8817 (w32font_open_internal): Prototype adjusted.
8818
8819 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
8820 OLD_FONT" and "endif".
8821
8822 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
8823 conditionals. Don't check enable_font_backend. Delete all codes
8824 used only when USE_FONT_BACKEND is not defined.
8825 (w32font_open): Return a font-object. Make a font-object by
8826 font_make_object. Adjusted for the change of struct w32font_info.
8827 (w32font_close): Don't free struct font. Adjusted for the change
8828 of struct w32font_info.
8829 (w32font_encode_char, w32font_text_extents, w32font_draw):
8830 Adjusted for the change of struct w32font_info.
8831 (w32font_draw): Likewise.
8832 (w32font_list_internal): Return a list, not vector.
8833 (w32font_open_internal): Change the 4th arg to font-object.
8834 Adjusted for the change of struct w32font_info and font-object format.
8835 (add_font_name_to_list): Don't downcase names.
8836 (w32_enumfont_pattern_entity): Make a font-entity by
8837 font_make_entity. Adjusted for the format change of font-entity.
8838 Use FONT_SET_STYLE to set a style-related font property. If a
8839 font is scalable, set avgwidth property to 0. Set font-entity
8840 property by font_put_extra.
8841 (font_matches_spec): Adjusted for the format change of font-entity.
8842 (w32_weight_table, w32_decode_weight): New variables.
8843 (w32_encode_weight): New function.
8844 (fill_in_logfont): Adjusted for the format change of font-spec.
8845 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
8846 weight value.
8847 (w32font_driver): Adjusted for the change of struct font_driver.
8848
8849 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
8850 conditionals. Don't check enable_font_backend. Surround non-used
8851 code by "#ifdef OLD_FONT" and "endif".
8852 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
8853 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
8854
8855 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
8856 conditionals. Don't check enable_font_backend. Delete all codes
8857 used only when USE_FONT_BACKEND is not defined. Surround non-used
8858 code by "#ifdef OLD_FONT" and "endif".
8859
8860 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
8861 (uniscribe_open): Return value changed to font-object.
8862 Adjusted for the format change of font-object.
8863 (uniscribe_otf_capability): Adjusted for the change of struct font.
8864 (add_opentype_font_name_to_list): Don't downcase names.
8865 (uniscribe_font_driver): Adjusted for the change of struct
8866 font_driver.
8867
88682008-05-13 Chong Yidong <cyd@stupidchicken.com>
8869
8870 * dispnew.c (update_frame_1): Check if tty output is still valid
8871 before flushing it.
8872
88732008-05-13 Jan Djärv <jan.h.d@swipnet.se>
8874
8875 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
8876 to Gtk+ menus.
8877
88782008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8879
8880 * dired.c (file_name_completion): Tweak the code so as to always do it
8881 in a single pass. Tighten the scope of some variables.
8882
8883 * dired.c (Qdefault_directory): New var.
8884 (file_name_completion): Use it instead of Fexpand_file_name.
8885 (syms_of_dired): Initialize it.
8886
88872008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
8888
8889 * fileio.c (double_dollars): Remove dead code.
8890
88912008-05-10 Eli Zaretskii <eliz@gnu.org>
8892
8893 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
8894 Mention w32-get-true-file-attributes in doc string.
8895
8896 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
8897
88982008-05-09 Glenn Morris <rgm@gnu.org>
8899
8900 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
8901 2008-04-23.
8902
89032008-05-09 Eli Zaretskii <eliz@gnu.org>
8904
8905 Support for reporting owner and group of each file on MS-Windows:
8906 * dired.c (stat_uname, stat_gname): New functions, with special
8907 implementation for w32.
8908 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
8909
8910 * w32.c: Rename the_passwd_* to dflt_passwd_*.
8911 (dflt_group_name): New static variable.
8912 (dflt_group): Rename from the_group.
8913 (init_user_info): Init dflt_group fields. Get user's group name
8914 from LookupAccountSid.
8915 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
8916 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
8917 New initialization states.
8918 (globals_of_w32): Initialize them to zero. Initialize the default
8919 group name to "None".
8920 (GetFileSecurity_Name): New global var, the name of the function
8921 to call for GetFileSecurity.
8922 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
8923 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
8924 (get_file_security, get_security_descriptor_owner)
8925 (get_security_descriptor_group, is_valid_sid)
8926 (get_file_security_desc, get_rid, get_name_and_id)
8927 (get_file_owner_and_group): New functions.
8928 (stat): Use get_file_security_desc and get_file_owner_and_group to
8929 report the owner and primary group of each file. Don't ignore the
8930 high 32 bits of file's size, now that st_size is 64-bit wide.
8931 Fix test when to get true file attributes.
8932 (init_user_info): Use get_rid instead of equivalent inline code.
8933 (fstat): Don't ignore the high 32 bits of file's size.
8934
89352008-05-09 Chong Yidong <cyd@stupidchicken.com>
8936
8937 * image.c (png_load): Use correct bit-depth for setting background
8938 color.
8939
89402008-05-08 Eli Zaretskii <eliz@gnu.org>
8941
8942 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
8943 epa-hook.elc.
8944
89452008-05-08 Juanma Barranquero <lekktu@gmail.com>
8946
8947 * font.c (Ffont_match_p): Don't use `iff' in docstring.
8948
89492008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
8950
8951 * macfns.c (Fx_create_frame): Make a copy of frame parameters
8952 because the original parameters are in pure storage now.
8953 (mac_window): Remove unused params. Update callers.
8954
89552008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
8956
8957 * lread.c (substitute_object_recurse): Use lower-level primitives.
8958 Don't signal errors when traversing sub-char-tables.
8959 Don't loop over all the possible characters when traversing char-tables.
8960
8961 * print.c (print_preprocess): Add sub-char-tables to the print-table,
8962 just like we do in print.c.
8963
89642008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
8965
8966 * minibuf.c (Ftry_completion): Remove code left over from when we used
8967 scmp instead of Fcompare_strings.
8968
89692008-05-04 Juanma Barranquero <lekktu@gmail.com>
8970
8971 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
8972
89732008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8974
8975 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
8976 Create bitmap context in native byte order.
8977
8978 * macterm.c (XDrawLine)
8979 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
8980 context in native byte order.
8981
89822008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8983
8984 * config.in: Regenerate.
8985
8986 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
8987 New definitions for Image I/O support.
8988 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8989 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
8990 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8991 (mac_data_provider_release_data, image_load_image_io)
8992 [USE_MAC_IMAGE_IO]: New functions.
8993 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
8994 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
8995 (init_image_func_pointer) [MAC_OSX]: Remove function.
8996 (image_load_quartz2d) [MAC_OSX]: Check availability of
8997 CGImageCreateWithPNGDataProvider at compile time.
8998 Use lowercase `false' for boolean constant.
8999 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
9000 Use image_load_image_io.
9001 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
9002 Don't check MyCGImageCreateWithPNGDataProvider.
9003 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
9004 Don't call init_image_func_pointer.
9005
9006 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
9007
9008 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
9009 Make variable non-static.
9010 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9011 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9012
9013 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
9014 (RED_FROM_ULONG): Mask off higher bits.
9015 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
9016
9017 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
9018 Include AvailabilityMacros.h.
9019 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
9020 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
9021
90222008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
9023
9024 * chartab.c (Fset_char_table_range): If range is t, really set all
9025 chars to that value.
9026
90272008-05-03 Eli Zaretskii <eliz@gnu.org>
9028
9029 * dired.c (Ffile_attributes): Don't allow the device number become
9030 negative.
9031
90322008-05-02 Daiki Ueno <ueno@unixuser.org>
9033
9034 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
9035
90362008-05-02 Juri Linkov <juri@jurta.org>
9037
9038 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
9039 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
9040 DEFAULT argument as a list of default values in docstrings.
9041
90422008-05-01 Chong Yidong <cyd@stupidchicken.com>
9043
9044 * puresize.h (BASE_PURESIZE): Increase to 1210000.
9045
90462008-05-01 Martin Rudalics <rudalics@gmx.at>
9047
9048 * dispnew.c (change_frame_size_1): Preserve small windows when
9049 shrinking frames by calling set_window_height|width with third
9050 arg 2.
9051
9052 * window.h (struct window): Replace field too_small_ok by field
9053 resize_proportionally.
9054
9055 * window.c (make_window): Initialize resize_proportionally.
9056 (enlarge_window): Temporarily set resize_proportionally to make
9057 sure that shrink_windows does scale the window proportionally.
9058 (shrink_windows): When window has resize_proportionally set try
9059 to shrink it proportionally by stealing from other windows.
9060 (struct saved_window, Fset_window_configuration)
9061 (compare_window_configurations): Handle resize_proportionally.
9062 (WINDOW_TOTAL_SIZE): New macro.
9063 (window_min_size, shrink_windows, size_window): Use it.
9064 (check_min_window_sizes): Remove. Invalid values of
9065 window-min-height|width are handled by window_min_size_2 now.
9066 (size_window, Fsplit_window, enlarge_window)
9067 (adjust_window_trailing_edge, grow_mini_window): Don't call
9068 check_min_window_sizes.
9069 (window_min_size_2, window_min_size_1, window_min_size):
9070 New argument safe_p for retrieving "safe" minimum sizes.
9071 (Fdisplay_buffer, Fsplit_window, enlarge_window)
9072 (adjust_window_trailing_edge, grow_mini_window):
9073 Adjust arguments of window_min_size... functions.
9074 (shrink_windows): Argument min_size removed. New argument
9075 safe_p allows shrinking windows to their safe minimum sizes.
9076 Calculate minimum size and decide whether a window shall be
9077 deleted for each window individually.
9078 (size_window): When nodelete_p equals 2, tell shrink_windows to
9079 delete windows only if their new minimum size is no more safe.
9080 (shrink_window_lowest_first): Call window_min_size_1 to make
9081 sure to preserve modeline of bottom-most window when resizing
9082 the minibuffer.
9083 (Fset_window_configuration, Fcurrent_window_configuration)
9084 (compare_window_configurations): Do not handle
9085 window-min-height|width any more.
9086 (syms_of_window): Clarify window-min-height|width doc-strings.
9087
90882008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
9089
9090 * dired.c (file_name_completion): Fix up the encoding/decoding issue
9091 some more. Copy some of the code from Ftry_completions.
9092 Remove special case code that dates back to initial revision when the
9093 slash was only added when necessary and that can't trigger nowadays.
9094
90952008-04-27 Kenichi Handa <handa@m17n.org>
9096
9097 * font.c (font_prop_validate): Signal `error' instead of `font'.
9098
90992008-04-29 Jason Rumney <jasonr@gnu.org>
9100
9101 * w32fns.c (Fw32_battery_status): New defun.
9102 (syms_of_w32fns): Defsubr it.
9103
91042008-04-28 Andreas Schwab <schwab@suse.de>
9105
9106 * dired.c (file_name_completion): Fix another mixing of encoded
9107 and decoded names.
9108
91092008-04-28 Juanma Barranquero <lekktu@gmail.com>
9110
9111 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
9112
91132008-04-27 Juanma Barranquero <lekktu@gmail.com>
9114
9115 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
9116
91172008-04-27 Andreas Schwab <schwab@suse.de>
9118
9119 * dired.c (file_name_completion): Fix inappropriate mixing of
9120 encoded and decoded names.
9121
9122 * xterm.c (XTread_socket): Fix use of uninitialized variable.
9123
9124 * puresize.h (BASE_PURESIZE): Increase to 1200000.
9125
91262008-04-26 Eli Zaretskii <eliz@gnu.org>
9127
9128 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
9129 2008-03-31, it's not needed anymore with `struct stat' definition
9130 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
9131 for the same reasons.
9132
91332008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
9134
9135 * m/sparc.h: Additional redefinitions for GNU/Linux.
9136
91372008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9138
9139 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
9140 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
9141 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
9142 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
9143 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9144 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
9145 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9146 Likewise.
9147
9148 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
9149 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
9150 (mac_ax_number_of_characters): Add externs.
9151 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9152 [USE_MAC_TSM]: Likewise.
9153 (mac_handle_text_input_event) [MAC_OSX]:
9154 Handle kEventTextInputOffsetToPos for no active input area case.
9155 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9156 (mac_handle_document_access_event)
9157 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
9158 (install_application_handler) [MAC_OSX]: Register handlers for
9159 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9160 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9161 Register mac_handle_document_access_event.
9162
9163 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
9164 Make functions non-static.
9165
91662008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
9167
9168 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
9169 (read_file_name_completion_ignore_case, insert_default_directory)
9170 (Qdefault_directory): Move to minibuffer.el.
9171 (Fread_file_name): Call the new `read-file-name' instead.
9172
91732008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9174
9175 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
9176 Make function non-static.
9177 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
9178 Remove function.
9179 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9180 Move to mactoolbox.c.
9181 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
9182
9183 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
9184 (mac_rect_make): New macro.
9185
9186 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
9187 instead of float.
9188 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9189 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
9190 (XSetBackground) [USE_CG_DRAWING]: Likewise.
9191 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
9192 CGRectMake.
9193 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9194 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
9195 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
9196 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9197 instead of WindowRef in argument type.
9198 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
9199 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
9200 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
9201 instead of DISPLAY. All uses changed.
9202 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
9203 (x_calc_absolute_position): Simplify so as not to use
9204 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
9205
9206 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9207 instead of WindowRef in argument type.
9208 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
9209 [TARGET_API_MAC_CARBON]: Remove externs.
9210 (create_apple_event, mac_event_parameters_to_lisp)
9211 [TARGET_API_MAC_CARBON]: Add externs.
9212
9213 * mactoolbox.c (Vmac_ts_script_language_on_focus)
9214 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
9215 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
9216 is clicked.
9217 (x_activate_menubar): Remove extern for saved_menu_event_location.
9218 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9219 Move from mac.c.
9220
92212008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9222
9223 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
9224 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
9225
92262008-04-23 Jason Rumney <jasonr@gnu.org>
9227
9228 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
9229 attributes only for local files.
9230
9231 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
9232 default to Qlocal.
9233
92342008-04-22 Juri Linkov <juri@jurta.org>
9235
9236 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
9237 read-buffer-to-switch instead of using the letter "B".
9238
92392008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9240
9241 * fileio.c (Qdefault_directory): New variable.
9242 (Fread_file_name): Use it to pass `dir' to the completion functions.
9243
92442008-04-20 Chong Yidong <cyd@stupidchicken.com>
9245
9246 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
9247
92482008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
9249
9250 * keyboard.c (Vpre_help_message): Remove.
9251 (show_help_echo): Remove default C code.
9252
9253 * dired.c (directory_files_internal, file_name_completion):
9254 Only call ENCODE_FILE if the string is indeed decoded.
9255
92562008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9257
9258 * Makefile.in (TOOLKIT_DEFINES): Remove.
9259 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
9260
92612008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9262
9263 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
9264 (mactoolbox.o): New target.
9265
9266 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
9267 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
9268
9269 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
9270 Use mac_set_frame_window_background instead of XSetWindowBackground.
9271 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
9272 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
9273 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
9274 instead of SetWindowTitleWithCFString.
9275 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
9276 Move function to mactoolbox.c.
9277 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
9278 Use mac_set_window_modified instead of SetWindowModified.
9279 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
9280 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
9281 (Fx_focus_frame): Use mac_front_non_floating_window instead of
9282 FrontNonFloatingWindow. Use mac_activate_window instead of
9283 ActivateWindow. Use mac_active_non_floating_window instead of
9284 ActiveNonFloatingWindow.
9285 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
9286 Use mac_show_hourglass and mac_hide_hourglass.
9287 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
9288 instead of GetGlobalMouse.
9289 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
9290 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
9291 Use mac_bring_window_to_front instead of BringToFront.
9292 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
9293 mactoolbox.c.
9294 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
9295 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
9296 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
9297 mactoolbox.c.
9298
9299 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
9300 (XtPointer): Move typedef from macmenu.c.
9301 (enum button_type): Move enum from macmenu.c.
9302 (widget_value): Move typedef from macmenu.c.
9303 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
9304 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9305 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9306 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9307 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9308 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9309 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9310 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
9311 (Selection): Move typedef from macselect.c.
9312 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
9313 macterm.c.
9314 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
9315 (mac_is_window_collapsed, mac_bring_window_to_front)
9316 (mac_send_window_behind, mac_hide_window, mac_show_window)
9317 (mac_collapse_window, mac_front_non_floating_window)
9318 (mac_active_non_floating_window, mac_activate_window)
9319 (mac_move_window_structure, mac_move_window, mac_size_window)
9320 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
9321
9322 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
9323 (enum mac_menu_kind): Move enum to mactoolbox.c.
9324 (min_menu_id): Move variable to mactoolbox.c.
9325 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
9326 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
9327 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
9328 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
9329 [TARGET_API_MAC_CARBON]: Likewise.
9330 (XtPointer): Move typedef to macgui.h.
9331 (enum button_type): Move enum to macgui.h.
9332 (widget_value): Move typedef to macgui.h.
9333 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9334 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9335 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9336 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9337 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9338 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9339 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
9340 (popup_activated_flag): Make variable non-static.
9341 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
9342 (add_menu_item, fill_menu, dispose_menus):
9343 Move functions to mactoolbox.c.
9344 (restore_show_help_function, menu_target_item_handler)
9345 (install_menu_target_item_handler, mac_handle_dialog_event)
9346 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
9347 [TARGET_API_MAC_CARBON]: Likewise.
9348 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
9349 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9350 (find_and_call_menu_selection, name_is_separator): Make function
9351 non-static.
9352 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
9353 to mactoolbox.c.
9354 (set_frame_menubar): Don't call install_menu_quit_handler.
9355 (menu_item_selection): New variable.
9356 (mac_menu_show): Use create_and_show_popup_menu.
9357 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
9358 selection but set variable menu_item_selection. All uses changed.
9359 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
9360 Call install_menu_quit_handler. Move to mactoolbox.c.
9361
9362 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
9363 (Selection): Move typedef to macgui.h.
9364 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
9365 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
9366 Make variables non-static.
9367 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9368 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
9369 Make functions non-static.
9370 (Vmac_service_selection) [MAC_OSX]: Likewise.
9371 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
9372 (mac_valid_selection_target_p, mac_clear_selection)
9373 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9374 (mac_put_selection_value, mac_selection_has_target_p)
9375 (mac_get_selection_value, mac_get_selection_target_list)
9376 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
9377 Move functions to mactoolbox.c.
9378 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
9379 Likewise.
9380 (copy_scrap_flavor_data, mac_handle_service_event)
9381 (install_service_handler) [MAC_OSX]: Likewise.
9382 (syms_of_macselect) <Vmac_dnd_known_types>:
9383 Use mac_dnd_default_known_types.
9384
9385 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
9386 Move to mactoolbox.c.
9387 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
9388 (Fx_selection_owner_p): Add EXFUN.
9389 (install_window_handler, remove_window_handler, XSetWindowBackground):
9390 Remove externs.
9391 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
9392 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
9393 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
9394 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
9395 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
9396 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
9397 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
9398 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
9399 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
9400 (create_and_show_popup_menu, mac_get_selection_from_symbol)
9401 (mac_valid_selection_target_p, mac_clear_selection)
9402 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9403 (mac_put_selection_value, mac_selection_has_target_p)
9404 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
9405 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
9406 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
9407 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9408 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
9409 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9410 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
9411 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9412 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9413
9414 * mactoolbox.c: New file.
9415
94162008-04-18 Jason Rumney <jasonr@gnu.org>
9417
9418 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
9419
94202008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9421
9422 * character.c (Fmultibyte_char_to_unibyte):
9423 Return latin1 chars unchanged.
9424
9425 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
9426 relocated if it points to `name'.
9427
94282008-04-17 Kenichi Handa <handa@m17n.org>
9429
9430 * data.c (Faset): Allow setting a multibyte character in an
9431 ASCII-only unibyte string.
9432
9433 * lisp.h (STRING_SET_MULTIBYTE): New macro.
9434
94352008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
9436
9437 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
9438 done in config.h.
9439
94402008-04-16 Juanma Barranquero <lekktu@gmail.com>
9441
9442 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
9443 (Fchar_direction): Add usage in the docstring.
9444
94452008-04-15 Chong Yidong <cyd@stupidchicken.com>
9446
9447 * keyboard.c (read_key_sequence): Remove always-true checks.
9448
94492008-04-14 Jason Rumney <jasonr@gnu.org>
9450
9451 * w32font.c (w32font_open_internal): Set max_bounds.descent in
9452 compatibility struct, for better underline positioning.
9453
94542008-04-13 David Hansen <david.hansen@gmx.net>
9455
9456 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
9457 string.
9458
94592008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
9460
9461 * m/hp800.h (XUINT, XSET): Remove.
9462
94632008-04-12 Juanma Barranquero <lekktu@gmail.com>
9464
9465 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
9466 previous change.
9467
94682008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
9469
9470 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
9471 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
9472
94732008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9474
9475 * keymap.h (map_keymap_canonical): Declare.
9476 * xmenu.c (single_keymap_panes): Use it.
9477
94782008-04-11 Glenn Morris <rgm@gnu.org>
9479
9480 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
9481 set the target's value to that of the alias.
9482
94832008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9484
9485 * term.c (set_tty_color_mode): Left over typo.
9486
94872008-04-10 Michael Albinus <michael.albinus@gmx.de>
9488
9489 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
9490 only after check for file name handler functions. Signal, when
9491 native functionality is not supported.
9492 (syms_of_fileio): Declare it unconditionally.
9493
94942008-04-10 Jason Rumney <jasonr@gnu.org>
9495
9496 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
9497 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
9498
9499 * w32.c (logon_network_drive): Also logon to remote drives that
9500 are mapped to drive letters.
9501
95022008-04-10 Glenn Morris <rgm@gnu.org>
9503
9504 * xdisp.c (truncate-partial-width-windows): Doc fix.
9505
95062008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
9507
9508 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
9509 Move functions to minibuffer.el.
9510 (syms_of_fileio): Don't declare them.
9511
95122008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9513
9514 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
9515 (syms_of_minibuf): Remove its initialization.
9516
9517 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
9518
95192008-04-09 Juanma Barranquero <lekktu@gmail.com>
9520
9521 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
9522
95232008-04-09 Jason Rumney <jasonr@gnu.org>
9524
9525 * makefile.w32-in (distclean): Delete makefile too.
9526 (maintainer-clean): New target.
9527
9528 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
9529
9530 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
9531 for new font backend and composite cases.
9532
95332008-04-09 Jan Djärv <jan.h.d@swipnet.se>
9534
9535 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
9536 Most of the code moved to run_timers.
9537 (do_pending_atimers): Call run_timers.
9538 (run_timers): New function.
9539
9540 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
9541 run atimers.
9542
9543 * process.c (wait_reading_process_output): The same as above.
9544
95452008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9546
9547 * minibuf.c (last_exact_completion): Remove variable.
9548 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
9549 (complete_and_exit_1, complete_and_exit_2)
9550 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
9551 (Fdisplay_completion_list, display_completion_list_1)
9552 (Fminibuffer_completion_help, Fself_insert_and_exit)
9553 (Fexit_minibuffer, Fminibuffer_message): Move functions to
9554 minibuffer.el.
9555 (syms_of_minibuf): Remove corresponding initializations.
9556
9557 * keyboard.c (Qdeactivate_mark): New var.
9558 (command_loop_1): Use it to call `deactivate-mark'.
9559 (syms_of_keyboard): Initialize it.
9560
9561 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
9562 to another frame.
9563 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
9564 Don't call set_tty_color_mode.
9565 (store_frame_param): Reset previous_frame rather than call
9566 set_tty_color_mode.
9567 * term.c (set_tty_color_mode): Rewrite.
9568 * dispextern.h (set_tty_color_mode): New type.
9569 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
9570
95712008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
9572
9573 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
9574 for generic chars, which do not exist any more in emacs-unicode.
9575
95762008-04-08 Michael Albinus <michael.albinus@gmx.de>
9577
9578 * coding.c (detect_coding_emacs_mule)
9579 (Ffind_operation_coding_system): Fix typo.
9580
95812008-04-08 Jason Rumney <jasonr@gnu.org>
9582
9583 * w32uniscribe.c (SNAME): Extract only symbol name.
9584
9585 * w32font.h (struct w32_metric_cache): New struct.
9586 (w32font_info): Use it.
9587 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
9588 (CACHE_BLOCKSIZE): New constants.
9589
9590 * w32font.c (Qja, Qko, Qzh): New symbols.
9591 (syms_of_w32font): Initialise them.
9592 (font_matches_spec): Use them to filter by language.
9593 (recompute_cached_metrics): Remove function.
9594 (compute_metrics, clear_cached_metrics): New functions.
9595 (w32font_encode_char): Use them to manage metric cache.
9596 (w32font_text_extents): Cache metrics for all glyphs on demand.
9597 Delay converting glyph indices to WORD until needed.
9598 (w32font_open_internal): Initialize metric cache to empty.
9599 (registry_to_w32_charset): Charset should always be a symbol.
9600 (fill_in_logfont, list_all_matching_fonts): Family should
9601 always be a symbol.
9602
96032008-04-06 Jason Rumney <jasonr@gnu.org>
9604
9605 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
9606 Give up if glyph indices not supported. Use uniscribe obtained
9607 ABC widths for individual metrics. Map glyph clusters back to
9608 characters using fClusterStart flag. Return number of glyphs
9609 produced, not chars processed.
9610 (uniscribe_shape): Map char at FROM to current glyph.
9611
96122008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9613
9614 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
9615 Use SetMenuItemHierarchicalMenu.
9616
96172008-04-05 Jason Rumney <jasonr@gnu.org>
9618
9619 * image.c (pbm_load): Allow color values up to 65535.
9620 Throw an error if max_color_idx is outside the supported range.
9621 Report an error when image size is invalid.
9622 Read two bytes at a time when raw images have max_color_idx above 255.
9623
96242008-04-05 Eli Zaretskii <eliz@gnu.org>
9625
9626 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9627 cFileName a file name that includes `?' characters, use the 8+3
9628 alias in cAlternateFileName instead.
9629
96302008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
9631
9632 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
9633 append "CCL: Quitted" when the CCL program is quitted.
9634 (setup_ccl_program): Initialize ccl->quit_silently to zero.
9635
9636 * ccl.h (struct ccl_program): New member quit_silently.
9637
96382008-04-05 Chong Yidong <cyd@stupidchicken.com>
9639
9640 * search.c (compile_pattern_1): Treat non-nil and non-string of
9641 search-spaces-regexp as nil.
9642
9643 * minibuf.c (Fassoc_string): Tweak docstring.
9644
96452008-04-05 Eli Zaretskii <eliz@gnu.org>
9646
9647 * dired.c (Ffile_attributes): Support inode numbers wider than 32
9648 bits. Remove ugly WINDOWSNT-specific kludge introduced on
9649 2008-03-14 to force inode be positive.
9650
9651 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
9652 _S_* ones, since we now use our own sys/stat.h.
9653 (stat, fstat): Don't mangle the inode number.
9654 (init_user_info): Don't restrict UID and GID to 0-60000 range.
9655
96562008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
9657
9658 * frame.h (struct frame): Give one more bit to `visible' since we use
9659 values larger than 1 to indicate obscured frames on ttys.
9660
9661 * keymap.c (Qkeymap_canonicalize): New var.
9662 (Fmap_keymap_internal): New fun.
9663 (describe_map): Use keymap-canonicalize.
9664
9665 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
9666 (Fundo_boundary): Set them.
9667 (syms_of_undo): Initialize them.
9668 (record_point): Use them instead of last_point_position*.
9669 (last_undo_buffer): Change type.
9670
96712008-04-04 Jason Rumney <jasonr@gnu.org>
9672
9673 * w32font.c (w32font_text_extents): Use font's ascent and descent.
9674 (recompute_cached_metrics): Don't set ascent and descent per char.
9675
9676 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
9677 (uniscribe_check_otf): Add GC protection before consing.
9678 Rearrange loop for counting features.
9679
96802008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9681
9682 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
9683 buffer with byte-size of source buffer.
9684
96852008-04-03 Chong Yidong <cyd@stupidchicken.com>
9686
9687 * callint.c (Fcall_interactively): Handle temporary region even
9688 when shift-select-mode is off.
9689
96902008-04-03 Jason Rumney <jasonr@gnu.org>
9691
9692 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
9693
96942008-04-03 Kenichi Handa <handa@m17n.org>
9695
9696 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
9697 (CATEGORY_MASK_UTF_16): Likewise.
9698 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
9699 binary file.
9700 (detect_coding): Add null-byte detection for a binary file.
9701 (detect_coding_system): Likewise.
9702
97032008-04-03 Jason Rumney <jasonr@gnu.org>
9704
9705 * w32uniscribe.c: New file.
9706
9707 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
9708
9709 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
9710
9711 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
9712 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
9713 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
9714 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
9715 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
9716 (Qphonetic): New symbols.
9717 (syms_of_w32font): Initialize them.
9718 (font_supported_scripts): Use them.
9719 (w32font_list_family): List all charsets.
9720 (w32font_text_extents, recompute_cached_metrics): Fix metric
9721 calculations.
9722 (w32_enumfont_pattern_entity): Make full_type a DWORD.
9723 Give opentype fonts their own format.
9724 (font_matches_spec): New arguments backend and logfont.
9725 Handle :otf spec for uniscribe backend.
9726 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
9727 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
9728
9729 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
9730 font backend.
9731 (globals_of_w32fns): Initialize uniscribe font backend.
9732
9733 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
9734 dependencies.
9735 (w32uniscribe.$(O)): New file to build.
9736 (FONT_OBJ): Include w32uniscribe.$(O).
9737 (LIBS): Add uniscribe libraries.
9738
9739 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
9740
97412008-04-02 Chong Yidong <cyd@stupidchicken.com>
9742
9743 * callint.c (Vshift_select_mode): New var.
9744 (Finteractive): Document new ^ spec.
9745 (Fcall_interactively): Call handle-shift-selection if the ^ spec
9746 is present.
9747
9748 * keyboard.c (Vthis_command_keys_shift_translated): New var.
9749 (command_loop_1): Avoid running the direct display versions of
9750 forward-char and backward-char if shift-selection may occur.
9751 (read_key_sequence): Set Vthis_command_keys_shift_translated if
9752 shift-translation takes place.
9753
9754 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
9755 avoid clobbering by define-minor-mode.
9756
9757 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
9758 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
9759
9760 * syntax.c (Fforward_word): Add ^ interactive spec.
9761
9762 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
9763 (Fscroll_right): Add ^ interactive spec.
9764
97652008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
9766
9767 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
9768
9769 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
9770
9771 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
9772
97732008-03-31 Juri Linkov <juri@jurta.org>
9774
9775 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
9776
97772008-03-30 Jan Djärv <jan.h.d@swipnet.se>
9778
9779 * gtkutil.c (xg_set_geometry): Fix indentation.
9780 (xg_resize_outer_widget): Remove.
9781 (x_wm_size_hint_off): Fix indentation.
9782 (xg_frame_set_char_size): Call flush_and_sync after
9783 gtk_window_resize.
9784 (x_wm_set_size_hint): Pass NULL as geometry window to
9785 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
9786 Add menu bar and tool bar height to base height.
9787 (xg_update_frame_menubar, free_frame_menubar)
9788 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
9789 (update_frame_tool_bar, free_frame_tool_bar):
9790 Change xg_resize_outer_widget to xg_frame_set_char_size.
9791
97922008-03-30 Michael Albinus <michael.albinus@gmx.de>
9793
9794 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
9795 (Fdbus_call_method): New parameter TIMEOUT.
9796 (dbus-send-signal): Optimize UNGCPRO call.
9797
97982008-03-29 Juri Linkov <juri@jurta.org>
9799
9800 * window.c (Fdisplay_buffer): Move call to
9801 Vsplit_window_preferred_function out of conditions that check
9802 if window is eligible for vertical splitting.
9803 When Vsplit_window_preferred_function is non-nil, call it and use
9804 its non-nil return value as window. Otherwise, continue doing
9805 vertical splitting using Fsplit_window with arg horflag=nil.
9806 (syms_of_window) <Vsplit_window_preferred_function>: Change the
9807 default value from `split-window' to nil.
9808
98092008-03-29 Juri Linkov <juri@jurta.org>
9810
9811 * callint.c (Fcall_interactively): Revert 2008-03-16 change
9812 for interactive code letters 'b' and 'B'.
9813
98142008-03-29 Eli Zaretskii <eliz@gnu.org>
9815
9816 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
9817 multibyte string.
9818
98192008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
9820
9821 * keyboard.c (pending_funcalls): New var.
9822 (timer_check): Run it.
9823 (syms_of_keyboard): Initialize it.
9824 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
9825 (Vdelete_terminal_functions): New vars.
9826 (syms_of_terminal): Initialize them.
9827 (Fdelete_terminal): Run delete-terminal-functions.
9828 * xdisp.c (safe_eval): Rewrite.
9829 (safe_call2): New fun.
9830 * frame.c (Qdelete_frame_functions): New var.
9831 (syms_of_frame): Initialize it.
9832 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
9833 * lisp.h (safe_call2, pending_funcalls): Declare.
9834
98352008-03-28 Andreas Schwab <schwab@suse.de>
9836
9837 * indent.c (Fmove_to_column): Move declaration before statements.
9838
98392008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
9840
9841 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
9842 (struct frame): Use bit fields for boolean vars.
9843
9844 * process.c (server_accept_connection): Simplify naming.
9845 (emacs_get_tty_pgrp): Use SDATA.
9846
9847 * coding.c (decode_coding_object): Fix last change.
9848
98492008-03-27 Jason Rumney <jasonr@gnu.org>
9850
9851 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
9852
98532008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
9854
9855 * charset.c (Fdefine_charset_internal): Change the way of
9856 registering charsets in Vcharset_order_list.
9857 (syms_of_charset): Make the charset `eight-bit' supplementary.
9858
98592008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
9860
9861 * regex.c (EXTEND_BUFFER): Change order of pointer addition
9862 operations, to avoid having the difference between pointers
9863 overflow.
9864
98652008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
9866
9867 * indent.c (check_display_width): New fun.
9868 (scan_for_column): Use it.
9869
9870 * data.c (syms_of_data): Mark most-positive-fixnum and
9871 most-negative-fixnum as constants.
9872
9873 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
9874
9875 * indent.c (scan_for_column): Extract from current_column_1.
9876 Merge with the same code from Fmove_to_column.
9877 (current_column_1, Fmove_to_column): Use it.
9878
98792008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
9880
9881 * keymap.c (map_keymap_internal): New fun.
9882 (map_keymap): Use it.
9883 (Fmap_keymap_internal): New fun.
9884 (Fmap_keymap): Remove left-out test from before make_save_value.
9885
9886 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
9887
9888 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
9889 Use XCAR/XCDR.
9890
9891 * process.h (struct Lisp_Process): Remove filter_multibyte.
9892 * process.c (QCfilter_multibyte): Remove.
9893 (setup_process_coding_systems): Don't use filter_multibyte.
9894 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
9895 (read_process_output): Don't adjust multibyteness to filter_multibyte.
9896 (Fset_process_filter_multibyte): Change the coding-system to
9897 approximate the previous behavior.
9898 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
9899 coding-system.
9900
9901 * coding.c (decode_coding_object): When not decoding into a buffer,
9902 obey the coding system's preference of (uni|multi)byte.
9903
99042008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
9905
9906 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
9907 every char is changed and has a different byte-length.
9908 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
9909 Fix int -> EMACS_INT.
9910
99112008-03-23 David Hansen <david.hansen@gmx.net>
9912
9913 * dbusbind.c (xd_read_message): Remove extra copying of message
9914 strings. Check for NULL `interface' or `member'.
9915
99162008-03-22 Eli Zaretskii <eliz@gnu.org>
9917
9918 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9919 cFileName a file name that includes `?' characters, use the 8+3
9920 alias in cAlternateFileName instead.
9921
99222008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
9923
9924 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
9925
99262008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9927
9928 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
9929 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
9930 work on current_buffer only instead (that was already the case
9931 for some of the code anyway).
9932 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
9933 (temp_set_point, temp_set_point_both): Use EMACS_INT.
9934 (SET_PT, SET_PT_BOTH): Adjust.
9935 * intervals.h (set_point, temp_set_point, set_point_both)
9936 (temp_set_point_both): Remove redundant declarations.
9937
99382008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9939
9940 * fileio.c (Finsert_file_contents):
9941 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
9942 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
9943 when buffer != current_buffer anyway.
9944
99452008-03-20 Andreas Schwab <schwab@suse.de>
9946
9947 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
9948 as default.
9949
99502008-03-19 Jason Rumney <jasonr@gnu.org>
9951
9952 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
9953 (syms_of_w32fns): Initialize them.
9954 (HOURGLASS_ID): New constant.
9955 (x_window_to_frame): Don't check hourglass_window.
9956 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
9957 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
9958 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
9959 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
9960 Only change the cursor if hourglass is not active.
9961 (Fx_create_frame): Initialize frame's current_cursor.
9962 (hourglass_atimer): Remove.
9963 (hourglass_started): New function.
9964 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
9965 (show_hourglass): Adapt to w32, changing argument to frame.
9966
9967 * w32term.h (struct w32_output): Remove hourglass_window.
9968 Add current_cursor.
9969
9970 * eval.c (call_debugger, Fsignal):
9971 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
9972 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
9973 (Fexecute_extended_command, cancel_hourglass_unwind):
9974 * minibuf.c (read_minibuf):
9975 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
9976
99772008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
9978
9979 * window.c (run_funs): New fun.
9980 (run_window_configuration_change_hook): Use it to run the buffer-local
9981 and the global part of the hook.
9982
9983 * xdisp.c (format_mode_line_unwind_data): Add window argument.
9984 (unwind_format_mode_line): Restore selected window.
9985 (x_consider_frame_title, Fformat_mode_line): Set selected window.
9986
99872008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9988
9989 * editfns.c (Fchar_equal): Check they are valid characters.
9990
9991 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
9992
99932008-03-17 Andreas Schwab <schwab@suse.de>
9994
9995 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
9996 against a charset.
9997
9998 * lisp.h (Fbuffer_list): Declare.
9999
100002008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 10001
aac0c6e3
MR
10002 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
10003 handlebox_widget is != 0.
10004
100052008-03-16 Juri Linkov <juri@jurta.org>
10006
10007 * callint.c (Fcall_interactively): For interactive code letters
10008 'b' and 'B' put the buffer list into the list of default "future"
10009 values of the minibuffer.
10010
100112008-03-16 Andreas Schwab <schwab@suse.de>
10012
10013 * keyboard.c (read_key_sequence): Fix downcasing of letters with
10014 modifiers.
10015
10016 * regex.c (re_match_2_internal): Correct matching of a charset
10017 against latin-1 characters.
10018
100192008-03-16 Kenichi Handa <handa@m17n.org>
10020
10021 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
10022 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
10023 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
10024 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
10025 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
10026 CHAR_STRING_ADVANCE.
10027 (produce_chars): Fix for the case that the source and the
10028 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
10029 instead of CHAR_STRING_ADVANCE.
10030 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
10031 STRING_CHAR_ADVANCE.
10032
100332008-03-15 Andreas Schwab <schwab@suse.de>
10034
10035 * regex.c (re_match_2_internal): Correct matching of eight bit
10036 characters in unibyte strings.
10037
100382008-03-15 Martin Rudalics <rudalics@gmx.at>
10039
10040 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
10041 at end of range when it coincides with the end of the buffer.
10042
100432008-03-14 Eli Zaretskii <eliz@gnu.org>
10044
10045 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
10046
10047 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
10048
100492008-03-14 Jason Rumney <jasonr@gnu.org>
10050
10051 * editfns.c (initial_tz): New variable.
10052 (syms_of_editfns): Initialize it.
10053 (Fset_time_zone_rule): Set it when first called.
10054 Use it when TZSTRING is nil.
10055
10056 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
10057 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
10058 (monitor_from_point_fn, get_monitor_info_fn): New globals.
10059 (globals_of_w32fns): Initialize them.
10060 (compute_tip_xy): Use them to position tooltips.
10061
100622008-03-14 Glenn Morris <rgm@gnu.org>
10063
10064 * emacs.c (main): Revert previous change.
10065 (standard_args): Revert -internal-script back to -scriptload,
10066 and remove the long-option form.
10067
100682008-03-13 Glenn Morris <rgm@gnu.org>
10069
10070 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
10071 Remove option -enable-font-backend.
10072
100732008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
10074
10075 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
10076
100772008-03-11 Jan Djärv <jan.h.d@swipnet.se>
10078
10079 * xterm.c (x_connection_closed): For GTK: If this is the last
10080 terminal just exit without closing the display.
10081
100822008-03-11 Jason Rumney <jasonr@gnu.org>
10083
10084 * w32font.c (w32font_full_name): Use floor to round.
10085
f0131492 100862008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
10087
10088 * sound.c (alsa_configure): Declare vol at beginning of block.
10089
10090 * fontset.c (Ffontset_info): Remove extra semicolon.
10091
100922008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
10093
10094 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
10095 size of resulting string.
10096
100972008-03-10 Jason Rumney <jasonr@gnu.org>
10098
10099 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
10100
101012008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10102
10103 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
10104 Don't pretend as if characters with display property haven't been
10105 consumed for string-replacing-string case.
10106
101072008-03-08 Kim F. Storm <storm@cua.dk>
10108
10109 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
10110 (get_next_display_element, next_element_from_string)
10111 (next_element_from_ellipsis, next_element_from_buffer): Use it.
10112
101132008-03-08 Andreas Schwab <schwab@suse.de>
10114
10115 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
10116
101172008-03-06 Jason Rumney <jasonr@gnu.org>
10118
10119 * w32font.c (w32_registry): Take font_type argument. Use ANSI
10120 when charset not specified. Only translate ANSI to unicode when
10121 font_type is truetype.
10122 (w32font_coverage_ok): New function.
10123 (add_font_entity_to_list): Use it to filter unsuitable fonts.
10124
101252008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
10126
10127 * lread.c (Fread_char): Resolve modifiers.
10128 (Fread_char_exclusive): Likewise.
10129
10130 * character.c (char_resolve_modifier_mask): New function.
10131 (char_string): Use char_resolve_modifier_mask.
10132 (Fchar_resolve_modifiers): New function.
10133 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
10134 function.
10135
101362008-03-04 Jason Rumney <jasonr@gnu.org>
10137
10138 * makefile.w32-in: Always include w32font.c in the build.
10139 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
10140
101412008-03-04 Andreas Schwab <schwab@suse.de>
10142
10143 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
10144 (versionclean): Likewise.
10145
101462008-03-04 Juanma Barranquero <lekktu@gmail.com>
10147
10148 * .cvsignore: Add oo.
10149
101502008-03-03 Andreas Schwab <schwab@suse.de>
10151
10152 * coding.c (decode_coding_object): Inhibit gap shrinking while
10153 decoding in place.
10154
101552008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
10156
10157 * w32term.c: Remove unused include "gnu.h".
10158 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
10159
10160 * gnu.h: Rename to ...
10161 * emacs-icon.h: ... this.
10162 * xterm.c: Use emacs-icon.h instead of gnu.h.
10163 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
10164
101652008-03-03 Juanma Barranquero <lekktu@gmail.com>
10166
10167 * w32font.c: Include math.h.
10168
101692008-03-03 Jason Rumney <jasonr@gnu.org>
10170
10171 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
10172 Compute options separately.
10173 (w32font_open_internal): Set glyph_idx before caching metrics.
10174
10175 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
10176 Define if system headers don't.
10177 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
10178 (w32font_encode_char): Don't declare here.
10179
10180 * w32font.c (Quniscribe, QCformat): New symbols.
10181 (syms_of_w32font): Define them.
10182 (w32font_has_char): Indicate uncertainty.
10183 (w32font_encode_char): Encode as glyph point. Make static.
10184 (recompute_cached_metrics): New function.
10185 (w32font_open_internal): Use it. Set font to use glyph points
10186 initially. Set format based on type of font.
10187 (w32font_text_extents, w32font_draw): Optionally use glyph points.
10188 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
10189 on it. Set format based on information available here.
10190 (add_font_entity_to_list): Identify backend based on opentype_only.
10191
101922008-03-02 Andreas Schwab <schwab@suse.de>
10193
10194 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
10195
10196 * coding.c (decode_coding_big5, produce_chars):
10197 Fix typos in last change.
10198
101992008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
10200
10201 * gnu.h: New icon.
10202
102032008-03-02 Kenichi Handa <handa@m17n.org>
10204
10205 * coding.c (decode_coding_utf_8): When eol-type of CODING is
10206 `dos', don't decode '\r' if that is the last in the source.
10207 (decode_coding_utf_16, decode_coding_emacs_mule)
10208 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10209 (decode_coding_raw_text, decode_coding_charset): Likewise.
10210 (produce_chars): Don't decode EOL here. Use EMACS_INT.
10211
102122008-03-01 Jason Rumney <jasonr@gnu.org>
10213
10214 * w32font.c (w32font_full_name): Report point size for scalable fonts.
10215
102162008-03-01 Kim F. Storm <storm@cua.dk>
10217
10218 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
10219
102202008-03-01 Jason Rumney <jasonr@gnu.org>
10221
10222 * w32font.c (w32font_full_name): New function.
10223 (w32font_open_internal): Use it.
10224
102252008-03-01 Kim F. Storm <storm@cua.dk>
10226
10227 * dispnew.c (line_draw_cost): Fix invalid glyph check.
10228
102292008-03-01 Jason Rumney <jasonr@gnu.org>
10230
10231 * font.c (font_unparse_fcname): Increase len when style is a symbol.
10232
102332008-03-01 Jan Djärv <jan.h.d@swipnet.se>
10234
10235 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
10236 xg_frame_resized when the event is for the edit widget.
10237
10238 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
10239
10240 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
10241 set_char_size.
10242 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
10243 operations on widgets here. Just set frame size if needed.
10244 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
10245 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
10246 (x_wm_set_size_hint): Set size hints on the edit widget only, not
10247 the whole frame.
10248 (xg_create_tool_bar): Move attachment of the tool bar to
10249 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
10250 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
10251
102522008-03-01 Jason Rumney <jasonr@gnu.org>
10253
10254 * w32fns.c (w32_msg_pump): Disable debug code.
10255
102562008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10257
10258 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
10259
102602008-02-29 Chong Yidong <cyd@stupidchicken.com>
10261
10262 * xdisp.c (next_overlay_string): Don't set
10263 overlay_strings_at_end_processed_p if we're currently reading from
10264 a display string.
10265
102662008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
10267
10268 * xdisp.c (get_overlay_strings_1): Fix typo.
10269
102702008-02-29 Chong Yidong <cyd@stupidchicken.com>
10271
10272 * xdisp.c (get_overlay_strings_1): Add missing argument type.
10273
102742008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
10275
10276 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
10277
10278 * xdisp.c (display_mode_element): Cancel the previous change.
10279 (decode_mode_spec): Likewise.
10280 (handle_auto_composed_prop): Don't make composition if it->string
10281 is a string.
10282
102832008-02-27 Kim F. Storm <storm@cua.dk>
10284
10285 * lisp.h (GLYPH): Change type from int to struct with separate char
10286 and face_id members.
10287 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
10288 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
10289 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
10290 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
10291 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
10292 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
10293 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
10294 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
10295 handle new Lisp glyph code encoding, either an integer or a cons.
10296
10297 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
10298 (GLYPH_ALIAS): Delete.
10299 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
10300 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
10301 (GLYPH_FROM_CHAR): Replace macro by ...
10302 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
10303
10304 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
10305 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
10306 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
10307 (GLYPH_INVALID_P): New macro.
10308 (spec_glyph_lookup_face): Update prototype.
10309
10310 * dispnew.c (line_draw_cost): Adapt to new glyph type.
10311 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
10312 new glyph code encoding.
10313 (spec_glyph_lookup_face): No return value; update passed glyph instead.
10314 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
10315
10316 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10317 Adapt to new glyph type and new glyph code encoding.
10318
10319 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
10320
10321 * indent.c (current_column, current_column_1, Fmove_to_column)
10322 (compute_motion): Adapt to new glyph code encoding.
10323
10324 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
10325
103262008-02-27 Chong Yidong <cyd@stupidchicken.com>
10327
10328 * process.c (wait_reading_process_output): Check for window
10329 changes caused by timers.
10330 Suggested by Johan Bockgård.
10331
103322008-02-27 Glenn Morris <rgm@gnu.org>
10333
10334 * emacs.c (USAGE1): Add `--disable-font-backend'.
10335
103362008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
10337
10338 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
10339 is made to the buffer.
10340
103412008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
10342
10343 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
10344 (face_at_string_position):
10345 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
10346 (face_at_string_position):
10347 * xdisp.c (display_string, next_overlay_change):
10348 * buffer.h (overlays_at):
10349 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
10350 Update callers.
10351
103522008-02-26 Chong Yidong <cyd@stupidchicken.com>
10353
10354 * editfns.c (Fformat): Doc fix.
10355
103562008-02-26 Juanma Barranquero <lekktu@gmail.com>
10357
10358 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
10359 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
10360 (Ffont_otf_alternates, Fquery_font): Doc fixes.
10361
103622008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10363
10364 * buffer.c (Fbuffer_swap_text): New function.
10365 (syms_of_buffer): Defsubr it.
10366
103672008-02-25 Chong Yidong <cyd@stupidchicken.com>
10368
10369 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
10370
103712008-02-25 Jason Rumney <jasonr@gnu.org>
10372
10373 * w32font.c (w32font_draw): Draw one character at a time when padding.
10374
103752008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10376
10377 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
10378 Handle a nil arg. Use run_window_configuration_change_hook.
10379 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
10380 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
10381 Use run_window_configuration_change_hook.
10382
103832008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10384
10385 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
10386 1-pixel width.
10387
103882008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10389
10390 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
10391 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
10392 if the glyph in the font is zero pixel with.
10393
10394 * dispextern.h (struct glyph_string): New member padding_p.
10395
10396 * w32font.c (w32font_draw): Pay attention to s->padding_p.
10397
10398 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
10399
10400 * xfont.c (xfont_draw): Pay attention to s->padding_p.
10401
10402 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
10403
10404 * font.c: If the font driver doesn't have `shape' function, return Qnil.
10405
104062008-02-25 Jason Rumney <jasonr@gnu.org>
10407
10408 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
10409
104102008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
10411
10412 Allow fine-grained image-cache flushing.
10413 * dispextern.h (struct image): Add `dependencies' field.
10414 (clear_image_caches): Change arg to Lisp_Object.
10415 * image.c (make_image): Initialize `dependencies' field.
10416 (clear_image_cache): Change arg to allow fine-grained flushing.
10417 Perform the flush even if image-cache-eviction-delay is nil.
10418 (clear_image_caches): Change arg to Lisp_Object.
10419 (Fclear_image_cache): Expand meaning of the argument.
10420 (mark_image): Mark `dependencies' field.
10421 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
10422 (lface_hash): Use XHASH rather than XFASTINT.
10423 (face_at_buffer_position): Fix int -> EMACS_INT position.
10424 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
10425 (select_frame_for_redisplay): Remove code duplication.
10426 (redisplay_internal): Adapt arg to call to clear_image_caches.
10427
104282008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
10429
10430 * s/vms4-0.h:
10431 * s/vms4-2.h:
10432 * s/vms4-4.h:
10433 * s/vms5-5.h: Remove, unused.
10434
10435 * s/irix5-2.h:
10436 * s/irix6-0.h:
10437 * s/riscos5.h:
10438 * s/mach-bsd4-3.h:
10439 * m/mips4.h: Remove files for obsolete systems.
10440
10441 * Makefile.in:
10442 * filelock.c:
10443 * unexmips.c:
10444 * m/hp9000s300.h:
10445 * m/iris4d.h:
10446 * s/aix3-1.h:
10447 * s/hpux.h:
10448 * s/msdos.h:
10449 * s/usg5-0.h:
10450 * s/usg5-2-2.h:
10451 * s/usg5-2.h:
10452 * s/usg5-3.h: Remove references to obsolete variables.
10453
10454 * s/irix5-0.h: Remove, move all the contents ...
10455 * s/irix6-5.h: ... here. Simplify.
10456 * config.in: Regenerate.
10457
104582008-02-24 Jason Rumney <jasonr@gnu.org>
10459
10460 * w32term.c (x_draw_glyph_string_background): Clear the background
10461 manually when cleartype is in use.
10462 (x_draw_glyph_string_foreground): Draw text transparently when
10463 cleartype is in use.
10464
10465 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
10466 a font into it unless we have to.
10467
104682008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10469
10470 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
10471 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 10472
aac0c6e3
MR
104732008-02-18 Jason Rumney <jasonr@gnu.org>
10474
10475 * w32fns.c (Fw32_shell_execute): Encode parameters.
10476
104772008-02-09 Eli Zaretskii <eliz@gnu.org>
10478
10479 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
10480
104812008-02-05 Juanma Barranquero <lekktu@gmail.com>
10482
10483 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
10484
104852008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
10486
10487 * xterm.c (x_set_offset): Don't change the gravity if
10488 CHANGE_GRAVITY is -1.
10489
104902008-02-23 Chong Yidong <cyd@stupidchicken.com>
10491
10492 * fileio.c (auto_save_error_occurred): New var.
10493 (auto_save_error): Set it.
10494 (Fdo_auto_save): Don't overwrite the error message if an auto-save
10495 error occurred.
10496
104972008-02-23 Eli Zaretskii <eliz@gnu.org>
10498
10499 * w32.c (globals_of_w32): Add initializations for
10500 g_b_init_get_sid_sub_authority and
10501 g_b_init_get_sid_sub_authority_count.
10502
105032008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
10504
10505 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
10506 (font_parse_xlfd): Use them for sanity check.
10507 (Finternal_set_font_style_table): Make sure the table is bijective.
10508
10509 Consolidate the image_cache to the terminal struct.
10510 * termhooks.h (P_): Remove redundant def.
10511 (struct terminal): New field `image_cache'.
10512 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
10513 of FRAME_X_IMAGE_CACHE.
10514 * xterm.h (struct x_display_info): Remove image_cache field.
10515 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10516 * w32term.h (struct w32_display_info): Remove image_cache field.
10517 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10518 * macterm.h (struct mac_display_info): Remove image_cache field.
10519 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10520 * xterm.c (x_term_init):
10521 * w32term.c (w32_term_init):
10522 * macterm.c (mac_term_init): Set the image_cache in the terminal.
10523 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
10524 Remove declarations.
10525 (clear_image_caches, mark_image_cache): New declarations.
10526 * xfaces.c (clear_face_cache):
10527 * xdisp.c (redisplay_internal): Use clear_image_caches.
10528 * image.c (clear_image_cache): Don't check that a frame is on
10529 a window-system before checking if it shares the same cache.
10530 (clear_image_caches): New function.
10531 (Fclear_image_cache): Use it.
10532 (mark_image): Move from allo.c.
10533 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
10534 * alloc.c (mark_image, mark_image_cache): Move to image.c.
10535 (mark_object): Don't call mark_image_cache for frames.
10536 (mark_terminals): Call mark_image_cache.
10537
10538 * lisp.h (Fdelete_terminal): Declare.
10539
10540 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
10541 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
10542 wrong_type_argument.
10543
105442008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
10545
10546 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
10547 malayalam.el, and tamil.el. Add sinhala.el.
10548
105492008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
10550
10551 * xterm.c (x_connection_closed): Consolidate identical tests.
10552 (x_delete_terminal): Don't crash if called via x_connection_closed.
10553
105542008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
10555
10556 * xdisp.c (decode_mode_spec): New arg string.
10557 (display_mode_element): Adjust for the above change.
10558
105592008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10560
10561 * callint.c (Fcall_interactively): Use AREF.
10562
105632008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
10564
10565 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
10566
105672008-02-18 Jan Djärv <jan.h.d@swipnet.se>
10568
10569 * xfns.c (Fx_show_tip): Set string to " " if empty.
10570
105712008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
10572
10573 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
10574 with Qt.
10575
105762008-02-17 Kenichi Handa <handa@m17n.org>
10577
10578 * ftfont.c (ftfont_shape): Return Lispy number.
10579
10580 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
10581 for GCs.
10582 (Finternal_set_font_selection_order): Call font_update_sort_order
10583 only when enable_font_backend is set.
10584 (realize_x_face): Set face->font_info to that of default face only
10585 when enable_font_backend is set.
10586
10587 * xdisp.c (handle_composition_prop): Set it->c to the fist
10588 character of the composed region.
10589 (fill_composite_glyph_string): Set base_face->font_info to
10590 s->font_info. Get a face for ascii from base_face->ascii_face.
10591 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
10592 with a face already decided.
10593 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
10594 non-negative.
10595 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
10596 call font_prepare_composition unconditionally.
10597
10598 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
10599
10600 * xterm.h (struct x_display_info): New member font.
10601
10602 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
10603 (x_set_mouse_face_gc, x_new_font): Likewise.
10604 (x_term_init): Setup display_info->font.
10605 (x_delete_terminal): Free display_info->font.
10606
10607 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
10608
10609 * ftxfont.c (ftxfont_default_fid): Delete it.
10610 (ftxfont_open): Set xfont->fid to 0.
10611 (ftxfont_end_for_frame): Clear data specific to the frame and the
10612 font-driver.
10613
10614 * xftfont.c (xftfont_default_fid): Delete it.
10615 (xftfont_open): Set xfont->fid to 0.
10616
10617 * fontset.c (FONTSET_OBJLIST): New macro.
10618 (fontset_find_font): Update font-object list of the fontset.
10619 (free_realized_fontset): New function.
10620 (free_face_fontset): Call free_realized_fontset.
10621 (Ffont_info): Call font_close_object only when enable_font_backend
10622 is set.
10623
10624 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
10625 [HAVE_NTGUI]: Include w32term.h.
10626 [MAC_OS]: Include macterm.ch.
10627 (font_otf_ValueRecord): Use make_number.
10628 (font_finish_cache): Fix handling of reference count.
10629 (font_clear_cache): Update num_fonts.
10630 (font_open_entity): Update smallest_char_width and
10631 smallest_font_height of the frame.
10632 (font_close_object): Update num_fonts.
10633 (Fclear_font_cache): Fix finding the target cache data.
10634
106352008-02-16 Glenn Morris <rgm@gnu.org>
10636
10637 * fontset.c (Finternal_char_font): Fix compilation warning.
10638
106392008-02-16 Eli Zaretskii <eliz@gnu.org>
10640
10641 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
10642 instead of char arrays. Enlarge the size of array passed to
10643 get_token_information.
10644
10645 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
10646 warnings.
10647
106482008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
10649
10650 * .gdbinit: Don't set `args', it breaks gdb --args.
10651
106522008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
10653
10654 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
10655 within a narrowed buffer.
10656
106572008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
10658
10659 * coding.c (decode_coding_object, encode_coding_object):
10660 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
10661
106622008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
10663
10664 * coding.c (coding_set_destination): Use BEG_BYTE rather than
10665 hardcoding 1.
10666 (detect_coding_system):
10667 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
10668 (string_char_to_byte, string_byte_to_char, insert_from_gap):
10669 * insdel.c (insert_from_gap):
10670 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
10671 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
10672 (string_to_multibyte):
10673 * character.c (chars_in_text, multibyte_chars_in_text):
10674 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
10675
10676 * character.h (FETCH_STRING_CHAR_ADVANCE)
10677 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
10678 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
10679 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
10680
10681 * casefiddle.c (casify_region): Only call after-change and composition
10682 functions on the part of the region that was changed.
10683
10684 * keyboard.c (read_avail_input):
10685 * frame.c (Fdelete_frame): Call Fdelete_terminal.
10686
106872008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10688
10689 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
10690 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
10691
106922008-02-11 Juanma Barranquero <lekktu@gmail.com>
10693
10694 * w32menu.c (push_submenu_start, push_submenu_end)
10695 (push_left_right_boundary, push_menu_pane, push_menu_item):
10696 * keyboard.c (read_key_sequence): Don't pass args with side effects
10697 to AREF, it fails when compiling with -DENABLE_CHECKING.
10698
106992008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
10700
10701 * Makefile.in (${lispsource}international/charprop.el):
10702 Delete this target.
10703
10704 * search.c (boyer_moore): Fix incorrect synching of the trunk and
10705 emacs-unicode-2.
10706
107072008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10708
10709 * terminal.c (Fdelete_terminal): Clean up the `force' path.
10710
107112008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10712
10713 * frame.c (Qnoelisp): New symbol.
10714 (syms_of_frame): Initialize it.
10715 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
10716 harmless Elisp code, from a strong `force' from x_connection_closed.
10717 * frame.h (Qnoelisp): Declare.
10718 * xterm.c (x_connection_closed): Pass `noelisp'.
10719
10720 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
10721 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
10722 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
10723 rather than `int' for the type of `type'.
10724
107252008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
10726
10727 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
10728
10729 * Makefile.in (GNUC): Remove support for gcc-1.x.
10730
107312008-02-10 Richard Stallman <rms@gnu.org>
10732
10733 * lisp.h (ASET): Use AREF, not ASLOT.
10734
107352008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10736
10737 * lisp.h (ASET): Check bounds.
10738
107392008-02-10 Glenn Morris <rgm@gnu.org>
10740
10741 * buffer.c (mode-name): Doc fix.
10742
107432008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10744
10745 * Makefile.in:
10746 * emacs.c:
10747 * gmalloc.c:
10748 * keyboard.c:
10749 * lisp.h:
10750 * m/ibm370aix.h:
10751 * process.c:
10752 * regex.c:
10753 * s/hpux.h:
10754 * sysdep.c:
10755 * sysselect.h:
10756 * systty.h:
10757 * unexec.c:
10758 * w32term.c:
10759 * xsmfns.c:
10760 * xterm.c: Remove code that deals with obsolete variables.
10761
10762 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
10763
10764 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
10765 nothing else needs it anymore.
10766
107672008-02-09 Eli Zaretskii <eliz@gnu.org>
10768
10769 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
10770 instead of unibyte_char_to_multibyte.
10771
107722008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10773
10774 * s/gnu-linux.h: Remove commented out code.
10775
10776 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
10777
10778 * Makefile.in: Update what RMS says about using autoconf.
10779 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
10780 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
10781 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
10782 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
10783
107842008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
10785
10786 * keymap.c (Fkey_description): Move side effect outside of macro call.
10787
10788 * xfaces.c (Finternal_make_lisp_face):
10789 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
10790
10791 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
10792 (syms_of_fontset): Use ASET.
10793
10794 * fns.c (concat): Move side effect outside of macro call.
10795 (hash_clear): Use ASET.
10796
107972008-02-08 Richard Stallman <rms@gnu.org>
10798
10799 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
10800 If FORCE, and frame has a surrogate minibuffer for another frame,
10801 delete the other frame first.
10802
108032008-02-07 Timo Savola <timo.savola@iki.fi>
10804
10805 * xterm.c (x_detect_focus_change): Handle embed client message.
10806 (handle_one_xevent): Ditto.
10807 (handle_one_xevent): If embedded and we get a button press/release,
10808 request focus.
10809 (xembed_set_info, xembed_send_message): New functions.
10810 (x_make_frame_visible): Call xembed_set_info if embedded.
10811 (x_make_frame_invisible): Call xembed_set_info if embedded.
10812 (x_term_init): Initialize Xatom_XEMBED.
10813 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
10814 (x_iconify_frame): Ditto.
10815
10816 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
10817 (enum xembed_info, enum xembed_message, enum xembed_focus)
10818 (enum xembed_modifier, enum xembed_accelerator): New.
10819 (xembed_set_info, xembed_send_message): Declare.
10820 (FRAME_X_EMBEDDED_P): New.
10821
10822 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
10823 gtk_plug_new.
10824
10825 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
10826 window ID of a frame.
10827 (x_window): Reparent frame if embedded.
10828 (Fx_create_frame): Don't set border width if embedded.
10829
10830 * emacs.c (USAGE3): Add --parent-id.
10831 (standard_args): Ditto.
10832
108332008-02-07 Jan Djärv <jan.h.d@swipnet.se>
10834
10835 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
10836
108372008-02-07 Jim Meyering <meyering@redhat.com>
10838
10839 Use "do...while (0)", not "if (1)...else" in macro definitions.
10840 The latter provokes a warning from gcc about the empty else, when
10841 followed by ";". Also, without that trailing semicolon, it would
10842 silently swallow up any following statement.
10843 * syntax.h (SETUP_SYNTAX_TABLE)
10844 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
10845 * buffer.h (DECODE_POSITION): Likewise.
10846 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
10847 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
10848 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
10849 (FETCH_CHAR_ADVANCE): Likewise.
10850 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
10851
108522008-02-07 Jim Meyering <meyering@redhat.com>
10853
10854 * lread.c [lint]: Don't include <sys/inode.h>.
10855
108562008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
10857
10858 * xselect.c (x_handle_dnd_message):
10859 * xmenu.c (digest_single_submenu, xmenu_show):
10860 * xdisp.c (with_echo_area_buffer_unwind_data)
10861 (format_mode_line_unwind_data, unwind_format_mode_line)
10862 (display_menu_bar):
10863 * eval.c (Ffetch_bytecode):
10864 * doc.c (store_function_docstring):
10865 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
10866 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
10867 * buffer.c (add_overlay_mod_hooklist): Use ASET.
10868
108692008-02-07 Kenichi Handa <handa@m17n.org>
10870
10871 * ftxfont.c (ftxfont_open): Don't set
10872 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
10873
10874 * ftfont.c (ftfont_open): Fix previous change.
10875
108762008-02-06 Jason Rumney <jasonr@gnu.org>
10877
10878 * w32font.c (w32font_text_extents): Fill in lbearing metric.
10879 Use cached metrics for ASCII characters.
10880 (w32font_open_internal): Don't set font's owning_frame.
10881 Cache metrics for ASCII characters.
10882
10883 * w32font.h (struct w32font_info): Add ascii_metrics.
10884 Remove owning_frame.
10885
108862008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
10887
10888 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
10889 to negative value.
10890
10891 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
10892
10893 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
10894
10895 * charset.c (syms_of_charset): Set QCtest and Qeq.
10896
108972008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
10898
10899 * process.c (Fstart_process):
10900 * callproc.c (Fcall_process): Handle the case where
10901 Funhandled_file_name_directory returns nil.
10902
10903 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
10904 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
10905 * font.c (check_gstring): Use them and AREF to access the vector before
10906 we know it's really a gstring.
10907 (Ffont_shape_text): Fix typo.
46e722a9 10908 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
10909
10910 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
10911 Declare.
10912
10913 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
10914
109152008-02-05 Jason Rumney <jasonr@gnu.org>
10916
10917 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
10918 Set smallest_font_height and smallest_char_width in display info.
10919
109202008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
10921
10922 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
10923
109242008-02-05 Miles Bader <miles@gnu.org>
10925
10926 * xfaces.c (get_lface_attributes, merge_named_face)
10927 (lookup_named_face, lookup_derived_face, realize_named_face):
10928 Revert 2008-02-01 change by cyd@stupidchicken.com.
10929
109302008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
10931
10932 * fontset.c (Ffontset_info): Handle the case of inhibitting the
10933 fallback fonts.
10934 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
10935
109362008-02-04 Jason Rumney <jasonr@gnu.org>
10937
10938 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
10939 set full_name.
10940 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
10941
109422008-02-03 Jason Rumney <jasonr@gnu.org>
10943
10944 * makefile.w32-in (OBJ1): Include font.o here.
10945 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
10946
109472008-02-02 Jason Rumney <jasonr@gnu.org>
10948
10949 * makefile.w32-in (temacs): Bump EMHEAP to 21.
10950
109512008-02-01 Jason Rumney <jasonr@gnu.org>
10952
10953 * s/cygwin.h: Define VIRT_ADDR_VARIES.
10954
10955 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
10956
109572008-02-01 Andreas Schwab <schwab@suse.de>
10958
10959 * Makefile.in (shortlisp, lisp): Update for rename of
10960 ../lisp/language/myanmar.el.
10961
109622008-02-01 Chong Yidong <cyd@stupidchicken.com>
10963
10964 * xfaces.c (get_lface_attributes): Delete function.
10965 (merge_named_face, lookup_named_face, lookup_derived_face)
10966 (realize_named_face): Call lface_from_face_name directly, and use
10967 the fact that merge_face_vectors does not alter its FROM argument.
10968
109692008-02-01 Jason Rumney <jasonr@gnu.org>
10970
10971 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
10972 input in the default locale. Handle non-Unicode multibyte input.
10973
109742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10975
10976 * fontset.c (reorder_font_vector): Exclude nil elements from the
10977 font group. Don't try multiple fonts.
10978 (fontset_font): Adjust for the above change.
10979 (Finternal_char_font): Return nil if the found font doesn't
10980 contain the character ch.
10981
10982 * Makefile.in (lisp, shortlisp): Add cham.el.
10983
109842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10985
10986 * font.h (FONTP): Make it return 1 also for a font-object.
10987
10988 * .gdbinit (xfontset): New function.
10989
10990 * font.c (font_find_for_lface): Check if the character C is
10991 supported or not only for the first font.
10992
10993 * fontset.c (reorder_font_vector): Fix typo.
10994 (fontset_find_font): Don't add a font-spec specifying a script.
10995 Use 0 (not Qt) for the indication of empty font-group. Change the
10996 format of RFONT-DEF. Return Qt if no font in the font-group
10997 support the character.
10998 (fontset_font): Adjust for the above change. If no font was
10999 found the character, remember that.
11000 (face_for_char): Adjust for the change of RFONT-DEF.
11001 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
11002 no font for the target.
11003 (Finternal_char_font): Adjust for the change of RFONT-DEF.
11004
110052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11006
11007 * font.c (font_load_for_face): Handle the case that the font in
11008 face->lface is a string.
11009
110102008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11011
11012 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
11013
110142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11015
11016 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
11017 Fix previous change. If the frame is not on a window system,
11018 signal an error.
11019
110202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11021
11022 * coding.c (decode_coding_object, encode_coding_object): Adjust
11023 marker positions after conversion.
11024
11025 * lisp.h (struct Lisp_Marker): New member need_adjustment.
11026
110272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11028
11029 * font.c (font_find_for_lface): Fix the handling of the return
11030 value of font_has_char.
11031 (Ffont_shape_text): Fix previous change.
11032
11033 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
11034 (fontset_ref_and_range): Delete it.
11035 (fontset_find_font): Call char_table_ref_and_range instead of
11036 FONTSET_REF_AND_RANGE.
11037 (make_fontset): Don't setup font groups of Latin here.
11038 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
11039 (new_fontset_from_font): Make the specified font the default for
11040 all Latin characters.
11041
110422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11043
11044 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
11045 is on a window system before accessing the fontset of the frame.
11046
110472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11048
11049 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
11050
11051 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
11052 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
11053
11054 * font.c (Ffont_shape_text): If the font driver doesn't have a
11055 shaper function, make zero-width glyphs to have at least one-pixel
11056 width. Fix setting of `to' field of glyphs.
11057
110582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11059
11060 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
11061 glyphs.
11062
11063 * font.h (struct font_driver): Improve docstring of member `shape'.
11064
110652008-02-01 Kenichi Handa <handa@m17n.org>
11066
11067 * composite.c (syms_of_composite): Fix docstring of
11068 auto-composition-function.
11069
11070 * font.h (LGLYPH_SIZE): New macro.
11071
11072 * font.c (Ffont_fill_gstring): Stop filling when a character not
11073 supported by the font is found.
11074 (Ffont_shape_text): When a shape callback function returns nil,
11075 try at most two more times with larger gstring.
11076 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
11077
11078 * xdisp.c (handle_auto_composed_prop): Change the argument to
11079 auto-composition-function.
11080
11081 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
11082 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
11083 Lispy glyph and store it in the lgstring.
11084
11085 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
11086
11087 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
11088
110892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11090
11091 * font.c (Ffont_shape_text): Avoid unnecessary composition.
11092
11093 * fontset.c (Vfont_encoding_charset_alist): New variable.
11094 (syms_of_fontset): DEFVAR it.
11095 (reorder_font_vector, fontset_find_font): Optimize for the case of
11096 no need of reordering.
11097 (face_for_char): Map the charset property by
11098 Vfont_encoding_charset_alist.
11099
111002008-02-01 Jason Rumney <jasonr@gnu.org>
11101
11102 * w32font.c (logfonts_match): Don't check adstyle here.
11103 (font_matches_spec): Check here against physical font instead.
11104 (add_font_entity_to_list): Avoid some substitutions.
11105
11106 * font.c (font_parse_fcname): Default weight and slant to normal.
11107 (font_score): Prefer normal fonts if weight or slant unspecified.
11108 (font_score) [WINDOWSNT]: Scale weight difference down to closer
11109 match freetype scores.
11110
111112008-02-01 Jason Rumney <jasonr@gnu.org>
11112
11113 * w32font.c (w32font_text_extents): Don't use the frame stored in the
11114 font, as it may have been deleted.
11115 (w32_enumfont_pattern_entity): Map generic family to adstyle using
11116 most common hyphenless variation.
11117 (logfonts_match): Check generic family.
11118 (font_matches_spec): Don't check generic family here.
11119 (fill_in_logfont): Set generic family based on adstyle.
11120
11121 * w32font.h (w32font_get_cache): Update declaration.
11122
111232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11124
11125 * ftfont.c (ftfont_get_cache): Adjust the argument type.
11126
11127 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
11128 If none of the new drivers are available, call font_update_drivers
11129 with the old drivers.
11130
11131 * w32font.c (w32font_get_cache): Adjust the argument type.
11132
11133 * xfont.c (xfont_get_cache): Adjust the argument type.
11134
11135 * font.h (struct font_driver): Change argument type of get_cache.
11136
11137 * xftfont.c (xftfont_start_for_frame): Delete prototype.
11138
11139 * font.c (Ffont_get): Fix arguments to Fassoc.
11140 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
11141 (font_clear_cache): New function.
11142 (font_list_entities, font_matching_entity): Use font_get_cache.
11143 (font_update_drivers): Call font_clear_cache when finishing a driver.
11144
11145 * fontset.c (fontset_find_font): Fix previous change.
11146
111472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11148
11149 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
11150 dpyinfo->font_table.
11151 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
11152 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
11153
11154 * font.c (font_at): Handle the case that the arg C is negative.
11155 Handle the unibyte case.
11156 (Ffont_at): Call font_at with the arg C -1.
11157
11158 * xdisp.c (handle_auto_composed_prop): Don't get a character at
11159 the position here, and call font_at with the arg C -1.
11160 Don't check the range of the existing composition at the point.
11161
111622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11163
11164 * fontset.c (fontset_add): New args charset_id and family.
11165 Change caller.
11166 (load_font_get_repertory, fontset_find_font): Assume that
11167 font_spec is always a font-spec object.
11168 (Fset_fontset_font): Always store a font-spec object in a fontset.
11169
11170 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
11171 instead of get_property_and_range.
11172
111732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11174
11175 * xftfont.c (struct xftfont_info): Delete the member ft_face.
11176 (xftfont_open): Don't keep locking face.
11177 (xftfont_close): Don't unlock face.
11178 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
11179
11180 * fontset.c (fontset_find_font): Don't prefer a font of
11181 supplementary charset.
11182
111832008-02-01 Kenichi Handa <handa@m17n.org>
11184
11185 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
11186 script, langsys_tag to langsys, new member script.
11187 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 11188 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
11189 listing to the script specified in that property. Fix arg to
11190 OTF_check_features.
11191
111922008-02-01 Jason Rumney <jasonr@gnu.org>
11193
11194 * w32font.h: New file.
11195
11196 * w32font.c: Include it.
11197 (struct w32font_info): Add owning_frame field. Move to w32font.h.
11198 (w32font_open): Set owning_frame.
11199 (w32font_text_extents): Use owning_frame.
11200 (struct font_callback_data): Add opentype_only field.
11201 (add_font_entity_to_list): Use it to filter fonts.
11202 Don't check against full name.
11203 (w32font_list_internal): New function.
11204 (w32font_list): Use it.
11205 (w32font_match_internal): New function.
11206 (w32font_match): Use it.
11207 (w32font_open_internal): New function.
11208 (w32font_open): Use it.
11209 (w32font_get_cache, w32font_close, w32font_has_char)
11210 (w32font_encode_char, w32font_text_extents, w32font_draw):
11211 Make non-static.
11212
11213 * makefile.w32-in (w32font.o): Depend on w32font.h.
11214
112152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11216
11217 * charset.c (Fdefine_charset_internal): Record a supplementary
11218 charset at the tail of Vcharset_order_list.
11219
11220 * font.c (Ffont_shape_text): Fix the return value.
11221
11222 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
11223
11224 * xdisp.c (handle_auto_composed_prop): Fix previous change.
11225
112262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11227
11228 * ftfont.c (struct OpenTypeSpec): New struct.
11229 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
11230 (ftfont_get_open_type_spec): New function.
11231 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
11232
11233 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
11234
112352008-02-01 Jason Rumney <jasonr@gnu.org>
11236
11237 * w32font.c (add_font_entity_to_list): Compare only the beginning
11238 of full name.
11239
112402008-02-01 Kenichi Handa <handa@m17n.org>
11241
11242 * xdisp.c (handle_auto_composed_prop): Simplify the code.
11243 Never return HANDLED_RECOMPUTE_PROPS.
11244
112452008-02-01 Kenichi Handa <handa@m17n.org>
11246
11247 * font.c (font_gstring_produce): Delete it.
11248
11249 * composite.h (COMPOSITION_METHOD):
11250 Handle COMPOSITION_WITH_GLYPH_STRING.
11251
112522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11253
11254 * xfont.c (Qx): Delete.
11255 (syms_of_xfont): Don't initialize Qx.
11256
11257 * composite.h (enum composition_method):
11258 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
11259
112602008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11261
11262 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
11263 (choose_face_font): Accept new form of font-spec.
11264
11265 * frame.h (font_driver_list): Declare it unconditionally.
11266 (struct frame): Define members font_driver_list and font_data_list
11267 unconditionally.
11268
11269 * fontset.c: Include "font.h" unconditionally.
11270 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
11271 (Fset_fontset_font): Accept a font-spec object.
11272
11273 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
11274 PIXEL_SIZE part a wild card.
11275
11276 * dispextern.h (struct glyph_string): Define members clip and
11277 num_clips unconditionally.
11278 (struct face): Define members font_info and extra unconditionally.
11279
11280 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
11281 ftfont_info only when HAVE_LIBOTF is defined.
11282
112832008-02-01 Andreas Schwab <schwab@suse.de>
11284
11285 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
11286 and end.
11287
112882008-02-01 Jason Rumney <jasonr@gnu.org>
11289
11290 * w32font.c (w32font_driver): Add new fields.
11291
112922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11293
11294 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
11295 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
11296 (LIBES): Add @M17N_FLT_CFLAGS@.
11297
11298 * composite.c (compose_text): Don't treat the new style
11299 composition specially.
11300
11301 * emacs.c (main): Call syms_of_font unconditionally.
11302
11303 * font.h (FONT_ENTITY_NOT_LOADABLE)
11304 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
11305 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
11306 (struct font_driver): New member shape.
11307 (font_registry_charsets): Extern it.
11308 (font_find_for_lface, font_prepare_composition): Adjust prototype.
11309 (font_otf_capability, font_drive_otf): Delete their externs.
11310
11311 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
11312 (font_charset_alist, font_registry_charsets): Move from xfont.c
11313 and rename.
11314 (font_prop_validate_otf): New function.
11315 (font_property_table): Register it for QCotf.
11316 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
11317 (font_drive_otf): Delete.
11318 (font_prepare_composition): New arg F. Adjust for the change of
11319 lispy gstring.
11320 (font_find_for_lface): New arg C.
11321 (font_load_for_face): Adjust for the change of font_find_for_lface.
11322 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
11323 lispy gstring.
11324 (Ffont_shape_text): New function.
11325 (Fopen_font): If the font size is not given, use 12-pixel.
11326 (Ffont_at): New arg STRING.
11327 (syms_of_font): Initalize font_charset_alist.
11328 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
11329 conditionally.
11330
11331 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
11332 fonts of the same font-spec. Change the format of RFONT-DEF.
11333 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
11334 Adjust for the change of RFONT-DEF.
11335 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
11336
11337 * ftfont.h: New file.
11338
11339 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
11340 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11341 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11342 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
11343 font_otf_capability and font_drive_otf, set ftfont_shape.
11344 (ftfont_list): Adjust for the change of :otf property value.
11345 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
11346 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
11347 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
11348 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11349 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
11350 (otf_gstring, gstring, m17n_flt_initialized): New variables.
11351
11352 * w32term.c (x_draw_composite_glyph_string_foreground):
11353 Adjust for the change of lispy gstring.
11354
11355 * xdisp.c (handle_composition_prop): Adjust for the change of
11356 lispy gstring. Call a function for auto-composition with the
11357 third arg it->window.
11358 (fill_composite_glyph_string): Adjust for the change of lispy string.
11359 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
11360
11361 * xfaces.c (set_font_frame_param): Adjust for the change of
11362 font_find_for_lface.
11363
11364 * xfont.c (x_font_charset_alist): Move to font.c and rename.
11365 (xfont_registry_charsets): Likewise. Change caller.
11366 (syms_of_xfont): Don't handle x_font_charset_alist.
11367
11368 * xftfont.c: Include "ftfont.h".
11369 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11370 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11371 (xftfont_close) [HAVE_LIBOTF]: Close otf.
11372 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11373 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
11374 Set xftfont_driver.shape to xftfont_shape.
11375
11376 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
11377 the change of lispy gstring.
11378
113792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11380
11381 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
11382
113832008-02-01 Jason Rumney <jasonr@gnu.org>
11384
11385 * w32font.c (w32font_draw): Fill background manually.
11386
113872008-02-01 Jason Rumney <jasonr@gnu.org>
11388
11389 * font.c (Qfontp): Remove unused symbol.
11390 (QCantialias): New symbol.
11391 (syms_of_font): Define it.
11392 (font_property_table): Set a validator for QCantialias.
11393
11394 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
11395 Define if not already.
11396 (QCfamily): Share with xfaces.c.
11397 (Qstandard, Qsubpixel, Qnatural): New symbols.
11398 (syms_of_w32font): Define them. Don't define QCfamily here.
11399 (w32_antialias_type, lispy_antialias_type): New functions.
11400 (w32_enumfont_pattern_entity): New arg requested_font.
11401 Set antialias parameter if non-default was requested.
11402 (fill_in_logfont): Fill in lfQuality if :antialias specified.
11403
114042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11405
11406 * lread.c (read1): Undo the previous change.
11407
114082008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
11409
11410 * frame.c (Fdelete_frame): Call font_update_drivers only when
11411 USE_FONT_BACKEND is defined.
11412
114132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11414
11415 * font.h (struct font_bitmap): New member bits_per_pixel.
11416 (struct font_driver): New members start_for_frame and end_for_frame.
11417 (struct font_data_list): New struct.
11418 (font_put_frame_data, font_get_frame_data): Extern them.
11419
11420 * frame.h (struct frame): New member font_data_list.
11421
11422 * font.c (font_update_drivers): Call driver->start_for_frame and
11423 driver->end_for_frame at proper timings.
11424 (font_put_frame_data, font_get_frame_data): New functions.
11425 (Ffont_spec): Add usage in the docstring.
11426
11427 * frame.c (make_frame): Initialize f->font_data_list to NULL.
11428 (Fdelete_frame): Call font_update_drivers.
11429
11430 * xftfont.c (struct xftface_info): Delete the member xft_draw.
11431 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
11432 (xftfont_get_xft_draw): New function.
11433 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
11434 (xftfont_end_for_frame): New function.
11435 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
11436
11437 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
11438 Change argument. Cache GCs in the per-frame data.
11439 (struct ftxfont_frame_data): New struct.
11440 (ftxfont_draw_bitmap): New arg gc_fore and flush.
11441 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
11442 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
11443 (ftxfont_end_for_frame): New function.
11444 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
11445
11446 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
11447
114482008-02-01 Kenichi Handa <handa@m17n.org>
11449
11450 * xselect.c (Vselection_coding_system)
11451 (Vnext_selection_coding_system): Delete them.
11452 (syms_of_xselect): Don't declare selection-coding-system and
11453 next-selection-coding-system. They are declared in select.el.
11454
114552008-02-01 Jason Rumney <jasonr@gnu.org>
11456
11457 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
11458
11459 * w32fns.c: Include imm.h.
11460 (get_composition_string_fn, get_ime_context_fn): New optional
11461 system functions.
11462 (globals_of_w32fns): Load them from imm32.dll.
11463 (ignore_ime_char): New flag.
11464 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
11465 WM_IME_ENDCOMPOSITION messages.
11466
11467 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
11468 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
11469
114702008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11471
11472 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
11473 (READCHAR_REPORT_MULTIBYTE): New macro.
11474 (readchar): New 2nd arg MULTIBYTE.
11475 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
11476 Make symbol's name multibyte according to the multibyteness of the
11477 source.
11478
114792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11480
11481 * xfaces.c (face_for_overlay_string): Call lookup_face with
11482 correct arguments (fix of synching with the trunk).
11483
114842008-02-01 Kenichi Handa <handa@m17n.org>
11485
11486 * font.c (font_prop_validate_symbol, font_prop_validate_style)
11487 (font_prop_validate_non_neg, font_prop_validate_spacing):
11488 Delete argument prop_index.
11489 (font_property_table): Change arguments to validater. Change Callers.
11490 (font_lispy_object): Delete.
11491 (font_at): Use font_find_object instead fo font_lispy_object.
11492
114932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11494
11495 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
11496 and file names.
11497
114982008-02-01 Jason Rumney <jasonr@gnu.org>
11499
11500 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
11501 (font_matches_spec): Remove debug output.
11502 (add_font_entity_to_list): Avoid using substituted fonts.
11503
115042008-02-01 Jason Rumney <jasonr@gnu.org>
11505
11506 * doc.c (Fsnarf_documentation):
11507 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
11508
115092008-02-01 Miles Bader <miles@gnu.org>
11510
11511 * dispextern.h (struct glyph_row): Only define "clip" field if
11512 HAVE_WINDOW_SYSTEM is defined.
11513
115142008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11515
11516 Fix up multi-tty merge.
11517
11518 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
11519 and indentation.
11520
11521 * xfaces.c (free_realized_face, clear_face_gcs):
11522 Include font_done_for_face in the input_blocked section, just in case.
11523
11524 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
11525 (get_char_face_and_encoding): Undo last change and remove the *other*
11526 duplicate definition (i.e. keep the one that's better scoped and that
11527 includes code for the font-backend).
11528
11529 * terminal.c (create_terminal): Default keyboard_coding to
11530 `no-conversion' and terminal_coding to `undecided'.
11531
11532 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
11533
11534 * fontset.c (free_realized_fontsets): Check that the table entry does
11535 contain a fontset before trying to compare it to `base'.
11536
11537 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
11538 syms_of_charset, and syms_of_coding earlier because init_window_once
11539 now needs Vcoding_system_hash_table to be setup.
11540
11541 * coding.h (default_buffer_file_coding): Remove.
11542
11543 * coding.c (default_buffer_file_coding): Remove.
11544 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
11545 than ->symbol, and use the terminal-local coding system.
11546 (syms_of_coding): Don't setup the coding-systems that are not
11547 terminal-local.
11548 (Fdefine_coding_system_internal): Use XCAR/XCDR.
11549
11550 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
11551 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
11552
11553 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
11554 in chartab.c and were re-added here by mistake.
11555 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
11556
11557 * doc.c (Fsnarf_documentation):
11558 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
11559 src to etc.
11560
11561 * ChangeLog.10: Add mistakenly removed entry.
11562
115632008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
11564
11565 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
11566
115672008-02-01 Miles Bader <miles@gnu.org>
11568
11569 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
11570 Add extra args to FACE_FOR_CHAR.
11571
115722008-02-01 Kenichi Handa <handa@m17n.org>
11573
11574 * keymap.c (where_is_internal_1): If key is a cons, store the copy
11575 in sequence.
11576
11577 * chartab.c (map_sub_char_table, map_char_table): If the range
11578 contains just one character, call the function with that character
11579 even if the depth is not 3.
11580
115812008-02-01 Jason Rumney <jasonr@gnu.org>
11582
11583 * w32font.c (w32font_text_extents): Calculate metrics for the
11584 whole string.
11585
115862008-02-01 Jason Rumney <jasonr@gnu.org>
11587
11588 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
11589
115902008-02-01 Jason Rumney <jasonr@gnu.org>
11591
11592 * w32term.c (x_set_glyph_string_clipping): Use
11593 get_glyph_string_clip_rects.
11594 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11595 Adjust for the change of struct glyph_string.
11596
11597 * w32font.c (w32font_draw): Do clipping here.
11598
115992008-02-01 Kenichi Handa <handa@m17n.org>
11600
11601 * xftfont.c (xftfont_draw): Adjust for the change of struct
11602 glyph_string.
11603
11604 * xterm.c (x_set_glyph_string_clipping): Use
11605 get_glyph_string_clip_rects.
11606 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11607 Adjust for the change of struct glyph_string.
11608
11609 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
11610 the resulting clip(s}.
11611 (expose_overlaps): Add arg r. Change callers. Set it to
11612 row->clip temporarily.
11613 (expose_window): Redraw rows overlapping the exposed area.
11614
11615 * dispextern.h (struct glyph_row): New member clip.
11616 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
11617 clip_height, new member clip, and num_clips.
11618
116192008-02-01 Kenichi Handa <handa@m17n.org>
11620
11621 * data.c (Fchar_or_string_p): Fix docstring.
11622
116232008-02-01 Kenichi Handa <handa@m17n.org>
11624
11625 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
11626 create a temporary XftDraw object.
11627
116282008-02-01 Kenichi Handa <handa@m17n.org>
11629
11630 * font.c (Ffontp): Fix docstring.
11631
11632 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
11633 strong evidence of ISO-2022.
11634
116352008-02-01 Kenichi Handa <handa@m17n.org>
11636
11637 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
11638 SYNTAX_ENTRY_FOLLOW_PARENT.
11639
116402008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11641
11642 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
11643 its type.
11644 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
11645 Update to the new type of weak_hash_tables and next_weak.
11646
11647 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
11648 a plain C pointer to Lisp_Hash_Table.
11649
11650 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
11651 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
11652 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
11653 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
11654 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
11655 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
11656 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
11657 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
11658 (GC_EQ): Remove since they've been identical to their non-GC_
11659 alter-egos ever since the markbit was eradicated.
11660
11661 * alloc.c:
11662 * buffer.c:
11663 * buffer.h:
11664 * data.c:
11665 * fileio.c:
11666 * filelock.c:
11667 * fns.c:
11668 * frame.h:
11669 * lisp.h:
11670 * macterm.c:
11671 * print.c:
11672 * process.c:
11673 * w32fns.c:
11674 * w32menu.c:
11675 * w32term.c:
11676 * xfns.c:
11677 * xmenu.c:
11678 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
11679
116802008-02-01 Kenichi Handa <handa@m17n.org>
11681
11682 * chartab.c (map_sub_char_table): Make it work for the top-level
11683 char-table. Fix handling of parent char-table.
11684 (map_char_table): Adjust for the above change.
11685
116862008-02-01 Jason Rumney <jasonr@gnu.org>
11687
11688 * w32font.c (Qgdi): Rename from Qw32.
11689
116902008-02-01 Jason Rumney <jasonr@gnu.org>
11691
11692 * w32bdf.c (get_quoted_string): Make function static.
11693
116942008-02-01 Kenichi Handa <handa@m17n.org>
11695
11696 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
11697 bigger ascent and descent than those of the font, use them as
11698 font's ascent and descent.
11699
117002008-02-01 Kenichi Handa <handa@m17n.org>
11701
11702 * Makefile.in (${lispsource}international/charprop.el): Move this
11703 target within "#ifdef HAVE_UNIDATA" and "#endif".
11704
117052008-02-01 Kenichi Handa <handa@m17n.org>
11706
11707 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
11708 (shortlisp): Add ../lisp/language/tai-viet.el.
11709
117102008-02-01 Ulrich Mueller <ulm@gentoo.org>
11711
11712 * Makefile.in (${lispsource}international/charprop.el): Depend on
11713 temacs${EXEEXT}.
11714
117152008-02-01 Jason Rumney <jasonr@gnu.org>
11716
11717 * w32font.c (w32font_close): Delete the GDI font object.
11718
11719 * w32menu.c: Include character.h.
11720
11721 * w32proc.c: Likewise.
11722
11723 * w32select.c: Likewise.
11724
11725 * makefile.w32-in (w32proc.o): Depend on character.h.
11726
117272008-02-01 Jason Rumney <jasonr@gnu.org>
11728
11729 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
11730
11731 * w32menu.c (syms_of_w32menu): Likewise.
11732
11733 * w32proc.c (syms_of_ntproc): Likewise.
11734
11735 * w32select.c (syms_of_w32select): Likewise.
11736
11737 * w32term.c (syms_of_w32term): Likewise.
11738
117392008-02-01 Jason Rumney <jasonr@gnu.org>
11740
11741 * w32font.c (w32font_draw): Delete brush after using it.
11742
117432008-02-01 Jason Rumney <jasonr@gnu.org>
11744
11745 * w32font.c (w32font_open): Don't set font_idx.
11746 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
11747 to font settings.
11748 (w32font_draw): Fill background explicitly.
11749
117502008-02-01 Jason Rumney <jasonr@gnu.org>
11751
11752 * w32term.c (w32_initialize): Don't call w32font_initialize.
11753
11754 * w32font.c (w32font_info): Remove subranges.
11755 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
11756 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
11757 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
11758 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
11759 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
11760 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
11761 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
11762 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
11763 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
11764 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
11765 New symbols.
11766 (font_callback_data): New struct.
11767 (w32font_list, w32font_match): Use it.
11768 (w32font_open): Don't populate subranges.
11769 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
11770 (w32font_encode_char): Always return unicode code-point as-is.
11771 (w32font_text_extents): Supply a transformation matrix to
11772 GetGlyphOutline. Never look up by glyph index. Avoid looping
11773 twice. Use unicode version of GetTexExtentPoint32 instead of
11774 glyph index version.
11775 (set_fonts_frame): Remove.
11776 (w32_enumfont_pattern_entity): Add frame parameter, use it to
11777 set frame parameter. Use backward compatible fake foundries.
11778 Save generic family in extra slot under QCfamily. Make width slot
11779 constant. Save QCspacing value. Save list of scripts instead of
11780 binary subranges.
11781 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
11782 (add_font_entity_to_list): Use font_callback_data struct. Filter
11783 unwanted fonts.
11784 (add_one_font_entity_to_list): Use font_callback_data struct.
11785 (w32_registry): Default to iso10646_1.
11786 (fill_in_logfont): Use dpi from extra slot. Don't bother with
11787 string font registries. Don't fill in font name if it is a generic
11788 family name, fill family instead. Use spacing, family and script
11789 extra info to fill pitch, family and charset fields.
11790 (list_all_matching_fonts): Use font_callback_data struct.
11791 (unicode_range_for_char): Remove.
11792 (font_supported_scripts): New function.
11793 (w32font_initialize): Remove.
11794 (syms_of_w32font): Update which symbols are defined.
11795
117962008-02-01 Jason Rumney <jasonr@gnu.org>
11797
11798 * font.c (font_pixel_size): Reverse assq_no_quit args.
11799
11800 * w32term.h (FONT_WIDTH): Report max width, not average.
11801 (FONT_MAX_WIDTH): Remove.
11802 (FONT_AVG_WIDTH): New macro.
11803
11804 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
11805 redefinition of FONT_WIDTH.
11806
11807 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
11808 (w32_cache_char_metrics): Use FONT_WIDTH.
11809
11810 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
11811
118122008-02-01 Jason Rumney <jasonr@gnu.org>
11813
11814 * w32font.c (w32font_open): Make lfHeight negative.
11815
11816 * w32fns.c (x_default_font_parameter): Use new style font name.
11817 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
11818
118192008-02-01 Jason Rumney <jasonr@gnu.org>
11820
11821 * w32font.c (QCsubranges): New symbol.
11822 (w32font_open, w32font_has_char): Get subranges from subproperty
11823 of extra.
11824 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
11825 (syms_of_w32font): Define :subranges symbol.
11826
11827 * font.c (font_put_extra): Expose externally.
11828
11829 * font.h (font_put_extra): Move declaration from font.c.
11830
11831 * font.c (Ffont_get): Use font driver to determine otf capability.
11832 (adjust_anchor): Check if driver defines anchor_point before using.
11833
11834 * w32font.c (w32font_open): Handle size, height and pixel_size better.
11835 (w32font_draw): Use options.
11836 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
11837 Fix detection of truetype fonts.
11838 (registry_to_w32_charset): Handle charsets other than iso8859-1
11839 expressed as lisp symbols.
11840 (w32_registry): Express charset as lisp symbol.
11841 (fill_in_logfont): Reverse pixel and point height logic.
11842 Don't set width here. Set quality to default.
11843
11844 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
11845 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
11846
11847 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11848 Remove redundant loop and allocation.
11849
11850 * makefile.w32-in (font.o, w32font.o): New objects.
11851 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
11852 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
11853
11854 * xdisp.c (fill_composite_glyph_string): Make the first arg to
11855 STORE_XCHARB a valid l-value.
11856
11857 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
11858 calculations for non-Truetype fonts.
11859 (x_draw_glyph_string): Sync with xterm.c.
11860 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11861 Remove redundant code.
11862 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
11863
11864 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
11865 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
11866
11867 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
11868 (x_to_w32_charset, w32_to_x_charset): Expose externally.
11869
11870 * w32font.c: New file for w32 font backend.
11871
118722008-02-01 Kenichi Handa <handa@m17n.org>
11873
11874 * term.c: Don't include "buffer.h" twice.
11875
118762008-02-01 Kenichi Handa <handa@m17n.org>
11877
11878 * character.c (Funibyte_string): New function.
11879 (syms_of_character): Defsubr it.
11880
118812008-02-01 Jason Rumney <jasonr@gnu.org>
11882
11883 * w32term.c [USE_FONT_BACKEND]:
11884 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
11885 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
11886 (x_draw_glyph_string, x_draw_glyph_string_foreground)
11887 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
11888 (x_free_frame_resources): Sync with xterm.c.
11889
118902008-02-01 Andreas Schwab <schwab@suse.de>
11891
11892 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
11893 char-table size.
11894
118952008-02-01 Kenichi Handa <handa@m17n.org>
11896
11897 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
11898
118992008-02-01 Kenichi Handa <handa@m17n.org>
11900
11901 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
11902 font_otf_gpos, add font_drive_otf.
11903
11904 * fontset.c (fontset_find_font): Pay attention to font size
11905 specified for a font.
11906 (reorder_font_vector): Check contents of font_def.
11907
11908 * font.c (struct otf_list): Delete it.
11909 (otf_list): Make it a lisp variable.
11910 (otf_open): Use lispy otf_list.
11911 (generate_otf_features): Rename from parse_gsub_gpos_spec.
11912 (check_otf_features): New function.
11913 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11914 New functions.
11915 (font_drive_otf): New function merging font_otf_gsub and
11916 font_otf_gpos.
11917 (font_open_for_lface): New arg spec. Change argument order.
11918 (font_load_for_face): Adjust for the change of font_open_for_lface.
11919 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
11920 Ffont_otf_gpos.
11921 (syms_of_font): Staticpro otf_list. Delete defsubr of
11922 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
11923
11924 * xfaces.c (set_font_frame_param): Adjust for the change of
11925 font_open_for_lface.
11926
11927 * font.h (font_open_for_lface): Adjust prototype.
11928 (struct font_driver): Delete members otf_gsub and otf_gpos, add
11929 member otf_drive.
11930 (font_otf_gsub, font_otf_gpos): Delete externs.
11931 (font_drive_otf): Extern it.
11932
119332008-02-01 Kenichi Handa <handa@m17n.org>
11934
11935 * font.c (font_at): If the window W is not on a window system,
11936 return Qnil.
11937
11938 * coding.c (produce_chars, encode_coding): Don't call
11939 insert_from_gap if no characters to produce.
11940
119412008-02-01 Kenichi Handa <handa@m17n.org>
11942
11943 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
11944 Fclear_face_cache.
11945
11946 * xfaces.c (face_for_font): Check also face->font==font->font.font.
11947
119482008-02-01 Miles Bader <miles@gnu.org>
11949
11950 * emacs.c (main): Change default value of `enable_font_backend' to 1.
11951 Parse "--disable-font-backend" option.
11952 (standard_args): Add "--disable-font-backend" option.
11953
119542008-02-01 Kenichi Handa <handa@m17n.org>
11955
11956 * fontset.c (fontset_find_font): New function.
11957 (fontset_font): Use fontset_find_font.
11958 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
11959 Register the specified font for all Latin characters.
11960 (new_fontset_from_font): Register the specified font for all Latin
11961 characters.
11962 (dump_fontset): For a realized fontset, include the base fontset
11963 name in the returned vector.
11964
119652008-02-01 Kenichi Handa <handa@m17n.org>
11966
11967 * character.h (CHAR_STRING): Cast C to unsigned on calling
11968 char_string.
11969
11970 * character.c (char_string): Type of arg C changed to unsigned.
11971 Signal an error if C is an invalid character code.
11972
11973 * editfns.c (general_insert_function, Fchar_to_string):
11974 Use CHARACTERP, not INTEGERP.
11975
119762008-02-01 Kenichi Handa <handa@m17n.org>
11977
11978 * character.h (MIN_MULTIBYTE_LEADING_CODE)
11979 (MAX_MULTIBYTE_LEADING_CODE): New macros.
11980
11981 * regex.c (analyse_first): Fix for multibyte characters in "case
11982 charset:" and "case categoryspec:".
11983
119842008-02-01 Andreas Schwab <schwab@suse.de>
11985
11986 * Makefile.in (LIBES): Move standard libraries to the end.
11987
119882008-02-01 Kenichi Handa <handa@m17n.org>
11989
11990 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
11991 nonzero, don't shrink the buffer nextb.
11992
11993 * buffer.h (struct buffer_text): New member inhibit_shrinking.
11994
11995 * coding.c (coding_alloc_by_making_gap): New arg offset.
11996 (alloc_destination): Call coding_alloc_by_making_gap with the arg
11997 offset.
11998 (decode_coding_iso_2022): Update coding->safe_charsets.
11999 (decode_coding_gap): Temporarily set
12000 current_buffer->text->inhibit_shrinking to 1.
12001
120022008-02-01 Kenichi Handa <handa@m17n.org>
12003
12004 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
12005 indexing into elements of s->cmp and s->char2b.
12006
120072008-02-01 Juanma Barranquero <lekktu@gmail.com>
12008
12009 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
12010
120112008-02-01 Kenichi Handa <handa@m17n.org>
12012
12013 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
12014 target_multibyte instead of multibyte.
12015 (re_match_2_internal): Call bcmp_translate with target_multibyte.
12016 (bcmp_translate): Change the argument name from multibyte to
12017 target_multibyte.
12018
120192008-02-01 Kenichi Handa <handa@m17n.org>
12020
12021 These changes are to compile a regexp into a pattern that can be
12022 used both for multibyte and unibyte targets.
12023
12024 * Makefile.in (search.o): Depend on charset.h.
12025
12026 * character.c (multibyte_char_to_unibyte_safe): New function.
12027
12028 * search.c: Include "charset.h".
12029 (compile_pattern_1): Delete argument multibyte. Don't set
12030 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
12031 (compile_pattern): Don't compare cp->buf.target_multibyte.
12032 Compare cp->buf.charset_unibyte.
12033 (compile_pattern): Set cp->buf.target_multibyte.
12034
12035 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
12036
12037 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
12038
12039 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
12040 multibyte. Change callers.
12041 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
12042 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
12043 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
12044 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
12045 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
12046 (regex_compile): Make the compiled pattern usable both for
12047 multibyte and unibyte targets.
12048 (analyse_first): Make the fastmap usable both for multibyte and
12049 unibyte targets.
12050 (TRANSLATE_VIA_MULTIBYTE): Delete.
12051 (re_match_2_internal): Pay attention to the case that the
12052 multibyteness of bufp and target may be different.
12053
120542008-02-01 Kenichi Handa <handa@m17n.org>
12055
12056 * xdisp.c (x_produce_glyphs): When a font is not found, make the
12057 empty box occupy at least one column width.
12058
120592008-02-01 Miles Bader <miles@gnu.org>
12060
12061 * Makefile.in: Remove redundant HAVE_XFT clause.
12062
120632008-02-01 Kenichi Handa <handa@m17n.org>
12064
12065 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
12066
120672008-02-01 Kenichi Handa <handa@m17n.org>
12068
12069 * fontset.c (Finternal_char_font): Fix for the case of POSITION
12070 being nil.
12071
120722008-02-01 Kenichi Handa <handa@m17n.org>
12073
12074 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
12075
120762008-02-01 Kenichi Handa <handa@m17n.org>
12077
12078 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
12079
120802008-02-01 Kenichi Handa <handa@m17n.org>
12081
12082 * search.c (simple_search): Fix previous change.
12083
120842008-02-01 Kenichi Handa <handa@m17n.org>
12085
12086 * xftfont.c (ftfont_font_format): Extern declaration.
12087
12088 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
12089
12090 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
12091 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
12092
12093 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
12094 (ftfont_font_format): Fix previous change.
12095
12096 * font.h (Ffont_xlfd_name): EXFUN it.
12097
12098 * font.c (font_parse_xlfd): Fix the array size of `f'.
12099 (register_font_driver): Use EQ to compare driver->type.
12100
12101 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
12102 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
12103 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
12104
121052008-02-01 Kenichi Handa <handa@m17n.org>
12106
12107 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
12108 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
12109
121102008-02-01 Kenichi Handa <handa@m17n.org>
12111
12112 * xfont.c (xfont_open): Set font->format.
12113
12114 * xftfont.c (xftfont_open): Set font->format.
12115
12116 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
12117 (ftfont_list): Include FC_FONTFORMAT in FcObject.
12118 (ftfont_open): Set font->format.
12119 (ftfont_font_format): New function.
12120
12121 * font.h (struct font): New member format.
12122
12123 * font.c (Qopentype): New variable.
12124 (syms_of_font): Defsym it.
12125 (Fquery_font): Change the format of the last element of the return
12126 value.
12127
121282008-02-01 Kenichi Handa <handa@m17n.org>
12129
12130 * xfns.c (xic_create_xfontset): Try the default fontset name as a
12131 last resort.
12132
121332008-02-01 Kenichi Handa <handa@m17n.org>
12134
12135 * coding.c (detect_coding_charset): Fix detection of multi-byte
12136 charset.
12137
121382008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
12139
12140 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
12141
121422008-02-01 Kenichi Handa <handa@m17n.org>
12143
12144 * xdisp.c (get_next_display_element): Set it->face_id for the
12145 first component of a composition.
12146 (x_produce_glyphs): Check if the font is changed or not for composition.
12147
121482008-02-01 Kenichi Handa <handa@m17n.org>
12149
12150 * fontset.c (Qlatin): New variable.
12151 (syms_of_fontset): Define it as a lisp symbol.
12152 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
12153
121542008-02-01 Kenichi Handa <handa@m17n.org>
12155
12156 * font.c (font_unparse_fcname): Pay attention to the case that
12157 some of font property is a null string.
12158
121592008-02-01 Kenichi Handa <handa@m17n.org>
12160
12161 * term.c: Include "composite.h".
12162 (encode_terminal_code): Output all components of composition.
12163 Check the size of encode_terminal_src.
12164 (produce_glyphs): For composition, call produce_composite_glyph.
12165 (append_composite_glyph, produce_composite_glyph): New functions.
12166
12167 * xdisp.c (x_produce_glyphs): In handling composition, if a font
12168 is not found, get font_info from the current ascii face.
12169
121702008-02-01 Kenichi Handa <handa@m17n.org>
12171
12172 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
12173 buffer-file-name to Qnil before calling insert_from_buffer.
12174
12175 * font.c (font_unparse_fcname): Pay attention to the case that
12176 foundry is a null string.
12177
121782008-02-01 Kenichi Handa <handa@m17n.org>
12179
12180 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
12181
12182 * font.c (Qunicode_sip): New variable.
12183 (syms_of_font): Declare it as a Lisp symbol.
12184
12185 * font.h (Qunicode_sip): Extern it.
12186
121872008-02-01 Kenichi Handa <handa@m17n.org>
12188
12189 * composite.c (get_composition_id): Pay attention to TAB component.
12190
12191 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
12192 TAB. Adjust for the change of s->char2b which always points to
12193 the first element of allocated memory.
12194
12195 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
12196
12197 * xdisp.c (handle_composition_prop): Set it->c to the first
12198 non-TAB component.
12199 (fill_composite_glyph_string): Change argument.
12200 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
12201 (x_produce_glyphs): Fix handling of left/right padding.
12202
122032008-02-01 Kenichi Handa <handa@m17n.org>
12204
12205 * coding.c (detect_coding_system): Fix for handling off
12206 inhibit_iso_escape_detection. Fix for the case that no coding
12207 system is defined for a specific coding category.
12208
122092008-02-01 Kenichi Handa <handa@m17n.org>
12210
12211 * font.c (font_matching_entity): Delete unused local var.
12212
12213 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
12214 opening a font.
12215
12216 * fileio.c (Finsert_file_contents): On recovering a file, assume
12217 Unix-like eol.
12218 (choose_write_coding_system): On auto-saving a file, force
12219 Unix-like eol.
12220
12221 * coding.c (setup_coding_system): Fix setting of
12222 coding->common_flags based on eol_type.
12223 (coding_inherit_eol_type): If PARENT is not nil, be sure to
12224 inherit from it.
12225
122262008-02-01 Kenichi Handa <handa@m17n.org>
12227
12228 * alloc.c (NSTATICS): Increas to 0x600.
12229
122302008-02-01 Kenichi Handa <handa@m17n.org>
12231
12232 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
12233 (ftfont_list): Don't check :name property.
12234 (ftfont_match): New function.
12235 (ftfont_pattern_entity): If the pattern doesn't contain
12236 FC_SPACING, don't assume FC_MONO.
12237
12238 * font.h (struct font_driver): New member `match'.
12239 (font_update_drivers): Adjust prototype.
12240
12241 * font.c (font_parse_fcname, font_parse_name): Don't change :name
12242 property of FONT.
12243 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
12244 them unconditionally.
12245 (font_matching_entity): New function.
12246 (font_open_by_name): Try font_matching_entity if exact match is
12247 not found.
12248 (font_update_drivers): Delete the arg FONT. Return a list of
12249 actually used backends. Don't free faces, font caches here.
12250 Don't store data in frame parameters. Don't call x_set_font.
12251 (Ffont_spec): Store :name property as is.
12252 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
12253 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
12254 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
12255 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
12256 Call font->driver->otf_gsub instead of font_otf_gsub.
12257
12258 * frame.c (x_set_font_backend): Do more works that were done in
12259 font_update_drivers before.
12260
12261 * xfont.c (xfont_match): New function.
12262 (xfont_driver): Set xfont_driver.match to xfont_match.
12263 (xfont_draw): Set font in GC if necessary.
12264
12265 * ftxfont.c (ftxfont_match): New function.
12266 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
12267
12268 * xftfont.c (xftfont_match): New function.
12269 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
12270
122712008-02-01 Kenichi Handa <handa@m17n.org>
12272
12273 * font.h (struct font): New member scalable.
12274 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
12275 (font_otf_gsub): Adjust prototype.
12276
12277 * font.c (font_otf_capability): Fix handling of the default langsys.
12278 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
12279 Check the contents of SPEC.
12280 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
12281 (check_gstring): New function.
12282 (REPLACEMENT_CHARACTER): New macro.
12283 (font_otf_gsub): New arg alternate_subst. Be sure to set all
12284 glyph codes of GSTRING.
12285 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
12286 (font_prepare_composition): Set cmp->glyph_len.
12287 (font_open_entity): Set font->scalable.
12288 (Ffont_get): Handle :otf property.
12289 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
12290 functions.
12291 (Fquery_font): Use font->font.full_name.
12292 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
12293 Sfont_otf_alternates.
12294
12295 * ftfont.c (ftfont_open): Set font->font.full_name and
12296 font->font.name properly. Fix calculation of font->font.height
12297 and font->min_width.
12298
12299 * ftxfont.c (ftxfont_create_gcs): New function.
12300 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
12301 (ftxfont_draw_backgrond): Fix filling region.
12302 (ftxfont_default_fid): New function.
12303 (ftxfont_open): Set xfont->fid to the return value of
12304 ftxfont_default_fid.
12305 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
12306 (ftxfont_done_face): Free only GCs that are created by
12307 ftxfont_create_gcs.
12308 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
12309
12310 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
12311 Clip to src->width, etc (not src->clip_XXX).
12312
12313 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
12314 FontBackend frame parameter.
12315
123162008-02-01 Kenichi Handa <handa@m17n.org>
12317
12318 * font.h (struct font_driver_list): New member `on'.
12319 (Fclear_font_cache): EXFUN it.
12320 (font_update_drivers): Extern it.
12321
12322 * font.c (font_unparse_fcname): Fix typo (swidth->width).
12323 (font_list_entities): Check driver_list->on.
12324 (register_font_driver): Initalize `on' member to 0.
12325 (font_update_drivers): New function.
12326 (Fclear_font_cache): Check driver_list->on.
12327
12328 * frame.h (Qfont_backend): Extern it.
12329 (x_set_font_backend): Extern it.
12330
12331 * frame.c (Qfont_backend): New variable.
12332 (frame_parms): New element for font-backend.
12333 (x_set_font_backend): New function.
12334
12335 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
12336 FontBackend frame parameter.
12337 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
12338 x_set_font_backend.
12339
12340 * xfont.c (xfont_list): Don't try listing by :name property if the
12341 name is not for XLFD.
12342
123432008-02-01 Kenichi Handa <handa@m17n.org>
12344
12345 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
12346 (LGLYPH_SET_TO): New macros.
12347 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
12348 element of G is vector or not.
12349 (font_at): Extern it.
12350
12351 * font.c: Include window.h.
12352 (font_lispy_object): New function.
12353 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
12354 end of valid glyph.
12355 (font_close_object): Fix getting (struct font *).
12356 (font_at): New function.
12357 (Ffont_get): If FONT is a font-object, get entity from it.
12358 (Ffont_make_gstring): Initialize elements of glyphs with nil.
12359 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
12360 range check.
12361 (Ffont_at): New function.
12362 (syms_of_font): Defsubr Sfont_at.
12363
12364 * xdisp.c (it_props): Move the entry for Qauto_composed to just
12365 before the entry for Qcomposition.
12366 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
12367 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
12368 the font in gstring.
12369 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
12370 LGLYPH_FORM (g) to detect the end of valid glyph.
12371 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
12372 we are composing with gstring.
12373
12374 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
12375 Check if adjustment is vector or not.
12376
12377 * Makefile.in (font.o): Make it depends on window.h.
12378
123792008-02-01 Kenichi Handa <handa@m17n.org>
12380
12381 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
12382 adjustment is vector or not.
12383
123842008-02-01 Miles Bader <miles@gnu.org>
12385
12386 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
12387
123882008-02-01 Kenichi Handa <handa@m17n.org>
12389
12390 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
12391 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
12392 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
12393
12394 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
12395 (DEVICE_DELTA): Fix typo.
12396 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
12397 LGLYPH format.
12398
12399 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12400 the change of LGLYPH format.
12401
124022008-02-01 Kenichi Handa <handa@m17n.org>
12403
12404 * ftfont.c (ftfont_list): Fix typo.
12405 (ftfont_build_basic_charsets): Don't include letters with diacritics.
12406
124072008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12408
12409 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
12410
12411 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
12412 xftface_info is non-NULL.
12413
124142008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12415
12416 * ftfont.c (ftfont_list): Move misplaced #endif.
12417
124182008-02-01 Kenichi Handa <handa@m17n.org>
12419
12420 * ftfont.c (ftfont_list): Pay attention to the case that
12421 FC_CAPABILITY is not defined.
12422
124232008-02-01 Kenichi Handa <handa@m17n.org>
12424
12425 * xftfont.c (xftfont_open): Set charset related members to -1.
12426
12427 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
12428 QCname.
12429 (ftfont_open): Set charset related members to -1.
12430
12431 * fontset.c (Votf_script_alist): New variable.
12432 (syms_of_fontset): Initialize it.
12433 (fontset_font): Delete unused variable.
12434
12435 * fontset.h (Votf_script_alist): Extern it.
12436
12437 * font.c (font_find_for_lface): Optimize code.
12438
12439 * font.h (font_close_object, font_merge_old_spec): Extern them.
12440
124412008-02-01 Kenichi Handa <handa@m17n.org>
12442
12443 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
12444 (syms_of_font): Initialize them.
12445 (font_pixel_size): Allow float value in dpi.
12446 (font_prop_validate_type): Delete.
12447 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
12448 Change caller.
12449 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
12450 (font_prop_validate_extra): Delete.
12451 (font_prop_validate_spacing): New function.
12452 (font_property_table): Add elements for all known properties.
12453 (get_font_prop_index): Rename from check_font_prop_name. New
12454 argument FROM. Change caller.
12455 (font_prop_validate): Validate all known properties.
12456 (font_put_extra): Delete argument force. Change caller.
12457 (font_expand_wildcards): Make it static. Fix the way of shrinking
12458 the possible range.
12459 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
12460 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
12461 Change caller.
12462 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
12463 (font_parse_fcname): Delete argument merge. Fix parsing of point
12464 size. Don't validate properties values here. Change caller.
12465 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
12466 (font_open_by_name): Delete unused variable.
12467 (Ffont_spec): Likewise. Validate property values.
12468 (Ffont_match_p): New function.
12469
12470 * font.h (QCscalable): Extern it.
12471 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
12472
12473 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
12474
12475 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
12476 (xfont_list_pattern): New function.
12477 (xfont_list): Use xfont_list_pattern.
12478
124792008-02-01 Kenichi Handa <handa@m17n.org>
12480
12481 * font.h (Flist_fonts): EXFUN it.
12482
124832008-02-01 Jason Rumney <jasonr@gnu.org>
12484
12485 * w32term.c (w32_initialize): Add back smoothing_type and
12486 smoothing_enabled definitions.
12487
124882008-02-01 Kenichi Handa <handa@m17n.org>
12489
12490 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
12491 s->face->font on determining underline position.
12492
124932008-02-01 Kenichi Handa <handa@m17n.org>
12494
12495 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
12496 (font_has_char): Accept font-object too.
12497 (font_find_for_lface): Try at first with a size specified in face.
12498
124992008-02-01 Kenichi Handa <handa@m17n.org>
12500
12501 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
12502 font_open_by_name.
12503
125042008-02-01 Kenichi Handa <handa@m17n.org>
12505
12506 * font.h (QCspacing, QCdpi): Extern them.
12507 (enum font_spacing): New enum.
12508 (FONT_PIXEL_SIZE_QUANTUM): New macro.
12509
12510 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
12511 (QCspacing, QCdpi): New variables.
12512 (syms_of_font): Initialize them.
12513 (font_pixel_size): New function.
12514 (font_put_extra): New function.
12515 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
12516 in FONT_EXTRA.
12517 (font_parse_fcname): Handle enumerated values (e.g. bold).
12518 Fix handling font size. Add QCname property that contains only
12519 unknown properties.
12520 (font_score): Change argument. Change caller. Pay attention to
12521 FONT_PIXEL_SIZE_QUANTUM.
12522 (font_sort_entites, font_list_entities, font_find_for_lface)
12523 (font_open_for_lface, font_open_by_name): Fix handling of font size.
12524 (Ffont_spec): Add QCname property that contains only unknown properties.
12525
12526 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
12527 include weight in listing pattern, instead check weight of each
12528 listed font. Don't include scalable in pattern. Pay attention to
12529 FONT_PIXEL_SIZE_QUANTUM.
12530
125312008-02-01 Kenichi Handa <handa@m17n.org>
12532
12533 * font.c (font_parse_fcname): Fix parsing of point-size.
12534 (font_unparse_fcname): Produce symbolic names for style properties.
12535 (font_list_entities): Handle float size correctly.
12536 (font_open_by_name): Prefer `normal' property values if the name
12537 doesn't specify them.
12538
12539 * fontset.c (Finternal_char_font): Use font_get_name, not
12540 Ffont_xlfd_name.
12541
12542 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
12543 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
12544 pattern. Don't force scalable.
12545
12546 * xftfont.c (xftfont_open): For generating a name, start from
12547 96-byte buffer.
12548
125492008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12550
12551 * frame.h (x_new_fontset2): Fix prototype.
12552
125532008-02-01 Kenichi Handa <handa@m17n.org>
12554
12555 * font.h (struct font_driver): Delete member parse_name.
12556 (font_match_p, font_get_spec, font_parse_fcname)
12557 (font_unparse_fcname): Extern them.
12558 (font_get_name): Adjust prototype.
12559
12560 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
12561 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
12562 (font_expand_wildcards): Fix handling ENCODING field. Avoid
12563 unnecessary checks for weight, slant, and swidth.
12564 (font_parse_fcname): New function.
12565 (font_unparse_fcname): New function.
12566 (font_parse_name): New function.
12567 (font_match_p): New function.
12568 (font_get_name): Change return value to Lisp string.
12569 (font_get_spec): New function.
12570 (Qunspecified, Qignore_defface): Don't extern them.
12571 (font_find_for_lface): Assume that LFACE is fully specified.
12572 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
12573 object, use it for FACE.
12574 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
12575 driver->parse_name.
12576 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
12577
12578 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
12579 prototype.
12580
12581 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
12582 argument F. Don't call Fnew_fontset. Instead, directly call
12583 make_fontset.
12584
12585 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
12586
12587 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
12588 of x_new_fontset2.
12589
12590 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
12591 (Qsans__serif): New variables.
12592 (ftfont_generic_family_list): New variable.
12593 (syms_of_ftfont): Initialize the above variables.
12594 (ftfont_pattern_entity): Delete argument NAME.
12595 (ftfont_list_generic_family): New function.
12596 (ftfont_parse_name): Delete this function.
12597 (ftfont_list): Try generic family only when FcFontList found no font.
12598 (ftfont_list_family): Fix args to FcObjectSetBuild.
12599
12600 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
12601 object in attrs[LFACE_FONT_INDEX].
12602 (set_lface_from_font_name): Cancel all changes for font-backend.
12603 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
12604 function.
12605 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
12606 font object in QCfont attribute.
12607 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
12608 (realize_default_face) [USE_FONT_BACKEND]: Call
12609 set_lface_from_font_and_fontset.
12610
12611 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
12612 "fixed", and signal error here if no suitable font was found.
12613
12614 * xfont.c (xfont_parse_name): Delete this function.
12615
12616 * xftfont.c (xftfont_open): Change coding style of error
12617 handling. Generate fontconfig's fontname pattern.
12618
12619 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
12620 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
12621
12622 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
12623 Both args FONTSET and FONT_OBJECT must be existing ones.
12624
126252008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12626
12627 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
12628
126292008-02-01 Kenichi Handa <handa@m17n.org>
12630
12631 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
12632
12633 * font.h (struct font): Fix typo.
12634
12635 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
12636 XLFD_XXX_INDEX.
12637 (enum xlfd_field_mask): New enum.
12638 (intern_font_field): Changed argument. Change caller. If digits
12639 are followed by non-digits, return a symbol.
12640 (font_expand_wildcards): New function.
12641 (font_parse_xlfd): Fix wildcard handling.
12642 (Ffont_spec): If :name is specified, reflect the info in the other
12643 properties.
12644
12645 * ftfont.c (ftfont_pattern_entity): Fix typo.
12646 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
12647 locale.
12648
126492008-02-01 Kenichi Handa <handa@m17n.org>
12650
12651 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
12652
12653 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
12654 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
12655 registry doesn't specify encoding part.
12656 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
12657 (font_open_by_name): At first try parsing the name.
12658 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
12659 as Lisp symbols.
12660
12661 * fontset.c (reorder_font_vector): Pay attention to the case that
12662 the 3rd element of font_def is nil.
12663 (fontset_font): For the default fontset, append one more fontset
12664 elements for a script-based font specification. Don't add script
12665 attribute on finding a font.
12666 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
12667 font name.
12668 (fontset_ascii_font): If a font can't be opened, return nil.
12669
12670 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
12671 (ftfont_pattern_entity): New function.
12672 (ftfont_get_cache): Assume that freetype_font_cache is already
12673 initialized.
12674 (ftfont_list): Handle the case that a file is specified in font
12675 name. Use ftfont_pattern_entity to generate entities.
12676 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
12677 (syms_of_ftfont): Initialize freetype_font_cache.
12678
12679 * xftfont.c (xftfont_open): Make the font name fontconfig's
12680 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
12681 (xftfont_close): Free font->font.name if not NULL.
12682
12683 * xfont.c (xfont_list): If script is specified for a font, return
12684 null_vector.
12685 (xfont_list_family): Declare argument type.
12686
12687 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
12688 name, set LFACE_FONT (lface) to nil.
12689
12690 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
12691 return Qnil.
12692
126932008-02-01 Kenichi Handa <handa@m17n.org>
12694
12695 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
12696 (standard_args): Add "-enable-font-backend".
12697
126982008-02-01 Kenichi Handa <handa@m17n.org>
12699
12700 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
12701 (struct xftdraw_list, xftdraw_list): Delete them.
12702 (register_xftdraw, check_xftdraw): Delete them.
12703 (xftfont_prepare_face): Don't call register_xftdraw.
12704 (xftfont_done_face): Don't call check_xftdraw.
12705 (xftfont_draw): Get background color only when with_background is
12706 nonzero.
12707
12708 * xfont.c (xfont_encode_char): Fix calculation of char2b.
12709
127102008-02-01 Kenichi Handa <handa@m17n.org>
12711
12712 These changes are for the new font handling codes.
12713
12714 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
12715 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
12716 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
12717 (FONTSRC, FONTOBJ): New variables.
12718 (obj): Add $(FONTOBJ).
12719 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
12720 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
12721 @LIBOTF_LIBS@.
12722 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
12723 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
12724
12725 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
12726
12727 * character.h (Vscript_representative_chars): Extern it.
12728
12729 * character.c (Vscript_representative_chars): New variable.
12730 (syms_of_character): Declare it as a Lisp variable.
12731
12732 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
12733 enable_font_backend is nonzero, accept the composition method
12734 COMPOSITION_WITH_GLYPH_STRING.
12735
12736 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
12737 enumeration COMPOSITION_WITH_GLYPH_STRING.
12738
12739 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
12740 members clip_x, clip_y, clip_width, and clip_height.
12741 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
12742
12743 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
12744 --enable-font-backend. Call syms_of_font.
12745
12746 * fns.c (assoc_no_quit): New function.
12747
12748 * fontset.h (FONT_INFO_FROM_FACE): New macro.
12749 (face_for_font, new_fontset_from_font)
12750 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
12751
12752 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
12753 (fontset_font, fontset_ascii, face_for_char)
12754 (make_fontset_for_ascii_face, Ffont_info)
12755 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
12756 is nonzero, use font-backend mechanism.
12757 (find_font_encoding): Make it non-static.
12758 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
12759 New functions.
12760
12761 * frame.h (struct frame): New members resx and resy.
12762 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
12763 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
12764
12765 * frame.c [USE_FONT_BACKEND]: Include "font.h".
12766 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
12767
12768 * lisp.h (assoc_no_quit): Extern it.
12769
12770 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
12771 Through out the file, use FONT_INFO_FROM_FACE instead of
12772 FONT_INFO_FROM_ID, use get_per_char_metric instead of
12773 rif->per_char_metric.
12774 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
12775 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
12776 (get_glyph_face_and_encoding, fill_composite_glyph_string)
12777 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
12778 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
12779 nonzero, use font-backend mechanism.
12780 (get_per_char_metric): New function.
12781
12782 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
12783 (set_lface_from_font_name)
12784 (set_font_frame_param, free_realized_face)
12785 (prepare_face_for_display, clear_face_gcs)
12786 (Finternal_set_font_selection_order, realize_x_face)
12787 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
12788 font-backend mechanism.
12789 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
12790 (load_face_font) [USE_FONT_BACKEND]: Abort.
12791 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
12792 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
12793
12794 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
12795 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
12796 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
12797 nonzero, register all available font drivers. Call
12798 x_default_font_parameter for deciding a font.
12799 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
12800
12801 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
12802 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
12803 (x_set_glyph_string_clipping_exactly)
12804 (x_compute_glyph_string_overhangs)
12805 (x_draw_glyph_string_foreground)
12806 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
12807 (x_free_frame_resources) [USE_FONT_BACKEND]: If
12808 enable_font_backend is nonzero, use font-backend mechanism.
12809 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
12810
128112008-02-01 Kenichi Handa <handa@m17n.org>
12812
12813 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
12814 system_eol_type.
12815 (syms_of_coding): Initialize system_eol_type.
12816
12817 * process.c (Fset_process_coding_system): Inherit system's eol
12818 format if necessary.
12819
128202008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12821
12822 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
12823
128242008-02-01 Kenichi Handa <handa@m17n.org>
12825
12826 * coding.c (decode_eol): Pay attention to buffer relocation in
12827 del_range_2.
12828 (decode_coding): Call decode_eol before restoring undo_list.
12829
128302008-02-01 Kenichi Handa <handa@m17n.org>
12831
12832 * charset.c (Fdefine_charset_internal): Fix setting of
12833 emacs_mule_bytes.
12834
128352008-02-01 Kenichi Handa <handa@m17n.org>
12836
12837 * keyboard.c (read_char): Check if C is a character or not before
12838 looking up Vkeyboard_translate_table.
12839
128402008-02-01 Kenichi Handa <handa@m17n.org>
12841
12842 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
12843 condition to terminate the loop.
12844
128452008-02-01 Kenichi Handa <handa@m17n.org>
12846
12847 * coding.c (produce_composition): Compare charbuf[i] instead of
12848 args[i] against 0.
12849 (Fterminal_coding_system): Use EQ to compare Lisp objects.
12850
128512008-02-01 Kenichi Handa <handa@m17n.org>
12852
12853 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
12854 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
12855 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
12856 detect_coding.
12857 (emacs_mule_char): Handle old style (Emacs 20) component character
12858 of a composition.
12859 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
12860 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
12861 composition rule.
12862 (decode_coding_emacs_mule): Handle invalid bytes correctly.
12863
128642008-02-01 Kenichi Handa <handa@m17n.org>
12865
12866 * coding.c (encode_coding_ccl): Allocate destination dynamically
12867 when necessary.
12868
128692008-02-01 Kenichi Handa <handa@m17n.org>
12870
12871 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
12872 the loop. When quitted, show a proper error message.
12873
128742008-02-01 Kenichi Handa <handa@m17n.org>
12875
12876 * xterm.c (x_set_glyph_string_clipping_exactly): Set
12877 src->clip_head and src->clip_tail temporarily instead of src->hl.
12878
12879 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
12880 character sequence.
12881 (Fccl_execute_on_string): Use ASET, not XSET.
12882
128832008-02-01 Kenichi Handa <handa@m17n.org>
12884
12885 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
12886
128872008-02-01 Kenichi Handa <handa@m17n.org>
12888
12889 * coding.c (decode_coding): Fix the condition of terminating the
12890 decoding loop.
12891
128922008-02-01 Kenichi Handa <handa@m17n.org>
12893
12894 * data.c (Faset): On setting a character bigger than 255 in a
12895 unibyte string, signal an error instead of make the string multibyte.
12896
128972008-02-01 Kenichi Handa <handa@m17n.org>
12898
12899 * charset.c (map_charset_chars): Fix for ascii-compatible charset
12900 made by a mapping table.
12901
129022008-02-01 Kenichi Handa <handa@m17n.org>
12903
12904 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
12905 not.
12906 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
12907 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
12908
12909 * xterm.c (x_draw_composite_glyph_string_foreground): Check
12910 s->face is NULL or not.
12911
129122008-02-01 Kenichi Handa <handa@m17n.org>
12913
12914 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
12915 (x_draw_glyph_string): Fix drawing of right_overhang and
12916 left_overhang around/on cursor.
12917
12918 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
12919
129202008-02-01 Kenichi Handa <handa@m17n.org>
12921
12922 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
12923
129242008-02-01 Kenichi Handa <handa@m17n.org>
12925
12926 * coding.c (Fdefine_coding_system_internal)
12927 (Fdefine_coding_system_alias): Avoid a duplicated element in
12928 Vcoding_system_alist.
12929
129302008-02-01 Kenichi Handa <handa@m17n.org>
12931
12932 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
12933
12934 * coding.c (Qcoding_system_define_form): New variable.
12935 (syms_of_coding): Intern and staticpro it.
12936 (Fcoding_system_p): Check Qcoding_system_define_form.
12937 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
12938
12939 * coding.h (CODING_SYSTEM_P): If ID is not available, call
12940 Fcoding_system_p.
12941 (CHECK_CODING_SYSTEM): If ID is not available, call
12942 Fcheck_coding_system.
12943 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
12944 Try also Fcheck_coding_system.
12945
129462008-02-01 Kenichi Handa <handa@m17n.org>
12947
12948 * coding.c (code_conversion_restore): GCPRO arg.
12949
129502008-02-01 Kenichi Handa <handa@m17n.org>
12951
12952 * character.c (lisp_string_width): Check multibyteness of STRING.
12953
129542008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12955
12956 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
12957 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
12958 (decode_mac_font_name): Use decode_coding_c_string instead of
12959 decode_coding.
12960 (x_load_font): Initialize fontp->fontset to -1. Set
12961 fontp->encoding_type.
12962
129632008-02-01 Kenichi Handa <handa@m17n.org>
12964
12965 * search.c (search_buffer): Give up BM search on case-fold-search
12966 if one of a target character has a case-equivalence of different
12967 byte length even if that target charcter is an ASCII.
12968 (simple_search): Fix calculation of byte length of matched text.
12969 (boyer_moore): Fix handling of case-equivalent multibyte characters.
12970
129712008-02-01 Kenichi Handa <handa@m17n.org>
12972
12973 * coding.c (decode_coding): Fix handling of invalid bytes.
12974
129752008-02-01 Kenichi Handa <handa@m17n.org>
12976
12977 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
12978 Unicode characters.
12979
129802008-02-01 Kenichi Handa <handa@m17n.org>
12981
12982 * coding.c (encode_coding_object): If a pre-write-conversion
12983 function makes a new buffer, kill it.
12984
129852008-02-01 Kenichi Handa <handa@m17n.org>
12986
12987 * coding.c (QCascii_compatible_p): New variable.
12988 (syms_of_coding): Initialize it.
12989 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
12990 calling string_char.
12991 (record_conversion_result): Add `default:' case.
12992 (coding_charset_list): Delete unused variable `coding_type'.
12993 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
12994 property in the plist of the coding system.
12995 (Fcoding_system_put): Check QCascii_compatible_p.
12996
129972008-02-01 Miles Bader <miles@gnu.org>
12998
12999 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
13000 removed calculation of frame `f', as it's now used.
13001
130022008-02-01 Kenichi Handa <handa@m17n.org>
13003
13004 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
13005 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
13006 (UNIDATA): New variable.
13007 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
13008 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
13009 $(RUN_TEMACS) unconditionally.
13010
130112008-02-01 Kenichi Handa <handa@m17n.org>
13012
13013 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
13014 (admindir): New variable.
13015 ($(lispsource)international/charprop.el): New target.
13016
130172008-02-01 Miles Bader <miles@gnu.org>
13018
13019 * character.c (chars-in-region): Remove obsolete function.
13020 (syms_of_character): Remove its initialization.
13021
130222008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
13023
13024 * w32select.c (validate_coding_system)
13025 (setup_windows_coding_system): New functions.
13026 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
13027 setup_windows_coding_system.
13028 (setup_config, Fw32_get_clipboard_data): Use
13029 validate_coding_system.
13030 (Fx_selection_exists): Move call to setup_config to a place
13031 where signals are allowed.
13032
13033 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
13034 (Fcheck_coding_system): Add declarations.
13035
130362008-02-01 Kenichi Handa <handa@m17n.org>
13037
13038 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
13039
130402008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13041
13042 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
13043 string as the second argument for x_new_fontset.
13044
130452008-02-01 Kenichi Handa <handa@m17n.org>
13046
13047 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
13048 (encode_coding_object): Use safe_call instead of call2.
13049
130502008-02-01 Kenichi Handa <handa@m17n.org>
13051
13052 * fontset.c (Fset_fontset_font): Check family element of a given vector.
13053
13054 * Makefile.in (lisp): Include charprop.el.
13055
130562008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13057
13058 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
13059 Not sure if it's unnecessary.
13060
130612008-02-01 Steven Tamm <steventamm@mac.com>
13062
13063 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
13064 some possibly unnecessary fontset checking code that crashed
13065 when creating a new frame.
13066
130672008-02-01 Kenichi Handa <handa@m17n.org>
13068
13069 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
13070 lookup_face.
13071
13072 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
13073
13074 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
13075
130762008-02-01 Kenichi Handa <handa@m17n.org>
13077
13078 * coding.c: Cancel the change done in HEAD on 2008-02-01.
13079 (coding_charset_list): New function.
13080
13081 * coding.h (coding_charset_list): Extern it.
13082
130832008-02-01 Kenichi Handa <handa@m17n.org>
13084
13085 * fontset.c (Fset_fontset_font): Call find_font_encoding with
13086 concatenation of family and registry.
13087
130882008-02-01 Kenichi Handa <handa@m17n.org>
13089
13090 * character.h (BYTE8_STRING): Fix typo.
13091
13092 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
13093 string to multibyte (sync to HEAD).
13094
13095 * casefiddle.c (casify_region): Handle changes in byte-length
13096 using replace_range_2 (sync to HEAD).
13097
130982008-02-01 Andreas Schwab <schwab@suse.de>
13099
13100 * chartab.c (map_char_table): GCPRO table and arg.
13101
131022008-02-01 Kenichi Handa <handa@m17n.org>
13103
13104 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
13105 already at limit.
13106
131072008-02-01 Kenichi Handa <handa@m17n.org>
13108
13109 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
13110 instead of fast_c_string_match_ignore_case.
13111 (find_font_encoding): Change argument to Lisp_Object. Use
13112 fast_string_match_ignore_case instead of
13113 fast_c_string_match_ignore_case. Change caller.
13114
131152008-02-01 Kenichi Handa <handa@m17n.org>
13116
13117 * xdisp.c (get_next_display_element): In unibyte case, decide to
13118 display in octal form by checking a character by
13119 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
13120
13121 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
13122
13123 * character.c (unibyte_has_multibyte_table): New variable.
13124
13125 * character.h (unibyte_has_multibyte_table): Extern it.
13126 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
13127
131282008-02-01 Kenichi Handa <handa@m17n.org>
13129
13130 * coding.c (encode_coding_iso_2022): Fix handling of charset
13131 annotation.
13132
131332008-02-01 Kenichi Handa <handa@m17n.org>
13134
13135 * coding.c (setup_coding_system): If coding_system is nil, use
13136 Qundecided.
13137 (Fterminal_coding_system): Return nil if terminal coding system is
13138 `undecided'.
13139 (syms_of_coding): Define coding-system `undecided' here. Setup
13140 terminal_coding as `undecided'.
13141
131422008-02-01 Kenichi Handa <handa@m17n.org>
13143
13144 * xdisp.c (message_dolog, set_message_1): Call
13145 unibyte_char_to_multibyte with arg type int.
13146
13147 * lread.c (read1): Fix reading of a char-table.
13148
13149 * print.c (print_object): Include sub char-table in circularities
13150 detection.
13151
131522008-02-01 Kenichi Handa <handa@m17n.org>
13153
13154 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
13155 Append the found sequences in car of ARGS instead of prepending.
13156
131572008-02-01 Kenichi Handa <handa@m17n.org>
13158
13159 * fileio.c (report_file_error): Make a unibyte string from
13160 strerror (errorno).
13161 (Fsubstitute_in_file_name): Fix the arg to
13162 unibyte_char_to_multibyte. It is evaluated twice.
13163
131642008-02-01 Kenichi Handa <handa@m17n.org>
13165
13166 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
13167
131682008-02-01 Kenichi Handa <handa@m17n.org>
13169
13170 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
13171 BOM is not found.
13172 (detect_coding, detect_coding_system): Optimization for ISO-2022
13173 when no 8-bit data is found.
13174
131752008-02-01 Jason Rumney <jasonr@gnu.org>
13176
13177 * w32fns.c (x_to_w32_font): Update to use new coding struct.
13178
131792008-02-01 Kenichi Handa <handa@m17n.org>
13180
13181 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
13182 CHARS.
13183
131842008-02-01 Steven Tamm <steventamm@mac.com>
13185
13186 * macterm.c (mac_encode_char): Add charset argument and update
13187 to use encoding_type.
13188 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
13189 switch to pure fontset.
13190 (decode_mac_font_name): Temporarily remove decoding.
13191 (x_font_name_to_mac_font_name): Temporarily remove encoding.
13192 (x_load_font): Temporarily remove encoding.
13193
131942008-02-01 Kenichi Handa <handa@m17n.org>
13195
13196 * xfaces.c (Fface_font): If frame is not on a window system,
13197 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
13198 refer to face->font.
13199 (split_font_name_into_vector, build_font_name_from_vector)
13200 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
13201 when HAVE_WINDOW_SYSTEM is defined.
13202
132032008-02-01 Kenichi Handa <handa@m17n.org>
13204
13205 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
13206 (x_produce_glyphs): Fix setting of members of cmp in case
13207 cmp->glyph_len is zero.
13208
13209 * fontset.c (Fset_fontset_font): Fix docstring.
13210 (Ffontset_info): Make it backward compatible. New arg ALL.
13211
132122008-02-01 Kim F. Storm <storm@cua.dk>
13213
13214 * process.c (read_process_output): Grow decoding_buf when needed;
13215 this could cause a crash in allocate_string and compact_small_strings.
13216
132172008-02-01 Kenichi Handa <handa@m17n.org>
13218
13219 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
13220
132212008-02-01 Kenichi Handa <handa@m17n.org>
13222
13223 * coding.c (setup_coding_system): Set coding->common_flags
13224 correctly for raw-text.
13225 (consume_chars): On encoding unibyte text by raw-text, don't check
13226 multibyte form.
13227 (encode_coding): On encoding by raw-text, never use translation tables.
13228
13229 * fileio.c (e_write): Short cut for the case of no encoding.
13230
132312008-02-01 Kenichi Handa <handa@m17n.org>
13232
13233 * coding.c (detect_coding, detect_coding_system): Delete unused
13234 variables.
13235
132362008-02-01 Kenichi Handa <handa@m17n.org>
13237
13238 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
13239 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
13240
132412008-02-01 Kenichi Handa <handa@m17n.org>
13242
13243 * coding.c (Ffind_coding_systems_region_internal): Include
13244 raw-text and no-conversion in the result.
13245
132462008-02-01 Kenichi Handa <handa@m17n.org>
13247
13248 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
13249 (load_font_get_repertory): Delete unnecessary check of ENCODING of
13250 FONT_DEF.
13251 (font_def_arg, add_arg, from_arg, to_arg): New args.
13252 (set_fontset_font): Change argument.
13253 (Fset_fontset_font): Fix for the case that TARGET is a script
13254 name and charset name.
13255 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
13256
132572008-02-01 Kenichi Handa <handa@m17n.org>
13258
13259 * fontset.c (fontset_font): Rename from fontset_face. Change return
13260 value.
13261 (face_suitable_for_char_p, face_for_char): Adjust for the change
13262 of fontset_font.
13263 (make_fontset_for_ascii_face): Fix setting of the fontset element
13264 for ASCII.
13265 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
13266 to get a font name.
13267 (Ffontset_info): Adjust for the change of fontset_font.
13268
13269 * coding.c (emacs_mule_char): Check invalid code more rigidly.
13270
13271 * character.h (LEADING_CODE_LATIN_1_MIN)
13272 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
13273
132742008-02-01 Kenichi Handa <handa@m17n.org>
13275
13276 * editfns.c (check_translation): New function.
13277 (Ftranslate_region_internal): Handle M:N mapping.
13278
132792008-02-01 Kenichi Handa <handa@m17n.org>
13280
13281 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
13282
132832008-02-01 Kenichi Handa <handa@m17n.org>
13284
13285 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
13286 goto invalid_code.
13287 (decode_coding_iso_2022): Fix handling of invalid designation.
13288
13289 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
13290 after calling code_conversion_save.
13291
132922008-02-01 Kenichi Handa <handa@m17n.org>
13293
13294 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
13295
13296 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
13297
13298 * fontset.c: Include "intervals.h".
13299 (fontset_face): Fix comparing of Lisp_Objects.
13300 (free_face_fontset, new_fontset_from_font_name): Fix
13301 Lisp_Object/int mixup.
13302
13303 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
13304
13305 * coding.c: Add many prototypes for static functions.
13306 (get_translation_table): Allow max_lookup to be NULL.
13307 (decode_coding, Ffind_coding_systems_region_internal)
13308 (Funencodable_char_position, Fcheck_coding_systems_region): Call
13309 get_translation_table with max_lookup NULL.
13310
133112008-02-01 Kenichi Handa <handa@m17n.org>
13312
13313 * coding.c (get_translation_table): Declare it as Lisp_Object.
13314 (LOOKUP_TRANSLATION_TABLE): New macro.
13315 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
13316 instead of CHAR_TABLE_REF.
13317
133182008-02-01 Kenichi Handa <handa@m17n.org>
13319
13320 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
13321 annotation data format.
13322 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
13323 Change arguments FROM and TO to single argument NCHARS. Change caller.
13324 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
13325 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13326 (decode_coding_ccl, decode_coding_charset): Pay attention to
13327 coding->charbuf_used.
13328 (get_translation): New function.
13329 (produce_chars): New arguments translation_table and last_block.
13330 Translate characters here. Return number of carryover chars.
13331 Change caller.
13332 (produce_composition): New argument pos. Change caller.
13333 Adjust for the change of annotation data format.
13334 (produce_charset, produce_annotation): Likewise.
13335 (decode_coding, encode_coding): Don't call translate_chars.
13336 (consume_chars): New arg translation_table. Change caller.
13337 (translate_chars): Delete.
13338 (syms_of_coding): Make translation-table's number of extra slots 2.
13339
133402008-02-01 Kenichi Handa <handa@m17n.org>
13341
13342 * search.c (simple_search): Fix setting this_pos_byte in backward
13343 search.
13344
13345 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
13346 byte sequence.
13347 (detect_coding_ccl): Fix setting of the variable valids.
13348
133492008-02-01 Kenichi Handa <handa@m17n.org>
13350
13351 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
13352
13353 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
13354
13355 * editfns.c (Ftranslate_region_internal): Rename from
13356 Ftranslate_region. Accept a char-table in TABLE.
13357 (syms_of_editfns): Defsubr Stranslate_region_internal.
13358
13359 * xfaces.c (set_lface_from_font_name): If a font is specified for
13360 a frame, generate a fontset from the font.
13361 (build_scalable_font_name): If the scalable font is requested for
13362 a specific size, don't change that size.
13363 (try_font_list): Try a scalable font also in the case that a
13364 pattern string is specified.
13365
133662008-02-01 Kenichi Handa <handa@m17n.org>
13367
13368 * xfaces.c (Fface_font): New optional arg CHARACTER.
13369
133702008-02-01 Kenichi Handa <handa@m17n.org>
13371
13372 * charset.h (CHARSET_OFFSET): New macro.
13373
133742008-02-01 Kenichi Handa <handa@m17n.org>
13375
13376 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
13377
13378 * fontset.c (fontset_face): Handle the case that repertory is a
13379 char-table.
13380 (find_font_encoding): Return nil for unknown encoding.
13381 (Fset_fontset_font): Ignore a font of unknown encoding.
13382
133832008-02-01 Kenichi Handa <handa@m17n.org>
13384
13385 * keymap.c (describe_vector): Handle default value of a char table.
13386
13387 * fontset.c (fontset_face): Handle fallback fonts correctly.
13388 (Ffontset_info): Return infomation about fallback fonts.
13389
133902008-02-01 Kenichi Handa <handa@m17n.org>
13391
13392 * fontset.c (FONTSET_DEFAULT): New macro.
13393 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
13394 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
13395 the case that it is nil.
13396 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
13397 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
13398
13399 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
13400 subset or superset.
13401
134022008-02-01 Kenichi Handa <handa@m17n.org>
13403
13404 * emacs.c (main): Call init_charset after syms_of_XXX.
13405
13406 * charset.c (Vcharset_map_directory): Delete.
13407 (Vcharset_map_path): New variable.
13408 (load_charset_map_from_file): Use Vcharset_map_path instead.
13409 (init_charset): Initialize Vcharset_map_path.
13410 (syms_of_charset): Delete declaration of "charset-map-directory",
13411 add declaration of "charset-map-path".
13412
134132008-02-01 Kenichi Handa <handa@m17n.org>
13414
13415 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
13416 ASCII only string.
13417
13418 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
13419
13420 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
13421 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
13422
134232008-02-01 Kenichi Handa <handa@m17n.org>
13424
13425 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
13426
13427 * coding.c (QCmnemonic, QCdefalut_char)
13428 (QCdecode_translation_table, QCencode_translation_table)
13429 (QCpost_read_conversion, QCpre_write_conversion): New variables.
13430 (get_translation_table): Return a list of translation tables if
13431 necessary.
13432 (decode_coding): Call get_translation_table with ENCODEP 0.
13433 (char_encodable_p): If translation_table is non-nil, always call
13434 translate_char.
13435 (Fdefine_coding_system_internal): Accept list of translation
13436 tables as :encode-translation-table and :decode-translation-table.
13437 (Fcoding_system_put): New function.
13438 (syms_of_coding): Declare new symbols. Defsubr
13439 Scoding_system_put.
13440 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
13441 typically JISX0212.
13442
13443 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
13444 when the charset is superset type.
13445
13446 * character.c (translate_char): Accept list of translation tables.
13447
134482008-02-01 Kenichi Handa <handa@m17n.org>
13449
13450 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
13451 (CODING_ATTR_TRANS_TBL): New macro.
13452
13453 * coding.c (get_translation_table): New function.
13454 (translate_chars): Fix the bug of skipping annotation data.
13455 (decode_coding, encode_coding): Utilize get_translation_table.
13456 (char_encodable_p, Funencodable_char_position): Translate char if
13457 necessary.
13458 (Ffind_coding_systems_region_internal)
13459 (Fcheck_coding_systems_region): Setup translation table for encode
13460 in a coding system attribute vector in advance.
13461 (Fdefine_coding_system_internal): Allow a symbol as translation
13462 table. For shift-jis type coding system, allow 4th charset.
13463
134642008-02-01 Kenichi Handa <handa@m17n.org>
13465
13466 * coding.c (decode_coding_sjis): Check the first byte rigidly.
13467
13468 * xdisp.c (get_next_display_element): Pass -1 as POS to
13469 FACE_FOR_CHAR if displaying a C-string.
13470
134712008-02-01 Kenichi Handa <handa@m17n.org>
13472
13473 * composite.c (get_composition_id): Handle xoff and yoff in a
13474 composition rule.
13475
13476 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
13477 (struct composition): New member lbearing and rbearing.
13478
13479 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
13480 (x_get_glyph_overhangs): Handle a composition glyph.
13481 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
13482
13483 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
13484 composition glyph.
13485
134862008-02-01 Kenichi Handa <handa@m17n.org>
13487
13488 * print.c: Include charset.h.
13489 (Vprint_charset_text_property): New variable.
13490 (Qdefault): Extern it.
13491 (PRINT_STRING_NON_CHARSET_FOUND)
13492 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
13493 (print_check_string_result): New variable.
13494 (print_check_string_charset_prop): New function.
13495 (print_prune_charset_plist): New variable.
13496 (print_prune_string_charset): New function.
13497 (print_object): Call print_prune_string_charset if
13498 Vprint_charset_text_property is not t.
13499 (print_interval): Print nothing if interval->plist is nil.
13500 (syms_of_print): Declare Vprint_charset_text_property as a lisp
13501 variable. Init and staticpro print_prune_charset_plist.
13502
135032008-02-01 Kenichi Handa <handa@m17n.org>
13504
13505 * fontset.c (new_fontset_from_font_name): Use the specified font
13506 for all characters in the new fontset.
13507
13508 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13509 OBJECT args.
13510
13511 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
13512 OBJECT args for composition too.
13513
13514 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13515 OBJECT args.
13516
135172008-02-01 Kenichi Handa <handa@m17n.org>
13518
13519 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
13520
13521 * fontset.c (reorder_font_vector): Adjust for the change of
13522 FONT_DEF format.
13523 (fontset_face): New arg id. Change caller.
13524 (face_for_char): New args pos and object.
13525 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
13526 (fs_query_fontset): Check NAME by Fassoc too.
13527 (Fset_fontset_font): Allow non-XLFD font name.
13528 (Ffontset_info): Adjust for the change of FONT_DEF format.
13529
13530 * fontset.h (face_for_char): Adjust prototype.
13531
13532 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
13533 (append_space, extend_face_to_end_of_line)
13534 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13535 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
13536
13537 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
13538 POS and OBJECT args.
13539
13540 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
13541 POS and OBJECT args.
13542
135432008-02-01 Jason Rumney <jasonr@gnu.org>
13544
13545 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
13546 of GlobalAlloc'ed memory.
13547
135482008-02-01 Kenichi Handa <handa@m17n.org>
13549
13550 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
13551
13552 * charset.h (charset_table_used): Delete extern.
13553
13554 * charset.c (charset_table_used): Make it static.
13555 (map_charset_chars): Fix args to c_function with.
13556
13557 * chartab.c (map_sub_char_table_for_charset): Fix args to
13558 c_function with.
13559
13560 * coding.h (enum coding_result_code): Delete
13561 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
13562
13563 * coding.c (Qinsufficient_source, Qinconsistent_eol)
13564 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
13565 (Vlast_code_conversion_error): New variables.
13566 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
13567 (ONE_MORE_BYTE): Record error if any instead of signaling an
13568 error. If non-ASCII multibyte char is found, return the negative
13569 value of the code. All callers changed to check it.
13570 (ONE_MORE_BYTE_NO_CHECK): Likewise.
13571 (record_conversion_result): New function. Change all codes setting
13572 coding->result to call this function.
13573 (detect_coding_utf_8, decode_coding_utf_8)
13574 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
13575 Don't use the local variable incomplete.
13576 (emacs_mule_char): Change the second arg to `const'.
13577 (decode_coding): Fix of flushing out unprocessed data.
13578 (make_conversion_work_buffer): Fix making of a work buffer.
13579 (decode_coding_object): Return coding->dst_object.
13580
13581 * fontset.c (set_fontset_font): Fix args.
13582
13583 * lisp.h (CHARACTERBITS): Define as 22.
13584
13585 * process.c (send_process): Be sure to set coding->src_multibyte.
13586
13587 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
13588
135892008-02-01 Kenichi Handa <handa@m17n.org>
13590
13591 * xdisp.c (handle_auto_composed_prop): Give limit to
13592 Fnext_single_char_property_change.
13593
135942008-02-01 Kenichi Handa <handa@m17n.org>
13595
13596 * composite.c (syms_of_composite): Don't make the composition hash
13597 table weak.
13598
13599 * fontset.c (Fset_fontset_font): Fix docstring.
13600
13601 * lisp.h (detect_coding_system): Adjust prototype.
13602
13603 * fileio.c (kill_workbuf_unwind): Delete this function.
13604 (Finsert_file_contents): Adjust the call of detect_coding_system.
13605 Get conversion_buffer by code_conversion_save. Use the macro
13606 CODING_MAY_REQUIRE_DECODING. After decoding, update
13607 coding_system.
13608
13609 * coding.h (make_conversion_work_buffer): Delete extern.
13610 (code_conversion_save): Extern it.
13611
13612 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
13613 (CODING_GET_INFO): Delete argument eol_type. Change callers.
13614 (decode_coding_utf_8): Don't do eol converion.
13615 (detect_coding_utf_16): Check coding->src_chars, not
13616 coding->src_bytes. Add heuristics for those that have no signature.
13617 (decode_coding_emacs_mule, decode_coding_iso_2022)
13618 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13619 Don't do eol converion.
13620 (adjust_coding_eol_type): Return a new coding system.
13621 (detect_coding): Don't detect eol. Fix for utf-16 detection.
13622 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
13623 each change.
13624 (decode_coding): Pay attention to undo_list. Do eol conversion for
13625 all types of coding-systems (if necessary).
13626 (Vcode_conversion_work_buf_list): Delete it.
13627 (Vcode_conversion_reused_workbuf): Rename from
13628 Vcode_conversion_reused_work_buf.
13629 (Vcode_conversion_workbuf_name): New variable.
13630 (reused_workbuf_in_use): New variable.
13631 (make_conversion_work_buffer): Delete the arg DEPTH.
13632 (code_conversion_restore): Change argument to cons.
13633 (code_conversion_save): Delete the argument BUFFER. Change callers.
13634 (detect_coding_system): New argument src_chars. Change callers.
13635 Fix for utf-16 detection.
13636 (init_coding_once): Don't use ISO_carriage_return.
13637 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
13638 reused_workbuf_in_use.
13639
136402008-02-01 Kenichi Handa <handa@m17n.org>
13641
13642 * keymap.c (store_in_keymap): Pay attention to the case that idx
13643 is a cons specifying a character range.
13644
136452008-02-01 Kenichi Handa <handa@m17n.org>
13646
13647 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
13648 HANDLED_RECOMPUTE_PROPS.
13649
13650 * coding.c (Fdefine_coding_system_internal): Fix checking of
13651 ascii compatibility.
13652
136532008-02-01 Kenichi Handa <handa@m17n.org>
13654
13655 * charset.c (find_charsets_in_text): Delete unused locale variable.
13656 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
13657
13658 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
13659 Resync charset_list to Vemacs_mule_charset_list.
13660
13661 * keymap.c (store_in_keymap): Pay attention to the case that idx
13662 is a cons specifying a character range.
13663
136642008-02-01 Kenichi Handa <handa@m17n.org>
13665
13666 * composite.c (update_compositions): Bind inhibit-read-only, etc
13667 to t before calling remove-list-of-text-properties.
13668
13669 * print.c (print_object): Always print ASCII chars as is.
13670
136712008-02-01 Kenichi Handa <handa@m17n.org>
13672
13673 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
13674
13675 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
13676 is a char table.
13677
136782008-02-01 Kenichi Handa <handa@m17n.org>
13679
13680 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
13681
136822008-02-01 Kenichi Handa <handa@m17n.org>
13683
13684 * xfaces.c (set_lface_from_font_name): Fix for the case that
13685 FONTNAME is not fontset name.
13686
136872008-02-01 Kenichi Handa <handa@m17n.org>
13688
13689 * fns.c (base64_encode_1): Fix previous change.
13690
136912008-02-01 Kenichi Handa <handa@m17n.org>
13692
13693 * fontset.c (set_fontset_font): New function.
13694 (Fset_fontset_font): If a font is specified for a charset, use
13695 map_charset_chars to store the font spec in a fontset.
13696
136972008-02-01 Kenichi Handa <handa@m17n.org>
13698
13699 * fontset.c (fontset_face): Create a fallback fontset on demand.
13700 (make_fontset): Don't create a fallback fontset here.
13701 (free_face_fontset): Free a fallback fontset (if any) too.
13702 (n_auto_fontsets): Delete this variable.
13703 (auto_fontset_alist): New variable.
13704 (new_fontset_from_font_name): Check auto_fontset_alist.
13705 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
13706 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
13707 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
13708 Defsubr Sfontset_list_all.
13709
137102008-02-01 Kenichi Handa <handa@m17n.org>
13711
13712 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
13713
137142008-02-01 Kenichi Handa <handa@m17n.org>
13715
13716 * fontset.c (Fnew_fontset): Check NAME more rigidly.
13717
137182008-02-01 Kenichi Handa <handa@m17n.org>
13719
13720 * editfns.c (Fgoto_char): Fix docstring.
13721
137222008-02-01 Kenichi Handa <handa@m17n.org>
13723
13724 * insdel.c (insert_from_gap): Adjust intervals correctly.
13725
137262008-02-01 Jason Rumney <jasonr@gnu.org>
13727
13728 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
13729 (pfnGetFontUnicodeRanges): New dynamically loaded function.
13730 (w32_initialize): Try to load it.
13731 (x_get_font_repertory): Use it if available.
13732 (w32_encode_char): Add shortcut for unicode output.
13733
13734 * w32fns.c (w32_load_system_font): Default charset to -1.
13735 (x_to_w32_charset): Match all fonts for unicode.
13736 (w32_to_x_charset): New parameter matching. Don't return partial
13737 or wildcard charsets.
13738 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
13739 (w32_codepage_for_font): Return CP_UNICODE for unicode.
13740 (w32_to_x_font): Match charset to real charset.
13741 (enum_font_cb2): Always list unicode versions.
13742
13743 * makefile.w32-in (temacs): Increase EMHEAP.
13744
137452008-02-01 Jason Rumney <jasonr@gnu.org>
13746
13747 * w32term.c (w32_encode_char): New charset parameter.
13748 font_info.encoding becomes encoding_type.
13749 (x_get_font_repertory): New function. Warning: stub only!
13750 (x_new_font): Return quickly if font already set.
13751 (x_new_fontset): fontsetname parameter is Lisp_Object.
13752 Use new fs_query_fontset. Try new_fontset_from_font_name.
13753 Use fontset_name for return value.
13754
13755 * w32term.h: Declare x_get_font_repertory.
13756
13757 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
13758 place of find_charset_in_text. Use encode_coding_object in place
13759 of encode_coding.
13760 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
13761 decode_coding.
13762
13763 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
13764 of x_new_fontset.
13765 (w32_load_system_font): Initialize charset as unicode.
13766 font_info.encoding becomes encoding_type.
13767 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
13768 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
13769 (syms_of_w32fns): Set get_font_repertory_func.
13770
13771 * w32console.c: Include character.h. Use terminal_encode_buffer
13772 from term.c.
13773 (write_glyphs): Use new version of encode_terminal_code. Use
13774 encode_coding_object in place of encode_coding.
13775
13776 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
13777 encoding becomes encoding_type.
13778
13779 * term.c (terminal_encode_buffer): Make externally visible.
13780
13781 * makefile.w32-in: Add character.h dependancies.
13782 (character.o, chartab.o): New targets.
13783
137842008-02-01 Kenichi Handa <handa@m17n.org>
13785
13786 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
13787 CODING_ID_EOL_TYPE.
13788
137892008-02-01 Andreas Schwab <schwab@suse.de>
13790
13791 * coding.c (produce_chars): Revert last change.
13792
137932008-02-01 Kenichi Handa <handa@m17n.org>
13794
13795 * charset.h (charset_unicode): Extern it.
13796
13797 * charset.c (string_xstring_p): Check by (C >= 0x100).
13798 (find_charsets_in_text): Change format of the arc CHARSETS. New
13799 arg MULTIBYTE.
13800 (Ffind_charset_region, Ffind_charset_string): Adjust for the
13801 change of find_charsets_in_text.
13802 (Fsplit_char): Fix doc. Never return unknown.
13803
13804 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
13805
13806 * coding.c (Fdefine_coding_system_alias): Update
13807 Vcoding_system_list.
13808
13809 * fontset.c (load_font_get_repertory): Pay attention to the case
13810 that ENCODING of a font is specified by a char-table.
13811
13812 * xterm.c (x_get_font_repertory): Handle the case that the
13813 encoding of font is other than Unicode.
13814
138152008-02-01 Kenichi Handa <handa@m17n.org>
13816
13817 * term.c (encode_terminal_code): Don't handle glyph-table. Check
13818 if a character is encodable by the terminal coding system. If
13819 not, produces proper number of `?'s. Update
13820 terminal_encode_buffer and terminal_encode_buf_size if necessary.
13821 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
13822
138232008-02-01 Kenichi Handa <handa@m17n.org>
13824
13825 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
13826 variables.
13827 (encode_terminal_code): Change argument. Encode multiple
13828 characters at once. Store the result of encoding in
13829 terminal_encode_buffer.
13830 (write_glyphs, insert_glyphs): Adjust for the change of
13831 encode_terminal_code.
13832 (term_init): Initialize terminal_encode_buffer and
13833 terminal_encode_buf_size.
13834
13835 * coding.c (consume_chars): If coding->src_object is nil, don't
13836 check annotation.
13837
138382008-02-01 Kenichi Handa <handa@m17n.org>
13839
13840 * character.c (char_string): Use ASCII_CHAR_P instead of
13841 SINGLE_BYTE_CHAR_P.
13842
138432008-02-01 Kenichi Handa <handa@m17n.org>
13844
13845 * xdisp.c (handle_auto_composed_prop): Check if the last
13846 characters of auto-composed region is newly composed with the
13847 following characters.
13848 (handle_composition_prop): Fix checking of point being inside
13849 composition.
13850
138512008-02-01 Kenichi Handa <handa@m17n.org>
13852
13853 * fns.c (concat): Don't change multibyteness of the result by
13854 concatenating an 8-bit character.
13855
13856 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
13857 multibyteness of the result when newelt is an 8-bit character.
13858
138592008-02-01 Dave Love <fx@gnu.org>
13860
13861 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
13862 EMACS_INT.
13863
13864 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
13865
13866 * xfaces.c (face_numeric_value): Declare dim size_t.
13867 (Finternal_lisp_face_equal_p): Remove unused f.
13868
13869 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
13870 (MATRIX_ROW): Remove unused vars.
13871 (draw_glyphs, x_insert_glyphs, fast_find_position)
13872 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
13873 byte/char counts.
13874
13875 * regex.c (regex_compile): Remove unused var.
13876
13877 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
13878
13879 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13880 (Faccessible_keymaps, where_is_internal): Remove unused vars.
13881
13882 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
13883
13884 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
13885
13886 * fileio.c (Fwrite_region): Remove unused var.
13887
13888 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
13889 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
13890
13891 * composite.c (Fremove_list_of_text_properties): Declare.
13892
13893 * coding.c (inhibit_pre_post_conversion): Remove (unused).
13894 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
13895 (coding_inherit_eol_type): Remove unused attrs.
13896 (detect_coding): Cast arg of detect_eol.
13897
13898 * charset.c (syms_of_charset): Remove unused var p.
13899 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
13900 byte/char counts.
13901
13902 * casetab.c (set_case_table): Remove unused var.
13903
13904 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
13905 unused vars.
13906
139072008-02-01 Dave Love <fx@gnu.org>
13908
13909 * xterm.c (x_bitmap_mask): Declare.
13910
139112008-02-01 Dave Love <fx@gnu.org>
13912
13913 * xterm.c (x_term_init): Fix type error.
13914
13915 * lisp.h: Add Funibyte_char_to_multibyte.
13916
13917 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
13918 (Fset_coding_system_priority): Doc fix.
13919
13920 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
13921
13922 * indent.c (check_composition): Make start and end EMACS_INT.
13923
13924 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
13925
13926 * xdisp.c (handle_composition_prop, check_point_in_composition):
13927 Make buffer positions EMACS_INT.
13928
13929 * composite.c (find_composition, run_composition_function)
13930 (update_compositions, Ffind_composition_internal): Make buffer
13931 positions EMACS_INT.
13932
13933 * composite.h (find_composition, update_compositions): Make
13934 position args EMACS_INT.
13935
13936 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
13937
13938 * intervals.c (get_property_and_range):
13939 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
13940
13941 * unexalpha.c: Don't include varargs.h.
13942
139432008-02-01 Dave Love <fx@gnu.org>
13944
13945 * coding.h (ENCODE_UTF_8): New.
13946
13947 * Makefile.in (gtkutil.o): Depend on coding.h.
13948
13949 * coding.c (Fset_coding_system_priority): Doc fix.
13950
139512008-02-01 Kenichi Handa <handa@m17n.org>
13952
13953 * fileio.c (Finsert_file_contents): Call setup_coding_system in
13954 the case of auto saving.
13955
139562008-02-01 Andreas Schwab <schwab@suse.de>
13957
13958 * chartab.c (map_char_table, map_char_table_for_charset): Protect
13959 `range' from GC.
13960
139612008-02-01 Kenichi Handa <handa@m17n.org>
13962
13963 * coding.c (decode_coding_sjis): Check bytes more rigidly.
13964
139652008-02-01 Kenichi Handa <handa@m17n.org>
13966
13967 * fileio.c (choose_write_coding_system): Return a decided coding system.
13968 (Fwrite_region): Set Vlast_coding_system_used to the return value
13969 of choose_write_coding_system.
13970
139712008-02-01 Kenichi Handa <handa@m17n.org>
13972
13973 * charset.c (Fset_charset_priority): Pay attention to duplicated
13974 arguments.
13975
13976 * coding.c (QCcategory): New variable.
13977 (syms_of_coding): Defsym it. Set all elements of
13978 Vcoding_category_table and their symbol values.
13979 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
13980 coding-category-XXX, and coding-category-list.
13981 (Fdefine_coding_system_internal): Add category in the plist.
13982
139832008-02-01 Kenichi Handa <handa@m17n.org>
13984
13985 * callproc.c (Fcall_process): Handle carryover correctly.
13986
13987 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
13988 (raw_text_coding_system): Check NILP (coding_system).
13989 (coding_inherit_eol_type): Check NILP (coding_system) and
13990 NILP (parent).
13991 (consume_chars): Fix for the case of raw-text.
13992
13993 * process.c (read_process_output): Handle carryover correctly.
13994
139952008-02-01 Dave Love <fx@gnu.org>
13996
13997 * regex.c (re_search_2): Fix last change.
13998
139992008-02-01 Kenichi Handa <handa@m17n.org>
14000
14001 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
14002 target_multibyte. Even in a unibyte case, return a converted
14003 multibyte char.
14004 (GET_CHAR_AFTER): New macro.
14005 (PATFETCH): Translate via multibyte char.
14006 (HANDLE_UNIBYTE_RANGE): Delete this macro.
14007 (SETUP_MULTIBYTE_RANGE): New macro.
14008 (regex_compile): Setup compiled code so that its multibyteness
14009 matches that of a target. Fix the handling of "[X-YZ]" using
14010 SETUP_MULTIBYTE_RANGE.
14011 (analyse_first) <charset>: For filling fastmap for all multibyte
14012 characters, don't check by BASE_LEADING_CODE_P.
14013 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
14014 the same as RE_MULTIBYTE_P (bufp) now.
14015 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
14016 (TARGET_CHAR_AND_LENGTH): Delete this macro.
14017 (TRANSLATE_VIA_MULTIBYTE): New macro.
14018 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
14019 It is the same as RE_MULTIBYTE_P (bufp) now.
14020 <exactn>: Translate via multibyte.
14021 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
14022 translate it.
14023 <charset, charset_not>: Fetch a character by
14024 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
14025 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
14026 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
14027 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
14028 by GET_CHAR_AFTER.
14029 (bcmp_translate): Likewise.
14030
14031 * search.c (compile_pattern): Check the member target_multibyte,
14032 not the member multibyte of buf.
14033
14034 * lread.c (read1): While reading a string, set force_singlebyte
14035 and force_multibyte correctly.
14036
14037 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
14038 up of unibyte_to_multibyte_table.
14039
140402008-02-01 Kenichi Handa <handa@m17n.org>
14041
14042 * coding.c (setup_coding_system): If coding has
14043 post-read-conversion or pre-write-conversion, set
14044 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
14045 respectively.
14046 (decode_coding_gap): Run post-read-conversion if any.
14047
14048 * fileio.c (Finsert_file_contents): Even if we read into a
14049 unibyte buffer, check if we must decode the result or not.
14050
140512008-02-01 Kenichi Handa <handa@m17n.org>
14052
14053 * coding.c (make_conversion_work_buffer): Change the work buffer
14054 name to the same one as that of Emacs 21.
14055
140562008-02-01 Kenichi Handa <handa@m17n.org>
14057
14058 * coding.h (make_conversion_work_buffer): Adjust prototype.
14059 (code_conversion_restore): Don't extern it.
14060
14061 * coding.c (detected_mask): Delete unused variable.
14062 (decode_coding_iso_2022): Pay attention to the byte sequence of
14063 CTEXT extended segment, and retain those bytes as is.
14064 (decode_coding_ccl): Delete unused variable `valids'.
14065 (setup_coding_system): Delete unused variable `category'.
14066 (consume_chars): Delete unused variable `category'. Make it work
14067 for non-multibyte case.
14068 (make_conversion_work_buffer): Change argument.
14069 (saved_coding): Delete unused variable.
14070 (code_conversion_restore): Don't check saved_coding->destination.
14071 (code_conversion_save): New function.
14072 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
14073 instead of record_unwind_protect.
14074 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
14075 (detect_coding_system): Delete unused variable `mask'.
14076 (Fdefine_coding_system_internal): Delete unused variable id.
14077
14078 * fileio.c (kill_workbuf_unwind): New function.
14079 (Finsert_file_contents): On replacing, call
14080 make_conversion_work_buffer with correct args, and call
14081 record_unwind_protect with the first arg kill_workbuf_unwind.
14082
14083 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
14084
140852008-02-01 Kenichi Handa <handa@m17n.org>
14086
14087 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
14088 (fontset_add): Fix for the case that TO is less than TO1.
14089 (Ffontset_info): Don't use fallback fontset on checking the
14090 default fontset.
14091 (dump_fontset): New function for debugging.
14092
14093 * coding.c (Fdefine_coding_system_internal): Fix for the case that
14094 coding_type is Qcharset.
14095
140962008-02-01 Kenichi Handa <handa@m17n.org>
14097
14098 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
14099 (map_char_table): Don't inherit the value from the parent on
14100 initializing VAL. Adjust for the above change.
14101
141022008-02-01 Kenichi Handa <handa@m17n.org>
14103
14104 * coding.c (Qsignature, Qendian): Delete these variables.
14105 (syms_of_coding): Don't initialize them.
14106 (CATEGORY_MASK_UTF_16_AUTO): New macro.
14107 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
14108 detect_info->found.
14109 (decode_coding_utf_16): Don't detect BOM here.
14110 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
14111 is NOT utf_16_without_bom.
14112 (setup_coding_system): For a coding system of type utf-16, check
14113 if the attribute :endian is Qbig or not (not nil or not), and set
14114 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
14115 (detect_coding): If coding type is utf-16 and BOM detection is
14116 required, detect it.
14117 (Fdefine_coding_system_internal): For a coding system of type
14118 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
14119
141202008-02-01 Kenichi Handa <handa@m17n.org>
14121
14122 * coding.c (coding_set_source): Fix for the case that the current
14123 buffer is different from coding->src_object.
14124 (decode_coding_object): Don't use the conversion work buffer if
14125 DST_OBJECT is a buffer.
14126
141272008-02-01 Dave Love <fx@gnu.org>
14128
14129 * lread.c (read_emacs_mule_char) [len==2]: Index
14130 emacs_mule_charset correctly.
14131
141322008-02-01 Dave Love <fx@gnu.org>
14133
14134 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
14135 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
14136 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
14137 treated specially.)
14138 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
14139 (detected_mask): Remove Big5 bits.
14140
141412008-02-01 Kenichi Handa <handa@m17n.org>
14142
14143 The following changes are to make the font rescaling facility
14144 compatible with Emacs 21.
14145
14146 * xfaces.c (Vface_font_rescale_alist): Rename from
14147 Vface_resizing_fonts.
14148 (struct font_name): Rename member resizing_ratio to rescale_ratio.
14149 (font_rescale_ratio): Rename from font_resizing_ratio.
14150 (split_font_name): Set font->rescale_ratio.
14151 (better_font_p): Pay attention to font->rescale_ratio.
14152 (build_scalable_font_name): Likewise. Change RESX, and RESY
14153 fields.
14154 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14155
141562008-02-01 Kenichi Handa <handa@m17n.org>
14157
14158 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
14159 (Qutf_16_le): Remove these variables.
14160 (syms_of_coding): Don't DEFSYM them.
14161 (decode_coding_utf_16): Fix handling of BOM.
14162 (encode_coding_utf_16): Fix handling of BOM.
14163
141642008-02-01 Kenichi Handa <handa@m17n.org>
14165
14166 * fileio.c (Finsert_file_contents): On replacing, before decoding
14167 the file into the work buffer, set point of the work buffer to the end.
14168
141692008-02-01 Dave Love <fx@gnu.org>
14170
14171 * coding.c (Fcheck_coding_systems_region): Fix type errors.
14172
141732008-02-01 Dave Love <fx@gnu.org>
14174
14175 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14176 and fix C types.
14177
141782008-02-01 Kenichi Handa <handa@m17n.org>
14179
14180 * xdisp.c (SKIP_GLYPHS): New macro.
14181 (set_cursor_from_row): Pay attention to string display properties.
14182
14183 * category.c (copy_category_entry): Fix for the case that RANGE
14184 is an integer.
14185
14186 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
14187
14188 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
14189
141902008-02-01 Kenichi Handa <handa@m17n.org>
14191
14192 * charset.c (Fcharset_id_internal): New function.
14193 (syms_of_charset): Defsubr it.
14194
14195 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
14196 with the last arg charset_list acquired from coding.
14197 (Fdefine_coding_system_internal): For ccl-based coding system, fix
14198 the attribute coding_attr_ccl_valids.
14199
14200 * coding.h (enum define_coding_ccl_arg_index): Set the first
14201 member coding_arg_ccl_decoder to coding_arg_max.
14202
14203 * ccl.h (ccl_driver): Adjust prototype.
14204
14205 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
14206 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 14207 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
14208 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
14209 last arg Qnil.
14210
142112008-02-01 Kenichi Handa <handa@m17n.org>
14212
14213 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
14214 call encode_char.
14215
14216 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
14217
142182008-02-01 Dave Love <fx@gnu.org>
14219
14220 * composite.c (syms_of_composite): Make composition_hash_table weak.
14221
142222008-02-01 Kenichi Handa <handa@m17n.org>
14223
14224 * dispextern.h (check_face_attributes, generate_ascii_font_name)
14225 (font_name_registry): Don't extern them.
14226 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
14227
14228 * fontset.h (Qfontset): Don't extern it.
14229 (new_fontset_from_font_name): Extern it.
14230
14231 * fontset.c: Give 8 extra slots to fontset objects.
14232 (Qfontset_info): New variable.
14233 (syms_of_fontset): Defsym it.
14234 (FONTSET_FALLBACK): New macro.
14235 (fontset_face): Try also the default fontset.
14236 (make_fontset): Realize a fallback fontset from the default fontset.
14237 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
14238 using split_font_name_into_vector and build_font_name_from_vector.
14239 (Fset_fontset_font): Access the elements of font_spec by enum
14240 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
14241 name by using split_font_name_into_vector.
14242 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
14243 generate a proper font name from the fontset name. Update
14244 Vfontset_alias_alist.
14245 (n_auto_fontsets): New variable.
14246 (new_fontset_from_font_name): New function.
14247 (Ffont_info): Store the information about fonts generated from the
14248 default fontset in the first extra slot of the returned char-table.
14249
14250 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
14251 (font_name_registry): Delete function.
14252 (split_font_name_into_vector): New function.
14253 (build_font_name_from_vector): New function.
14254 (font_list): The argument REGISTRY is now a list of registry names.
14255 (choose_face_font): If we are choosing an ASCII font, and ATTRS
14256 specifies an explicit font name, return the name as is. Make a
14257 list of registy names.
14258
14259 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
14260 of x_new_fontset.
14261 (Fx_create_frame): Don't call x_new_fontset here. Just use
14262 x_list_fonts to check the existence of fonts.
14263
14264 * xterm.h (x_new_fontset): Adjust prototype.
14265
14266 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
14267 string. Use new_fontset_from_font_name to create a fontset from a
14268 font name.
14269
142702008-02-01 Kenichi Handa <handa@m17n.org>
14271
14272 * syntax.c (Vfind_word_boundary_function_table): New name for
14273 Vnext_word_boundary_function_table.
14274 (find-word-boundary-function-table): New name for
14275 next-word-boundary-function-table.
14276
142772008-02-01 Dave Love <fx@gnu.org>
14278
14279 * Makefile.in: Fix some dependencies.
14280
14281 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
14282 set it to nil before returning.
14283
14284 * composite.c (update_compositions): Fix type error.
14285
14286 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
14287
142882008-02-01 Kenichi Handa <handa@m17n.org>
14289
14290 * xterm.c (x_new_font): Optimize for the case that the font is
14291 already set for the frame.
14292
142932008-02-01 Kenichi Handa <handa@m17n.org>
14294
14295 * chartab.c (char_table_ascii): Check if the char table contents
14296 is sub-char-table or not.
14297 (char_table_set, char_table_set_range): Fix argument to
14298 char_table_ascii.
14299
14300 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
14301 (detect_coding_utf_8, detect_coding_utf_16)
14302 (detect_coding_emacs_mule, detect_coding_iso_2022)
14303 (detect_coding_sjis, detect_coding_big5)
14304 (detect_coding_ccl, detect_coding_charset): Change argument MASK
14305 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
14306 sequence is valid in this coding system. Change callers.
14307 (MAX_ANNOTATION_LENGTH): New macro.
14308 (ADD_ANNOTATION_DATA): New macro.
14309 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
14310 ADD_ANNOTATION_DATA. Change the format of annotation data.
14311 (ADD_CHARSET_DATA): New macro.
14312 (emacs_mule_char): New argument ID. Change callers.
14313 (decode_coding_emacs_mule, decode_coding_iso_2022)
14314 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14315 Produce charset annotation data in coding->charbuf.
14316 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
14317 to charset annotation data in coding->charbuf.
14318 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
14319 coding->common_flags if the coding system is iso-2022 based and
14320 uses designation.
14321 (produce_composition): Adjust for the new annotation data format.
14322 (produce_charset): New function.
14323 (produce_annotation): Handle charset annotation.
14324 (handle_composition_annotation, handle_charset_annotation): New
14325 functions.
14326 (consume_chars): Handle charset annotation. Utilize the above two
14327 functions.
14328 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
14329 buffer, get the deleted text as a string and set
14330 coding->src_object to that string.
14331 (detect_coding, detect_coding_system): Use the new struct
14332 coding_detection_info.
14333
14334 * coding.h (struct coding_detection_info): New structure.
14335 (struct coding_system): Adjust prototype of the member `detector'.
14336 (CODING_ANNOTATE_CHARSET_MASK): New macro.
14337
143382008-02-01 Kenichi Handa <handa@m17n.org>
14339
14340 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
14341
143422008-02-01 Dave Love <fx@gnu.org>
14343
14344 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
14345 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
14346 to new local and nullify apropos_accumulate before returning.
14347 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
14348
143492008-02-01 Kenichi Handa <handa@m17n.org>
14350
14351 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
14352 correctly.
e3eea1fc 14353
aac0c6e3
MR
143542008-02-01 Dave Love <fx@gnu.org>
14355
14356 * fns.c (Flanginfo): Call synchronize_system_time_locale.
14357
143582008-02-01 Kenichi Handa <handa@m17n.org>
14359
14360 The following changes are to make character composition happen
14361 automatically on displaying.
14362
14363 * Makefile.in (lisp, shortlisp): Add composite.elc.
14364
14365 * composite.h (Qauto_composed, Vauto_composition_function)
14366 (Qauto_composition_function): Extern them.
14367
14368 * composite.c (Vcomposition_function_table)
14369 (Qcomposition_function_table): Delete variables.
14370 (Qauto_composed, Vauto_composition_function)
14371 (Qauto_composition_function): New variables.
14372 (run_composition_function): Don't call
14373 compose-chars-after-function.
14374 (update_compositions): Clear `auto-composed' text property.
14375 (compose_chars_in_text): Delete this function.
14376 (syms_of_composite): Staticpro Qauto_composed and
14377 Qauto_composition_function. Declare Vauto_composition_function as
14378 a Lisp variable.
14379
14380 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
14381
14382 * xdisp.c (it_props): Add an entry for Qauto_composed.
14383 (handle_auto_composed_prop): New function.
14384
14385 * xselect.c (selection_data_to_lisp_data): Don't call
14386 compose_chars_in_text.
14387
143882008-02-01 Dave Love <fx@gnu.org>
14389
14390 * keyboard.c (read_char): Modify checking around use of
14391 Vkeyboard_translate_table.
14392
14393 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14394 and fix C types.
14395
143962008-02-01 Kenichi Handa <handa@m17n.org>
14397
14398 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
14399 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14400 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
14401 the case that the last byte is '\r' correctly.
14402 (decode_coding): Flush out the unprocessed data correctly.
14403 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
14404
144052008-02-01 Dave Love <fx@gnu.org>
14406
14407 * xterm.c (XTread_socket): Fix changes for defined keysyms.
14408 Add XK_ISO... case.
14409 (xaw_scroll_callback): Revert last change.
14410
144112008-02-01 Kenichi Handa <handa@m17n.org>
14412
14413 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
14414
144152008-02-01 Kenichi Handa <handa@m17n.org>
14416
14417 * xfaces.c (Vface_resizing_fonts): New variable.
14418 (struct font_name): New member `resizing_ratio'.
14419 (font_resizing_ratio): New function.
14420 (split_font_name): Set font->resizing_ratio.
14421 (better_font_p): Pay attention to font->resizing_ratio.
14422 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
14423 RESX, and RESY fields.
14424 (try_alternative_families): Try scalable fonts if
14425 Vscalable_fonts_allowed is not Qt.
14426 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
14427
144282008-02-01 Dave Love <fx@gnu.org>
14429
14430 * xterm.c (xaw_scroll_callback): Cast correctly.
14431
144322008-02-01 Dave Love <fx@gnu.org>
14433
14434 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
14435 (lispy_kana_keys): Comment out.
14436 (make_lispy_event) [XK_kana_A]: Comment out.
14437
14438 * xterm.c (xaw_scroll_callback): Cast call_data.
14439 (XTread_socket): Deal with ASCII keysyms.
14440 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
14441
144422008-02-01 Dave Love <fx@gnu.org>
14443
14444 * xterm.c (Vx_keysym_table): New.
14445 (syms_of_xterm): Initialize it.
14446 (XTread_socket): Use it.
14447 From head: Eliminate incorrect optimization that tried to avoid
14448 decoding the output of X*LookupString.
14449 (x_get_font_repertory): Delete charset declaration.
14450
144512008-02-01 Kenichi Handa <handa@m17n.org>
14452
14453 * coding.c (detect_coding_charset): If only ASCII bytes are found,
14454 return 0.
14455 (Fdefine_coding_system_internal): Setup
14456 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
14457
144582008-02-01 Dave Love <fx@gnu.org>
14459
14460 * coding.c (Fcheck_coding_system): Doc fix.
14461
14462 * editfns.c (Finsert_byte): Return a proper value.
14463
144642008-02-01 Kenichi Handa <handa@m17n.org>
14465
14466 * coding.c (decode_coding): Fix args to translate_chars. Pay
14467 attention to Vstandard_translation_table_for_decode.
14468 (encode_coding): Fix args to translate_chars. Pay attention to
14469 Vstandard_translation_table_for_encode.
14470
14471 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
14472 SINGLE_BYTE_CHAR_P.
14473
14474 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
14475 not by SINGLE_BYTE_CHAR_P.
14476
14477 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
14478 SINGLE_BYTE_CHAR_P.
14479
14480 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
14481 SINGLE_BYTE_CHAR_P.
14482
14483 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
14484 by SINGLE_BYTE_CHAR_P.
14485
14486 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
14487 SINGLE_BYTE_CHAR_P.
14488
144892008-02-01 Dave Love <fx@gnu.org>
14490
14491 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
14492
144932008-02-01 Dave Love <fx@gnu.org>
14494
14495 * fns.c (Flanginfo): Fix typo.
14496
14497 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
14498
144992008-02-01 Kenichi Handa <handa@m17n.org>
14500
14501 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
14502 (detect_coding_emacs_mule, detect_coding_iso_2022)
14503 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
14504 incomplete byte sequence. Don't update *mask when correctly detected.
14505 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
14506 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
14507 (detect_coding, detect_coding_system): Adjust for the changes above.
14508
145092008-02-01 Kenichi Handa <handa@m17n.org>
14510
14511 * character.c (char_string): Rename from
14512 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
14513 (string_char): Rename from string_char.
14514
14515 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
14516 if C is greater than MAX_3_BYTE_CHAR.
14517 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
14518 string_char instead of string_char_with_unification.
14519
145202008-02-01 Dave Love <fx@gnu.org>
14521
14522 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
14523
145242008-02-01 Kenichi Handa <handa@m17n.org>
14525
14526 * keymap.c (push_key_description): Pay attention to force_multibyte.
14527
14528 * regex.c (re_search_2): Fix for the case of unibyte buffer.
14529
145302008-02-01 Dave Love <fx@gnu.org>
14531
14532 * charset.c (define_charset_internal): Rename `supprementary'.
14533
14534 * Makefile.in (lisp, shortlisp): Remove latin-N.
14535
145362008-02-01 Dave Love <fx@gnu.org>
14537
14538 * xfns.c (x_window, x_window): Use use_xim.
14539
14540 * xterm.c (use_xim): Initialize.
14541 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14542 (x_term_init): Maybe set use_xim.
14543
14544 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14545
145462008-02-01 Kenichi Handa <handa@m17n.org>
14547
14548 * search.c (search_buffer): Fix case-fold-search of multibyte
14549 characters.
14550 (boyer_moore): Rename the last argument to char_high_bits.
14551
145522008-02-01 Kenichi Handa <handa@m17n.org>
14553
14554 * xdisp.c (display_string): Fix for the case of zero width glyph.
14555
14556 * xfns.c (x_set_font): Change the error message of the case that
14557 x_new_fontset returns Qt.
14558
14559 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
14560 (Finternal_set_lisp_face_attribute): Use signal_error for the
14561 error of invalid fontset.
14562
14563 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
14564 fontset, return Qt.
14565
145662008-02-01 Dave Love <fx@gnu.org>
14567
14568 * unexelf.c (unexec): Make .got handling not SGI-specific.
14569
14570 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
14571
14572 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
14573
14574 * keyboard.c (read_key_sequence): Fix type error.
14575
14576 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
14577 type error.
14578
14579 * fontset.c (fontset_add): Return Lisp_Object.
14580
145812008-02-01 Dave Love <fx@gnu.org>
14582
14583 * charset.h (charset_ordered_list_tick): Declare extern.
14584
145852008-02-01 Kenichi Handa <handa@m17n.org>
14586
14587 The following changes (and some of 2008-02-01 changes of mine) are
14588 for handling syntax, category, and case conversion for unibyte
14589 characters by converting them to multibyte on the fly. With these
14590 changes, we don't have to setup syntax and case tables for unibyte
14591 characters in each language environment.
14592
14593 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
14594 multibyte if necessary.
14595
14596 * bytecode.c (Fbyte_code): Likewise.
14597
14598 * character.h (LEADING_CODE_LATIN_1_MIN)
14599 (LEADING_CODE_LATIN_1_MAX): New macros.
14600 (unibyte_to_multibyte_table): Extern it.
14601 (unibyte_char_to_multibyte): New macro.
14602 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
14603 (CHAR_LEADING_CODE): New macro.
14604 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
14605
14606 * character.c (unibyte_to_multibyte_table): New variable.
14607 (unibyte_char_to_multibyte): Move to character.h and define as macro.
14608 (multibyte_char_to_unibyte): If C is an eight-bit character,
14609 convert it to the corresponding byte value.
14610
14611 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
14612 not 1, signals an error. Update the elements of
14613 unibyte_to_multibyte_table.
14614 (init_charset_once): Initialize unibyte_to_multibyte_table.
14615 (syms_of_charset): Define the charset `iso-8859-1'.
14616
14617 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
14618 as is without converting it to unibyte. In a unibyte buffer,
14619 convert C to multibyte before checking the syntax.
14620
14621 * lisp.h (unibyte_char_to_multibyte): Delete extern.
14622
14623 * minibuf.c (Fminibuffer_complete_word): Use the macro
14624 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
14625
14626 * regex.h (struct re_pattern_buffer): New member target_multibyte.
14627
14628 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
14629 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
14630 that is zero, convert an eight-bit char to multibyte.
14631 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
14632 non-emacs case.
14633 (PATFETCH): Convert an eight-bit char to multibyte.
14634 (HANDLE_UNIBYTE_RANGE): New macro.
14635 (regex_compile): Setup the compiled pattern for multibyte chars
14636 even if the given regex string is unibyte. Use PATFETCH_RAW
14637 instead of PATFETCH in many places. To handle `charset'
14638 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
14639 only for ASCII chars.
14640 (analyse_first) <exactn>: Simplify because the compiled pattern
14641 is multibyte.
14642 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
14643 <charset>: Use CHAR_LEADING_CODE to get leading codes.
14644 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
14645 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
14646 multibyte always 1.
14647 (re_search_2): In emacs, set the locale variable multibyte to 1,
14648 otherwise to 0. New local variable target_multibyte. Check it
14649 to decide the multibyteness of STR1 and STR2. If
14650 target_multibyte is zero, convert unibyte chars to multibyte
14651 before translating and checking fastmap.
14652 (TARGET_CHAR_AND_LENGTH): New macro.
14653 (re_match_2_internal): In emacs, set the locale variable multibyte
14654 to 1, otherwise to 0. New local variable target_multibyte. Check
14655 it to decide the multibyteness of STR1 and STR2. Use
14656 TARGET_CHAR_AND_LENGTH to fetch a character from D.
14657 <charset, charset_not>: If multibyte is nonzero, check fastmap
14658 only for ASCII chars. Call bcmp_translate with
14659 target_multibyte, not with multibyte.
14660 <begline>: Declare the local variable C as `unsigned'.
14661 (bcmp_translate): Change the last arg name to target_multibyte.
14662
14663 * search.c (compile_pattern_1): Don't adjust the multibyteness of
14664 the regexp pattern and the matching target. Set cp->buf.multibyte
14665 to the multibyteness of the regexp pattern. Set
14666 cp->but.target_multibyte to the multibyteness of the matching target.
14667 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
14668 FETCH_STRING_CHAR_ADVANCE.
14669 (Freplace_match): Convert unibyte chars to multibyte.
14670
14671 * syntax.c (char_quoted, back_comment, scan_words)
14672 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
14673 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
14674 unibyte chars to multibyte.
14675 (skip_chars): Delete the arg syntaxp, and move the code for
14676 handling syntaxes to skip_syntaxes. Change callers.
14677 Fix the case that the multibyteness of STRING and the current
14678 buffer doesn't match.
14679 (skip_syntaxes): New function.
14680 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
14681 SINGLE_BYTE_CHAR_P.
14682
146832008-02-01 Kenichi Handa <handa@m17n.org>
14684
14685 * xfaces.c (QCfontset): New variable.
14686 (LFACE_FONTSET): New macro.
14687 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
14688 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
14689 (Finternal_set_lisp_face_attribute)
14690 (Finternal_get_lisp_face_attribute): Handle QCfontset.
14691 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
14692 check also LFACE_FONTSET_INDEX.
14693 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
14694 attrs[LFACE_FONT_INDEX].
14695 (syms_of_xfaces): Intern and staticpro QCfontset.
14696
14697 * dispextern.h (enum lface_attribute_index): New member
14698 LFACE_FONTSET_INDEX.
14699
14700 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
14701
147022008-02-01 Kenichi Handa <handa@m17n.org>
14703
14704 * coding.c (coding_set_destination): Fix coding->destination for
14705 the case converting a region.
14706 (encode_coding_utf_8): Encode eight-bit chars as single byte.
14707 (encode_coding_object): Fix coding->dst_pos and
14708 coding->dst_pos_byte for the case converting a region.
14709
14710 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
14711
14712 * character.h (BYTE8_STRING): New macro.
14713
14714 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
14715
147162008-02-01 Kenichi Handa <handa@m17n.org>
14717
14718 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
14719 characters by octal form.
14720
14721 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
14722
14723 * buffer.h (_fetch_multibyte_char_len): Delete extern.
14724 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
14725 _fetch_multibyte_char_len.
14726 (FETCH_CHAR_AS_MULTIBYTE): New macro.
14727
14728 * casetab.c (set_canon, set_identity, shuffle): Simplify.
14729
14730 * casefiddle.c (casify_object): Simplify. Handle the case that
14731 the case conversion change the byte length.
14732 (casify_region): Likewise.
14733
14734 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
14735
14736 * character.c (_fetch_multibyte_char_len): Delete this variable.
14737 (syms_of_character): Setup Vprintable_chars.
14738
14739 * editfns.c (Fchar_equal): Fix for the unibyte case.
14740 (Finsert_byte): New function.
14741 (syms_of_editfns): Defsubr it.
14742
14743 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
14744 of direct code 0x3ffff.
14745
14746 * search.c (Freplace_match): Fix for the unibyte case.
14747
147482008-02-01 Kenichi Handa <handa@m17n.org>
14749
14750 * lread.c (safe_to_load_p): Fix the logic.
14751
14752 * syntax.c (scan_words): Don't treat characters belonging to
14753 different scripts as constituting a word.
14754
14755 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14756
14757 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
14758
14759 * emacs.c (main): In the case of --unibyte, instead of aborting on
14760 finding non-empty buffer, make it unibyte.
14761
147622008-02-01 Kenichi Handa <handa@m17n.org>
14763
14764 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
14765 to create a fontset.
14766
147672008-02-01 Dave Love <fx@gnu.org>
14768
14769 * character.c (Funibyte_char_to_multibyte): Doc fix.
14770
14771 * xfns.c [HAVE_STDLIB_H]: Fix last change.
14772
147732008-02-01 Kenichi Handa <handa@m17n.org>
14774
14775 * fontset.c (fontset_add): Make the type `int'.
14776 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
14777
14778 * character.c (unibyte_char_to_multibyte)
14779 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
14780 charset_unibyte, not charset_primary.
14781
14782 * charset.h (charset_unibyte): Extern it instead of charset_primary.
14783
14784 * charset.c (charset_unibyte): Rename from charset_primary.
14785 (Funibyte_charset): Rename from Fprimary_charset.
14786 (Fset_unibyte_charset): Rename from Fset_primary_charset.
14787 (syms_of_charset): Adjust for the above changes.
14788
14789 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14790 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14791 it->multibyte_p is zero.
14792
14793 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
14794 Delete extern.
14795
147962008-02-01 Kenichi Handa <handa@m17n.org>
14797
14798 * coding.c (Fdefine_coding_system_internal): Fix category setting
14799 for a coding system of type iso-2022.
14800
148012008-02-01 Kenichi Handa <handa@m17n.org>
14802
14803 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
14804
148052008-02-01 Kenichi Handa <handa@m17n.org>
14806
14807 * syntax.c (Vnext_word_boundary_function_table): New variable.
14808 (next-word-boundary-function-table): Declare it as a Lisp variable
14809 in syms_of_syntax.
14810 (scan_words): Call functions in Vnext_word_boundary_function_table
14811 if any.
14812
14813 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
14814
14815 * fontset.c (fs_load_font): If fontp->charset is not negative,
14816 return fontp without setting its members.
14817
148182008-02-01 Dave Love <fx@gnu.org>
14819
14820 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
14821
14822 * m/sparc.h (HAVE_ALLOCA): Delete.
14823
14824 * s/irix6-5.h: Don't include strings.h.
14825 (bcopy, bzero, bcmp): Don't undef.
14826
14827 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
14828
14829 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
14830 (TIOCSIGSEND): Don't test IRIX6.
14831 (bcopy, bzero, bcmp): Define conditionally.
14832
148332008-02-01 Kenichi Handa <handa@m17n.org>
14834
14835 * buffer.c (Qas, Qmake, Qto): New variables.
14836 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
14837 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
14838
14839 * callproc.c (Fcall_process): Don't call insert_1_both directly if
14840 we are inserting a process output into a multibyte buffer.
14841
14842 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
14843 multibyte_char_to_unibyte.
14844
14845 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
14846 by the primary charset, make it eight-bit char.
14847 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
14848
14849 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
14850 (charset_8_bit__control, charset_8_bit_graphic)
14851 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
14852 (define_charset_internal): New function.
14853 (syms_of_charset): Call define_charset_internal for pre-defined
14854 charsets.
14855
14856 * charset.h (charset_8_bit): Extern it.
14857
14858 * coding.c (make_conversion_work_buffer): Adjust for the change
14859 of Fset_buffer_multibyte.
14860 (encode_coding_raw_text): Increment p0 in the loop.
14861
14862 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
14863
14864 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
14865 for the change of Fset_buffer_multibyte.
14866
14867 * fns.c (Fstring_to_multibyte): New function.
14868 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
14869
148702008-02-01 Dave Love <fx@gnu.org>
14871
14872 * xfns.c (x_put_x_image): Declare args.
14873
14874 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
14875 (try_font_list): Declare an arg.
14876
14877 * xdisp.c (message2_nolog, set_message): Declare an arg.
14878
14879 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
14880
14881 * syntax.c (scan_sexps_forward): Declare an arg.
14882
14883 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14884 Declare an arg.
14885
14886 * lisp.h (Fnew_fontset): Declare.
14887
14888 * keymap.c (push_key_description): Call CHARACTERP correctly.
14889
14890 * fontset.c (fontset_add): Declare args. Call make_number correctly.
14891 (face_for_char): Delete unused vars.
14892 (Fset_fontset_font): Doc fix. Delete unused vars.
14893
14894 * doc.c (Fsubstitute_command_keys): Delete unused vars.
14895
14896 * composite.c (update_compositions): Declare arg.
14897
14898 * cm.c (calccost, cmgoto): Declare args.
14899
14900 * charset.c: Remove `emacs' conditional. Doc fixes.
14901 (map_char_table_for_charset): Declare.
14902
14903 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
14904
14905 * ccl.c: Remove `emacs' conditional.
14906
149072008-02-01 Kenichi Handa <handa@m17n.org>
14908
14909 The following changes are to allow specifying multiple font
14910 patterns for a character range (specified by script or charset).
14911
14912 * Makefile.in (abbrev.o): Depend on syntax.h.
14913 (xfaces.o): Depend on charset.h.
14914
14915 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
14916 SINGLE_BYTE_CHAR_P.
14917
14918 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
14919
14920 * character.h (Vchar_script_table): Extern it.
14921
14922 * character.c (Vscript_alist): Delete.
14923 (Vchar_script_table, Qchar_script_table): New variable.
14924 (syms_of_character): Declare Vchar_script_table as a lisp variable
14925 and initialize it.
14926
14927 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
14928 have property char-table-extra-slots, make no extra slot.
14929
14930 * dispextern.h (struct face): Delete member `charset'.
14931 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
14932 SINGLE_BYTE_CHAR_P.
14933 (choose_face_font, lookup_non_ascii_face, font_name_registry):
14934 Add prototypes.
14935 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
14936 (generate_ascii_font_name): Rename from generate_ascii_font.
14937
14938 * fontset.h (get_font_repertory_func): New prototype.
14939 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
14940 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
14941
14942 * fontset.c (Qprepend, Qappend): New variables.
14943 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
14944 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
14945 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
14946 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
14947 (fontset_ref_and_range, fontset_add, reorder_font_vector)
14948 (load_font_get_repertory): New functions.
14949 (fontset_set): Delete.
14950 (fontset_face): New arg FACE. Return face ID, not face.
14951 Complete re-write to handle new fontset structure. Change caller.
14952 (free_face_fontset): Use ASET istead of AREF (X) = Y.
14953 (face_for_char): Don't call lookup_face.
14954 (make_fontset_for_ascii_face): New arg FACE.
14955 (fs_load_font): New arg CHARSET_ID. Don't check
14956 Vfont_encoding_alist here.
14957 (find_font_encoding): New function.
14958 (list_fontsets): Use STRINGP, not ! NILP.
14959 (accumulate_script_ranges): New function.
14960 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
14961 re-written to handle new fontset structure.
14962 (Ffontset_font): Return a copy of element.
14963 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
14964 docstring of font-encoding-alist.
14965
14966 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
14967 (Fset_fotset_font): Fix arguments to 5.
14968
14969 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
14970
14971 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
14972 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14973 (highlight_trailing_whitespace): Adjust for the change of
14974 lookup_named_face.
14975
14976 * xfaces.c: Include charset.h.
14977 (load_face_font): Delete argument C. Change caller.
14978 (generate_ascii_font_name): Rename from generate_ascii_font.
14979 (font_name_registry): New function.
14980 (cache_face): Store ascii faces before non-ascii faces in buckets.
14981 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
14982 Lookup only ascii faces.
14983 (lookup_non_ascii_face): New function.
14984 (lookup_named_face): Delete argument C. Change caller.
14985 (lookup_derived_face): Delete argument C. Change caller.
14986 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
14987 a string, just call font_list with it.
14988 (choose_face_font): Delete arguments FACE and C. New arg
14989 FONT_SPEC. Change caller.
14990 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
14991 Change caller.
14992 (realize_non_ascii_face): New function.
14993 (realize_x_face): Call load_face_font here.
14994 (realize_tty_face): Delete argument C. Change caller.
14995 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
14996 get a face ID.
14997 (dump_realized_face): Don't print charset of FACE.
14998
14999 * xfns.c (x_set_font): Always call x_new_fontset and
15000 store_frame_parameter.
15001 (Fx_create_frame): Call x_new_fontset, not x_new_font.
15002 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
15003
15004 * xterm.h (x_get_font_repertory): Extern it.
15005
15006 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15007 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15008 it->multibyte_p is zero.
15009 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15010 (x_new_fontset): If FONTSETNAME doesn't match any existing
15011 fontsets, create a new one.
15012 (x_get_font_repertory): New function.
15013
150142008-02-01 Kenichi Handa <handa@m17n.org>
15015
15016 * coding.c (Ffind_coding_systems_region_internal): Detect an
15017 ASCII only string correctly.
15018
15019 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
15020 version is 0.
15021
150222008-02-01 Kenichi Handa <handa@m17n.org>
15023
15024 * lread.c: Include "coding.h".
15025 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
15026 (load_each_byte, unread_char): New variables.
15027 (readchar_backlog): Delete.
15028 (readchar): Return a character unless load_each_byte is nonzero.
15029 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
15030 cons. If unread_char is not -1, simply return it.
15031 (unreadchar): Handle the case that readcharfun is
15032 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
15033 (read_multibyte): Delete.
15034 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
15035 (read_emacs_mule_char): New functions.
15036 (Fload): Even if the file doesn't have the extension ".elc", if
15037 safe_to_load_p returns a positive version number, assume that the
15038 file contains bytecompiled code. If the version is less than 22,
15039 load the file while decoding multibyte sequences by emacs-mule.
15040 (readevalloop): Don't use readchar_backlog.
15041 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
15042 (Fread_from_string): Pay attention to the case that STREAM is a cons.
15043 (read_escape): Delete the arg BYTEREP.
15044 (read1): Set load_each_byte to 1 temporarily while handling
15045 #@NUMBER. Don't call read_multibyte.
15046 (read_vector): Call Fread with a cons. If readcharfun is
15047 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
15048 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
15049 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
15050 and Qload_force_doc_strings.
15051
150522008-02-01 Kenichi Handa <handa@m17n.org>
15053
15054 * xdisp.c (face_before_or_after_it_pos): Call
15055 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15056
150572008-02-01 Kenichi Handa <handa@m17n.org>
15058
15059 * character.h (TRAILING_CODE_P): New macro.
15060 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
15061 (string_char_with_unification): Fix prototype.
15062 (Vscript_alist): Extern it.
15063
15064 * character.c (Vscript_alist): New variable.
15065 (string_char_with_unification, str_as_unibyte)
15066 (string_escape_byte8): Add `const' to local variables.
15067 (syms_of_character): Declare script-alist as a Lisp variable.
15068
15069 * charset.h (Vcharset_ordered_list): Extern it.
15070 (charset_ordered_list_tick): Extern it.
15071 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
15072 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
15073 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
15074 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
15075 (Funify_charset): Adjust for the change of Funify_charset.
15076
15077 * charset.c (charset_ordered_list_tick): New variable.
15078 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
15079 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
15080 deunify intead of unify a charset.
15081 (string_xstring_p): Add `const' to local variables.
15082 (find_charsets_in_text): Add `const' to arguments and local variables.
15083 (encode_char): Adjust for the change of Funify_charset. Fix
15084 detecting of invalid code.
15085 (Fset_charset_priority): Increment charset_ordered_list_tick.
15086 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
15087 and TO_CODE.
15088
15089 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
15090 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
15091 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
15092 (decode_coding_ccl, consume_chars)
15093 (Ffind_coding_systems_region_internal)
15094 (Fcheck_coding_systems_region): Add `const' to local variables.
15095
15096 * print.c (print_object): Use octal form for printing the
15097 contents of a bool vector.
15098
150992008-02-01 Dave Love <fx@gnu.org>
15100
15101 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
15102 <version == 20>: Refuse to load.
15103
151042008-02-01 Dave Love <fx@gnu.org>
15105
15106 * fns.c: Move coding.h.
15107 (Qcodeset, Qdays, Qmonths): New.
15108 (concat): Use CHARACTERP instead of INTEGERP.
15109 (Flocale_codeset): Delete.
15110 (Flanginfo): New function.
15111 (syms_of_fns): Change accordingly.
15112
15113 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
15114
151152008-02-01 Dave Love <fx@gnu.org>
15116
15117 * casetab.c (init_casetab_once, init_casetab_once): Fix
15118 CHAR_TABLE_SET call.
15119
15120 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
15121
15122 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
15123
15124 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
15125 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
15126 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
15127
15128 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
15129
15130 * coding.c (ENCODE_DESIGNATION, decode_eol)
15131 (make_conversion_work_buffer, code_conversion_restore)
15132 (Fdefine_coding_system_internal): Convert Lisp types.
15133 (code_conversion_restore): Use EQ, not ==.
15134 (Fencode_coding_string): Fix code_convert_string call.
15135
15136 * coding.h (code_convert_region): Fix prototype.
15137
15138 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
15139
15140 * fontset.c (fontset_ref, fontset_set, fs_load_font)
15141 (Ffontset_info): Convert Lisp types.
15142
15143 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
15144
15145 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
15146
15147 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
15148
15149 * chartab.c: Include "...h", not <...h> in some cases.
15150
15151 * callproc.c (Fcall_process): Remove unused variables.
15152
151532008-02-01 Dave Love <fx@gnu.org>
15154
15155 * coding.c (Fset_coding_system_priority): Allow null arg list.
15156
151572008-02-01 Dave Love <fx@gnu.org>
15158
15159 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15160 (Fself_insert_and_exit): Use CHARACTERP.
15161
15162 * callproc.c (Fcall_process): Remove unused vars.
15163
15164 * xterm.c (XTread_socket): Add extra dead keysyms.
15165
15166 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
15167
15168 * dispextern.h: Remove prototypes for redraw_frame,
15169 redraw_garbaged_frames.
15170
15171 * cmds.c (Fself_insert_command): Use CHARACTERP.
15172
15173 * chartab.c (make_sub_char_table): Remove unused var.
15174 (Fset_char_table_default, Fmap_char_table): Doc fix.
15175
15176 * keymap.c (access_keymap): Remove generic char code.
15177 (push_key_description): Use CHARACTERP.
15178
151792008-02-01 Dave Love <fx@gnu.org>
15180
15181 * charset.c: Doc fixes.
15182 (Funify_charset): Extra checking.
15183
151842008-02-01 Dave Love <fx@gnu.org>
15185
15186 * lread.c: Remove some unused variables.
15187 (safe_to_load_p): If safe, return the magic number version byte.
15188 (Fload): Maybe use load-with-code-conversion.
15189
151902008-02-01 Kenichi Handa <handa@m17n.org>
15191
15192 * category.c (Fmodify_category_entry): Don't modify the contents
15193 of category_set for characters out of the range. Avoid
15194 unnecessary modification.
15195
15196 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
15197 Vchar_unify_table. The default value of the table is now nil.
15198
15199 * character.c (syms_of_character): Setup Vchar_width_table for
15200 eight-bit-control and raw-byte chars.
15201
15202 * charset.h (enum define_charset_arg_index): Delete
15203 charset_arg_parents and add charset_arg_subset and
15204 charset_arg_superset.
15205 (enum charset_attr_index): Delete charset_parents and add
15206 charset_subset and charset_superset.
15207 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
15208 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
15209 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
15210 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
15211 (CHARSET_SUPERSET): New macros.
15212 (charset_work): Extern it.
15213 (ENCODE_CHAR): Use charset_work.
15214 (CHAR_CHARSET_P): Adjust for the change of encoder format.
15215 (map_charset_chars): Extern it.
15216
15217 * charset.c (load_charset_map): Set the default value of encoder
15218 and deunifier char-tables to nil.
15219 (map_charset_chars): Change argument. Change callers. Use
15220 map_char_table_for_charset instead of map_char_table.
15221 (Fmap_charset_chars): New optional args from_code and to_code.
15222 (Fdefine_charset_internal): Adjust for the change of
15223 `define-charset' (:parents -> :subset or :superset).
15224 (charset_work): New variable.
15225 (encode_char, syms_of_charset): Adjust for the change of
15226 Fdefine_charset_internal.
15227 (Ffind_charset_string): Setup the vector `charsets' correctly.
15228
15229 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
15230 the previous change.
15231 (char_table_ref_and_range): Adjust for the above change.
15232 (map_sub_char_table_for_charset): New function.
15233 (map_char_table_for_charset): New function.
15234
15235 * keymap.c (describe_vector): Handle a char-table directly here.
15236 (describe_char_table): Delete.
15237
15238 * lisp.h (map_charset_chars): Delete.
15239
152402008-02-01 Dave Love <fx@gnu.org>
15241
15242 * fns.c (count_combining): Comment out (unused).
15243 (Flocale_codeset): New.
15244 (syms_of_fns): Defsubr it.
15245
15246 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
15247 (size_t): Remove.
15248
152492008-02-01 Dave Love <fx@gnu.org>
15250
15251 * Makefile.in (chartab.o): Depend on charset.h.
15252
152532008-02-01 Kenichi Handa <handa@m17n.org>
15254
15255 * character.c (syms_of_character): Set the default value of
15256 Vprintable_chars to Qnil.
15257
152582008-02-01 Dave Love <fx@gnu.org>
15259
15260 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
15261
152622008-02-01 Kenichi Handa <handa@m17n.org>
15263
15264 * charset.c (load_charset_map): Handle the case that from < to
15265 correctly.
15266
15267 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
15268 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
15269 Pay attention to raw-8-bit chars.
15270
152712008-02-01 Kenichi Handa <handa@m17n.org>
15272
15273 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
15274 It is not bytecompiled now.
15275
15276 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
15277 (charset_jisx0208): New variables.
15278 (Fdefine_charset_internal): Setup them if appropriate.
15279 (init_charset_once): Initialize them to -1.
15280
15281 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
15282 (charset_jisx0208): Extern them.
15283
15284 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
15285 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
15286 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
15287 (setup_iso_safe_charsets): Fix arguments to Fassq.
15288 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
15289 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
15290 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
15291 (encode_coding_iso_2022): Change the 1st arg to
15292 ENCODE_ISO_CHARACTER to a variable.
15293
152942008-02-01 Kenichi Handa <handa@m17n.org>
15295
15296 * charset.h (enum define_charset_arg_index): New enums
15297 charset_arg_min_code and charset_arg_max_code.
15298 (struct charset): New member char_index_offset.
15299
15300 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
15301 Take charset->char_index_offset into account.
15302 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
15303 args[charset_arg_max_code]. Setup charset.char_index_offset.
15304 (syms_of_charset): Fix args to Fdefine_charset_internal.
15305
153062008-02-01 Dave Love <fx@gnu.org>
15307
15308 * coding.c (decode_coding_utf_8): Reject overlong sequences.
15309
153102008-02-01 Dave Love <fx@gnu.org>
15311
15312 * coding.c: Doc fixes.
15313 (Fcoding_system_aliases): Fix return value.
15314 (Qmac): Remove (duplicated) definition.
15315
153162008-02-01 Dave Love <fx@gnu.org>
15317
15318 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
15319 functions.
15320
15321 * character.c (Fstring): Doc fix.
15322
15323 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
15324
15325 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
15326 ids.
15327 (font-encoding-alist): Doc fix.
15328
153292008-02-01 Dave Love <fx@gnu.org>
15330
15331 * term.c (costs_set): Declare static, non-initialized for pcc.
15332 (encode_terminal_code): Remove unused var.
15333
15334 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15335 for K&R.
15336
15337 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
15338
15339 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
15340 (suffixes): Move out of make_subsidiaries for K&R.
15341
15342 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
15343
15344 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
15345
153462008-02-01 Dave Love <fx@gnu.org>
15347
15348 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
15349
15350 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
15351
153522008-02-01 Yong Lu <lyongu@asia-infonet.com>
15353
15354 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
15355
15356 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
15357
153582008-02-01 Kenichi Handa <handa@m17n.org>
15359
15360 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
15361 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
15362
153632008-02-01 Kenichi Handa <handa@m17n.org>
15364
15365 * coding.c (decode_coding_charset): Adjust for the change of
15366 Fdefine_coding_system_internal.
15367 (Fdefine_coding_system_internal): For a coding system of
15368 `charset' type, store a list of charset IDs in
15369 `charset_attr_charset_valids' element of coding attributes.
15370
153712008-02-01 Kenichi Handa <handa@m17n.org>
15372
15373 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
15374 (emacs_mule_char): New arg src. Delete arg `composition'. Change
15375 caller. Handle 2-byte and 3-byte charsets correctly.
15376 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
15377 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
15378 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
15379 (DECODE_EMACS_MULE_21_COMPOSITION): Call
15380 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
15381 sequence.
15382 (decode_coding_emacs_mule): Handle composition correctly. Rewind
15383 `src' and `consumed_chars' correctly before calling emacs_mule_char.
15384 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
15385 and alt&rule composition.
15386 (decode_coding_iso_2022): Handle composition correctly.
15387 (init_coding_once): Setup emacs_mule_bytes for private charsets.
15388
15389 * charset.c (Fdefine_charset_internal): Fix bug for the case of
15390 re-defining a charset. If the charset has :emacs-mule-id, setup
15391 emacs_mule_bytes.
15392 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
15393
153942008-02-01 Kenichi Handa <handa@m17n.org>
15395
15396 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
15397 (encode_coding_big5, encode_coding_charset): If coding requires safe
15398 encoding, produce a character specified by
15399 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15400
154012008-02-01 Dave Love <fx@gnu.org>
15402
15403 * xterm.c (XSetIMValues): Declare.
15404
15405 * process.c: Conditionally include sys/wait.h, pty.h.
15406
15407 * print.c (print_object): Fix print format for 64-bit systems.
15408
15409 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
15410
15411 * buffer.c (emacs_strerror): Declare.
15412
15413 * fontset.c (Fclear_face_cache): Declare.
15414 (accumulate_font_info): Comment-out (unused).
15415 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
15416 variables.
15417
15418 * character.h (string_escape_byte8): Declare.
15419
15420 * charset.c (load_charset_map, load_charset_map_from_file): Remove
15421 unused vars.
15422 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
15423 (Fmap_charset_chars): Doc fix.
15424
15425 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
15426 (Fset_coding_system_priority, Fset_coding_system_priority)
15427 (Fdefine_coding_system_internal): Doc fix.
15428
154292008-02-01 Dave Love <fx@gnu.org>
15430
15431 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
15432
154332008-02-01 Kenichi Handa <handa@m17n.org>
15434
15435 * character.c (string_escape_byte8): Make multibyte string with
15436 correct size.
15437
15438 * charset.c (Fmake_char): Delete unnecessary code.
15439
154402008-02-01 Kenichi Handa <handa@m17n.org>
15441
15442 * xfns.c (x_encode_text): Allocate coding.destination here, and
15443 call encode_coding_object with dst_object Qnil.
15444
15445 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
15446 multibyte form correctly.
15447
15448 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
15449 against Vfont_encoding_alist.
15450
15451 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
15452 handling of charset list.
15453 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
15454 (decode_coding_object): Move point to coding->dst_pos before
15455 calling post-read-conversion function.
15456 (encode_coding_object): Give correct arguments to
15457 pre-write-conversion. Ignore the return value of
15458 pre-write-conversion function. Pay attention to the case that
15459 pre-write-conversion changes the current buffer. If dst_object is
15460 Qt, even if coding->src_bytes is zero, allocate at least one byte
15461 to coding->destination.
15462
15463 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
15464
15465 * charset.c (Fmake_char): Make it more backward compatible.
15466 (Fmap_charset_chars): Fix docstring.
15467
154682008-02-01 Dave Love <fx@gnu.org>
15469
15470 * coding.c: Doc fixes.
15471 (Fdefine_coding_system_alias): Use names, not symbols, in
15472 coding-system-alist.
15473
154742008-02-01 Kenichi Handa <handa@m17n.org>
15475
15476 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
15477 of calling free_realized_face.
15478
154792008-02-01 Yong Lu <lyongu@asia-infonet.com>
15480
15481 * charset.c (read_hex): Don't treat SPC as a comment starter.
15482 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
15483 (Fdecode_char): Fix typo.
15484
154852008-02-01 Kenichi Handa <handa@m17n.org>
15486
15487 * charset.h (struct charset): New member `code_space_mask'.
15488
15489 * coding.c (coding_set_source): Delete the local variable beg_byte.
15490 (encode_coding_charset, Fdefine_coding_system_internal):
15491 Delete the local variable charset.
15492 (Fdefine_coding_system_internal): Setup
15493 attrs[coding_attr_charset_valids] correctly.
15494
15495 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
15496 member to check if CODE is valid or not.
15497 (Fdefine_charset_internal): Initialize `code_space_mask' member.
15498 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
15499 is within the range of charset->min_code and carset->max_code.
15500
155012008-02-01 Dave Love <fx@gnu.org>
15502
15503 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
15504
15505 * dispextern.h (generate_ascii_font): Fix return type.
15506
15507 * xfaces.c (generate_ascii_font): Fix arg declaration.
15508
15509 * coding.c (coding_inherit_eol_type)
15510 (Fset_terminal_coding_system_internal)
15511 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
15512
155132008-02-01 Kenichi Handa <handa@m17n.org>
15514
15515 * coding.c (decode_coding_charset, encode_coding_charset): Handle
15516 multiple charsets correctly.
15517
155182008-02-01 Kenichi Handa <handa@m17n.org>
15519
15520 * search.c (boyer_moore): Fix handling of multibyte character
15521 translation.
15522
15523 * xdisp.c (display_mode_element): When the variable `elt' is
15524 changed, update `this' and `lisp_string'.
15525
155262008-02-01 Kenichi Handa <handa@m17n.org>
15527
15528 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
15529
15530 * callproc.c (Fcall_process): Be sure to give the current buffer
15531 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
15532
15533 * charset.c (struct charset_map_entries): New struct.
15534 (load_charset_map): Rename from parse_charset_map. New args
15535 entries and n_entries. Change caller.
15536 (load_charset_map_from_file): Rename from load_charset_map.
15537 Change caller. New arg control_flag. Call load_charset_map at
15538 the tail.
15539 (load_charset_map_from_vector): New function.
15540 (Fdefine_charset_internal): Setup charset.compact_codes_p.
15541 (encode_char): If the charset is compact, change a character index
15542 to a code point.
15543
15544 * coding.c (coding_alloc_by_making_gap): Check the case that the
15545 source and destination are the same correctly.
15546 (decode_coding_raw_text): Set coding->consumed_char and
15547 coding->consumed to 0.
15548 (produce_chars): If coding->chars_at_source is nonzero, update
15549 coding->consumed_char and coding->consumed before calling
15550 alloc_destination.
15551 (Fdefine_coding_system_alias): Register ALIAS in
15552 Vcoding_system_alist.
15553 (syms_of_coding): Define `no-conversion' coding system at the tail.
15554
15555 * fileio.c (Finsert_file_contents): Set coding_system instead of
15556 val. If the current buffer is multibyte, always call
15557 decode_coding_gap.
15558
15559 * xfaces.c (try_font_list): Give higher priority to fontset's
15560 family than face's family.
15561
155622008-02-01 Kenichi Handa <handa@m17n.org>
15563
15564 * callproc.c (Fcall_process): Be sure to give the current buffer
15565 to decode_coding_c_string.
15566
15567 * xfaces.c (try_font_list): Give a family specified in a fontset
15568 higher priority than a family specified in a face.
15569
155702008-02-01 Kenichi Handa <handa@m17n.org>
15571
15572 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
15573 Fix arguments to insert_from_buffer.
15574
15575 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
15576
155772008-02-01 Kenichi Handa <handa@m17n.org>
15578
15579 * coding.c (produce_chars): Set the variable `multibytep' correctly.
15580 (decode_coding_gap): Set coding->dst_multibyte correctly.
15581
155822008-02-01 Kenichi Handa <handa@m17n.org>
15583
15584 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
15585 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
15586 (encode_coding_utf_16): Substitute coding->default_char for
15587 non-Unicode characters.
15588 (decode_coding): Don't call record_insert here.
15589 (setup_coding_system): Initialize `surrogate' of
15590 coding->spec.utf_16 to 0.
15591 (EMIT_ONE_BYTE): Fix for multibyte case.
15592
15593 * insdel.c (insert_from_gap): Call record_insert.
15594
155952008-02-01 Kenichi Handa <handa@m17n.org>
15596
15597 * casefiddle.c (casify_region): Fix multibyte case.
15598
15599 * character.c (c_string_width): Add return type `int'.
15600 (char_string_with_unification): Delete arg ADVANCED.
15601
15602 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
15603 (CHAR_STRING): Adjust for the change of char_string_with_unification.
15604 (CHAR_STRING_ADVANCE): Make it do-while statement.
15605
15606 * chartab.c (sub_char_table_set_range): Optimize for the case
15607 DEPTH == 3. Add workaround code for a GCC optimization bug.
15608
15609 * charset.c (parse_charset_map): Remove an unused variable.
15610
15611 * coding.c: Delete unused variables.
15612
15613 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
15614 earlier. If inserted is zero and the coding system doesn't
15615 require flushing, don't call decode_coding_gap.
15616
15617 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
15618
156192008-02-01 Kenichi Handa <handa@m17n.org>
15620
15621 The following changes are for using Unicode as an internal
15622 character model, and use UTF-8 format for buffer/string
15623 representation.
15624
15625 * .gdbinit (xchartable): Adjust for the change of char table structure.
15626 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
15627
15628 * Makefile.in (obj): Add character.o and chartab.o.
15629 (lisp, shortlisp): Remove utf-8.elc.
15630 (*.o): For many files, change dependency on charset.h to
15631 character.h, and add dependency on character.h.
15632 (character.o, chartab.o): New targets.
15633
15634 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
15635 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
15636 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
15637 of "charset.h".
15638
15639 * dired.c, filelock.c: Include "character.h".
15640
15641 * alloc.c: Include "character.h" instead of "charset.h".
15642 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
15643 (syms_of_alloc): Remove defsubr for Smake_char_table.
15644
15645 * buffer.c: Include "character.h" instead of "charset.h", don't
15646 include "coding.h".
15647 (Fset_buffer_multibyte): Adjust for UTF-8.
15648
15649 * buffer.h: EXFUN Fbuffer_live_p.
15650
15651 * callproc.c: Include "character.h" instead of "charset.h".
15652 (Fcall_process): Big change for the new code-conversion APIs.
15653
15654 * casetab.c: Include "character.h" instead of "charset.h".
15655 (set_canon, set_identity, shuffle): Adjust for the new
15656 map_char_table spec.
15657 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
15658 accessing the char table structure.
15659
15660 * chartab.c: New file that implements char table.
15661
15662 * category.c: Include "character.h".
15663 (copy_category_entry): New function.
15664 (copy_category_table): Call map_char_table and copy_category_entry.
15665 (Fmake_category_table): Initialize all top-level slots.
15666 (char_category_set): New function.
15667 (modify_lower_category_set): Delete.
15668 (Fmodify_category_entry): Call char_table_ref_and_range.
15669
15670 * category.h (CATEGORY_SET): Just call char_category_set.
15671
15672 * ccl.c: Include "character.h".
15673 (Qccl, Qcclp): New variables.
15674 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
15675 it's less than 256.
15676 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
15677 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
15678 and DST type.
15679 (ccl_driver): Change types of argument, adjust code accordingly.
15680 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
15681 ccl_driver.
15682 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
15683
15684 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
15685 New members src_multibyte, dst_multibyte, consumed, and produced.
15686 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
15687 (CODING_SPEC_CCL_PROGRAM): New macro.
15688 (ccl_driver): Update prototype.
15689 (Qccl, Qcclp, Fccl_program_p): Extern them.
15690 (CHECK_CCL_PROGRAM): New macro.
15691
15692 * character.c, character.h, chartab.c: New files.
15693
15694 * charset.c: Mostly re-written. Move character and multibyte sequence
15695 handling codes to character.c.
15696
15697 * charset.h: Mostly re-written. Move character and multibyte sequence
15698 handling codes to character.h.
15699
15700 * coding.c, coding.h: Mostly re-written.
15701
15702 * composite.c: Include "character.h" instead of "charset.h".
15703 (CHAR_WIDTH): Move to character.h.
15704 (HASH_KEY, HASH_VALUE): Delete.
15705
15706 * composite.h (enum composition_method): Change order of enumeration
15707 symbols.
15708
15709 * data.c: Include "character.h" instead of "charset.h".
15710 (Faref): Call CHAR_TABLE_REF for a char table.
15711 (Faset): Call CHAR_TABLE_SET for a char table.
15712
15713 * dispextern.h (free_realized_face, check_face_attribytes)
15714 (generate_ascii_font): Extern them.
15715 (free_realized_multibyte_face): Delete extern.
15716
15717 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
15718 table structure.
15719
15720 * editfns.c: Include "character.h" instead of "charset.h".
15721 (Fchar_to_string): Always call CHAR_STRING.
15722
15723 * emacs.c (main): Call init_charset_once, init_charset,
15724 syms_of_chartab, and syms_of_character.
15725
15726 * fileio.c: Include "character.h" instead of "charset.h".
15727 (Finsert_file_contents): Big change for the new code-conversion API.
15728 (choose_write_coding_system, Fwrite_region): Likewise.
15729 (build_annotations_2): Delete.
15730 (e_write): Big change for the new code-conversion API.
15731
15732 * fns.c: Include "character.h" instead of "charset.h".
15733 (copy_sub_char_table): Move to chartab.c.
15734 (Fcopy_sequence): Call copy_char_table for a char table.
15735 (concat): Delete codes calling count_multibyte.
15736 (string_char_to_byte, string_byte_to_char): Adjust for the new
15737 multibyte form.
15738 (internal_equal): Adjust for the change of char table structure.
15739 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
15740 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
15741 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
15742 (char_table_translate, optimize_sub_char_table)
15743 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
15744 chartab.c.
15745 (char_table_ref_and_index): Delete.
15746 (HASH_KEY, HASH_VALUE): Move to lisp.h.
15747 (Fmd5): Call preferred_coding_system instead of accessing
15748 Vcoding_category_list. Adjust for the new code-conversion API.
15749 (syms_of_fns): Move defsubr for char table related functions to
15750 chartab.c.
15751
15752 * fontset.c: Mostly re-written.
15753
15754 * fontset.h (struct font_info): Change type of the member encoding_type.
15755 (enum FONT_SPEC_INDEX): New enum.
15756 (fontset_font_pattern, fs_load_font): Update prototype.
15757 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
15758
15759 * indent.c: Include "character.h" instead of "charset.h".
15760 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
15761
15762 * insdel.c: Include "character.h" instead of "charset.h".
15763 (copy_text): Don't refer to Vnonascii_translation_table.
15764 (insert_from_gap): New function.
15765
15766 * keyboard.c: Include "character.h" instead of "charset.h".
15767 (command_loop_1): Never call direct_output_forward_char before
15768 a non-ASCII character.
15769 (read_char): If Vkeyboard_translate_table is a char table, always
15770 translate a character.
15771
15772 * keymap.c: Include "character.h".
15773 (store_in_keymap): Handle the case that IDX is a cons.
15774 (Fdefine_key): Handle the case that KEY is a cons and the car part
15775 is also a cons (range).
15776 (push_key_description): Adjust for the new character code.
15777 (describe_vector): Call describe_char_table for a char table.
15778 (describe_char_table): New function.
15779
15780 * keymap.h (describe_char_table): Extern it.
15781
15782 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
15783 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
15784 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
15785 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
15786 Delete.
15787 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
15788 structure.
15789 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
15790 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
15791 (CHARTAB_SIZE_BITS_3): New macros.
15792 (chartab_size): Extern it.
15793 (struct Lisp_Char_Table): Re-design.
15794 (struct Lisp_Sub_Char_Table): New structure.
15795 (HASH_KEY, HASH_VALUE): Move from fns.c.
15796 (CHARACTERBITS): Define as 22.
15797 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
15798 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
15799 (GC_SUB_CHAR_TABLE_P): New macro.
15800 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
15801 (code_convert_string_norecord): Deleted extern.
15802 (init_character_once, syms_of_character, init_charset)
15803 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
15804
15805 * lread.c: Include "character.h".
15806 (read_multibyte): New arg NBYTES.
15807 (read_escape): Change the meaning of returned *BYTEREP.
15808 (to_multibyte): Delete.
15809 (read1): Adjust the handling of char table and string.
15810
15811 * print.c: Include "character.h" instead of "charset.h".
15812 (print_string): Convert 8-bit raw bytes to octal form by
15813 string_escape_byte8.
15814 (print_object): Adjust for the new multibyte form. Print 8-bit
15815 raw bytes always in octal form. Handle sub char table correctly.
15816
15817 * process.c: Include "character.h" instead of "charset.h".
15818 (read_process_output, send_process): Adjust for the new
15819 code-conversion API.
15820
15821 * puresize.h (BASE_PURESIZE): Increase.
15822
15823 * regex.c: Include "character.h" instead of "charset.h".
15824 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
15825 (regex_compile): Accept a range whose starting and ending
15826 character have different leading bytes.
15827 (analyse_first): Adjust for the above change.
15828
15829 * search.c: Include "character.h" instead of "charset.h".
15830 (search_buffer, boyer_moore): Adjust for the new multibyte form.
15831 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
15832
15833 * syntax.c: Include "character.h" instead of "charset.h".
15834 (syntax_parent_lookup): Delete.
15835 (Fmodify_syntax_entry): Accept a cons as CHAR.
15836 (skip_chars): Adjust for the new multibyte form.
15837 (init_syntax_once): Call char_table_set_range instead of directly
15838 accessing the structure of a char table.
15839
15840 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
15841 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
15842 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
15843 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
15844
15845 * term.c: Include "buffer.h" and "character.h".
15846 (encode_terminal_code, write_glyphs): Adjust for the new
15847 code-conversion API.
15848 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
15849
15850 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
15851
15852 * xdisp.c: Include "character.h".
15853 (get_next_display_element): Adjust for the new multibyte form.
15854 (disp_char_vector): Adjust for the new char table structure.
15855 (decode_mode_spec_coding): Adjust for the new structure of
15856 coding system.
15857 (decode_mode_spec): Adjust for the new code-conversion API.
15858
15859 * xfaces.c: Include "character.h" instead of "charset.h".
15860 (load_face_font): Adjust for the change of choose_face_font and
15861 FS_LOAD_FONT.
15862 (generate_ascii_font): New function.
15863 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
15864 (set_font_frame_param): Adjust for the change of choose_face_font.
15865 (free_realized_face): Make it public.
15866 (free_realized_faces_for_fontset): Rename from
15867 free_realized_multibyte_face. Free also faces realized for ASCII.
15868 (choose_face_font): Change arguments. Adjust for the change of
15869 fontset_font_pattern and FS_LOAD_FONT.
15870
15871 * xfns.c: Include "character.h".
15872 (x_encode_text): Adjust for the new code-conversion API.
15873
15874 * xselect.c: Don't include "charset.h".
15875 (selection_data_to_lisp_data): Adjust for the new code conversion API.
15876
15877 * xterm.c: Include "character.h".
15878 (x_encode_char): New argument CHARSET. Change caller.
15879 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
15880 Call ENCODE_CHAR instead of SPLIT_CHAR.
15881 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
15882 CHAR_WIDTH instead of CHARSET_WIDTH.
15883 (XTread_socket): Adjust for the new code-conversion API.
15884 (x_new_font): Adjust for the change of FS_LOAD_FONT.
15885 (x_load_font): Adjust for the change of struct font.
15886
158872008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15888
15889 * xfaces.c (face_at_buffer_position): Remove unused vars.
15890
158912008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15892
15893 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
15894 Fix overflow checking.
15895
158962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15897
15898 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
15899 Cancel previous change.
15900
159012008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15902
15903 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
15904 ccl->eight_bit_control. Fix check for buffer overflow.
15905 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
15906 (ccl_driver): Initialize extra_bytes to 0.
15907
159082008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15909
15910 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
15911 return it ORed with ctrl_modifier.
15912
159132008-01-29 Miles Bader <miles@gnu.org>
15914
15915 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
15916
159172008-01-28 Jason Rumney <jasonr@gnu.org>
15918
15919 * w32.c (stat): Don't double check for networked drive.
15920
159212008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
15922
15923 * window.c (run_window_configuration_change_hook): New function.
15924 Code extracted from set_window_buffer. Set the selected frame.
15925 (set_window_buffer): Use it.
15926 * window.h (run_window_configuration_change_hook): Declare.
15927 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
15928
15929 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
15930
159312008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
15932
15933 * Makefile.in: Remove references to unused macros.
15934
159352008-01-26 Eli Zaretskii <eliz@gnu.org>
15936
15937 * w32.c (g_b_init_get_sid_sub_authority)
15938 (g_b_init_get_sid_sub_authority_count): New static variables.
15939 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
15940 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
15941 (init_user_info): Use them to retrieve uid and gid.
15942 Use 500/513, the Windows defaults, as Administrator's uid/gid.
15943 (fstat): Use pw_uid and pw_gid from the_passwd structure for
15944 st_uid and st_gid of the file.
15945
159462008-01-26 Jason Rumney <jasonr@gnu.org>
15947
15948 * w32.c (logon_network_drive): New function.
15949 (stat): Use it.
15950
159512008-01-26 Chong Yidong <cyd@stupidchicken.com>
15952
15953 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
15954 invisible text covered with an ellipsis.
15955
159562008-01-25 Richard Stallman <rms@gnu.org>
15957
15958 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
15959 jump back to beginning. Move some other initializations after that.
15960 (Qwindow_text_change_functions, Vwindow_text_change_functions):
15961 New variables.
15962 (syms_of_xdisp): Init them.
15963
15964 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
15965
15966 * buffer.c (reset_buffer_local_variables):
15967 Implement `permanent-local-hook'.
15968 (Qpermanent_local_hook): New variable.
15969 (syms_of_buffer): Init and staticpro it.
15970
159712008-01-25 Michael Albinus <michael.albinus@gmx.de>
15972
15973 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
15974
159752008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
15976
15977 * fns.c (Fclrhash): Return TABLE.
15978
159792008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15980
15981 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
15982 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
15983 is set even without positional changes.
15984 (x_scroll_bar_clear): Set bar->redraw_needed_p.
15985
15986 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
15987
159882008-01-23 Jason Rumney <jasonr@gnu.org>
15989
15990 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
15991
15992 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
15993 the unicode range available in MULE by locale-coding-system.
15994 Improve dbcs lead byte detection. Set event timestamp and modifiers
15995 earlier.
15996
159972008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15998
15999 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
16000 [MAC_OSX] (init_mac_osx_environment): Initialize it.
16001 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
16002 when used on child processes.
16003
160042008-01-21 Michael Albinus <michael.albinus@gmx.de>
16005
16006 * dbusbind.c (Fdbus_method_return_internal): Rename from
16007 Fdbus_method_return.
16008 (Fdbus_unregister_object): Move to dbus.el.
16009 (Fdbus_call_method, Fdbus_method_return_internal)
16010 (Fdbus_send_signal): Improve debug messages.
16011
160122008-01-20 Martin Rudalics <rudalics@gmx.at>
16013
16014 * undo.c (undo_inhibit_record_point): New variable.
16015 (syms_of_undo): Initialize it.
16016 (record_point): Don't record point when undo_inhibit_record_point
16017 is set.
16018
160192008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
16020
16021 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
16022
16023 * xdisp.c (Qauto_hscroll_mode): New var.
16024 (syms_of_xdisp): Initialize it.
16025 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
16026 window's buffer.
16027 (hscroll_windows): Don't check automatic_hscrolling_p here.
16028
16029 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
16030 vscroll if we're setting window-buffer to the value it already has.
16031
160322008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
16033
16034 * m/intel386.h: Remove references to XENIX.
16035
160362008-01-17 Andreas Schwab <schwab@suse.de>
16037
16038 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
16039 instead of HAVE_X86_64_LIB64_DIR.
16040 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
16041
160422008-01-17 Glenn Morris <rgm@gnu.org>
16043
16044 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
16045 to HAVE_X86_64_LIB64_DIR.
16046
160472008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
16048
16049 * s/irix3-3.h:
16050 * s/irix4-0.h:
16051 * s/386-ix.h:
16052 * s/domain.h:
16053 * s/hpux9-x11r4.h:
16054 * s/hpux9shxr4.h: Remove files for systems no longer supported.
16055
16056 * sysdep.c: Remove code containing references to symbols defined
16057 by unsupported systems.
16058
160592008-01-16 Glenn Morris <rgm@gnu.org>
16060
16061 * coding.c (select-safe-coding-system-function): Doc fix.
16062
160632008-01-15 Glenn Morris <rgm@gnu.org>
16064
16065 * config.in: Revert 2008-01-13 change: this is a generated file.
16066
160672008-01-13 Tom Tromey <tromey@redhat.com>
16068
16069 * lisp.h: Fix typo.
16070
160712008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16072
16073 * m/sequent-ptx.h:
16074 * m/sequent.h:
16075 * s/ptx.h:
16076 * s/ptx4-2.h:
16077 * s/ptx4.h: Remove files for systems no longer supported.
16078
16079 * callproc.c (Fcall_process): Fix previous change.
16080
160812008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16082
16083 * unexsunos4.c: Remove file, system not supported anymore.
16084
16085 * m/mips.h:
16086 * m/intel386.h:
16087 * callproc.c:
16088 * config.in:
16089 * ecrt0.c:
16090 * emacs.c:
16091 * fileio.c:
16092 * frame.c:
16093 * getpagesize.h:
16094 * keyboard.c:
16095 * lread.c:
16096 * process.c:
16097 * puresize.h:
16098 * sysdep.c:
16099 * systty.h:
16100 * syswait.h:
16101 * unexec.c:
16102 * xdisp.c:
16103 * alloc.c: Remove code containing references to symbols defined by
16104 unsupported systems.
16105
161062008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
16107
16108 * coding.c (detect_coding_mask): Fix previous change.
16109
161102008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
16111
16112 * coding.c (detect_coding_iso2022): New arg
16113 latin_extra_code_state. Allow Latin extra codes only
16114 when *latin_extra_code_state is nonzero.
16115 (detect_coding_mask): If there is a NULL byte, detect the encoding
16116 as UTF-16 or binary. If Latin extra codes exist, detect the
16117 encoding as ISO-2022 only when there's no other proper encoding is
16118 found.
16119
161202008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16121
16122 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
16123 #ifdef MAC_OS.
16124
161252008-01-08 Richard Stallman <rms@gnu.org>
16126
16127 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
16128
161292008-01-06 Nick Roberts <nickrob@snap.net.nz>
16130
16131 * keyboard.c (parse_menu_item): Don't enclose key bindings on
16132 menu bar in parentheses.
16133
161342008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
16135
16136 * m/7300.h:
16137 * m/acorn.h:
16138 * m/alliant-2800.h:
16139 * m/alliant.h:
16140 * m/alliant1.h:
16141 * m/alliant4.h:
16142 * m/altos.h:
16143 * m/amdahl.h:
16144 * m/apollo.h:
16145 * m/att3b.h:
16146 * m/aviion-intel.h:
16147 * m/aviion.h:
16148 * m/celerity.h:
16149 * m/clipper.h:
16150 * m/cnvrgnt.h:
16151 * m/convex.h:
16152 * m/cydra5.h:
16153 * m/delta88k.h:
16154 * m/dpx2.h:
16155 * m/dual.h:
16156 * m/elxsi.h:
16157 * m/f301.h:
16158 * m/gould-np1.h:
16159 * m/gould.h:
16160 * m/i860.h:
16161 * m/ibmps2-aix.h:
16162 * m/ibmrt-aix.h:
16163 * m/ibmrt.h:
16164 * m/irist.h:
16165 * m/is386.h:
16166 * m/isi-ov.h:
16167 * m/mega68.h:
16168 * m/mg1.h:
16169 * m/news-r6.h:
16170 * m/news-risc.h:
16171 * m/news.h:
16172 * m/nh3000.h:
16173 * m/nh4000.h:
16174 * m/ns16000.h:
16175 * m/ns32000.h:
16176 * m/nu.h:
16177 * m/orion.h:
16178 * m/orion105.h:
16179 * m/paragon.h:
16180 * m/pfa50.h:
16181 * m/plexus.h:
16182 * m/pyramid.h:
16183 * m/pyrmips.h:
16184 * m/sh3el.h:
16185 * m/sps7.h:
16186 * m/sr2k.h:
16187 * m/stride.h:
16188 * m/sun1.h:
16189 * m/sun2.h:
16190 * m/sun3-68881.h:
16191 * m/sun3-fpa.h:
16192 * m/sun3-soft.h:
16193 * m/sun3.h:
16194 * m/sun386.h:
16195 * m/symmetry.h:
16196 * m/tad68k.h:
16197 * m/tahoe.h:
16198 * m/targon31.h:
16199 * m/tek4300.h:
16200 * m/tekxd88.h:
16201 * m/tower32.h:
16202 * m/tower32v3.h:
16203 * m/ustation.h:
16204 * m/wicat.h:
16205 * m/xps100.h:
16206 * s/cxux.h:
16207 * s/cxux7.h:
16208 * s/dgux.h:
16209 * s/dgux4.h:
16210 * s/dgux5-4-3.h:
16211 * s/dgux5-4r2.h:
16212 * s/esix.h:
16213 * s/esix5r4.h:
16214 * s/hiuxmpp.h:
16215 * s/hiuxwe2.h:
16216 * s/iris3-5.h:
16217 * s/iris3-6.h:
16218 * s/isc2-2.h:
16219 * s/isc3-0.h:
16220 * s/isc4-0.h:
16221 * s/isc4-1.h:
16222 * s/newsos5.h:
16223 * s/newsos6.h:
16224 * s/osf1.h:
16225 * s/osf5-0.h:
16226 * s/riscix1-1.h:
16227 * s/riscix12.h:
16228 * s/sco4.h:
16229 * s/sco5.h:
16230 * s/sunos4-0.h:
16231 * s/sunos4-1.h:
16232 * s/sunos413.h:
16233 * s/sunos4shr.h:
16234 * s/umax.h:
16235 * s/unipl5-2.h:
16236 * s/xenix.h:
16237 * cxux-crt0.s:
16238 * unexapollo.c:
16239 * unexconvex.c:
16240 * unexenix.c:
16241 * unexsni.c: Remove files for systems no longer supported.
16242
16243 * m/intel386.h: Remove references to unsupported systems.
16244
16245 * w32.c (get_emacs_configuration): Remove reference to i860.
16246
16247 * sysdep.c: Remove dead code.
16248
162492008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
16250
16251 * s/rtu.h:
16252 * m/masscomp.h: Remove files. Platform is obsolete.
16253
162542008-01-04 Michael Albinus <michael.albinus@gmx.de>
16255
16256 * dbusbind.c (Fdbus_method_return): New function.
16257 (xd_read_message): Add the serial number to the event.
16258 (Fdbus_register_method): Activate the function.
16259
162602008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
16261
16262 * keyboard.c (read_key_sequence): Fix typo.
16263
162642008-01-03 Michael Albinus <michael.albinus@gmx.de>
16265
16266 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
16267 (xd_signature, xd_append_arg): Handle element type detection for
16268 empty arrays.
16269 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
16270 SDATA () calls; this must be solved more general.
16271 (Fdbus_register_signal): Use SBYTES instead of strlen.
16272
162732008-01-03 Magnus Henoch <magnus@zemdatav>
16274
16275 * dbusbind.c (xd_append_arg): Use unsigned char instead of
16276 unsigned int for byte values (necessary for big-endian platform).
16277 (Fdbus_call_method): Handle the case of no returned arguments.
16278
162792007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
16280
16281 * dbusbind.c (xd_read_message): Use non-static input_event struct.
16282
162832007-12-31 Magnus Henoch <mange@freemail.hu>
16284
16285 * dbusbind.c (xd_signature): Signature of variant is just "v".
16286
162872007-12-30 Michael Albinus <michael.albinus@gmx.de>
16288
16289 * dbusbind.c: Fix several errors and compiler warnings.
16290 Reported by Tom Tromey <tromey@redhat.com>.
16291 (XD_ERROR, XD_DEBUG_MESSAGE)
16292 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
16293 (xd_append_arg): Part for basic D-Bus types rewritten.
16294 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
16295 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
16296 appropriate.
16297 (xd_read_message): Return Qnil. Don't signal an error; it is not
16298 useful during event reading.
16299 (Fdbus_register_signal): Signal an error if the check for
16300 FUNCTIONP fails.
16301 (Fdbus_register_method): New function. The implementation is not
16302 complete, the call of the function signals an error therefore.
16303 (Fdbus_unregister_object): New function, renamed from
16304 Fdbus_unregister_signal. The initial check signals an error, if
16305 the object is not well formed.
16306
163072007-12-30 Richard Stallman <rms@gnu.org>
16308
16309 * textprop.c (get_char_property_and_overlay):
16310 Signal error if POSITION is out of range in a buffer.
16311
163122007-12-29 Martin Rudalics <rudalics@gmx.at>
16313
16314 * w32fns.c (Fx_create_frame): Make copy of frame parameters
16315 because the original parameters are in pure storage now.
16316
163172007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16318
16319 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
16320
163212007-12-22 Eli Zaretskii <eliz@gnu.org>
16322
16323 * callint.c (syms_of_callint) <command-history>: Add reference to
16324 history-length in the doc string.
16325
163262007-12-17 Jason Rumney <jasonr@gnu.org>
16327
16328 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16329 before passing as wParam.
16330
163312007-12-22 Michael Albinus <michael.albinus@gmx.de>
16332
16333 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
16334 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
16335 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
16336 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
16337 as number.
16338 (Fdbus_call_method): Fix docstring.
16339
163402007-12-21 Michael Albinus <michael.albinus@gmx.de>
16341
16342 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
16343 New macros.
16344 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
16345 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
16346 Simplify.
16347 (xd_signature): New function.
16348 (xd_append_arg): Compute also signatures. Major rewrite.
16349 (xd_retrieve_arg): Make debug messages friendly.
16350 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
16351 Check for signatures of arguments.
16352
163532007-12-19 Michael Albinus <michael.albinus@gmx.de>
16354
16355 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
16356 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
16357 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
16358 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
16359 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
16360 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
16361 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
16362 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
16363 (xd_retrieve_value): Remove. Functionality included in ...
16364 (xd_append_arg): New function.
16365 (Fdbus_call_method, Fdbus_send_signal): Apply it.
16366
163672007-12-16 Michael Albinus <michael.albinus@gmx.de>
16368
16369 * dbusbind.c (top): Include <stdio.h>.
16370 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
16371 dbus_message_new_method_call and dbus_message_new_signal.
16372 (Fdbus_register_signal): Rename unique_name to uname.
16373 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
16374 non-existing unique name. Fix typos in matching rule. Return an
16375 object which is useful in Fdbus_unregister_signal.
16376 (Fdbus_unregister_signal): Reimplementation, in order to remove
16377 only the corresponding entry.
16378 (Vdbus_registered_functions_table): Change the order of entries.
16379 Apply these changes in xd_read_message and Fdbus_register_signal.
16380
163812007-12-16 Andreas Schwab <schwab@suse.de>
16382
16383 * fileio.c (Finsert_file_contents): Fix overflow check to not
16384 depend on undefined integer overflow.
16385
163862007-12-14 Jason Rumney <jasonr@gnu.org>
16387
16388 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
16389 for characters above 127.
16390
163912007-12-13 Jason Rumney <jasonr@gnu.org>
16392
16393 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
16394 before dereferencing array.
16395 (lookup_vk_code): Remove zero comparison.
16396
163972007-12-14 Michael Albinus <michael.albinus@gmx.de>
16398
16399 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
16400 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
16401 Use `unsigned int' instead of `uint'.
16402 (xd_read_message, Fdbus_register_signal): Split expressions into
16403 multiple lines before operators "&&" and "||", according to the
16404 GNU Coding Standards.
16405
164062007-12-14 Eli Zaretskii <eliz@gnu.org>
16407
16408 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
16409
164102007-12-12 Juri Linkov <juri@jurta.org>
16411
16412 * buffer.c (Frename_buffer): In interactive spec replace
16413 `read-buffer' with `read-string' that uses `buffer-name-history'
16414 as history, and the current buffer's name as default.
16415
164162007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
16417
16418 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
16419 manipulating the backtrace manually.
16420 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
16421 (struct backtrace, backtrace_list): Remove.
16422 (command_loop_1): Remove dead var `no_direct'.
16423
16424 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
16425 preserve non-built-in buffer-local variables.
16426 (Fkill_all_local_variables): Don't re-create&re-set permanent
16427 buffer-local variables.
16428
164292007-12-09 Juri Linkov <juri@jurta.org>
16430
16431 * buffer.c (Frename_buffer): Change interactive spec from "s" to
16432 Lisp code that uses `read-buffer' with current buffer as default.
16433
164342007-12-08 Michael Albinus <michael.albinus@gmx.de>
16435
16436 * dbusbind.c (xd_read_message): Generate an event for every
16437 registered handler. There might be several handlers registered
16438 for the same signal.
16439 (Fdbus_register_signal): Don't overwrite a registration for the
16440 same signal. Add a new registration if handlers are different.
16441 (Vdbus_registered_functions_table): Rework doc string.
16442
164432007-12-07 Michael Albinus <michael.albinus@gmx.de>
16444
16445 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
16446 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
16447 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
16448 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
16449 Unify argument lists.
16450 (xd_read_message, Fdbus_register_signal): Reorder and extend event
16451 arguments and hash table keys. Use unique name for service.
16452 (Fdbus_unregister_signal): Remove checks.
16453 (Vdbus_registered_functions_table): Fix doc string.
16454
164552007-12-05 Magnus Henoch <mange@freemail.hu>
16456
16457 * process.c (make_process): Initialize pty_flag to 0.
16458
164592007-12-05 Jason Rumney <jasonr@gnu.org>
16460
16461 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
16462 specified XBMs.
16463
164642007-12-05 Richard Stallman <rms@gnu.org>
16465
16466 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
16467
164682007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16469
16470 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
16471 New variable.
16472 (mac_try_close_socket) [MAC_OSX]: New function.
16473 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
16474 Update cfsockets_for_select. Replace invalid CFRunLoop source.
16475
16476 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
16477 Use mac_try_close_socket.
16478
164792007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16480
16481 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
16482 reloc_base.
16483 (copy_dysymtab): Compute relocation base here.
16484 (rebase_reloc_address) [__ppc64__]: New function.
16485 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
16486 changed.
16487
164882007-12-05 Jason Rumney <jasonr@gnu.org>
16489
16490 * w32proc.c (sys_spawnve): Quote args with wildcards.
16491
164922007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16493
16494 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
16495 __objc_* sections.
16496 (unrelocate) [_LP64]: Set relocation base to address of data segment.
16497
164982007-12-05 Michael Albinus <michael.albinus@gmx.de>
16499
16500 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
16501 Move check for Vdbus_registered_functions_table to
16502 xd_read_queued_messages.
16503 (xd_read_queued_messages): Protect xd_read_message calls by
16504 internal_condition_case_1.
16505
165062007-12-04 Michael Albinus <michael.albinus@gmx.de>
16507
16508 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
16509 Qdbus_system_bus and Qdbus_session_bus, respectively.
16510 (Vdbus_intern_symbols): Remove.
16511 (Vdbus_registered_functions_table): New hash table.
16512 (XD_SYMBOL_INTERN_SYMBOL): Remove.
16513 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
16514 Rewrite in order to manage registered functions by hash table
16515 Vdbus_registered_functions_table.
16516
165172007-12-03 Jan Djärv <jan.h.d@swipnet.se>
16518
16519 * xterm.c: Update URL to Window Manager Specification in comment.
16520
165212007-12-02 Michael Albinus <michael.albinus@gmx.de>
16522
16523 * config.in (HAVE_DBUS): Add.
16524
16525 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
16526 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
16527 (obj): Add $(DBUS_OBJ).
16528 (LIBES): Add $(DBUS_LIBS).
16529 (dbusbind.o): New target.
16530
16531 * dbusbind.c: New file.
16532
16533 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
16534
16535 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
16536 (Qdbus_event): New Lisp symbol.
16537 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
16538 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 16539 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
16540
16541 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
16542
165432007-12-01 Richard Stallman <rms@gnu.org>
16544
16545 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
16546
165472007-11-30 Jason Rumney <jasonr@gnu.org>
16548
16549 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
16550 (w32con_reset_terminal_modes): Clear screen buffer.
16551 (w32_face_attributes): Don't use color indexes that are out of range.
16552 Only reverse the default colors.
16553
16554 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
16555 WINDOWSNT.
16556
16557 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
16558
165592007-11-29 Jason Rumney <jasonr@gnu.org>
16560
16561 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
16562 (w32_face_attributes): Use Vtty_defined_color_alist to determine
16563 if the terminal colors are initialized.
16564 (unspecified_fg, unspecified_bg): Remove unused declarations.
16565
165662007-11-29 Andreas Schwab <schwab@suse.de>
16567
16568 * keyboard.c (apply_modifiers): Fix typo.
16569
165702007-11-29 Richard Stallman <rms@gnu.org>
16571
16572 * keymap.c (Fcurrent_local_map): Doc fix.
16573
165742007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
16575
16576 * s/gnu-kfreebsd.h: New file.
16577
165782007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
16579
16580 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
16581 Don't cast redundantly.
16582
16583 * keyboard.c (KEY_TO_CHAR): New macro.
16584 (parse_modifiers, apply_modifiers): Accept integer arguments.
16585 (read_key_sequence): Use them to unify the "shift->unshift" mapping
16586 for chars and symbol keys.
16587 After doing such remapping, apply function-key-map again.
16588
165892007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
16590
16591 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
16592 compiled anymore.
16593
165942007-11-26 Andreas Schwab <schwab@suse.de>
16595
16596 * process.c (list_processes_1): Fix indentation level of the
16597 command column.
16598
165992007-11-23 Andreas Schwab <schwab@suse.de>
16600
16601 * editfns.c (Fformat): Handle %c specially since it requires the
16602 argument to be of type int.
16603
166042007-11-23 Markus Triska <markus.triska@gmx.at>
16605
16606 * emacs.c (main): Call init_editfns before init_process, since
16607 init_process sets Vprocess_connection_type depending on OS release.
16608
166092007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
16610
16611 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
16612 (find_symbol_value): Use do_symval_forwarding.
16613
16614 * data.c (set_internal): Set the value in the `cons-cell' (for
16615 Buffer_Local_values) not only for frame-local variables.
16616
166172007-11-22 Andreas Schwab <schwab@suse.de>
16618
16619 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
16620 values to sprintf.
16621 * keymap.c (Fsingle_key_description): Likewise.
16622 * print.c (print_object): Likewise.
16623
166242007-11-22 Jan Djärv <jan.h.d@swipnet.se>
16625
16626 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
16627 file for image is nil.
16628
166292007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
16630
16631 * term.c: Include stdarg.h.
16632 (fatal): Implement using varargs.
16633 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
16634
166352007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16636
16637 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
16638 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
16639 Update call to buffer_slot_type_mismatch.
16640 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
16641 (buffer_slot_type_mismatch): Update.
16642 * buffer.c (buffer_local_types): Remove.
16643 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
16644 (defvar_per_buffer): Set the type in the buffer_objfwd.
16645
166462007-11-21 Jason Rumney <jasonr@gnu.org>
16647
16648 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
16649 CreateFileMapping returns NULL on failure.
16650
166512007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16652
16653 * search.c (Fset_match_data): Remove the `evaporate' feature.
16654 (unwind_set_match_data): Don't use the `evaporate' feature.
16655
166562007-11-21 Jason Rumney <jasonr@gnu.org>
16657
16658 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
16659
16660 * w32console.c (w32con_write_glyphs): Remove unused variables.
16661
166622007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
16663
16664 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
16665
16666 * s/darwin.h (MULTI_KBOARD): Remove.
16667
16668 * macfns.c (x_create_tip_frame, Fx_create_frame)
16669 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
16670
166712007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
16672
16673 * buffer.c (Fbuffer_local_value): Remove redundant test.
16674 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
16675 than in `current-buffer' to match the comment.
16676 Do the swap using swap_in_global_binding.
16677
16678 * data.c (store_symval_forwarding, set_internal):
16679 * eval.c (specbind): Remove dead code.
16680
16681 * coding.c (detect_coding, Fupdate_coding_systems_internal):
16682 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
16683 Since we do not want to see internal Lisp_*fwd objects here.
16684
166852007-11-18 Jan Djärv <jan.h.d@swipnet.se>
16686
16687 * sysdep.c (init_system_name): Use getaddrinfo if available.
16688
16689 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
16690 (x_scroll_bar_note_movement): start, end, with, height in struct
16691 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
16692
166932007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
16694
16695 * puresize.h (BASE_PURESIZE): Increase to 1190000.
16696
166972007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
16698
16699 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
16700 This undoes Richard's change of 14-Oct-2002.
16701
16702 * alloc.c (allocate_other_vector):
16703 * lisp.h (allocate_other_vector): Remove.
16704
16705 * window.c (struct save_window_data): Move non-lisp data to the end
16706 and make it `int' rather than Lisp_Object.
16707 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
16708 Done wrap/unwrap integer values.
16709 (Fset_window_configuration, compare_window_configurations):
16710 Update use of fields to their new types.
16711
16712 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
16713 Turn integer fields into `int'. Merge x_window_low and x_window_high.
16714 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
16715 (SET_SCROLL_BAR_X_WINDOW): Remove.
16716 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
16717 Access the new x_window field directly.
16718 * xterm.c (x_scroll_bar_create): Use a pseudovector.
16719 Don't wrap/unwrap integers into Lisp_Objects.
16720 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
16721 (x_scroll_bar_report_motion):
16722 Don't wrap/unwrap integers into Lisp_Objects.
16723 (x_term_init): Use SDATA.
16724 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
16725 (x_scroll_bar_set_handle, x_scroll_bar_remove)
16726 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
16727 (x_scroll_bar_report_motion, x_scroll_bar_clear):
16728 * xfns.c (x_set_background_color):
16729 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
16730 Access the new x_window field directly.
16731
16732 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
16733 (allocate_pseudovector): Make non-static.
16734
16735 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
16736 (allocate_pseudovector): Declare.
16737 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
16738
167392007-11-15 Andreas Schwab <schwab@suse.de>
16740
16741 * editfns.c (Fformat): Correctly format EMACS_INT values.
16742 Also take precision into account when formatting an integer.
16743
16744 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
16745
167462007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
16747
16748 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
16749 (syms_of_keyboard): Defsubr it.
16750
16751 * data.c (swap_in_global_binding): Fix longstanding bug where
16752 store_symval_forwarding was not called with the right second argument,
16753 thus causing objfwd-ing from being dropped.
16754
167552007-11-14 Juanma Barranquero <lekktu@gmail.com>
16756
16757 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
16758 (Fx_display_pixel_height, Fx_display_planes)
16759 (Fx_display_color_cells, Fx_server_max_request_size)
16760 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16761 (Fx_display_visual_class, Fx_display_save_under):
16762 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
16763 (Fx_display_pixel_height, Fx_display_planes)
16764 (Fx_display_color_cells, Fx_server_max_request_size)
16765 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
16766 (Fx_display_mm_height, Fx_display_mm_width)
16767 (Fx_display_backing_store, Fx_display_visual_class)
16768 (Fw32_select_font, Fx_display_save_under):
16769 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
16770 (Fx_display_pixel_height, Fx_display_planes)
16771 (Fx_display_color_cells, Fx_server_max_request_size)
16772 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16773 (Fx_display_save_under): Fix typos in docstrings.
16774
167752007-11-14 Juanma Barranquero <lekktu@gmail.com>
16776
16777 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
16778 corresponding to deleted entries; they are an implementation detail.
16779 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
16780 Remove variables.
16781 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
16782 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
16783 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
16784 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
16785 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
16786 (Fw32_define_rgb_color, Fw32_load_color_file)
16787 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
16788 Fix typos in docstrings.
16789 (Fx_server_version): Reflow docstring.
16790 (Fw32_shell_execute): Doc fixes.
16791
167922007-11-13 Juanma Barranquero <lekktu@gmail.com>
16793
16794 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
16795 if w32_parse_hot_key returned nil.
16796
167972007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
16798
16799 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
16800
168012007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 16802
aac0c6e3
MR
16803 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
16804
16805 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
16806
16807 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
16808 Remove W32_SCROLL_BAR_CLICK_EVENT.
16809
16810 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
16811 Add MULTIMEDIA_KEY_EVENT.
16812
16813 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
16814 (lispy_multimedia_keys) [WINDOWSNT]: New array.
16815 (make_lispy_event) [WINDOWSNT]: Use it to translate
16816 MULTIMEDIA_KEY_EVENT.
16817
16818 * w32term.h (WM_APPCOMMAND): Define if not already.
16819 (GET_APPCOMMAND_LPARAM): Likewise.
16820
16821 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
16822 WM_APPCOMMAND.
16823
16824 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
16825 (syms_of_w32fns): Export and initialize it.
16826 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
16827
168282007-11-09 Chong Yidong <cyd@stupidchicken.com>
16829
16830 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
16831 twice.
16832
16833 * xdisp.c (handle_face_prop): Fix last change.
16834
168352007-11-09 Richard Stallman <rms@gnu.org>
16836
16837 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
16838 not just for after-strings and before-strings.
16839 Call face_for_overlay_string and pass the overlay to it.
16840 (handle_display_prop): Determine whether property came from an overlay.
16841 Pass OVERLAY arg to handle_single_display_spec.
16842 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
16843 (load_overlay_strings): Fill in it->string_overlays.
16844 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
16845
16846 * xfaces.c (face_for_overlay_string): Function renamed from
16847 face_at_buffer_position_no_overlays, and add arg OVERLAY.
16848
16849 * dispextern.h (struct it): New elt string_overlays.
16850 New elt from_overlay, also in stack.
16851 Rearrange a few elements.
16852 (face_for_overlay_string): Decl renamed from
16853 face_at_buffer_position_no_overlays, and add argument.
16854
168552007-11-09 Richard Stallman <rms@gnu.org>
16856
16857 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
16858 to get the base face for an overlay string.
16859
16860 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
16861
16862 * xfaces.c (face_at_buffer_position_no_overlays): New function.
16863
16864 * xdisp.c (handle_stop): Move some code out of loop.
16865
168662007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16867
16868 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
16869 Fix conversion from Lisp object to ATSUFontID.
16870
168712007-11-09 Jason Rumney <jasonr@gnu.org>
16872
16873 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
16874
168752007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16876
16877 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
16878 Don't assume regions are aligned to page boundary.
16879 (print_load_command_name): Add LC_UUID if defined.
16880
168812007-11-09 Richard Stallman <rms@gnu.org>
16882
16883 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
16884
168852007-11-07 Jason Rumney <jasonr@gnu.org>
16886
16887 * s/windows95.h: Remove.
16888
168892007-11-06 Jan Djärv <jan.h.d@swipnet.se>
16890
16891 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
16892 abort with a message on unhandled store_type values.
16893
168942007-11-01 Jan Djärv <jan.h.d@swipnet.se>
16895
16896 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
16897 Remove HAVE_X11R5 and HAVE_X11R4.
16898
168992007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16900
16901 * Makefile.in: Remove references to sunfns.c and sunfns.o.
16902
169032007-11-01 Johan Bockgård <bojohan@gnu.org>
16904
16905 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
16906 Don't set s->stippled_p here, since it has already been set by
16907 x_set_glyph_string_gc from x_draw_glyph_string.
16908
169092007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16910
16911 * sunfns.c: Remove file.
16912
16913 * m/sun386.h:
16914 * m/sun2.h:
16915 * m/sparc.h: Remove Sun windows code.
16916
169172007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
16918
16919 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
16920 (init_keyboard): Set current_kboard's window-system to nil.
16921 (tty_read_avail_input): Typo.
16922 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
16923
169242007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
16925
16926 * s/usg5-4.h:
16927 * s/usg5-3.h:
16928 * s/ptx.h:
16929 * m/is386.h:
16930 * m/ibmps2-aix.h:
16931 * Makefile.in: Remove all mentions of X10.
16932
16933 * dispnew.c (syms_of_display): Don't mention version 10.
16934
169352007-10-28 Juanma Barranquero <lekktu@gmail.com>
16936
16937 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
16938 ($(BLD)/abbrev.$(O)): Remove.
16939
169402007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
16941
16942 Rewrite abbrev.c in Elisp.
16943 * image.c (Qcount): Don't declare as extern.
16944 (syms_of_image): Initialize and staticpro `Qcount'.
16945 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
16946 * emacs.c (main): Don't call syms_of_abbrev.
16947 * Makefile.in (obj): Remove abbrev.o.
16948 (abbrev.o): Remove.
16949 * abbrev.c: Remove.
16950
169512007-10-26 Martin Rudalics <rudalics@gmx.at>
16952
16953 * window.c (window_min_size_2): Don't count header-line.
16954
169552007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
16956
16957 * frame.h (struct frame): Move all bit fields after the first bit
16958 field to take advantage of the available space. Group all the
16959 chars together to reduce wasted space due to padding.
16960
169612007-10-26 Juanma Barranquero <lekktu@gmail.com>
16962
16963 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
16964
16965 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
16966 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
16967 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
16968 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
16969 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
16970 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
16971 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
16972 (last_marked, mark_object_loop_halt): Make static.
16973
16974 * frame.c (syms_of_frame) <delete-frame-functions>:
16975 Fix typo in docstring.
16976
169772007-10-25 Juanma Barranquero <lekktu@gmail.com>
16978
16979 * w32.c (init_environment): Fix tiny memory leak.
16980 (w32_get_resource): Remove unused variable `ok'.
16981
169822007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
16983
16984 Make `window-system' into a keyboard-local variable (rather than
16985 frame-local as done originally by multi-tty).
16986
16987 * keyboard.h (struct kboard): Add Vwindow_system.
16988 * keyboard.c (init_kboard): Set a default for Vwindow_system.
16989 (mark_kboards): Mark Vwindow_system.
16990
16991 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
16992 (init_display): Don't set the obsolete `window-system' frame-param.
16993
16994 * xterm.c (x_term_init):
16995 * w32term.c (w32_create_terminal):
16996 * term.c (init_tty): Set Vwindow_system.
16997 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
16998 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
16999
17000 * xfns.c (Fx_create_frame, x_create_tip_frame):
17001 * w32fns.c (Fx_create_frame, x_create_tip_frame):
17002 * macfns.c (Fx_create_frame):
17003 Don't set the obsolete `window-system' frame-param.
17004
17005 * frame.h (Qwindow_system): Remove.
17006 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
17007 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
17008
170092007-10-24 Richard Stallman <rms@gnu.org>
17010
17011 * frame.c (x_figure_window_size): For fullscreen case,
17012 set USPosition | PPosition without clobbering rest of window_prompting.
17013
17014 * keyboard.c (Fcurrent_idle_time): Doc fix.
17015
17016 * print.c (Fwith_output_to_temp_buffer): Doc fix.
17017
170182007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
17019
17020 * process.c (unwind_request_sigio): Only define if __ultrix__.
17021
17022 * callproc.c (child_setup): Remove spurious *.
17023
17024 * lisp.h (Fget_text_property): Declare.
17025 (have_menus_p): Declare it here rather than in sys-dep header files.
17026 * macterm.h (have_menus_p):
17027 * msdos.h (have_menus_p):
17028 * xterm.h (have_menus_p): Remove.
17029
17030 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
17031 (Fmake_variable_frame_local): Just check the variable's const-ness
17032 rather than checking nil or t.
17033
170342007-10-22 Jason Rumney <jasonr@gnu.org>
17035
17036 * w32fns.c: Include math.h.
17037 (w32_abort): Declaration moved to nt/config.nt.
17038
17039 * s/ms-w32.h (HAVE_STDLIB_H): Define.
17040 (abort): Redefinition moved to nt/config.nt.
17041
17042 * m/windowsnt.h: Remove.
17043
170442007-10-22 Juanma Barranquero <lekktu@gmail.com>
17045
17046 * emacs.c (Fdump_emacs): Fix typo in message.
17047 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
17048 <installation-directory>: Reflow docstring.
17049
170502007-10-22 Juri Linkov <juri@jurta.org>
17051
17052 * minibuf.c: Allow minibuffer default to be a list of default values.
17053 With empty input use the first element of this list as returned default.
17054 (string_to_object)
17055 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
17056 (read_minibuf): If defalt is cons, set histstring to its car.
17057 (Fread_string): If default_value is cons, set val to its car.
17058 (Fread_buffer): If def is cons, use its car.
17059 (Fcompleting_read): If defalt is cons, set val to its car.
17060
170612007-10-21 Michael Albinus <michael.albinus@gmx.de>
17062
17063 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
17064
170652007-10-20 Juanma Barranquero <lekktu@gmail.com>
17066
17067 * doc.c (Fdocumentation): Check for advice in all cases.
17068
170692007-10-19 Chong Yidong <cyd@stupidchicken.com>
17070
17071 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
17072
170732007-10-19 Richard Stallman <rms@gnu.org>
17074
17075 * doc.c (Fdocumentation): Check for and handle an advised function.
17076
170772007-10-19 Juanma Barranquero <lekktu@gmail.com>
17078
17079 * process.c (Fset_process_filter): Doc fix.
17080
170812007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
17082
17083 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
17084 which caused key-translation-map to applied repeatedly (thus breaking
17085 double-mode).
17086
170872007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17088
17089 * xselect.c (x_own_selection, x_handle_selection_clear)
17090 (x_clear_frame_selections):
17091 * w32menu.c (list_of_panes, list_of_items):
17092 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
17093 * textprop.c (validate_plist, interval_has_all_properties)
17094 (interval_has_some_properties, interval_has_some_properties_list)
17095 (add_properties, text_property_list):
17096 * process.c (Fget_buffer_process, list_processes_1, status_notify):
17097 * minibuf.c (Fassoc_string):
17098 * macselect.c (x_own_selection, x_clear_frame_selections)
17099 (Fx_disown_selection_internal):
17100 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
17101 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
17102
171032007-10-17 Chong Yidong <cyd@stupidchicken.com>
17104
17105 * process.c: Link to libs for calling res_init() if available.
17106 (Fmake_network_process): Call res_init() before getaddrinfo or
17107 gethostbyname, if possible.
17108
171092007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17110
17111 * lread.c (read1): Set pvectype for char_tables.
17112
17113 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
17114 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
17115 Add type checks.
17116 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
17117
17118 * alloc.c (free_misc): Use XMISCTYPE.
17119 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
17120
171212007-10-17 Glenn Morris <rgm@gnu.org>
17122
17123 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
17124 (syms_of_minibuf): Add Qcompletion_ignore_case.
17125 * dired.c (Qcompletion_ignore_case): Change to external.
17126 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
17127 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
17128 (Fread_file_name): Use it rather than intern'ing.
17129
17130 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
17131 (Fread_coding_system): Ignore case of user input.
17132
171332007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17134
17135 * xdisp.c (handle_display_prop): Ignore display specs after
17136 replacing one when string text is being replaced.
17137 (handle_single_display_spec): Pretend as if characters with display
17138 property haven't been consumed only when buffer text is being replaced.
17139
171402007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
17141
17142 * xfns.c (Fx_create_frame, Fx_display_list):
17143 * window.c (window_fixed_size_p, enlarge_window)
17144 (shrink_window_lowest_first):
17145 * macterm.c (init_font_name_table):
17146 * macfns.c (Fx_create_frame, Fx_display_list):
17147 * lread.c (close_load_descs):
17148 * keyboard.c (read_char_x_menu_prompt):
17149 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
17150 * coding.c (code_convert_region_unwind): Test the type of an object
17151 rather than just !NILP before extracting data from it.
17152
17153 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
17154
17155 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
17156 (XMISCANY): New macro.
17157 (XMISCTYPE): Use it.
17158 (struct Lisp_Misc_Any): New type.
17159 (union Lisp_Misc): Use it.
17160 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
17161 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
17162 (find_symbol_value, set_internal, default_value, Fset_default)
17163 (Fmake_variable_buffer_local, Fmake_local_variable)
17164 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
17165 (Flocal_variable_if_set_p, Fvariable_binding_locus):
17166 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
17167 * alloc.c (allocate_buffer): Set the size and tag.
17168 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
17169 Use XMISCANY.
17170 (die): Follow the GNU convention for error messages.
17171 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
17172 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
17173 tag any more.
17174 (set_buffer_internal_1):
17175 * frame.c (store_frame_param):
17176 * eval.c (specbind):
17177 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
17178
17179 * doc.c (Fsnarf_documentation): Simplify.
17180
171812007-10-14 Juanma Barranquero <lekktu@gmail.com>
17182
17183 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
17184 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
17185
171862007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
17187
17188 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
17189
171902007-10-14 Juanma Barranquero <lekktu@gmail.com>
17191
17192 * eval.c (do_autoload): Don't save autoloads.
17193
17194 * data.c (Ffset): Save autoload of the function being set.
17195
171962007-10-07 John Paul Wallington <jpw@pobox.com>
17197
17198 * xfns.c (x_create_tip_frame): Set the `display-type' frame
17199 parameter before setting up faces.
17200
172012007-10-13 Eli Zaretskii <eliz@gnu.org>
17202
17203 * ccl.c (Fregister_code_conversion_map):
17204 * keyboard.c (append_tool_bar_item): Reformat last change.
17205
17206 * lisp.h (eabs): Rename from `abs'. All callers changed.
17207
172082007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
17209
17210 * buffer.c (add_overlay_mod_hooklist):
17211 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
17212 * fontset.c (make_fontset):
17213 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
17214 (append_tool_bar_item):
17215 * macmenu.c (grow_menu_items):
17216 * w32menu.c (grow_menu_items):
17217 * xmenu.c (grow_menu_items): Use larger_vector.
17218
172192007-10-13 Eli Zaretskii <eliz@gnu.org>
17220
17221 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
17222 selected frame'' on MSDOS).
17223
172242007-10-12 Martin Rudalics <rudalics@gmx.at>
17225
17226 * frame.c (Qexplicit_name): New variable.
17227 (x_report_frame_params): Report it in parameter alist.
17228 (syms_of_frame): Intern and staticpro it.
17229
172302007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
17231
17232 * macfns.c (x_create_tip_frame): Set terminal for frame.
17233
172342007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
17235
17236 * frame.c (Qenvironment): Remove.
17237 (syms_of_frame) <Qenvironment>: Don't initialize.
17238 (Fdelete_frame): Don't treat the `environment' param specially.
17239 * frame.h (Qenvironment): Don't declare.
17240 * callproc.c (set_initial_environment): Don't set unused frame param.
17241
17242 * frame.c (Fframe_with_environment): Remove.
17243 (syms_of_frame) <Sframe_with_environment>: Don't declare.
17244
17245 * lisp.h (Fframe_with_environment): Don't declare.
17246
172472007-10-10 Juanma Barranquero <lekktu@gmail.com>
17248
17249 * indent.c (indent_tabs_mode, last_known_column)
17250 (last_known_column_modified): Make static.
17251 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
17252
172532007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
17254
17255 * puresize.h (BASE_PURESIZE): Increase to 1170000.
17256
172572007-10-09 Jason Rumney <jasonr@gnu.org>
17258
17259 * w32term.c (x_set_window_size): Disable code that attempts to tell
17260 Lisp code about a size change before it actually happens.
17261
172622007-10-09 Richard Stallman <rms@gnu.org>
17263
17264 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
17265 return HANDLED_RETURN.
17266
172672007-10-08 Martin Rudalics <rudalics@gmx.at>
17268
17269 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
17270 when there's an unread command event.
17271
17272 * frame.c (focus_follows_mouse): Move here from frame.el to allow
17273 window autoselection act appropriately when leaving selected frame.
17274 (syms_of_frame): Initialize focus_follows_mouse.
17275 * frame.h (focus_follows_mouse): Extern it.
17276 * macterm.c (XTread_socket): When focus_follows_mouse is nil
17277 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
17278 * msdos.c (dos_rawgetc): Likewise.
17279 * w32term.c (w32_read_socket): Likewise.
17280 * xterm.c (handle_one_xevent): Likewise.
17281 * xdisp.c (syms_of_xdisp): In doc-string of
17282 mouse-autoselect-window mention focus-follows-mouse.
17283
172842007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17285
17286 * macterm.c (mac_load_query_font): Fix missing return value.
17287 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
17288 Add BLOCK_INPUT.
17289
172902007-10-08 Richard Stallman <rms@gnu.org>
17291
17292 * xdisp.c (get_window_cursor_type): Implement documented behavior
17293 for cursor-in-non-selected-windows = t.
17294
172952007-10-08 Jason Rumney <jasonr@gnu.org>
17296
17297 * w32.c (w32_get_resource): Always close registry keys.
17298
172992007-10-08 Jason Rumney <jasonr@gnu.org>
17300
17301 * makefile.w32-in (LIBS): Add COMCTL32.
17302
17303 * w32fns.c (globals_of_w32fns): Init common controls.
17304
173052007-10-08 Richard Stallman <rms@gnu.org>
17306
17307 * image.c (our_memory_buffer): Rename from omfib_buffer.
17308
173092007-10-08 Richard Stallman <rms@gnu.org>
17310
17311 * buffer.c (Foverlays_at): Doc fix.
17312
173132007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
17314
17315 * fns.c (Fplist_put): Preserve uneven tail data.
17316
173172007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
17318
17319 * termhooks.h (enum event_kind): Remove trailing comma.
17320
17321 * frame.h (enum): Remove trailing comma.
17322
173232007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
17324
17325 * w32proc.c (delete_child): Don't terminate threads of zombies.
17326
173272007-10-08 Martin Rudalics <rudalics@gmx.at>
17328
17329 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
17330
17331 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
17332 last-repeatable-command.
17333 (init_kboard): Initialize Vlast_repeatable_command.
17334 (command_loop_1): Set it to real_this_command unless that was
17335 bound to an input event.
17336 (mark_kboards): Mark it.
17337
173382007-10-08 Richard Stallman <rms@gnu.org>
17339
17340 * eval.c (condition-case): Doc fix.
17341
173422007-10-08 Masatake YAMATO <jet@gyve.org>
17343
17344 * xfaces.c (tty_supports_face_attributes_p): Fix code
17345 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
17346 was copied and not edited.
17347
173482007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
17349
17350 Add new `input-decode-map' keymap and use it for terminal
17351 escape sequences.
17352 * keyboard.h (struct kboard): Add Vinput_decode_map.
17353 Remove Vlocal_key_translation_map.
17354 * keyboard.c (read_key_sequence): Add support for input-decode-map.
17355 (init_kboard): Init input-decode-map.
17356 Replace local-key-translation-map back with key-translation-map.
17357 (syms_of_keyboard): Declare input-decode-map.
17358 Remove local-key-translation-map. Update docstrings.
17359 (mark_kboards): Mark Vinput_decode_map.
17360 Don't mark Vlocal_key_translation_map.
17361 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
17362 Replace local-key-translation-map back with key-translation-map.
17363 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
17364 Bind in input-decode-map rather than function-key-map.
17365
17366 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
17367 This was made redundant by the previous introduction of XSETPVECTYPE.
17368
173692007-10-09 Richard Stallman <rms@gnu.org>
17370
17371 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
17372
173732007-09-29 Richard Stallman <rms@gnu.org>
17374
17375 * eval.c (internal_condition_case_2, internal_condition_case_1)
17376 (internal_condition_case): Reenable abort if x_catching_errors ()
17377 to see if that really happens and why.
17378
173792007-10-06 Andreas Schwab <schwab@suse.de>
17380
17381 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
17382
173832007-10-04 Juanma Barranquero <lekktu@gmail.com>
17384
17385 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
17386
173872007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
17388
17389 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
17390
173912007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
17392
17393 * window.h (struct window):
17394 * window.c (struct save_window_data, struct saved_window):
17395 * termhooks.h (struct terminal):
17396 * process.h (struct Lisp_Process):
17397 * frame.h (struct frame):
17398 * buffer.h (struct buffer):
17399 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
17400 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
17401 The size field of (pseudo)vectors is now unsigned.
17402 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
17403
17404 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
17405 Turn `count' into an integer.
17406
17407 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
17408 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
17409 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
17410 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
17411 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
17412
17413 * alloc.c (allocate_pseudovector): New fun.
17414 (ALLOCATE_PSEUDOVECTOR): New macro.
17415 (allocate_window, allocate_terminal, allocate_frame)
17416 (allocate_process): Use it.
17417 (mark_vectorlike): New function.
17418 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
17419 (mark_terminals): Use it.
17420 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
17421 (Fmake_byte_code): Use XSETPVECTYPE.
17422
17423 * frame.c (Fframe_parameters): Minor simplification.
17424
17425 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
17426
17427 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
17428
17429 * buffer.c (Fget_buffer_create, init_buffer_once):
17430 * lread.c (defsubr):
17431 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
17432
17433 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
17434 defined differently in the m/*.h files.
17435 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
17436 (XSETPVECTYPE): New macro.
17437 (XSETPSEUDOVECTOR): Use it.
17438
17439 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
17440 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
17441
17442 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
17443 * lread.c (defvar_per_buffer):
17444 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
17445
17446 * window.c (candidate_window_p): Only consider as visible frames that
17447 are on the same terminal.
17448
17449 * m/ibms390x.h (MARKBIT): Remove unused macro.
17450
174512007-10-01 Juanma Barranquero <lekktu@gmail.com>
17452
17453 * lread.c (Fload): Fix typo in docstring.
17454
174552007-10-01 Michaël Cadilhac <michael@cadilhac.name>
17456
17457 * floatfns.c (Fexpt): Manually check for overflows, so that a power
17458 of a non-zero value can't yield zero.
17459
174602007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
17461
17462 * term.c (term_clear_mouse_face, term_mouse_highlight)
17463 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
17464
17465 * print.c (safe_debug_print): Use XHASH.
17466
17467 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
17468 Lisp elements such as tags.
17469 (XHASH): New macro.
17470 (EQ): Use it.
17471 (SREF, SSET, STRING_COPYIN): Use SDATA.
17472 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
17473
17474 * alloc.c (mark_terminal): Remove left-over declaration.
17475 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
17476 (allocate_vectorlike): Remove type argument. Adjust callers.
17477 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
17478 Only handle the one remaining MEM_TYPE_VECTORLIKE.
17479
17480 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
17481 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
17482 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
17483 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
17484 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
17485 Use them.
17486
17487 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
17488 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
17489 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
17490
174912007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
17492
17493 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
17494 loaded by default.
17495
174962007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
17497
17498 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
17499 on this tty.
17500 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
17501
17502 * term.c (mouse_face_window): Rename from Qmouse_face_window.
17503 Update all users.
17504 (handle_one_term_event): Use Gpm_DrawPointer.
17505 (Fgpm_mouse_start): Rename from Fterm_open_connection.
17506 Signal errors instead of returning nil. Always return nil.
17507 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
17508 Make it a noop if gpm-mouse was not activated.
17509 (syms_of_term): Update names.
17510
175112007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
17512
17513 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
17514 (init_sys_modes): Check that gpm_tty is the current tty.
17515
17516 * alloc.c (allocate_terminal): Set the vector size to only count the
17517 lisp fields. Initialize those to nil.
17518 (mark_object): Don't treat terminals specially.
17519 (mark_terminal): Remove.
17520 (mark_terminals): Use mark_object instead.
17521
17522 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
17523 the GC to the beginning.
17524
17525 * indent.h:
17526 * indent.c: Use EMACS_INT for ints coming from Elisp data.
17527
17528 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
17529
175302007-09-25 Jason Rumney <jasonr@gnu.org>
17531
17532 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
17533
17534 * w32console.c (create_w32cons_output): Remove.
17535
17536 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
17537
17538 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
17539 (reset_sys_modes): Use reset_terminal_modes_hook.
17540
175412007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
17542
17543 * eval.c (do_autoload): Don't output any message.
17544
175452007-09-24 Juri Linkov <juri@jurta.org>
17546
17547 * emacs.c (standard_args): Change priority of "--no-splash"
17548 from 40 to 3. Add "--no-desktop" with the same priority.
17549
175502007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
17551
17552 * alloc.c (gc_sweep): Check cons cell mark bits word by word
17553 and optimize the case where they are all 1.
17554
175552007-09-23 Johannes Weiner <hannes@saeurebad.de>
17556
17557 * lisp.h (abs): Define if not defined.
17558 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
17559 Don't define `abs', since it's defined in lisp.h.
17560
175612007-09-22 Eli Zaretskii <eliz@gnu.org>
17562
17563 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
17564 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
17565 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
17566 (init_tty): Use DEV_TTY instead of "/dev/tty".
17567 [WINDOWSNT]: No need to protect from NAME arg being null.
17568
175692007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
17570
17571 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
17572 up the tty state.
17573
175742007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17575
17576 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
17577 (gpm_tty): Change its type.
17578 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
17579 (gpm_tty): Change its type and initialize it.
17580 (Fterm_open_connection): Check the frame is indeed a tty.
17581 Use the new gpm_tty.
17582 (Fterm_close_connection): Use the new gpm_tty.
17583 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
17584 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
17585
175862007-09-21 Juanma Barranquero <lekktu@gmail.com>
17587
17588 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
17589 underline_color, to draw strike-through.
17590
175912007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17592
17593 * lisp.h (allocate_terminal): Declare.
17594
17595 * window.c (candidate_window_p): Consider frames that are being placed
17596 by the user as somewhere between visible and iconified.
17597 (window_loop): Prefer windows on the current frame.
17598 (Fselect_window): Move the use of select-frame to the beginning so we
17599 can just delegate all the work (it'll call us back anyway).
17600
17601 * frame.c (Qdisplay_environment_variable):
17602 * frame.h (Qdisplay_environment_variable): Delete.
17603
17604 * .gdbinit (xbacktrace): Print the arg's address rather than the value
17605 of the first arg, since that value may be a union.
17606
17607 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
17608 parameter rather than Qdisplay_environment_variable. If all else
17609 fails, look for DISPLAY in initial-environment.
17610
176112007-09-21 Glenn Morris <rgm@gnu.org>
17612
17613 * Makefile.in (emacstool): Remove target.
17614 (lisp, shortlisp): Remove termdev.elc.
17615
176162007-09-21 Markus Triska <markus.triska@gmx.at>
17617
17618 * xterm.c (x_delete_display): Compile session management conditionally.
17619
176202007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
17621
17622 * callproc.c (getenv_internal_1): New function.
17623 (getenv_internal): Use it.
17624 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
17625
17626 * terminal.c (get_terminal): Don't accept ints to represent terminals.
17627 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
17628 (Fset_terminal_parameter): Work with dead terminals as well.
17629 (Fmodify_terminal_parameters): Remove.
17630
17631 * terminal.c (get_terminal): Handle terminals.
17632 Make sure the terminal returned is live.
17633 (create_terminal): Use allocate_terminal.
17634 (mark_terminals): Move to alloc.c.
17635 (delete_terminal): Use terminal->name as liveness status.
17636 NULL out fields after freeing their contents.
17637 Don't deallocate the object.
17638 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
17639 rather than an int.
17640 (Fterminal_live_p): Accept non-integer arguments.
17641 (Fterminal_list): Return terminal objects rather than an ints.
17642
17643 * alloc.c (enum mem_type): New member for `terminal' objects.
17644 (allocate_terminal): New function.
17645 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
17646 Handle terminals.
17647 (mark_terminal): New fun.
17648 (mark_terminals): Move from terminal.c.
17649
17650 * term.c (get_tty_terminal): Don't treat output_initial specially.
17651 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
17652 (delete_tty): Use terminal->name as liveness status.
17653
17654 * termhooks.h (struct terminal): Make it into a pseudovector.
17655 Remove `deleted' replaced by checking `name's nullness.
17656
17657 * print.c (print_object): Handle terminals.
17658
17659 * lisp.h (enum pvec_type): New `terminal' pseudovector.
17660 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
17661
17662 * frame.c (make_terminal_frame):
17663 * keyboard.c (tty_read_avail_input):
17664 * w32term.c (x_delete_terminal):
17665 * xfns.c (Fx_create_frame, x_create_tip_frame):
17666 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
17667
176682007-09-20 Glenn Morris <rgm@gnu.org>
17669
17670 * process.c (Fmake_network_process): Doc fix.
17671
176722007-09-19 Jason Rumney <jasonr@gnu.org>
17673
17674 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
17675
176762007-09-19 Michaël Cadilhac <michael@cadilhac.name>
17677
17678 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
17679 Fix a C warning regarding variable constness.
17680
17681 * xterm.c (handle_one_xevent): Fix a C warning.
17682
176832007-09-18 Jason Rumney <jasonr@gnu.org>
17684
17685 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
17686
176872007-09-17 Jan Djärv <jan.h.d@swipnet.se>
17688
17689 * gtkutil.c (gdpy_def): New variable.
17690 (xg_initialize): Initialize gdpy_def.
17691 (xg_display_close): If no other display exists, set gdpy_def to a
17692 new connection.
17693
176942007-09-16 Jan Djärv <jan.h.d@swipnet.se>
17695
17696 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
17697 when we have no file name for the icon.
17698 (xg_tool_bar_expose_callback): Remove.
17699 (xg_create_tool_bar): Don't connect expose signal to
17700 xg_tool_bar_expose_callback.
17701 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
17702
177032007-09-16 Andreas Schwab <schwab@suse.de>
17704
17705 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
17706 values instead of zapping them.
17707
177082007-09-14 Glenn Morris <rgm@gnu.org>
17709
17710 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
17711 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
17712 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
17713 scope and rename to omfib_buffer for clarity.
17714 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
17715
177162007-09-14 Kenichi Handa <handa@m17n.org>
17717
17718 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
17719
177202007-09-13 Jason Rumney <jasonr@gnu.org>
17721
17722 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
17723
17724 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
17725
17726 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
17727 (mac_term_init): Call here instead, passing rif.
17728
177292007-09-13 Glenn Morris <rgm@gnu.org>
17730
17731 * s/hpux.h: No longer define `static' as nothing.
17732
177332007-09-13 Johan Bockgård <bojohan@gnu.org>
17734
17735 * callint.c (Fcall_interactively): Remove unused var `fun'.
17736
177372007-09-12 Romain Francoise <romain@orebokech.com>
17738
17739 * window.c (prefer_window_split_horizontally, display_buffer):
17740 Revert 2007-09-08 change.
17741
177422007-09-12 Glenn Morris <rgm@gnu.org>
17743
17744 * alloca.c: Remove file.
17745 * Makefile.in (alloca): Do not undef.
17746 (allocaobj, alloca.o): Remove.
17747 (otherobj): Remove allocaobj.
17748 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
17749 * regex.c (C_ALLOCA): Remove all references and code that was only
17750 used when this was defined.
17751 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
17752 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
17753 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
17754
17755 * Makefile.in (SOURCES, unlock, relock): Delete.
17756
17757 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
17758 (menu_grab_callback): All uses changed.
17759
17760 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
17761 (x_reply_selection_request): All uses changed.
17762
177632007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
17764
17765 * lread.c (load_warn_old_style_backquotes): Change message to look
17766 better when it appears in the middle of byte-compiler messages.
17767
177682007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
17769
17770 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
17771
17772 * xterm.c (x_create_terminal): Add comment.
17773
17774 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
17775
177762007-09-10 Richard Stallman <rms@gnu.org>
17777
17778 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
17779
177802007-09-10 Michaël Cadilhac <michael@cadilhac.name>
17781
17782 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
17783 (DEFUN): Document `intspec', use it instead of `prompt'.
17784
17785 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
17786
17787 * data.c (Finteractive_form): If the interactive specification starts
17788 with a `(', use it as a Lisp form.
17789
17790 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
17791 name and file modes.
17792
17793 * callint.c (Fcall_interactively): Comment fixes.
17794
177952007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
17796
17797 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
17798 and compiled functions.
17799
178002007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
17801
17802 * window.c (prefer_window_split_horizontally): New variable.
17803 (display_buffer): Consider splitting window horizontally depending
17804 on prefer_window_split_horizontally.
17805
178062007-09-08 Eli Zaretskii <eliz@gnu.org>
17807
17808 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
17809
178102007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17811
17812 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
17813
17814 * frame.c (x_set_frame_parameters): Check number is positive before
17815 using XFASTINT.
17816
17817 * window.c (freeze_window_start): Don't presume selected_window holds
17818 a window object.
17819 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
17820
178212007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
17822
17823 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
17824
178252007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17826
17827 * window.c (Vsplit_window_preferred_function): New var.
17828 (Fdisplay_buffer): Use it.
17829 (syms_of_window): Export, and initialize it.
17830
178312007-09-06 Pixel <pixel@mandriva.com> (tiny change)
17832
17833 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
17834
178352007-09-06 Glenn Morris <rgm@gnu.org>
17836
17837 * gtkutil.c (menu_grab_callback) <cnt>:
17838 * xselect.c (x_reply_selection_request) <cnt>: Move static
17839 variable to file scope.
17840
178412007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
17842
17843 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
17844 consistent values of selected_frame and selected_window.
17845
178462007-09-04 Jason Rumney <jasonr@gnu.org>
17847
17848 * w32console.c (initialize_w32_display): Zero unused hooks.
17849
178502007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17851
17852 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
17853 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
17854
178552007-09-04 Jason Rumney <jasonr@gnu.org>
17856
17857 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
17858 in w32console.c. Set up input. Remove XXX comments that have been
17859 confirmed as correct.
17860
17861 * s/ms-w32.h (MULTI_KBOARD): Define.
17862
17863 * w32console.c (one_and_only_w32cons): Remove.
17864 (initialize_w32_display): Take terminal argument.
17865
17866 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
17867 initialize_w32_display.
17868 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
17869
17870 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
17871
17872 * keyboard.c (discard_mouse_events): Discard it.
17873 (make_lispy_event): Translate it to a lisp event.
17874 (lispy_wheel_names): Add wheel-left and right events.
17875 (syms_of_keyboard): Enlarge wheel_syms.
17876
17877 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
17878 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
17879
17880 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
17881
17882 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
17883 from WM_MOUSEHWHEEL.
17884 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
17885
17886 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
17887 terminal.
17888
17889 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
17890 keyboard for the terminal.
17891
178922007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17893
17894 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
17895 (Vresume_tty_hook): Rename from Vresume_tty_functions.
17896 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
17897 and resume-tty-function to resume-tty-hook.
17898 (Fsuspend_tty, Fresume_tty): Use new names.
17899
179002007-09-02 Jan Djärv <jan.h.d@swipnet.se>
17901
17902 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
17903 if it starts with "n:".
17904
179052007-08-31 Jan Djärv <jan.h.d@swipnet.se>
17906
17907 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
17908
179092007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
17910
17911 * frame.h:
17912 * frame.c (Qterm_environment_variable): Remove.
17913 (syms_of_frame): Don't init and staticpro it.
17914
17915 * callproc.c (getenv_internal): Remove special case for $TERM.
17916
17917 * callproc.c (Vinitial_environment): New variable.
17918 (set_initial_environment): Initialize it.
17919 (syms_of_callproc): Declare it.
17920 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
17921 TERM under which a process runs is never related to the TERM in which
17922 Emacs is running.
17923
179242007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17925
17926 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
17927 * s/darwin.h: ... do it here.
17928
179292007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
17930
17931 * lisp.h (set_initial_environment): Rename from set_global_environment.
17932
17933 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
17934 removed by mistake on the multi-tty branch.
17935
17936 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
17937 (Fmodify_frame_parameters): Return a value.
17938
17939 * image.c (png_load): Comment-out var only used in commented-out code.
17940
17941 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
17942 before passing it to mark_object.
17943
17944 * xfaces.c (internal_resolve_face_name): Return a value.
17945 (internal_resolve_face_name, resolve_face_name_error): Comment out.
17946
17947 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
17948 (x_icon): Comment-out var only used in commented-out code.
17949
179502007-08-29 Romain Francoise <romain@orebokech.com>
17951
17952 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
17953 QUIT hasn't been provided.
17954
179552007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17956
17957 * callproc.c (child_setup, getenv_internal): Use the
17958 display-environment-variable and term-environment-variable frame params.
17959 (set_initial_environment): Initialise Vprocess_environment.
17960
17961 * config.in: Disable multi-keyboard support on a mac.
17962
17963 * frame.c (Qterm_environment_variable)
17964 (Qdisplay_environment_variable): New variables.
17965 (syms_of_frame): Intern and staticpro them.
17966 (Fmake_terminal_frame): Disable output method test.
17967
17968 * frame.h: Declare them here.
17969
17970 * macfns.c (x_set_mouse_color): Get rif from the frame.
17971 (x_set_tool_bar_lines): Don't use updating_frame.
17972 (mac_window): Add 2 new parameters for consistency with other systems.
17973 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
17974 frame parameters following what is done in X11 and w32. Don't use
17975 FRAME_MAC_DISPLAY_INFO.
17976 (Fx_open_connection, start_hourglass): Remove window-system check.
17977 (x_create_tip_frame): Get the keyboard from the terminal.
17978
17979 * macmenu.c: Reorder includes.
17980 (Fx_popup_menu): Use terminal specific mouse_position_hook.
17981
17982 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
17983 terminal parameter.
17984 (x_clear_frame): Add a frame parameter.
17985 (note_mouse_movement): Get rif from the frame.
17986 (mac_term_init): Initialize the terminal.
17987 (mac_initialize): Make static and move terminal initialization ...
17988 (mac_create_terminal): ... to this new function.
17989
17990 * macterm.h (struct mac_display_info): Add terminal.
17991 (mac_initialize): Delete declaration.
17992
17993 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
17994
17995 * sysdep.c: Comment out text after #endif.
17996
17997 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
17998 is defined. Better initialize ttys in windows. Use terminal
17999 specific mouse_position_hook.
18000
18001 * termhooks.h (union display_info): Add mac_display_info.
18002
18003 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
18004 Set the default minibuffer frame, window_system and the rest of the
18005 frame parameters following what is done in X11.
18006
18007 * w32term.c (w32_initialize): Make static.
18008
18009 * xselect.c (x_handle_selection_clear): Only access
18010 terminal->kboard when MULTI_KBOARD is defined.
18011
18012 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
18013 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
18014
180152007-08-29 Jason Rumney <jasonr@gnu.org>
18016
18017 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
18018 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
18019
18020 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
18021 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
18022
18023 * keyboard.c (restore_kboard_configuration): Only define when
18024 MULTI_KBOARD defined.
18025
18026 * makefile.w32-in: Update dependancies from Makefile.in.
18027 (OBJ1): Add terminal.$(O)
18028
18029 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
18030 Don't define function body.
18031 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
18032
18033 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
18034
18035 * w32.c (request_sigio, unrequest_sigio): Remove.
18036
18037 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
18038 (w32con_clear_frame, w32con_clear_end_of_line)
18039 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
18040 (w32con_delete_glyphs, w32con_set_terminal_window)
18041 (scroll_line, w32_sys_ring_bell): Add frame arg.
18042 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
18043 Add terminal arg.
18044 (PICK_FRAME): Remove.
18045 (w32con_write_glyphs): Use frame specific terminal coding.
18046 (one_and_only_w32cons): New global variable.
18047 (initialize_w32_display): Use it for storing hooks.
18048 (create_w32cons_output): New function.
18049
18050 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
18051 arg a frame.
18052
18053 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
18054 Set window_system.
18055 (x_set_tool_bar_lines): Don't use updating_frame.
18056 (Fx_create_frame): Set terminal and ref count.
18057 (Fx_open_connection): Remove window-system check.
18058
18059 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
18060
18061 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
18062 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
18063 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
18064 Add frame arg.
18065 (x_delete_terminal, w32_create_terminal): New functions.
18066 (w32_term_init): Create a terminal.
18067 (w32_initialize): Move terminal specific initialization to
18068 w32_create_terminal.
18069
18070 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
18071 (w32_clear_rect, w32_clear_area): Use background from frame.
18072 (w32_display_info): Add terminal.
18073 (w32_sys_ring_bell, x_delete_display): Declare here.
18074
18075 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
18076
18077 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
18078
180792007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
18080
18081 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
18082 Fix get_named_tty calls for the controlling tty.
18083
180842007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
18085
18086 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
18087
180882007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
18089
18090 * term.c (tty_insert_glyphs): Add missing first parameter.
18091
180922007-08-29 Károly Lőrentey <karoly@lorentey.hu>
18093
18094 * buffer.c (Fbuffer_list, Fbury_buffer):
18095 Take frame->buried_buffer_list into account.
18096
18097 * cm.c (current_tty): New variable, for cmputc().
18098 (cmputc): Use it.
18099 (cmcheckmagic): Add tty parameter, look up terminal streams there.
18100 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
18101 (cmgoto): Add tty parameter. Pass it on to calccost().
18102 Use emacs_tputs() instead of tputs().
18103
18104 * cm.h (emacs_tputs): New macro to set current_tty, and then call
18105 tputs().
18106 (current_tty): New variable, for cmputc().
18107 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
18108
18109 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
18110 (internal_condition_case, internal_condition_case_1)
18111 (internal_condition_case_2): Don't abort when x_catching_errors.
18112
18113 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
18114 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
18115 prevent crashes caused by bogus longjmps in read_char.
18116
18117 * keymap.h (Fset_keymap_parent): Add EXFUN.
18118
18119 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
18120 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18121 Remove redundant definition.
18122
18123 * macfns.c (x_set_mouse_color, x_make_gc):
18124 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18125
18126 * w32term.c (x_free_frame_resources):
18127 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18128 (w32_initialize): Use the accessor macros for terminal characteristics.
18129
18130 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
18131 Use the accessor macros for terminal characteristics.
18132 * msdos.c (internal_terminal_init): Use the accessor macros for
18133 terminal characteristics.
18134 (ScreenVisualBell, internal_terminal_init):
18135 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18136
18137 * termopts.h (no_redraw_on_reenter): Declare.
18138
18139 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
18140 (mark_terminals, mark_ttys): Declare.
18141 (Fgarbage_collect): Call them.
18142 (mark_object): Mark buried_buffer_list.
18143
18144 * prefix-args.c: Include stdlib.h for exit.
18145
18146 * syssignal.h: Add comment.
18147
18148 * indent.c: Include stdio.h.
18149
18150 * window.h (Vinitial_window_system): Declare.
18151 (Vwindow_system): Delete declaration.
18152
18153 * fontset.c (Finternal_char_font): Use FRAME_RIF.
18154
18155 * image.c (lookup_image): Don't initialize `c' until the xasserts
18156 have been run.
18157
18158 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
18159 FRAME_FOREGROUND_PIXEL.
18160
18161 * print.c (print_preprocess): Don't lose print_depth levels while
18162 iterating.
18163
18164 * widget.c (update_from_various_frame_slots):
18165 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18166
18167 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
18168 frames.
18169 (window_internal_height): Remove bogus make_number call.
18170 (init_window_once): Call make_terminal_frame with two zero parameters.
18171
18172 * fileio.c (Fread_file_name): Update comment.
18173
18174 * callint.c (Fcall_interactively):
18175 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
18176 Make sure it is correctly unwound.
18177
18178 * xsmfns.c (x_session_close): New function.
18179
18180 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
18181 Delete declarations.
18182
18183 * xterm.h: Remove declaration for x_fully_uncatch_errors.
18184 (x_output): Remove background_pixel and foreground_pixel fields.
18185 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
18186 (x_delete_device, x_session_close): Declare.
18187
18188 * lread.c: Include setjmp.h. Update declaration of `read_char'.
18189 (read_filtered_event): Call `read_char' with a local
18190 `wrong_kboard_jmpbuf'.
18191
18192 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
18193 Don't call single_kboard_state. Use FRAME_RIF.
18194
18195 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
18196 systems.
18197
18198 * lisp.h (set_process_environment): Rename to `set_global_environment'.
18199 (Fframe_with_environment, Fset_input_meta_mode)
18200 (Fset_quit_char): EXFUN.
18201 (x_create_device, tty_output, terminal, tty_display_info): Declare.
18202 (init_sys_modes, reset_sys_modes): Update prototypes.
18203 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
18204
18205 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
18206 Vlocal_key_translation_map, and Vkeyboard_translate_table.
18207 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
18208 Delete declarations.
18209 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
18210 (temporarily_switch_to_single_kboard, tty_read_avail_input):
18211 New declarations.
18212
18213 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
18214 already does that during init_display(). Call syms_of_keymap
18215 before syms_of_keyboard. Call `syms_of_terminal'.
18216 Call set_initial_environment, not set_process_environment.
18217 (shut_down_emacs): Call reset_all_sys_modes() instead of
18218 reset_sys_modes().
18219
18220 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
18221 (internal_resolve_face_name, resolve_face_name_error): New functions.
18222 (resolve_face_name): Protect against loops and errors thrown by Fget.
18223 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
18224 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
18225
18226 * scroll.c: Replace CURTTY() with local variables throughout the
18227 file (where applicable).
18228 (calculate_scrolling, calculate_direct_scrolling)
18229 (scrolling_1, scroll_cost): Use the accessor macros for terminal
18230 characteristics.
18231
18232 * keymap.c (Vfunction_key_map): Remove.
18233 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
18234 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
18235 (Vkey_translation_map): Remove.
18236 (syms_of_keymap): Remove DEFVAR for key-translation-map.
18237 (Fdescribe_buffer_bindings)
18238 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
18239 Update for terminal-local key-translation-map.
18240
18241 * Makefile.in (callproc.o): Update dependencies.
18242 (lisp, shortlisp): Add termdev.elc.
18243 (obj): Add terminal.o.
18244 (terminal.o): Add dependencies.
18245 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
18246 (data.o, fns.o): Add termhooks.h dependency.
18247 (SOME_MACHINE_LISP): Add dnd.elc.
18248 (minibuf.o): Fix typo.
18249 Update dependencies.
18250
18251 * data.c (do_symval_forwarding, store_symval_forwarding)
18252 (find_symbol_value): Use the selected frame's keyboard, not
18253 current_kboard.
18254
18255 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
18256 Vwindow_system.
18257
18258 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
18259 Fmenu_bar_open.
18260 (syms_of_xmenu): Update defsubr.
18261 (mouse_position_for_popup, Fx_popup_menu)
18262 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
18263 (set_frame_menubar, free_frame_menubar)
b97439ce 18264 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
18265 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
18266 an X frame.
18267
18268 * xselect.c (x_own_selection): Abort if not an X frame.
18269 (some_frame_on_display): Check if it is an X frame.
18270 (x_handle_selection_clear): Deal with MULTI_KBOARD.
18271
18272 * coding.c: Include frame.h and termhooks.h.
18273 (terminal_coding, keyboard_coding): Delete.
18274 (Fset_terminal_coding_system_internal)
18275 (Fset_keyboard_coding_system_internal)
18276 (Fkeyboard_coding_system)
18277 (Fterminal_coding_system): Add a terminal parameter.
18278 Get terminal_coding from the terminal.
18279 (init_coding_once): Don't call setup_coding_system here.
18280
18281 * dispextern.h (set_scroll_region, turn_off_insert)
18282 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
18283 (tty_clear_end_of_line, tty_setup_colors)
18284 (delete_tty, updating_frame)
18285 (produce_special_glyphs, produce_glyphs, write_glyphs)
18286 (insert_glyphs): Remove.
18287 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
18288 (tty_turn_off_highlight, get_tty_size): Add declaration.
18289 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
18290
18291 * frame.h (enum output_method): Add output_initial.
18292 (struct x_output): Delete.
18293 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18294 Access foreground_pixel and background_pixel directly from the frame.
18295 (tty_display): Delete.
18296 (struct frame): Add buried_buffer_list, foreground_pixel,
18297 background_pixel and terminal. Delete kboard.
18298 (union output_data): Add tty.
18299 (FRAME_KBOARD): Get the kboard from the terminal.
18300 (FRAME_INITIAL_P): New macro.
18301 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
18302 (Qterm_environment_variable, Qdisplay_environment_variable)
18303 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
18304 New declarations.
18305
18306 * termchar.h (tty_output, tty_display_info): New structures.
18307 (tty_list): Declare.
18308 (FRAME_TTY, CURTTY): New macros.
18309 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
18310 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
18311 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
18312 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
18313
18314 * callproc.c: Include frame.h and termhooks.h, for terminal
18315 parameters.
18316 (add_env): New function.
18317 (child_setup): Use it.
18318 (child_setup, getenv_internal): Handle the new Vprocess_environment.
18319 (getenv_internal): Fix get_terminal_param call.
18320 (Fgetenv_internal, egetenv): Update doc.
18321 (syms_of_callproc): Initialize Vprocess_environment to nil.
18322 Register and initialize them. Remove obsolete defvars. Update doc
18323 strings.
18324 (child_setup): Handle Vlocal_environment_variables.
18325 (getenv_internal): Add terminal parameter.
18326 Handle Vlocal_environment_variables.
18327 (Fgetenv_internal): Add terminal parameter.
18328 (child_setup, getenv_internal, Fgetenv_internal): Store the local
18329 environment in a frame (not terminal) parameter. Update doc strings.
18330 (set_initial_environment): Rename from set_global_environment.
18331 Store Emacs environment in initial frame parameter.
18332
18333 * xdisp.c (redisplay_internal): Update references to
18334 `previous_terminal_frame'.
18335 (display_mode_line, Fformat_mode_line): Replace calls to
18336 `push_frame_kboard' with `push_kboard'.
18337 (get_glyph_string_clip_rects): Add extra parentheses and
18338 braces to prevent compiler warnings.
18339 (calc_pixel_width_or_height): Add xassert to check that the
18340 frame is alive. Don't call `lookup_image' on a termcap frame.
18341 (message2_nolog, message3_nolog, redisplay_internal)
18342 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
18343 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
18344 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
18345 (Fx_display_pixel_width, Fx_display_pixel_height)
18346 (Fx_display_planes, Fx_display_color_cells)
18347 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
18348 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
18349 (Fx_display_backing_store, Fx_display_visual_class)
18350 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
18351 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
18352
18353 * xfns.c (x_set_foreground_color x_set_background_color)
18354 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
18355 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18356 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
18357 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
18358 terminal that is being deleted.
18359 (Fx_create_frame): Use `store_frame_param' to set `window-system'
18360 frame parameter, and make sure it overrides any user-supplied setting.
18361 (Fx_close_connection, Fx_synchronize): Unify argument names with
18362 the rest of the DEFUNs.
18363
18364 * dispnew.c (Fsend_string_to_terminal): Update call to
18365 `get_tty_terminal'.
18366 (Fredraw_frame, Fsend_string_to_terminal)
18367 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
18368 FRAME_TERMCAP_P and FRAME_TTY.
18369 (window_change_signal): Don't believe width/height values that are
18370 impossibly small.
18371 (Vinitial_window_system): Rename from Vwindow_system.
18372 (termscript, Wcm, rif): Delete.
18373
18374 * termhooks.h (struct terminal): New struct containing the
18375 previously global text display hooks and new members NAME,
18376 DELETED and PARAM_ALIST.
18377 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
18378 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
18379 (FRAME_RIF): New macros.
18380 (get_terminal_param, get_device): New declarations.
18381 (termscript): Delete declaration.
18382
18383 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
18384 (XTflash, x_free_frame_resources, x_scroll_bar_create)
18385 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
18386 FRAME_FOREGROUND_PIXEL.
18387 (x_fully_uncatch_errors): Disable definition.
18388 (x_scroll_bar_expose): Fix reference to foreground pixel.
18389 (XTread_socket): Disable loop on all X displays.
18390 (x_delete_terminal): Don't set terminal->deleted and let
18391 delete_terminal delete the frames on the terminal.
18392 (x_delete_display): Doc update to reflect changes in
18393 delete_terminal.
18394 (x_display_info) <terminal>: Move member earlier in the struct.
18395 (deleting_tty): Remove old variable.
18396 (Fsuspend_tty): Call clear_tty_hooks.
18397 (Fresume_tty, init_tty): Call set_tty_hooks.
18398 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
18399 errors on X frames.
18400 (x_catch_errors_unwind): Abort if x_error_message is NULL.
18401 (handle_one_xevent): Initialize `f' to NULL.
18402 (x_delete_terminal, x_create_terminal): New functions.
18403 (XTset_terminal_modes, XTreset_terminal_modes)
18404 (XTread_socket, x_connection_closed, x_term_init)
18405 (x_term_init, x_delete_display): Add terminal parameter.
18406 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
18407 X connections.
18408
18409 * frame.c: Include termchar.h.
18410 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
18411 (Qwindow_system, Qenvironment, Qterm_environment_variable)
18412 (Qdisplay_environment_variable): New vars.
18413 (Fframep): Deal with output_initial.
18414 (Fframe-live-p): Doc fix.
18415 (Fwindow-system): New function.
18416 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
18417 (make_terminal_frame): Don't create frames on a terminal that is
18418 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18419 (store_frame_param): Check for found_for_frame before calling XFRAME.
18420 (Fmake_terminal_frame): Handle NULL tty names correctly.
18421 (syms_of_frame): Enhance doc string of `default-frame-alist'.
18422 (Fdelete_frame): Remove unused variable `count'. Don't allow other
18423 frames to refer to a deleted frame in their 'environment parameter.
18424 (Fframe_with_environment): New function.
18425 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
18426 (get_future_frame_param): New function.
18427 (Fmake_terminal_frame): Use it.
18428 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
18429
18430 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
18431 * sysdep.c (reset_sys_modes): Update for renames.
18432
18433 * keyboard.c (tty_read_avail_input): New function.
18434 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
18435 (syms_of_keyboard): Defsubr them.
18436 (Fset_input_meta_mode, Fset_quit_char): New functions.
18437 (Fset_input_mode): Split to above functions.
18438 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
18439 parameter. Use it in call to `read_char'.
18440 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
18441 Set wrong_kboard_jmpbuf correctly in recursive calls.
18442 Use current_kboard to access Vkeyboard_translate_table.
18443 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
18444 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
18445 Update longjmp invocations. Remember the original current_kboard,
18446 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
18447 changes it. Comment out unnecessary calls to
18448 `record_single_kboard_state' and `any_kboard_state'.
18449 Update recursive calls.
18450 (wrong_kboard_jmpbuf): Remove global variable.
18451 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
18452 Handle deleted interrupted_kboards correctly; that is a legal
18453 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
18454 and read_char calls. Abort if interrupted_kboard died in read_char.
18455 (any_kboard_state, single_kboard_state)
18456 (push_frame_kboard): Remove function.
18457 (pop_kboard): Switch out of single_kboard mode if the kboard has
18458 been deleted. Remove unused variable. Help debugging by not
18459 changing current_kboard unnecessarily. Set current_kboard to the
18460 kboard of the selected frame when the stored kboard object has
18461 been deleted before pop_kboard.
18462 (temporarily_switch_to_single_kboard): Change first parameter to a
18463 frame pointer. Throw an error when caller wants to change kboards
18464 while in single_kboard mode. Don't push_kboard if we weren't in
18465 single kboard state. Don't pop_kboard if we popped into any
18466 kboard state.
18467 (restore_kboard_configuration): Abort if pop_kboard changed the
18468 kboard in single_kboard mode. Call pop_kboard only after setting
18469 up single_kboard mode.
18470 (Frecursive_edit): Switch to single_kboard mode only in nested
18471 command loops.
18472 (cmd_error, command_loop, command_loop_1, timer_check):
18473 Comment out unnecessary call to `any_kboard_state' and
18474 `record_single_kboard_state'.
18475 (delete_kboard): Exit single_kboard mode if we have just deleted
18476 that kboard. Use FRAME_KBOARD.
18477 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
18478 `fatal_error_signal'.
18479 (record_single_kboard_state): Don't push_kboard if we weren't in
18480 single kboard state. Don't pop_kboard if we popped into any
18481 kboard state.
18482 (push_frame_kboard): Rename to push_kboard.
18483 (kbd_buffer_get_event): Use FRAME_TERMINAL.
18484 (read_avail_input): Read input from all terminals.
18485 (mark_kboards): Also mark Vkeyboard_translate_table.
18486 (kbd_buffer_store_event_hold): Simplify condition.
18487 (read_key_sequence): Reinitialize fkey and keytran at each replay.
18488 (Vkeyboard_translate_table): Move to struct kboard.
18489 (init_kboard): Initialize Vkeyboard_translate_table.
18490 (syms_of_keyboard): Use DEFVAR_KBOARD to define
18491 Vkeyboard_translate_table. Update doc strings. Update docs of
18492 local-function-key-map and function-key-map.
18493
18494 * terminal.c: New file.
18495
18496 * term.c: Include errno.h.
18497 (Vring_bell_function, device_list, initial_device)
18498 (next_device_id, ring_bell, update_begin, update_end)
18499 (set_terminal_window, cursor_to, raw_cursor_to)
18500 (clear_to_end, clear_frame, clear_end_of_line)
18501 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
18502 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
18503 (syms_of_term): Move their initialization to terminal.c.
18504 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
18505 (Ftty_display_color_cells)
18506 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
18507 (clear_tty_hooks, set_tty_hooks)
18508 (init_tty, maybe_fatal): New functions.
18509 (Ftty_type): Return nil if terminal is not on a tty instead of
18510 throwing an error. Doc update.
18511 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
18512 Doc update. Initialize new subrs and variables.
18513 (delete_tty): Use terminal->deleted.
18514 (tty_set_terminal_modes): Rename from set_terminal_modes.
18515 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
18516 (set_scroll_region): Rename to `tty_set_scroll_region'.
18517 (turn_on_insert): Rename to `tty_turn_on_insert'.
18518 (turn_off_insert): Rename to `tty_turn_off_insert'.
18519 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
18520 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
18521 (toggle_highligh): Rename to `tty_toggle_highlight'.
18522 (background_highlight): Rename to `tty_background_highlight'.
18523 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
18524 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
18525 (tty_set_scroll_region, tty_background_highlight)
18526 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
18527 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
18528 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
18529 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
18530 Add static modifier.
18531 (tty_reset_terminal_modes, tty_set_terminal_window)
18532 (tty_set_scroll_region, tty_background_highlight)
18533 (tty_highlight_if_desired, tty_cursor_to)
18534 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
18535 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
18536 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
18537 renames.
18538
185392007-08-28 Jan Djärv <jan.h.d@swipnet.se>
18540
18541 * keyboard.c: Qrtl is new.
18542 (parse_tool_bar_item): Handle :rtl keyword.
18543 (syms_of_keyboard): Intern :rtl keyword.
18544
18545 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
18546
18547 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
18548 so no Lisp code is executed.
18549 (file_for_image, find_rtl_image): New functions.
18550 (xg_get_image_for_pixmap): Use file_for_image.
18551 (update_frame_tool_bar): If direction is RTL, use RTL image if
18552 defined. Use Gtk stock images if defined.
18553
185542007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18555
18556 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
18557 for nonexistent or zero-width glyph in composition glyph.
18558
185592007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
18560
18561 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
18562
18563 * xdisp.c (Finvisible_p): New function.
18564 (syms_of_xdisp): defsubr it.
18565
185662007-08-24 Juanma Barranquero <lekktu@gmail.com>
18567
18568 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
18569 Doc fixes.
18570
185712007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18572
18573 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
18574
185752007-08-24 Martin Rudalics <rudalics@gmx.at>
18576
18577 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
18578 whether decoding has modified buffer contents.
18579
185802007-08-24 Jason Rumney <jasonr@gnu.org>
18581
18582 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
18583 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
18584 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
18585 (init_svg_functions) [HAVE_NTGUI]: New function.
18586 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
18587 (svg_load_image): Use them.
18588 (svg_load_image) [HAVE_NTGUI]: Implement background.
18589
185902007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18591
18592 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
18593 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
18594 (LIBX): Remove @RSVG_LIBS@.
18595 (LIBES): Add $(RSVG_LIBS).
18596
18597 * image.c (svg_load_image): Blend with specified background if exists.
18598 Use IMAGE_BACKGROUND. Add Mac OS Support.
18599
18600 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
18601 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
18602 Remove macros.
18603 [MAC_OSX] (socket_callback): Do nothing.
18604 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
18605 ReceiveNextEvent.
18606 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
18607 socket_callback.
18608 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
18609
186102007-08-22 Glenn Morris <rgm@gnu.org>
18611
18612 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
18613
186142007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
18615
18616 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
18617
18618 * image.c: Add support for SVG images. Some additional comments
18619 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
18620 (svg_image_p): New function to test for SVG image.
18621 (svg_load): New function to load SVG image.
18622 (svg_load_image): New function, helper for svg_load.
18623 (Qsvg): New Lisp_object.
18624 (svg_keyword_index): New enum.
18625 (svg_format): New static `image_keyword' struct.
18626 (svg_type): New static `image_type' struct.
18627 (librsvg/rsvg.h): Include it.
18628
186292007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
18630
18631 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
18632
186332007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
18634
18635 * lread.c (Qold_style_backquotes): New var.
18636 (syms_of_lread): Init and staticpro it.
18637 (load_warn_old_style_backquotes): New fun.
18638 (Fload): Use them to warn about old style backquotes.
18639 (end_of_file_error, Fload): Remove unused vars.
18640
18641 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
18642
18643 * lread.c (Vold_style_backquotes): New var.
18644 (syms_of_lread): Init and export it to Elisp.
18645 (read1): Set it when we find an old-style (back)quote.
18646
186472007-08-22 Jason Rumney <jasonr@gnu.org>
18648
18649 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
18650
186512007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
18652
18653 * puresize.h (BASE_PURESIZE): Increase to 1140000.
18654
186552007-08-19 Richard Stallman <rms@gnu.org>
18656
18657 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
18658
186592007-08-19 Andreas Schwab <schwab@suse.de>
18660
18661 * alloc.c (pure): Round PURESIZE up.
18662
186632007-08-17 Jan Djärv <jan.h.d@swipnet.se>
18664
18665 * xterm.c (handle_one_xevent): Remove check that mouse click is in
18666 active frame.
18667
186682007-08-16 Richard Stallman <rms@gnu.org>
18669
18670 * eval.c (Fcommandp): Add parens to clarify.
18671
18672 * minibuf.c (Fall_completions): Use enum for type of table.
18673
18674 * emacs.c (USAGE2): Improve text.
18675
186762007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
18677
18678 * term.c (tty_default_color_capabilities): Declare static
18679 variables in file scope, to avoid HPUX compiler problem.
18680
186812007-08-13 Jan Djärv <jan.h.d@swipnet.se>
18682
18683 * gtkutil.c (update_frame_tool_bar): Use -1 as index
18684 to gtk_toolbar_insert.
18685
186862007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
18687
18688 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
18689
18690 * insdel.c (reset_var_on_error): New fun.
18691 (signal_before_change, signal_after_change):
18692 Use it to reset (after|before)-change-functions to nil in case of error.
18693 Bind inhibit-modification-hooks to t.
18694 Don't bind (after|before)-change-functions to nil while they run.
18695
186962007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18697
18698 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
18699 filling pixmap with stippled background.
18700
187012007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18702
18703 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
18704 Don't use invisible frame as parent window for repositioning.
18705
187062007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
18707
18708 * print.c (new_backquote_output): Rename from old_backquote_output.
18709 (print): Inverse its logic (according to its name) so as to match the
18710 behavior of new_backquote_flag in lread.c.
18711
187122007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18713
18714 * gmalloc.c (posix_memalign): New function.
18715
18716 * macterm.c (frame_highlight, frame_unhighlight): Don't call
18717 ActivateControl/DeactivateControl here.
18718 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
18719 frame-notice-user-settings is non-nil.
18720 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
18721 for kEventParamFMFontStyle.
18722 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
18723 mac_pass_command_to_system and mac_pass_control_to_system here.
18724 (XTread_socket): Call ActivateControl/DeactivateControl here.
18725 (XTread_socket) [TARGET_API_MAC_CARBON]:
18726 Check mac_pass_command_to_system and mac_pass_control_to_system here.
18727 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
18728 for window repositioning.
18729
187302007-08-08 Glenn Morris <rgm@gnu.org>
18731
18732 * Replace `iff' in doc-strings and comments.
18733
187342007-08-07 Chong Yidong <cyd@stupidchicken.com>
18735
18736 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
18737
187382007-08-07 Martin Rudalics <rudalics@gmx.at>
18739
18740 * fileio.c (Finsert_file_contents): Run format-decode and
18741 after_insert_file_functions on entire buffer when REPLACE is
18742 non-nil and inhibit modification_hooks and point_motion_hooks.
18743 For consistency, run after_insert_file_functions iff something
18744 got inserted. Move signal_after_change and update_compositions
18745 after code running after_insert_file_functions. Make sure that
18746 undo_list doesn't record intermediate steps of the decoding process.
18747
187482007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18749
18750 * emacs.c (main)
18751 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
18752 Call malloc_enable_thread on interactive startup.
18753
18754 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
18755 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
18756 [USE_PTHREAD]: Conditionalize with it.
18757 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
18758 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
18759 New functions.
18760
187612007-08-06 Chong Yidong <cyd@stupidchicken.com>
18762
18763 * xdisp.c (redisplay_window): When restoring original buffer
18764 position, make sure it is still valid.
18765
18766 * image.c (png_load): Ignore png-supplied background color.
18767
187682007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18769
18770 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
18771 Use kCFAbsoluteTimeIntervalSince1970.
18772
18773 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
18774 New variable.
18775 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
18776 event loop should be quit.
18777 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
18778 Quit dialog event loop if quit_dialog_event_loop is set.
18779
18780 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
18781 (Selection): New typedef. Use instead of ScrapRef.
18782 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
18783 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
18784 (mac_clear_selection): Rename from clear_scrap.
18785 (get_flavor_type_from_symbol): New argument SEL and subsume function of
18786 scrap_has_target_type. All uses changed.
18787 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
18788 (mac_selection_has_target_p): New functions.
18789 (mac_put_selection_value): Rename from put_scrap_string.
18790 (mac_get_selection_value): Rename from get_scrap_string.
18791 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
18792 (put_scrap_private_timestamp, scrap_has_target_type)
18793 (get_scrap_private_timestamp): Remove functions.
18794 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
18795 (x_own_selection, x_get_local_selection):
18796 Use mac_valid_selection_value_p.
18797 (x_own_selection): Don't use put_scrap_private_timestamp.
18798 Record OWNERSHIP-INFO into Vselection_alist instead.
18799 (x_get_local_selection): Don't check type if request is local.
18800 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
18801 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
18802
188032007-08-04 Jan Djärv <jan.h.d@swipnet.se>
18804
18805 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
18806 add comment explaining why.
18807
188082007-08-03 Richard Stallman <rms@gnu.org>
18809
18810 * fileio.c (Fvisited_file_modtime): Use make_time.
18811
188122007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
18813
18814 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
18815 build.
18816
188172007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
18818
18819 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
18820
188212007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
18822
18823 * puresize.h (BASE_PURESIZE): Increase to 1130000.
18824
188252007-07-30 Richard Stallman <rms@gnu.org>
18826
18827 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
18828
188292007-07-29 Jan Djärv <jan.h.d@swipnet.se>
18830
18831 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
18832
188332007-07-28 Nick Roberts <nickrob@snap.net.nz>
18834
18835 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
18836 remote default-directory.
18837
18838 * buffer.c (mode-line-format): Update doc string.
18839
188402007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18841
18842 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
18843 scroll bar gap.
18844 (x_scroll_bar_create): Set bar->fringe_extended_p.
18845 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
18846 on frame edge. Check fringe background extension. Don't clear
18847 extended fringe background area.
18848
18849 * w32term.h (struct scroll_bar): New member fringe_extended_p.
18850 (w32_fill_area): Enclose multiple statements with do ... while (0).
18851
18852 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
18853 Extend fringe background to scroll bar gap.
18854 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
18855 Set bar->fringe_extended_p.
18856 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18857 Put leftmost/rightmost scroll bars on frame edge. Check fringe
18858 background extension. Don't clear extended fringe background area.
18859
18860 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18861 New member fringe_extended_p.
18862
188632007-07-25 Glenn Morris <rgm@gnu.org>
18864
18865 * Relicense all FSF files to GPLv3 or later.
18866
18867 * COPYING: Switch to GPLv3.
18868
188692007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
18870
18871 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
18872
18873 * data.c (Finteractive_form): Check for the presence of an
18874 `interactive-form' symbol property more thoroughly.
18875
18876 * data.c (Finteractive_form): Use an `interactive-form' property if
18877 present, analogous to the function-documentation property.
18878
188792007-07-24 Jason Rumney <jasonr@gnu.org>
18880
18881 * w32fns.c (x_real_positions): Get real position from OS instead of
18882 calculating it.
18883
188842007-07-23 Jason Rumney <jasonr@gnu.org>
18885
18886 * filelock.c (current_lock_owner): Allow for @ sign in username.
18887
188882007-07-22 Nick Roberts <nickrob@snap.net.nz>
18889
18890 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
18891 remote default-directory.
18892
18893 * buffer.c (mode-line-format): Describe above case in doc string.
18894
188952007-07-20 Eli Zaretskii <eliz@gnu.org>
18896
18897 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
18898 Define if not defined.
18899
189002007-07-18 Jason Rumney <jasonr@gnu.org>
18901
18902 * w32proc.c (w32_executable_type): Handle 64 bit executables.
18903
189042007-07-18 Richard Stallman <rms@gnu.org>
18905
18906 * data.c (Fsetq_default): Doc fix.
18907
18908 * eval.c (Fsetq): Doc fix.
18909
189102007-07-18 Juanma Barranquero <lekktu@gmail.com>
18911
18912 * coding.c (Ffind_operation_coding_system):
18913 * eval.c (For, Fand): Doc fixes.
18914 Reported by Johan Bockgård.
18915
189162007-07-18 Jan Djärv <jan.h.d@swipnet.se>
18917
18918 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
18919
18920 * xterm.h: Declare x_ewmh_activate_frame.
18921
18922 * xterm.c (x_ewmh_activate_frame): New function.
18923 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
18924
189252007-07-17 Martin Rudalics <rudalics@gmx.at>
18926
18927 * window.c (Fdisplay_buffer): If largest or LRU window is the
18928 only window, split it even if it is not eligible for splitting.
18929 This restores the original behavior broken by the 2007-07-15
18930 change.
18931
189322007-07-17 Glenn Morris <rgm@gnu.org>
18933
18934 * abbrev.c (abbrev_check_chars): New function.
18935 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
18936 Call abbrev_check_chars to check abbrev characters are word
18937 constituents. Doc fix.
18938
189392007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
18940
18941 * process.c (Fstart_process, Fmake_network_process)
18942 (read_process_output): Fix up last changes.
18943
189442007-07-16 Eli Zaretskii <eliz@gnu.org>
18945
18946 * makefile.w32-in (clean): Don't delete *~.
18947
189482007-07-16 Andreas Schwab <schwab@suse.de>
18949
18950 * window.c (Fdisplay_buffer): Use NILP.
18951 (Fset_window_scroll_bars): Likewise.
18952
189532007-07-15 Martin Rudalics <rudalics@gmx.at>
18954
18955 * window.c (window_min_size_2): New function.
18956 (window_min_size_1, size_window, Fdisplay_buffer)
18957 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
18958 windows without mode- or header-lines when window-min-height is
18959 too small.
18960 (size_window): Reset nodelete_p after testing it, following an
18961 earlier note by Kim F. Storm.
18962 (display_buffer): Do not set split_height_threshold to twice the
18963 value of window_min_height to avoid changing the value of a
18964 customizable variable. Rather explicitly check whether the
18965 height of the window that shall be splitted is at least as large
18966 as split_height_threshold.
18967 (Fwindow_full_width_p): New defun.
18968 (syms_of_window): Defsubr it.
18969
18970 * window.h: Add EXFUN for Fwindow_full_width_p.
18971
189722007-07-14 Jason Rumney <jasonr@gnu.org>
18973
18974 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
18975
189762007-07-14 Richard Stallman <rms@gnu.org>
18977
18978 * eval.c (maybe_call_debugger): New function.
18979 (find_handler_clause): Use maybe_call_debugger.
18980 Call it when the handler says `debug'.
18981 Eliminate DEBUGGER_VALUE_PTR.
18982 (Fsignal): Eliminate debugger_value.
18983 (Qdebug): New variable.
18984 (syms_of_eval): Initialize it.
18985
189862007-07-14 Juanma Barranquero <lekktu@gmail.com>
18987
18988 * eval.c (Fprogn):
18989 * keyboard.c (Ftrack_mouse):
18990 * print.c (Fwith_output_to_temp_buffer):
18991 * window.c (Fsave_window_excursion): Doc fix.
18992
189932007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
18994
18995 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
18996
189972007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
18998
18999 * process.h (struct Lisp_Process): Turn slots infd, outfd,
19000 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
19001 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
19002 read_output_delay, and read_output_skip from Lisp_Objects to ints.
19003 Remove unused encoding_carryover.
19004 * process.c: Adjust all functions accordingly.
19005
190062007-07-12 Richard Stallman <rms@gnu.org>
19007
19008 * term.c: Include unistd.h only if HAVE_UNISTD_H.
19009
190102007-07-11 Jason Rumney <jasonr@gnu.org>
19011
19012 * makefile.w32-in (LIBS): Include OLE32.
19013
19014 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
19015 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
19016
190172007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
19018
19019 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
19020 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
19021 from a Lisp_Object into a bare pointer.
19022 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
19023 Adjust the code correspondingly.
19024
19025 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
19026
19027 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
19028 (term_show_mouse_face): Remove unused var `j'.
19029 (handle_one_term_event): Remove unused vars `i' and `j'.
19030 Don't cast return value of ttyname since it's not necessary.
19031
190322007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
19033
19034 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
19035 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
19036
19037 * fns.c (map_char_table): Use an array of int for `indices' rather than
19038 an array of Lisp_Objects (which are only ever integers anyway).
19039 (Fmap_char_table): Update caller.
19040 * lisp.h: Update prototype.
19041 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
19042 * fontset.c (Ffontset_info):
19043 * casetab.c (set_case_table): Update callers.
19044
19045 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
19046
19047 * keymap.c (struct accessible_keymaps_data)
19048 (struct where_is_internal_data): New structures.
19049 (accessible_keymaps_1, where_is_internal_1): Use them to change
19050 interface to adhere to the one used by map_keymap.
19051 (Faccessible_keymaps, where_is_internal): Use map_keymap.
19052 (accessible_keymaps_char_table, where_is_internal_2): Remove.
19053
19054 * keymap.h (map_keymap_function_t): More informative prototype.
19055
190562007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
19057
19058 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
19059 (looking_at_1): Don't change search_regs and last_thing_searched
19060 if `inhibit-changing-match-data' is non-nil.
19061 (string_match_1, search_buffer, set_search_regs): Likewise.
19062 (syms_of_search): Add Lisp level definition for
19063 `inhibit-changing-match-data' and set it to nil.
19064 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
19065 start and end of the match, instead of using values in search_regs.
19066
190672007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19068
19069 * minibuf.c (Fcompleting_read): New value `confirm-only'
19070 for `require-match'.
19071
190722007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
19073
19074 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
19075 part of the 2007-06-27 change to syms_of_fileio.
19076
190772007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19078
19079 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
19080 Check WINDOWP before using XWINDOW. Consolidate return statements.
19081
190822007-06-27 Richard Stallman <rms@gnu.org>
19083
19084 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
19085
190862007-06-27 Juanma Barranquero <lekktu@gmail.com>
19087
19088 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
19089
190902007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19091
19092 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
19093 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
19094 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
19095 (_free_internal, memalign): Use them.
19096 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
19097 Initialize to PTHREAD_MUTEX_INITIALIZER.
19098 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
19099 (morecore_nolock): Rename from morecore. All uses changed.
19100 Use only nolock versions of internal allocation functions.
19101 (_malloc_internal_nolock, _realloc_internal_nolock)
19102 (_free_internal_nolock): New functions created from
19103 _malloc_internal, _realloc_internal, and _free_internal.
19104 (_malloc_internal, _realloc_internal, _free_internal): Use them.
19105 Copy hook value to automatic variable before its use.
19106 (memalign): Copy hook value to automatic variable before its use.
19107
191082007-06-26 Kenichi Handa <handa@m17n.org>
19109
19110 * coding.c (Ffind_operation_coding_system): Docstring improved.
19111 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
19112
191132007-06-25 David Kastrup <dak@gnu.org>
19114
19115 * keymap.c (Fcurrent_active_maps): Add `position' argument.
19116 (Fwhere_is_internal): Adjust call to `current-active-maps' to
19117 cater for additional parameter.
19118
19119 * keymap.h: Adjust number of parameters to `current-active-maps'.
19120
19121 * doc.c (Fsubstitute_command_keys): Adjust call of
19122 `current-active-maps'.
19123
191242007-06-25 David Kastrup <dak@gnu.org>
19125
19126 * callint.c (Fcall_interactively): Make the parsing of interactive
19127 specs somewhat more readable.
19128
191292007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19130
19131 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
19132 to scroll bar gap also when bitmap fills fringe. Draw only foreground
19133 if extended background has already been filled.
19134
191352007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19136
19137 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
19138 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
19139
19140 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
19141 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
19142 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
19143 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
19144 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
19145 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
19146 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
19147 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
19148 Run timers during dialog popup.
19149 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
19150
191512007-06-21 Jason Rumney <jasonr@gnu.org>
19152
19153 * image.c (convert_mono_to_color_image): Swap fore and background.
19154
191552007-06-20 Jason Rumney <jasonr@gnu.org>
19156
19157 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
19158 (w32_free_bdf_font): Unmap memory not handle.
19159
191602007-06-20 Sam Steingold <sds@gnu.org>
19161
19162 * gmalloc.c (__morecore): Fix the declaration to comply with the
19163 definition.
19164
191652007-06-20 Juanma Barranquero <lekktu@gmail.com>
19166
19167 * w32term.c (w32_delete_display): Remove leftover declaration.
19168 (w32_define_cursor, w32_initialize): Make static.
19169
19170 * w32.c (_wsa_errlist): Fix typo in error message.
19171 (init_environment): Ignore any environment variable from the
19172 registry having a null value.
19173
191742007-06-20 Glenn Morris <rgm@gnu.org>
19175
19176 * Makefile.in (LIBGIF): Default to -lgif.
19177
191782007-06-17 Jason Rumney <jasonr@gnu.org>
19179
19180 * w32menu.c (add_menu_item): Don't use multibyte string functions on
19181 unicode strings.
19182
191832007-06-16 Juanma Barranquero <lekktu@gmail.com>
19184
19185 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
19186 Fix typo in docstring.
19187
191882007-06-16 Eli Zaretskii <eliz@gnu.org>
19189
19190 * w32menu.c (add_menu_item): Escape `&' characters in menu items
19191 and their keybindings.
19192
191932007-06-15 Chong Yidong <cyd@stupidchicken.com>
19194
19195 * composite.c (update_compositions): Fix last fix.
19196
191972007-06-14 Jason Rumney <jasonr@gnu.org>
19198
19199 * w32.c (get_process_times_fn): New function pointer.
19200 (globals_of_w32): Intialize it if present in kernel32.dll.
19201 (w32_get_internal_run_time): New function.
19202
19203 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
19204
192052007-06-14 Kenichi Handa <handa@etlken.m17n.org>
19206
19207 * composite.c (update_compositions): Check the validness of
19208 compositions.
19209
192102007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19211
19212 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
19213 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
19214
19215 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
19216 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
19217
19218 * macgui.h (USE_MAC_TOOLBAR): New define.
19219
19220 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19221 Return immediately unless popup is activated.
19222
19223 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
19224 background to scroll bar gap.
19225 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
19226 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
19227 scroll bars on frame edge. Check fringe background extension.
19228 Don't clear extended fringe background area.
19229 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
19230 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
19231 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
19232 [USE_MAC_TOOLBAR]: New macros.
19233 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
19234 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
19235 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
19236 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
19237 [USE_MAC_TOOLBAR]: New functions.
19238 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
19239 manually if previous repositioning has failed.
19240 (mac_handle_keyboard_event): Use precomputed event kind.
19241 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
19242 as tool bar item click. Handle mouse movement over tool bar items.
19243
19244 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
19245 toolbar_win_gravity.
19246 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
19247 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
19248 Add externs.
19249
19250 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
19251 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
19252
192532007-06-14 Chong Yidong <cyd@stupidchicken.com>
19254
19255 * image.c (search_image_cache): Remove unused variable.
19256
192572007-06-13 Chong Yidong <cyd@stupidchicken.com>
19258
19259 * xfns.c, xmenu.c: Link to xaw3d if available.
19260
192612007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19262
19263 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
19264 frame_foreground and frame_background.
19265
19266 * image.c (lookup_image): Save frame foreground and background colors.
19267 (search_image_cache): Check if saved and current frame colors match.
19268
192692007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
19270
19271 * regex.c (regex_compile): Remove the `regnum' counter.
19272 Use bufp->re_nsub instead. Add support for \(?N:RE\).
19273
192742007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19275
19276 * term.c: Include intervals.h to declare Fget_text_property.
19277
192782007-06-10 Jason Rumney <jasonr@gnu.org>
19279
19280 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
19281
192822007-06-08 Juanma Barranquero <lekktu@gmail.com>
19283
19284 * callint.c (Fcall_interactively):
19285 * editfns.c (Fdelete_and_extract_region):
19286 * fileio.c (Fread_file_name):
19287 * fns.c (Fmapconcat):
19288 * keyboard.c (cmd_error_internal):
19289 * keymap.c (Fkey_description):
19290 * lread.c (openp):
19291 * minibuf.c (read_minibuf):
19292 * search.c (wordify):
19293 * sunfns.c (sel_read):
19294 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
19295 * xfns.c (x_default_scroll_bar_color_parameter):
19296 * xmenu.c (menu_help_callback):
19297 * xselect.c (Fx_get_atom_name):
19298 * xterm.c (x_term_init): Use empty_unibyte_string.
19299
193002007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
19301
19302 * alloc.c (init_strings): Initialize canonical empty strings.
19303 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
19304 canonical empty string when the requested size is 0.
19305
19306 * emacs.c (empty_unibyte_string): Rename from empty_string.
19307 (empty_multibyte_string): New canonical empty string.
19308 (syms_of_emacs): Don't initialize empty_string.
19309
19310 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
19311 string, if appropriate.
19312 (empty_unibyte_string, empty_multibyte_string): New externs.
19313 (empty_string): Remove extern.
19314
19315 * lread.c (syms_of_lread): Use empty_unibyte_string.
19316
193172007-06-07 Jason Rumney <jasonr@gnu.org>
19318
19319 * s/ms-w32.h: Don't define HAVE_TZNAME.
19320
19321 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
19322
193232007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19324
19325 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
19326
19327 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
19328 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
19329
19330 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19331 Don't call next handler.
19332 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
19333 Remove argument. Install handler to application.
19334 (set_frame_menubar): Don't change deep_p.
19335 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
19336 FRAME_OUTER_TO_INNER_DIFF_Y.
19337 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
19338 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
19339 [HAVE_DIALOGS]: New macros.
19340 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
19341 Use them.
19342 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
19343
19344 * macselect.c [MAC_OSX] (install_service_handler): Rename from
19345 init_service_handler. All callers changed. Return OSStatus value.
19346
19347 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
19348 All callers changed so as not to call SetPortWindowPort.
19349 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
19350 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
19351 mac_draw_string_common.
19352 (mac_draw_image_string_qd): Likewise.
19353 (mac_draw_string_common): Use them. Add INLINE.
19354 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
19355 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
19356 GetGlobalMouse.
19357 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
19358 and FRAME_OUTER_TO_INNER_DIFF_Y.
19359 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
19360 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
19361 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
19362 repositioning window to mac_handle_window_event.
19363 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
19364 saving window location to mac_handle_window_event
19365 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
19366 (install_menu_target_item_handler): Remove argument in extern.
19367 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
19368 Also accept command events.
19369 (do_keystroke): New function created from XTread_socket.
19370 (init_command_handler): Remove functions.
19371 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
19372 and save window location by kEventWindowShowing and kEventWindowHiding
19373 handlers here. Don't call next handler for window state change and
19374 focus events.
19375 (mac_handle_application_event, mac_handle_keyboard_event)
19376 [TARGET_API_MAC_CARBON]: New functions.
19377 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
19378 kEventWindowShowing and kEventWindowHiding events. Move installation
19379 of mouse, font, text input and menu target item handlers to
19380 install_application_handler.
19381 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
19382 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19383 New function.
19384 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19385 Register it.
19386 (XTread_socket) [TARGET_API_MAC_CARBON]:
19387 Consolidate SendEventToEventTarget calls.
19388 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
19389 Move application activation handler to mac_handle_application_event.
19390 Move keyboard handler to mac_handle_keyboard_event.
19391 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
19392 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
19393 init_command_handler. Call install_application_handler.
19394
19395 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
19396 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
19397
193982007-06-07 Glenn Morris <rgm@gnu.org>
19399
19400 * emacs.c (main): Use `emacs-copyright' in --version output.
19401
194022007-06-06 Chong Yidong <cyd@stupidchicken.com>
19403
19404 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
19405
194062007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19407
19408 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
19409
19410 * macgui.h: Replace WindowPtr with WindowRef.
19411
19412 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19413 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19414 Replace ControlHandle with ControlRef.
19415 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
19416
19417 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19418 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19419 Replace ControlHandle with ControlRef.
19420 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
19421 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
19422
19423 * macterm.h (struct scroll_bar): Rename member control_handle_low
19424 and control_handle_high to control_ref_low and control_ref_high.
19425 All uses changed.
19426 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
19427 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
19428 respectively. All uses changed.
19429 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
19430 (install_window_handler, remove_window_handler): Replace WindowPtr
19431 with WindowRef in externs.
19432
194332007-06-05 Juanma Barranquero <lekktu@gmail.com>
19434
19435 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
19436
194372007-06-03 Nick Roberts <nickrob@snap.net.nz>
19438
19439 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
19440
19441 * frame.c (Fmouse_position, Fmouse_pixel_position):
19442 Condition on HAVE_GPM too.
19443
19444 * term.c (term_mouse_highlight): Remove unused variables.
19445 (Fterm_open_connection): Set gpm_zerobased to 1.
19446 (term_mouse_movement, term_mouse_click, handle_one_term_event):
19447 Use zero based co-ordinates.
19448 (handle_one_term_event): Report a drag as mouse movement too.
19449
19450 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
19451
194522007-06-03 Chong Yidong <cyd@stupidchicken.com>
19453
19454 * image.c (search_image_cache): New function. Require background
19455 color match if background color is unspecified in the image spec.
19456 (uncache_image, lookup_image): Use it.
19457
194582007-06-01 Juanma Barranquero <lekktu@gmail.com>
19459
19460 * window.c (Fshrink_window): Reflow docstring.
19461
194622007-06-02 Chong Yidong <cyd@stupidchicken.com>
19463
19464 * Version 22.1 released.
19465
194662007-06-01 Richard Stallman <rms@gnu.org>
19467
19468 * xfns.c (x_encode_text): Add GCPRO.
19469
194702007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19471
19472 * xfns.c (x_set_name_internal): Save encoded name before
19473 x_encode_text in case string data is relocated.
19474
194752007-05-31 Richard Stallman <rms@gnu.org>
19476
19477 * buffer.c (syms_of_buffer): Doc fix.
19478
194792007-05-30 Nick Roberts <nickrob@snap.net.nz>
19480
19481 * sysdep.c (init_sys_modes): Add rather than replace with
19482 O_NONBLOCK.
19483
19484 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
19485 term_mouse_moveto.
19486
19487 * termhooks.h (term_mouse_moveto): New extern.
19488
19489 * term.c (mouse_face_window): Rename...
19490 (Qmouse_face_window): ...to this.
19491 (term_show_mouse_face, term_clear_mouse_face)
19492 (term_mouse_highlight): Use Qmouse_face_window.
19493 (term_mouse_moveto): New function.
19494 (term_mouse_position): Make it work.
19495 (syms_of_term): Uncomment assignment to mouse_position_hook.
19496 Staticpro Qmouse_face_window.
19497
194982007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19499
19500 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
19501 around current_column call.
19502
195032007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
19504
19505 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
19506 * xdisp.c (next_element_from_buffer):
19507 * window.c (delete_window):
19508 * term.c (term_mouse_highlight):
19509 * msdos.c (getdefdir):
19510 * macterm.c (mac_create_bitmap_from_bitmap_data)
19511 (init_font_name_table):
19512 * fns.c (Fsxhash):
19513 * data.c (Fmake_local_variable):
19514 * ccl.c (ccl_driver): Likewise.
19515
195162007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19517
19518 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
19519 Call mac_wakeup_from_rne on window size change.
19520
195212007-05-25 Chong Yidong <cyd@stupidchicken.com>
19522
19523 * image.c (uncache_image): Fix typo.
19524
195252007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
19526
19527 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
19528
195292007-05-22 Richard Stallman <rms@gnu.org>
19530
19531 * xterm.c (x_connection_closed): Remove NO_RETURN.
19532
195332007-05-22 Martin Rudalics <rudalics@gmx.at>
19534
19535 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
19536
195372007-05-21 Chong Yidong <cyd@stupidchicken.com>
19538
19539 * image.c (uncache_image): New function.
19540 (Fimage_refresh): New function.
19541
195422007-05-20 Jan Djärv <jan.h.d@swipnet.se>
19543
19544 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
19545
195462007-05-20 Nick Roberts <nickrob@snap.net.nz>
19547
19548 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
19549 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
19550
195512007-05-20 Nick Roberts <nickrob@snap.net.nz>
19552
19553 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
19554 conditional on [HAVE_GPM_H].
19555
195562007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
19557
19558 * syntax.c (skip_chars): Update syntax-table only after we checked that
19559 the new location is valid.
19560
195612007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19562
19563 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
19564 mac_get_window_bounds.
19565
195662007-05-20 Nick Roberts <nickrob@snap.net.nz>
19567
19568 * Makefile.in (LIBGPM): Allow it to be set from configure.
19569 If set then link Emacs with it.
19570
19571 * config.in: Regenerate.
19572
19573 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
19574 New externs.
19575
19576 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
19577 Include gpm.h.
19578 (handle_one_term_event, term_gpm): New externs.
19579
19580 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
19581 and allow it to be interrupted by SIGIO.
19582
19583 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
19584 (wait_reading_process_output): Wait on gpm_fd too.
19585 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
19586 (add_gpm_wait_descriptor_called_flag): New variable.
19587 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
19588
19589 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
19590 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
19591 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
19592 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
19593 (make_lispy_event): Add case GPM_CLICK_EVENT.
19594 (read_avail_input): Handle mouse input.
19595
19596 * term.c (write_glyphs_with_face): New function.
19597 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
19598 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
19599 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
19600 (mouse_face_face_id, term_gpm, pos_x, pos_y)
19601 (last_mouse_x, last_mouse_y): New variables.
19602 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
19603 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
19604 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
19605 (Fterm_close_connection): New functions.
19606 (term_init): Initialise mouse_face_window.
19607
196082007-05-19 Chong Yidong <cyd@stupidchicken.com>
19609
19610 * xdisp.c (redisplay_window): If first window line is a
19611 continuation line, recompute the new window start instead of
19612 recentering.
19613
196142007-05-18 Glenn Morris <rgm@gnu.org>
19615
19616 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
19617 Suggested by Alfred M. Szmidt <ams@gnu.org>.
19618
196192007-05-17 Glenn Morris <rgm@gnu.org>
19620
19621 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
19622
196232007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19624
19625 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
19626 dead key repeat and up events.
19627
196282007-05-14 Chong Yidong <cyd@stupidchicken.com>
19629
19630 * image.c (pbm_load): Check image size for monochrome pbm.
19631
196322007-05-13 Chong Yidong <cyd@stupidchicken.com>
19633
19634 * xterm.c (XTread_socket): Revert last change.
19635
196362007-05-12 Chong Yidong <cyd@stupidchicken.com>
19637
19638 * image.c (pbm_load): Correctly check image size for greyscale pbm.
19639
19640 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
19641
196422007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19643
19644 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
19645 mixup (YAILOM).
19646
196472007-05-07 Andreas Schwab <schwab@suse.de>
19648
19649 * keymap.c (Flookup_key): Fix typo in last change.
19650
196512007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19652
19653 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
19654 mapping for unibyte strings.
19655
196562007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19657
19658 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
19659 (Fx_popup_dialog) [MAC_OSX]: Likewise.
19660
196612007-04-29 Richard Stallman <rms@gnu.org>
19662
19663 * insdel.c (replace_range): For undo, record insertion first.
19664
196652007-04-29 Andreas Schwab <schwab@suse.de>
19666
19667 * lisp.h (VECSIZE): Use OFFSETOF.
19668
196692007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19670
19671 * xdisp.c (try_window_reusing_current_matrix): Fix number of
19672 disabled lines.
19673
196742007-04-28 Richard Stallman <rms@gnu.org>
19675
19676 * lread.c (read_escape): In a string, \s is always space.
19677
196782007-04-27 Jan Djärv <jan.h.d@swipnet.se>
19679
19680 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
19681
19682 * gtkutil.c (xg_update_menubar, create_menus): Create empty
19683 submenu for menu bar items.
19684
19685See ChangeLog.10 for earlier changes.
19686
19687;; Local Variables:
19688;; coding: utf-8
19689;; add-log-time-zone-rule: t
aac0c6e3
MR
19690;; End:
19691
76b6f707 19692 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
19693
19694 This file is part of GNU Emacs.
19695
19696 GNU Emacs is free software: you can redistribute it and/or modify
19697 it under the terms of the GNU General Public License as published by
19698 the Free Software Foundation, either version 3 of the License, or
19699 (at your option) any later version.
19700
19701 GNU Emacs is distributed in the hope that it will be useful,
19702 but WITHOUT ANY WARRANTY; without even the implied warranty of
19703 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19704 GNU General Public License for more details.
19705
19706 You should have received a copy of the GNU General Public License
19707 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
19708
19709;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40