(print_load_command_name) [LC_DYLD_INFO]: Add cases
[bpt/emacs.git] / src / ChangeLog
CommitLineData
e7adeadc
EZ
12009-08-28 Eli Zaretskii <eliz@gnu.org>
2
3 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
4 $(SRC)/buildobj.h.
5 (buildobj.h): Renamed from $(SRC)/buildobj.h.
6 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
7 $(SRC)/buildobj.h.
8 (clean): Add buildobj.h.
9
3ed8bbdc
TZ
102009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
11
12 * print.c (print_object): Set escapeflag to 1 when printing
13 hashtable keys and values.
14
155a6764
SM
152009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
16
17 * lread.c (read_integer): Use doubles (and potentially return a float
18 number) as we do in string-to-number.
19 (read1): Use strtol to read integers, signal errors on strtol's
20 overflow and use floats if strtol's output is too large for
21 Elisp integers.
22
877610de
EZ
232009-08-27 Eli Zaretskii <eliz@gnu.org>
24
25 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
26 (make-buildobj-SH): Fix last change.
27 (SRC): Move to before where it's first used.
28
ef73e7be
KH
292009-08-27 Kenichi Handa <handa@m17n.org>
30
550c8289
KH
31 * process.c (send_process): Use encode_coding_object instead of
32 encode_coding_string to perform eol-conversion even if the string
33 is unibyte.
34
60afa08d
KH
35 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
36 character.
37
ef73e7be 38 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 39 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 40
7b3a82d7
DN
412009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
42
5654bf63
DN
43 * callproc.c (Fcall_process): Remove always true #if.
44
7b3a82d7
DN
45 * lisp.h: Replace #if 0 code for checking with text pointing to
46 the --enable-checking configure flag.
47
48 * emacs.c (main): Mention the --enable-profiling configure flag
49 instead of using CFLAGS.
50
878bde49
KR
512009-08-26 Ken Raeburn <raeburn@raeburn.org>
52
53 * Makefile.in (buildobj.h): New target.
54 (doc.o): Depend on it.
55 (temacs${EXEEXT}): Don't generate buildobj.lst.
56 (mostlyclean): Delete buildobj.h, not buildobj.lst.
57 * makefile.w32-in ($(SRC)/buildobj.h): New target.
58 ($(BLD)/doc.$(O)): Depend on it.
59 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
60 provided by Eli Zaretskii.)
61 ($(TEMACS)): Don't generate buildobj.lst.
62 * doc.c: Include buildobj.h.
63 (buildobj): New static variable.
64 (Fsnarf_documentation): Use it, instead of opening and reading
65 buildobj.lst.
66
1574224c
MA
672009-08-25 Michael Albinus <michael.albinus@gmx.de>
68
69 * dbusbind.c (Fdbus_call_method)
70 (Fdbus_call_method_asynchronously): Use English numeric format for
71 timeout values in doc string.
72
d9da2f45
KH
732009-08-25 Kenichi Handa <handa@m17n.org>
74
ef73e7be
KH
75 * alloc.c (mark_char_table): New function.
76 (mark_object): Use mark_char_table for a char-table.
77
d9da2f45
KH
78 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
79 (CHAR_TABLE_REF): Use it.
80
c8edcc01
KR
812009-08-23 Ken Raeburn <raeburn@raeburn.org>
82
83 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
84 before invoking the newly build emacs to check for load-path
85 shadowing.
86
7763401b
GM
872009-08-22 Glenn Morris <rgm@gnu.org>
88
89 * Makefile.in (bootstrap_exe): New variable.
90 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
91 Use ${bootstrap_exe}.
92
729eadda
EZ
932009-08-22 Eli Zaretskii <eliz@gnu.org>
94
95 * coding.h (encode_coding_string): Don't encode unibyte strings.
96 (Bug#4047)
97
eb4c6ace
MA
982009-08-22 Michael Albinus <michael.albinus@gmx.de>
99
100 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
101
102 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
103 intended as hotfix only.
104 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
105
36e34d1b
AR
1062009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
107
108 * nsterm.m (ns_get_color): Update documentation properly for last
109 change, and clean up loose ends in the code left by it. Fix
110 longstanding bug with 16-bit hex parsing, and add support for
111 yet another X11 format (rgb:r/g/b) for compatibility.
112 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
113 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
114
f983eb8a
SM
1152009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
116
117 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
118
3f56d3c6
MA
1192009-08-20 Michael Albinus <michael.albinus@gmx.de>
120
121 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
122 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
123 (xd_initialize, xd_pending_messages): Check, whether
124 $DBUS_SESSION_BUS_ADDRESS is set.
125
fb641d68
YM
1262009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
127
128 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
129
130 * nsterm.m (ns_get_color): Remove incompatible color formats again.
131
cf59a374
GM
1322009-08-20 Glenn Morris <rgm@gnu.org>
133
134 * emacs.c (system-type): Doc fix.
135
1373f3be
SM
1362009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
137
138 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
139 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
140
058ed861
MA
1412009-08-18 Michael Albinus <michael.albinus@gmx.de>
142
1373f3be
SM
143 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
144 New functions.
058ed861
MA
145 (xd_initialize): Revert change from 2009-08-16.
146
563a866e 1472009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
148
149 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 150 font-group vector, return nil.
5fc05db0 151
e42bdf01
CY
1522009-08-17 Chong Yidong <cyd@stupidchicken.com>
153
154 * process.c (status_notify): Don't perform redisplay.
155 (Fdelete_process, list_processes_1, process_send_signal):
156 Expliticly perform redisplay.
157 (wait_reading_process_output): Always check process status, but
158 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
159
4230ab74
KR
1602009-08-17 Ken Raeburn <raeburn@raeburn.org>
161
1373f3be 162 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
163 (XFLOAT_INIT): New macro for storing a float value.
164 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
165 * fns.c (sxhash): Copy out the value of a float in order to
166 examine its bytes.
167 * dbusbind.c (xd_append_arg): Likewise.
168
4230ab74
KR
169 * emacs.c (main): Don't call syms_of_data twice.
170
a0645cdd
MA
1712009-08-16 Michael Albinus <michael.albinus@gmx.de>
172
173 * dbusbind.c (xd_initialize): Add connection file descriptor to
174 input_wait_mask, in order to let select() detect, whether a new
175 message has been arrived.
ca4f31ea 176 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 177
485db0ba
MA
1782009-08-15 Michael Albinus <michael.albinus@gmx.de>
179
1373f3be
SM
180 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
181 New functions.
485db0ba
MA
182
183 * lisp.h (xd_pending_messages): Declare.
184
185 * keyboard.c (readable_events): Call xd_pending_messages.
186
b5b98ff4
CY
1872009-08-15 Chong Yidong <cyd@stupidchicken.com>
188
1373f3be 189 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 190
f8354c6e
CY
191 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
192
b5b98ff4
CY
193 * buffer.c (set_buffer_internal_1)
194 (swap_out_buffer_local_variables): Check for unbound local
195 variables (Bug#4138).
196
8b9fc636
EZ
1972009-08-14 Eli Zaretskii <eliz@gnu.org>
198
199 * process.c (create_pty): Fix last change.
200
ce959360
CY
2012009-08-13 Chong Yidong <cyd@stupidchicken.com>
202
203 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
204 (xbm_load_image): Caller changed.
64b807c9 205 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 206
c7baf7e9
NR
2072009-08-13 Nick Roberts <nickrob@snap.net.nz>
208
209 * process.c (create_pty): New function.
210 (Fstart_process): Use it to allow Emacs to just associate a pty
211 with the buffer. See associated change in gdb-mi.el.
212 (list_processes_1): Deal with no program name.
213 (start_process_unwind): Use pid == -2 to mean no process.
214
1ac9108a
SM
2152009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
216
217 * cmds.c (nonundocount): New global variable.
218 (keys_of_cmds): Initialize it.
219 (Fself_insert_command): Use it to combine upto 20 sequential chars
220 into a single undo entry, just like the Qself_insert_command code in
221 keyboard.c does.
222 Call frame_make_pointer_invisible, also like the Qself_insert_command
223 code in keyboard.c does.
224 * keyboard.c (command_loop_1): Use the new global nonundocount rather
225 than its own local replacement for it.
226
e267324c
KR
2272009-08-10 Ken Raeburn <raeburn@raeburn.org>
228
1ac9108a 229 * fns.c (concat): Don't re-set string length to its current value.
77437343 230
1ac9108a
SM
231 * coding.h (decode_coding_string, encode_coding_string):
232 Use SBYTES macro.
f0bed503 233
1ac9108a 234 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
235 (doprnt): Merge with doprnt1, discarding lispstrings code.
236 * lisp.h (doprnt_lisp): Don't declare.
237
416e006d
JL
2382009-08-07 Juri Linkov <juri@jurta.org>
239
240 * puresize.h (BASE_PURESIZE): Increase to 1270000.
241
6f7d5780
DN
2422009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
243
244 * print.c (syms_of_print): Undo previous change.
245
f19a0f5b
TZ
2462009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
247
248 * lread.c (read1, syms_of_lread): Read hashtables back from the
249 readable format.
250
251 * print.c (print_preprocess, print_object): Print hashtables fully
252 and readably.
253 (syms_of_print): Provide 'hashtable-print-readable.
254
b9173dc2
AR
2552009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
256
257 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
258 no family set.
259 (nsfont_open): Handle case when entity has no family.
260
1586503c
AR
2612009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
262
263 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
264 element, not a list, for match case.
265
087048cd
KH
2662009-07-28 Kenichi Handa <handa@m17n.org>
267
268 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
269 rigidly.
270
271 * xfont.c (xfont_list_pattern): Don't ignore the return value of
272 font_parse_xlfd. Check font properties more rigidly.
273
780c2506
DN
2742009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
275
31fd7c5c
JB
276 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
277 bsd-common.h.
780c2506 278
a8c0cc18
KH
2792009-07-27 Kenichi Handa <handa@m17n.org>
280
281 * xfaces.c (face_with_height): Call font_clear_prop.
282
4fbe2306
CY
2832009-07-26 Chong Yidong <cyd@stupidchicken.com>
284
111d9af3
CY
285 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
286
287 * xterm.c (x_term_init): Use Qx.
288
4fbe2306
CY
289 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
290
1ac9108a 291 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
292 (ns_get_color): Revert 2009-07-16 change.
293
beb0b7f9
EZ
2942009-07-25 Eli Zaretskii <eliz@gnu.org>
295
296 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 297 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 298
2baf5e76
KR
2992009-07-25 Ken Raeburn <raeburn@raeburn.org>
300
1ac9108a
SM
301 * coding.h (decode_coding_string, encode_coding_string):
302 Use SCHARS macro.
8890e5f5 303
2baf5e76 304 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 305 (load_depth): Delete.
2baf5e76
KR
306 (Qload_in_progress): New variable.
307 (load_unwind): Don't reference load_depth or load_in_progress.
308 (Fload): Likewise; specbind Qload_in_progress instead.
309 (init_lread): Don't initialize load_depth.
310 (syms_of_lread): Initialize and protect Qload_in_progress.
311
1395c6f5
AR
3122009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
313
314 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
315
4e2f36cf
AR
3162009-07-23 Yavor Doganov <yavor@gnu.org>
317
318 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
319
5dd9a6f7
AR
3202009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
321
322 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
323 Bugs 3792, 3720, 2402.
324 (ns_lookup_indexed_color): Check for bad index.
325 (ns_index_color): Init unused slot to 0.
326 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
327 Bug 3714, possibly 3082.
5dd9a6f7 328
c902b920
JR
3292009-07-22 Jason Rumney <jasonr@gnu.org>
330
1ac9108a
SM
331 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
332 Position IME window at cursor (Bug#2570).
c902b920
JR
333 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
334 (globals_of_w32fns): Dynamically load functions required above.
335
336 * w32term.c (w32_draw_window_cursor): Send message to reposition
337 any IME window.
338
090101cf
CY
3392009-07-21 Chong Yidong <cyd@stupidchicken.com>
340
341 * fileio.c: Revert 2009-07-16 changes.
342 (Vauto_save_include_big_deletions): New variable.
343 (Fdo_auto_save): Disable auto-save only if
344 auto-save-include-big-deletions is nil.
345
e6583e3d
CY
3462009-07-21 Chong Yidong <cyd@stupidchicken.com>
347
348 * xdisp.c (move_it_to): For continued lines ending in a tab, take
349 the overflowed pixels into account (Bug#3879).
350
ece435a5
KR
3512009-07-21 Ken Raeburn <raeburn@raeburn.org>
352
353 * lread.c (load_depth): New variable.
354 (Fload, load_unwind, init_lread): Set it to the load recursion
355 depth; set load_in_progress as a simple boolean based on the
356 current load_depth. (Bug#3892)
357
40b2d973
AR
3582009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
359
360 * nsfont.m (ns_has_attribute): Remove.
361 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
362
10be7e0d
JL
3632009-07-18 Juri Linkov <juri@jurta.org>
364
365 * process.c (Fset_process_query_on_exit_flag): Mention killing
366 a buffer in docstring.
367
fa055055
KH
3682009-07-17 Kenichi Handa <handa@m17n.org>
369
370 * casetab.c (shuffle): Fix the logic of setting up the cycle.
371
042f7b69
YM
3722009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
373
374 * nsfns.m (Fns_set_alpha): Remove function.
375 (syms_of_nsfns): Don't defsubr it.
376
377 * nsterm.m (ns_get_color): Remove incompatible color formats.
378 (ns_color_to_lisp): Generate #rrggbb color format string.
379
4be941e3
RS
3802009-07-16 Richard Stallman <rms@gnu.org>
381
382 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
383 (Fset_buffer_auto_saved): Handle save_length = -2.
384
4e6b227d
CY
3852009-07-16 Chong Yidong <cyd@stupidchicken.com>
386
387 * xterm.c (Qx_gtk_map_stock): New var.
388
389 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
390 of calling intern each time.
391
a1856973
YM
3922009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
393
394 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
395 does tiling.
396
397 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
398
497e54d8
KH
3992009-07-14 Kenichi Handa <handa@m17n.org>
400
72d36834
KH
401 * font.c (font_vconcat_entity_vectors): New function.
402 (struct font_sort_data): New member font_driver_preference.
403 (font_compare): Check font_driver_preference.
404 (font_sort_entities): The format of the first argument changed.
405 (font_delete_unmatched): Likewise.
406 (font_list_entities): The return type changed.
407 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
408 (font_find_for_lface): Adjuste for the above changes.
409 Don't suppress the checking of C even if the repertory supports it.
410 (Flist_fonts): Adjust for the above changes.
72d36834 411
1ac9108a
SM
412 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
413 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
414 Reject a font who has adstyle property that is different from a
415 langname derived from registry property.
1ac9108a 416 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 417
b6046155
EZ
4182009-07-13 Eli Zaretskii <eliz@gnu.org>
419
420 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
421 local copy of dirfilename.
422
fb6b6049
KH
4232009-07-13 Kenichi Handa <handa@m17n.org>
424
e2402a5e
KH
425 * chartab.c (sub_char_table_ref_and_range): Fix the range check
426 against max_char.
427
fb6b6049
KH
428 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
429 calling XSYMBOL (sym).
430
65156807
EZ
4312009-07-11 Eli Zaretskii <eliz@gnu.org>
432
1ac9108a
SM
433 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
434 New function.
435 (directory_files_internal) [WINDOWSNT]:
436 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
437 the filesystem of the directory is fast or slow.
438
439 * w32.c (logon_network_drive): Don't assume PATH is an absolute
440 file name.
441 (is_slow_fs): New function.
442 (stat): Use it to determine whether to issue more system calls to
443 get accurate file attributes, when w32-get-true-file-attributes is
444 `local'.
445
e0ab5fcf
JD
4462009-07-10 Jan Djärv <jan.h.d@swipnet.se>
447
448 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 449 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
450 parameter font-parameter as default to the font dialog.
451
784ceded
KH
4522009-07-10 Kenichi Handa <handa@m17n.org>
453
454 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
455
fb8edc0b
EZ
4562009-07-09 Eli Zaretskii <eliz@gnu.org>
457
1ac9108a 458 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 459
fb8edc0b
EZ
460 * w32.c (stat): Treat UNC file names as residing on remote
461 drives. (Bug#3542)
462
635c75b1
KH
4632009-07-09 Kenichi Handa <handa@m17n.org>
464
465 * fontset.c (fontset_find_font): Fix previous change.
466
c1d5ce94
MA
4672009-07-08 Michael Albinus <michael.albinus@gmx.de>
468
469 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
470 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
471 error flag.
472
edb61b39
KH
4732009-07-08 Kenichi Handa <handa@m17n.org>
474
374bf7e4
KH
475 * fontset.c (fontset_find_font): Fix the logic of handling
476 charset_matched.
477 (font_for_char): Delete unused var.
478 (generate_ascii_font_name): Delete it.
479
edb61b39
KH
480 * coding.h (JIS_TO_SJIS2): Fix the code range check.
481
482 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
483 (encode_coding_sjis): Fix the code range check.
484
0f3f018c
CY
4852009-07-07 Chong Yidong <cyd@stupidchicken.com>
486
487 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
488 (Fexpand_file_name): Copy string data properly (Bug#3772).
489
fcaf6f3a
JD
4902009-07-07 Jan Djärv <jan.h.d@swipnet.se>
491
492 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
493 first MapNotify.
494
6809ca75
KH
4952009-07-07 Kenichi Handa <handa@m17n.org>
496
497 * character.h (unibyte_has_multibyte_table): Delete extern.
498 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
499
500 * charset.c (Fset_charset_priority): Update charset_unibyte.
501 (syms_of_charset): Initialize charset_unibyte.
502
503 * character.c (unibyte_has_multibyte_table): Delete it.
504 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
505 charset_unibyte.
506 (multibyte_char_to_unibyte_safe): Likewise.
507 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
508
1ac9108a 509 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
510 (x_produce_glyphs): Likewise.
511
512 * .gdbinit (xcharset): Fix the treating $arg0.
513
ad9e2d54
EZ
5142009-07-04 Eli Zaretskii <eliz@gnu.org>
515
516 Emulation of `getloadavg' on MS-Windows.
517 * w32.c: Include float.h
518 (g_b_init_get_native_system_info, g_b_init_get_system_times)
519 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
520 (get_native_system_info, get_system_times): New functions.
521 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
522 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
523 (globals_of_w32): Initialize g_b_init_get_native_system_info,
524 g_b_init_get_system_times, and num_of_processors.
525
0a3472c7
JR
5262009-07-03 Jason Rumney <jasonr@gnu.org>
527
528 * w32term.c (w32_initialize): Use standard types.
529
80904120
EZ
5302009-07-03 Eli Zaretskii <eliz@gnu.org>
531
532 * dired.c (Ffile_attributes): Decode user and group names by the
533 locale's encoding. (Bug#3443)
534
6978862d
DN
5352009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
536
f8d23104
DN
537 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
538 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
539
540 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
541
542 * term.c (init_tty): Remove spurious #ifdef.
543
6978862d
DN
544 * m/mips.h: Mention this file is also used for netbsd.
545 * m/pmax.h: Remove file.
546
e044e4fc
JD
5472009-07-03 Jan Djärv <jan.h.d@swipnet.se>
548
549 * xterm.h (struct x_display_info): Add invisible_cursor.
550 (struct x_output): Add current_cursor.
551
552 * xterm.c (XTtoggle_invisible_pointer): New function.
553 (x_define_frame_cursor): Don't define cursor if invisible or the
554 same as before. Set current_cursor.
555 (x_create_terminal): Set toggle_invisible_pointer_hook.
556
557 * xfns.c (make_invisible_cursor): New function.
558 (x_set_mouse_color): Call make_invisible_cursor.
559 Set current_cursor.
560 (x_window): Set current_cursor.
561
562 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
563
564 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
565 inserting a character.
566 (read_avail_input): Call frame_make_pointer_visible.
567
568 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
569 (frame_make_pointer_invisible, frame_make_pointer_visible):
570 New functions.
e044e4fc
JD
571 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
572
573 * frame.h: Declare frame_make_pointer_invisible and
574 frame_make_pointer_visible.
575 (struct frame): Add pointer_invisible.
576
574c8efa
JD
5772009-07-02 Jan Djärv <jan.h.d@swipnet.se>
578
7b507248
JD
579 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
580 frame isn't visible.
581 (xg_frame_resized): If width/height is -1, get size of window
582 from X server.
583
584 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
585 for MapNotify.
586
835bdaa7 587 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 588 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 589 (flush_and_sync): Reintroduce.
574c8efa 590
3f1c6666 5912009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 592
31fd7c5c 593 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
594
595 * xterm.c (x_handle_net_wm_state): Also look for sticky.
596 (x_term_init): Initialize Xatom_net_wm_state_sticky.
597
598 * frame.h: Declare Qsticky.
599
cad9ef74
JD
600 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
601
602 * nsfns.m (ns_frame_parm_handlers): Ditto.
603
604 * frame.c: Declare Qsticky.
605 (frame_parms): Add sticky.
606
607 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
608
609 * xterm.h: Declare x_set_sticky.
610
611 * xterm.c (x_set_sticky): New function.
612
69b16610
JD
613 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
614 (xg_tool_bar_menu_proxy): Attach enter/leave events to
615 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
616
617 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
618
619 * frame.c: Qmaximized is new.
620 (x_set_frame_parameters): Do not handle fullscreen specially.
621 Only set width and height if explicitly set.
622 (x_set_fullscreen): Handle Qmaximized.
623 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
624 (syms_of_frame): Initialize Qmaximized.
625
1ac9108a
SM
626 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
627 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
628
629 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
630 for Expose event. Add call to x_check_fullscreen for MapNotify event.
631 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
632 set gravity to NorthWestGravity when USE_GTK.
633 (set_wm_state): New function.
31fd7c5c 634 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
635 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
636 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 637 or the case when no window manager is running. That means remove calls
3f1c6666
JD
638 to x_real_positions and x_fullscreen_adjust.
639
640 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
641 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
642 flush_and_sync.
643 (xg_height_changed): New function.
644 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
645 and gtk_window_set_policy. Set frame gravity after parsing the
646 geometry string.
3f1c6666
JD
647 (xg_update_frame_menubar, free_frame_menubar)
648 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
649 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
650 Remove calls to xg_frame_set_char_size.
651
fd503d99
KH
6522009-07-01 Kenichi Handa <handa@m17n.org>
653
654 * keyboard.c (decode_keyboard_code): New function.
655 (tty_read_avail_input): Decode the input bytes if necessary.
656
1ac9108a
SM
657 * coding.c (setup_coding_system):
658 Initialize coding->carryover_bytes to 0.
fd503d99
KH
659 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
660 use Qno_conversion.
661
24ed93fb
YM
6622009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
663
664 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
665
99061dfc
CY
6662009-06-30 Chong Yidong <cyd@stupidchicken.com>
667
1ac9108a 668 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 669
ff90fbde
JR
6702009-06-30 Jason Rumney <jasonr@gnu.org>
671
672 * w32term.c (w32_initialize): Use GetModuleHandle for library that
673 is already loaded.
674 Set user model ID if supported (bug#1849).
675
5f445726
JM
6762009-06-29 Jim Meyering <meyering@redhat.com>
677
678 Remove useless if-before-xfree test.
679 * nsfont.m (nsfont_close): Remove useless test.
680 * term.c (delete_tty): Likewise.
681 * w32.c (system_process_attributes): Likewise.
682 * w32font.c (w32font_close): Likewise.
683 * xfaces.c (x_free_gc): Likewise.
684 * xselect.c (buffer): Likewise.
685
b9607587
AS
6862009-06-28 Andreas Schwab <schwab@linux-m68k.org>
687
688 * process.c (send_process): Keep decoded string in a local
689 variable and protect it from GC. (Bug#3521)
690
89ba96f4
EZ
6912009-06-28 Eli Zaretskii <eliz@gnu.org>
692
693 * term.c (create_tty_output) [MSDOS]: #ifdef away.
694 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
695
098a1589
CY
6962009-06-28 Chong Yidong <cyd@stupidchicken.com>
697
485422be
CY
698 * xdisp.c (start_display, handle_face_prop)
699 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
700 (redisplay_window, try_window_id, produce_image_glyph):
701 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 702
098a1589
CY
703 * xterm.c (x_update_window_begin, x_new_focus_frame)
704 (x_scroll_bar_handle_click, handle_one_xevent)
705 (handle_one_xevent, XTread_socket, x_focus_on_frame)
706 (x_make_frame_visible, x_make_frame_invisible)
707 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
708 code chunks that are now obsolete.
709
78c38319
MA
7102009-06-28 Michael Albinus <michael.albinus@gmx.de>
711
712 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
713 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
714 for hours, when optimzation is enabled.
715 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
716 (xd_read_message): Make them static.
717
4189ed40
CY
7182009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
719
720 * term.c (turn_on_face): Allow simultaneously bold and dim
721 terminal faces (Bug#3530).
722
cd9b5e16
CY
7232009-06-27 Chong Yidong <cyd@stupidchicken.com>
724
4e23bedb
CY
725 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
726
cd9b5e16
CY
727 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
728 truncation glyphs (Bug#3686).
729
07cc3c35
GM
7302009-06-27 Glenn Morris <rgm@gnu.org>
731
732 * m/pmax.h: Restore file, with only netbsd portions.
733
31fd7c5c 7342009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 735
cd9b5e16 736 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 737
42d4a64f
KH
7382009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
739
740 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
741 the arg FORCE_SYMBOL.
742
930fe55b 7432009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
744
745 * fontset.c (fontset_find_font): When a usable rfont_def is found
746 in a fallback font-group, make it the first element of the group.
747
57ebc3fd
CY
7482009-06-24 Chong Yidong <cyd@stupidchicken.com>
749
750 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
751
f084f942
KH
7522009-06-24 Kenichi Handa <handa@m17n.org>
753
754 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
755 set for C.
756 (fontset_font): Record the availability of a font for C both in
757 the realized fontsets of the current one and the default one.
758
2f686c87
DN
7592009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
760
761 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
762 conditional, it is always defined on AIX.
763
666e158e
MB
7642009-06-23 Miles Bader <miles@gnu.org>
765
766 * window.c (Vrecenter_redisplay): New variable.
767 (syms_of_window): Initialize it.
768 (Qtty): New extern declaration.
769 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
770
c6da7cd2
JM
7712009-06-23 Jim Meyering <meyering@redhat.com>
772
1ac9108a
SM
773 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
774 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 775 pointer dereferences are guaranteed to be valid.
c6da7cd2 776
678dca3d
KH
7772009-06-23 Kenichi Handa <handa@m17n.org>
778
74d75424
KH
779 * emacs.c (main): Call init_font ().
780
781 * font.h (Vfont_log): Extern it.
782 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
783
784 * font.c (font_sort_entities, font_list_entities)
785 (font_matching_entity, font_open_entity)
786 (font_close_object): Change font_add_log to FONT_ADD_LOG.
787 (Vfont_log): Delete static.
788 (font_log_env_checked): Delete this variable.
789 (font_add_log): Don't check font_log_env_checked.
790 (font_deferred_log): Check Vfont_log.
791 (init_font): New function.
792
678dca3d
KH
793 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
794
795 * w32font.c: Change font_add_log to FONT_ADD_LOG.
796
797 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
798
799 * xfont.c: Change font_add_log to FONT_ADD_LOG.
800
801 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
802 (face_for_char): Don't call font_deferred_log here.
803 (font_for_char): Likewise.
804
8a668709
CY
8052009-06-22 Chong Yidong <cyd@stupidchicken.com>
806
9a01ee33
CY
807 * w32term.c (x_draw_glyph_string): Use the glyph string's width
808 rather than its background_width for drawing the overline and
809 underline (Bug#489).
810
811 * xterm.c (x_draw_glyph_string): Use the glyph string's width
812 rather than its background_width for drawing the overline and
813 underline (Bug#489).
ec7c9926
CY
814 (xg_default_icon_file): New variable.
815 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
816 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 817
8a668709
CY
818 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
819 (load_overlay_strings): Remove externs.
820 (fast_find_position): Function deleted.
821 (mouse_face_from_buffer_pos): New function, based on
822 fast_find_position. Correctly handle before-strings,
823 display-strings, and after-strings (Bug#1220).
824 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
825
4d4c02d8
CY
8262009-06-21 Chong Yidong <cyd@stupidchicken.com>
827
1ac9108a 828 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
829 (move_it_in_display_line_to, move_it_in_display_line_to)
830 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
831
70243478
CY
8322009-06-21 Chong Yidong <cyd@stupidchicken.com>
833
834 * Branch for 23.1.
835
13087e59
JR
8362009-06-21 Jason Rumney <jasonr@gnu.org>
837
838 * w32term.c (keyboard_codepage): New static variable.
839 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
840 (w32_read_socket) [WM_CHAR]: Use it to decode character
841 input (bug#3237).
842 (w32_initialize): Initialize it.
843 (codepage_for_locale): New function.
844
4735b74e
KR
8452009-06-20 Ken Raeburn <raeburn@raeburn.org>
846
847 * process.c (status_message): Pass Faset index argument as a lisp
848 object, so as to work with USE_LISP_UNION_TYPE.
849
0e727afa
YM
8502009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
851
852 * coding.c (Ffind_coding_systems_region_internal):
853 Cache checked characters.
854
cf299835
KH
8552009-06-18 Kenichi Handa <handa@m17n.org>
856
1ac9108a 857 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 858
90f20d94
AS
8592009-06-18 Andreas Schwab <aschwab@redhat.com>
860
861 * xdisp.c (redisplay_internal): Check that the frame is still
862 live after redisplay of its windows.
863 (redisplay_windows): Check that the window is still live.
864
7f1faf1c
KH
8652009-06-17 Andreas Schwab <schwab@linux-m68k.org>
866
867 * coding.c (detect_coding_utf_16): Fix previous change.
868
cc13543e
KH
8692009-06-16 Kenichi Handa <handa@m17n.org>
870
871 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
872 UTF-16 by checking the dispersion of Eth and Oth bytes.
873
977b85f4
AS
8742009-06-15 Andreas Schwab <schwab@linux-m68k.org>
875
876 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
877
66bd43d1
KH
8782009-06-15 Kenichi Handa <handa@m17n.org>
879
880 * process.c (status_message): Fix previous change. Be sure to
881 decode a localized string.
882
cb5ca9c5
YM
8832009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
884
885 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
886 add comment explaining why.
887
ec7709ba 8882009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 889
ec7709ba 890 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 891
4b7f335c
AR
8922009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
893
894 * nsfont.m (ns_attribute_value): Remove.
895 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
896 (ns_has_attribute): Shrink the normal range.
897 (ns_findfonts): Don't worry about requested spec in determining
898 need for synthItal.
e41820ee 899 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 900
73b26103
SZ
9012009-06-14 Seiji Zenitani <zenitani@mac.com>
902
903 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
904
5753e4da
KH
9052009-06-11 Kenichi Handa <handa@m17n.org>
906
907 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
908 overhang for the static composition case.
909
3561b671
KH
9102009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
911
5753e4da
KH
912 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
913 overhang for the automatic composition case.
914
3561b671
KH
915 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
916 composition case.
917
852bbd41
CY
9182009-06-10 Chong Yidong <cyd@stupidchicken.com>
919
920 * xdisp.c (get_next_display_element): When handling wrap-prefix
921 and line-prefix, treat \n as a control character (bug#3502).
922
9903d1e6
KH
9232009-06-10 Kenichi Handa <handa@m17n.org>
924
925 * font.c (font_parse_family_registry): Fix for one-char foundry.
926 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
927
0bcbaaaa
CY
9282009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
929
930 * process.c (status_message): Fix handling of multibyte signal
931 string (Bug#3499).
932
40aa3f13
JM
9332009-06-09 Jim Meyering <meyering@redhat.com>
934
1f80c7e2
CY
935 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
936 color name is missing.
40aa3f13 937
72d51285
KH
9382009-06-09 Kenichi Handa <handa@m17n.org>
939
940 * charset.c (Fmap_charset_chars): In docstring, state clearly that
941 FROM-CODE and TO-CODE are codepoints of CHARSET.
942
c1d04d84
AR
9432009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
944
945 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
946
9472009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
948
949 Changes to support :script/:lang/:otf in NS font driver.
950 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
951 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
952 indicate not part of font driver interface, and change callers.
953 (ns_get_family): Remove pointless null check.
954 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
955 ns_spec_to_descriptor, ns_descriptor_to_entity.
956 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
957 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
958 (ns_spec_to_descriptor, ns_descriptor_to_entity)
959 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
960 (ns_get_req_script, ns_accumulate_script_ranges)
961 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
962 New functions.
963 (nsfont_list, nsfont_match): Use ns_findfonts.
964 (nsfont_open): Use font descriptor instead of traits.
965 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
966 (dump_glyphstring): Rename to ns_dump_glyphstring.
967
c7eb9816
AR
968 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
969
c1d04d84
AR
970 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
971
972 * fontset.c (fontset_from_font): Remove NS-specific code.
973
ec7709ba 9742009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
975
976 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
977 nonactive windows.
978
31fd7c5c 9792009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 980
1ac9108a 981 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 982
68852c13 9832009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
984
985 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
986
6756cd1d
CY
9872009-06-07 Chong Yidong <cyd@stupidchicken.com>
988
989 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
990 account for the overflowing of newlines into the last glyph on the
991 display line (Bug#3482).
992
28bf482a
DR
9932009-06-05 David Reitter <david.reitter@gmail.com>
994
ec7709ba
JB
995 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
996 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
997 Fns_selection_exists_p, Fns_selection_owner_p.
998
fdb55376
JR
9992009-06-03 Jason Rumney <jasonr@gnu.org>
1000
1001 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
1002 available. (Bug#3379)
1003
05129fbe
KH
10042009-05-29 Kenichi Handa <handa@m17n.org>
1005
1ac9108a
SM
1006 * coding.c (get_translation_table):
1007 Check Venable_character_translation.
05129fbe 1008
ec7709ba 10092009-05-26 David Reitter <david.reitter@gmail.com>
15891144 1010
ec7709ba
JB
1011 * nsterm.m (ns_raise_frame): Only raise frame if visible.
1012 (x_make_frame_visible): Move frame to front rather than calling
15891144 1013 ns_raise_frame().
ec7709ba 1014 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 1015 isn't key window.
ec7709ba 1016 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
1017 drawRect may be called by NSView even if the frame is hidden.
1018
ec7709ba
JB
1019 * nsfns.m (Fx_create_frame): Follow other ports in
1020 determining visibility; default to t. Ensure async_visible is set.
15891144 1021
21f73755
EZ
10222009-05-23 Eli Zaretskii <eliz@gnu.org>
1023
1024 * dired.c (Ffile_attributes): Doc fix.
1025
34001e41
CY
10262009-05-22 Chong Yidong <cyd@stupidchicken.com>
1027
1028 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
1029
46306a17
SM
10302009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
1031
1032 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
1033 and xfont_scratch_props.
1034 (syms_of_xfont): Do it here instead.
1035 (xfont_find_ccl_program): Delete, unused.
1036 (xfont_open): Delete unused var `i'.
1037
ef6e0694
KH
10382009-05-21 Kenichi Handa <handa@m17n.org>
1039
1040 * fontset.c (Qlatin): Don't make it static.
1041
46306a17
SM
1042 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
1043 New functions.
ef6e0694
KH
1044 (xfont_scripts_cache, xfont_scratch_props): New variables.
1045 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
1046 (xfont_list_pattern): Argument changed. Callers changed.
1047 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
1048 (xfont_list): Don't reject a font spec with :script property.
1049 (xfont_has_char): Fix setting of encoding.
1050 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
1051 xfont_scratch_props.
1052
10532009-05-19 Kenichi Handa <handa@m17n.org>
1054
46306a17 1055 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
1056 Callers changed.
1057
10582009-05-18 Kenichi Handa <handa@m17n.org>
1059
1060 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
1061
ac71ced7
SM
10622009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
1063
1064 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
1065 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
1066
1c6d1051
YM
10672009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1068
1069 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
1070 (x_delete_terminal): Dissociate resource database from display and
1071 then call XrmDestroyDatabase before closing display.
1072
9b9b779c
AR
10732009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1074
1075 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
1076 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
1077 whether selected frame is viable before raising it (based on patch
1078 by David Reitter), and improve commentary.
1079 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 1080
cccd42d5
KH
10812009-05-15 Kenichi Handa <handa@m17n.org>
1082
1083 * font.c (Ffont_spec): Check arguments.
1084
337fbd17
CY
10852009-05-14 Chong Yidong <cyd@stupidchicken.com>
1086
1087 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
1088 weight when testing attributes (Bug#3282).
1089
47a6002f
JD
10902009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1091
1092 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
1093 what we expect to get in the next ConfigureNotify event.
1094
9cb363db
YM
1095 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
1096 before Xft one (Bug#1696).
1097
b9126609
CY
10982009-05-07 David Reitter <david.reitter@gmail.com>
1099
1100 * nsfns.m (Fx_display_planes): Compute bitplanes using
1101 NSBitsPerPixelFromDepth (Bug#3207).
1102
27a69fd9
CY
11032009-05-10 Chong Yidong <cyd@stupidchicken.com>
1104
1105 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
1106
00f37552
TTN
11072009-05-10 Ulrich Mueller <ulm@gentoo.org>
1108
1109 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
1110
2d82a920
DR
11112009-05-07 David Reitter <david.reitter@gmail.com>
1112
ec7709ba
JB
1113 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
1114 Respect mouse face background.
2d82a920 1115
46b0d52d
DR
11162009-05-07 David Reitter <david.reitter@gmail.com>
1117
ec7709ba
JB
1118 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
1119 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
1120 in ns_update_begin and ns_update_end.
1121
ce1b23bb
SM
11222009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1123
5996e1b7
SM
1124 * nsfns.m (ns_get_screen): Rewrite.
1125 Don't presume selected-frame is of type `ns'.
1126
ba98e3a0
SM
1127 * font.c (font_update_drivers): Sanity fallback to avoid disabling
1128 all drivers.
1129
ce1b23bb
SM
1130 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
1131
bcda200f
YM
11322009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1133
1134 * keyboard.h (add_user_signal): Fix typo in extern.
1135
1136 * lisp.h (add_user_signal): Remove extern.
1137
1138 * unexelf.c (unexec): Consider a section to precede the .bss section
1139 if its addresses overlap that of .bss.
1140 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
1141 instead of dumping process.
1142
864660a2
SM
11432009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1144
1145 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
1146
50da4e56
SM
11472009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
1148
1149 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
1150
51520a1a
DN
11512009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1152
1153 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
1154 any statements.
1155
409ea3a1
AS
11562009-05-02 Andreas Schwab <schwab@linux-m68k.org>
1157
59c4c60f
AS
1158 * process.c (read_process_output): Make sure the current buffer is
1159 always restored.
1160
409ea3a1
AS
1161 * coding.c (record_conversion_result): Don't modify
1162 Vlast_code_conversion_error for successful result.
1163 (alloc_destination): Don't clobber conversion result. (Bug#1650)
1164
56f00ed2
KH
11652009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1166
1167 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 1168 (load_charset_map): Remove unnecessary code.
56f00ed2 1169
4491c9d2
DR
11702009-04-30 David Reitter <david.reitter@gmail.com>
1171
35f5b128 1172 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
1173 through f24.
1174
6970f632
CY
11752009-04-30 Chong Yidong <cyd@stupidchicken.com>
1176
1177 * xfaces.c (face_at_buffer_position): New arg base_face_id.
1178
1179 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
1180 face_at_buffer_position.
1181 (face_before_or_after_it_pos, get_next_display_element)
1182 (note_mouse_highlight): Update face_at_buffer_position call.
1183
1184 * term.c (term_mouse_highlight):
1185 * msdos.c (IT_note_mouse_highlight):
1186 * fontset.c (Finternal_char_font):
35f5b128 1187 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
1188
1189 * dispextern.h (face_at_buffer_position): Update prototype.
1190
0c616f63
KH
11912009-04-30 Kenichi Handa <handa@m17n.org>
1192
35f5b128 1193 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 1194
ad3aaf33
AS
11952009-04-29 Andreas Schwab <schwab@linux-m68k.org>
1196
1197 * callproc.c (Fcall_process): Fix GC protection. Make sure
1198 current buffer is always restored.
1199
c3c963a0
YM
12002009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1201
1202 * atimer.c (init_atimer): Also clear stopped_atimers.
1203
1204 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
1205
7e3386cb
YM
1206 * process.c (create_process): Clean up merger residues of
1207 2008-07-17 change.
1208
91f68422
CY
12092009-04-29 Ulrich Mueller <ulm@gentoo.org>
1210
1211 * lread.c (Vread_circle): New variable.
1212 (read1): Disable recursive read if Vread_circle is nil.
1213
24b34550
KH
12142009-04-29 Kenichi Handa <handa@m17n.org>
1215
1216 * fontset.h (set_default_ascii_font): Delete extern.
1217
1218 * fontset.c (set_default_ascii_font): Delete this unused function.
1219
1220 * frame.c (x_set_font): When ARG is a font-object, check if the
1221 font-object matches with the ASCII font-spec of the frame's
9c358bda 1222 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 1223
77bf07e1
AS
12242009-04-28 Andreas Schwab <schwab@linux-m68k.org>
1225
1226 * fns.c (Flocale_info): Protect vector from GC during decoding.
1227
1228 * process.c (Fstart_process): Protect argv strings from GC during
1229 encoding.
1230
2c55aacf
AS
12312009-04-27 Andreas Schwab <schwab@linux-m68k.org>
1232
1233 * sysdep.c: Include <ctype.h>.
1234
b892d3c9
DR
12352009-04-27 David Reitter <david.reitter@gmail.com>
1236
35f5b128 1237 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
1238 Remove commented-out code.
1239
9d0644c4
JB
12402009-04-26 Johan Bockgård <bojohan@gnu.org>
1241
1242 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1243
b7053016
JR
12442009-04-25 Jason Rumney <jasonr@gnu.org>
1245
1246 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
1247
4e8231f3
YM
12482009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1249
1250 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
1251 Swap bytes in short integer if fringe bitmap width > 8.
1252
493dcf2c
KH
12532009-04-23 Kenichi Handa <handa@m17n.org>
1254
1255 * xfaces.c (Fx_list_fonts): If a font size is specified in
1256 PATTERN, set it in returned scalable fonts.
1257
401e9e57
CY
12582009-04-22 Chong Yidong <cyd@stupidchicken.com>
1259
708e05dc
CY
1260 * keyboard.c (Fset_input_meta_mode): Doc fix.
1261
1262 * dispnew.c (Fsend_string_to_terminal): Doc fix.
1263
1ac9108a 1264 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
1265
1266 * coding.c (Fterminal_coding_system): Doc fix.
1267
1268 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
1269 (Fx_display_pixel_height, Fx_display_planes)
1270 (Fx_display_color_cells, Fx_server_max_request_size)
1271 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1272 (Fx_display_mm_height, Fx_display_mm_width)
1273 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
1274 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
1275 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
1276 (check_x_display_info): Handle terminal objects instead of
1277 terminal ids.
1278
401e9e57
CY
1279 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
1280 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
1281 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
1282 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 1283
df80c7f0
KH
12842009-04-21 Kenichi Handa <handa@m17n.org>
1285
5a8f12af 1286 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 1287 (font_score): Check AVGWIDTH too.
908567ef 1288
df80c7f0
KH
1289 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
1290 worst case.
1ac9108a
SM
1291 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
1292 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 1293
705af33f
JR
12942009-04-19 Jason Rumney <jasonr@gnu.org>
1295
1296 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 1297 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
1298
1299 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
1300 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
1301 get_phys_cursor_geometry.
1302
b71ac3dd 1303 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
1304 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
1305 using get_phys_cursor_geometry.
1306
1307 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
1308 correctly calculated.
1309
dc2933eb
JD
13102009-04-19 Jan Djärv <jan.h.d@swipnet.se>
1311
1ac9108a
SM
1312 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
1313 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
1314 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
1315 is deprecated.
1316
973e7849
AS
13172009-04-18 Andreas Schwab <schwab@linux-m68k.org>
1318
1319 * font.c (font_put_frame_data): Use xfree instead of free.
1320
314d66f4
JB
13212009-04-17 Juanma Barranquero <lekktu@gmail.com>
1322
1323 * w32font.c (Qja, Qko): Remove declarations.
1324 (syms_of_w32font): Don't DEFSYM them.
1325
cf702558
CY
13262009-04-17 Chong Yidong <cyd@stupidchicken.com>
1327
1328 * font.c (Qja, Qko): Move definitions here from ftfont.c.
1329
1330 * font.h (Qja, Qko): Extern them.
1331
1332 * ftfont.c (Qja, Qko): Remove declarations.
1333
1334 * xfont.c (Qja, Qko): Remove declarations.
1335
b50504f5
KH
13362009-04-17 Kenichi Handa <handa@m17n.org>
1337
bde25748
KH
1338 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
1339 string from a vector to handle Latin-1 characters correctly.
1340
b50504f5
KH
1341 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
1342 entity even if the cache hits.
1343
f4646fff
AS
13442009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1345
1346 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 1347 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 1348
e7deaab0
AS
1349 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
1350 * lisp.h: Adjust prototypes.
1351
0a0e7d49
CY
13522009-04-16 Chong Yidong <cyd@stupidchicken.com>
1353
1354 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
1355 change (Bug#3003).
1356
3c908a57
KH
13572009-04-16 Kenichi Handa <handa@m17n.org>
1358
1ac9108a 1359 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
1360
1361 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
1362 adstyle.
1363
1364 * ftfont.c (Qja, Qko): Don't make them static.
1365 (enum ftfont_cache_for): New enum.
1366 (fc_charset_table): Undo the previous change.
1367 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
1368 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
1369 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
1370 non-scarable font, try to get AVERAGE_WIDTH.
1371 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
1372 Change ft_face_cache from a list of a hash-table. Don't check
1373 `ja' and `ko' adstyle here.
1374 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
1375 FTFONT_CACHE_FOR_CHARET.
1376 (ftfont_get_charset): Undo the previous change.
1ac9108a 1377 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
1378 (ftfont_close): Likewise.
1379 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
1380
1381 * font.c (font_sort_entites): Change the meaning of the arg
1382 BEST-ONLY. Don't optimize for VEC of lenght 1.
1383 (font_select_entity): Just return the value of font_sort_entites.
1384
1385 * xfaces.c (merge_face_vectors): Reflect font properties in
1386 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
1387 font_clear_prop if a face attribute doesn't change.
1388
3c908a57
KH
1389 * charset.h (charset_ksc5601): Extern it.
1390
1391 * charset.c (charset_ksc5601): New variable.
1392 (Fdefine_charset_internal): Set charset_ksc5601.
1393 (init_charset_once): Initialize charset_ksc5601 to -1.
1394
d65859c3
DN
13952009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1396
1397 * fileio.c (history_delete_duplicates): Remove unused declaration.
1398
1399 * callint.c (history_delete_duplicates): New declaration.
1400 (Fcall_interactively): Remove command history duplicates when
1401 history_delete_duplicates is true.
1402
3ba010e5
EZ
14032009-04-14 Eli Zaretskii <eliz@gnu.org>
1404
1405 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
1406
06f19b91
KH
14072009-04-14 Kenichi Handa <handa@m17n.org>
1408
1409 * font.c (Ffont_info): Fix docstring. Fix the second element of
1410 the returned value (bug#2949).
1411
2cce8bfc
CY
14122009-04-14 Chong Yidong <cyd@stupidchicken.com>
1413
1414 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
1415
d156542d
KH
14162009-04-14 Kenichi Handa <handa@m17n.org>
1417
1418 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
1419 encoding charset is ascii_compatible.
1420
1421 * charset.c (Fdefine_charset_internal): Make charset
1422 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
1423 code_offset is 0, and covers all ASCII characters.
1424
86fa089e
SM
14252009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1426
1427 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
1428 (ns_string_to_pasteboard_internal):
1429 * nsmenu.m (process_dialog):
1430 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
1431 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
1432 * lisp.h (Fx_load_color_file): Declare.
1433
a8a3728b
KH
14342009-04-13 Kenichi Handa <handa@m17n.org>
1435
1ac9108a 1436 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
1437 (font_select_entity): Suppress the code to optimize for the same
1438 kind of fonts.
1439 (font_load_for_lface): Get a font that supports at least ASCII
1440 characters.
1441
1442 * ftfont.c (Qja, Qko): New variables.
1443 (fc_charset_table): Delete uniquifier data for iso8859-1.
1444 (ftfont_get_latin1_charset): New function.
1445 (get_adstyle_property): New function.
1446 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
1447 bitmap fonts.
1448 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
1449 Delete iso-8859-1 range from the charset of fonts whose adstyle is
1450 `ko' or `ja'.
1451 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 1452 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
1453 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
1454 property.
1455 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
1456 (syms_of_ftfont): DEFSYM Qja and Qko.
1457
483670b5
KH
14582009-04-09 Kenichi Handa <handa@m17n.org>
1459
12b55765
KH
1460 * charset.c (map_charset_chars): For a charset of `superset'
1461 method, fix calculation of code range.
1462
483670b5
KH
1463 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
1464 from the list of extra properties.
1465 (font_clear_prop): Be sure to delete `:name' font property.
1466
57d3b93b
KH
14672009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1468
b4b2c2ca
YM
1469 * dispnew.c (redraw_overlapping_rows): Fix detection of
1470 overlapping for topmost and bottommost rows.
1471
1ac9108a 1472 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 1473
472c3609
JR
14742009-04-06 Jason Rumney <jasonr@gnu.org>
1475
1476 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
1477
ab193662
KH
14782009-04-06 Kenichi Handa <handa@m17n.org>
1479
1480 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
1481
1482 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
1483
0c26f026
KH
14842009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1485
1486 * ftfont.c (ftfont_open): Fix checking of the return value of
1487 FT_Load_Char. Fix setting font->underline_thickness.
1488
e173bbce
CY
14892009-04-04 Chong Yidong <cyd@stupidchicken.com>
1490
1491 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
1492 (Fterminal_parameters, Fterminal_parameter)
1493 (Fset_terminal_parameter): In doc string, refer to terminal
1494 objects rather than terminal ids.
1495
693a2698
EZ
14962009-04-04 Eli Zaretskii <eliz@gnu.org>
1497
1498 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
1499 ret_lim_data. (Bug#2867)
1500
d5221487
CY
15012009-04-03 Chong Yidong <cyd@stupidchicken.com>
1502
1503 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
1504 so they don't get wider than the window, matching 2006-01-23
1505 change to the partner function in xdisp.c (Bug#2800).
1506
223509a3
KH
15072009-04-03 Kenichi Handa <handa@m17n.org>
1508
1509 * print.c (print_object): Make each lowest sub_char_table start a
1510 new line (Bug#2866).
1511
74fcd0b1
KH
15122009-04-02 Kenichi Handa <handa@m17n.org>
1513
1514 * fontset.c (fontset_font): Record no-font when a fontset
1515 explicitly tells not to try another font-specs.
1516
c542407d
SM
15172009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
1518
1519 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
1520
e3869731
KH
15212009-03-30 Kenichi Handa <handa@m17n.org>
1522
d8d2f142
KH
1523 * fontset.c (fontset_from_font): Specify only registry in a
1524 font-spec for all characters supported by that registry.
1525
e3869731
KH
1526 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
1527 even if HAVE_M17N_FLT is not defined.
1528
5da5f805
CY
15292009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
1530
1531 * ftfont.c: Conditionalize prototyping and use of
1532 ftfont_variation_glyphs.
1533
ab226c50
SM
15342009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1535
9628fed7
SM
1536 * frame.c (delete_frame): Work around compiler bug.
1537
1538 * editfns.c (general_insert_function): Adjust to insdel.c changes.
1539 * insdel.c (prepare_to_modify_buffer, signal_before_change):
1540 Some more EMACS_INT.
1541 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
1542
1543 * xdisp.c (dump_glyph): Fix typo.
1544
ae19ba7c
SM
1545 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
1546 (adjust_markers_gap_motion, adjust_markers_for_delete)
1547 (adjust_markers_for_insert, adjust_point)
1548 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
1549 (make_gap, copy_text, count_size_as_multibyte, insert)
1550 (insert_and_inherit, insert_before_markers)
1551 (insert_before_markers_and_inherit, insert_1)
1552 (count_combining_before, count_combining_after, insert_1_both)
1553 (insert_from_string, insert_from_string_before_markers)
1554 (insert_from_string_1, insert_from_gap, insert_from_buffer)
1555 (insert_from_buffer_1, adjust_after_replace)
1556 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
1557 (replace_range_2, del_range, del_range_1, del_range_byte)
1558 (del_range_both, del_range_2, modify_region)
1559 (prepare_to_modify_buffer, signal_before_change)
1560 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
1561 for buffer positions and sizes.
1562 * lisp.h: Adjust prototypes accordingly.
1563
1564 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
1565 (non_regular_inserted, non_regular_nbytes, read_non_regular)
1566 (Finsert_file_contents): Use EMACS_INT for buffer positions.
1567
ab226c50
SM
1568 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
1569
46dfb8fb
JD
15702009-03-27 Jan Djärv <jan.h.d@swipnet.se>
1571
1572 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
1573 lines and columns so we keep the same pixel height and width.
1574
1575 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
1576 the property _NET_WM_STATE has changed.
46dfb8fb
JD
1577 (x_handle_net_wm_state): New function to update frame parameter
1578 fullscreen.
1579 (x_term_init): Initialize atoms for _NET_WM_STATE.
1580
1581 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
1582
d347e494
SM
15832009-03-27 Kevin Ryde <user42@zip.com.au>
1584
1585 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
1586 Gpm_GetEvent as an error that justifies closing the filedescriptor.
1587 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
1588 (Fgpm_mouse_stop): Pass that new parameter.
1589 * termhooks.h (close_gpm): Adjust prototype.
1590
84db11d6
SM
15912009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
1592
c95a5008
SM
1593 * lisp.h (Fx_focus_frame): Declare.
1594
84db11d6
SM
1595 * callint.c (Fcall_interactively): For '^' just delegate the work to
1596 handle-shift-selection.
1597 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
1598
0a1958d6
CY
15992009-03-24 Chong Yidong <cyd@stupidchicken.com>
1600
0bfdff23
CY
1601 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
1602
0a1958d6
CY
1603 * data.c (Qinteractive_form): New variable.
1604 (Finteractive_form): Use it.
1605
1606 * eval.c (Fcommandp): Use Qinteractive_form.
1607
58aec0d6
JR
16082009-03-24 Jason Rumney <jasonr@gnu.org>
1609
1610 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
1611 Calculate total size precisely. Decode environment variables
1612 before substituting. (Bug#38)
1613
553dd618
KH
16142009-03-24 Kenichi Handa <handa@m17n.org>
1615
1616 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 1617 encoding (Bug#2722).
553dd618 1618
c39ea606
JD
16192009-03-23 Jan Djärv <jan.h.d@swipnet.se>
1620
1621 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
1622 that gdpy is set.
1623
bc9b2b5e
AM
16242009-03-22 Alan Mackenzie <acm@muc.de>
1625
1626 * callint.c (Finteractive): Clarify the doc string - even
1627 promptless elements need \n separators.
1628
9f995a76
JR
16292009-03-22 Jason Rumney <jasonr@gnu.org>
1630
1631 * w32term.c (syms_of_w32term): Doc fix for
1632 x-use-underline-position-properties.
1633
22749e9a
EZ
16342009-03-21 Eli Zaretskii <eliz@gnu.org>
1635
1636 * w32.c (getpwuid): Change argument type to unsigned.
1637 (struct w32_id): Change type of `rid' member to unsigned.
1638 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
1639 argument ID to unsigned. All callers changed.
1640 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
1641
e00553bf
EZ
16422009-03-20 Eli Zaretskii <eliz@gnu.org>
1643
1644 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
1645 negative, produce a float value.
1646
1647 * dired.c (make_uid, make_gid): New functions.
1648 (Ffile_attributes): Use them to avoid negative UID and GID.
1649
f761d6b6
JB
16502009-03-20 Juanma Barranquero <lekktu@gmail.com>
1651
1652 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
1653 (syms_of_keyboard) <command-hook-internal, input-method-function>:
1654 Fix typos in docstrings.
1655
d507f8d7
KH
16562009-03-19 Kenichi Handa <handa@m17n.org>
1657
1658 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
1659 changed, use font_load_for_lface to get a new font object.
1660 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
1661
1662 * frame.c (x_set_font): Handle the case that ARG is a cons.
1663
c68845e0
GM
16642009-03-19 Glenn Morris <rgm@gnu.org>
1665
1666 * fileio.c (Fsubstitute_in_file_name): Doc fix.
1667
bfa49dd1
CY
16682009-03-19 Chong Yidong <cyd@stupidchicken.com>
1669
1670 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
1671
8458d4c1
KH
16722009-03-19 Kenichi Handa <handa@m17n.org>
1673
1674 * charset.c (load_charset_map_from_file): When a mapfile can't be
1675 loaded, signal an error.
1676
78e7d1fe
EZ
16772009-03-18 Eli Zaretskii <eliz@gnu.org>
1678
1679 * dired.c (Ffile_attributes): Make sure UID and GID are always
1680 positive, even if the value is too large for a positive EMACS_INT.
1681 Doc fix.
1682
1683 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
1684
5da9fdfa
YM
16852009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1686
1687 * xmenu.c (xdialog_show): Move Fredisplay call ...
1688 (Fx_popup_dialog): ... here.
1689
7519c40d
SM
16902009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
1691
1692 * dired.c (file_name_completion): Disable the first optimization just
1693 installed, since it is not implemented correctly.
1694
2cd298e2
SM
16952009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1696
1697 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 1698 only if the entry can affect bestmatch.
2cd298e2
SM
1699 Stop the search early, as Ftry_completion already does.
1700
48d37adf
CY
17012009-03-17 Chong Yidong <cyd@stupidchicken.com>
1702
e10c9c93 1703 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 1704
9286b16a
CY
17052009-03-15 Chong Yidong <cyd@stupidchicken.com>
1706
1707 * keyboard.c (parse_menu_item): Don't display remappings as menu
1708 equivalent bindings (Bug#788).
1709
f7b146dc
JR
17102009-03-15 Jason Rumney <jasonr@gnu.org>
1711
1712 * w32term.h (WM_EMACS_PAINT): New message.
1713 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
1714 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
1715 before passing to lisp thread. (Bug#950)
1716
f761d6b6 17172009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 1718
d93f9575
CY
1719 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
1720 variable as it was never reset.
1721 (ns_term_init): Remove initialization of Lisp-settable defaults
1722 and ns_expand_space.
1723 (-setPanelFromDefaultValues): Remove ns_expand_space.
1724 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
1725 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
1726 i.e. no additional spacing, similar to Carbon port.
1727
d93f9575
CY
1728 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
1729 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 1730
305018ec
JD
17312009-03-14 Jan Djärv <jan.h.d@swipnet.se>
1732
1733 * sound.c (alsa_configure): Remove call to deprecated
1734 snd_pcm_sw_params_set_xfer_align.
1735
f761d6b6 17362009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
1737
1738 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
1739 after clicking in a detached tool bar.
1740 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
1741
46e722a9
SM
17422009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
1743
348db3dd
SM
1744 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
1745 int/Lisp_Object mixup).
46e722a9 1746
a3d16f39
KH
17472009-03-13 Kenichi Handa <handa@m17n.org>
1748
1749 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 1750 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
1751 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
1752 (set_fontset_font): Change ARG to a vector. Handle range_list in
1753 ARG correctly.
1754 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 1755 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
1756 the above change.
1757 (fontset_from_font): Fix previous change.
fe24f56a 1758 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
1759 entry. If FONTSET is the default fontset, don't set the extra
1760 slot of the returning char-table.
1761
b066e6b6
JB
17622009-03-12 Juanma Barranquero <lekktu@gmail.com>
1763
1764 * nsfns.m (Fx_close_connection): Doc fix.
1765 (Fns_do_applescript): Reflow docstring.
1766 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
1767 (Fx_display_pixel_width, Fx_display_pixel_height)
1768 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
1769 Fix typos in docstrings.
1770 (Fns_set_alpha): Fix typos in error messages.
1771
d472514e 17722009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 1773
d472514e 1774 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
1775 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
1776 were used for such events.
1777
d472514e
JB
1778 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
1779 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 1780
d472514e 1781 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
1782 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
1783
fb930676
KH
17842009-03-11 Kenichi Handa <handa@m17n.org>
1785
ff85581a
KH
1786 * font.h (font_open_by_spec): Extern it.
1787
c50b7e98
KH
1788 * font.c (font_open_by_spec): New function.
1789 (font_open_by_name): Use font_open_by_spec.
1790
fb930676
KH
1791 * frame.c (x_set_font): When ARG is a font-object, don't alter the
1792 fontset of the frame.
1793
1794 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
1795 modify the default font of frames that use this fontset.
1796 (num_auto_fontsets): New variable.
1797 (fontset_from_font): Use num_auto_fontsets to decide a fontset
1798 name. Be sure to set FONTSET_ASCII to the correct font name.
1799 (update_auto_fontset_alist): New function.
1800
df4e8455
JB
18012009-03-11 Juanma Barranquero <lekktu@gmail.com>
1802
1803 * makefile.w32-in: Update dependencies.
1804
0a375797
AR
18052009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1806
1807 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
1808
61313fa3
SM
18092009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1810
1811 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
1812
b55103fb
CY
18132009-03-10 Chong Yidong <cyd@stupidchicken.com>
1814
1815 * lread.c (Feval_buffer): Doc fix.
1816
dde2559c
KH
18172009-03-09 Kenichi Handa <handa@m17n.org>
1818
1819 * charset.c (Qfile_name_handler_alist): Extern it.
1820 (load_charset_map_from_file): Temporarily bind
1821 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
1822
df4e8455 18232009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 1824
47f588bb
GM
1825 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
1826 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 1827
4ddf94bd
AR
18282009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1829
4c9bdfc2
AR
1830 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
1831 (x_set_window_size): Change back to calculated method of setting
1832 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
1833 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
1834 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
1835
fe41ae9e
AR
1836 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
1837
4c9bdfc2
AR
1838 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
1839 accelerator in parens under GNUstep.
1840
825d0875
KH
18412009-03-06 Kenichi Handa <handa@m17n.org>
1842
1843 These changes are to detect incorrect composition sequence without
f3b3be74 1844 looking ahead the source. (Bug#2370)
825d0875
KH
1845
1846 * coding.h: Include "composite.h".
1847 (enum compisition_state): New enum.
1848 (struct compisition_status): New struct.
1849 (struct iso_2022_spec): New member cmp_status.
1850 (struct emacs_mule_spec): New struct.
1851 (struct coding_system): New members ctext_extended_segment_len and
1852 embedded_utf_8. Change the union member
1853 spec.emacs_mule_full_support to spec.emacs_mule.
1854
1855 * coding.c (CODING_ISO_CMP_STATUS): New macro.
1856 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 1857 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
1858 (ADD_COMPOSITION_DATA): New arg nbytes.
1859 (emacs_mule_char): New arg cmp_status.
1860 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
1861 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
1862 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
1863 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
1864 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
1865 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
1866 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
1867 (EMACS_MULE_COMPOSITION_END): New macro.
1868 (emacs_mule_finish_composition): New function.
1869 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
1870 (decode_coding_emacs_mule): Avoid long looking ahead while
1871 handling composition.
1872 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
1873 (ENCODE_COMPOSITION_RULE): New macro.
1874 (finish_composition): New function.
1875 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
1876 (DECODE_COMPOSITION_START): New implementation.
1877 (DECODE_COMPOSITION_END): Likewise.
1878 (STORE_COMPOSITION_RULE): New macro.
1879 (decode_coding_iso_2022): Avoid long looking ahead while handling
1880 composition, CTEXT extended segment, and embedded UTF-8.
1881 (setup_coding_system): For a coding of type iso-2022, reset
1882 CODING_ISO_EXTSEGMENT_LEN (coding) and
1883 CODING_ISO_EMBEDDED_UTF_8 (coding).
1884 (get_translation): Delete arguments last_block, from_nchars,
1885 to_nchars. Callers changed.
1886 (produce_chars): Don't modify charbuf. Adjusted for the change of
1887 get_translation.
98a326f7 1888 (produce_composition): Adjust for the new annotation sequence.
825d0875 1889 (handle_composition_annotation): Likewise.
98a326f7 1890 (consume_chars): Adjust for the change of get_translation.
825d0875 1891
ccbc4452
AR
18922009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
1893
4ddf94bd 1894 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 1895
988a7ddb
KH
18962009-03-05 Kenichi Handa <handa@m17n.org>
1897
1898 * font.c (font_select_entity): New function.
1899 (font_find_for_lface): Use font_select_entity to select a font.
1900
1901 * fontset.c (fontset_find_font): If a font found without
a8a3728b 1902 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
1903 font with C restriction.
1904
98a326f7 19052009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 1906
be1bce46 1907 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 1908
10ea2b82
JR
19092009-03-04 Jason Rumney <jasonr@gnu.org>
1910
2c93b248 1911 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 1912 characters that have already been read. (Bug#2569)
2c93b248 1913
10ea2b82
JR
1914 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
1915 Log an error message if check_image_size failed.
1916 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 1917 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 1918
71a0c011
EZ
19192009-03-02 Eli Zaretskii <eliz@gnu.org>
1920
1921 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
1922 when decoding process output.
1923
2f63bba8
RS
19242009-03-01 Richard M Stallman <rms@gnu.org>
1925
1926 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
1927
1928 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
1929
0a9564cb
EZ
19302009-02-28 Eli Zaretskii <eliz@gnu.org>
1931
1932 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
1933 (decode_coding_emacs_mule, decode_coding_iso_2022)
1934 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
1935 (decode_coding_raw_text, decode_coding_charset)
1936 (setup_coding_system, decode_eol, decode_coding, consume_chars):
1937 Honor inhibit-eol-conversion. (Bug #2186)
1938
449148b3
JR
19392009-02-28 Jason Rumney <jasonr@gnu.org>
1940
1941 * coding.c (detect_coding_charset): If not checking latin extra,
1942 fail on characters between 0x80 and 0xA0. (Bug#2354)
1943
a4aee864
EZ
19442009-02-28 Eli Zaretskii <eliz@gnu.org>
1945
1946 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 1947 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 1948
d88bee5a
GM
19492009-02-27 Glenn Morris <rgm@gnu.org>
1950
1951 * callint.c (Finteractive): Doc fix.
1952
a808f22d
KH
19532009-02-27 Kenichi Handa <handa@m17n.org>
1954
1955 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
1956
caf8d60c
CY
19572009-02-27 Chong Yidong <cyd@stupidchicken.com>
1958
1959 * font.c (font_style_to_value): Set value for unknown symbols to
1960 100 instead of 255.
b61137ea
CY
1961 (weight_table, slant_table, width_table): Treat "unspecified" as
1962 the default value.
caf8d60c 1963
1a0de25c
JB
19642009-02-26 Juanma Barranquero <lekktu@gmail.com>
1965
1966 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
1967
8fc45744
JB
19682009-02-25 Juanma Barranquero <lekktu@gmail.com>
1969
107bd7d1
JB
1970 * lread.c (Fload): Stop checking Vloads_in_progress and signal
1971 error as soon as a recursive load is detected.
8fc45744 1972
f097e223
AR
19732009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1974
1975 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
1976 before caching.
1977
8810a12f
KH
19782009-02-24 Kenichi Handa <handa@m17n.org>
1979
1980 * fontset.c (fontset_find_font): Fix the condition for checking
1981 unavailable font.
1982
2c7d1565
GM
19832009-02-24 Glenn Morris <rgm@gnu.org>
1984
1985 * xfaces.c (Finternal_set_font_selection_order): Remove leading
1986 whitespace that confuses documentation.
1987
a20878b6
MB
19882009-02-23 Miles Bader <miles@gnu.org>
1989
1990 * process.c (Flist_system_processes, Fprocess_attributes)
1991 (syms_of_process): Rename `system-process-attributes' to
1992 `process-attributes'.
1993
b3b58c01
AS
19942009-02-22 Andreas Schwab <schwab@linux-m68k.org>
1995
1b3b981b
AS
1996 * coding.h (struct coding_system): Make safe_charsets a pointer to
1997 unsigned char.
1998 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
1999 being 255.
2000 (SAFE_CHARSET_P): Likewise.
2001 (setup_iso_safe_charsets): Properly setup safe_charsets.
2002 (Fdefine_coding_system_internal): Likewise.
2003 (setup_coding_system): Likewise. Remove unneeded casts.
2004 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
2005 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
2006 unneeded casts.
2007
b3b58c01
AS
2008 * insdel.c (del_range_2): Don't modify gap contents when called
2009 from decode_coding_object. (Bug#1809)
2010
0b6f228c
CY
20112009-02-21 Chong Yidong <cyd@stupidchicken.com>
2012
2013 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
2014 Qfont_object.
2015 (Ftype_of): Recognize font objects.
2016
2017 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
2018
2019 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
2020 moved to data.c.
2021
52f8870b
AR
20222009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2023
2024 * nsterm.m (x_make_frame_invisible): Unset async_visible,
2025 async_iconified. Based on a patch by Christian Lynbech
2026 <christian.lynbech@tieto.com>.
2027 (EmacsView-windowDidMiniaturize:): Unset async_visible.
2028
7087d5e9
GM
20292009-02-20 Glenn Morris <rgm@gnu.org>
2030
2031 * syntax.c (Fskip_chars_forward): Fix doc typo.
2032
41d2ceef
CY
20332009-02-20 Chong Yidong <cyd@stupidchicken.com>
2034
2035 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
2036
1a3b7ca6
CY
20372009-02-19 Chong Yidong <cyd@stupidchicken.com>
2038
2039 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
2040
73cce38d
KH
20412009-02-19 Kenichi Handa <handa@m17n.org>
2042
2043 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 2044 Don't overflow coding->carryover. (Bug#2370)
73cce38d 2045
a51092ee
DN
20462009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
2047
2048 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
2049
c423ecca
KH
20502009-02-18 Kenichi Handa <handa@m17n.org>
2051
2052 * font.c (font_check_otf_features): Fix handling of `nil' element.
2053 (Ffont_spec): Describe :lang and :otf in the docstring.
2054
4c1958f4
AS
20552009-02-16 Andreas Schwab <schwab@suse.de>
2056
2057 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
2058 string.
2059
5704f39a
KH
20602009-02-16 Kenichi Handa <handa@m17n.org>
2061
2062 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 2063 (Bug#1723)
5704f39a 2064
8f0085aa
CY
20652009-02-14 Chong Yidong <cyd@stupidchicken.com>
2066
a057d86a 2067 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
2068
2069 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
2070 (handle_line_prefix): Suppress wrapping of wrap prefixes.
2071
aff01dd9
EZ
20722009-02-14 Eli Zaretskii <eliz@gnu.org>
2073
2074 * msdos.c (MAX_SCREEN_BUF): New macro.
2075 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
2076 Encode the entire run of glyphs sharing the same face, instead of
2077 doing that one glyph at a time (fixes a bug with displaying
2078 double-size characters).
2079
ba301db3
AR
20802009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
2081
2082 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
2083
2084 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
2085 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 2086 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
2087
2088 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 2089 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 2090
51d861de
SM
20912009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
2092
2093 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
2094 invisible areas.
2095
7fed8996
JR
20962009-02-12 Jason Rumney <jasonr@gnu.org>
2097
631ea4fb
JR
2098 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
2099 (add_font_entity_to_list): Call check_face_name even when family
2100 is unspecified.
2101
cb4a3e42
JR
2102 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2103 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 2104 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 2105
7fed8996 2106 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 2107 raster fonts. (Bug#2219)
7fed8996 2108
895416e3
KH
21092009-02-12 Kenichi Handa <handa@m17n.org>
2110
2111 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
2112 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
2113 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 2114 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2115 (find_automatic_composition): While looking forward and backward,
2116 check static composition. Fix where to stop looking forward.
2117 (composition_adjust_point): Fix checking of static composition.
2118 (Fcomposition_get_gstring): Pay attention to
1dacf998 2119 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2120
2121 * lisp.h (fast_looking_at): Extern it.
2122
2123 * search.c (fast_looking_at): New function.
2124
51d861de 2125 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
2126 <struct glyph>.u.cmp.to.
2127 (append_composite_glyph): Likewise.
2128
51d861de 2129 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
2130 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
2131 composition.
51d861de 2132 (append_composite_glyph): Adjust for the change of
895416e3
KH
2133 <strcut glyph>.u.cmp.to.
2134
8510724d
JB
21352009-02-11 Juanma Barranquero <lekktu@gmail.com>
2136
2137 * casetab.c (init_casetab_once):
2138 * coding.c (ALLOC_CONVERSION_WORK_AREA):
2139 * font.c (font_update_lface):
2140 * fontset.c (Fnew_fontset):
2141 * ftfont.c (ftfont_drive_otf):
2142 * xfont.c (xfont_open):
2143 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
2144
294fa707
SM
21452009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
2146
2147 * fileio.c (Fwrite_region): !NILP -> CONSP.
2148
b5bfebec
AS
21492009-02-10 Andreas Schwab <schwab@suse.de>
2150
2151 * process.c (send_process): Properly relocate pointer into data
adab88bd 2152 when using encoded data. (Bug#2272)
b5bfebec 2153
cb84a2be
KH
21542009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
2155
2156 * coding.c (detect_coding_charset): Fix previous change.
2157
89e09428
JR
21582009-02-08 Jason Rumney <jasonr@gnu.org>
2159
2160 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 2161 disappeared while hourglass was displayed. (Bug #2193)
89e09428 2162
4470a277
AS
21632009-02-07 Andreas Schwab <schwab@suse.de>
2164
2165 * unexelf.c (unexec): Fix error message.
2166
3175b12a
AR
21672009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
2168
2169 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 2170 when modal window is active. (Bug #2152)
3175b12a
AR
2171 (applicationShouldTerminate:): Remove now-unneeded while loop
2172 around NSRunAlertPanel.
2173
2174 * nsmenu.m (popupSession): New file-global variable.
2175 (pop_down_menu): End the popupSession before closing dialog.
2176 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
2177 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
2178 don't query NSApp for events (just sleep instead).
2179
8434d0b8
EZ
21802009-02-07 Eli Zaretskii <eliz@gnu.org>
2181
51d861de
SM
2182 * coding.c (syms_of_coding) <translation-table-for-input>:
2183 Modify doc string to discourage use for character code unification.
8434d0b8 2184
aa82edfd
CY
21852009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2186
2187 * atimer.c (run_timers): Update pending_atimers.
2188
2d283c7c
CY
21892009-02-06 Chong Yidong <cyd@stupidchicken.com>
2190
eb306cab
CY
2191 * image.c (svg_load_image): Fix last change.
2192
2d283c7c
CY
2193 * xfns.c (Fx_create_frame): Signal an error if no font is
2194 found (Bug#2147).
2195
4d8e170e
JB
21962009-02-05 Juanma Barranquero <lekktu@gmail.com>
2197
2198 * character.c (syms_of_character) <script-representative-chars>:
2199 Fix typo in docstring.
2200
c96169a0
AR
22012009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2202
2203 * nsmenu.m (pop_down_menu): New function.
2204 (ns_popup_dialog): Call it on unwind.
2205 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
2206 call timer_check() (Bug#2154).
2207 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
2208 handling_signal is set.
2209 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
2210
31fd7c5c 2211 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
2212
2213 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
2214
2215 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
2216
51d861de
SM
2217 * keyboard.c (poll_for_input_1, handle_async_input):
2218 Set handling_signal under HAVE_NS.
c96169a0 2219
aacd8ba1
GM
22202009-02-04 Glenn Morris <rgm@gnu.org>
2221
2222 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
2223
4cb75c4b
KH
22242009-02-04 Kenichi Handa <handa@m17n.org>
2225
2226 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
2227
2228 * charset.c (Fchar_charset): New optional arg restriction.
2229
2230 * coding.h (coding_system_charset_list): Extern it.
2231
2232 * coding.c (coding_system_charset_list): New function.
2233
2234 * composite.c: Include coding.h and termhooks.h.
2235 (composition_gstring_p): Fix for the terminal case.
2236 (composition_gstring_width): Likewise.
2237 (fill_gstring_body): Likewise.
2238 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
2239 the frame.
2240 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
2241 is within a composition.
867d4bb3 2242 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
2243
2244 * term.c (encode_terminal_code): Fix handling of composition.
2245 (produce_composite_glyph): For static composition, get pixel_width
2246 from struct composition.
2247
826ba17e
AS
22482009-02-02 Andreas Schwab <schwab@suse.de>
2249
2250 * unexelf.c (unexec): Handle unaligned bss offset.
2251
8ad093db
AR
22522009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2253
2254 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
2255 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 2256
8ad093db
AR
2257 * keyboard.c (handle_interrupt): Don't call
2258 quit_throw_to_read_char() under NS.
d0a76a6e 2259
8ad093db
AR
2260 * blockinput.h: Remove NS-specific code.
2261
4d18a7a2
DN
22622009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
2263
db878925
DN
2264 * dispnew.c (window_change_signal): Don't try to get the size of a
2265 suspended tty frame.
2266 * term.c (Fresume_tty): Resize if the size has changed while the
2267 tty was suspended.
2268
4d18a7a2
DN
2269 * alloc.c (mark_stack): Properly conditionalize previous change.
2270
8984df7c
JB
22712009-01-30 Juanma Barranquero <lekktu@gmail.com>
2272
2273 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
2274 * w32term.c (w32_read_socket) [SYNC_INPUT]:
2275 Remove; this code is not used on Windows.
2276
75f4f1ac
EZ
22772009-01-30 Eli Zaretskii <eliz@gnu.org>
2278
2279 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
2280 EOLs that also has stray ^M characters.
2281
07a1e794
JB
22822009-01-30 Juanma Barranquero <lekktu@gmail.com>
2283
2284 * atimer.c (run_timers, alarm_signal_handler):
2285 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
2286 * w32inevt.c (w32_console_read_socket):
2287 * w32term.c (w32_read_socket):
2288 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
2289
a8b11cc9
CY
22902009-01-30 Chong Yidong <cyd@stupidchicken.com>
2291
2292 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
2293 Initialize it as a relative filename pattern.
2294 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
2295 (Fcall_process_region): Simplify temp file creation using
2296 temporary-file-directory.
2297
c279587b
EZ
22982009-01-29 Eli Zaretskii <eliz@gnu.org>
2299
2300 * msdos.c: Rename pending_signals to msdos_pending_signals.
2301 (sig_suspender, sigprocmask): Adjust.
2302
a8fe3242
CY
23032009-01-29 Chong Yidong <cyd@stupidchicken.com>
2304
2305 * keyboard.c (pending_signals): New var.
2306 (poll_for_input, input_available_signal, init_keyboard): Set it.
2307 (process_pending_signals): New function.
2308
2309 * lisp.h (QUIT): Check pending_signals instead of
2310 interrupt_input_pending. Use process_pending_signals.
2311
51d861de 2312 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 2313
51d861de 2314 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
2315
2316 * sysdep.c (emacs_write): Use process_pending_signals.
2317
2318 * xterm.c (XTread_socket): Update pending_signals.
2319
2320 * w32term.c (w32_read_socket): Update pending_signals.
2321
2322 * w32inevt.c (w32_console_read_socket): Update pending_signals.
2323
6570a1c4
KH
23242009-01-29 Kenichi Handa <handa@m17n.org>
2325
2326 * xftfont.c (xftfont_has_char): New function.
2327 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
2328
d72a4afa
AR
23292009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2330
2331 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
2332 under GNUstep.
2333 (ns_query_color): New declaration.
2334
2335 * nsterm.m (ns_confirm_quit): New variable.
2336 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
2337 (EmacsApp-applicationShouldTerminate:): Use it.
2338 (EmacsPrefsController): Let user set it.
2339 (ns_query_color): New function.
2340 (ns_defined_color): Use it.
2341 (ns_initialize): Drop.
2342 (ns_term_init): Add two lines from ns_initialize(), and set
2343 input_interrupt_mode to nil.
2344
2345 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 2346 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 2347
9fe78804
KH
23482009-01-28 Kenichi Handa <handa@m17n.org>
2349
2350 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
2351 (fontset_get_font_group): Remember that no font-group is specified
2352 for C.
9fe78804 2353
fa57de36
CY
23542009-01-27 Chong Yidong <cyd@stupidchicken.com>
2355
930600e9
CY
2356 * fns.c (concat): Check for string overflow (bug#1787).
2357
fa57de36
CY
2358 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
2359 Quadruple undo limits (bug#1501).
2360
7179ce7b
KH
23612009-01-27 Kenichi Handa <handa@m17n.org>
2362
2363 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
2364 directly use GT_Get_Char_index.
2365
2366 * xftfont.c (struct xftfont_info): New member `index'.
2367
2368 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 2369 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 2370
5be8fcc0
CY
23712009-01-26 Kenichi Handa <handa@m17n.org>
2372
2373 * fontset.c (fontset_find_font): Fix handling of non-cons return
2374 value of fontset_get_font_group.
2375 (fontset_font): Revert last change.
2376
19ae3e61
JR
23772009-01-26 Jason Rumney <jasonr@gnu.org>
2378
2379 * w32font.c (w32font_list_internal): Return quickly if registry is
2380 unknown. Simplify final return.
2381 (add_font_entity_to_list): Break complex logic down into more
2382 manageable chunks. Move unknown registry check to
2383 w32font_list_internal.
2384
8612b71a
AR
23852009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
2386
2387 Changes to remove Feval calls from GUI under NS.
2388
d8038940
JB
2389 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
2390 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
2391 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
2392
2393 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
2394 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
2395 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
2396 instead of NON_ASCII_KEYSTROKE_EVENT.
2397 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
2398 (EmacsApp-applicationShouldTerminate:): Query user.
2399 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
2400 instead of Feval.
2401
2402 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
2403
2404 * keyboard.c (kbd_buffer_get_event): Check for it.
2405 (keys_of_keyboard): Define lispy keys for
2406 ns-put/unput-working-text.
2407
2408 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
2409 versions.
2410 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
2411
6288ae55
CY
24122009-01-25 Chong Yidong <cyd@stupidchicken.com>
2413
2414 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 2415 setting current_buffer directly. (Bug#2044)
6288ae55 2416
289e7f8f
CY
24172009-01-24 Chong Yidong <cyd@stupidchicken.com>
2418
5ce87308 2419 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 2420 any work. (Bug#1952, bug#1990).
5ce87308 2421
64cc3cf6 2422 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 2423
b3243e6f
AR
24242009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2425
2426 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
2427 (ns_no_defaults): New declaration.
2428 (main): Use it.
e0d2e69a 2429
d900b2af 2430 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 2431
d900b2af 2432 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 2433
d900b2af
AR
2434 * nsterm.m (ns_no_defaults): New variable.
2435 (ns_initialize): Don't read defaults when ns_no_defaults.
2436 (EmacsView-readSelectionFromPasteboard:)
2437 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 2438 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
2439 (ns_dumpglyphs_stretch): New function.
2440 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 2441 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 2442
e0d2e69a
AR
2443 * nsimage.m (setPixmapData:): Set to ignore image DPI.
2444
3ac71f5d
CY
24452009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
2446
2447 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
2448 call for Sparc64.
2449
3fe53a83
AR
24502009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2451
2452 * nsfns.m:
2453 * nsgui.h:
2454 * nsmenu.m:
2455 * nsselect.m:
2456 * nsterm.h:
2457 * nsterm.m: Remove '23' comments that indicated code added during
2458 update from emacs-20 -> emacs-23.
2459
10f87c6f 24602009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
2461
2462 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 2463 ns_alternate_modifier. (Bug#1217)
a3b53a85 2464
c7cef62d
AR
2465 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
2466 Display all shortcuts, including those w/o super modifier.
2467
575fb8bd
AR
2468 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
2469
918b848b
CY
24702009-01-22 Chong Yidong <cyd@stupidchicken.com>
2471
2472 * fileio.c (Vwrite_region_post_annotation_function)
2473 (Vwrite_region_annotation_buffers): New vars.
2474 (build_annotations_unwind): Just reset
2475 Vwrite_region_annotation_buffers.
2476 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
2477 Call write-region-post-annotation-function.
2478 (build_annotations): Add to Vwrite_region_annotation_buffers if
2479 buffer changes.
2480
a39e2539
AR
24812009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2482
2483 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
2484 Tiger.
51d861de
SM
2485 * nsfns.m (ns_do_applescript):
2486 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 2487
35ed44db
AR
24882009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
2489
2490 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
2491
cbe0b5bf
AR
24922009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2493
2494 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 2495
6049d3a0
AR
2496 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
2497
2498 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
2499 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
2500 handle Ctrl-tab. (Bug#1841)
2501 (ns_get_color): Use unsigned long long for scanned hex string value.
2502 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 2503 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 2504 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 2505 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 2506 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 2507 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 2508 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 2509
d3810c21 2510 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 2511 DPI. (Bug#1316)
d3810c21
AR
2512 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
2513 values in onTiger section.
4c7077c3 2514
e301e634
CY
25152009-01-19 Chong Yidong <cyd@stupidchicken.com>
2516
7f82490b
CY
2517 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
2518 Check return value of font_spec_from_name.
64cc3cf6 2519 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
2520
2521 * font.c (font_spec_from_name): Return Qnil if font name could not
2522 be parsed.
2523 (font_parse_name): Treat a `?' character as part of an XLFD.
2524
e301e634
CY
2525 * fns.c (Fsubstring): Doc fix.
2526
1c0db158
KH
25272009-01-19 Kenichi Handa <handa@m17n.org>
2528
51d861de 2529 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
2530 (ftfont_list): Likewise.
2531
acf20901
JB
25322009-01-18 Juanma Barranquero <lekktu@gmail.com>
2533
fff4e459
JB
2534 * dbusbind.c (Fdbus_register_signal):
2535 * process.c (conv_sockaddr_to_lisp):
2536 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
2537
acf20901
JB
2538 * callproc.c (Fgetenv_internal): Doc fix.
2539
e7abcdfb
CY
25402009-01-16 Chong Yidong <cyd@stupidchicken.com>
2541
2542 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
2543 it is not even used.
2544
b60861e6
GM
25452009-01-16 Glenn Morris <rgm@gnu.org>
2546
2547 * font.c (Ffont_variation_glyphs): Silence compiler.
2548
8db52afe
JB
25492009-01-15 Juanma Barranquero <lekktu@gmail.com>
2550
2551 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
2552 Reported by David Robinow <drobinow@gmail.com>.
2553
4cddb209
KH
25542009-01-15 Kenichi Handa <handa@m17n.org>
2555
51d861de 2556 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 2557
f247f67b
JR
25582009-01-14 Jason Rumney <jasonr@gnu.org>
2559
2560 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 2561 never a fontset. (Bug#1562)
f247f67b 2562
f56a4450
KH
25632009-01-14 Kenichi Handa <handa@m17n.org>
2564
2565 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 2566 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 2567
4e99855e
CY
25682009-01-13 Chong Yidong <cyd@stupidchicken.com>
2569
2570 * font.c (font_clear_prop): If clearing the family, clear the font
2571 width index too.
2572
fff4e459 2573 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 2574
24f01470
JB
25752009-01-12 Juanma Barranquero <lekktu@gmail.com>
2576
2577 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
2578 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
2579 functions, use sizeof.
2580
a41240a3
MR
25812009-01-12 Martin Rudalics <rudalics@gmx.at>
2582
2583 * keyboard.c (read_char): Fix case where last_nonmenu_event
2584 returned a bad value with submenus. (Bug#447)
2585
944636b8
CY
25862009-01-12 Chong Yidong <cyd@stupidchicken.com>
2587
2588 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
2589 family, clear the font width index too.
2590
0dad7c6f
JR
25912009-01-11 Jason Rumney <jasonr@gnu.org>
2592
2593 * keyboard.c (cmd_error_internal): Exit when errors occur before
2594 frame creation and not in daemon mode. (Bug#1836)
2595
7c2363af
CY
25962009-01-10 Chong Yidong <cyd@stupidchicken.com>
2597
2598 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
2599 of a display vector, backtrack.
2600 (try_window_reusing_current_matrix): Check glyph type before
2601 referencing charpos member.
2602
97b1b294
EZ
26032009-01-10 Eli Zaretskii <eliz@gnu.org>
2604
2605 Fix Bug #876:
2606
2607 * coding.c (inhibit_null_byte_detection): New variable.
2608 (detect_coding, detect_coding_system): Don't pay attention to null
2609 bytes if inhibit_null_byte_detection is non-zero.
51d861de 2610 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
2611 <inhibit-iso-escape-detection>: Doc fix.
2612
4624b6e3
JR
26132009-01-09 Jason Rumney <jasonr@gnu.org>
2614
2615 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 2616 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
2617 Only report Unicode Plane 2 fonts as unicode-sip.
2618
323b840c
CY
26192009-01-09 Chong Yidong <cyd@stupidchicken.com>
2620
51d861de
SM
2621 * xfaces.c (Fx_font_family_list): Delete function.
2622 Move compatibility version to faces.el.
323b840c 2623
51d861de 2624 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 2625
eba7400d
MR
26262009-01-09 Martin Rudalics <rudalics@gmx.at>
2627
2628 * frame.c (x_set_frame_parameters): Remember requested value for
2629 fullscreen before it's reset by the parameter handler.
2630
4b09796d
GM
26312009-01-09 Glenn Morris <rgm@gnu.org>
2632
2633 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 2634 (last_command_event): ... and update all users.
4b09796d
GM
2635 (last_input_char): For clarity, rename to...
2636 (last_input_event): ... and update all users.
2637 (last-command-char, last-input-char): Move to subr.el as aliases.
2638 * cmds.c, commands.h: Update for last_command_char rename.
2639
14ccea62
CY
26402009-01-08 Chong Yidong <cyd@stupidchicken.com>
2641
51d861de 2642 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 2643
5f004711
JR
26442009-01-08 Jason Rumney <jasonr@gnu.org>
2645
2646 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
2647 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
2648 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
2649 Don't declare.
fff4e459 2650 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
2651 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
2652
b71f6f73
KH
26532009-01-07 Kenichi Handa <handa@m17n.org>
2654
50b06221 2655 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 2656 remember the coding system used for decoding in
50b06221
KH
2657 coding_system (Bug#1039).
2658
b71f6f73 2659 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 2660 breaking the loop. (Bug#870)
b71f6f73
KH
2661 (decode_coding_utf_16, decode_coding_emacs_mule)
2662 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2663 (decode_coding_charset): Likewise.
2664
56f668f7
MR
26652009-01-05 Martin Rudalics <rudalics@gmx.at>
2666
2667 * frame.c (x_set_frame_parameters): Make sure height (width) get
2668 applied when fullwidth (fullheight) is set. (Bug#1522)
2669
5da9424d
JB
26702009-01-04 Juanma Barranquero <lekktu@gmail.com>
2671
2672 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
2673 (utc_base): Declare as ULONGLONG, not long double.
2674 (convert_time_raw): Delete.
2675 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
2676 (initialize_utc_base): New function.
2677 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
2678 (convert_from_time_t): Use initialize_utc_base; compute result with
2679 64-bit arithmetic.
2680 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
2681
c4605e09
EZ
26822009-01-03 Eli Zaretskii <eliz@gnu.org>
2683
9acef61c 2684 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
2685 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
2686 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
2687 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
2688 [!subprocesses]: Define.
2689 (syms_of_process) [!subprocesses]: Intern and staticpro them.
2690 (Flist_system_processes, Fsystem_process_attributes)
2691 [!subprocesses]: Call list_system_processes and
2692 system_process_attributes instead of returning Qnil.
2693
9acef61c
JB
2694 * dosfns.c (system_process_attributes, list_system_processes):
2695 New functions.
c4605e09
EZ
2696
2697 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
2698
2699 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
2700 Don't use the default (no-op) implementation.
2701
8b7d0a16
JR
27022009-01-03 Jason Rumney <jasonr@gnu.org>
2703
a6d46bc1
JR
2704 * keyboard.c (parse_modifiers_uncached): Wheel events are
2705 clicks (bug#687).
2706
8b7d0a16
JR
2707 * w32term.c (x_query_colors, x_query_color): New functions.
2708
2709 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
2710 (svg_load_image): Cast returned pointers from dynamically loaded
2711 functions. Eliminate W32 specific code.
2712
bfe11752
DN
27132009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
2714
89e2438a
DN
2715 * nsfns.m (x_set_foreground_color, x_set_background_color)
2716 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
2717 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
2718 x_ prefix instead of ns_. Update references.
2719 (syms_of_nsfns): Add a FIXME comment.
2720
2721 * nsterm.m (x_set_cursor_type): New prototype.
2722 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
2723
bfe11752
DN
2724 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
2725 for Solaris instead of incorrectly providing Qutime and Qcutime.
2726
031da700
EZ
27272009-01-02 Eli Zaretskii <eliz@gnu.org>
2728
2729 * w32.c (process_times): Compute sum of utime and stime.
2730 (system_process_attributes): Add Qtime to the alist.
2731
2732 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
2733 and add them to the alist.
2734
2735 * process.c (top level) <Qtime, Qctime>: New variables.
2736 (syms_of_process): staticpro them.
2737 (Fsystem_process_attributes): Add their documentation to the doc
2738 string.
2739
2740 * process.h: Declare Qtime and Qctime.
2741
df23bf08
JR
27422009-01-02 Jason Rumney <jasonr@gnu.org>
2743
9acef61c 2744 * image.c (Qgobject): New symbol.
df23bf08
JR
2745 (syms_of_image): Initialize it.
2746 (init_svg_functions): Load some functions from gobject library.
2747
5bbdf7aa
DN
27482009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
2749
2750 * frame.c (make_terminal_frame): Remove redundant code and useless
2751 block.
2752
63136da6
AS
27532009-01-01 Andreas Schwab <schwab@suse.de>
2754
2755 * process.c (conv_sockaddr_to_lisp): Add workaround for
2756 getsockname bug on BSD.
2757
9ef69046
CY
27582009-01-01 Chong Yidong <cyd@stupidchicken.com>
2759
d6fafbe0
CY
2760 * xfns.c (x_create_tip_frame): Set border width of the X window.
2761
51d861de 2762 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 2763
f9c34147
JR
27642009-01-01 Jason Rumney <jasonr@gnu.org>
2765
9acef61c 2766 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
2767 Don't block input, as per earlier xterm.c changes.
2768
f5497e45
AR
27692008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
2770
2771 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
2772 (ns_appkit_version_int): New function.
2773 (x-server-version): Use ns_appkit_version_int and follow 21+
2774 convention of returning 3 integers.
2775
c19cab20
KH
27762008-12-30 Kenichi Handa <handa@m17n.org>
2777
2778 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
2779 (CHAR_SURROGATE_PAIR_P): New macro.
2780
2781 * font.h (struct font_driver): New member get_variation_glyphs.
2782
9acef61c 2783 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
2784 (Ffont_variation_glyphs): New function.
2785 (syms_of_font): Defsubr it.
2786
2787 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
2788 ftfont_variation_glyphs.
2789 (setup_otf_gstring): New function.
2790 (ftfont_drive_otf): Use it.
2791 (ftfont_shape_by_flt): Handle variation selector.
2792 (ftfont_variation_glyphs): New function.
2793
28cd591f
MR
27942008-12-30 Martin Rudalics <rudalics@gmx.at>
2795
2796 * frame.c (Vemacs_iconified): Remove.
2797
7f714baf
JR
27982008-12-30 Jason Rumney <jasonr@gnu.org>
2799
2800 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 2801 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 2802
9d2d22ab
CY
28032008-12-30 Chong Yidong <cyd@stupidchicken.com>
2804
2805 * indent.c (Fvertical_motion): Don't advance iterator if we have
2806 reseated to the desired position.
2807
2808 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
2809 checking for pos match.
2810
545312c2
KH
28112008-12-30 Kenichi Handa <handa@m17n.org>
2812
1ede3eb6
KH
2813 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
2814 just get the low 8-bit of the code.
2815
545312c2
KH
2816 * font.c (font_intern_prop): Validate str as multibyte.
2817
bd7bbf29
DN
28182008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2819
31e0750e
DN
2820 * dispextern.h (struct face): Move lface and hash from the middle
2821 of bitfields.
2822
bd7bbf29
DN
2823 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
2824
b5672e7c
DN
28252008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2826
2827 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
2828 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
2829 instead of intervals.h.
2830
d704470f
AS
28312008-12-26 Andreas Schwab <schwab@suse.de>
2832
2833 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
2834 cons.
2835
54b33868
MR
28362008-12-26 Martin Rudalics <rudalics@gmx.at>
2837
2838 * textprop.c (Qminibuffer_prompt): New variable.
2839 (syms_of_textprop): Initialize it.
2840 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
2841 in minibuffer-prompt face. (Bug#1662)
2842
40b615d6
JR
28432008-12-25 Jason Rumney <jasonr@gnu.org>
2844
2845 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
2846
baae5c2d
JR
28472008-12-24 Jason Rumney <jasonr@gnu.org>
2848
2849 * ralloc.c (r_alloc_reset_variable): New function.
2850
2851 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 2852 record of what points where. (Bug#716)
baae5c2d 2853
a9051c88
DN
28542008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
2855
2856 * minibuf.c (read_minibuf): Follow the non-interactive case when
2857 running as a daemon, before detaching.
2858
8b146312
AS
28592008-12-22 Andreas Schwab <schwab@suse.de>
2860
2861 * buffer.c (init_buffer): Use realloc instead of xrealloc.
2862 * gtkutil.c (free_widget_value): Use xfree instead of free.
2863
56f2de10
MR
28642008-12-22 Martin Rudalics <rudalics@gmx.at>
2865
2866 * frame.c (delete_frame): New function derived from
2867 Fdelete_frame to handle Qnoelisp value for FORCE argument.
2868 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
2869 (Fdelete_frame): Call delete_frame. Remove line from doc-string
2870 saying that FORCE non-nil doesn't run `delete-frame-functions'.
2871 * frame.h: Extern delete_frame.
2872 * window.c (window_loop):
2873 * terminal.c (delete_terminal):
2874 * xterm.c (x_connection_closed):
2875 * xfns.c (Fx_hide_tip):
9acef61c 2876 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 2877
1fc200d6
JR
28782008-12-21 Jason Rumney <jasonr@gnu.org>
2879
2880 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
2881 when character maps to .notdef character.
2882
5e252df2
SM
28832008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
2884
2885 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
2886
99b72cc4
JR
28872008-12-20 Jason Rumney <jasonr@gnu.org>
2888
2889 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 2890 a graphical frame on Windows. (Bug#1325)
99b72cc4 2891
acc49a52
JD
28922008-12-20 Jan Djärv <jan.h.d@swipnet.se>
2893
2894 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
2895
6ea15123
CY
28962008-12-20 Chong Yidong <cyd@stupidchicken.com>
2897
2898 * minibuf.c (Fread_buffer): Doc fix.
2899
b2dab6c8
JR
29002008-12-20 Jason Rumney <jasonr@gnu.org>
2901
54ea0c87 2902 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 2903 server name in UNC paths. (Bug#719)
54ea0c87 2904
b2dab6c8 2905 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 2906 charbuf. (Bug#1035)
b2dab6c8 2907
6d1921be
DN
29082008-12-19 Daniel Engeler <engeler@gmail.com>
2909
2910 * sysdep.c (serial_configure): Fix typo.
2911
53934c98
DN
29122008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2913
2914 * sysdep.c: Include alloca.h.
f4f634e8
DN
2915 (system_process_attributes): Add implementation for Solaris.
2916
2917 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 2918
06e111a6
DN
29192008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2920
2921 Reorganize implementation of Flist_system_processes and
2922 Fsystem_process_attributes. No functional changes.
2923 * process.c: Don't #include pwd.h, grp.h and limits.h.
2924 (Flist_system_processes): Just call list_system_processes.
2925 (Fsystem_process_attributes): Just call system_process_attributes.
2926 (procfs_list_system_processes, time_from_jiffies)
2927 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
2928 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
2929
2930 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
2931 (list_system_processes): Rename from
2932 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
2933 Provide a do nothing implementation.
2934 (system_process_attributes): Rename from
2935 procfs_list_system_processes.
2936 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 2937 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
2938
2939 * w32.c (list_system_processes): Rename from
2940 w32_list_system_processes.
2941 (system_process_attributes): Rename from
2942 w32_system_process_attributes.
2943
2944 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
2945
2946 * process.h (w32_list_system_processes)
2947 (w32_system_process_attributes): Remove.
2948 (list_system_processes, system_process_attributes): New
2949 prototypes.
2950
6a705b23
KH
29512008-12-19 Kenichi Handa <handa@m17n.org>
2952
2953 * xfont.c (xfont_decode_coding_xlfd): New function.
2954 (xfont_encode_coding_xlfd): New function.
2955 (xfont_list_pattern): Decode XLFD by iso-8859-1.
2956 (xfont_list): Decode and encode XLFD by iso-8859-1.
2957 (xfont_match): Likewise.
2958 (xfont_list_family): Likewise.
2959 (xfont_open): Likewise.
2960
d66c0241 2961 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
2962 names are utf-8.
2963
d66c0241 2964 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
2965 names are utf-8.
2966
5a130941
JD
29672008-12-18 Jan Djärv <jan.h.d@swipnet.se>
2968
2969 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
2970 changed.
bfd20325
JD
2971 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
2972 clicked on a detached tool bar button.
5a130941 2973
fd95644b
DN
29742008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
2975
2976 * emacs.c (main): Print and error and exit when no data is read
2977 from the pipe.
2978
e6eee6ae
JR
29792008-12-17 Jason Rumney <jasonr@gnu.org>
2980
2981 * w32font.c (w32font_has_char): Always return -1.
2982
a35dd56b
KH
29832008-12-16 Kenichi Handa <handa@m17n.org>
2984
2985 * font.c (font_open_entity): Fix previous change.
2986
0e3635c2
DN
29872008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
2988
2989 * process.c: Include <limits.h>.
2990
d4835507 29912008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
2992
2993 * font.c (font_update_drivers): Fix mistake in reconstructing the
2994 driver list.
2995
29962008-12-16 Chong Yidong <cyd@stupidchicken.com>
2997
2998 * font.c (font_clear_cache): Fix format of font cache data.
2999
e2cbc401
CY
30002008-12-15 Chong Yidong <cyd@stupidchicken.com>
3001
3002 * xftfont.c (xftfont_open): Free Xft font pattern if
3003 XftFontOpenPattern fails.
3004
3005 * xterm.c (x_free_frame_resources): Remove extraneous call to
3006 free_frame_faces.
3007
b131d535
CY
30082008-12-13 Chong Yidong <cyd@stupidchicken.com>
3009
3010 * xterm.c (x_delete_display): Move xim_close_dpy call to
3011 x_delete_terminal.
3012 (x_delete_terminal): Call xim_close_dpy.
3013
e6df5336
JR
30142008-12-13 Jason Rumney <jasonr@gnu.org>
3015
3016 * w32font.c (intern_font_name): New function.
3017 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
3018 (w32font_open_internal, Fx_select_font): Decode font name.
3019 (fill_in_logfont, list_all_matching_fonts): Encode font name.
3020
3021 * w32font.h (intern_font_name): Declare new function.
3022
3023 * w32uniscribe.c (add_opentype_font_name_to_list):
3024 Use intern_font_name.
3025
20d68145
CY
30262008-12-13 Chong Yidong <cyd@stupidchicken.com>
3027
9f2554de
CY
3028 * frame.c (Fdelete_frame): Call free_font_driver_list.
3029
3d9bec9a
CY
3030 * font.c (free_font_driver_list): Implement missing function.
3031
20d68145
CY
3032 * w32term.c (w32_term_init): Don't initialize the image cache
3033 here; it will be done in init_frame_faces.
3034
3035 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
3036 (struct x_display_info): Remove unused member null_pixel. New
3037 member xim_callback_data.
3038
3039 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
3040 (xim_initialize): Save pointer to callback function data.
3041 (xim_close_dpy): Free callback function data. Call XCloseIM,
3042 reverting 2008-11-04 change by David Smith.
3043 (x_term_init): Don't initialize the image cache here; it will be
3044 done in init_frame_faces. Remove ancient "null_pixel" cruft.
3045 (x_delete_display): Free x_dnd_atoms member.
3046
96f9306b
KH
30472008-12-13 Kenichi Handa <handa@m17n.org>
3048
6dec9044
JB
3049 * font.c (font_rescale_ratio): Moved from xfaces.c.
3050 Argument type changed. Handle a font-spec too.
96f9306b 3051 (font_score): Check Vface_font_rescale_alist.
6dec9044 3052 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
3053
3054 * xfaces.c (font_rescale_ratio): Moved to font.c.
3055
8d5b4964
CY
30562008-12-13 Chong Yidong <cyd@stupidchicken.com>
3057
3058 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
3059
e6df5336
JR
30602008-12-12 Jason Rumney <jasonr@gnu.org>
3061
3062 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
3063 Vwindow_system_version to the real w32 major version.
3064
97c6058a
DN
30652008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
3066
3067 * term.c (init_tty): Move setting the terminal name before the
3068 potential user: maybe_fatal.
3069
ec4e88d7
CY
30702008-12-11 Chong Yidong <cyd@stupidchicken.com>
3071
d4835507
JB
3072 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
3073 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 3074
b4233ec9
JR
30752008-12-11 Jason Rumney <jasonr@gnu.org>
3076
8ec71e23 3077 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 3078 SYMBOL_CHARSET. (Bug#547)
8ec71e23 3079
b4233ec9 3080 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 3081 size for surrogates. (Bug#1096, bug#872)
b4233ec9 3082
011a0143
JB
30832008-12-11 Juanma Barranquero <lekktu@gmail.com>
3084
3085 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
3086
3c309f34
JB
30872008-12-11 Juanma Barranquero <lekktu@gmail.com>
3088
3089 * process.c (Fsystem_process_attributes, syms_of_process):
3090 Fix typo in name of Ssystem_process_attributes.
3091 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
3092
fedc6ab5
JB
30932008-12-11 Juanma Barranquero <lekktu@gmail.com>
3094
3095 * syntax.c (Fmodify_syntax_entry): Doc fix.
3096
ba3de0e8
JB
30972008-12-10 Juanma Barranquero <lekktu@gmail.com>
3098
3099 * font.c (Ffont_spec): Move usage to end of docstring.
3100
174f1c74
JR
31012008-12-10 Jason Rumney <jasonr@gnu.org>
3102
3103 * w32font.c (Qcham): New symbol.
3104 (font_supported_scripts): Add cham, and comments for other new
3105 scripts in bitfield from OpenType spec.
9d32f818
JR
3106 (add_font_entity_to_list): Limit unicode-sip fonts to those that
3107 contain characters beyond the bmp.
174f1c74 3108
7b649478
KH
31092008-12-10 Kenichi Handa <handa@m17n.org>
3110
3111 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 3112 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
3113 Qunicode_sip.
3114
2133e2d1
JB
31152008-12-10 Juanma Barranquero <lekktu@gmail.com>
3116
3117 * coding.c (QCdefault_char): Rename from QCdefalut_char.
3118 (Fcoding_system_put): Use QCdefault_char.
3119 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
3120
9af886ee
CY
31212008-12-09 Chong Yidong <cyd@stupidchicken.com>
3122
74d819eb
CY
3123 * xftfont.c (syms_of_xftfont): Fix typo.
3124
4ccfa1c0 3125 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 3126
7c19d3ae
DN
31272008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
3128
3129 * emacs.c (main): Close daemon_pipe on exec.
3130
567826bb
CY
31312008-12-08 Chong Yidong <cyd@stupidchicken.com>
3132
3133 * termchar.h (struct tty): New members termcap_term_buffer and
3134 termcap_strings_buffer.
3135
3136 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 3137 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
3138 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
3139 All callers changed.
3140 (init_tty): Store termcap data and string buffers in new struct
3141 tty members termcap_term_buffer and termcap_strings_buffer.
3142 (delete_tty): Free them.
4ccfa1c0 3143 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 3144
aa96c42b
SZ
31452008-12-07 Seiji Zenitani <zenitani@mac.com>
3146
3147 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 3148 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 3149
b7e1d896
CY
31502008-12-06 Chong Yidong <cyd@stupidchicken.com>
3151
3152 * coding.c (make_conversion_work_buffer): Disable buffer
3153 modification hooks in the work buffer.
3154
b5ec91a5
EZ
31552008-12-05 Eli Zaretskii <eliz@gnu.org>
3156
3157 * process.c (procfs_system_process_attributes): If `nread' has a
3158 negative value, assign zero to it.
3159
a5d2a52b
CY
31602008-12-05 Chong Yidong <cyd@stupidchicken.com>
3161
68c5540b 3162 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 3163
7bf1bb21
KH
31642008-12-05 Kenichi Handa <handa@m17n.org>
3165
3166 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
3167 second character is a combining character.
3168
2fdc7d00
EZ
31692008-12-05 Eli Zaretskii <eliz@gnu.org>
3170
3171 * process.c (procfs_system_process_attributes): Don't use cmd,
3172 cmdsize, and q without initializing them first.
3173
bf6bfba8
JR
31742008-12-04 Jason Rumney <jasonr@gnu.org>
3175
3176 * w32font.c (w32font_draw): Initialize orig_clip before getting
3177 it, and delete it when finished.
3178
a3b1a468
DN
31792008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
3180
3181 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
3182 case when running as a daemon before detaching.
3183
8b8be8eb
JB
31842008-12-03 Juanma Barranquero <lekktu@gmail.com>
3185
805f2638 3186 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 3187
b1bde622
KH
31882008-12-03 Kenichi Handa <handa@m17n.org>
3189
e500c47d
KH
3190 * font.c (font_at): Set `multibyte' at first.
3191
ca516334
KH
3192 * coding.c (decode_coding_charset): Check type of an element of
3193 vector VALIDS.
7bf1bb21 3194 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 3195
4ccfa1c0 3196 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
3197 (font_for_char): Likewise.
3198
1e5ecd37
CY
31992008-12-03 Chong Yidong <cyd@stupidchicken.com>
3200
d5b01609 3201 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
3202 (font_update_lface): Handle fonts with corrupted size specs,
3203 i.e. non-int and non-float.
d5b01609 3204
11e3a6e4 3205 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 3206 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 3207 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 3208
ab06788b
CY
3209 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
3210
1e5ecd37 3211 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 3212 underline_minimum_offset for underline position.
1e5ecd37 3213
63c125ab
DN
32142008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
3215
3216 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
3217
3218 * character.c (c_string_width): Specify the type for LEN.
3219
3a8406e1
KH
32202008-12-03 Kenichi Handa <handa@m17n.org>
3221
4ccfa1c0 3222 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 3223 (decode_coding_utf_8): Likewise.
4ccfa1c0 3224 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 3225 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 3226
651df7d9
CY
32272008-12-02 Chong Yidong <cyd@stupidchicken.com>
3228
3229 * keyboard.c (make_lispy_position): Only use PT if the selected
3230 window is current.
3231
1f625c6c
AS
32322008-12-02 Andreas Schwab <schwab@suse.de>
3233
f7741ce9
AS
3234 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
3235
1f625c6c
AS
3236 * doprnt.c (doprnt1): Fix size of charbuf.
3237
92bc2678
CY
32382008-12-02 Chong Yidong <cyd@stupidchicken.com>
3239
3240 * keyboard.c (timer_check): Revert last change.
3241
93b9e8cc
JB
32422008-12-02 Juanma Barranquero <lekktu@gmail.com>
3243
3244 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
3245
fd7a37d5
JB
32462008-12-01 Juanma Barranquero <lekktu@gmail.com>
3247
3248 * makefile.w32-in: Update dependencies.
3249 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
3250
c115043b
AS
32512008-12-01 Andreas Schwab <schwab@suse.de>
3252
3253 * font.c (register_font_driver): Use xmalloc.
3254 (font_put_frame_data): Likewise.
3255
f5668d2a
CY
32562008-12-01 Chong Yidong <cyd@stupidchicken.com>
3257
860d96be
CY
3258 * xfaces.c (realize_x_face): Make abort condition clearer.
3259
f5668d2a
CY
3260 * gtkutil.c (update_frame_tool_bar): Initialize variable.
3261
379c17e7
CY
32622008-11-30 Chong Yidong <cyd@stupidchicken.com>
3263
3264 * keyboard.c (timer_check): After a timer runs, ensure that the
3265 selected window's buffer is current.
3266
35f36d65
JB
32672008-11-30 Juanma Barranquero <lekktu@gmail.com>
3268
f952c61c
JB
3269 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
3270 It was accidentally restored by the Unicode merge.
3271
35f36d65
JB
3272 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
3273
b23077df
JB
32742008-11-29 Juanma Barranquero <lekktu@gmail.com>
3275
3276 * w32proc.c: Include "coding.h".
3277 (Fw32_short_file_name): Encode filename passed to Windows API.
3278 (Fw32_long_file_name): Encode filename passed to Windows API and
3279 decode back the result. (Bug#1433)
3280
b8ebe9dd
KH
32812008-11-29 Kenichi Handa <handa@m17n.org>
3282
8cc53f96
KH
3283 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
3284 not before accessing it.
3285
b8ebe9dd
KH
3286 * charset.c (Fdefine_charset_internal): After calculating
3287 min_char, max_char, and fastmap, copy the charset structure again.
3288 (encode_char): Fix the previous change.
3289
59bc82c0
SZ
32902008-11-28 Seiji Zenitani <zenitani@mac.com>
3291
3292 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
3293
3294 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
3295
3296 * nsterm.m (x_set_frame_alpha): New function.
3297
32247e3d
EZ
32982008-11-27 Eli Zaretskii <eliz@gnu.org>
3299
3300 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
3301
b003e5ff
JB
33022008-11-27 Juanma Barranquero <lekktu@gmail.com>
3303
3304 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
3305 pointer to check_face_name.
3306
708550f5
KH
33072008-11-27 Kenichi Handa <handa@m17n.org>
3308
3309 * category.h (SET_CATEGORY_SET): Call set_category_set.
3310 (set_category_set): Extern it.
3311
3312 * category.c (hash_get_category_set): New function.
3313 (Fmodify_category_entry): Adjusted for the change of
3314 char_table_ref_and_range. Call hash_get_category_set to get a
3315 category set to store in the table.
3316
3317 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
3318 Funify_charset.
3319
2ae37cf0 3320 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
3321 (DECODE_CHAR): Check if the decoder vector is ready.
3322 (ENCODE_CHAR): Check if the encoder char-table is ready.
3323 (maybe_unify_char): Extern it.
3324
3325 * charset.c (Vchar_unified_charset_table): Delete it.
3326 (inhibit_load_charset_map): New variable.
3327 (temp_charset_work): New variable.
3328 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
3329 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
3330 New macros.
3331 (load_charset_map): Meaning of control_flag changed. If
3332 inhibit_load_charset_map is nonzero, setup a table in
3333 temp_charset_work.
3334 (load_charset): New argument control_flag.
3335 (map_charset_for_dump): New function.
3336 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
3337 map_charset_for_dump.
3338 (Fdefine_charset_internal): If the charset method is MAP, load
3339 mapping tables by calling load_charset.
3340 (Funify_charset): Don't load a mapping table but directly set
3341 Vchar_unify_table.
3342 (maybe_unify_char): New function.
3343 (decode_char): Don't handle the deleted method MAP_DEFERRED.
3344 Handle the case of inhibit_load_charset_map being nonzero.
3345 (encode_char): Don't handle the deleted method MAP_DEFERRED.
3346 Handle the case of inhibit_load_charset_map being nonzero.
3347 (Fclear_charset_maps): Just free temp_charset_work.
3348 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
3349 variable.
3350
3351 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
3352 change of char_table_ref_and_range.
3353 (char_table_ref_and_range): Change the meaning of argument FROM
3354 and TO. Now the caller must provide initial values for *FROM
3355 and *TO.
3356
3357 * fontset.c (fontset_add): Adjusted for the change of
3358 char_table_ref_and_range.
3359 (fontset_get_font_group): Likewise.
3360 (Ffontset_info): Likewise.
3361
3362 * keymap.c (describe_vector): Adjusted for the change of
3363 char_table_ref_and_range. For char-table, put boundary between
3364 non-ASCII and 8-bit characters.
3365
3366 * print.c (print_object): For bool-vector, delete unnecessary
3367 check of ASCII_BYTE_P.
3368
9196133b
JR
33692008-11-26 Jason Rumney <jasonr@gnu.org>
3370
3371 * w32font.c (w32font_open_internal): Don't include external
9acef61c 3372 leading in font height. (Bug#879)
9196133b 3373
9f688acf
GM
33742008-11-26 Glenn Morris <rgm@gnu.org>
3375
3376 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
3377 redefinition with ifdef. (Bug#1383)
3378
90d19aff
AR
33792008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3380
3381 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
3382
4ccfa1c0 33832008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
3384
3385 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
3386 New EmacsView methods.
3387 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
3388 Fixes bug #1048,1357,1414.
3389
33902008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3391
3392 Fix bug #1362.
3393 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
3394 is not an indexed color.
3395 * nsterm.m (free_indexed_color): Add argument checking.
3396 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
3397
e7d5ecb3
CY
33982008-11-24 Chong Yidong <cyd@stupidchicken.com>
3399
3400 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
3401 Document confirm-after-completion value for
3402 minibuffer-completion-confirm.
3403
c285743c
JR
34042008-11-24 Jason Rumney <jasonr@gnu.org>
3405
3406 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
3407 warning.
3408
b0857706
JR
34092008-11-23 Jason Rumney <jasonr@gnu.org>
3410
3411 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
3412 restored before returning.
3413
3414 * w32font.c (check_face_name): New function.
3415 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 3416 fonts. (Bug#642)
b0857706 3417
ee50ff07
MR
34182008-11-22 Martin Rudalics <rudalics@gmx.at>
3419
3420 * buffer.c (Fswitch_to_buffer): Reword and mention new option
3421 confirm-nonexistent-file-or-buffer in doc-string.
3422
b8ff72fa
SM
34232008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
3424
3425 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
3426 Fix copy/paste typo. Add checks.
3427
cee53ed4
KH
34282008-11-21 Kenichi Handa <handa@m17n.org>
3429
3430 * coding.c (detect_coding_iso_2022): Reject invalid composition
3431 sequence.
3432 (DECODE_COMPOSITION_START): If the current source is the last
3433 block, and the current composition doesn't end, regard this
3434 sequence as invalid.
3435 (decode_coding_iso_2022): Handle invalid composition sequence.
3436
f6ef1e65
MR
34372008-11-20 Martin Rudalics <rudalics@gmx.at>
3438
3439 * window.c (coordinates_in_window): Don't return
3440 ON_VERTICAL_BORDER for the rightmost position of a mode/header
3441 line when the window is not the rightmost one. (Bug#1372)
3442
e08b1705
MR
34432008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
3444
3445 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
3446
ad98e89f
EZ
34472008-11-15 Eli Zaretskii <eliz@gnu.org>
3448
3449 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
3450 and bright_bg if noninteractive is non-zero.
3451
fb098a4b
CY
34522008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3453
3454 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
3455 x_draw_glyph_string_background.
3456
3457 * w32term.c (x_draw_glyph_string): Likewise.
3458
ce952b6e
CY
34592008-11-15 Chong Yidong <cyd@stupidchicken.com>
3460
3461 * xterm.c (x_draw_glyph_string): Stop drawing the background of
3462 the next glyph string once past the overhang width.
3463
3464 * nsterm.m (ns_draw_glyph_string): Likewise.
3465
3466 * w32term.c (x_draw_glyph_string): Likewise.
3467
26ea7079
CY
34682008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
3469
3470 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
3471 double file close.
3472
1c33c906
MR
34732008-11-14 Martin Rudalics <rudalics@gmx.at>
3474
3475 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
3476 dedicated status of window before attempting to display another
3477 buffer in it.
3478
8fc29035
JB
34792008-11-14 Juanma Barranquero <lekktu@gmail.com>
3480
3481 * msdos.c (Fmsdos_long_file_names):
3482 (syms_of_msdos) <dos-unsupported-char-glyph>:
3483 * dosfns.c (Fint86): Fix typos in docstrings.
3484
55fb4286
EZ
34852008-11-14 Eli Zaretskii <eliz@gnu.org>
3486
3487 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
3488
3fda0315
KY
34892008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
3490
3491 * puresize.h (BASE_PURESIZE): Increase to 1260000.
3492
7e849c17
CY
34932008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
3494
3495 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
3496
3497 * frame.h: Negative alpha means "don't touch".
3498
3499 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
3500
3501 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
3502
b9fd67bd
DN
35032008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
3504
3505 * hftctl.c:
3506 * chpdef.h:
3507 * acldef.h: Remove files used only for systems no longer supported.
3508
3509 * Makefile.in: Fix .o alphabetical ordering.
3510 (hftctl.o): Remove dependency, file removed.
3511 (keymap.o, print.o): Depend on charset.h.
3512
d5998e03
KH
35132008-11-10 Kenichi Handa <handa@m17n.org>
3514
2ae37cf0 3515 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 3516
be70e183
CY
35172008-11-08 Chong Yidong <cyd@stupidchicken.com>
3518
3519 * dired.c (file_name_completion): If completion_ignore_case is
3520 enabled, ignore case when checking completion-regexp-list.
3521
7cf94eac
EZ
35222008-11-08 Eli Zaretskii <eliz@gnu.org>
3523
3524 * vm-limit.c (get_lim_data): Fix last change.
3525
ee107a89
KH
35262008-11-08 Kenichi Handa <handa@m17n.org>
3527
3528 * character.c (Fget_byte): New function.
3529 (syms_of_character): Defsubr Fget_byte.
3530
5fd15622
CY
35312008-11-07 Chong Yidong <cyd@stupidchicken.com>
3532
3533 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
3534 cursor position is valid after scrolling.
3535
13d62fad
JB
35362008-11-06 Juanma Barranquero <lekktu@gmail.com>
3537
3538 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
3539
a1dd2936
GM
35402008-11-06 Glenn Morris <rgm@gnu.org>
3541
3542 * xterm.c (handle_one_xevent): Don't let popup menus cause
3543 mouse-autoselect-window related window switching. (Bug#1261)
3544
860cd236
CY
35452008-11-04 David Smith <davidsmith@acm.org> (tiny change)
3546
3547 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
3548
653a3150
AS
35492008-11-04 Andreas Schwab <schwab@suse.de>
3550
3551 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
3552
870f5cac
CY
35532008-11-03 Chong Yidong <cyd@stupidchicken.com>
3554
3555 * xfns.c (Fx_wm_set_size_hint): New function.
3556
1e02f3cb
MR
35572008-11-03 Martin Rudalics <rudalics@gmx.at>
3558
3559 * textprop.c (Fprevious_single_char_property_change): Return 0
3560 when there's no change in a string. (Bug#1301)
3561
e630dfc6
MR
35622008-11-02 Martin Rudalics <rudalics@gmx.at>
3563
3564 * frame.c (do_switch_frame): New argument NORECORD passed to
3565 Fselect_window.
3566 (Fselect_frame): New argument NORECORD passed to
3567 do_switch_frame.
3568 (Fset_frame_selected_window): New argument NORECORD passed to
3569 Fselect_frame.
3570 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
3571 in call of do_switch_frame.
3572 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
3573 Handle NORECORD argument in call of Fselect_frame.
3574 * lisp.h (do_switch_frame, Fselect_frame)
3575 (Fset_frame_selected_window): Adjust declarations.
3576 * window.c (select_frame_norecord): New function.
3577 (run_window_configuration_change_hook): Use it and call
3578 Fselect_frame with NORECORD set.
3579 (Fselect_window): Pass NORECORD to Fselect_frame.
3580 (Fset_window_configuration): Handle NORECORD argument in call of
3581 do_switch_frame.
3582 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
3583 Fset_frame_selected_window.
3584 * keyboard.c (command_loop_1): Handle NORECORD in call of
3585 Fselect_frame (currently ifdefd).
3586
9020b223
GM
35872008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
3588
3589 * emacs.c (USAGE2): Untabify.
3590
793ffee8
SM
35912008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
3592
3593 * composite.c (fill_gstring_header): Fix copy/paste typo.
3594
ab6d1131
MR
35952008-10-31 Martin Rudalics <rudalics@gmx.at>
3596
3597 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
3598 (Fother_window): Rename argument and rewrite doc-string.
3599 (select_window_norecord): Fix return value. (Bug#1276)
3600
601a9cf1
JB
36012008-10-30 Juanma Barranquero <lekktu@gmail.com>
3602
3603 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
3604 new frames overriding foreground for tooltips. Based on similar patch
3605 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
3606
813b0652
CY
36072008-10-29 Chong Yidong <cyd@stupidchicken.com>
3608
3609 * emacs.c (Fdaemon_initialized): Initialize nfd.
3610
4414f58f
MR
36112008-10-29 Martin Rudalics <rudalics@gmx.at>
3612
3613 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
3614 (Fwindow_text_height): Clarify doc-strings.
3615 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
3616 doc-string of window-scroll-functions.
3617
ecdcaa09
RS
36182008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
3619
3620 * category.c (syms_of_category): Fix typo in docstring.
3621
23fe745a
JB
36222008-10-28 Juanma Barranquero <lekktu@gmail.com>
3623
3624 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
3625 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
3626 Fix typos in docstrings.
3627
ff808935
DN
36282008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
3629
3630 * emacs.c (daemon_pipe): Make non-static.
3631 (IS_DAEMON): Move definition ...
3632 * lisp.h (IS_DAEMON): ... here.
3633 (daemon_pipe): Declare.
3634 (is_daemon): Remove.
3635 * dispnew.c (init_display): Use IS_DAEMON.
3636
fc012771
SM
36372008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
3638
3639 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
3640 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
3641
3642 * emacs.c (is_daemon): Remove.
3643 (main): Don't set is_daemon.
3644 (IS_DAEMON): New macro.
3645 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 3646 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
3647 parent exits.
3648 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
3649
d8bdbe6f
CY
36502008-10-27 Chong Yidong <cyd@stupidchicken.com>
3651
d1a072bf
CY
3652 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
3653 over-sized glyph, draw it with the default glyph width.
3654
e2e325aa
CY
3655 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3656 glyph, draw it with the default glyph width.
3657
3658 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3659 glyph, draw it with the default glyph width.
3660
d8bdbe6f
CY
3661 * xdisp.c (try_scrolling): When computing the distance from the
3662 scroll margin to PT, try moving some distance past the window
3663 bottom before giving up.
3664
7bfac547
MR
36652008-10-27 Martin Rudalics <rudalics@gmx.at>
3666
3667 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
3668 (Fset_window_buffer): Explain in doc-string that a window can be
3669 "strongly" dedicated to its buffer.
3670
4ff029f6
DN
36712008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
3672
3673 * emacs.c (daemon_name): New variable.
3674 (main): Deal with --daemon=SERVER_NAME.
3675 (Fdaemonp): Return a name if one was passed to --daemon.
3676
5790ef40
DN
36772008-10-26 Romain Francoise <romain@orebokech.com>
3678
f9bd0df9 3679 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
3680 (main): Create a pipe before forking, make the parent exit only after
3681 the child has closed its end of the pipe. Move closing the
3682 descriptors ...
3683 (Fdaemon_initialized): ... here. New function.
3684
f5385255
SM
36852008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
3686
4d632321
SM
3687 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
3688 the previous unoptimized table.
3689
f5385255
SM
3690 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
3691 the distinction between non-nil and non-t value of `dedicated'.
3692
6c56a0f3
CY
36932008-10-25 Chong Yidong <cyd@stupidchicken.com>
3694
3695 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 3696 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 3697
fec89261
MR
36982008-10-25 Martin Rudalics <rudalics@gmx.at>
3699
3700 * window.c (Fget_buffer_window, Fdelete_windows_on)
3701 (Freplace_buffer_in_windows): Make buffer argument optional and
3702 rename to buffer_or_name.
3703
34fcddd0
CY
37042008-10-24 Chong Yidong <cyd@stupidchicken.com>
3705
f5385255
SM
3706 * xdisp.c (handle_single_display_spec, handle_display_prop):
3707 Undo 2005-05-16 change.
34fcddd0
CY
3708 (handle_stop): Pop iterator if it's loaded with an empty string.
3709 (get_overlay_strings_1): Don't save iterator if it's loaded with
3710 an empty string (bug#1201).
3711
064766f2
KH
37122008-10-24 Kenichi Handa <handa@m17n.org>
3713
3714 * ftfont.c (ftfont_otf_features): Fix previous change.
3715 (ftfont_otf_capability): Check FeatureList.FeatureCount before
3716 calling ftfont_otf_features.
3717
f9bd0df9 37182008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
3719
3720 * font.c (font_match_p): Fix for the case that a vector of
3721 characters is in script-representative-chars.
3722
1dae9197
MA
37232008-10-24 Michael Albinus <michael.albinus@gmx.de>
3724
3725 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 3726 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
3727 (xd_read_queued_messages): Catch Qdbus_error from the macros.
3728 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
3729 macro. (Bug#1186).
3730
f9bd0df9 37312008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
3732
3733 * s/sol2-10.h: New file.
3734
878a4584
JB
37352008-10-23 Juanma Barranquero <lekktu@gmail.com>
3736
3737 * xdisp.c (fill_glyph_string): Fix typo in source (though the
3738 poor beast has survived 9+ years and the jump from xterm.c!).
3739
cd265ca6
MR
37402008-10-23 Martin Rudalics <rudalics@gmx.at>
3741
3742 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
3743 Reword doc-string.
f5385255 3744 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 3745
472a4dc9
JB
37462008-10-23 Juanma Barranquero <lekktu@gmail.com>
3747
3748 * character.c (syms_of_character) <script-representative-chars>:
3749 <unicode-category-table>: Doc fixes.
3750
159bd5a2
NF
37512008-10-23 Noah Friedman <friedman@splode.com>
3752
3753 * coding.c (make_conversion_work_buffer): Check that
3754 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
3755 Fget_buffer_create.
3756
49f9c344
KH
37572008-10-23 Kenichi Handa <handa@m17n.org>
3758
3759 * font.c (font_add_log): Check the values of extra properties.
3760
12bb3111
MR
37612008-10-22 Martin Rudalics <rudalics@gmx.at>
3762
3763 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3764 Reword doc-string.
3765 (Fset_window_parameter): Use NILP.
3766 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 3767 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 3768
bbeb4e99
JB
37692008-10-22 Juanma Barranquero <lekktu@gmail.com>
3770
3771 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
3772
37732008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
3774
3775 * nsfns.m (ns_appkit_version): New function.
3776 (x-server-version): Use it.
3777 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
3778 (x-server-vendor): Don't check_ns().
3779
3780 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
3781
a9b555d3
JB
37822008-10-22 Juanma Barranquero <lekktu@gmail.com>
3783
3784 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3785 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
3786
4626499f
KH
37872008-10-22 Kenichi Handa <handa@m17n.org>
3788
e3681952
KH
3789 * syntax.c (scan_words): Call word_boundary_p instead of comparing
3790 scripts.
3791
4626499f
KH
3792 * category.c (word_boundary_p): Check scripts instead of charset.
3793 Handle nil value in word-separating-categories and
3794 word-combining-categories.
3795 (syms_of_category): Fix docstrings of word-separating-categories
3796 and word-combining-categories.
3797
1560f91a
EZ
37982008-10-21 Eli Zaretskii <eliz@gnu.org>
3799
3800 * coding.c (Fencode_coding_region, Fdecode_coding_region)
3801 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
3802
f4668441
MR
38032008-10-21 Martin Rudalics <rudalics@gmx.at>
3804
3805 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
3806 Rename arg "buffer" to "buffer_or_name".
3807 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
3808 it optional.
3809 (no_switch_window): Remove since the return value is not used.
a9b555d3 3810 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
3811 Consider window as dedicated when Fwindow_dedicated_p returns a
3812 non-nil value.
3813 * lisp.h: Remove prototype for no_switch_window.
3814
fd75ddb2
JD
38152008-10-21 Jan Djärv <jan.h.d@swipnet.se>
3816
3817 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 3818 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 3819
07295713
KH
38202008-10-21 Kenichi Handa <handa@m17n.org>
3821
3822 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
3823 check Vlatin_extra_code_table.
3824
712adc82
EZ
38252008-10-20 Eli Zaretskii <eliz@gnu.org>
3826
3827 * fileio.c (Fset_file_modes): Doc fix.
3828
f549eb0b
MA
38292008-10-19 Michael Albinus <michael.albinus@gmx.de>
3830
3831 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
3832 in arrays.
3833
aac0c6e3
MR
38342008-10-19 Martin Rudalics <rudalics@gmx.at>
3835
3836 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3837 Mention kill-buffer in doc-string.
3838 (Fset_window_buffer): Reinsert tem check removed in last commit.
3839 (Fenlarge_window, Fshrink_window): Have argument names and
3840 doc-string follow Elisp manual more closely.
3841
38422008-10-18 Eli Zaretskii <eliz@gnu.org>
3843
3844 * fileio.c (Fset_file_modes): Doc fix.
3845
38462008-10-18 Martin Rudalics <rudalics@gmx.at>
3847
3848 * window.c (Fwindow_width, Fset_window_start)
3849 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
3850 (Fdelete_windows_on, Freplace_buffer_in_windows):
3851 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
3852 (Fwindow_dedicated_p): Make window argument optional.
3853 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
3854 (Fset_window_buffer): Respect any non-nil dedicated value for
3855 window. Rename "buffer" argument to "buffer_or_name".
3856
38572008-10-18 Ulrich Mueller <ulm@gentoo.org>
3858
3859 * m/sh3.h: New file, machine description for SuperH.
3860
38612008-10-17 Martin Rudalics <rudalics@gmx.at>
3862
3863 * window.c (Fsplit_window): Rename arg horflag to horizontal.
3864
38652008-10-17 Kenichi Handa <handa@m17n.org>
3866
3867 * ftfont.c (ftfont_otf_features): Fix indexing
3868 gsub_gpos->FeatureList.Feature. Check the validity of indices.
3869
38702008-10-16 Magnus Henoch <mange@freemail.hu>
3871
3872 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
3873 (Fdbus_call_method_asynchronously): Ditto.
3874 This change makes C-h f display the argument list.
3875
38762008-10-16 Chong Yidong <cyd@stupidchicken.com>
3877
3878 * fileio.c (Fexpand_file_name): Doc fix.
3879
3880 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
3881 of :foreground and :background equivalent to unspecified (20.x
3882 compatibility).
3883
38842008-10-15 Eli Zaretskii <eliz@gnu.org>
3885
3886 * buffer.c (syms_of_buffer): Doc fix.
3887
38882008-10-14 Kenichi Handa <handa@m17n.org>
3889
3890 * font.c (font_clear_prop): When clearing font width, clear the
3891 average width field too.
3892
38932008-10-12 Andreas Schwab <schwab@suse.de>
3894
3895 * ftfont.c (ftfont_shape_by_flt): Make static.
3896 * ftfont.h (ftfont_shape_by_flt): Don't declare.
3897
3898 * font.c: Don't include <m17n-flt.h>.
3899
39002008-10-10 Eli Zaretskii <eliz@gnu.org>
3901
3902 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
3903
39042008-10-09 Eli Zaretskii <eliz@gnu.org>
3905
3906 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
3907 away code.
3908
39092008-10-09 Chong Yidong <cyd@stupidchicken.com>
3910
3911 * dispnew.c (update_text_area): Avoid looping due to large glyph
3912 overhangs (bug#1070).
3913
39142008-10-09 Kenichi Handa <handa@m17n.org>
3915
3916 * fontset.c (face_for_char): If face->fontset is negative, just
3917 return ascii_face.
3918
f5385255
SM
3919 * font.c (font_delete_unmatched): Fix previous change.
3920 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
3921
39222008-10-09 Martin Rudalics <rudalics@gmx.at>
3923
3924 * frame.c (Fraise_frame): On text-only terminals select frame in
3925 order to make it visible. (Bug#1061)
3926
39272008-10-08 Chong Yidong <cyd@stupidchicken.com>
3928
3929 * fontset.c (fontset_find_font): Check frame validity.
3930
39312008-10-07 Chong Yidong <cyd@stupidchicken.com>
3932
a9b555d3 3933 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
3934 (xg_display_close): Allow Emacs to close all displays (bug#985).
3935
39362008-10-06 Andreas Schwab <schwab@suse.de>
3937
f5385255 3938 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
3939
39402008-10-06 Chong Yidong <cyd@stupidchicken.com>
3941
f5385255 3942 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 3943
a9b555d3 3944 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
3945
3946 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
3947 during initialization.
3948
39492008-10-04 Eli Zaretskii <eliz@gnu.org>
3950
3951 * xdisp.c (redisplay_internal): If frame switched, redisplay the
3952 whole thing on MSDOS frames as well as on a TTY.
3953
3954 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
3955 well as for TTY.
3956 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
3957 well as on a TTY.
3958
3959 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
3960 as well as for TTY.
3961
3962 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
3963
3964 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
3965 MSDOS frames as well.
3966
39672008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3968
3969 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
3970 correct arguments.
b71ac3dd 3971 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
3972
39732008-10-03 Glenn Morris <rgm@gnu.org>
3974
3975 * emacs.c (USAGE1): Add --daemon.
3976
39772008-10-02 Eli Zaretskii <eliz@gnu.org>
3978
3979 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
3980 100, so it's in percents as advertised.
3981
39822008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3983
3984 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
3985 (ns_output.current_cursor, ns_output.desired_cursor)
3986 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
3987 (FRAME_NEW_CURSOR_COLOR): Remove.
3988
3989 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 3990 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
3991 enumeration (HOLLOW_BOX_CURSOR, etc.).
3992
3993 * nsterm.m (ns_frame_rehighlight): Remove commented code.
3994 (draw_window_cursor): Simplify code.
f5385255
SM
3995 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
3996 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 3997 updates manually.
a9b555d3
JB
3998 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
3999 Use core Emacs cursor types.
aac0c6e3 4000
b8ff72fa 4001 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
4002
40032008-10-02 Martin Rudalics <rudalics@gmx.at>
4004
4005 * process.c (Faccept_process_output): Fix doc-string.
4006
40072008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
4008
4009 * gmalloc.c (__sbrk): Also define for uClibc.
4010
4011 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
4012 for uClibc.
4013
40142008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4015
4016 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
4017 styles.
4018 (nsfont_open): Reenable the cache.
4019
40202008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4021
4022 * font.c (font_matching_entity): Reflect ATTRS in font selection.
4023 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
4024
40252008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
4026
4027 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
4028 a suspended terminal.
4029
40302008-09-30 Michael Albinus <michael.albinus@gmx.de>
4031
4032 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
4033
40342008-09-30 Eli Zaretskii <eliz@gnu.org>
4035
4036 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
4037
40382008-09-30 Chong Yidong <cyd@stupidchicken.com>
4039
4040 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
4041 in a continued line coincides with a line beginning.
4042
40432008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4044
4045 * nsfont.m (nsfont_trait_distance): Fix bug.
4046 (nsfont_list): Return a list rather than a vector (syncs with Handa
4047 changes of 2008-05-14).
4048 (nsfont_open): Improve logging.
4049
40502008-09-29 Andreas Schwab <schwab@suse.de>
4051
4052 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4053
40542008-09-28 Martin Rudalics <rudalics@gmx.at>
4055
4056 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
4057 name as char-resolve-modifiers.
4058 Reported by: Markus Triska <markus.triska@gmx.at>
4059
40602008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
4061
4062 * dispnew.c (init_display): Return earlier when running as a daemon.
4063
40642008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4065
4066 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
4067
40682008-09-27 Eli Zaretskii <eliz@gnu.org>
4069
4070 * composite.c (Fcomposition_get_gstring)
4071 (Fcompose_region_internal, Fcompose_string_internal)
4072 (Ffind_composition_internal): Doc fix.
4073 (syms_of_composite) <compose-chars-after-function>: Doc fix.
4074 (syms_of_composite) <auto-composition-function>: Doc fix.
4075 (syms_of_composite) <composition-function-table>: Doc fix.
4076
40772008-09-25 Chong Yidong <cyd@stupidchicken.com>
4078
4079 * search.c (wordify): New argument for lax word-ends.
4080 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
4081
40822008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
4083
4084 * lisp.h (is_daemon): Declare.
4085 * dispnew.c (init_display): Do not try to initialize the terminal
4086 when running as a daemon.
4087
40882008-09-22 Chong Yidong <cyd@stupidchicken.com>
4089
4090 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
4091 x_display_pixel_height.
4092
40932008-09-22 Martin Rudalics <rudalics@gmx.at>
4094
4095 * undo.c (record_point): Don't call Fundo_boundary for first
4096 change. (Bug#731)
4097
40982008-09-22 Juanma Barranquero <lekktu@gmail.com>
4099
4100 * emacs.c (Fdaemonp): Doc fix.
4101
41022008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
4103
4104 * emacs.c (main): Place #ifdef in the proper place.
4105
41062008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
4107
4108 * emacs.c (standard_args): Add --daemon.
4109 (main): Disconnect from the terminal when --daemon is passed.
4110 (is_daemon): New variable.
4111 (Fdaemonp): New function.
4112 (syms_of_emacs): Defsubr it.
4113
41142008-09-20 Chong Yidong <cyd@stupidchicken.com>
4115
4116 * xdisp.c (get_next_display_element): Handle string display
4117 correctly when checking for the end of a box run.
4118
41192008-09-20 Glenn Morris <rgm@gnu.org>
4120
4121 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
4122 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
4123 (Frename_file): Avoid copying to trash if a rename involves
4124 a delete. (Bug#964).
4125
41262008-09-20 Eli Zaretskii <eliz@gnu.org>
4127
4128 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
4129 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
4130 frames as well as termcap frames.
4131 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
4132 get_named_tty.
4133
41342008-09-19 Eli Zaretskii <eliz@gnu.org>
4135
4136 * process.c (procfs_system_process_attributes): Fix cmdline in
4137 case /proc/PID/cmdline is empty.
4138
4139 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
4140 x_display_pixel_height.
4141
41422008-09-19 Juanma Barranquero <lekktu@gmail.com>
4143
4144 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
4145
4146 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
4147 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
4148
41492008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
4150
4151 * dispextern.h (struct it): Move line_wrap away from the middle of
4152 bitfields. Move voffset in struct iterator_stack_entry after the
4153 bitfields. Move tab_width near after another short.
4154
41552008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
4156
4157 * frame.h (struct frame): Move alpha from the middle of bitfields.
4158
4159 * window.h (struct window): Move frozen_window_start_p after the
4160 rest of the bitfields to reduce padding.
4161
41622008-09-18 Chong Yidong <cyd@stupidchicken.com>
4163
4164 * xterm.h (x_display_info): Remove `height' and `width' members.
4165
4166 * nsterm.h (ns_display_info): Remove `height' and `width' members.
4167
4168 * w32term.h (w32_display_info): Remove `height', `width',
4169 `height_in', and `width_in' members.
4170
b8ff72fa
SM
4171 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4172 New functions.
aac0c6e3
MR
4173 (x_calc_absolute_position): Use them.
4174 (x_term_init): Omit removed `height' and `width' members.
4175
b8ff72fa
SM
4176 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4177 New functions.
aac0c6e3
MR
4178 (w32_read_socket, x_calc_absolute_position): Use them.
4179 (w32_initialize_display_info, w32_term_init): Omit removed members
4180 of w32_display_info.
4181
b8ff72fa
SM
4182 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
4183 New functions.
4184 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 4185
b8ff72fa
SM
4186 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4187 New functions.
aac0c6e3
MR
4188 (x_calc_absolute_position): Use them.
4189 (x_term_init): Omit removed `height' and `width' members.
4190
4191 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
4192 (compute_tip_xy):
4193 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
4194 * xmenu.c (menu_position_func): Use x_display_pixel_height and
4195 x_display_pixel_width.
4196
41972008-09-18 Kenichi Handa <handa@m17n.org>
4198
4199 * composite.c (fill_gstring_header): Don't check FROM and TO here.
4200 (composition_compute_stop_pos): Fix handling of static composition.
4201 (Fcomposition_get_gstring): Check FROM and TO at first.
4202
42032008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4204
46e722a9 4205 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
4206 mixup (YAILOM).
4207
42082008-09-17 Chong Yidong <cyd@stupidchicken.com>
4209
4210 * indent.c (Fvertical_motion): Use position reported by iterator
4211 instead of PT for determining screen motion (bug#943).
4212
42132008-09-17 Romain Francoise <romain@orebokech.com>
4214
4215 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
4216
42172008-09-17 Kenichi Handa <handa@m17n.org>
4218
4219 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
4220
4221 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
4222 if necessary.
4223
42242008-09-16 Kenichi Handa <handa@m17n.org>
4225
4226 * coding.c (make_conversion_work_buffer): Avoid calling
4227 Fget_buffer_create if it is not necessary.
4228
42292008-09-15 Martin Rudalics <rudalics@gmx.at>
4230
4231 * window.c (Fselect_window): Don't update window_select_count and
4232 use_time when norecord is not nil.
4233
42342008-09-14 Kenichi Handa <handa@m17n.org>
4235
4236 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
4237 specpdl_ptr.
4238
42392008-09-12 Kenichi Handa <handa@m17n.org>
4240
4241 * indent.c (scan_for_column): Don't handle automatic composition
4242 if the current buffer is not associated with a window.
4243
4244 * composite.c (composition_reseat_it): If the current buffer is
4245 not associated with a window, ignore the automatic composition.
4246 (find_automatic_composition): Likewise.
4247
42482008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4249
4250 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
4251 (Fgpm_mouse_stop): Use it.
4252 * termhooks.h (close_gpm): Declare.
4253 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
4254 connection if Gpm_GetEvent fails.
4255
4256 * window.c (set_window_buffer): Always preserve current-buffer.
4257
42582008-09-12 Glenn Morris <rgm@gnu.org>
4259
4260 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
4261
42622008-09-11 Glenn Morris <rgm@gnu.org>
4263
4264 * charset.c (charset-map-path): Doc fix.
4265
42662008-09-10 Kenichi Handa <handa@m17n.org>
4267
4268 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
4269
4270 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
4271 compose a grapheme cluster with the preceding base glyph.
4272
4273 * composite.c (composition_compute_stop_pos): Fix previous change.
4274 Reset cmp_it->id to -1 at first.
4275
42762008-09-10 Glenn Morris <rgm@gnu.org>
4277
4278 * Makefile.in (character.o, chartab.o): Fix config.h typo.
4279
42802008-09-09 Chong Yidong <cyd@stupidchicken.com>
4281
4282 * keyboard.c (read_key_sequence): Reapply translation maps when
4283 switching keyboards.
4284
42852008-09-09 Kenichi Handa <handa@m17n.org>
4286
4287 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
4288 characters.
4289
4290 * composite.c (FORWARD_CHAR): Fix calculation
4291 of (POSITION).pos_byte.
4292 (composition_compute_stop_pos): Limit the search of composition to
4293 at most 500 characters ahead. If we reach the limit or find a
4294 newline, set cmp_it->ch to -2 and return 0.
4295 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
4296
42972008-09-08 Kenichi Handa <handa@m17n.org>
4298
4299 * indent.c (Fvertical_motion): Be sure to set
4300 it_overshoot_expected if it.cmp_it.id is non-negative.
4301
43022008-09-07 Andreas Schwab <schwab@suse.de>
4303
4304 * callproc.c (Fcall_process): Don't hold references to string data
4305 across garbage collection. Move initialisation of new_argv down
4306 to avoid compiler bug.
4307
43082008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4309
4310 * process.c (Fsystem_process_attributes): Doc fix.
4311
43122008-09-07 Chong Yidong <cyd@stupidchicken.com>
4313
4314 * callproc.c (Fcall_process): Canonicalize current directory name.
4315
4316 * xdisp.c (move_it_to): When moving by vpos, ensure that the
4317 iterator advances to the next line if the current line ends in a
4318 continued tab.
4319
43202008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
4321
4322 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
4323 member to point to cmp_from.
4324
4325 * xdisp.c: Doc fix for references to gidx data member.
4326
43272008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
4328
4329 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
4330
43312008-09-07 Kenichi Handa <handa@m17n.org>
4332
4333 * composite.c (FORWARD_CHAR): Check STOP after
4334 incrementing (POSITION).pos.
4335
43362008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4337
4338 * process.c (Fsystem_process_attributes): Doc fix.
4339
43402008-09-06 Chong Yidong <cyd@stupidchicken.com>
4341
4342 * keyboard.c (Ftop_level): Doc fix.
4343
43442008-09-06 Eli Zaretskii <eliz@gnu.org>
4345
4346 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
4347 minibuffer, don't let lower part of menu invade the echo area.
4348
4349 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
4350 "char *q" to access menu text and advance through it. Revert the
4351 change that displayed ">" instead of ASCII character 0x10.
4352
43532008-09-05 Eli Zaretskii <eliz@gnu.org>
4354
4355 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
4356 toggle boxes and radio buttons on MS-DOS as well.
4357
43582008-09-05 Kenichi Handa <handa@m17n.org>
4359
4360 * composite.c (autocmp_chars): Check lookback count.
4361 (composition_compute_stop_pos): Set cmp_it->lookback.
4362 (composition_reseat_it): Check lookback count.
4363 (struct position_record): New struct.
4364 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
4365 (find_automatic_composition): New function.
4366 (composition_adjust_point): Use find_automatic_composition.
4367
4368 * dispextern.h (struct composition_it): New member lookback.
4369
43702008-09-02 Chong Yidong <cyd@stupidchicken.com>
4371
4372 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
4373 if moving by a single line.
4374
43752008-09-02 Andreas Schwab <schwab@suse.de>
4376
4377 * xterm.c (x_delete_display): Fix merge error.
4378
4379 * fileio.c (Fexpand_file_name): Remove unused variables.
4380
43812008-09-02 Eli Zaretskii <eliz@gnu.org>
4382
4383 * fileio.c (Fexpand_file_name): Copy argument `name' into local
4384 storage on all platforms, not just on DOS_NT.
4385
43862008-09-02 Jason Rumney <jasonr@gnu.org>
4387
b8ff72fa
SM
4388 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
4389 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
4390
43912008-09-01 Chong Yidong <cyd@stupidchicken.com>
4392
4393 * xfaces.c (Finternal_set_alternative_font_family_alist)
4394 (Finternal_set_alternative_font_registry_alist): Properly copy
4395 entire alist structure.
4396
43972008-09-01 Kenichi Handa <handa@m17n.org>
4398
d66c0241 4399 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 4400 representative chars of the script is a vector.
d66c0241
JB
4401 (ftfont_list): Handle the case where the representative chars of
4402 the script is a vector.
aac0c6e3
MR
4403
4404 * character.c (syms_of_character): Docstring of
4405 script-representative-chars fixed.
4406
44072008-08-31 Eli Zaretskii <eliz@gnu.org>
4408
4409 * msdos.c (BUILD_CHAR_GLYPH): New macro.
4410 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
4411 the menu. Allocate larger buffer for `text', to account for
4412 possible ^C characters.
4413
44142008-08-31 Martin Rudalics <rudalics@gmx.at>
4415
4416 * xdisp.c (prepare_menu_bars): Don't call
4417 Vwindow_size_change_functions with arg Qt.
4418
44192008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
4420
4421 * font.h (font_range):
4422 * fileio.c (report_file_error):
46e722a9
SM
4423 * composite.c (composition_update_it): Yet another int/Lisp_Object
4424 mixup (YAILOM).
aac0c6e3
MR
4425
44262008-08-30 Glenn Morris <rgm@gnu.org>
4427
4428 * data.c (Fmake_variable_frame_local): Doc fix.
4429
4430 * frame.c (Fmodify_frame_parameters): Doc fix.
4431
44322008-08-30 Eli Zaretskii <eliz@gnu.org>
4433
4434 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
4435 needed by GetTokenInformation.
4436 (w32_system_process_attributes): Check return values of all system
4437 APIs.
4438
4439 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
4440 only when the state changes.
4441 (IT_update_begin, IT_update_end): Add termscript trace.
4442
4443 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
4444 clipboard is unavailable. Set dst to NULL if it doesn't point to
4445 malloc'ed data.
4446 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
4447 passing random values to xfree.
4448
4449 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 4450 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
4451
44522008-08-29 Jason Rumney <jasonr@gnu.org>
4453
4454 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
4455
44562008-08-29 Eli Zaretskii <eliz@gnu.org>
4457
4458 * composite.c (fill_gstring_body): Avoid compiler warnings.
4459
4460 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
4461 LGLYPH_SET_CODE to avoid compiler warnings.
4462
2ae37cf0 4463 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
4464
4465 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
4466
4467 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
4468 LGLYPH_SET_CODE.
4469
44702008-08-29 Kenichi Handa <handa@m17n.org>
4471
4472 * fileio.c (report_file_error): Don't downcase the first character
4473 of errstring if it is still unibyte.
4474
44752008-08-29 Kenichi Handa <handa@m17n.org>
4476
4477 These changes are to re-implement the automatic composition so
4478 that it doesn't use text properties.
4479
4480 * Makefile.in (ftfont.o): Depend on composite.h.
4481 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
4482
4483 * character.h (Vunicode_category_table): Extern it.
4484
4485 * character.c (Vunicode_category_table): New variable.
4486 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
4487
4488 * chartab.c (optimize_sub_char_table): Perform more greedy
4489 optimization.
4490
b8ff72fa
SM
4491 * composite.h (enum composition_method):
4492 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
4493 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
4494 (Vcomposition_function_table): Extern it.
4495 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
4496 (composition_gstring_put_cache, composition_gstring_from_id)
4497 (composition_gstring_p, composition_gstring_width)
4498 (composition_compute_stop_pos, composition_reseat_it)
4499 (composition_update_it, composition_adjust_point): Extern them.
4500 (Fcomposition_get_gstring): EXFUN it.
4501
d66c0241 4502 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
4503 (Vcomposition_function_table)
4504 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
4505 (gstring_hash_table, gstring_work, gstring_work_headers):
4506 New variables.
aac0c6e3
MR
4507 (gstring_lookup_cache, composition_gstring_put_cache)
4508 (composition_gstring_from_id, composition_gstring_p)
4509 (composition_gstring_width, fill_gstring_header)
4510 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
4511 (composition_reseat_it, composition_update_it)
b8ff72fa 4512 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
4513 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
4514 and gstring_work_headers. DEFVAR_LISP composition-function-table.
4515 Defsubr compostion_get_gstring.
4516
4517 * dispextern.h (struct glyph): New union u.cmp. Delete the member
4518 cmp_id.
4519 (struct glyph_string): Delete the member gidx. New members
4520 cmp_id, cmp_from, and cmp_to.
4521 (enum it_method): Delete GET_FROM_COMPOSITION.
4522 (struct composition_it): New struct.
4523 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
4524 Delete c, len, cmp_id, cmp_len in u.comp.
4525
4526 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 4527 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 4528 (enum lglyph_indices): Likewise.
b8ff72fa 4529 (font_range): Adjust extern.
aac0c6e3
MR
4530 (font_fill_lglyph_metrics): Extern it.
4531
4532 * font.c (QCf): New variable.
4533 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4534 (font_prepare_composition): Delete this function.
4535 (font_range): Type and arguments changed.
4536 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
4537 (font_fill_lglyph_metrics): New function.
b8ff72fa 4538 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 4539 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
4540 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
4541 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
4542
4543 * fontset.h (font_for_char): Extern it.
4544
4545 * fontset.c (font_for_char): New function.
4546
4547 * ftfont.c: Include composite.h.
4548 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 4549 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
4550
4551 * indent.c: Include composite.h and dispextern.h.
4552 (check_composition): Delete this function.
4553 (scan_for_column): Handle composition by
4554 composition_compute_stop_pos, composition_reseat_it, and
4555 composition_update_it.
4556 (compute_motion): Likewise.
4557 (Fvertical_motion): Fix checking of composition.
4558
4559 * keyboard.c (adjust_point_for_property): Check composition by
4560 composition_adjust_point.
4561
b8ff72fa 4562 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
4563 struct glyph_string.
4564
b8ff72fa
SM
4565 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
4566 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
4567 struct glyph.
4568 (produce_composite_glyph): Likewise.
4569
b8ff72fa
SM
4570 * w32term.c (x_draw_composite_glyph_string_foreground):
4571 Adjust for the change of struct glyph_string.
aac0c6e3
MR
4572 (x_draw_glyph_string): Likewise.
4573
4574 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
4575 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4576
4577 * xdisp.c: Include font.h.
4578 (it_props): Delete the entry for Qauto_composed.
4579 (init_iterator): Initialize it->cmp_it.id to -1.
4580 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 4581 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
4582 (handle_auto_composed_prop): Delete it.
4583 (handle_composition_prop): Handle only static composition.
4584 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
4585 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 4586 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
4587 (pop_it): Likewise.
4588 (get_next_element): Delete next_element_from_composition.
4589 (CHAR_COMPOSED_P): New macro.
4590 (get_next_display_element): For automatic composition, get a face
4591 from the font in the glyph-string.
4592 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 4593 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
4594 (next_element_from_string): Check if the character at the current
4595 position is composed by CHAR_COMPOSED_P.
4596 (next_element_from_buffer): Likewise.
d66c0241
JB
4597 (next_element_from_composition): Adjust for the change of struct it.
4598 Update it->cmp_it.
b8ff72fa
SM
4599 (dump_glyph): Adjust for the change of struct glyph.
4600 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
4601 it and struct glyph. Don't handle automatic composition here.
4602 (fill_gstring_glyph_string): New function.
4603 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 4604 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
4605 (BUILD_GSTRING_GLYPH_STRING): New macro.
4606 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
4607 automatic composition.
b8ff72fa 4608 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 4609 struct glyph.
b8ff72fa 4610 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 4611
b8ff72fa 4612 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
4613 the change of struct glyph_string.
4614 (x_draw_glyph_string): Likewise.
4615
46162008-08-29 Glenn Morris <rgm@gnu.org>
4617
4618 * buffer.c (word-wrap): Doc fix.
4619 * xdisp.c (truncate-partial-width-windows): Doc fix.
4620 Increase default to 50.
4621
46222008-08-29 Chong Yidong <cyd@stupidchicken.com>
4623
4624 * xdisp.c (update_tool_bar_unwind): New function.
4625 (update_tool_bar): Temporarily set selected frame before building
4626 tool-bar items.
4627
46282008-08-28 Michael Albinus <michael.albinus@gmx.de>
4629
4630 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
4631 snprintf, respectively.
4632 (xd_append_arg): Convert strings with Fstring_make_unibyte.
4633
46342008-08-28 Chong Yidong <cyd@stupidchicken.com>
4635
4636 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
4637 LDFLAGS to GNUstep CC invocation.
4638
46392008-08-27 Chong Yidong <cyd@stupidchicken.com>
4640
4641 * indent.c (Fvertical_motion): Revert last change. Handle the
4642 general case where we are moving forward, and PT spans multiple
4643 screen lines.
4644
4645 * eval.c (find_handler_clause): Temporarily increase
4646 max-lisp-eval-depth while printing the backtrace buffer, to
4647 guarantee that help-mode code can run.
4648
46492008-08-27 Eli Zaretskii <eliz@gnu.org>
4650
4651 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
4652 colors under -rv.
4653 (IT_set_frame_parameters): Don't swap foreground and background
4654 colors if `(reverse . t)' is present in the frame properties.
4655 (internal_terminal_init): Call init_frame_faces only for the
4656 initial frame.
4657
46582008-08-27 Andreas Schwab <schwab@suse.de>
4659
4660 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
4661
46622008-08-27 Andreas Schwab <schwab@suse.de>
4663
4664 * search.c (search_buffer): Set char_base to zero only at the end.
4665
46662008-08-27 Kenichi Handa <handa@m17n.org>
4667
b8ff72fa 4668 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
4669
46702008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
4671
4672 * xterm.c (x_term_init): Temporarily hide the partially
4673 initialized terminal while calling vendor-specific-keysyms.
4674
46752008-08-26 Eli Zaretskii <eliz@gnu.org>
4676
4677 * msdos.c (internal_terminal_init): Most initializations done only
4678 once, especially initial_screen_colors[] and termscript open.
4679
46802008-08-26 Chong Yidong <cyd@stupidchicken.com>
4681
4682 * eval.c (Fcondition_case): Doc fix.
4683
4684 * widgetprv.h (EmacsFramePart): Change font member to the new font
4685 struct.
4686
4687 * widget.c: Include character.h and font.h for XSETFONT.
4688 (setup_frame_gcs): Compute X font id from font struct, just once.
4689
46902008-08-26 Eli Zaretskii <eliz@gnu.org>
4691
4692 * term.c (get_named_tty): Fix last change.
4693
46942008-08-26 Chong Yidong <cyd@stupidchicken.com>
4695
4696 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 4697 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
4698
46992008-08-25 Eli Zaretskii <eliz@gnu.org>
4700
4701 * frame.c (do_switch_frame): Mark previously displayed frame as
4702 obscured for FRAME_MSDOS_P frames as well.
4703
47042008-08-24 Eli Zaretskii <eliz@gnu.org>
4705
4706 * frame.c (make_terminal_frame): Initialize f->terminal,
4707 f->terminal->reference_count, and scroll bars on MS-DOS as well.
4708 Set the top frame to newly created frame.
4709 (Fmake_terminal_frame): Reuse the_only_display_info.
4710
4711 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
4712 estimating available memory.
4713
b97439ce 47142008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
4715
4716 * nsterm.m (ns_draw_window_cursor): Don't call
4717 NSDisableScreenUpdates and NSEnableScreenUpdates on
4718 non-NS_IMPL_COCOA systems.
4719
47202008-08-23 Andreas Schwab <schwab@suse.de>
4721
4722 * process.c (procfs_system_process_attributes): Fix use of
4723 uninitialized variables.
4724
47252008-08-23 Eli Zaretskii <eliz@gnu.org>
4726
4727 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
4728
4729 * dispnew.c (init_display): Remove MS-DOS specific conditions for
4730 calling tty-set-up-initial-frame-faces.
4731
b8ff72fa
SM
4732 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
4733 Allow MSDOS frames along with X frames.
aac0c6e3
MR
4734
4735 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
4736 addition to output_termcap.
4737
4738 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
4739
4740 * termchar.h (FRAME_TTY): Support output_msdos_raw.
4741 (struct tty_display_info) [MSDOS]: Add fields related to mouse
4742 highlight.
4743
4744 * process.c [!subprocesses]: Define QCname.
4745 (syms_of_process): Intern and staticpro it.
4746
4747 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
4748 Adjust for changes in encoding/decoding routines.
4749 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
4750 encode_coding and decode_coding.
4751
b8ff72fa 4752 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
4753
4754 * dosfns.c: Include frame.h before termhooks.h.
4755 (dos_cleanup): Use CURTTY ()->termscript instead of a global
4756 variable termscript.
4757
4758 * s/msdos.h (USER_FULL_NAME): Define.
4759 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
4760
4761 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
4762 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
4763 pw->pw_gecos.
4764
4765 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
4766 SELECTED_FRAME as additional (1st) argument.
4767 (tty_read_avail_input): Handle output_msdos_raw in
4768 addition to output_termcap.
4769
4770 * msdos.c: Include frame.h before termhooks.h.
4771 (mouse_on, mouse_off, mouse_moveto, mouse_init)
4772 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
4773 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
4774 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
4775 (IT_set_terminal_modes, IT_reset_terminal_modes)
4776 (IT_set_frame_parameters): Use tty->termscript instead of a global
4777 variable termscript.
4778 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
4779 global variable terminal_coding. Don't refer to
4780 Vnonascii_translation_table.
4781 (internal_terminal_init): Set Vwindow_system in current_kboard.
4782 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
4783 Announce date and time of session start, if termscript is open.
4784 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
4785 term.c:init_tty). Open termscript only of not already open.
4786 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
4787 here instead of dos_ttraw. Don't initialize display if this is an
4788 initial tty. Don't set FRAME_FONT.
4789 (Vwindow_system_version): Bump to 23.
4790 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
4791 is available, set up mouse_position_hook.
4792 (dos_ttraw, IT_set_terminal_modes): If called with initial
4793 terminal, do nothing.
4794 (IT_set_frame_parameters): Handle the Qtty_type frame
4795 parameter by calling internal_terminal_init.
4796 (dos_set_window_size, show_mouse_face)
4797 (clear_mouse_face, IT_note_mode_line_highlight)
4798 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
4799 (dos_rawgetc): Use tty_display_info instead of x_display_info.
4800 (initialize_msdos_display): New function.
4801 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
4802 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
4803 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
4804 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 4805 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
4806 (request_sigio, unrequest_sigio): Don't define, now defined on
4807 sysdep.c.
4808 (IT_write_glyphs): Rewrite to use encode_terminal_code.
4809
4810 * term.c [MSDOS]: Include msdos.h.
4811 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
4812 conditional to DOS_NT. Allow only one call to this function in a
4813 session. Don't allocate a new struct tty_display_info; instead,
4814 reuse the_only_display_info. Call get_tty_size to get screen
4815 dimensions. Call init_baud_rate to set bad_rate.
4816 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
4817 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 4818 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
4819 (get_tty_terminal, get_named_tty, Ftty_type)
4820 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
4821 output_termcap.
b8ff72fa
SM
4822 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
4823 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 4824 only when subprocesses are supported.
aac0c6e3
MR
4825
4826 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
4827 f->output_data.x.
4828 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
4829 terminal devices.
4830
5582fbc7 4831 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
4832 x_output.
4833 (FRAME_FONT): Use output_data.tty.
4834 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
4835 (struct x_display_info): Rename from display_info. Update all users in
4836 msdos.c.
aac0c6e3 4837 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 4838 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
4839 (dos_ttraw): Update prototype.
4840
4841 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
4842 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
4843
48442008-08-23 Jason Rumney <jasonr@gnu.org>
4845
4846 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
4847 (fn_TIFFSetDirectory): New library function used.
4848 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
4849 (tiff_load): Use :index to select among multiple images. Set count
4850 property when multiple images exist.
4851 (gif_format): Use :index, not :image.
4852
48532008-08-23 Chong Yidong <cyd@stupidchicken.com>
4854
4855 * xdisp.c (try_scrolling): Check INT_MAX instead of
4856 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
4857 to obtain INT_MAX.
4858
48592008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
4860
4861 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
4862
48632008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
4864
4865 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
4866 GNUstep library location.
4867
48682008-08-21 Chong Yidong <cyd@stupidchicken.com>
4869
4870 * xfaces.c (x_update_menu_appearance): Check validity of menu font
4871 before using it.
4872
4873 * puresize.h (BASE_PURESIZE): Increase to 1250000.
4874
48752008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4876
4877 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
4878 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
4879 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
4880 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
4881 (EmacsApp-cursor_blink_handler): Remove declaration.
4882 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
4883 match 01 Feb 2008 changes in xterm.c.
4884 (ns_read_socket): Add cast to avoid warning.
4885 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
4886 GNUstep.
4887
48882008-08-20 Chong Yidong <cyd@stupidchicken.com>
4889
4890 * xselect.c (x_get_foreign_selection): Return nil if desired
4891 selection could not be obtained, instead of signalling an error.
4892
48932008-08-20 David Reitter <david.reitter@gmail.com>
4894
4895 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
4896 * nsterm.m: Remove ns-specific code for cursor blinking.
4897 (ns_draw_window_cursor): Clear cursor properly rather than
4898 redrawing the area. Respect width of bar cursors.
4899 These changes enable the use of generic blink-cursor-mode and
4900 generic cursor types in NS and support smooth cursor movements (do
4901 not blink off after command).
4902 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
4903 Nextstep, too.
4904
49052008-08-19 Kenichi Handa <handa@m17n.org>
4906
4907 * font.c (Vfont_log_deferred): New variable.
4908 (font_add_log): Check Vfont_log_deferred.
4909 (font_deferred_log): New function.
4910
4911 * font.h (font_deferred_log): Extern it.
4912
4913 * fontset.c (reorder_font_vector): Use encoding charset of fonts
4914 for sorting.
4915 (face_for_char): Use deferred log.
4916
49172008-08-18 Kenichi Handa <handa@m17n.org>
4918
4919 * fontset.c (face_for_char): Add font log.
4920
4921 * font.c (font_add_log): Add the font properties :script, :lang,
4922 and :otf in the log.
4923
49242008-08-17 Chong Yidong <cyd@stupidchicken.com>
4925
4926 * xdisp.c: Remove dead code.
4927 (handle_invisible_prop, next_overlay_string): Defer call to
4928 setup_for_ellipsis.
4929 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
4930
49312008-08-15 Chong Yidong <cyd@stupidchicken.com>
4932
4933 * xfaces.c (lookup_derived_face): Properly handle possible zero
4934 return value of get_lface_attributes.
4935 (merge_faces): Don't tell lookup_derived_face to signal an error
4936 if face is not found.
4937
4938 * dired.c (Fdirectory_files): Doc fix.
4939
4940 * process.c (make_process): Initialize kill_without_query struct
4941 member.
4942
49432008-08-15 Eli Zaretskii <eliz@gnu.org>
4944
4945 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
4946 Alternative calculation of totphys for Visual Studio 6.
4947
4948 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
4949
4950 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
4951 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
4952 All users changed.
4953 (stat): Only root directory passed to GetDriveType. Allow RAM
4954 disk as well as local fixed disk when w32-get-true-file-attributes
4955 is set to `local'.
4956 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
4957 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
4958 (w32_cached_id, w32_add_to_cache): New functions.
4959 (get_name_and_id): Look account names in the cache before calling
4960 lookup_account_sid.
4961 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
4962 New initialization flags.
4963 (globals_of_w32): Initialize them to zero.
4964 (w32_system_process_attributes): Use w32_cached_id and
4965 w32_add_to_cache.
4966
49672008-08-14 Lawrence Mitchell <wence@gmx.li>
4968
4969 * lread.c (Fread_char, Fread_char_exclusive): If no character
4970 event is read before timeout is reached, return nil, rather than
4971 converting to a number.
4972
49732008-08-14 Chong Yidong <cyd@stupidchicken.com>
4974
4975 * fns.c (use_dialog_box): Doc fix.
4976
4977 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
4978 on OS X.
4979
49802008-08-13 Chong Yidong <cyd@stupidchicken.com>
4981
4982 * frame.c (Qns_parse_geometry): New var.
4983 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
4984
49852008-08-11 Chong Yidong <cyd@stupidchicken.com>
4986
4987 * xdisp.c (x_produce_glyphs): Handle the case when font has no
4988 space character in calculating tabs.
4989
49902008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
4991
4992 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
4993
49942008-08-10 Glenn Morris <rgm@gnu.org>
4995
4996 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
4997 silence gcc "limited range of data type" warnings in some
4998 make_fixnum_or_float calls.
4999
50002008-08-09 Eli Zaretskii <eliz@gnu.org>
5001
5002 * w32.c (w32_system_process_attributes): If the process does not
5003 exist, return nil.
5004
5005 * w32.c: Include thelp32.h, psapi.h and coding.h.
5006 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
5007 declarations.
5008 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
5009 (Process32Next_Proc): New typedefs.
5010 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
5011 (g_b_init_process32_next, g_b_init_open_thread_token)
5012 (g_b_init_impersonate_self, g_b_init_revert_to_self)
5013 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
5014 (g_b_init_get_process_working_set_size)
5015 (g_b_init_global_memory_status_ex): New static variables.
5016 (globals_of_w32): Initialize them.
5017 (create_toolhelp32_snapshot, process32_first, process32_next)
5018 (open_thread_token, impersonate_self, revert_to_self)
5019 (get_process_memory_info, get_process_working_set_size)
5020 (global_memory_status, global_memory_status_ex): New wrapper
5021 functions.
5022 (w32_list_system_processes, w32_system_process_attributes)
5023 (enable_privilege, restore_privilege, ltime, process_times):
5024 New functions.
5025 (convert_time_raw): New function.
5026 (convert_time): Remove conversion of FILETIME into time in 100
5027 nsec units, call convert_time_raw instead.
5028
5029 * process.h (w32_list_system_processes, w32_system_process_attributes):
5030 Add prototypes.
5031 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
5032 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
5033 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
5034 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
5035
5036 * process.c (Fsystem_process_attributes): Doc fix.
5037
50382008-08-08 Chong Yidong <cyd@stupidchicken.com>
5039
5040 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
5041 a continued multi-char glyph; if so, advance to the actual glyph.
5042
50432008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
5044
5045 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
5046
5047 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
5048 (.m.o): Use it.
5049 * config.in: Regenerate.
5050
50512008-08-07 Chong Yidong <cyd@stupidchicken.com>
5052
5053 * xdisp.c (redisplay_window): Revert last change.
5054 (try_window): Check bottom scroll margin too.
5055
50562008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5057
5058 * config.in: Regenerate.
5059
5060 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
5061 -list-load-path-shadows'.
5062 (nsgui.h): Reduce number of things depending on it.
5063
50642008-08-06 Chong Yidong <cyd@stupidchicken.com>
5065
5066 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
5067 instead of window-end which does the wrong thing at eob.
5068 (try_cursor_movement): Minor optimization.
5069 (redisplay_window): If scroll margin is defined, don't assume
5070 window doesn't need scrolling.
5071
50722008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5073
5074 * config.in: Regenerate.
5075
5076 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
5077 (mostlyclean): Don't delete *.d under NS.
5078
5079 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
5080
50812008-08-06 Kenichi Handa <handa@m17n.org>
5082
5083 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
5084
50852008-08-06 Andreas Schwab <schwab@suse.de>
5086
5087 * config.in: Regenerate.
5088
50892008-08-05 Chong Yidong <cyd@stupidchicken.com>
5090
5091 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
5092 forcing a window start.
5093
5094 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
5095 (auto_save_1): Update modtime when auto-save-list-file-name is on.
5096
50972008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5098
5099 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
5100 argument.
5101
51022008-08-05 Juanma Barranquero <lekktu@gmail.com>
5103
5104 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
5105 <scroll-down-aggressively, before-change-functions>:
5106 <after-change-functions>: Reflow docstrings.
5107
51082008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5109 Ken Raeburn <raeburn@gnu.org>
5110
5111 Dock menu customization, based on a patch by Ken Raeburn, plus some
5112 other fixes.
5113 * nsmenu.m (dockMenu): New variable.
5114 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
5115
5116 * nsterm.h (dockMenu): Declare.
5117
5118 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
5119 (ns_term_init): Initialize dockMenu.
5120 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
5121 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
5122 left.
5123
5124 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
5125
51262008-08-04 Chong Yidong <cyd@stupidchicken.com>
5127
5128 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
5129
5130 * config.in: Regenerate.
5131
51322008-08-04 Seiji Zenitani <zenitani@mac.com>
5133
5134 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
5135
51362008-08-04 Chong Yidong <cyd@stupidchicken.com>
5137
5138 * nsterm.h (find_and_call_menu_selection): Fix prototype.
5139
51402008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5141
5142 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
5143
5144 * keyboard.h: Comment an #endif.
5145
5146 * lisp.h (have_menus_p): Adjust comment.
5147
5148 * menu.c (find_and_return_menu_selection): Fix comparison with
5149 client_data.
5150
5151 * nsmenu.m (popup_activated_flag): New variable.
5152 (popup_activated): New function.
5153 (menu-or-popup-active-p): New exported lisp definition.
5154 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
5155 when popup done.
5156 (ns_popup_dialog): Set popup_activated_flag.
5157
5158 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
5159 version for GNUstep (handled by conditional typedef in nsterm.m).
5160 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
5161 in rgb.txt).
5162
5163 * process.c (init_process): Use DARWIN_OS, not DARWIN.
5164
5165 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
5166
5167 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
5168
5169 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
5170 shortcircuit if popup_activated like GTK and X toolkit.
5171
5172 * m/inter386.h: Change DARWIN to DARWIN_OS.
5173
5174 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
5175 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
5176 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
5177 comment on NO_SOCK_SIGIO.
5178
51792008-08-03 Chong Yidong <cyd@stupidchicken.com>
5180
5181 * nsterm.m (windowDidResize): Remove stopModal call.
5182
51832008-08-03 Andreas Schwab <schwab@suse.de>
5184
5185 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
5186 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
5187
51882008-08-02 Chong Yidong <cyd@stupidchicken.com>
5189
5190 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
5191 Don't use uninitialized pointer variable when using getrlimit.
5192
51932008-08-02 Jason Rumney <jasonr@gnu.org>
5194
5195 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
5196
51972008-08-02 Eli Zaretskii <eliz@gnu.org>
5198
5199 * alloc.c (NSTATICS): Bump to 0x640.
5200
5201 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
5202
5203 * lisp.h: Add prototype for directory_files_internal.
5204
5205 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
5206 New functions.
5207 (syms_of_process): Defsubr them. Add initializations for various
5208 Q* symbols used in procfs_system_process_attributes.
5209 (procfs_list_system_processes, procfs_system_process_attributes)
5210 [HAVE_PROCFS]: New functions.
5211 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
5212 (procfs_get_total_memory): New functions.
5213
52142008-08-01 Juanma Barranquero <lekktu@gmail.com>
5215
5216 * xfaces.c (Fx_load_color_file): Fix previous change;
5217 it is #ifdef WINDOWSNT, not WINDOWS_NT.
5218
52192008-08-01 Michael Albinus <michael.albinus@gmx.de>
5220
5221 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
5222
52232008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5224
5225 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
5226
52272008-08-01 Chong Yidong <cyd@stupidchicken.com>
5228
5229 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
5230
5231 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
5232 define NSApplicationDelegateReplySuccess.
5233 (EmacsView -converstationIdentifier): Use long instead of
5234 NSInteger for GNUstep, since it doesn't have NSInteger.
5235
5236 * xmenu.c: Revert last change.
5237
5238 * keyboard.h: Fix last change.
5239
52402008-08-01 Juanma Barranquero <lekktu@gmail.com>
5241
5242 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
5243 on Windows.
5244
52452008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5246
5247 Warning clearing and clean-up in NS port.
5248 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
5249 Add prototypes.
5250 * nsgui.h (FACE_DEFAULT): Remove, unused.
5251 (XGCValues): Change colors to unsigned long.
5252 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
5253 nsterm.m.
5254 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
5255 (ns_list_fonts): Remove, unused.
5256 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
5257 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
5258 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
5259 (nsfont_draw): Compare face colors to 0, not nil.
5260 * nsmenu.m (struct widget_value): Drop unneeded declaration.
5261 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
5262 (-addSubmenuWithTitle:): Use NSMenuItem class.
5263 (ns_popup_menu): Use NO, not NULL, for enabled setting.
5264 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
5265 (ns_clip_to_row): Make gc arg a BOOL.
5266 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
5267 ns_clip_to_row() call.
5268 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
5269 used). Cast FRAME_FONT assignments.
5270 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
5271 (ns_string_to_lispmod): Change arg to const char.
5272 (ns_term_init): Use NSMenuItem class.
5273 (EmacsApp -openFile:): Move to different section of file.
5274 (EmacsApp -application:openFiles:): Don't return a value, call
5275 -replyToOpenOrPrint:.
5276 (EmacsView -keyDown:): Fix up cast.
5277 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
5278 (EmacsView -menuDown:): Cast tag in call to
5279 find_and_call_menu_selection().
5280 (ns_list_fonts): Remove, unused.
5281 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
5282 (ns_fontname_to_xlfd): Make static.
5283 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
5284 Remove prototypes (now in keyboard.h).
5285 (next_menubar_widget_id): Remove, unused.
5286 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
5287 Remove prototypes (now in keyboard.h).
5288 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
5289
52902008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
5291
5292 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
5293 (floatfns.o): Depend on syssignal.h.
5294 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
5295
5296 * systty.h: Fix previous change that removed BSD_TERMIOS.
5297 Add comments to #ifdefs.
5298
52992008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5300
5301 * w32fns.c (w32-load-color-file): Remove.
5302 (x-open-connection): Use renamed Fx_load_color_file.
5303 * xfaces.c (x-load-color-file): Add.
5304 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
5305 Emacs.clr.
5306 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
5307
53082008-07-31 Michael Albinus <michael.albinus@gmx.de>
5309
5310 * dbusbind.c (Fdbus_call_method_asynchronously)
5311 (Fdbus_method_error_internal): New defuns.
5312 (xd_read_message): Handle also reply messages.
5313 (Vdbus_registered_functions_table): Extend docstring.
5314
53152008-07-31 Juanma Barranquero <lekktu@gmail.com>
5316
5317 * keyboard.c (gobble_input): Fix previous change.
5318
53192008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5320
5321 * bitmaps/README:
5322 * xfns.c:
5323 * termcap.c:
5324 * term.c:
5325 * syswait.h:
5326 * systty.h:
5327 * systime.h:
5328 * syssignal.h:
5329 * sysdep.c:
5330 * process.h:
5331 * process.c:
5332 * print.c:
5333 * ndir.h:
5334 * lread.c:
5335 * keyboard.c:
5336 * getpagesize.h:
5337 * floatfns.c:
5338 * fileio.c:
5339 * emacs.c:
5340 * doc.c:
5341 * dispnew.c:
5342 * dired.c:
5343 * data.c:
5344 * callproc.c:
5345 * buffer.c:
5346 * README:
5347 * Makefile.in:
5348 * s/template.h:
5349 * s/msdos.h:
5350 * m/vax.h: Remove VMS support.
5351 * s/vms.h:
5352 * vlimit.h:
5353 * uaf.h:
5354 * temacs.opt:
5355 * param.h:
5356 * ioctl.h: Remove file.
5357
53582008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5359
5360 * s/ms-w32.h (MULTI_KBOARD): Remove.
5361 * xterm.c:
5362 * xselect.c:
5363 * xfns.c:
5364 * window.c:
5365 * w32term.c:
5366 * w32fns.c:
5367 * terminal.c:
5368 * termhooks.h:
5369 * term.c:
5370 * sysdep.c:
5371 * keyboard.h:
5372 * keyboard.c:
5373 * frame.h:
5374 * frame.c:
5375 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
5376 * config.in: Regenerate.
5377
53782008-07-30 Jason Rumney <jasonr@gnu.org>
5379
5380 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
5381
5382 * w32font.c (w32font_encode_char): Leave as unicode if in range.
5383 (w32font_open_internal): Get unicode version of textmetrics.
5384 Don't enable or disable glyph indices here.
5385 (w32font_open): Disable use of glyph indices.
5386
5387 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
5388
53892008-07-30 Chong Yidong <cyd@stupidchicken.com>
5390
5391 * minibuf.c (Vread_buffer_function): Doc fix.
5392
53932008-07-30 John Paul Wallington <jpw@pobox.com>
5394
5395 * minibuf.c (read_buffer_completion_ignore_case): New var.
5396 (Fread_buffer): Use it.
5397
53982008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
5399
5400 * systty.h (sensemode): Remove empty #if. Remove reference to
5401 BSD_TERMIOS, unused.
5402
5403 * sysdep.c: Remove reference to DGUX.
5404 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
5405
5406 * config.in: Regenerate.
5407
54082008-07-30 Jason Rumney <jasonr@gnu.org>
5409
5410 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
5411
54122008-07-29 Jason Rumney <jasonr@gnu.org>
5413
5414 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
5415 is populated.
5416 (uniscribe_encode_char): Always use uniscribe.
5417 Avoid using context if cache is populated.
5418
54192008-07-29 Jan Djärv <jan.h.d@swipnet.se>
5420
5421 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
5422 open menu.
5423
5424 * gtkutil.c (menu_nav_ended): Remove.
5425 (create_menus): Remove signal connect for menu_nav_ended.
5426
54272008-07-28 Chong Yidong <cyd@stupidchicken.com>
5428
5429 * xdisp.c (redisplay_window): Check return value of
5430 compute_window_start_on_continuation_line before forcing a window
5431 start.
5432
54332008-07-28 Jason Rumney <jasonr@gnu.org>
5434
5435 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
5436
5437 * w32term.c (w32_enable_unicode_output, cleartype_active):
5438 Remove obsolete display options.
5439 (x_draw_glyph_string_background): Don't use old cleartype_active
5440 workaround.
5441 (w32_initialize): Remove cleartype_active initialization.
5442 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
5443
54442008-07-28 Andreas Schwab <schwab@suse.de>
5445
5446 * lisp.h (init_weak_hash_tables, syms_of_font)
5447 (xd_read_queued_messages, syms_of_dbusbind): Declare.
5448 (remove_hash_entry): Don't declare.
5449 * eval.c (maybe_call_debugger): Make static and move before use.
5450 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
5451 * xdisp.c: Include "gtkutil.h" if USE_GTK.
5452 * xterm.h (x_set_frame_alpha): Declare.
5453
54542008-07-28 Jan Djärv <jan.h.d@swipnet.se>
5455
5456 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
5457 (create_menus): Connect selection-done to menu_nav_ended.
5458
54592008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5460
5461 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
5462 Set Vx_resource_name to a fallback. Replace read of 'buffered'
5463 parameter with read of 'alpha' one.
5464 (Qns_frame_parameter): Remove.
5582fbc7 5465 * nsselect.m (selection-coding-system)
aac0c6e3
MR
5466 (next-selection-coding-system, Vselection_coding_system)
5467 (Vnext_selection_coding_system): Drop.
5468
54692008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5470
5471 * nsfns.m (do-applescript, do_applescript): Rename to
5472 ns-do-applescript, ns_do_applescript, and move within file.
5473
54742008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
5475
5476 Remove support for Mac Carbon.
5477 * mactoolbox.c:
5478 * macterm.h:
5479 * macterm.c:
5480 * macselect.c:
5481 * macmenu.c:
5482 * macgui.h:
5483 * macfns.c:
5484 * mac.c: Remove file.
5485 * s/darwin.h:
5486 * m/intel386.h:
5487 * xfaces.c:
5488 * xdisp.c:
5489 * window.c:
5490 * tparam.c:
5491 * termhooks.h:
5492 * termcap.c:
5493 * term.c:
5494 * syssignal.h:
5495 * sysselect.h:
5496 * sysdep.c:
5497 * process.c:
5498 * lread.c:
5499 * lisp.h:
5500 * keyboard.c:
5501 * image.c:
5502 * fringe.c:
5503 * frame.h:
5504 * frame.c:
5505 * fontset.c:
5506 * font.h:
5507 * font.c:
5508 * fns.c:
5509 * fileio.c:
5510 * emacs.c:
5511 * dispnew.c:
5512 * dispextern.h:
5513 * config.in:
5514 * atimer.c:
2ae37cf0 5515 * Makefile.in: Remove code for Carbon.
aac0c6e3 5516
f0131492 55172008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
5518
5519 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
5520
55212008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5522
5523 * macterm.h (kCGBitmapByteOrder32Host): New define for
5524 non-universal SDKs.
5525
5526 * image.c (mac_create_cg_image_from_image, image_load_image_io)
5527 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5528
5529 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
5530 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5531
55322008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
5533
5534 * w32inevt.c: Include dispextern.h.
5535
55362008-07-26 Andreas Schwab <schwab@suse.de>
5537
5538 * print.c (print_object): Fix off-by-one in last change.
5539
55402008-07-25 Juanma Barranquero <lekktu@gmail.com>
5541
5542 * term.c (syms_of_term): Don't initialize default_orig_pair,
5543 default_set_foreground and default_set_background on Windows.
5544
55452008-07-25 Jason Rumney <jasonr@gnu.org>
5546
5547 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
5548 ScriptItemize. Clean up return value checking. Remove unused
5549 variables.
5550 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
5551 shaping engine.
5552
5553 * w32font.c (w32font_has_char): Handle the case where we can't
5554 determine the script for a character.
5555
55562008-07-25 Chong Yidong <cyd@stupidchicken.com>
5557
5558 * term.c (syms_of_term): Initialize default_orig_pair,
5559 default_set_foreground, and default_set_background.
5560
5561 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
5562 clash (bug#86).
5563 (getloadavg): Callers changed.
5564
5565 * image.c (svg_load_image): Fix last change.
5566 (svg_load_image): Use rsvg_handle_get_dimensions to check that
5567 image size is valid. Use g_object_unref instead of deprecated
5568 rsvg_handle_free to free rsvg handle.
5569 (x_from_xcolors): Don't initialize pixmap (silence compiler).
5570
55712008-07-25 Jason Rumney <jasonr@gnu.org>
5572
5573 * w32font.c (w32font_encode_char): Encode characters outside BMP as
5574 surrogates before looking up glyph index.
5575 (w32font_text_extents): Encode as surrogates if falling back to
5576 functions that need UTF-16 wide chars.
5577
5578 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
5579 BMP as surrogates before looking up glyph index.
5580
55812008-07-25 Chong Yidong <cyd@stupidchicken.com>
5582
5583 * image.c (svg_load_image): Check for failure in return value of
5584 rsvg_handle_get_pixbuf. Free rsvg handle when done.
5585
55862008-07-25 Jason Rumney <jasonr@gnu.org>
5587
5588 * w32font.c (Fx_select_font): Reverse sense of second arg.
5589
55902008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
5591
5592 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
5593 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
5594
5595 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
5596 (PURESIZE): Use it.
5597
55982008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
5599
5600 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
5601 * m/alpha.h (TEXT_END):
5602 * m/ibmrs6000.h (TEXT_END):
5603 * m/macppc.h (TEXT_END):
5604 * s/darwin.h (TEXT_END):
5605 * s/msdos.h (TEXT_END): Remove, unused.
5606 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
5607 * s/cygwin.h: Remove comment.
5608
5609 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
5610 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
5611 * m/intel386.h (DOT_GLOBAL_START):
5612 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
5613 (USG): Remove, file not used on USG platforms.
5614
5615 * Makefile.in (HAVE_X11): Remove empty #else.
5616
56172008-07-24 Andreas Schwab <schwab@suse.de>
5618
5619 * fileio.c (Finsert_file_contents): Properly adjust undo list
5620 after format conversion.
5621
56222008-07-24 Jan Djärv <jan.h.d@swipnet.se>
5623
5624 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
5625 (menu_nav_ended): Remove.
5626 (create_menus): Remove signal connect for menu_nav_ended.
5627 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
5628 create_menus.
5629 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
5630
56312008-07-23 Jason Rumney <jasonr@gnu.org>
5632
5633 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
5634 with opened font.
5635 (w32font_open): Set font type to gdi.
5636
5637 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
5638
56392008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
5640
5641 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
5642 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
5643 defines it.
5644 * unexec.c (ADDR_CORRECT): Define unconditionally.
5645
5646 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
5647
5648 * unexec.c: Remove code depending on !COFF and USG, the file is
5649 not used for such systems.
5650
5651 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
5652 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
5653 (LD_SWITCH_SYSTEM_1): Remove, update users.
5654
5655 * s/darwin.h (DATA_END):
5656 * m/intel386.h (DATA_END):
5657 * m/ibmrs6000.h (DATA_END):
5658 * m/alpha.h (DATA_END): Remove, unused.
5659
5660 * config.in: Regenerate.
5661 * s/ms-w32.h (subprocesses): Define unconditionally.
5662 * s/template.h (subprocesses): Update comment.
5663 * s/vms.h (subprocesses):
5664 * s/usg5-4.h (subprocesses):
5665 * s/hpux10-20.h (subprocesses):
5666 * s/gnu-linux.h (subprocesses):
5667 * s/cygwin.h (subprocesses):
5668 * s/bsd-common.h (subprocesses):
5669 * s/aix4-2.h (subprocesses):
5670 * s/darwin.h (subprocesses): Do not define, defined by default now.
5671
5672 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
5673 Remove all references.
5674 (temacs): Add GNUstep specific ld flags.
5675
5676 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
5677 similarly to what X does.
5678
56792008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5680
5681 * nsfns.m (x-list-fonts): Remove.
5682 (syms_of_nsfns): Drop the x-list-fonts declaration.
5683 * nsterm.m: Get rid of remaining "//" comments.
5684
56852008-07-22 Chong Yidong <cyd@stupidchicken.com>
5686
5687 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
5688
5689 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
5690 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
5691 (Fns_own_selection_internal, Fx_disown_selection_internal)
5692 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
5693
5694 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
5695 ... */' style of docstrings. Doc fixes.
5696
56972008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5698
5699 * terminfo.c (UP, BC, PC): Undo previous change.
5700
5701 * nsfns.m: Rename ns prefixed functions/variables to the
5702 corresponding x versions. Update references.
5703
57042008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
5705
5706 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
5707
57082008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5709
5710 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
5711 Remove forwarding functions.
5712 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
5713 non-static.
5714 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
5715 non-static.
5716 (ns_frame_parm_handlers): Use the new names.
5717 (syms_of_nsfns): Move to the end of file.
5718
5719 * nsterm.m (syms_of_nsterm): Move to the end of file.
5720
5721 * dispnew.c (init_display): Remove code for X10.
5722
57232008-07-22 Jason Rumney <jasonr@gnu.org>
5724
5725 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
5726 bare drive.
5727
57282008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5729
5730 * nsterm.m (syms_of_nsterm): Remove debugging println.
5731
57322008-07-22 David Reitter <david.reitter@gmail.com>
5733
5734 * nsfns.m (do_applescript, F_do_applescript): NS version of the
5735 Carbon implementation of the same functionality: execute arbitrary
5736 AppleScript code.
5737
57382008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5739
5740 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
5741 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
5742 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5743 (Fx_display_mm_height, Fx_display_mm_width)
5744 (Fx_display_backing_store, Fx_display_visual_class)
5745 (Fx_display_save_under, Fx_open_connection)
5746 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
5747 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
5748 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5749 (Fx_display_pixel_width, Fx_display_pixel_height)
5750 (Fx_display_usable_bounds, Fx_display_planes)
5751 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
5752 ... */' style of docstrings.
5753
57542008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
5755
5756 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
5757 on this platform.
5758 (mips):
5759 * m/iris4d.h (mips): Do not define.
5760 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
5761
5762 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
5763
5764 * image.c:
5765 * nsfns.m:
5766 * nsselect.m:
5767 * nsterm.h:
5768 * nsterm.m: Rename ns prefixed functions/variables to the
5769 corresponding x versions. Update references.
5770
5771 * m/ibms390x.h (NO_REMAP): Do not undefine.
5772
5773 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
5774
57752008-07-21 Chong Yidong <cyd@stupidchicken.com>
5776
5777 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
5778 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
5779 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
5780 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
5781 (Fns_display_mm_height, Fns_display_mm_width)
5782 (Fns_display_backing_store, Fns_display_visual_class)
5783 (Fns_display_save_under, Fns_open_connection)
5784 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
5785 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
5786 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5787 (Fns_display_pixel_width, Fns_display_pixel_height)
5788 (Fns_display_usable_bounds, Fx_display_planes)
5789 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
5790
57912008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
5792
5793 * print.c (print_object): Check print_depth before searching for
5794 circularities.
5795
57962008-07-21 Michael Albinus <michael.albinus@gmx.de>
5797
5798 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
5799 only sprintf.
5800
58012008-07-21 Kenichi Handa <handa@m17n.org>
5802
5803 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
5804
58052008-07-20 Andreas Schwab <schwab@suse.de>
5806
5807 * syntax.c (find_start_pos, find_start_value)
5808 (find_start_value_byte, find_start_begv, find_defun_start)
5809 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
5810
58112008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5812
5813 * s/sol2-3.h: Insert contents of s/sol2.h.
5814 (LD_SWITCH_SYSTEM): Remove redundant definition.
5815 * s/sol2.h: Remove, unused.
5816
58172008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5818
5819 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
5820
58212008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5822
5823 * Makefile.in (ns_appdir): Fix typo in find command.
5824
58252008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5826
5827 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
5828
5829 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
5830 added not supported anymore.
5831
5832 * s/usg5-4-2.h (LIBS_SYSTEM):
5833 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
5834
5835 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5836 * s/lynxos.h (GETPGRP_NO_ARG):
5837 * s/hpux10-20.h (NO_SIOCTL_H):
5838 * s/gnu.h (GETPGRP_NO_ARG):
5839 * s/gnu-linux.h (NO_SIOCTL_H):
5840 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5841 * s/cygwin.h (GETPGRP_NO_ARG):
5842 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
5843 (C_DEBUG_SWITCH): Remove duplicate definition.
5844
5845 * m/ibms390.h: Remove boilerplate comments.
5846
5847 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
5848
5849 * process.c (HAVE_SERIAL): Consolidate ifdefs.
5850 (wait_reading_process_output): Remove code for SunOS, platform not
5851 supported anymore. Use SOLARIS2 instead of sun.
5852
58532008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5854
5855 * font.c (font_open_by_name): Under NS, default lface height to zero.
5856 (font_open_for_lface): Under NS, set size based on frame fontsize.
5857 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
5858 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
5859
58602008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5861
5862 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
5863 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
5864 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
5865 YES/NO.
5866 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
5867 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
5868 * Makefile.in (clean): Clear out build destination dir.
5869
58702008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5871
5872 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
5873 xterm, xselect.
5874 * lisp.h: Remove declaration of hash_remove.
5875 * nsgui.h: Remove redefinitions of hash_remove.
5876 * fns.c (hash_remove): Rename to hash_remove_from_table.
5877
58782008-07-19 Seiji Zenitani <zenitani@mac.com>
5879
5880 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
5881 strdup() the family UTF8String before modifying it.
5882
58832008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5884
5885 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
5886 NS_FACE_BACKGROUND with 0 instead of nil.
5887 * nsfont.m (nsfont_draw): Same.
5888
58892008-07-19 Chong Yidong <cyd@stupidchicken.com>
5890
5891 * nsfns.m (ns_set_background_color): Fix crash.
5892
58932008-07-18 Chong Yidong <cyd@stupidchicken.com>
5894
5895 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
5896
58972008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
5898
5899 * puresize.h (BASE_PURESIZE): Increase to 1240000.
5900
59012008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5902
5903 * gtkutil.c: Include <config.h> instead of "config.h".
5904
5905 * lisp.h (Foverlay_buffer): Add EXFUN.
5906
5907 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
5908 child process to complete child_setup. Undo 2005-09-21 change.
5909
5910 * s/darwin.h: Mention setsid after vfork.
5911
59122008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5913
5914 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
5915 Depend on macgui.h.
5916
5917 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
5918 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
5919
5920 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
5921 and f19.
5922 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
5923
5924 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
5925 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
5926 Remove enumerators.
5927
5928 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
5929 Check if FACE_FROM_ID returns NULL.
5930
59312008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
5932
5933 * w32inevt.c (change_frame_size): Remove extern declaration.
5934 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
5935 change_frame_size.
5936
59372008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5938
5939 * getloadavg.c: Revert last change (2008-07-15).
5940
59412008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5942
5943 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
5944 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
5945 from configure.
5946
59472008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
5948
5949 * s/sol2.h:
5950 * s/sol2-4.h: Reorganize conditionals.
5951
5952 * ecrt0.c: Remove code depending on m68000, not used anymore.
5953
5954 * fns.c (hash_remove): Make static.
5955 * lisp.h (hash_remove): Don't prototype.
5956
5957 * m/ibmrs6000.h:
5958 * m/ibms390x.h:
5959 * m/macppc.h: Remove boilerplate comments.
5960
5961 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
5962 Solaris, which does not need them.
5963
5964 * m/vax.h: Remove comments about unsupported systems.
5965
5966 * s/darwin.h: Reorganize ifdefs.
5967
59682008-07-17 Andreas Schwab <schwab@suse.de>
5969
5970 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
5971
59722008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
5973
5974 Use SDATA. Follow coding convention of placing operators at
5975 beginning of next line rather than end of previous line, and placing
5976 spaces around infix operators.
5977
5978 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
5979 in case it was defined already.
5980 USE @GNUSTEP_MAKEFILES@ rather than envvars.
5981 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
5982 ns_default.
5983 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
5984 Lisp_Objects.
5985 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
5986 (ns_defined_color, ns_color_to_lisp): Declare.
5987 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
5988 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
5989 it's accepted even with USE_LISP_UNION_TYPE.
5990 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
5991 (update_frame_tool_bar): Remove apparently obsolete tests for
5992 non-integerness of f->tool_bar_lines.
5993 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
5994 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
5995 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
5996 (nsfont_open): Don't confuse NULL for Qnil.
5997 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
5998 * menu.h (find_and_call_menu_selection):
5999 * menu.c (find_and_call_menu_selection): Use just int for vector size.
6000 (find_and_return_menu_selection): Always return something.
6001 * frame.h: Include dispextern.h for Display_Info.
6002 (display_x_get_resource): Declare.
6003
60042008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
6005
6006 * syntax.c: Remove stdio.h include accidentally introduced in
6007 Emacs.app commit.
6008 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
6009 NS_IMPL_COCOA.
6010 * keyboard.c (handle_async_input, input_available_signal): Remove
6011 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
6012
60132008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6014
6015 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
6016 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
6017 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
6018 Use SDATA.
6019
6020 * keymap.c: Remove all NS-specific code.
6021 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
6022 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
6023 where_is_preferred_modifier, return a different value depending on how
6024 preferred is the binding.
6025 (where_is_internal): Adjust accordingly.
6026 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
6027 Adjust to new preferred_sequence_p.
6028 (syms_of_keymap): Declare `where-is-preferred-modifier'.
6029 * keyboard.c (parse_solitary_modifier): Not static any more.
6030 * keyboard.h (parse_solitary_modifier): Declare.
6031
60322008-07-16 Andreas Schwab <schwab@suse.de>
6033
6034 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
6035 of easymenu.
6036
60372008-07-16 Chong Yidong <cyd@stupidchicken.com>
6038
6039 * xdisp.c (move_it_in_display_line): Account for word wrap, so
6040 that we don't move off the line.
6041
60422008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6043
6044 * keyboard.c (Qsuper): Remove.
6045 (parse_menu_item): Don't call where_is_internal specially for NS.
6046
60472008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6048
6049 * s/gnu-linux.h: Remove boilerplate comments.
6050
6051 * m/alpha.h (__ELF__): Consolidate conditions.
6052
6053 * m/m68k.h (linux): Use GNU_LINUX instead.
6054 Remove boilerplate comments.
6055
6056 * m/intel386.h: Undo refactoring from previous change.
6057 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
6058 too, remove dead code.
6059 (linux): Use GNU_LINUX instead.
6060
60612008-07-16 Jason Rumney <jasonr@gnu.org>
6062
6063 * w32gui.h: Repeat 26 June changes lost by last change.
6064
60652008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6066
6067 * systty.h: Remove code for Aix on 386, unsupported platform.
6068
6069 * s/ms-w32.h: Remove boilerplate comments.
6070 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
6071
6072 * s/gnu-linux.h (TERM): Remove support.
6073 (HAVE_SYSVIPC): Remove, unused.
6074 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
6075 for this system.
6076
6077 * process.c: Remove support for IRIS, unused.
6078 Remove support for TERM, not relevant anymore.
6079
6080 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
6081 used with the definition.
6082
6083 * s/aix4-2.h (static): Do not undef.
6084
6085 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
6086 only used on Aix.
6087 (HAVE_SYSVIPC): Remove, unused.
6088
6089 * m/hp800.h (CANNOT_DUMP): Do not undef.
6090
6091 * m/alpha.h: Fix comment.
6092
6093 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
6094 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
6095 used by this configuration.
6096 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
6097 * unexec.c: Remove code depending on HPUX and
6098 USG_SHARED_LIBRARIES, not used with this file. Remove code
6099 depending on IRIS, unused. Remove if 0-ed code.
6100
6101 * s/template.h: Remove comments about static.
6102
6103 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
6104 Remove if 0-ed code.
6105 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
6106 were the same as the default.
6107 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
6108 Remove boilerplate comments.
6109 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
6110 (HAVE_SYSVIPC): Remove, unused.
6111 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
6112
6113 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6114 Remove boilerplate comments.
6115 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6116 Remove boilerplate comments.
6117 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6118 Remove boilerplate comments.
6119 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
6120
6121 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
6122 USG systems which do not use DATA_SEG_BITS.
6123 Refactor code. Remove boilerplate comments.
6124
6125 * m/ibms390.h:
6126 * m/m68k.h:
6127 * s/bsd-common.h:
6128 * s/cygwin.h:
6129 * s/darwin.h:
6130 * s/freebsd.h:
6131 * s/gnu.h:
6132 * s/msdos.h: Remove boilerplate comments.
6133
6134 * m/iris4d.h: Remove boilerplate comments and code for systems that
6135 do not use this file.
6136 (IRIS_4D): Remove, unused.
6137
6138 * m/mips.h: Remove boilerplate comments and code for systems that
6139 do not use this file.
6140 (SIGN_EXTEND_CHAR):
6141 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
6142 * unexmips.c: Remove file, unused.
6143
6144 * editfns.c (Fuser_full_name): Replace the only use of
6145 USER_FULL_NAME with its value.
6146 * config.in: Regenerate.
6147
61482008-07-16 David Reitter <david.reitter@gmail.com>
6149
6150 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
6151 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6152
61532008-07-16 Glenn Morris <rgm@gnu.org>
6154
6155 * emacs.c (system-type): Doc fix.
6156
61572008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
6158
6159 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
6160 If the cache doesn't work, let's fix it, rather than work around it.
6161
61622008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6163
6164 * Makefile.in: Correct additions for nsfont.o in last commit.
6165 * nsfont.m: New file (forgot last commit).
6166
61672008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6168
6169 * callproc.c (set_initial_environment): Initialize
6170 Vprocess_environment under CANNOT_DUMP (fixes crash when
6171 batch-compiling for bootstrap).
6172
61732008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6174 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6175
6176 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
6177 fix crash due to different init order.
6178
61792008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6180
6181 Changes and additions for NeXTstep windowing system (Cocoa and
6182 GNUstep) support.
6183
6184 * Makefile.in:
6185 * config.in: Support defines and build commands for NS port.
6186 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
6187 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
6188 * dispextern.h: Include nsgui.h and add needed typedefs under NS
6189 windowing.
6190 (struct face): Add synth_ital field.
6191 * dispnew.c: Include nsterm.h when compiling under NS windowing.
6192 (init_display): Initialize Vinitial_window_system to "ns" when so
6193 compiled.
6194 * emacs.c: Include GSConfig.h when compiling under GNUstep.
6195 (display_arg): Use under NS.
6196 (main): Under NS, allocate autorelease pool and handle command line
6197 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
6198 (standard_args): Add NS-specific args.
6199 (shut_down_emacs): Shut down NS terminal if compiled under NS.
6200 * font.c (DEFAULT_ENCODING): New variable.
6201 (font_find_for_lface): Use it.
6202 (syms_of_font): Load syms_of_nsfont under NS.
6203 * font.h: Declare nsfont_driver when compiled under NS.
6204 * fontset.c: When compiling under NS, include nsterm.h.
6205 (fontset_from_font): Autoconstruct fontset under NS.
6206 * frame.c (various): Under NS, include nsterm.h, add Qns window system
6207 symbol, document and use it.
6208 (do_switch_frame): When for_deletion under Cocoa, add
6209 Fraise_frame(Qnil).
6210 (x_set_frame_parameters): Ensure font attribute changes are picked up.
6211 (x_get_arg): Allow "yes" and "no" as boolean values.
6212 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
6213 Qright under Cocoa.
6214 (focus-follows-mouse): Default to 0 under NS.
6215 * frame.h (enum output_method): Add output_ns.
6216 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
6217 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
6218 (FRAME_WINDOW_P): NS-specific definition.
6219 * fringe.c (max_used_fringe_bitmap): Make public.
6220 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
6221 (getloadavg): Use NeXT code under descendant OS's.
6222 * image.c (includes and header section, x_create_bitmap_from_data)
6223 (x_create_bitmap_from_file, free_bitmap_record, image_background)
6224 (image_background_transparent, x_clear_image_1)
6225 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6226 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
6227 (x_to_xcolors, x_from_xcolors, x_disable_image)
6228 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
6229 other GUIs, including XPM support using code originally written for
6230 Carbon GUI.
6231 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
6232 using NS API.
6233 (image_ascent): Use font metrics macros instead of direct struct field
6234 access.
6235 * keyboard.c (includes): Add nsterm.h when compiling under NS.
6236 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
6237 Also, handle NS as GTK for menu bar purposes.
6238 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
6239 toolkit where they differ.
6240 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
6241 use cachelist, still needed under NS.
6242 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
6243 (struct widget_value): Define it here for menu.c.
6244 * keymap.c (includes): Include modifier internals.
6245 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
6246 NS.
6247 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
6248 support for preferring sequences using certain modifiers, specified by
6249 the FIRSTONLY argument.
6250 * lisp.h (hash_remove): Rename to avoid name clash when compiling
6251 under NS GNUstep implementation.
6252 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
6253 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
6254 * menu.c: Include nsterm.h under NS.
6255 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
6256 (free_menubar_widget_tree_value, update_submenu_strings)
6257 (find_and_call_menu_selection): Treat NS as X and NT.
6258 (find_and_return_menu_selection): New function, used for popup menus.
6259 * nsgui.h:
6260 * nsterm.h:
6261 * nsfns.m:
6262 * nsimage.m:
6263 * nsmenu.m:
6264 * nsselect.m:
6265 * nsterm.m: New files.
6266 * process.c (wait_reading_process_output): Under NS, call ns_select()
6267 instead of plain select().
6268 * syntax.c (char_quoted): Under NS, avoid a crash when called near
6269 beginning of buffer.
6270 * sysselect.h (init_process): Rename when compiling under Cocoa to
6271 avoid name conflict.
6272 * termhooks.h (display_info): Add ns_display_info to union.
6273 * terminal.c (Fterminal_live_p): Add ns to terminal types.
6274 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
6275 COCOA environment.
6276 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
6277 unexec() signature. (Note, this will dump, but the resulting file
6278 crashes; unexosx is used instead; keeping around for reference and
6279 possible aid in getting dump working under GNUstep.)
6280 * w32gui.h (button_type, widget_value): Remove definitions (now in
6281 keyboard.h).
6282 * window.c: Include nsterm.h when compiling under NS.
6283 * xdisp.c (includes): Include nsterm.h when compiling under NS.
6284 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
6285 other GUI windowing systems.
6286 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
6287 GTK.
6288 (x_consider_frame_title): Under NS, set icon type and frame
6289 modified-state indicator; use ns_set_name_as_filename() when using
6290 formatted title.
6291 (update_window_cursor): Make public when compiling under NS.
6292 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
6293 (hourglass_atimer, Vhourglass_delay
6294 * xfaces.c (header section, init_frame_faces, clear_font_table)
6295 (defined_color, unload_color, x_face_list_fonts)
6296 (prepare_face_for_display): Add NS support parallel to other GUIs.
6297 Emulate GCs like other non-X GUIs.
6298 (split_font_name): Don't lowercase font name under NS.
6299 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
6300 under NS.
6301 * s/darwin.h: Add support for compilation under NS.
6302
63032008-07-15 Jason Rumney <jasonr@gnu.org>
6304
6305 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
6306 (w32_show_hourglass): Rename from show_hourglass.
6307 (w32_hide_hourglass): Rename from hide_hourglass.
6308 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
6309 (Vhourglass_delay): Declare extern.
6310 (hourglass_started): Remove.
6311
6312 * xdisp.c (Vhourglass_delay): Remove static.
6313 (hourglass_started, start_hourglass, cancel_hourglass):
6314 Don't include these versions on WINDOWSNT.
6315
63162008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6317
6318 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
6319 variables (formerly in xfns.c).
6320 (show_hourglass, hide_hourglass): New prototypes (same).
6321 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
6322 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
6323 in xfns.c).
6324 (syms_of_xdisp): Declare/initialize display-hourglass,
6325 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
6326 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
6327 formerly in xfns.c.
6328 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6329 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6330 (start_hourglass, cancel_hourglass): Remove.
6331 (show_hourglass, hide_hourglass): Remove prototypes and static
6332 modifiers.
6333 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
6334 hourglass_atimer, hourglass_shown_p declaration/initialization.
6335 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6336 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6337 (start_hourglass, cancel_hourglass): Remove.
6338 (show_hourglass, hide_hourglass): Remove prototypes and static
6339 modifiers.
6340 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
6341 hourglass_atimer, hourglass_shown_p declaration/initialization.
6342 * w32fns.c (display_hourglass_p, Vhourglass_delay)
6343 (DEFAULT_HOURGLASS_DELAY): Remove.
6344 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
6345 hourglass_shown_p declaration/initialization.
6346
63472008-07-14 Jason Rumney <jasonr@gnu.org>
6348
6349 * w32fns.c (w32_get_arg): Remove wrapper function.
6350 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
6351 directly.
6352 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
6353
63542008-07-14 Kenichi Handa <handa@m17n.org>
6355
6356 * xfont.c (xfont_open): Add workaround for X's bug.
6357
63582008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6359
6360 * fontset.c: Include <stdio.h> unconditionally.
6361
63622008-07-13 Michael Albinus <michael.albinus@gmx.de>
6363
6364 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
6365 for filtering.
6366
63672008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
6368
6369 * s/vms.h: Use __GNUC__ instead of _GNUC_.
6370
6371 * m/macppc.h:
6372 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
6373
6374 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
6375 (SPECIAL_EMACS_INT):
6376 * m/ia64.h (SPECIAL_EMACS_INT):
6377 * m/amdx86-64.h (SPECIAL_EMACS_INT):
6378 * s/gnu.h (NLIST_STRUCT):
6379 * s/aix4-2.h (X11R5_INHIBIT_I18N):
6380 * s/gnu-linux.h (LINUX):
6381 * s/msdos.h (HAVE_FACES):
6382 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
6383
6384 * systty.h:
6385 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
6386 anymore.
6387
63882008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
6389
6390 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
6391 always defined as int.
6392
6393 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
6394 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
6395 * s/gnu-linux.h (HAVE_WAIT_HEADER):
6396 * s/freebsd.h (HAVE_WAIT_HEADER):
6397 * s/bsd-common.h (HAVE_UNION_WAIT):
6398 * s/aix4-2.h (HAVE_WAIT_HEADER):
6399 * m/mips.h (HAVE_UNION_WAIT):
6400 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
6401 (COFF, static): Do not define, they are undefined later in the file.
6402
6403 * process.c (update_status): Don't use a union.
6404 (status_convert):
6405 (sigchld_handler): Use int instead of WAITTYPE.
6406
64072008-07-12 Chong Yidong <cyd@stupidchicken.com>
6408
6409 * indent.c (Fvertical_motion): Restore hscroll before moving to
6410 goal column.
6411
64122008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6413
6414 * lisp.h: Remove left over code.
6415
64162008-07-11 Andreas Schwab <schwab@suse.de>
6417
6418 * lisp.h: Fix logic in last change.
6419
6420 * menu.h: New file.
6421 * menu.c: Include it.
6422 * xmenu.c: Likewise.
6423 * Makefile.in: Update dependencies.
6424
64252008-07-11 Kenichi Handa <handa@m17n.org>
6426
6427 * fontset.c (fontset_from_font): Cancel the previous change.
6428
64292008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6430
6431 * lisp.h:
6432 * w32heap.c:
6433 * emacs.c:
6434 * alloc.c: Replace all references of NO_UNION_TYPE with
6435 USE_LISP_UNION_TYPE.
6436
6437 * m/xtensa.h (NO_UNION_TYPE):
6438 * m/vax.h (NO_UNION_TYPE):
6439 * m/template.h (NO_UNION_TYPE):
6440 * m/sparc.h (NO_UNION_TYPE):
6441 * m/mips.h (NO_UNION_TYPE):
6442 * m/macppc.h (NO_UNION_TYPE):
6443 * m/m68k.h (NO_UNION_TYPE):
6444 * m/iris4d.h (NO_UNION_TYPE):
6445 * m/intel386.h (NO_UNION_TYPE):
6446 * m/ibms390x.h (NO_UNION_TYPE):
6447 * m/ibms390.h (NO_UNION_TYPE):
6448 * m/ibmrs6000.h (NO_UNION_TYPE):
6449 * m/ia64.h (NO_UNION_TYPE):
6450 * m/hp800.h (NO_UNION_TYPE):
6451 * m/arm.h (NO_UNION_TYPE):
6452 * m/amdx86-64.h (NO_UNION_TYPE):
6453 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
6454 defining it the same.
6455
64562008-07-10 Chong Yidong <cyd@stupidchicken.com>
6457
6458 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
6459
64602008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6461
6462 * fileio.c:
6463 * sysdep.c
6464 * systty.h:
6465 * m/ibmrs6000.h:
6466 * m/iris4d.h:
6467 * s/aix4-2.h:
6468 * s/freebsd.h:
6469 * s/gnu-linux.h:
6470 * s/hpux10-20.h:
6471 * s/hpux11.h:
6472 * s/netbsd.h:
6473 * s/sol2-3.h:
6474 * s/sol2-4.h:
6475 * s/sol2.h:
6476 * s/usg5-4.h:
6477 * s/vms.h: Remove references to unused variables.
6478
64792008-07-10 Andreas Schwab <schwab@suse.de>
6480
6481 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
6482 pattern before matching the generic family.
6483
64842008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6485
6486 * unexec.c:
6487 * s/vms.h:
6488 * s/usg5-4-2.h:
6489 * s/sol2-5.h:
6490 * s/freebsd.h:
6491 * s/darwin.h: Remove dead code.
6492
6493 * m/template.h:
6494 * m/sparc.h:
6495 * m/mips.h:
6496 * m/m68k.h:
6497 * m/iris4d.h:
6498 * m/intel386.h:
6499 * m/ibms390x.h:
6500 * m/ibms390.h:
6501 * m/ia64.h:
6502 * m/hp800.h:
6503 * m/arm.h:
6504 * m/amdx86-64.h: Remove dead code and references to unused
6505 and compiler defined symbols.
6506
6507 * unexmips.c:
6508 * unexelf.c: Remove references to desupported systems.
6509
6510 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
6511
6512 * m/powermac.h: Remove boilerplate comments.
6513 (NO_REMAP): Remove unused definition.
6514
6515 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
6516 define them.
6517
65182008-07-10 Kenichi Handa <handa@m17n.org>
6519
6520 * xfont.c (xfont_open): Log the reason of failure.
6521
65222008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
6523
6524 * fontset.c (fontset_get_font_group):
6525 * font.c (font_check_otf): Specify argument types.
6526
65272008-07-09 Kenichi Handa <handa@m17n.org>
6528
6529 * coding.c (detect_coding_utf_8): Set detect_info->found only when
6530 non-ASCII char is found.
6531
6532 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
6533 (reorder_font_vector): Change the arg preferred_family to font.
6534 Prefer the spec matching with font.
6535 (fontset_get_font_group): New function.
6536 (fontset_find_font): Change the format of an element of a realized
6537 fontset. Use fontset_get_font_group.
6538 (fontset_font): Try the current fontset, the default fontset, the
6539 fallbacks of the current fontset, and the fallbacks of the default
6540 fontset in this order.
6541 (face_for_char): Delete the shortcut to use the current font.
6542 (fontset_from_font): Don't set fonts for Latin in the fontset.
6543
6544 * font.h (font_make_object, font_match_p): Adjust prototypes.
6545
6546 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
6547
6548 * font.c (font_make_object): New arg entity and pixelsize.
6549 (font_check_otf_features, font_check_otf): New functions.
6550 (font_match_p): Check :lang, :script, and :otf properties.
6551
6552 * xfont.c (xfont_open): Adjust it for the change of
6553 font_make_object.
6554 (xfont_text_extents): Fix initial setting of metrics.
6555
6556 * ftfont.c (struct ftfont_info): New member index, delete member
6557 fc_charset_idx. Make the member order compatible with struct
6558 xftfont_info.
6559 (fc_charset_table): Change charset names to registry names.
6560 (ftfont_pattern_entity): Delete the args registry and
6561 fc_charset_idx. Change the value of :font-entity property
6562 to (FONTNAME . INDEX). Always set :registry property to
6563 `iso10646-1'.
6564 (struct ftfont_cache_data): New struct.
6565 (ftfont_lookup_cache): New arg for_face.
6566 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
6567 (ftfont_driver): Set the member otf_capability.
6568 (ftfont_get_charset): Adjust it for the change of
6569 fc_charset_table.
6570 (OTF_TAG_SYM): New macro.
6571 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
6572 for the change of fc_charset_table.
6573 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
6574 ftfont_pattern_entity. Add FC_INDEX to objset.
6575 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
6576 and ftfont_pattern_entity.
6577 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
6578 font_make_object, struct ftfont_info.
6579 (ftfont_has_char): Use ftfont_get_fc_charset.
6580 (ftfont_otf_features, ftfont_otf_capability): New functions.
6581 (ftfont_shape): Use ftfont_get_otf.
6582 (ftfont_text_extents): Fix initial setting of metrics.
6583
6584 * xftfont.c (struct xftfont_info): New member ft_size. Make the
6585 member order compatible with struct ftfont_info.
6586 (xftfont_open): Add FC_CHARSET to the pattern. Set
6587 xftfont_info->ft_size. Don't unlock the face. Check BDF
6588 properties if appropriate.
6589 (xftfont_close): Unlock the face.
6590 (xftfont_anchor_point, xftfont_shape): Deleted.
6591 (syms_of_xftfont): Don't set members anchor_point and shape of
6592 xftfont_driver.
6593
6594 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
6595 font_make_object.
6596
6597 * w32font.c (w32font_open): Adjust it for the change of
6598 font_make_object.
6599 (w32font_open_internal): Don't set properties of font_object here.
6600
66012008-07-08 Chong Yidong <cyd@stupidchicken.com>
6602
6603 * macfns.c (x_create_tip_frame):
6604 * w32fns.c (x_create_tip_frame):
6605 * xfns.c (x_create_tip_frame): Pass parameter argument to
6606 face-set-after-frame-default.
6607
6608 * xfaces.c (Finternal_merge_in_global_face): Save merged
6609 attributes for the default face back into the face vector.
6610
66112008-07-08 Andreas Schwab <schwab@suse.de>
6612
6613 * fontset.h: Declare fontset_from_font. Don't declare
6614 new_fontset_from_font and fontset_from_font_name.
6615 * xterm.c: Include "fontset.h".
6616 * Makefile.in (xterm.o): Update dependencies.
6617
66182008-07-08 Glenn Morris <rgm@gnu.org>
6619
6620 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
6621 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
6622
66232008-07-07 Chong Yidong <cyd@stupidchicken.com>
6624
6625 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
6626 (x_set_frame_parameters): Don't bind it.
6627
66282008-07-07 Juanma Barranquero <lekktu@gmail.com>
6629
6630 * w32fns.c (map_w32_filename): Declare extern.
6631
66322008-07-07 Jason Rumney <jasonr@gnu.org>
6633
6634 * w32term.c (WS_EX_LAYERED): Define if not already.
6635
66362008-07-06 Chong Yidong <cyd@stupidchicken.com>
6637
6638 * xfaces.c (set_font_frame_param): Don't try to set the font
6639 parameter if it is still unspecified in the lface.
6640
66412008-07-05 Chong Yidong <cyd@stupidchicken.com>
6642
6643 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
6644 face if it didn't already exist.
6645
6646 * xdisp.c (try_window_id): Give up if word-wrapping is on.
6647
66482008-07-05 Andreas Schwab <schwab@suse.de>
6649
6650 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
6651
66522008-07-05 Chong Yidong <cyd@stupidchicken.com>
6653
6654 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
6655 word-wrapping.
6656 (IT_DISPLAYING_WHITESPACE): New macro.
6657 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
6658 when word-wrapping. Simplify word-wrapping logic. Use correct
6659 pixel positions when saving copies of the iterator.
6660 (display_line): Use proper wrap point if the last character on a
6661 line was preceded by whitespace.
6662
66632008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
6664
6665 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
6666
66672008-07-04 Kenichi Handa <handa@m17n.org>
6668
6669 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
6670
6671 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
6672
66732008-07-02 Jason Rumney <jasonr@gnu.org>
6674
6675 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 6676 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
6677
6678 * xdisp.c (next_element_from_display_vector): Move assignment out
6679 of if statement.
6680
66812008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
6682
6683 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
6684
6685 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
6686 (syms_of_fileio): Initialize and export them.
6687 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
6688
6689 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
6690 (Fsystem_move_file_to_trash): New function.
6691 (syms_of_w32fns): Export it to lisp.
6692
66932008-07-01 Jason Rumney <jasonr@gnu.org>
6694
6695 * w32font.c (w32font_text_extents): Don't count overhang as part
6696 of width.
6697
66982008-06-30 Miles Bader <miles@gnu.org>
6699
6700 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
6701 Add `avoid_cursor_p' field.
6702
6703 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
6704 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
6705 (append_glyph, append_composite_glyph, produce_image_glyph)
6706 (append_stretch_glyph): Initialize avoid_cursor_p.
6707 (get_it_property): Rename from `get_line_height_property'.
6708 (x_produce_glyphs): Use get_it_property.
6709 (handle_line_prefix, push_display_prop): New functions.
6710 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
6711 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
6712 New variables.
6713 (syms_of_xdisp): Initialize them.
6714
67152008-06-30 Kenichi Handa <handa@m17n.org>
6716
6717 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
6718 XftDefaultSubstitute (they are called in XftFontMatch).
6719 (xftfont_open): Fix args to ftfont_font_format.
6720
6721 * ftfont.c (fc_charset_table): New member lang.
6722 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 6723 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
6724 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
6725 (ftfont_open): Fix args to ftfont_font_format.
6726 (ftfont_font_format): New arg filename.
6727
67282008-06-30 Chong Yidong <cyd@stupidchicken.com>
6729
6730 * xfaces.c (Finternal_merge_in_global_face): If default face was
6731 modified, realize it again. Update the font face attribute.
6732
67332008-06-29 Jason Rumney <jasonr@gnu.org>
6734
6735 * w32term.c (x_set_frame_alpha): Fix logic.
6736
67372008-06-29 Kenichi Handa <handa@m17n.org>
6738
6739 * fontset.c (Finternal_char_font): Return font-object instead of
6740 font-name.
6741
6742 * composite.c (get_composition_id): Fix the width calculation for TAB.
6743
67442008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
6745
6746 * indent.c (Fvertical_motion): Properly handle float column arg.
6747
67482008-06-28 Jason Rumney <jasonr@gnu.org>
6749
6750 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
6751 (pfnSetLayeredWindowAttributes): New function pointer.
6752 (w32_initialize): Initialize it when supported.
6753 (x_set_frame_alpha): New function.
6754
6755 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
6756 (w32_frame_parm_handlers): Set alpha handler.
6757
6758 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
6759
67602008-06-27 Jason Rumney <jasonr@gnu.org>
6761
6762 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
6763 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
6764 (w32_to_x_charset, x_to_w32_charset)
6765 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6766 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6767 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6768 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6769 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6770 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6771 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
6772 (Qw32_charset_unicode): Remove.
6773 (syms_of_w32fns): Update for above changes.
6774
6775 * w32font.c (w32_to_x_charset, x_to_w32_charset)
6776 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6777 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6778 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6779 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6780 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6781 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6782 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
6783 (syms_of_w32font): Update for above changes.
6784
67852008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
6786
6787 * s/usg5-4.h: Fix previous change: keep the correct branch of a
6788 removed #if.
6789 (USG_SHARED_LIBRARIES): Remove duplicate definition.
6790
67912008-06-26 Juanma Barranquero <lekktu@gmail.com>
6792 Eli Zaretskii <eliz@gnu.org>
6793
6794 * makefile.w32-in (LOCAL_FLAGS):
6795 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
6796
6797 * sysdep.c (_spawnlp, _getpid):
6798 Declare with explicit _cdecl instead of _CRTAPI1.
6799
6800 * editfns.c (Fget_internal_run_time):
6801 Check for WINDOWSNT with #ifdef, not #if.
6802
68032008-06-26 Jason Rumney <jasonr@gnu.org>
6804
6805 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
6806
6807 * w32term.c (x_draw_glyph_string_foreground)
6808 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
6809 Use FONT_HANDLE macro.
6810 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
6811
6812 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6813 (uniscribe_encode_char): Use FONT_HANDLE macro.
6814
6815 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
6816 (w32font_text_extents): Use precast w32_font.
6817 (w32font_close): Free cached metrics.
6818 (w32font_open_internal): Allocate space for name on stack.
6819
68202008-06-26 Chong Yidong <cyd@stupidchicken.com>
6821
6822 * xdisp.c (extend_face_to_end_of_line): Fix last change.
6823
68242008-06-26 Jason Rumney <jasonr@gnu.org>
6825
6826 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
6827 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
6828
68292008-06-26 Juanma Barranquero <lekktu@gmail.com>
6830
6831 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
6832
68332008-06-26 Jason Rumney <jasonr@gnu.org>
6834
6835 * w32bdf.c, w32bdf.h: Remove obsolete files.
6836
6837 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
6838
6839 * w32gui.h: Don't include w32bdf.h.
6840 (XCharStruct, enum w32_char_font_type, W32FontStruct):
6841 Remove obsolete font support.
6842
6843 * w32font.h (struct w32font_info): Remove compat_w32_font.
6844 Add hfont member.
6845 (FONT_COMPAT): Remove obsolete macro.
6846
6847 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
6848 (w32font_encode_char, w32font_text_extents): Use new hfont member.
6849 (w32font_open_internal): Remove compat code. Set new hfont member.
6850 (Fx_select_font): Use new hfont member.
6851
6852 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6853 (uniscribe_encode_char): Use new hfont member.
6854
6855 * w32term.c (x_draw_glyph_string_foreground)
6856 (x_draw_composite_glyph_string_foreground): Use new hfont member.
6857 (x_draw_glyph_string): Use metrics in w32font_info.
6858
68592008-06-26 Kenichi Handa <handa@m17n.org>
6860
6861 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
6862
68632008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
6864
6865 * unexnext.c:
6866 * m/ews4800.h:
6867 * m/hp9000s300.h:
6868 * m/ibm370aix.h:
6869 * m/mips-siemens.h:
6870 * m/ncr386.h:
6871 * m/next.h:
6872 * m/pmax.h:
6873 * m/powerpcle.h:
6874 * m/tandem-s2.h:
6875 * s/386bsd.h:
6876 * s/bsd386.h:
6877 * s/bsd4-1.h:
6878 * s/bsd4-2.h:
6879 * s/bsdos2-1.h:
6880 * s/bsdos2.h:
6881 * s/bsdos3.h:
6882 * s/bsdos4.h:
6883 * s/nextstep.h:
6884 * s/ultrix4-3.h:
6885 * s/usg5-0.h:
6886 * s/usg5-2-2.h:
6887 * s/usg5-2.h:
6888 * s/usg5-4-3.h:
6889 * s/ux4800.h:
6890 * s/uxpds.h:
6891 * s/uxpv.h: Remove support for obsolete systems.
6892 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 6893 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
6894 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
6895 Remove, insert contents in s/aix4-2.h.
6896 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
6897 * s/bsd4-3.h: Rename to ...
6898 * s/bsd-common.h: ... this.
6899 * data.c:
6900 * doc.c:
6901 * ecrt0.c:
6902 * emacs.c:
6903 * fileio.c:
6904 * floatfns.c:
6905 * keyboard.c:
6906 * mem-limits.h:
6907 * print.c:
6908 * process.c:
6909 * sysdep.c:
6910 * syssignal.h:
6911 * systty.h:
6912 * syswait.h:
6913 * term.c:
6914 * unexec.c:
6915 * unexelf.c:
6916 * unexhp9k800.c:
6917 * m/hp800.h:
6918 * m/ibmrs6000.h:
6919 * m/mips.h:
6920 * m/vax.h:
6921 * s/darwin.h:
6922 * s/freebsd.h:
6923 * s/gnu.h:
6924 * s/ms-w32.h:
6925 * s/msdos.h:
6926 * s/netbsd.h:
6927 * s/template.h: Remove references to obsolete variables.
6928
6929 * Makefile.in: Add dependencies for all unexec files.
6930 (admindir): Remove unused variable.
6931 (UNEXEC_SRC): Remove references.
6932
69332008-06-25 Chong Yidong <cyd@stupidchicken.com>
6934
6935 * xfns.c (x_default_font_parameter): If Xft is available, first
6936 try Monospace-12 for the default font.
6937
69382008-06-25 Jason Rumney <jasonr@gnu.org>
6939
6940 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
6941
69422008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
6943
6944 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
6945
6946 * buffer.c (syms_of_buffer): Remove default-word-wrap.
6947
69482008-06-25 Juanma Barranquero <lekktu@gmail.com>
6949
6950 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
6951 <scroll-conservatively>: Fix typo in docstring.
6952
6953 * xselect.c (Fx_send_client_event): Doc fix.
6954
69552008-06-25 Kenichi Handa <handa@m17n.org>
6956
6957 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
6958
6959 * font.c (font_parse_fcname): Remove unused variables.
6960 (font_sort_entites): Delete the arg SPEC. Caller changed.
6961 Fix for the case of ! best_only.
6962 (font_delete_unmatched): Check DPI and AVGWIDTH too.
6963
6964 * lisp.h (Fstring_to_unibyte): EXFUN it.
6965
6966 * character.h (str_to_unibyte): Extern it.
6967
6968 * character.c (str_to_unibyte): New function.
6969
6970 * fns.c (Fstring_to_unibyte): New function.
6971 (syms_of_fns): Defsubr it.
6972
69732008-06-24 Kenichi Handa <handa@m17n.org>
6974
6975 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
6976 DPI too.
6977 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
6978
69792008-06-24 Andreas Schwab <schwab@suse.de>
6980
6981 * Makefile.in (${lispsource}loaddefs.el): Rename from
6982 ../lisp/loaddefs.el.
6983 (bootstrap-clean): Do what distclean does but don't remove
6984 Makefile.
6985 (distclean): Depend on bootstrap-clean and remove Makefile.
6986
69872008-06-24 Chong Yidong <cyd@stupidchicken.com>
6988
6989 * buffer.h (struct buffer): New member word_wrap.
6990
6991 * buffer.c (syms_of_buffer): New variables default-word-wrap and
6992 word-wrap.
6993 (init_buffer_once): Initialize them.
6994
6995 * dispextern.h (struct it): Replace bool truncate_lines_p with a
6996 line_wrap enum possessing three possible values.
6997
6998 * termopts.h: Replace truncate_partial_width_windows with
6999 Vtruncate_partial_width_windows.
7000
7001 * dispnew.c (direct_output_for_insert): Avoid direct output when
7002 inserting a space with word wrap on.
7003
7004 * indent.c (compute_motion): Obey integer values of
7005 truncate-partial-width-windows.
7006
7007 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
7008 replacing truncate_partial_width_windows.
7009 (init_iterator): If Vtruncate_partial_width_windows is an integer,
7010 truncate only if the window width is below that integer.
7011 (start_display, resize_mini_window, produce_stretch_glyph)
7012 (display_string, move_it_in_display_line_to): Use line_wrap.
7013 (back_to_previous_visible_line_start, reseat_1): Reset
7014 string_from_display_prop_p.
7015 (display_line): Extend default face to end of line when wrapping.
7016
70172008-06-24 Kim F. Storm <storm@cua.dk>
7018
7019 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
7020 to wrap continued lines at word boundaries.
7021
70222008-06-24 Jason Rumney <jasonr@gnu.org>
7023
7024 * font.c (Ffont_face_attributes): Multiply pixel size before point
7025 conversion to avoid multiplying rounding error.
7026
70272008-06-23 Jason Rumney <jasonr@gnu.org>
7028
7029 * w32term.c (x_draw_glyph_string_background)
7030 (x_draw_glyph_string): Remove old bdf font code.
7031
7032 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
7033
70342008-06-22 Kenichi Handa <handa@m17n.org>
7035
7036 * font.c (font_find_for_lface): Try the adstyle specified in
7037 the property of LFACE_FONT of LFACE (if any).
7038
70392008-06-21 Seiji Zenitani <zenitani@mac.com>
7040 Ryo Yoshitake <ryo@shiftmode.net>
7041
7042 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
7043
70442008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
7045
7046 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
7047 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
7048 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
7049 (witness-emacs): Remove.
7050 (lisp, shortlisp): Move loaddefs.el earlier.
7051 (mostlyclean): Forget about witness-emacs.
7052
70532008-06-22 Glenn Morris <rgm@gnu.org>
7054
7055 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
7056 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
7057
70582008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7059
7060 * Makefile.in (PRECOMP): Remove.
7061 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
7062 (witness-emacs): Run `compile-first'.
7063 (.el.elc): Use the new compile-onefile target.
7064
70652008-06-21 Kenichi Handa <handa@m17n.org>
7066
7067 * xftfont.c (xftfont_open): Handle QCembolden only when
7068 FC_EMBOLDEN is defined.
7069
70702008-06-21 Andreas Schwab <schwab@suse.de>
7071
7072 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
7073 (.el.elc): Likewise.
7074
70752008-06-21 Miles Bader <miles@gnu.org>
7076
7077 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
7078 build dir, not the lisp source dir.
7079
70802008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7081
7082 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
7083 (bootstrapclean): Remove.
7084 (.el.elc): New rule.
7085 (PRECOMP): New var.
7086 (../lisp/subdirs.el): Remove.
7087 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
7088 (witness-emacs): New target.
7089 (mostlyclean): Remove witness-emacs as well.
7090 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
7091 Add witness-emacs dependency.
7092
70932008-06-20 Chong Yidong <cyd@stupidchicken.com>
7094
7095 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
7096 defined by the font.
7097
70982008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7099
7100 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
7101 (bootstrap-clean): New target that keeps TAGS around.
7102 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
7103 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
7104
71052008-06-20 Jason Rumney <jasonr@gnu.org>
7106
7107 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
7108 Remove obsolete font code.
7109
7110 * w32font.c (font_matches_spec): Use csb bitfield from font signature
7111 to determine language support.
7112
71132008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7114
7115 * sysdep.c (cfsetspeed): New fun extracted from the code.
7116 (cfmakeraw): Move before first use.
7117
71182008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
7119
7120 * sysdep.c (cfmakeraw): Provide fallback implementation.
7121 (serial_configure): Provide fallback implementation of cfsetspeed.
7122
71232008-06-20 Kenichi Handa <handa@m17n.org>
7124
7125 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
7126 the pattern.
7127
7128 * fontset.c (fontset_from_font): Copy font_spec before changing
7129 the elements.
7130
7131 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
7132
71332008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7134
7135 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
7136 for explicit `font' parameters.
7137
7138 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
7139
71402008-06-19 Kenichi Handa <handa@m17n.org>
7141
7142 * frame.c: Include <ctype.h>.
7143 (x_set_font_backend): Allow spacing characters in the X resource
7144 for FontBackend.
7145
71462008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
7147
7148 * w32fns.c, xfns.c (Qfont_param): New var.
7149 (syms_of_w32fns): Initialize it.
7150 (x_default_font_parameter): Record explicit `font' into
7151 `font-parameter'.
7152
71532008-06-18 Kenichi Handa <handa@m17n.org>
7154
7155 * font.c (font_parse_xlfd): Fix previous change.
7156 (font_parse_fcname): Don't use :fc-unknown-spec.
7157 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
7158 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
7159 (font_add_log): Prepend the driver name to the resulting fonts.
7160
7161 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
7162 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
7163 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
7164
7165 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
7166 (QCembolden): New variables.
7167 (syms_of_xftfont): DEFSYM them.
7168 (xftfont_open): Call XftFontMatch. Don't trust the result of
7169 XftTextExtents8 if the pixel_size is less than 5.
7170
71712008-06-18 Andreas Schwab <schwab@suse.de>
7172
7173 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
7174 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
7175
71762008-06-18 Jason Rumney <jasonr@gnu.org>
7177
7178 * w32font.c (w32font_list, w32font_match): Add logging.
7179
7180 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
7181
71822008-06-17 Chong Yidong <cyd@stupidchicken.com>
7183
7184 * font.c (font_parse_fcname): Store divider characters for
7185 unknown-spec list. For known key symbols, intern using correct
7186 symbol name.
7187
71882008-06-17 Kenichi Handa <handa@m17n.org>
7189
7190 * xfaces.c (realize_default_face): If the frame is not on window
7191 system, set the fontset of face to nil.
7192
71932008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7194
7195 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
7196
71972008-06-16 Juanma Barranquero <lekktu@gmail.com>
7198
7199 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
7200 (build_font_name_from_vector): Delete externs.
7201
7202 * xfaces.c (struct font_name): Don't declare.
7203
72042008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
7205
7206 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
7207
72082008-06-16 Chong Yidong <cyd@stupidchicken.com>
7209
7210 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
7211
72122008-06-16 Juanma Barranquero <lekktu@gmail.com>
7213
7214 * font.c (Ffont_spec): Fix usage in docstring.
7215 (Ffont_face_attributes): Doc fix.
7216
72172008-06-16 Andreas Schwab <schwab@suse.de>
7218
7219 * font.c (Ffont_face_attributes): Fix definition.
7220
72212008-06-16 Jason Rumney <jasonr@gnu.org>
7222
7223 * font.h (font_style_symbolic_from_value): Remove.
7224
7225 * font.c (font_style_symbolic_from_value): Remove.
7226 (font_style_symbolic): Revert to pre 2008-06-13 version.
7227
7228 * w32font.c (w32_to_fc_weight): New function.
7229 (w32font_full_name, logfont_to_fcname): Use it.
7230
72312008-06-16 Kenichi Handa <handa@m17n.org>
7232
7233 * font.c (font_check_object): Delete it.
7234 (font_clear_cache): Check if a font-object is alive.
7235 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
7236 font-object to nil.
7237 (font_close_object): Don't check FONT_CLOSE_OBJECT.
7238 (font_at): Don't call font_check_object.
7239 (Ffont_get): Return a symbol for :weight, :slant, and :width.
7240
72412008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
7242
7243 * puresize.h (BASE_PURESIZE): Increase to 1230000.
7244
72452008-06-16 Chong Yidong <cyd@stupidchicken.com>
7246
7247 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
7248
72492008-06-15 Chong Yidong <cyd@stupidchicken.com>
7250
7251 * font.c (font_parse_fcname): Only one decimal point.
7252 (font_unparse_fcname): Handle data in family and foundry indices
7253 as symbols, not strings.
7254 (font_unparse_gtkname, Ffont_face_attributes): New functions.
7255
7256 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
7257
7258 * font.h (font_unparse_gtkname): Add prototype.
7259
72602008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7261
7262 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
7263
72642008-06-15 Andreas Schwab <schwab@suse.de>
7265
7266 * font.c (font_update_drivers): Fix crash when no drivers match.
7267
72682008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
7269
7270 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
7271 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
7272
72732008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
7274
7275 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
7276
72772008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
7278
7279 * process.c (Fserial_process_configure, Fprocess_send_eof):
7280 Use EQ to compare Lisp_Objects.
7281
72822008-06-13 Jason Rumney <jasonr@gnu.org>
7283
7284 * w32fns.c (Fw32_select_font): Remove old font API function.
7285
7286 * w32font.c (logfont_to_fcname): New function.
7287 (Fx_select_font): New font dialog function compatible with
7288 GTK/fontconfig version.
7289
7290 * font.c (font_style_symbolic_from_value): New function.
7291 (font_style_symbolic): Use it.
7292
7293 * font.h (font_style_symbolic_from_value): Declare new function.
7294
72952008-06-13 Juanma Barranquero <lekktu@gmail.com>
7296
7297 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
7298 <font-width-table>: Fix typos in docstrings.
7299
73002008-06-13 Daniel Engeler <engeler@gmail.com>
7301
7302 These changes add serial port access.
7303 * process.c: Add HAVE_SERIAL.
7304 (Fdelete_process, Fprocess_status, Fset_process_buffer)
7305 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
7306 (list_processes_1, select_wrapper, Fstop_process)
7307 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
7308 (status_notify): Modify to handle serial processes.
7309 [HAVE_SERIAL] (Fserial_process_configure)
7310 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
7311 New functions.
7312 * process.h (struct Lisp_Process): Add `type'.
7313 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
7314 New functions.
7315 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
7316 serial ports.
b71ac3dd 7317 (serial_open, serial_configure): New functions.
aac0c6e3
MR
7318 * w32.h: Add FILE_SERIAL.
7319 (struct _child_process): Add ovl_read, ovl_write.
7320
73212008-06-13 Kenichi Handa <handa@m17n.org>
7322
7323 * dispextern.h (enum lface_attribute_index): New member
7324 LFACE_FOUNDRY_INDEX.
7325
7326 * font.c (font_score): Delete arg alternate_families. Check only
7327 weight, slant, width, and size. Ignore the difference of alias
7328 style symbols.
7329 (font_sort_entites): Adjust for the above change. Reflect the
7330 order of font-driver to scores.
7331 (font_list_entities): Don't check alternate_familes here.
7332 (font_clear_prop): Handle foundry.
7333 (font_update_lface): Don't parse "foundry-family" form here.
7334 Handle FONT_FOUNDRY_INDEX.
7335 (font_find_for_lface): Likewise. Handle alternate families here.
7336 If registry is nil, try iso8859-1 and ascii-0.
7337 (font_open_for_lface): Pay attention to size in ENTITY.
7338 (font_open_by_name): Simplify by calling font_load_for_lface.
7339 (free_font_driver_list): Delete it.
7340 (font_update_drivers): Preserve the order of backends.
7341 (syms_of_font): Setting of sort_shift_bits adjusted for the change
7342 of font_score and font_sort_entites.
7343 (font_update_sort_order): Likewise.
7344
7345 * xfaces.c (LFACE_FOUNDRY): New macro.
7346 (check_lface_attrs): Check foundry.
7347 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
7348 (merge_face_vectors): Check foundry.
7349 (merge_face_ref): Likewise.
7350 (Finternal_set_lisp_face_attribute): Likewise.
7351 (x_update_menu_appearance): Likewise.
7352 (Finternal_get_lisp_face_attribute): Likewise.
7353 (lface_hash): Likewise.
7354 (lface_same_font_attributes_p): Likewise.
7355 (x_supports_face_attributes_p): Likewise.
7356 (tty_supports_face_attributes_p): Likewise.
7357 (Finternal_set_alternative_font_family_alist): Intern strings.
7358 (Finternal_set_alternative_font_registry_alist): Downcase strings.
7359 (realize_default_face): Set LFACE_FOUNDRY (lface).
7360
7361 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
7362 font-driver at first.
7363
7364 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
7365
73662008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7367
7368 * lread.c (Fload): Use xfree, not free on saved_doc_string.
7369
73702008-06-12 Jim Meyering <meyering@redhat.com>
7371
7372 Make unexec_free handle NULL the same way free does.
7373 * unexmacosx.c (unexec_free): Ignore a NULL argument.
7374
73752008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
7376
7377 * character.h (CHAR_TO_BYTE_SAFE): New macro.
7378 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
7379 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
7380 (WEAK_ALIAS): Simplify.
7381 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
7382 when searching a unibyte buffer.
7383
73842008-06-12 Chong Yidong <cyd@stupidchicken.com>
7385
7386 * xfns.c (Fx_select_font): Rename from x-font-dialog.
7387
73882008-06-12 Juanma Barranquero <lekktu@gmail.com>
7389
7390 * w32font.c: Include ctype.h.
7391
73922008-06-11 Jason Rumney <jasonr@gnu.org>
7393
7394 * w32font.c (w32font_encode_char): Detect missing glyphs that are
7395 misreported as space.
7396 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
7397 as aliases for registry iso10646-1.
7398
73992008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
7400
7401 * buffer.c (clone_per_buffer_values): Skip `name'.
7402
74032008-06-11 Chong Yidong <cyd@stupidchicken.com>
7404
7405 * font.c (font_parse_fcname): Fix last change; accept decimal
7406 points in font size.
7407
74082008-06-10 Jason Rumney <jasonr@gnu.org>
7409
7410 * w32uniscribe.c (add_opentype_font_name_to_list):
7411 Skip non unicode fonts.
7412
74132008-06-10 Chong Yidong <cyd@stupidchicken.com>
7414
7415 * xfns.c (Fx_font_dialog): New function.
7416
7417 * gtkutil.c (xg_dialog_response_cb): Rename from
7418 xg_file_response_callback.
7419 (pop_down_dialog): Rename from pop_down_file_dialog.
7420 (xg_get_file_name): Callers changed.
7421 (xg_get_font_name): New function.
7422
7423 * gtkutil.h (xg_get_font_name): Insert prototype.
7424
74252008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7426
7427 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
7428 x_underline_minimum_display_offset.
7429 (syms_of_xdisp): Declare it here rather than in xterm.c.
7430 * dispextern.h (underline_minimum_offset): Declare it.
7431 * w32term.c (x_draw_glyph_string): Use it.
7432 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
7433 (syms_of_xterm): Don't declare it any more.
7434 (x_draw_glyph_string): Adjust to the new name.
7435
74362008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
7437
7438 * xterm.c (x_underline_minimum_display_offset): New var.
7439 (x_draw_glyph_string): Use it.
7440 (syms_of_xterm): Declare it.
7441
74422008-06-10 Chong Yidong <cyd@stupidchicken.com>
7443
7444 * font.c (font_parse_fcname): Accept GTK-style font names too.
7445
74462008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7447
7448 * dired.c (file_name_completion): Don't return t if the match is exact
7449 but with different capitalization.
7450 * minibuf.c (Ftry_completion): Simplify.
7451
7452 * window.c (Vwindow_point_insertion_type): New var.
7453 (set_window_buffer): Use it.
7454 (syms_of_window): Init and export it to Lisp.
7455
74562008-06-10 Kenichi Handa <handa@m17n.org>
7457
7458 * font.h (font_intern_prop): Prototype adjusted.
7459
7460 * font.c (font_intern_prop): New arg force_symbol.
7461 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
7462 Adjust for the change of font_intern_prop.
7463
7464 * ftfont.c (ftfont_pattern_entity):
7465 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
7466 (w32_registry):
7467 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
7468 the change of font_intern_prop.
7469
74702008-06-09 Juanma Barranquero <lekktu@gmail.com>
7471
7472 * w32menu.c (digest_single_submenu): Declare extern.
7473
74742008-06-09 Jason Rumney <jasonr@gnu.org>
7475
7476 * w32term.c (x_make_frame_visible): Use alternate restore flags.
7477
7478 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
7479 (parse_single_submenu): Remove.
7480 (digest_single_submenu): Remove.
7481 (syms_of_w32menu): Don't initialise variables that have moved
7482 to menu.c.
7483 (set_frame_menubar): Sync with version in xmenu.c.
7484 (w32_menu_show): Sync with xmenu_show in xmenu.c.
7485
7486 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
7487 Make static again.
7488
74892008-06-09 Jason Rumney <jasonr@gnu.org>
7490
7491 Changes to w32 files related to the move of common menu code
7492 to menu.c on 2008-06-08 by Chong Yidong.
7493
7494 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
7495 defs to w32gui.h.
7496 (single_keymap_panes, push_menu_item, push_menu_pane):
7497 Make globally visible.
7498
7499 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
7500 (local_free, malloc_widget_value, free_widget_value)
7501 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
7502 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
7503 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
7504 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
7505 (menu_items, menu_items_allocated, menu_items_used)
7506 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
7507 (init_menu_items, finish_menu_items, discard_menu_items)
7508 (grow_menu_items, push_submenu_start, push_submenu_end)
7509 (push_left_right_boundary, push_menu_pane, push_menu_item)
7510 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
7511 (free_menubar_widget_tree_value, parse_single_submenu)
7512 (update_submenu_strings): Remove functions.
7513 (xmalloc_widget_value): Remove and declare extern.
7514
7515 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
7516 (OBJ1): Build it.
7517
7518 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
7519 (local_heap, local_alloc, local_free, malloc_widget_value)
7520 (free_widget_value): Define here.
7521
75222008-06-09 Kenichi Handa <handa@m17n.org>
7523
7524 * font.h (Qascii_0): Extern it.
7525
7526 * font.c (Qascii_0): New variable.
7527 (syms_of_font): DEFSYM it.
7528 (font_open_by_name): If the registry "iso8859-1" fails, try also
7529 "ascii-0".
7530
7531 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
7532
75332008-06-08 Kenichi Handa <handa@m17n.org>
7534
7535 * .gdbinit (xfont): New command.
7536
75372008-06-08 Andreas Schwab <schwab@suse.de>
7538
7539 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
7540 * Makefile.in (menu.o): Update dependencies.
7541
7542 * Makefile.in (obj): Always add menu.o.
7543 * emacs.c (main): Always call syms_of_menu.
7544 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
7545
75462008-06-08 Chong Yidong <cyd@stupidchicken.com>
7547
7548 * Makefile.in: Compile menu.c.
7549
7550 * lisp.h: Declare syms_of_menu.
7551
7552 * emacs.c (main): Call syms_of_menu.
7553
7554 * keyboard.h: Relocate platform-independent menu definitions from
7555 xmenu.c.
7556
7557 * menu.c: New file. Relocate platform-independent menu
7558 definitions from xmenu.c. Suggested by Adrian Robert.
7559
7560 * xmenu.c: Remove platform-independent menu definitions.
7561 (menu_items menu_items_inuse, menu_items_allocated)
7562 (menu_items_used, menu_items_n_panes)
7563 (menu_items_submenu_depth): Move to keyboard.h.
7564 (init_menu_items, finish_menu_items, unuse_menu_items)
7565 (discard_menu_items, restore_menu_items, save_menu_items)
7566 (grow_menu_items, push_submenu_start, push_submenu_end)
7567 (push_left_right_boundary, push_menu_pane, push_menu_item)
7568 (keymap_panes, single_keymap_panes, single_menu_item)
7569 (list_of_panes, list_of_items, find_and_call_menu_selection)
7570 (xmalloc_widget_value, free_menubar_widget_value_tree)
7571 (parse_single_submenu, digest_single_submenu)
7572 (update_submenu_strings): Move to menu.c.
7573
75742008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
7575
7576 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
7577
75782008-06-06 Miles Bader <miles@gnu.org>
7579
7580 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
7581 face, not frame default.
7582
75832008-06-05 Martin Rudalics <rudalics@gmx.at>
7584
7585 * window.c (pop_up_windows, pop_up_frames)
7586 (display_buffer_reuse_frames, Vpop_up_frame_function)
7587 (Vdisplay_buffer_function, Veven_window_heights)
7588 (Vspecial_display_buffer_names, Vspecial_display_regexps)
7589 (Vspecial_display_function, Vsame_window_buffer_names)
7590 (Vsame_window_regexps, split_height_threshold)
7591 (Vsplit_window_preferred_function): Move those vars to window.el.
7592 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
7593 (Fdisplay_buffer): Move those functions to window.el.
7594 (syms_of_window): Remove corresponding declarations.
7595 (display_buffer): New function.
7596 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
7597 * dispnew.c (Flast_nonminibuf_frame): New function.
7598 * buffer.c (Fpop_to_buffer): Move to window.el.
7599
76002008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7601
7602 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
7603
76042008-06-05 Kenichi Handa <handa@m17n.org>
7605
7606 * coding.c (detect_coding): Fix previous change.
7607 (detect_coding_system): Likewise.
7608
76092008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7610
7611 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
7612
7613 * keymap.c (Vminibuffer_local_filename_must_match_map):
7614 Rename from Vminibuffer_local_must_match_filename_map.
7615 (syms_of_keymap):
7616 * minibuf.c (Fcompleting_read): Adjust accordingly.
7617 * commands.h: Rename declaration as well.
7618
76192008-06-05 Kenichi Handa <handa@m17n.org>
7620
7621 * font.c (Ffont_spec): Don't use font_parse_family_registry for
7622 family name.
7623 (Ffont_put): Likewise.
7624
7625 * fontset.c (fontset_find_font): Call font_open_for_lface with the
7626 current font-spec.
7627
7628 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
7629 is unspecified.
7630
7631 * xfaces.c (realize_x_face): If the font-related face attributes
7632 are the same as those of default face, realize a new fontset from
7633 default->fontset.
7634 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
7635
76362008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7637
7638 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
7639 (move_it_in_display_line): New wrapper.
7640
7641 * window.c (window_scroll_pixel_based_preserve_x)
7642 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
7643 (window_scroll_pixel_based, window_scroll_line_based):
7644 Use them to preserve column positions.
7645 (syms_of_window): Initialize them.
7646
7647 * indent.c (Fvertical_motion): Extend first arg to allow passing an
7648 (HPOS . VPOS) pair.
7649
7650 * dispextern.h (move_it_in_display_line): Declare.
7651
76522008-06-05 Juanma Barranquero <lekktu@gmail.com>
7653
7654 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
7655 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
7656 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
7657
76582008-06-04 Juanma Barranquero <lekktu@gmail.com>
7659
7660 * window.c (Fset_window_parameter): Doc fix.
7661 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
7662
76632008-06-04 Joakim Verona <joakim@verona.se>
7664
7665 * window.h (struct window): Add new member window_parameters.
7666
7667 * window.c (Fwindow_parameters, Fwindow_parameter)
7668 (Fset_window_parameter): New defuns.
7669 (syms_of_window): Defsubr the new defuns.
7670 (make_window): Initialize window_parameters to nil.
7671
76722008-06-04 John Paul Wallington <jpw@pobox.com>
7673
7674 * eval.c (Fdefmacro): Doc fix.
7675
76762008-06-04 Kenichi Handa <handa@m17n.org>
7677
7678 * coding.c (detect_coding): Fix handling of coding->head_ascii.
7679 Be sure to call setup_coding_system when we find a proper coding system.
7680 (detect_coding_system): Fix handling of coding->head_ascii.
7681
76822008-06-03 Andreas Schwab <schwab@suse.de>
7683
7684 * font.c (font_prop_validate_spacing): Fix last change.
7685
76862008-06-03 Kenichi Handa <handa@m17n.org>
7687
7688 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
7689 (font_parse_fcname): Fix handling of unknown key.
7690
7691 * xfont.c (xfont_list): Try an alias.
7692
7693 * charset.c (char_charset): Return NULL if the arg charset_list is
7694 specified and C doesn't belong to any of them.
7695
76962008-06-02 Chip Coldwell <coldwell@redhat.com>
7697
7698 * font.c (font_pixel_size): Don't take cdr of an integer.
7699
77002008-06-02 Jim Meyering <meyering@redhat.com>
7701
7702 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
7703 * alloc.c (xfree): Return right away for a NULL arg.
7704 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
7705 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
7706 * mac.c (create_apple_event_from_event_ref): Likewise.
7707 (create_apple_event_from_drag_ref, cfstring_create_normalized):
7708 Likewise.
7709 * doprnt.c (doprnt1): Likewise.
7710 * frame.c (frame): Likewise.
7711 * keyboard.c (wipe_kboard): Likewise.
7712 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
7713 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
7714 * term.c (tty_default_color_capabilities, maybe_fatal)
7715 (delete_tty): Likewise.
7716 * w16select.c (string): Likewise.
7717 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
7718 * w32bdf.c (w32_free_bdf_font): Likewise.
7719 * w32fns.c (w32_unload_font): Likewise.
7720 * w32font.c (w32font_close): Likewise.
7721 * window.c (size_window): Likewise.
7722 * xselect.c (receive_incremental_selection): Likewise.
7723 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
7724 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
7725 * w32.c (stat): Likewise.
7726
7727 Remove useless if-before-free tests.
7728 * editfns.c (Fset_time_zone_rule): Likewise.
7729 * lread.c (nosuffix): Likewise.
7730 * ralloc.c (get_bloc): Likewise.
7731 * regex.c (reg_free): Likewise.
7732 * xftfont.c (xftfont_open, xftfont_close): Likewise.
7733 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
7734 * xsmfns.c (smc_save_yourself_CB): Likewise.
7735
77362008-06-02 Kenichi Handa <handa@m17n.org>
7737
7738 * font.c (font_find_for_lface): Handle float font size.
7739 (font_open_for_lface): Likewise.
7740
7741 * xfaces.c (x_supports_face_attributes_p): Check face->font before
7742 comparing the properties.
7743
77442008-06-01 Jason Rumney <jasonr@gnu.org>
7745
7746 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
7747 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
7748 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
7749 Don't add empty script list.
7750 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
7751
77522008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
7753
7754 * Makefile.in (dot, dotdot): Remove, update users.
7755 ".." has been used elsewhere in the file for a long time.
7756 (LIBXT_STATIC): Remove conditional based on unused variable.
7757
77582008-06-01 Miles Bader <miles@gnu.org>
7759
7760 * xfaces.c (Vface_remapping_alist): New variable.
7761 (syms_of_xfaces): Initialize it.
7762 (enum named_merge_point_kind): New type.
7763 (struct named_merge_point): Add `named_merge_point_kind' field.
7764 (push_named_merge_point): Make cycle detection respect different
7765 named-merge-point kinds.
7766 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
7767 Remove face-name alias resolution.
7768 (lface_from_face_name): New definition using
7769 `lface_from_face_name_no_resolve'.
7770 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
7771 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
7772 (get_lface_attributes): New definition that layers face-remapping on
7773 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
7774 (lookup_basic_face): New function.
7775 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
7776 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
7777 `get_lface_attributes'.
7778 (face_at_buffer_position): Use `lookup_basic_face' to lookup
7779 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
7780 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
7781
7782 * xdisp.c (init_iterator): Pass base_face_id through
7783 `lookup_basic_face' when we actually use it as a face-id.
7784 (handle_single_display_prop): Use `lookup_basic_face' to lookup
7785 DEFAULT_FACE_ID.
7786
7787 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
7788 lookup the initial face-id.
7789
7790 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
7791
77922008-06-01 Juanma Barranquero <lekktu@gmail.com>
7793
7794 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
7795 (Fremove_text_properties): Fix typos in docstrings.
7796
77972008-05-31 Kenichi Handa <handa@m17n.org>
7798
7799 * font.c (font_list_entities): Fix the car part of data to be
7800 stored in the cache.
7801
7802 * ftfont.c (ftfont_font_format): Don't use strcasestr.
7803
78042008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7805
7806 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
7807 Add a `test' argument so another predicate than `equal' can be used.
7808 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
7809 (map_char_table): Remove unused vars `c' and `i'.
7810 * lisp.h (Foptimize_char_table): Adjust declaration.
7811 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
7812
78132008-05-30 Kenichi Handa <handa@m17n.org>
7814
7815 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
7816 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
7817 defined.
7818
78192008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7820
7821 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7822 (Fmake_variable_frame_local): Disallow mixing buffer-local and
7823 frame-local settings for the same variable.
7824
78252008-05-30 Kenichi Handa <handa@m17n.org>
7826
7827 * fontset.c (Ffont_info): Move to font.c.
7828 (syms_of_fontset): Delete defsubr of Sfont_info.
7829
7830 * font.c (font_style_to_value, font_score): Delete casting of the
7831 args to xstcasecmp.
7832 (register_font_driver): Increment num_font_drivers only when
7833 registering the driver globally.
7834 (Ffont_info): Move from fontset.c. Handle a font object too.
7835 (syms_of_font): Defsubr Sfont_info.
7836
78372008-05-29 Kenichi Handa <handa@m17n.org>
7838
7839 * coding.h (enum define_coding_utf8_arg_index): New enum.
7840 (enum coding_attr_index): Change coding_attr_utf_16_bom to
7841 coding_attr_utf_bom.
7842 (enum utf_bom_type): Rename from utf_16_bom_type.
7843 (struct utf_16_spec): Adjust for the above change.
7844 (struct coding_system): Add utf_8_bom in `spec' union.
7845
7846 * coding.c (CODING_UTF_8_BOM): New macro.
7847 (enum coding_category): Delete coding_category_utf_8, add
7848 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
7849 coding_category_utf_8_sig.
7850 (CATEGORY_MASK_UTF_8): Delete it.
7851 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
7852 (CATEGORY_MASK_UTF_8_SIG): New macros.
7853 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
7854 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
7855 CATEGORY_MASK_UTF_8_SIG.
7856 (CATEGORY_MASK_UTF_8): New macro.
7857 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
7858 (detect_coding_utf_8): Check BOM.
7859 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
7860 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
7861 (encode_coding_utf_16): Likewise.
7862 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
7863 (detect_coding, detect_coding_system): Handle utf-8-auto.
7864 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
7865 (syms_of_coding): Fix setting up of Vcoding_category_table.
7866
78672008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
7868
7869 * process.c (Faccept_process_output): If `millisec' is non-nil,
7870 `seconds' default to 0.
7871 (wait_reading_process_output): Also return non-nil if we read output
7872 from a non-running process.
7873
78742008-05-29 Jason Rumney <jasonr@gnu.org>
7875
7876 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
7877 `raster' specified.
7878 (add_font_entity_to_list): Allow non-opentype truetype fonts back
7879 in the uniscribe backend, but disallow any font that has no
7880 unicode subrange support.
7881
78822008-05-29 Juanma Barranquero <lekktu@gmail.com>
7883
7884 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
7885 Fix typos in docstrings.
7886
78872008-05-29 Kenichi Handa <handa@m17n.org>
7888
7889 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
7890 (Fx_family_fonts): Set frame correctly.
7891
78922008-05-28 Jason Rumney <jasonr@gnu.org>
7893
7894 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
7895
78962008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7897
7898 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
7899 calling build_annotations.
7900
79012008-05-28 Juanma Barranquero <lekktu@gmail.com>
7902
7903 * coding.c (Fdecode_coding_region, Fencode_coding_region)
7904 (Fencode_coding_string):
7905 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
7906 <latin-extra-code-table>: Fix typos in docstrings.
7907 (syms_of_coding) <coding-system-alist>: Doc fix.
7908 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
7909
79102008-05-28 Kenichi Handa <handa@m17n.org>
7911
7912 * fontset.c (Ffont_info): Don't call font_close_object.
7913
7914 * font.c (font_parse_family_registry): Use Ffont_put to validate
7915 foundry and family.
7916 (font_delete_unmatched): Don't check spacing.
7917 (font_list_entities): Add spacing to the spec to list fonts.
7918
7919 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
7920 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
7921
7922 * coding.c (encode_coding_raw_text): Fix previous change.
7923 (encode_coding_object): When the dst_object is a buffer and is
7924 different from src_object, move gap to PT.
7925
79262008-05-27 Chong Yidong <cyd@stupidchicken.com>
7927
7928 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
7929
79302008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7931
7932 * coding.c (encode_coding_raw_text): Set coding->produced_char for
7933 all branches. Compute it differently.
7934
7935 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
7936
79372008-05-27 Juanma Barranquero <lekktu@gmail.com>
7938
7939 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
7940 into "else if () ... else ...".
7941
79422008-05-27 Jason Rumney <jasonr@gnu.org>
7943
7944 * w32font.c (w32font_open_internal): Determine if glyph indices
7945 are likely to work here.
7946
79472008-05-27 Chong Yidong <cyd@stupidchicken.com>
7948
7949 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
7950 draw overlap glyphs with appropriate highlighting.
7951
79522008-05-27 Kenichi Handa <handa@m17n.org>
7953
7954 * xfont.c (xfont_open): Fix calculation of font->average_width.
7955
79562008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7957
7958 * casefiddle.c (casify_object): Try to guess better whether the
7959 argument is a byte or a char.
7960
79612008-05-26 Andreas Schwab <schwab@suse.de>
7962
7963 * xselect.c (x_reply_selection_request): Properly handle format == 32.
7964 Always send multiples of format size.
7965
7966 * xterm.c (x_set_frame_alpha): Fix type mismatch.
7967
79682008-05-26 Jason Rumney <jasonr@gnu.org>
7969
7970 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
7971 (compute_metrics): Don't set failure if we just cleared the cache.
7972 (w32_weight_table): Remove unused variable.
7973 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
7974 backwards compatibility.
7975
79762008-05-25 Kenichi Handa <handa@m17n.org>
7977
7978 * w32term.c (x_draw_glyph_string):
7979 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
7980
7981 * xfaces.c: Delete unused function prototypes.
7982 (xstrlwr, font_frame): Delete them.
7983 (clear_face_cache): Delete unused variable.
7984
7985 * xftfont.c (xftfont_open): Delete unused variable.
7986 If underline_thickness is not 1, adjust underline_position.
7987
7988 * ftxfont.c (ftxfont_open): Delete unused variable.
7989
7990 * fontset.c (face_for_char): Optimize for the case of no charset
7991 property.
7992
7993 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
7994 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
7995 (otf_open, font_otf_capability, generate_otf_features)
7996 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
7997 Comment out by surrounding "#if 0" and "#endif" for the moment.
7998 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
7999 (syms_of_font): Codes for accessing above commented out.
8000
80012008-05-24 Eli Zaretskii <eliz@gnu.org>
8002
8003 * w32proc.c: Include dispextern.h.
8004
8005 * w32.c: Include dispextern.h.
8006
80072008-05-23 Juanma Barranquero <lekktu@gmail.com>
8008
8009 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
8010 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
8011 Fix typos in docstrings.
8012
80132008-05-23 Jason Rumney <jasonr@gnu.org>
8014
8015 * xsmfns.c: Remove includes that are already included by config.h.
8016
80172008-05-23 Kenichi Handa <handa@m17n.org>
8018
8019 * charset.c (Qemacs, charset_emacs): New variables.
8020 (char_charset): Fix for non-Unicode characters.
8021 (syms_of_charset): Define charset_emacs.
8022
8023 * w32term.c (x_draw_glyph_string): Be sure to update
8024 s->underline_thickness and s->underline_position. Be sure to draw
8025 underline within the current line area.
8026
8027 * xterm.c (x_draw_glyph_string): Be sure to update
8028 s->underline_thickness and s->underline_position. Be sure to draw
8029 underline within the current line area.
8030
8031 * fontset.c: Delete unused variables and add casting for char *
8032 throughout the file.
8033 (fontset_font): Try the fallback fonts of the current fontset
8034 before consulting the default fontset.
8035
8036 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
8037
8038 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
8039
80402008-05-22 Jason Rumney <jasonr@gnu.org>
8041
8042 * font.c: Don't include strings.h.
8043
8044 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
8045
8046 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
8047 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
8048 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
8049 to call xstrcasecmp.
8050
8051 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
8052
8053 * fontset.c (fs_query_fontset): Use xstrcasecmp.
8054
8055 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
8056
8057 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
8058
80592008-05-22 Kenichi Handa <handa@m17n.org>
8060
8061 * puresize.h (BASE_PURESIZE): Increase to 1220000.
8062
8063 * font.c (font_prop_validate_style): Adjust for the format
8064 change of font_style_table.
8065
8066 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
8067 two args.
8068
8069 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
8070 two args.
8071
80722008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
8073
8074 * minibuf.c (keys_of_minibuf): Delete.
8075 * lisp.h (keys_of_minibuf): Delete.
8076 * emacs.c (main): Don't call keys_of_minibuf.
8077
80782008-05-22 Kenichi Handa <handa@m17n.org>
8079
8080 * ftfont.c (ftfont_resolve_generic_family): Rename from
8081 ftfont_list_generic_family. Return a single family for each
8082 generic family.
8083 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
8084 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
8085 Call font_add_log.
8086 (ftfont_match): Call font_add_log.
8087
8088 * font.h (Ffont_xlfd_name): EXFUN adjusted.
8089 (FONT_DEBUG): Define it.
8090 (font_add_log): Extern it.
8091 (font_assert): Rename from xassert.
8092
8093 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
8094 (xfont_list_family): Call font_add_log.
8095 (xfont_match): Likewise.
8096 (memq_no_quit): Delete.
8097
8098 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
8099 call of Ffont_xlfd_name.
8100
8101 * xfaces.c (struct table_entry, slant_table, weight_table)
8102 (swidth_table): Move to font.c.
8103
8104 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
8105 xassert are changed to font_assert. Delete many unused variables.
8106 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
8107 New variables.
8108 (struct table_entry): Move from xfaces.c and modified.
8109 (weight_table, slant_table, width_table): Move from xfaces.c and
8110 contents adjusted for the change of struct table_entry.
8111 (font_style_to_value, font_style_symbolic): Adjust for the
8112 format change of font_style_table.
8113 (font_parse_family_registry): Don't overwrite existing foundry and
8114 family of font_spec.
8115 (font_score): Fix calculation of diff for sizes.
8116 (font_sort_entites): Call font_add_log.
8117 (font_delete_unmatched): Return a newly created list.
8118 (font_list_entities): Fix previous change. Call font_add_log.
8119 (font_matching_entity, font_open_entity, font_close_entity):
8120 Call font_add_log.
8121 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
8122 (Finternal_set_font_style_table): Delete.
8123 (BUILD_STYLE_TABLE): New macro.
8124 (build_style_table): New function.
8125 (Vfont_log, font_log_env_checked): New variables.
8126 (font_add_log): New function.
8127 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
8128 Declare Lisp variables "font-weight-table", "font-slant-table",
8129 "font-width-table", and "font-log". Initialize font_style_table.
8130
81312008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
8132
8133 * xterm.c (x_set_frame_alpha): Move declarations before statements.
8134
81352008-05-21 Seiji Zenitani <zenitani@mac.com>
8136 Ryo Yoshitake <ryo@shiftmode.net>
8137
8138 * frame.c (Qalpha): Add a new frame parameter `alpha'.
8139 (Vframe_alpha_lower_limit): New variable.
8140 (x_set_alpha): New function.
8141
8142 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
8143
8144 * xfns.c (x-create-frame, Qalpha):
8145 Initialize the frame parameter `alpha'.
8146 * xterm.c (OPAQUE, OPACITY): New.
8147 (x_set_frame_alpha): New function.
8148 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
8149
8150 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
8151 * w32fns.c (w32_frame_parm_handlers): Likewise.
8152
81532008-05-20 Jason Rumney <jasonr@gnu.org>
8154
8155 * w32font.c (add_font_entity_to_list): Don't add non-opentype
8156 truetype fonts to opentype list.
8157
81582008-05-20 Juanma Barranquero <lekktu@gmail.com>
8159
8160 * fontset.c (Ffontset_info): Doc fix.
8161 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
8162 <ignore-relative-composition>: Fix typos in docstrings.
8163
8164 * font.c (syms-of-font) <font-encoding-alist>:
8165 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
8166 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
8167 (Ffont_otf_alternates): Doc fixes.
8168
81692008-05-20 Kenichi Handa <handa@m17n.org>
8170
8171 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
8172 font.h through out the file.
8173 (FONT_DRIVERS): Rename from FONTOBJ.
8174 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
8175 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
8176
8177 * emacs.c (main): Call syms_of_font unconditionally.
8178
8179 * font.h (find_font_encoding): Extern it.
8180
8181 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
8182 fontset.c.
8183 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
8184 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
8185 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
8186 only when HAVE_WINDOW_SYSTEM is defined.
8187 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
8188 when HAVE_WINDOW_SYSTEM is defined.
8189
8190 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
8191 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
8192
8193 * xfaces.c: Include font.h unconditionally.
8194 (merge_face_ref, merge_face_vectors)
8195 (Finternal_set_lisp_face_attribute): Cancel the previous change.
8196
81972008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
8198
8199 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
8200 indirect_variable.
8201 * eval.c (lisp_indirect_variable): New fun.
8202 (Fuser_variable_p): Use it.
8203
82042008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
8205
8206 * lisp.h (indirect_variable):
8207 * data.c (indirect_variable, let_shadows_buffer_binding_p):
8208 Use Lisp_Symbol pointers rather than Lisp_Object.
8209 Adjust callers.
8210 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
8211 To this end, change calling-convention.
8212
8213 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
8214 if some non-hidden buffers are selected by string&pred.
8215
82162008-05-19 Chong Yidong <cyd@stupidchicken.com>
8217
8218 * process.c (wait_reading_process_output): Always check status
8219 when in batch mode.
8220
82212008-05-19 Kenichi Handa <handa@m17n.org>
8222
8223 * font.c (font_list_entities): Fix handling of cache.
8224 (font_matching_entity): Likewise.
8225
8226 * ftfont.c (cs_iso8859_1): Delete.
8227 (ft_face_cache): New variable.
8228 (struct ftfont_info): New member fc_charset_idx.
8229 (ftfont_build_basic_charsets): Delete.
8230 (fc_charset_table): New variable.
8231 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
8232 . FC_CHARSET_IDX) as :font-entity property in the font entity.
8233 Callers changed.
8234 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8235 (ftfont_spec_pattern): New argument fc_charset_idx.
8236 Check registry more rigidly. Change callers.
8237 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
8238 change of :font-entity property of the font.
8239
8240 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
8241 property of the font.
8242
82432008-05-18 Juanma Barranquero <lekktu@gmail.com>
8244
8245 * coding.c (Fcoding_system_p): Rename argument to match docstring.
8246 (Funencodable_char_position, Fcheck_coding_systems_region)
8247 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
8248 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
8249 (Ffind_operation_coding_system, Fset_coding_system_priority)
8250 (Fcoding_system_eol_type): Doc fixes.
8251
82522008-05-17 Glenn Morris <rgm@gnu.org>
8253
8254 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
8255
82562008-05-16 Eli Zaretskii <eliz@gnu.org>
8257
8258 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
8259 and st_gid.
8260
8261 * frame.c (Fdelete_frame): Don't call font_update_drivers if
8262 HAVE_WINDOW_SYSTEM is not defined.
8263
8264 * xfaces.c (merge_face_ref, merge_face_vectors)
8265 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
8266 HAVE_WINDOW_SYSTEM is defined.
8267 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
8268
82692008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
8270
8271 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
8272
82732008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8274
8275 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
8276
82772008-05-15 Kenichi Handa <handa@m17n.org>
8278
8279 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
8280 preference.
8281
82822008-05-15 Glenn Morris <rgm@gnu.org>
8283
8284 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
8285
82862008-05-15 Chong Yidong <cyd@stupidchicken.com>
8287
8288 * fns.c (init_fns): Don't initialize weak_hash_tables here.
8289 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
8290
8291 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
8292
82932008-05-15 Kenichi Handa <handa@m17n.org>
8294
8295 * ftfont.c (ftfont_list): Downcase family name to check generic
8296 families.
8297
8298 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
8299 font-spec for QCfont value.
8300
8301 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
8302 buffer. Check the return value of it.
8303
83042008-05-14 Jason Rumney <jasonr@gnu.org>
8305
8306 * w32term.c (w32_get_glyph_overhangs): Remove.
8307 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
8308
83092008-05-14 Kenichi Handa <handa@m17n.org>
8310
8311 * font.c (font_prop_validate): Make nil a valid value.
8312 (font_clear_cache): Check if the cached vector of entities is nil
8313 or not.
8314
83152008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8316
8317 * emacs.c (main_thread): Conditionalize on
8318 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8319 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
8320
8321 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
8322 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
8323 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8324
83252008-05-14 Kenichi Handa <handa@m17n.org>
8326
8327 * coding.c (detect_coding_iso_2022): Ignore a coding category that
8328 has no corresponding coding system.
8329
83302008-05-14 Jason Rumney <jasonr@gnu.org>
8331
8332 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
8333
8334 * w32font.h (w32font_open_internal): Update declaration.
8335
8336 * w32font.c (w32font_open_internal): Change last argument from
8337 w32font_info struct to font object. Fill in font object from
8338 font_entity. Get Outline metrics if possible. Use them to
8339 calculate underline position and thickness. Use xlfd name as name
8340 property. Don't set codepage.
8341 (w32font_open): Pass font_object to w32font_open_internal. Don't
8342 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
8343 (w32font_draw): Use s->font.
8344 (clear_cached_metrics): Don't clear non-existent blocks.
8345
8346 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
8347 font was not found.
8348 (x_draw_glyph_string): Use underline position and thickness from font.
8349
8350 * w32uniscribe.c (uniscribe_open): Pass font_object to
8351 w32font_open_internal.
8352
83532008-05-14 Kenichi Handa <handa@m17n.org>
8354
8355 These changes are to delete all legacy font-handling codes, and
8356 make Emacs use only font-backends.
8357
8358 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
8359 (frame.o, image.o, print.o): Depend on $(FONTSRC).
8360
8361 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
8362
8363 * charset.h (Vcharset_non_preferred_head)
8364 (Vcurrent_iso639_language): Extern them.
8365
8366 * charset.c (Vcharset_non_preferred_head): New variable.
8367 (Vcurrent_iso639_language): New variable.
8368 (syms_of_charset): Declare it as a Lisp variable.
8369 (char_charset): Don't check non preferred charsets. As a last
8370 resort, return charset_unicode.
8371 (Fset_charset_priority): Update Vcharset_non_preferred_head.
8372
8373 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
8374 conditionals. Don't check enable_font_backend. Delete all codes
8375 used only when USE_FONT_BACKEND is not defined.
8376
8377 * dispextern.h (struct glyph_string): Change type of `font' to
8378 `struct font *'.
8379 (struct glyph_string): New member underline_position and
8380 underline_thickness.
8381 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
8382 (struct face): Change type of `font' to `struct font *'. Remove
8383 members `font_name', `font_info_id'.
8384 (per_char_metric, encode_char): Delete externs.
8385 (calc_pixel_width_or_height): Adjust the prototype.
8386
8387 * emacs.c (enable_font_backend): Delete extern.
8388 (main): Don't set enable_font_backend. Don't check the command
8389 line argument "-disable-font-backend".
8390
8391 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
8392 (enum font_property_index): New members FONT_DPI_INDEX,
8393 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
8394 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
8395 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
8396 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
8397 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
8398 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
8399 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
8400 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
8401 (struct font_spec, struct font_entity): New structs.
8402 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
8403 (struct font): Many members from old "struct font_info" moved to
8404 here. Members font and entity deleted.
8405 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
8406 the new font-related objects.
8407 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
8408 (CHECK_FONT_GET_OBJECT): Likewise.
8409 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
8410 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
8411 (struct font_driver): New members case_sensitive anc check. Type
8412 of the member list and open changed.
8413 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
8414 (font_symbolic_width, font_find_object, font_get_spec)
8415 (font_set_lface_from_name): Delete extern.
8416 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
8417
8418 * font.c: Include <strings.h>.
8419 (enable_font_backend): Delete it.
8420 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
8421 (CHECK_VALIDATE_FONT_SPEC): Delete it.
8422 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
8423 (null_string): Delete it.
8424 (null_vector): Make it static.
8425 (font_family_alist): Delete it.
8426 (Qnormal): Extern it.
8427 (QCextra, QClanguage): Delete it.
8428 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
8429 (font_make_spec, font_make_entity, font_make_object)
8430 (font_intern_prop): Renamed from intern_downcase. Don't downcase
8431 the string. Callers changed.
8432 (font_pixel_size): Adjusted for the format change of font-related
8433 objects.
8434 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
8435 (font_style_to_value, font_style_symbolic): New function.
8436 (build_font_family_alist): Delete it.
8437 (font_registry_charsets): Use Fassoc_string instead of
8438 assq_no_quit.
8439 (font_prop_validate_symbol): Don't return null_string.
8440 (font_prop_validate_style): Adjusted for the change of
8441 style-related values in a font vector.
8442 (font_property_table): Delete entries for QClanguage and
8443 QCantialias, add entries for QCavgwidth.
8444 (get_font_prop_index): Delete the 2nd argument FROM.
8445 (font_prop_validate): Arguments changed.
8446 (font_put_extra): Adjusted for the change of font-related objects.
8447 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
8448 (font_parse_fcname, font_unparse_fcname)
8449 (font_prepare_composition): Likewise.
8450 (font_parse_family_registry): Renamed from font_merge_old_spec.
8451 (otf_open): Delete the 1st arg entity.
8452 (font_otf_capability): Adjusted for the above change.
8453 (font_score): New arg alternate_families. Adjusted for the change
8454 of font-related objects.
8455 (font_sort_entites): New arg best_only.
8456 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
8457 Delete them.
8458 (font_match_p): Check alternate families.
8459 (font_find_object): Delete it.
8460 (font_check_object): New function.
8461 (font_clear_cache): Adjusted for the change of font-related objects.
8462 (font_delete_unmatched): New arg.
8463 (font_list_entities): Call font_driver->list with a spec that
8464 doesn't specify style-related properties.
8465 (font_matching_entity): Arguments changed. Caller changed.
8466 (font_open_entity): Adjusted for the change of font-related objects.
8467 (font_close_object, font_has_char, font_encode_char)
8468 (font_get_name, font_get_spec): Likewise.
8469 (font_spec_from_name, font_clear_prop, font_update_lface):
8470 New functions.
8471 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
8472 (font_prepare_for_face, font_done_for_face, font_open_by_name)
8473 (font_at): Adjusted for the change of font-related objects.
8474 (font_range): New function.
8475 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
8476 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
8477 (Fcopy_font_spec, Fmerge_font_spec): New function.
8478 (Ffont_family_list): Renamed from list-families.
8479 (Finternal_set_font_style_table): Arguments changed.
8480 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
8481 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
8482 change of font-related objects.
8483 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
8484
8485 * fontset.h (struct font_info): Delete it. Most members go to
8486 struct font.
8487 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
8488 (enum FONT_SPEC_INDEX): Delete it.
8489 (font_info, list_fonts_func, load_font_func, query_font_func)
8490 (set_frame_fontset_func, find_ccl_program_func)
8491 (get_font_repertory_func, new_fontset_from_font_name): Delete
8492 externs.
8493 (fontset_from_font_name): Extern it.
8494 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
8495 (FONT_INFO_FROM_FACE): Deleted.
8496 (face_for_font): Adjust prototype.
8497
8498 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
8499 conditionals. Don't check enable_font_backend. Delete all codes
8500 used only when USE_FONT_BACKEND is not defined.
8501 (get_font_info_func, list_font_func, load_font_func)
8502 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
8503 (get_font_repertory_func): Delete them.
8504 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
8505 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
8506 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
8507 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
8508 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
8509 (fontset_compare_rfontdef): New function.
8510 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
8511 rfont-defs by qsort. Adjusted for the change of font-group vector.
8512 (load_font_get_repertory): Deleted.
8513 (fontset_find_font): Use new macros to ref/set elements of
8514 font-def and rfont-def.
8515 (fontset_font): Fix the timing of remembering that no font for C.
8516 (free_face_fontset): Do nothing if the face has no fontset.
8517 (face_suitable_for_char_p): Use new macros to ref/set elements of
8518 rfont-def.
8519 (face_for_char): Likewise. Call face_for_char with font_object.
8520 (fs_load_font): Delete. Delete #pragma surrounding it.
8521 (fs_query_fontset): Use strcasecmp instead of strcmp.
8522 (generate_ascii_font_name): Adjusted for the format change of
8523 font-spec.
8524 (Fset_fontset_font): Likewise. Use new macros to set elements of
8525 font-def.
8526 (Fnew_fontset): Use font_unparse_xlfd to generate
8527 FONTSET_ASCII (fontset).
8528 (new_fontset_from_font_name): Deleted.
8529 (fontset_from_font): Renamed from new_fontset_from_font. Check if
8530 a fontset is already created for the font. FIx updating of
8531 Vfontset_alias_alist.
8532 (fontset_ascii_font): Deleted.
8533 (Ffont_info): Adjusted for the format change of font-spec.
8534 (Finternal_char_font): Likewise.
8535 (Ffontset_info): Likewise.
8536 (syms_of_fontset): Don't check load_font_func.
8537
8538 * fns.c (internal_equal): Handle PREV_FONT.
8539
8540 * frame.h: Delete USE_FONT_BACKEND conditional.
8541
8542 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
8543 conditionals. Don't check enable_font_backend. Delete all codes
8544 used only when USE_FONT_BACKEND is not defined.
8545 (x_set_font): Call x_new_font, not x_new_fontset2.
8546 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
8547 already set for the frame.
8548
8549 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
8550 a font-entity by font_make_entity. Use font_intern_prop instead
8551 of intern_downcase. Use FONT_SET_STYLE to set a style-related
8552 font property. If a font is scalable, set avgwidth property to 0.
8553 Set font-entity property by font_put_extra.
8554 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
8555 (ffont_driver): Adjusted for the change of struct font_driver.
8556 (ftfont_spec_pattern): New function.
8557 (ftfont_list): Return a list, not vector.
8558 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
8559 (ftfont_list_family): Don't downcase names.
8560 (ftfont_free_entity): Deleted.
8561 (ftfont_open): Return a font-object. Adjusted for the change of
8562 struct font. Get underline_thickness and underline_position from
8563 font property. Don't update dpyinfo->smallest_font_height and
8564 dpyinfo->smallest_char_width.
8565 (ftfont_close): Don't free `struct font'.
8566 (ftfont_has_char): Adjusted for the format change of font-entity.
8567 (ftfont_encode_char, ftfont_text_extents): Likewise.
8568
8569 * ftxfont.c (ftxfont_list): Return a list, not vector.
8570 (ftxfont_open): Return a font-object. Adjusted for the change of
8571 struct font. Get underline_thickness and underline_position from
8572 font property. Don't update dpyinfo->smallest_font_height and
8573 dpyinfo->smallest_char_width.
8574 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
8575 (ftxfont_draw): Adjusted for the change of struct font.
8576
8577 * image.c (image_ascent): Don't include "charset.h". Include
8578 "character.h" and "font.h".
8579
8580 * lisp.h (enum pvec_type): New member PREV_FONT.
8581 (Fassoc_string): EXFUN it.
8582
8583 * print.c: Include font.h.
8584 (print_object): Handle font-related objects.
8585
8586 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
8587 conditionals. Don't check enable_font_backend. Delete all codes
8588 used only when USE_FONT_BACKEND is not defined.
8589 (handle_auto_composed_prop): Do nothing if it->f is not on a
8590 window system. Check how many following characters can be
8591 displayed by the same font.
8592 (calc_pixel_width_or_height): Type of the 4th arg is changed to
8593 'struct font *'.
8594 (get_char_face_and_encoding): Assign the whole encoding task to
8595 the `encode-char' method of a font driver.
8596 (fill_composite_glyph_string): Adjusted for the change of `struct
8597 face' and `struct glyph_string'.
8598 (fill_glyph_string): Likewise.
8599 (get_per_char_metric): Arguments changed.
8600 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
8601 and `struct glyph_string'.
8602 (produce_stretch_glyph, calc_line_height_property)
8603 (x_produce_glyphs): Likewise.
8604
8605 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
8606 conditionals. Don't check enable_font_backend. Delete all codes
8607 used only when USE_FONT_BACKEND is not defined. Use
8608 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
8609 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
8610 (Qp): Extern them.
8611 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
8612 Deleted.
8613 (struct font_name): Deleted.
8614 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
8615 (compare_fonts_by_sort_order): New function.
8616 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
8617 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
8618 Deleted.
8619 (Fx_family_fonts): Use font_list_entities, and sort fonts by
8620 compare_fonts_by_sort_order.
8621 (Fx_font_family_list): Call Ffont_family_list.
8622 (face_numeric_value, face_numeric_weight, face_numeric_slant)
8623 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
8624 (face_symbolic_slant, face_symbolic_swidth)
8625 (split_font_name_into_vector, build_font_name_from_vector)
8626 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
8627 (font_rescale_ratio, split_font_name, build_font_name)
8628 (free_font_names, sort_fonts, x_face_list_fonts)
8629 (face_font_available_p, sorted_font_list, cmp_font_names)
8630 (font_list_1, concat_font_list, font_list, remove_duplicates):
8631 Deleted.
8632 (Fx_list_fonts): Use Ffont_list.
8633 (LFACE_AVGWIDTH): Deleted.
8634 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
8635 by FONTP.
8636 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
8637 (set_lface_from_font_name): Delete it.
8638 (set_lface_from_font): Renamed from
8639 set_lface_from_font_and_fontset. Caller changed. Don't set
8640 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
8641 for face.
8642 (merge_face_vectors): Copy font-spec if necessary.
8643 Clear properties of the font-spec if necessary.
8644 (merge_face_ref): Clear properties of the font-spec if necessary.
8645 (Finternal_set_lisp_face_attribute): Likewise.
8646 (set_font_frame_param): Use font_load_for_lface to load a
8647 font-object, and call Fmodify_frame_parameters with it.
8648 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
8649 font name by Ffont_xlfd_name.
8650 (Finternal_lisp_face_attribute_values): Don't check QCweight,
8651 QCslant, and QCwidth.
8652 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
8653 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
8654 Compare fonts by EQ.
8655 (lookup_non_ascii_face): Deleted.
8656 (face_for_font): The 2nd argument changed.
8657 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
8658 Check atomic font properties by case insensitive.
8659 (realize_non_ascii_face): Set face->overstrike correctly.
8660 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
8661 (dump_realized_face): Get font name from
8662 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
8663
8664 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
8665 conditionals. Don't check enable_font_backend. Delete all codes
8666 used only when USE_FONT_BACKEND is not defined.
8667 (xic_create_xfontset): Original code deleted and renamed from
8668 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
8669 (x_make_gc): Don't set GCFont in GCs.
8670 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
8671 opened by "fixed".
8672 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
8673 find_ccl_program_func, query_font_func, set_frame_fontset_func,
8674 get_font_repertory_func.
8675
8676 * xfont.c: Include <stdlib.h> and "ccl.h".
8677 (struct xfont_info): New structure.
8678 (xfont_query_font): Deleted.
8679 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
8680 moved from xterm.c.
8681 (xfont_driver): Adjusted for the change of struct font_driver.
8682 (compare_font_names): New function.
8683 (xfont_list_pattern): Sort font names case insensitively. Make
8684 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
8685 (xfont_list): Return a list, not vector.
8686 (xfont_match): If the font doesn't have QCname property, generate
8687 a name from the other font properties.
8688 (xfont_open): Return a font-object. Adjusted for the change of
8689 struct font. Get underline_thickness and underline_position from
8690 font property. Don't update dpyinfo->smallest_font_height and
8691 dpyinfo->smallest_char_width.
8692 (xfont_close): Don't free struct font.
8693 (xfont_prepare_face): Adjusted for the change of struct font.
8694 (xfont_done_face): Deleted.
8695 (xfont_has_char): Adjusted for the change of struct font.
8696 (xfont_encode_char, xfont_draw): Likewise.
8697 (xfont_check): New function.
8698
8699 * xftfont.c (xftfont_list): Adjusted for the change of `list'
8700 callback function.
8701 (xftfont_match): Adjusted for the format change of font-entity.
8702 (xftfont_open): Adjusted for the format change of font-entity and
8703 font-object. Adjusted for the change of struct font. Return a
8704 font-object. Don't update dpyinfo->smallest_font_height and
8705 dpyinfo->smallest_char_width.
8706 (xftfont_close): Block input while calling XftFontClose.
8707 (xftfont_prepare_face): Don't block input while calling
8708 xftfont_get_colors. Adjusted for the change of struct font.
8709 (xftfont_shape): Return value of error case fixed.
8710
8711 * xrdb.c (x_load_resources): Don't setup a fontset resource.
8712
8713 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
8714 conditionals.
8715 (FONT_WIDTH): Return (f)->max_width.
8716 (struct x_display_info): Delete member `font'.
8717 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
8718 (x_find_ccl_program, x_get_font_repertory): Delete externs.
8719 (struct x_output): Change type of `font' to `struct font *'.
8720
8721 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
8722 conditionals. Don't check enable_font_backend. Delete all codes
8723 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
8724 (x_per_char_metric, x_encode_char): Deleted.
8725 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
8726 (x_compute_glyph_string_overhangs): Adjusted for the change of
8727 `struct face'.
8728 (x_draw_glyph_string_foreground)
8729 (x_draw_composite_glyph_string_foreground): Likewise.
8730 (x_draw_glyph_string): Likewise. Use font->underline_position and
8731 font->underline_thickness.
8732 (x_new_font): Renamed from x_new_fontset2.
8733 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
8734 (x_check_font): Call `check' method of a font driver.
8735 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
8736 (x_query_font, x_get_font_repertory): Deleted.
8737 (x_find_ccl_program): Renamed and moved to xfont.c.
8738 (x_redisplay_interface): Adjusted for the change of `struct
8739 redisplay_interface'.
8740
8741 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
8742 conditionals. Don't check enable_font_backend. Delete all codes
8743 used only when USE_FONT_BACKEND is not defined. Surround non-used
8744 code by "#ifdef OLD_FONT" and "endif".
8745 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
8746
8747 * w32font.h (struct w32font_info): New member.
8748 (FONT_COMPAT): New macro.
8749 (w32font_open_internal): Prototype adjusted.
8750
8751 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
8752 OLD_FONT" and "endif".
8753
8754 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
8755 conditionals. Don't check enable_font_backend. Delete all codes
8756 used only when USE_FONT_BACKEND is not defined.
8757 (w32font_open): Return a font-object. Make a font-object by
8758 font_make_object. Adjusted for the change of struct w32font_info.
8759 (w32font_close): Don't free struct font. Adjusted for the change
8760 of struct w32font_info.
8761 (w32font_encode_char, w32font_text_extents, w32font_draw):
8762 Adjusted for the change of struct w32font_info.
8763 (w32font_draw): Likewise.
8764 (w32font_list_internal): Return a list, not vector.
8765 (w32font_open_internal): Change the 4th arg to font-object.
8766 Adjusted for the change of struct w32font_info and font-object format.
8767 (add_font_name_to_list): Don't downcase names.
8768 (w32_enumfont_pattern_entity): Make a font-entity by
8769 font_make_entity. Adjusted for the format change of font-entity.
8770 Use FONT_SET_STYLE to set a style-related font property. If a
8771 font is scalable, set avgwidth property to 0. Set font-entity
8772 property by font_put_extra.
8773 (font_matches_spec): Adjusted for the format change of font-entity.
8774 (w32_weight_table, w32_decode_weight): New variables.
8775 (w32_encode_weight): New function.
8776 (fill_in_logfont): Adjusted for the format change of font-spec.
8777 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
8778 weight value.
8779 (w32font_driver): Adjusted for the change of struct font_driver.
8780
8781 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
8782 conditionals. Don't check enable_font_backend. Surround non-used
8783 code by "#ifdef OLD_FONT" and "endif".
8784 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
8785 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
8786
8787 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
8788 conditionals. Don't check enable_font_backend. Delete all codes
8789 used only when USE_FONT_BACKEND is not defined. Surround non-used
8790 code by "#ifdef OLD_FONT" and "endif".
8791
8792 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
8793 (uniscribe_open): Return value changed to font-object.
8794 Adjusted for the format change of font-object.
8795 (uniscribe_otf_capability): Adjusted for the change of struct font.
8796 (add_opentype_font_name_to_list): Don't downcase names.
8797 (uniscribe_font_driver): Adjusted for the change of struct
8798 font_driver.
8799
88002008-05-13 Chong Yidong <cyd@stupidchicken.com>
8801
8802 * dispnew.c (update_frame_1): Check if tty output is still valid
8803 before flushing it.
8804
88052008-05-13 Jan Djärv <jan.h.d@swipnet.se>
8806
8807 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
8808 to Gtk+ menus.
8809
88102008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8811
8812 * dired.c (file_name_completion): Tweak the code so as to always do it
8813 in a single pass. Tighten the scope of some variables.
8814
8815 * dired.c (Qdefault_directory): New var.
8816 (file_name_completion): Use it instead of Fexpand_file_name.
8817 (syms_of_dired): Initialize it.
8818
88192008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
8820
8821 * fileio.c (double_dollars): Remove dead code.
8822
88232008-05-10 Eli Zaretskii <eliz@gnu.org>
8824
8825 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
8826 Mention w32-get-true-file-attributes in doc string.
8827
8828 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
8829
88302008-05-09 Glenn Morris <rgm@gnu.org>
8831
8832 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
8833 2008-04-23.
8834
88352008-05-09 Eli Zaretskii <eliz@gnu.org>
8836
8837 Support for reporting owner and group of each file on MS-Windows:
8838 * dired.c (stat_uname, stat_gname): New functions, with special
8839 implementation for w32.
8840 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
8841
8842 * w32.c: Rename the_passwd_* to dflt_passwd_*.
8843 (dflt_group_name): New static variable.
8844 (dflt_group): Rename from the_group.
8845 (init_user_info): Init dflt_group fields. Get user's group name
8846 from LookupAccountSid.
8847 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
8848 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
8849 New initialization states.
8850 (globals_of_w32): Initialize them to zero. Initialize the default
8851 group name to "None".
8852 (GetFileSecurity_Name): New global var, the name of the function
8853 to call for GetFileSecurity.
8854 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
8855 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
8856 (get_file_security, get_security_descriptor_owner)
8857 (get_security_descriptor_group, is_valid_sid)
8858 (get_file_security_desc, get_rid, get_name_and_id)
8859 (get_file_owner_and_group): New functions.
8860 (stat): Use get_file_security_desc and get_file_owner_and_group to
8861 report the owner and primary group of each file. Don't ignore the
8862 high 32 bits of file's size, now that st_size is 64-bit wide.
8863 Fix test when to get true file attributes.
8864 (init_user_info): Use get_rid instead of equivalent inline code.
8865 (fstat): Don't ignore the high 32 bits of file's size.
8866
88672008-05-09 Chong Yidong <cyd@stupidchicken.com>
8868
8869 * image.c (png_load): Use correct bit-depth for setting background
8870 color.
8871
88722008-05-08 Eli Zaretskii <eliz@gnu.org>
8873
8874 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
8875 epa-hook.elc.
8876
88772008-05-08 Juanma Barranquero <lekktu@gmail.com>
8878
8879 * font.c (Ffont_match_p): Don't use `iff' in docstring.
8880
88812008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
8882
8883 * macfns.c (Fx_create_frame): Make a copy of frame parameters
8884 because the original parameters are in pure storage now.
8885 (mac_window): Remove unused params. Update callers.
8886
88872008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
8888
8889 * lread.c (substitute_object_recurse): Use lower-level primitives.
8890 Don't signal errors when traversing sub-char-tables.
8891 Don't loop over all the possible characters when traversing char-tables.
8892
8893 * print.c (print_preprocess): Add sub-char-tables to the print-table,
8894 just like we do in print.c.
8895
88962008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
8897
8898 * minibuf.c (Ftry_completion): Remove code left over from when we used
8899 scmp instead of Fcompare_strings.
8900
89012008-05-04 Juanma Barranquero <lekktu@gmail.com>
8902
8903 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
8904
89052008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8906
8907 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
8908 Create bitmap context in native byte order.
8909
8910 * macterm.c (XDrawLine)
8911 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
8912 context in native byte order.
8913
89142008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8915
8916 * config.in: Regenerate.
8917
8918 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
8919 New definitions for Image I/O support.
8920 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8921 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
8922 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8923 (mac_data_provider_release_data, image_load_image_io)
8924 [USE_MAC_IMAGE_IO]: New functions.
8925 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
8926 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
8927 (init_image_func_pointer) [MAC_OSX]: Remove function.
8928 (image_load_quartz2d) [MAC_OSX]: Check availability of
8929 CGImageCreateWithPNGDataProvider at compile time.
8930 Use lowercase `false' for boolean constant.
8931 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
8932 Use image_load_image_io.
8933 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
8934 Don't check MyCGImageCreateWithPNGDataProvider.
8935 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
8936 Don't call init_image_func_pointer.
8937
8938 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
8939
8940 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
8941 Make variable non-static.
8942 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8943 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8944
8945 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
8946 (RED_FROM_ULONG): Mask off higher bits.
8947 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
8948
8949 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
8950 Include AvailabilityMacros.h.
8951 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
8952 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
8953
89542008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
8955
8956 * chartab.c (Fset_char_table_range): If range is t, really set all
8957 chars to that value.
8958
89592008-05-03 Eli Zaretskii <eliz@gnu.org>
8960
8961 * dired.c (Ffile_attributes): Don't allow the device number become
8962 negative.
8963
89642008-05-02 Daiki Ueno <ueno@unixuser.org>
8965
8966 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
8967
89682008-05-02 Juri Linkov <juri@jurta.org>
8969
8970 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
8971 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
8972 DEFAULT argument as a list of default values in docstrings.
8973
89742008-05-01 Chong Yidong <cyd@stupidchicken.com>
8975
8976 * puresize.h (BASE_PURESIZE): Increase to 1210000.
8977
89782008-05-01 Martin Rudalics <rudalics@gmx.at>
8979
8980 * dispnew.c (change_frame_size_1): Preserve small windows when
8981 shrinking frames by calling set_window_height|width with third
8982 arg 2.
8983
8984 * window.h (struct window): Replace field too_small_ok by field
8985 resize_proportionally.
8986
8987 * window.c (make_window): Initialize resize_proportionally.
8988 (enlarge_window): Temporarily set resize_proportionally to make
8989 sure that shrink_windows does scale the window proportionally.
8990 (shrink_windows): When window has resize_proportionally set try
8991 to shrink it proportionally by stealing from other windows.
8992 (struct saved_window, Fset_window_configuration)
8993 (compare_window_configurations): Handle resize_proportionally.
8994 (WINDOW_TOTAL_SIZE): New macro.
8995 (window_min_size, shrink_windows, size_window): Use it.
8996 (check_min_window_sizes): Remove. Invalid values of
8997 window-min-height|width are handled by window_min_size_2 now.
8998 (size_window, Fsplit_window, enlarge_window)
8999 (adjust_window_trailing_edge, grow_mini_window): Don't call
9000 check_min_window_sizes.
9001 (window_min_size_2, window_min_size_1, window_min_size):
9002 New argument safe_p for retrieving "safe" minimum sizes.
9003 (Fdisplay_buffer, Fsplit_window, enlarge_window)
9004 (adjust_window_trailing_edge, grow_mini_window):
9005 Adjust arguments of window_min_size... functions.
9006 (shrink_windows): Argument min_size removed. New argument
9007 safe_p allows shrinking windows to their safe minimum sizes.
9008 Calculate minimum size and decide whether a window shall be
9009 deleted for each window individually.
9010 (size_window): When nodelete_p equals 2, tell shrink_windows to
9011 delete windows only if their new minimum size is no more safe.
9012 (shrink_window_lowest_first): Call window_min_size_1 to make
9013 sure to preserve modeline of bottom-most window when resizing
9014 the minibuffer.
9015 (Fset_window_configuration, Fcurrent_window_configuration)
9016 (compare_window_configurations): Do not handle
9017 window-min-height|width any more.
9018 (syms_of_window): Clarify window-min-height|width doc-strings.
9019
90202008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
9021
9022 * dired.c (file_name_completion): Fix up the encoding/decoding issue
9023 some more. Copy some of the code from Ftry_completions.
9024 Remove special case code that dates back to initial revision when the
9025 slash was only added when necessary and that can't trigger nowadays.
9026
90272008-04-27 Kenichi Handa <handa@m17n.org>
9028
9029 * font.c (font_prop_validate): Signal `error' instead of `font'.
9030
90312008-04-29 Jason Rumney <jasonr@gnu.org>
9032
9033 * w32fns.c (Fw32_battery_status): New defun.
9034 (syms_of_w32fns): Defsubr it.
9035
90362008-04-28 Andreas Schwab <schwab@suse.de>
9037
9038 * dired.c (file_name_completion): Fix another mixing of encoded
9039 and decoded names.
9040
90412008-04-28 Juanma Barranquero <lekktu@gmail.com>
9042
9043 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
9044
90452008-04-27 Juanma Barranquero <lekktu@gmail.com>
9046
9047 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
9048
90492008-04-27 Andreas Schwab <schwab@suse.de>
9050
9051 * dired.c (file_name_completion): Fix inappropriate mixing of
9052 encoded and decoded names.
9053
9054 * xterm.c (XTread_socket): Fix use of uninitialized variable.
9055
9056 * puresize.h (BASE_PURESIZE): Increase to 1200000.
9057
90582008-04-26 Eli Zaretskii <eliz@gnu.org>
9059
9060 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
9061 2008-03-31, it's not needed anymore with `struct stat' definition
9062 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
9063 for the same reasons.
9064
90652008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
9066
9067 * m/sparc.h: Additional redefinitions for GNU/Linux.
9068
90692008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9070
9071 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
9072 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
9073 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
9074 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
9075 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9076 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
9077 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9078 Likewise.
9079
9080 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
9081 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
9082 (mac_ax_number_of_characters): Add externs.
9083 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9084 [USE_MAC_TSM]: Likewise.
9085 (mac_handle_text_input_event) [MAC_OSX]:
9086 Handle kEventTextInputOffsetToPos for no active input area case.
9087 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9088 (mac_handle_document_access_event)
9089 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
9090 (install_application_handler) [MAC_OSX]: Register handlers for
9091 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9092 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9093 Register mac_handle_document_access_event.
9094
9095 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
9096 Make functions non-static.
9097
90982008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
9099
9100 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
9101 (read_file_name_completion_ignore_case, insert_default_directory)
9102 (Qdefault_directory): Move to minibuffer.el.
9103 (Fread_file_name): Call the new `read-file-name' instead.
9104
91052008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9106
9107 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
9108 Make function non-static.
9109 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
9110 Remove function.
9111 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9112 Move to mactoolbox.c.
9113 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
9114
9115 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
9116 (mac_rect_make): New macro.
9117
9118 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
9119 instead of float.
9120 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9121 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
9122 (XSetBackground) [USE_CG_DRAWING]: Likewise.
9123 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
9124 CGRectMake.
9125 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9126 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
9127 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
9128 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9129 instead of WindowRef in argument type.
9130 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
9131 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
9132 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
9133 instead of DISPLAY. All uses changed.
9134 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
9135 (x_calc_absolute_position): Simplify so as not to use
9136 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
9137
9138 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9139 instead of WindowRef in argument type.
9140 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
9141 [TARGET_API_MAC_CARBON]: Remove externs.
9142 (create_apple_event, mac_event_parameters_to_lisp)
9143 [TARGET_API_MAC_CARBON]: Add externs.
9144
9145 * mactoolbox.c (Vmac_ts_script_language_on_focus)
9146 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
9147 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
9148 is clicked.
9149 (x_activate_menubar): Remove extern for saved_menu_event_location.
9150 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9151 Move from mac.c.
9152
91532008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9154
9155 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
9156 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
9157
91582008-04-23 Jason Rumney <jasonr@gnu.org>
9159
9160 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
9161 attributes only for local files.
9162
9163 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
9164 default to Qlocal.
9165
91662008-04-22 Juri Linkov <juri@jurta.org>
9167
9168 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
9169 read-buffer-to-switch instead of using the letter "B".
9170
91712008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9172
9173 * fileio.c (Qdefault_directory): New variable.
9174 (Fread_file_name): Use it to pass `dir' to the completion functions.
9175
91762008-04-20 Chong Yidong <cyd@stupidchicken.com>
9177
9178 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
9179
91802008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
9181
9182 * keyboard.c (Vpre_help_message): Remove.
9183 (show_help_echo): Remove default C code.
9184
9185 * dired.c (directory_files_internal, file_name_completion):
9186 Only call ENCODE_FILE if the string is indeed decoded.
9187
91882008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9189
9190 * Makefile.in (TOOLKIT_DEFINES): Remove.
9191 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
9192
91932008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9194
9195 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
9196 (mactoolbox.o): New target.
9197
9198 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
9199 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
9200
9201 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
9202 Use mac_set_frame_window_background instead of XSetWindowBackground.
9203 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
9204 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
9205 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
9206 instead of SetWindowTitleWithCFString.
9207 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
9208 Move function to mactoolbox.c.
9209 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
9210 Use mac_set_window_modified instead of SetWindowModified.
9211 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
9212 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
9213 (Fx_focus_frame): Use mac_front_non_floating_window instead of
9214 FrontNonFloatingWindow. Use mac_activate_window instead of
9215 ActivateWindow. Use mac_active_non_floating_window instead of
9216 ActiveNonFloatingWindow.
9217 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
9218 Use mac_show_hourglass and mac_hide_hourglass.
9219 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
9220 instead of GetGlobalMouse.
9221 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
9222 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
9223 Use mac_bring_window_to_front instead of BringToFront.
9224 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
9225 mactoolbox.c.
9226 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
9227 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
9228 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
9229 mactoolbox.c.
9230
9231 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
9232 (XtPointer): Move typedef from macmenu.c.
9233 (enum button_type): Move enum from macmenu.c.
9234 (widget_value): Move typedef from macmenu.c.
9235 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
9236 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9237 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9238 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9239 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9240 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9241 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9242 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
9243 (Selection): Move typedef from macselect.c.
9244 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
9245 macterm.c.
9246 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
9247 (mac_is_window_collapsed, mac_bring_window_to_front)
9248 (mac_send_window_behind, mac_hide_window, mac_show_window)
9249 (mac_collapse_window, mac_front_non_floating_window)
9250 (mac_active_non_floating_window, mac_activate_window)
9251 (mac_move_window_structure, mac_move_window, mac_size_window)
9252 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
9253
9254 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
9255 (enum mac_menu_kind): Move enum to mactoolbox.c.
9256 (min_menu_id): Move variable to mactoolbox.c.
9257 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
9258 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
9259 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
9260 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
9261 [TARGET_API_MAC_CARBON]: Likewise.
9262 (XtPointer): Move typedef to macgui.h.
9263 (enum button_type): Move enum to macgui.h.
9264 (widget_value): Move typedef to macgui.h.
9265 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9266 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9267 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9268 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9269 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9270 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9271 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
9272 (popup_activated_flag): Make variable non-static.
9273 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
9274 (add_menu_item, fill_menu, dispose_menus):
9275 Move functions to mactoolbox.c.
9276 (restore_show_help_function, menu_target_item_handler)
9277 (install_menu_target_item_handler, mac_handle_dialog_event)
9278 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
9279 [TARGET_API_MAC_CARBON]: Likewise.
9280 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
9281 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9282 (find_and_call_menu_selection, name_is_separator): Make function
9283 non-static.
9284 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
9285 to mactoolbox.c.
9286 (set_frame_menubar): Don't call install_menu_quit_handler.
9287 (menu_item_selection): New variable.
9288 (mac_menu_show): Use create_and_show_popup_menu.
9289 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
9290 selection but set variable menu_item_selection. All uses changed.
9291 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
9292 Call install_menu_quit_handler. Move to mactoolbox.c.
9293
9294 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
9295 (Selection): Move typedef to macgui.h.
9296 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
9297 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
9298 Make variables non-static.
9299 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9300 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
9301 Make functions non-static.
9302 (Vmac_service_selection) [MAC_OSX]: Likewise.
9303 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
9304 (mac_valid_selection_target_p, mac_clear_selection)
9305 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9306 (mac_put_selection_value, mac_selection_has_target_p)
9307 (mac_get_selection_value, mac_get_selection_target_list)
9308 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
9309 Move functions to mactoolbox.c.
9310 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
9311 Likewise.
9312 (copy_scrap_flavor_data, mac_handle_service_event)
9313 (install_service_handler) [MAC_OSX]: Likewise.
9314 (syms_of_macselect) <Vmac_dnd_known_types>:
9315 Use mac_dnd_default_known_types.
9316
9317 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
9318 Move to mactoolbox.c.
9319 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
9320 (Fx_selection_owner_p): Add EXFUN.
9321 (install_window_handler, remove_window_handler, XSetWindowBackground):
9322 Remove externs.
9323 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
9324 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
9325 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
9326 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
9327 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
9328 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
9329 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
9330 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
9331 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
9332 (create_and_show_popup_menu, mac_get_selection_from_symbol)
9333 (mac_valid_selection_target_p, mac_clear_selection)
9334 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9335 (mac_put_selection_value, mac_selection_has_target_p)
9336 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
9337 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
9338 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
9339 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9340 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
9341 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9342 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
9343 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9344 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9345
9346 * mactoolbox.c: New file.
9347
93482008-04-18 Jason Rumney <jasonr@gnu.org>
9349
9350 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
9351
93522008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9353
9354 * character.c (Fmultibyte_char_to_unibyte):
9355 Return latin1 chars unchanged.
9356
9357 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
9358 relocated if it points to `name'.
9359
93602008-04-17 Kenichi Handa <handa@m17n.org>
9361
9362 * data.c (Faset): Allow setting a multibyte character in an
9363 ASCII-only unibyte string.
9364
9365 * lisp.h (STRING_SET_MULTIBYTE): New macro.
9366
93672008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
9368
9369 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
9370 done in config.h.
9371
93722008-04-16 Juanma Barranquero <lekktu@gmail.com>
9373
9374 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
9375 (Fchar_direction): Add usage in the docstring.
9376
93772008-04-15 Chong Yidong <cyd@stupidchicken.com>
9378
9379 * keyboard.c (read_key_sequence): Remove always-true checks.
9380
93812008-04-14 Jason Rumney <jasonr@gnu.org>
9382
9383 * w32font.c (w32font_open_internal): Set max_bounds.descent in
9384 compatibility struct, for better underline positioning.
9385
93862008-04-13 David Hansen <david.hansen@gmx.net>
9387
9388 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
9389 string.
9390
93912008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
9392
9393 * m/hp800.h (XUINT, XSET): Remove.
9394
93952008-04-12 Juanma Barranquero <lekktu@gmail.com>
9396
9397 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
9398 previous change.
9399
94002008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
9401
9402 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
9403 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
9404
94052008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9406
9407 * keymap.h (map_keymap_canonical): Declare.
9408 * xmenu.c (single_keymap_panes): Use it.
9409
94102008-04-11 Glenn Morris <rgm@gnu.org>
9411
9412 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
9413 set the target's value to that of the alias.
9414
94152008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9416
9417 * term.c (set_tty_color_mode): Left over typo.
9418
94192008-04-10 Michael Albinus <michael.albinus@gmx.de>
9420
9421 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
9422 only after check for file name handler functions. Signal, when
9423 native functionality is not supported.
9424 (syms_of_fileio): Declare it unconditionally.
9425
94262008-04-10 Jason Rumney <jasonr@gnu.org>
9427
9428 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
9429 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
9430
9431 * w32.c (logon_network_drive): Also logon to remote drives that
9432 are mapped to drive letters.
9433
94342008-04-10 Glenn Morris <rgm@gnu.org>
9435
9436 * xdisp.c (truncate-partial-width-windows): Doc fix.
9437
94382008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
9439
9440 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
9441 Move functions to minibuffer.el.
9442 (syms_of_fileio): Don't declare them.
9443
94442008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9445
9446 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
9447 (syms_of_minibuf): Remove its initialization.
9448
9449 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
9450
94512008-04-09 Juanma Barranquero <lekktu@gmail.com>
9452
9453 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
9454
94552008-04-09 Jason Rumney <jasonr@gnu.org>
9456
9457 * makefile.w32-in (distclean): Delete makefile too.
9458 (maintainer-clean): New target.
9459
9460 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
9461
9462 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
9463 for new font backend and composite cases.
9464
94652008-04-09 Jan Djärv <jan.h.d@swipnet.se>
9466
9467 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
9468 Most of the code moved to run_timers.
9469 (do_pending_atimers): Call run_timers.
9470 (run_timers): New function.
9471
9472 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
9473 run atimers.
9474
9475 * process.c (wait_reading_process_output): The same as above.
9476
94772008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9478
9479 * minibuf.c (last_exact_completion): Remove variable.
9480 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
9481 (complete_and_exit_1, complete_and_exit_2)
9482 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
9483 (Fdisplay_completion_list, display_completion_list_1)
9484 (Fminibuffer_completion_help, Fself_insert_and_exit)
9485 (Fexit_minibuffer, Fminibuffer_message): Move functions to
9486 minibuffer.el.
9487 (syms_of_minibuf): Remove corresponding initializations.
9488
9489 * keyboard.c (Qdeactivate_mark): New var.
9490 (command_loop_1): Use it to call `deactivate-mark'.
9491 (syms_of_keyboard): Initialize it.
9492
9493 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
9494 to another frame.
9495 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
9496 Don't call set_tty_color_mode.
9497 (store_frame_param): Reset previous_frame rather than call
9498 set_tty_color_mode.
9499 * term.c (set_tty_color_mode): Rewrite.
9500 * dispextern.h (set_tty_color_mode): New type.
9501 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
9502
95032008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
9504
9505 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
9506 for generic chars, which do not exist any more in emacs-unicode.
9507
95082008-04-08 Michael Albinus <michael.albinus@gmx.de>
9509
9510 * coding.c (detect_coding_emacs_mule)
9511 (Ffind_operation_coding_system): Fix typo.
9512
95132008-04-08 Jason Rumney <jasonr@gnu.org>
9514
9515 * w32uniscribe.c (SNAME): Extract only symbol name.
9516
9517 * w32font.h (struct w32_metric_cache): New struct.
9518 (w32font_info): Use it.
9519 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
9520 (CACHE_BLOCKSIZE): New constants.
9521
9522 * w32font.c (Qja, Qko, Qzh): New symbols.
9523 (syms_of_w32font): Initialise them.
9524 (font_matches_spec): Use them to filter by language.
9525 (recompute_cached_metrics): Remove function.
9526 (compute_metrics, clear_cached_metrics): New functions.
9527 (w32font_encode_char): Use them to manage metric cache.
9528 (w32font_text_extents): Cache metrics for all glyphs on demand.
9529 Delay converting glyph indices to WORD until needed.
9530 (w32font_open_internal): Initialize metric cache to empty.
9531 (registry_to_w32_charset): Charset should always be a symbol.
9532 (fill_in_logfont, list_all_matching_fonts): Family should
9533 always be a symbol.
9534
95352008-04-06 Jason Rumney <jasonr@gnu.org>
9536
9537 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
9538 Give up if glyph indices not supported. Use uniscribe obtained
9539 ABC widths for individual metrics. Map glyph clusters back to
9540 characters using fClusterStart flag. Return number of glyphs
9541 produced, not chars processed.
9542 (uniscribe_shape): Map char at FROM to current glyph.
9543
95442008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9545
9546 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
9547 Use SetMenuItemHierarchicalMenu.
9548
95492008-04-05 Jason Rumney <jasonr@gnu.org>
9550
9551 * image.c (pbm_load): Allow color values up to 65535.
9552 Throw an error if max_color_idx is outside the supported range.
9553 Report an error when image size is invalid.
9554 Read two bytes at a time when raw images have max_color_idx above 255.
9555
95562008-04-05 Eli Zaretskii <eliz@gnu.org>
9557
9558 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9559 cFileName a file name that includes `?' characters, use the 8+3
9560 alias in cAlternateFileName instead.
9561
95622008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
9563
9564 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
9565 append "CCL: Quitted" when the CCL program is quitted.
9566 (setup_ccl_program): Initialize ccl->quit_silently to zero.
9567
9568 * ccl.h (struct ccl_program): New member quit_silently.
9569
95702008-04-05 Chong Yidong <cyd@stupidchicken.com>
9571
9572 * search.c (compile_pattern_1): Treat non-nil and non-string of
9573 search-spaces-regexp as nil.
9574
9575 * minibuf.c (Fassoc_string): Tweak docstring.
9576
95772008-04-05 Eli Zaretskii <eliz@gnu.org>
9578
9579 * dired.c (Ffile_attributes): Support inode numbers wider than 32
9580 bits. Remove ugly WINDOWSNT-specific kludge introduced on
9581 2008-03-14 to force inode be positive.
9582
9583 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
9584 _S_* ones, since we now use our own sys/stat.h.
9585 (stat, fstat): Don't mangle the inode number.
9586 (init_user_info): Don't restrict UID and GID to 0-60000 range.
9587
95882008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
9589
9590 * frame.h (struct frame): Give one more bit to `visible' since we use
9591 values larger than 1 to indicate obscured frames on ttys.
9592
9593 * keymap.c (Qkeymap_canonicalize): New var.
9594 (Fmap_keymap_internal): New fun.
9595 (describe_map): Use keymap-canonicalize.
9596
9597 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
9598 (Fundo_boundary): Set them.
9599 (syms_of_undo): Initialize them.
9600 (record_point): Use them instead of last_point_position*.
9601 (last_undo_buffer): Change type.
9602
96032008-04-04 Jason Rumney <jasonr@gnu.org>
9604
9605 * w32font.c (w32font_text_extents): Use font's ascent and descent.
9606 (recompute_cached_metrics): Don't set ascent and descent per char.
9607
9608 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
9609 (uniscribe_check_otf): Add GC protection before consing.
9610 Rearrange loop for counting features.
9611
96122008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9613
9614 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
9615 buffer with byte-size of source buffer.
9616
96172008-04-03 Chong Yidong <cyd@stupidchicken.com>
9618
9619 * callint.c (Fcall_interactively): Handle temporary region even
9620 when shift-select-mode is off.
9621
96222008-04-03 Jason Rumney <jasonr@gnu.org>
9623
9624 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
9625
96262008-04-03 Kenichi Handa <handa@m17n.org>
9627
9628 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
9629 (CATEGORY_MASK_UTF_16): Likewise.
9630 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
9631 binary file.
9632 (detect_coding): Add null-byte detection for a binary file.
9633 (detect_coding_system): Likewise.
9634
96352008-04-03 Jason Rumney <jasonr@gnu.org>
9636
9637 * w32uniscribe.c: New file.
9638
9639 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
9640
9641 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
9642
9643 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
9644 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
9645 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
9646 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
9647 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
9648 (Qphonetic): New symbols.
9649 (syms_of_w32font): Initialize them.
9650 (font_supported_scripts): Use them.
9651 (w32font_list_family): List all charsets.
9652 (w32font_text_extents, recompute_cached_metrics): Fix metric
9653 calculations.
9654 (w32_enumfont_pattern_entity): Make full_type a DWORD.
9655 Give opentype fonts their own format.
9656 (font_matches_spec): New arguments backend and logfont.
9657 Handle :otf spec for uniscribe backend.
9658 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
9659 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
9660
9661 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
9662 font backend.
9663 (globals_of_w32fns): Initialize uniscribe font backend.
9664
9665 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
9666 dependencies.
9667 (w32uniscribe.$(O)): New file to build.
9668 (FONT_OBJ): Include w32uniscribe.$(O).
9669 (LIBS): Add uniscribe libraries.
9670
9671 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
9672
96732008-04-02 Chong Yidong <cyd@stupidchicken.com>
9674
9675 * callint.c (Vshift_select_mode): New var.
9676 (Finteractive): Document new ^ spec.
9677 (Fcall_interactively): Call handle-shift-selection if the ^ spec
9678 is present.
9679
9680 * keyboard.c (Vthis_command_keys_shift_translated): New var.
9681 (command_loop_1): Avoid running the direct display versions of
9682 forward-char and backward-char if shift-selection may occur.
9683 (read_key_sequence): Set Vthis_command_keys_shift_translated if
9684 shift-translation takes place.
9685
9686 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
9687 avoid clobbering by define-minor-mode.
9688
9689 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
9690 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
9691
9692 * syntax.c (Fforward_word): Add ^ interactive spec.
9693
9694 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
9695 (Fscroll_right): Add ^ interactive spec.
9696
96972008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
9698
9699 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
9700
9701 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
9702
9703 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
9704
97052008-03-31 Juri Linkov <juri@jurta.org>
9706
9707 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
9708
97092008-03-30 Jan Djärv <jan.h.d@swipnet.se>
9710
9711 * gtkutil.c (xg_set_geometry): Fix indentation.
9712 (xg_resize_outer_widget): Remove.
9713 (x_wm_size_hint_off): Fix indentation.
9714 (xg_frame_set_char_size): Call flush_and_sync after
9715 gtk_window_resize.
9716 (x_wm_set_size_hint): Pass NULL as geometry window to
9717 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
9718 Add menu bar and tool bar height to base height.
9719 (xg_update_frame_menubar, free_frame_menubar)
9720 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
9721 (update_frame_tool_bar, free_frame_tool_bar):
9722 Change xg_resize_outer_widget to xg_frame_set_char_size.
9723
97242008-03-30 Michael Albinus <michael.albinus@gmx.de>
9725
9726 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
9727 (Fdbus_call_method): New parameter TIMEOUT.
9728 (dbus-send-signal): Optimize UNGCPRO call.
9729
97302008-03-29 Juri Linkov <juri@jurta.org>
9731
9732 * window.c (Fdisplay_buffer): Move call to
9733 Vsplit_window_preferred_function out of conditions that check
9734 if window is eligible for vertical splitting.
9735 When Vsplit_window_preferred_function is non-nil, call it and use
9736 its non-nil return value as window. Otherwise, continue doing
9737 vertical splitting using Fsplit_window with arg horflag=nil.
9738 (syms_of_window) <Vsplit_window_preferred_function>: Change the
9739 default value from `split-window' to nil.
9740
97412008-03-29 Juri Linkov <juri@jurta.org>
9742
9743 * callint.c (Fcall_interactively): Revert 2008-03-16 change
9744 for interactive code letters 'b' and 'B'.
9745
97462008-03-29 Eli Zaretskii <eliz@gnu.org>
9747
9748 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
9749 multibyte string.
9750
97512008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
9752
9753 * keyboard.c (pending_funcalls): New var.
9754 (timer_check): Run it.
9755 (syms_of_keyboard): Initialize it.
9756 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
9757 (Vdelete_terminal_functions): New vars.
9758 (syms_of_terminal): Initialize them.
9759 (Fdelete_terminal): Run delete-terminal-functions.
9760 * xdisp.c (safe_eval): Rewrite.
9761 (safe_call2): New fun.
9762 * frame.c (Qdelete_frame_functions): New var.
9763 (syms_of_frame): Initialize it.
9764 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
9765 * lisp.h (safe_call2, pending_funcalls): Declare.
9766
97672008-03-28 Andreas Schwab <schwab@suse.de>
9768
9769 * indent.c (Fmove_to_column): Move declaration before statements.
9770
97712008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
9772
9773 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
9774 (struct frame): Use bit fields for boolean vars.
9775
9776 * process.c (server_accept_connection): Simplify naming.
9777 (emacs_get_tty_pgrp): Use SDATA.
9778
9779 * coding.c (decode_coding_object): Fix last change.
9780
97812008-03-27 Jason Rumney <jasonr@gnu.org>
9782
9783 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
9784
97852008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
9786
9787 * charset.c (Fdefine_charset_internal): Change the way of
9788 registering charsets in Vcharset_order_list.
9789 (syms_of_charset): Make the charset `eight-bit' supplementary.
9790
97912008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
9792
9793 * regex.c (EXTEND_BUFFER): Change order of pointer addition
9794 operations, to avoid having the difference between pointers
9795 overflow.
9796
97972008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
9798
9799 * indent.c (check_display_width): New fun.
9800 (scan_for_column): Use it.
9801
9802 * data.c (syms_of_data): Mark most-positive-fixnum and
9803 most-negative-fixnum as constants.
9804
9805 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
9806
9807 * indent.c (scan_for_column): Extract from current_column_1.
9808 Merge with the same code from Fmove_to_column.
9809 (current_column_1, Fmove_to_column): Use it.
9810
98112008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
9812
9813 * keymap.c (map_keymap_internal): New fun.
9814 (map_keymap): Use it.
9815 (Fmap_keymap_internal): New fun.
9816 (Fmap_keymap): Remove left-out test from before make_save_value.
9817
9818 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
9819
9820 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
9821 Use XCAR/XCDR.
9822
9823 * process.h (struct Lisp_Process): Remove filter_multibyte.
9824 * process.c (QCfilter_multibyte): Remove.
9825 (setup_process_coding_systems): Don't use filter_multibyte.
9826 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
9827 (read_process_output): Don't adjust multibyteness to filter_multibyte.
9828 (Fset_process_filter_multibyte): Change the coding-system to
9829 approximate the previous behavior.
9830 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
9831 coding-system.
9832
9833 * coding.c (decode_coding_object): When not decoding into a buffer,
9834 obey the coding system's preference of (uni|multi)byte.
9835
98362008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
9837
9838 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
9839 every char is changed and has a different byte-length.
9840 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
9841 Fix int -> EMACS_INT.
9842
98432008-03-23 David Hansen <david.hansen@gmx.net>
9844
9845 * dbusbind.c (xd_read_message): Remove extra copying of message
9846 strings. Check for NULL `interface' or `member'.
9847
98482008-03-22 Eli Zaretskii <eliz@gnu.org>
9849
9850 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9851 cFileName a file name that includes `?' characters, use the 8+3
9852 alias in cAlternateFileName instead.
9853
98542008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
9855
9856 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
9857
98582008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9859
9860 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
9861 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
9862 work on current_buffer only instead (that was already the case
9863 for some of the code anyway).
9864 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
9865 (temp_set_point, temp_set_point_both): Use EMACS_INT.
9866 (SET_PT, SET_PT_BOTH): Adjust.
9867 * intervals.h (set_point, temp_set_point, set_point_both)
9868 (temp_set_point_both): Remove redundant declarations.
9869
98702008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9871
9872 * fileio.c (Finsert_file_contents):
9873 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
9874 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
9875 when buffer != current_buffer anyway.
9876
98772008-03-20 Andreas Schwab <schwab@suse.de>
9878
9879 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
9880 as default.
9881
98822008-03-19 Jason Rumney <jasonr@gnu.org>
9883
9884 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
9885 (syms_of_w32fns): Initialize them.
9886 (HOURGLASS_ID): New constant.
9887 (x_window_to_frame): Don't check hourglass_window.
9888 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
9889 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
9890 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
9891 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
9892 Only change the cursor if hourglass is not active.
9893 (Fx_create_frame): Initialize frame's current_cursor.
9894 (hourglass_atimer): Remove.
9895 (hourglass_started): New function.
9896 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
9897 (show_hourglass): Adapt to w32, changing argument to frame.
9898
9899 * w32term.h (struct w32_output): Remove hourglass_window.
9900 Add current_cursor.
9901
9902 * eval.c (call_debugger, Fsignal):
9903 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
9904 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
9905 (Fexecute_extended_command, cancel_hourglass_unwind):
9906 * minibuf.c (read_minibuf):
9907 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
9908
99092008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
9910
9911 * window.c (run_funs): New fun.
9912 (run_window_configuration_change_hook): Use it to run the buffer-local
9913 and the global part of the hook.
9914
9915 * xdisp.c (format_mode_line_unwind_data): Add window argument.
9916 (unwind_format_mode_line): Restore selected window.
9917 (x_consider_frame_title, Fformat_mode_line): Set selected window.
9918
99192008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9920
9921 * editfns.c (Fchar_equal): Check they are valid characters.
9922
9923 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
9924
99252008-03-17 Andreas Schwab <schwab@suse.de>
9926
9927 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
9928 against a charset.
9929
9930 * lisp.h (Fbuffer_list): Declare.
9931
99322008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 9933
aac0c6e3
MR
9934 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
9935 handlebox_widget is != 0.
9936
99372008-03-16 Juri Linkov <juri@jurta.org>
9938
9939 * callint.c (Fcall_interactively): For interactive code letters
9940 'b' and 'B' put the buffer list into the list of default "future"
9941 values of the minibuffer.
9942
99432008-03-16 Andreas Schwab <schwab@suse.de>
9944
9945 * keyboard.c (read_key_sequence): Fix downcasing of letters with
9946 modifiers.
9947
9948 * regex.c (re_match_2_internal): Correct matching of a charset
9949 against latin-1 characters.
9950
99512008-03-16 Kenichi Handa <handa@m17n.org>
9952
9953 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
9954 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
9955 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
9956 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
9957 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
9958 CHAR_STRING_ADVANCE.
9959 (produce_chars): Fix for the case that the source and the
9960 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
9961 instead of CHAR_STRING_ADVANCE.
9962 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
9963 STRING_CHAR_ADVANCE.
9964
99652008-03-15 Andreas Schwab <schwab@suse.de>
9966
9967 * regex.c (re_match_2_internal): Correct matching of eight bit
9968 characters in unibyte strings.
9969
99702008-03-15 Martin Rudalics <rudalics@gmx.at>
9971
9972 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
9973 at end of range when it coincides with the end of the buffer.
9974
99752008-03-14 Eli Zaretskii <eliz@gnu.org>
9976
9977 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
9978
9979 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
9980
99812008-03-14 Jason Rumney <jasonr@gnu.org>
9982
9983 * editfns.c (initial_tz): New variable.
9984 (syms_of_editfns): Initialize it.
9985 (Fset_time_zone_rule): Set it when first called.
9986 Use it when TZSTRING is nil.
9987
9988 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
9989 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
9990 (monitor_from_point_fn, get_monitor_info_fn): New globals.
9991 (globals_of_w32fns): Initialize them.
9992 (compute_tip_xy): Use them to position tooltips.
9993
99942008-03-14 Glenn Morris <rgm@gnu.org>
9995
9996 * emacs.c (main): Revert previous change.
9997 (standard_args): Revert -internal-script back to -scriptload,
9998 and remove the long-option form.
9999
100002008-03-13 Glenn Morris <rgm@gnu.org>
10001
10002 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
10003 Remove option -enable-font-backend.
10004
100052008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
10006
10007 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
10008
100092008-03-11 Jan Djärv <jan.h.d@swipnet.se>
10010
10011 * xterm.c (x_connection_closed): For GTK: If this is the last
10012 terminal just exit without closing the display.
10013
100142008-03-11 Jason Rumney <jasonr@gnu.org>
10015
10016 * w32font.c (w32font_full_name): Use floor to round.
10017
f0131492 100182008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
10019
10020 * sound.c (alsa_configure): Declare vol at beginning of block.
10021
10022 * fontset.c (Ffontset_info): Remove extra semicolon.
10023
100242008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
10025
10026 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
10027 size of resulting string.
10028
100292008-03-10 Jason Rumney <jasonr@gnu.org>
10030
10031 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
10032
100332008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10034
10035 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
10036 Don't pretend as if characters with display property haven't been
10037 consumed for string-replacing-string case.
10038
100392008-03-08 Kim F. Storm <storm@cua.dk>
10040
10041 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
10042 (get_next_display_element, next_element_from_string)
10043 (next_element_from_ellipsis, next_element_from_buffer): Use it.
10044
100452008-03-08 Andreas Schwab <schwab@suse.de>
10046
10047 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
10048
100492008-03-06 Jason Rumney <jasonr@gnu.org>
10050
10051 * w32font.c (w32_registry): Take font_type argument. Use ANSI
10052 when charset not specified. Only translate ANSI to unicode when
10053 font_type is truetype.
10054 (w32font_coverage_ok): New function.
10055 (add_font_entity_to_list): Use it to filter unsuitable fonts.
10056
100572008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
10058
10059 * lread.c (Fread_char): Resolve modifiers.
10060 (Fread_char_exclusive): Likewise.
10061
10062 * character.c (char_resolve_modifier_mask): New function.
10063 (char_string): Use char_resolve_modifier_mask.
10064 (Fchar_resolve_modifiers): New function.
10065 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
10066 function.
10067
100682008-03-04 Jason Rumney <jasonr@gnu.org>
10069
10070 * makefile.w32-in: Always include w32font.c in the build.
10071 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
10072
100732008-03-04 Andreas Schwab <schwab@suse.de>
10074
10075 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
10076 (versionclean): Likewise.
10077
100782008-03-04 Juanma Barranquero <lekktu@gmail.com>
10079
10080 * .cvsignore: Add oo.
10081
100822008-03-03 Andreas Schwab <schwab@suse.de>
10083
10084 * coding.c (decode_coding_object): Inhibit gap shrinking while
10085 decoding in place.
10086
100872008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
10088
10089 * w32term.c: Remove unused include "gnu.h".
10090 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
10091
10092 * gnu.h: Rename to ...
10093 * emacs-icon.h: ... this.
10094 * xterm.c: Use emacs-icon.h instead of gnu.h.
10095 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
10096
100972008-03-03 Juanma Barranquero <lekktu@gmail.com>
10098
10099 * w32font.c: Include math.h.
10100
101012008-03-03 Jason Rumney <jasonr@gnu.org>
10102
10103 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
10104 Compute options separately.
10105 (w32font_open_internal): Set glyph_idx before caching metrics.
10106
10107 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
10108 Define if system headers don't.
10109 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
10110 (w32font_encode_char): Don't declare here.
10111
10112 * w32font.c (Quniscribe, QCformat): New symbols.
10113 (syms_of_w32font): Define them.
10114 (w32font_has_char): Indicate uncertainty.
10115 (w32font_encode_char): Encode as glyph point. Make static.
10116 (recompute_cached_metrics): New function.
10117 (w32font_open_internal): Use it. Set font to use glyph points
10118 initially. Set format based on type of font.
10119 (w32font_text_extents, w32font_draw): Optionally use glyph points.
10120 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
10121 on it. Set format based on information available here.
10122 (add_font_entity_to_list): Identify backend based on opentype_only.
10123
101242008-03-02 Andreas Schwab <schwab@suse.de>
10125
10126 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
10127
10128 * coding.c (decode_coding_big5, produce_chars):
10129 Fix typos in last change.
10130
101312008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
10132
10133 * gnu.h: New icon.
10134
101352008-03-02 Kenichi Handa <handa@m17n.org>
10136
10137 * coding.c (decode_coding_utf_8): When eol-type of CODING is
10138 `dos', don't decode '\r' if that is the last in the source.
10139 (decode_coding_utf_16, decode_coding_emacs_mule)
10140 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10141 (decode_coding_raw_text, decode_coding_charset): Likewise.
10142 (produce_chars): Don't decode EOL here. Use EMACS_INT.
10143
101442008-03-01 Jason Rumney <jasonr@gnu.org>
10145
10146 * w32font.c (w32font_full_name): Report point size for scalable fonts.
10147
101482008-03-01 Kim F. Storm <storm@cua.dk>
10149
10150 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
10151
101522008-03-01 Jason Rumney <jasonr@gnu.org>
10153
10154 * w32font.c (w32font_full_name): New function.
10155 (w32font_open_internal): Use it.
10156
101572008-03-01 Kim F. Storm <storm@cua.dk>
10158
10159 * dispnew.c (line_draw_cost): Fix invalid glyph check.
10160
101612008-03-01 Jason Rumney <jasonr@gnu.org>
10162
10163 * font.c (font_unparse_fcname): Increase len when style is a symbol.
10164
101652008-03-01 Jan Djärv <jan.h.d@swipnet.se>
10166
10167 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
10168 xg_frame_resized when the event is for the edit widget.
10169
10170 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
10171
10172 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
10173 set_char_size.
10174 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
10175 operations on widgets here. Just set frame size if needed.
10176 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
10177 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
10178 (x_wm_set_size_hint): Set size hints on the edit widget only, not
10179 the whole frame.
10180 (xg_create_tool_bar): Move attachment of the tool bar to
10181 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
10182 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
10183
101842008-03-01 Jason Rumney <jasonr@gnu.org>
10185
10186 * w32fns.c (w32_msg_pump): Disable debug code.
10187
101882008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10189
10190 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
10191
101922008-02-29 Chong Yidong <cyd@stupidchicken.com>
10193
10194 * xdisp.c (next_overlay_string): Don't set
10195 overlay_strings_at_end_processed_p if we're currently reading from
10196 a display string.
10197
101982008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
10199
10200 * xdisp.c (get_overlay_strings_1): Fix typo.
10201
102022008-02-29 Chong Yidong <cyd@stupidchicken.com>
10203
10204 * xdisp.c (get_overlay_strings_1): Add missing argument type.
10205
102062008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
10207
10208 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
10209
10210 * xdisp.c (display_mode_element): Cancel the previous change.
10211 (decode_mode_spec): Likewise.
10212 (handle_auto_composed_prop): Don't make composition if it->string
10213 is a string.
10214
102152008-02-27 Kim F. Storm <storm@cua.dk>
10216
10217 * lisp.h (GLYPH): Change type from int to struct with separate char
10218 and face_id members.
10219 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
10220 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
10221 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
10222 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
10223 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
10224 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
10225 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
10226 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
10227 handle new Lisp glyph code encoding, either an integer or a cons.
10228
10229 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
10230 (GLYPH_ALIAS): Delete.
10231 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
10232 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
10233 (GLYPH_FROM_CHAR): Replace macro by ...
10234 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
10235
10236 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
10237 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
10238 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
10239 (GLYPH_INVALID_P): New macro.
10240 (spec_glyph_lookup_face): Update prototype.
10241
10242 * dispnew.c (line_draw_cost): Adapt to new glyph type.
10243 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
10244 new glyph code encoding.
10245 (spec_glyph_lookup_face): No return value; update passed glyph instead.
10246 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
10247
10248 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10249 Adapt to new glyph type and new glyph code encoding.
10250
10251 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
10252
10253 * indent.c (current_column, current_column_1, Fmove_to_column)
10254 (compute_motion): Adapt to new glyph code encoding.
10255
10256 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
10257
102582008-02-27 Chong Yidong <cyd@stupidchicken.com>
10259
10260 * process.c (wait_reading_process_output): Check for window
10261 changes caused by timers.
10262 Suggested by Johan Bockgård.
10263
102642008-02-27 Glenn Morris <rgm@gnu.org>
10265
10266 * emacs.c (USAGE1): Add `--disable-font-backend'.
10267
102682008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
10269
10270 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
10271 is made to the buffer.
10272
102732008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
10274
10275 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
10276 (face_at_string_position):
10277 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
10278 (face_at_string_position):
10279 * xdisp.c (display_string, next_overlay_change):
10280 * buffer.h (overlays_at):
10281 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
10282 Update callers.
10283
102842008-02-26 Chong Yidong <cyd@stupidchicken.com>
10285
10286 * editfns.c (Fformat): Doc fix.
10287
102882008-02-26 Juanma Barranquero <lekktu@gmail.com>
10289
10290 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
10291 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
10292 (Ffont_otf_alternates, Fquery_font): Doc fixes.
10293
102942008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10295
10296 * buffer.c (Fbuffer_swap_text): New function.
10297 (syms_of_buffer): Defsubr it.
10298
102992008-02-25 Chong Yidong <cyd@stupidchicken.com>
10300
10301 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
10302
103032008-02-25 Jason Rumney <jasonr@gnu.org>
10304
10305 * w32font.c (w32font_draw): Draw one character at a time when padding.
10306
103072008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10308
10309 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
10310 Handle a nil arg. Use run_window_configuration_change_hook.
10311 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
10312 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
10313 Use run_window_configuration_change_hook.
10314
103152008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10316
10317 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
10318 1-pixel width.
10319
103202008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10321
10322 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
10323 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
10324 if the glyph in the font is zero pixel with.
10325
10326 * dispextern.h (struct glyph_string): New member padding_p.
10327
10328 * w32font.c (w32font_draw): Pay attention to s->padding_p.
10329
10330 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
10331
10332 * xfont.c (xfont_draw): Pay attention to s->padding_p.
10333
10334 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
10335
10336 * font.c: If the font driver doesn't have `shape' function, return Qnil.
10337
103382008-02-25 Jason Rumney <jasonr@gnu.org>
10339
10340 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
10341
103422008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
10343
10344 Allow fine-grained image-cache flushing.
10345 * dispextern.h (struct image): Add `dependencies' field.
10346 (clear_image_caches): Change arg to Lisp_Object.
10347 * image.c (make_image): Initialize `dependencies' field.
10348 (clear_image_cache): Change arg to allow fine-grained flushing.
10349 Perform the flush even if image-cache-eviction-delay is nil.
10350 (clear_image_caches): Change arg to Lisp_Object.
10351 (Fclear_image_cache): Expand meaning of the argument.
10352 (mark_image): Mark `dependencies' field.
10353 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
10354 (lface_hash): Use XHASH rather than XFASTINT.
10355 (face_at_buffer_position): Fix int -> EMACS_INT position.
10356 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
10357 (select_frame_for_redisplay): Remove code duplication.
10358 (redisplay_internal): Adapt arg to call to clear_image_caches.
10359
103602008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
10361
10362 * s/vms4-0.h:
10363 * s/vms4-2.h:
10364 * s/vms4-4.h:
10365 * s/vms5-5.h: Remove, unused.
10366
10367 * s/irix5-2.h:
10368 * s/irix6-0.h:
10369 * s/riscos5.h:
10370 * s/mach-bsd4-3.h:
10371 * m/mips4.h: Remove files for obsolete systems.
10372
10373 * Makefile.in:
10374 * filelock.c:
10375 * unexmips.c:
10376 * m/hp9000s300.h:
10377 * m/iris4d.h:
10378 * s/aix3-1.h:
10379 * s/hpux.h:
10380 * s/msdos.h:
10381 * s/usg5-0.h:
10382 * s/usg5-2-2.h:
10383 * s/usg5-2.h:
10384 * s/usg5-3.h: Remove references to obsolete variables.
10385
10386 * s/irix5-0.h: Remove, move all the contents ...
10387 * s/irix6-5.h: ... here. Simplify.
10388 * config.in: Regenerate.
10389
103902008-02-24 Jason Rumney <jasonr@gnu.org>
10391
10392 * w32term.c (x_draw_glyph_string_background): Clear the background
10393 manually when cleartype is in use.
10394 (x_draw_glyph_string_foreground): Draw text transparently when
10395 cleartype is in use.
10396
10397 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
10398 a font into it unless we have to.
10399
104002008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10401
10402 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
10403 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 10404
aac0c6e3
MR
104052008-02-18 Jason Rumney <jasonr@gnu.org>
10406
10407 * w32fns.c (Fw32_shell_execute): Encode parameters.
10408
104092008-02-09 Eli Zaretskii <eliz@gnu.org>
10410
10411 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
10412
104132008-02-05 Juanma Barranquero <lekktu@gmail.com>
10414
10415 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
10416
104172008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
10418
10419 * xterm.c (x_set_offset): Don't change the gravity if
10420 CHANGE_GRAVITY is -1.
10421
104222008-02-23 Chong Yidong <cyd@stupidchicken.com>
10423
10424 * fileio.c (auto_save_error_occurred): New var.
10425 (auto_save_error): Set it.
10426 (Fdo_auto_save): Don't overwrite the error message if an auto-save
10427 error occurred.
10428
104292008-02-23 Eli Zaretskii <eliz@gnu.org>
10430
10431 * w32.c (globals_of_w32): Add initializations for
10432 g_b_init_get_sid_sub_authority and
10433 g_b_init_get_sid_sub_authority_count.
10434
104352008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
10436
10437 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
10438 (font_parse_xlfd): Use them for sanity check.
10439 (Finternal_set_font_style_table): Make sure the table is bijective.
10440
10441 Consolidate the image_cache to the terminal struct.
10442 * termhooks.h (P_): Remove redundant def.
10443 (struct terminal): New field `image_cache'.
10444 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
10445 of FRAME_X_IMAGE_CACHE.
10446 * xterm.h (struct x_display_info): Remove image_cache field.
10447 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10448 * w32term.h (struct w32_display_info): Remove image_cache field.
10449 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10450 * macterm.h (struct mac_display_info): Remove image_cache field.
10451 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10452 * xterm.c (x_term_init):
10453 * w32term.c (w32_term_init):
10454 * macterm.c (mac_term_init): Set the image_cache in the terminal.
10455 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
10456 Remove declarations.
10457 (clear_image_caches, mark_image_cache): New declarations.
10458 * xfaces.c (clear_face_cache):
10459 * xdisp.c (redisplay_internal): Use clear_image_caches.
10460 * image.c (clear_image_cache): Don't check that a frame is on
10461 a window-system before checking if it shares the same cache.
10462 (clear_image_caches): New function.
10463 (Fclear_image_cache): Use it.
10464 (mark_image): Move from allo.c.
10465 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
10466 * alloc.c (mark_image, mark_image_cache): Move to image.c.
10467 (mark_object): Don't call mark_image_cache for frames.
10468 (mark_terminals): Call mark_image_cache.
10469
10470 * lisp.h (Fdelete_terminal): Declare.
10471
10472 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
10473 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
10474 wrong_type_argument.
10475
104762008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
10477
10478 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
10479 malayalam.el, and tamil.el. Add sinhala.el.
10480
104812008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
10482
10483 * xterm.c (x_connection_closed): Consolidate identical tests.
10484 (x_delete_terminal): Don't crash if called via x_connection_closed.
10485
104862008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
10487
10488 * xdisp.c (decode_mode_spec): New arg string.
10489 (display_mode_element): Adjust for the above change.
10490
104912008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10492
10493 * callint.c (Fcall_interactively): Use AREF.
10494
104952008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
10496
10497 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
10498
104992008-02-18 Jan Djärv <jan.h.d@swipnet.se>
10500
10501 * xfns.c (Fx_show_tip): Set string to " " if empty.
10502
105032008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
10504
10505 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
10506 with Qt.
10507
105082008-02-17 Kenichi Handa <handa@m17n.org>
10509
10510 * ftfont.c (ftfont_shape): Return Lispy number.
10511
10512 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
10513 for GCs.
10514 (Finternal_set_font_selection_order): Call font_update_sort_order
10515 only when enable_font_backend is set.
10516 (realize_x_face): Set face->font_info to that of default face only
10517 when enable_font_backend is set.
10518
10519 * xdisp.c (handle_composition_prop): Set it->c to the fist
10520 character of the composed region.
10521 (fill_composite_glyph_string): Set base_face->font_info to
10522 s->font_info. Get a face for ascii from base_face->ascii_face.
10523 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
10524 with a face already decided.
10525 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
10526 non-negative.
10527 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
10528 call font_prepare_composition unconditionally.
10529
10530 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
10531
10532 * xterm.h (struct x_display_info): New member font.
10533
10534 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
10535 (x_set_mouse_face_gc, x_new_font): Likewise.
10536 (x_term_init): Setup display_info->font.
10537 (x_delete_terminal): Free display_info->font.
10538
10539 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
10540
10541 * ftxfont.c (ftxfont_default_fid): Delete it.
10542 (ftxfont_open): Set xfont->fid to 0.
10543 (ftxfont_end_for_frame): Clear data specific to the frame and the
10544 font-driver.
10545
10546 * xftfont.c (xftfont_default_fid): Delete it.
10547 (xftfont_open): Set xfont->fid to 0.
10548
10549 * fontset.c (FONTSET_OBJLIST): New macro.
10550 (fontset_find_font): Update font-object list of the fontset.
10551 (free_realized_fontset): New function.
10552 (free_face_fontset): Call free_realized_fontset.
10553 (Ffont_info): Call font_close_object only when enable_font_backend
10554 is set.
10555
10556 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
10557 [HAVE_NTGUI]: Include w32term.h.
10558 [MAC_OS]: Include macterm.ch.
10559 (font_otf_ValueRecord): Use make_number.
10560 (font_finish_cache): Fix handling of reference count.
10561 (font_clear_cache): Update num_fonts.
10562 (font_open_entity): Update smallest_char_width and
10563 smallest_font_height of the frame.
10564 (font_close_object): Update num_fonts.
10565 (Fclear_font_cache): Fix finding the target cache data.
10566
105672008-02-16 Glenn Morris <rgm@gnu.org>
10568
10569 * fontset.c (Finternal_char_font): Fix compilation warning.
10570
105712008-02-16 Eli Zaretskii <eliz@gnu.org>
10572
10573 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
10574 instead of char arrays. Enlarge the size of array passed to
10575 get_token_information.
10576
10577 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
10578 warnings.
10579
105802008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
10581
10582 * .gdbinit: Don't set `args', it breaks gdb --args.
10583
105842008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
10585
10586 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
10587 within a narrowed buffer.
10588
105892008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
10590
10591 * coding.c (decode_coding_object, encode_coding_object):
10592 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
10593
105942008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
10595
10596 * coding.c (coding_set_destination): Use BEG_BYTE rather than
10597 hardcoding 1.
10598 (detect_coding_system):
10599 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
10600 (string_char_to_byte, string_byte_to_char, insert_from_gap):
10601 * insdel.c (insert_from_gap):
10602 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
10603 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
10604 (string_to_multibyte):
10605 * character.c (chars_in_text, multibyte_chars_in_text):
10606 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
10607
10608 * character.h (FETCH_STRING_CHAR_ADVANCE)
10609 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
10610 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
10611 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
10612
10613 * casefiddle.c (casify_region): Only call after-change and composition
10614 functions on the part of the region that was changed.
10615
10616 * keyboard.c (read_avail_input):
10617 * frame.c (Fdelete_frame): Call Fdelete_terminal.
10618
106192008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10620
10621 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
10622 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
10623
106242008-02-11 Juanma Barranquero <lekktu@gmail.com>
10625
10626 * w32menu.c (push_submenu_start, push_submenu_end)
10627 (push_left_right_boundary, push_menu_pane, push_menu_item):
10628 * keyboard.c (read_key_sequence): Don't pass args with side effects
10629 to AREF, it fails when compiling with -DENABLE_CHECKING.
10630
106312008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
10632
10633 * Makefile.in (${lispsource}international/charprop.el):
10634 Delete this target.
10635
10636 * search.c (boyer_moore): Fix incorrect synching of the trunk and
10637 emacs-unicode-2.
10638
106392008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10640
10641 * terminal.c (Fdelete_terminal): Clean up the `force' path.
10642
106432008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10644
10645 * frame.c (Qnoelisp): New symbol.
10646 (syms_of_frame): Initialize it.
10647 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
10648 harmless Elisp code, from a strong `force' from x_connection_closed.
10649 * frame.h (Qnoelisp): Declare.
10650 * xterm.c (x_connection_closed): Pass `noelisp'.
10651
10652 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
10653 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
10654 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
10655 rather than `int' for the type of `type'.
10656
106572008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
10658
10659 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
10660
10661 * Makefile.in (GNUC): Remove support for gcc-1.x.
10662
106632008-02-10 Richard Stallman <rms@gnu.org>
10664
10665 * lisp.h (ASET): Use AREF, not ASLOT.
10666
106672008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10668
10669 * lisp.h (ASET): Check bounds.
10670
106712008-02-10 Glenn Morris <rgm@gnu.org>
10672
10673 * buffer.c (mode-name): Doc fix.
10674
106752008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10676
10677 * Makefile.in:
10678 * emacs.c:
10679 * gmalloc.c:
10680 * keyboard.c:
10681 * lisp.h:
10682 * m/ibm370aix.h:
10683 * process.c:
10684 * regex.c:
10685 * s/hpux.h:
10686 * sysdep.c:
10687 * sysselect.h:
10688 * systty.h:
10689 * unexec.c:
10690 * w32term.c:
10691 * xsmfns.c:
10692 * xterm.c: Remove code that deals with obsolete variables.
10693
10694 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
10695
10696 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
10697 nothing else needs it anymore.
10698
106992008-02-09 Eli Zaretskii <eliz@gnu.org>
10700
10701 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
10702 instead of unibyte_char_to_multibyte.
10703
107042008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10705
10706 * s/gnu-linux.h: Remove commented out code.
10707
10708 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
10709
10710 * Makefile.in: Update what RMS says about using autoconf.
10711 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
10712 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
10713 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
10714 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
10715
107162008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
10717
10718 * keymap.c (Fkey_description): Move side effect outside of macro call.
10719
10720 * xfaces.c (Finternal_make_lisp_face):
10721 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
10722
10723 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
10724 (syms_of_fontset): Use ASET.
10725
10726 * fns.c (concat): Move side effect outside of macro call.
10727 (hash_clear): Use ASET.
10728
107292008-02-08 Richard Stallman <rms@gnu.org>
10730
10731 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
10732 If FORCE, and frame has a surrogate minibuffer for another frame,
10733 delete the other frame first.
10734
107352008-02-07 Timo Savola <timo.savola@iki.fi>
10736
10737 * xterm.c (x_detect_focus_change): Handle embed client message.
10738 (handle_one_xevent): Ditto.
10739 (handle_one_xevent): If embedded and we get a button press/release,
10740 request focus.
10741 (xembed_set_info, xembed_send_message): New functions.
10742 (x_make_frame_visible): Call xembed_set_info if embedded.
10743 (x_make_frame_invisible): Call xembed_set_info if embedded.
10744 (x_term_init): Initialize Xatom_XEMBED.
10745 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
10746 (x_iconify_frame): Ditto.
10747
10748 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
10749 (enum xembed_info, enum xembed_message, enum xembed_focus)
10750 (enum xembed_modifier, enum xembed_accelerator): New.
10751 (xembed_set_info, xembed_send_message): Declare.
10752 (FRAME_X_EMBEDDED_P): New.
10753
10754 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
10755 gtk_plug_new.
10756
10757 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
10758 window ID of a frame.
10759 (x_window): Reparent frame if embedded.
10760 (Fx_create_frame): Don't set border width if embedded.
10761
10762 * emacs.c (USAGE3): Add --parent-id.
10763 (standard_args): Ditto.
10764
107652008-02-07 Jan Djärv <jan.h.d@swipnet.se>
10766
10767 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
10768
107692008-02-07 Jim Meyering <meyering@redhat.com>
10770
10771 Use "do...while (0)", not "if (1)...else" in macro definitions.
10772 The latter provokes a warning from gcc about the empty else, when
10773 followed by ";". Also, without that trailing semicolon, it would
10774 silently swallow up any following statement.
10775 * syntax.h (SETUP_SYNTAX_TABLE)
10776 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
10777 * buffer.h (DECODE_POSITION): Likewise.
10778 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
10779 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
10780 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
10781 (FETCH_CHAR_ADVANCE): Likewise.
10782 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
10783
107842008-02-07 Jim Meyering <meyering@redhat.com>
10785
10786 * lread.c [lint]: Don't include <sys/inode.h>.
10787
107882008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
10789
10790 * xselect.c (x_handle_dnd_message):
10791 * xmenu.c (digest_single_submenu, xmenu_show):
10792 * xdisp.c (with_echo_area_buffer_unwind_data)
10793 (format_mode_line_unwind_data, unwind_format_mode_line)
10794 (display_menu_bar):
10795 * eval.c (Ffetch_bytecode):
10796 * doc.c (store_function_docstring):
10797 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
10798 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
10799 * buffer.c (add_overlay_mod_hooklist): Use ASET.
10800
108012008-02-07 Kenichi Handa <handa@m17n.org>
10802
10803 * ftxfont.c (ftxfont_open): Don't set
10804 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
10805
10806 * ftfont.c (ftfont_open): Fix previous change.
10807
108082008-02-06 Jason Rumney <jasonr@gnu.org>
10809
10810 * w32font.c (w32font_text_extents): Fill in lbearing metric.
10811 Use cached metrics for ASCII characters.
10812 (w32font_open_internal): Don't set font's owning_frame.
10813 Cache metrics for ASCII characters.
10814
10815 * w32font.h (struct w32font_info): Add ascii_metrics.
10816 Remove owning_frame.
10817
108182008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
10819
10820 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
10821 to negative value.
10822
10823 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
10824
10825 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
10826
10827 * charset.c (syms_of_charset): Set QCtest and Qeq.
10828
108292008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
10830
10831 * process.c (Fstart_process):
10832 * callproc.c (Fcall_process): Handle the case where
10833 Funhandled_file_name_directory returns nil.
10834
10835 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
10836 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
10837 * font.c (check_gstring): Use them and AREF to access the vector before
10838 we know it's really a gstring.
10839 (Ffont_shape_text): Fix typo.
46e722a9 10840 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
10841
10842 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
10843 Declare.
10844
10845 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
10846
108472008-02-05 Jason Rumney <jasonr@gnu.org>
10848
10849 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
10850 Set smallest_font_height and smallest_char_width in display info.
10851
108522008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
10853
10854 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
10855
108562008-02-05 Miles Bader <miles@gnu.org>
10857
10858 * xfaces.c (get_lface_attributes, merge_named_face)
10859 (lookup_named_face, lookup_derived_face, realize_named_face):
10860 Revert 2008-02-01 change by cyd@stupidchicken.com.
10861
108622008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
10863
10864 * fontset.c (Ffontset_info): Handle the case of inhibitting the
10865 fallback fonts.
10866 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
10867
108682008-02-04 Jason Rumney <jasonr@gnu.org>
10869
10870 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
10871 set full_name.
10872 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
10873
108742008-02-03 Jason Rumney <jasonr@gnu.org>
10875
10876 * makefile.w32-in (OBJ1): Include font.o here.
10877 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
10878
108792008-02-02 Jason Rumney <jasonr@gnu.org>
10880
10881 * makefile.w32-in (temacs): Bump EMHEAP to 21.
10882
108832008-02-01 Jason Rumney <jasonr@gnu.org>
10884
10885 * s/cygwin.h: Define VIRT_ADDR_VARIES.
10886
10887 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
10888
108892008-02-01 Andreas Schwab <schwab@suse.de>
10890
10891 * Makefile.in (shortlisp, lisp): Update for rename of
10892 ../lisp/language/myanmar.el.
10893
108942008-02-01 Chong Yidong <cyd@stupidchicken.com>
10895
10896 * xfaces.c (get_lface_attributes): Delete function.
10897 (merge_named_face, lookup_named_face, lookup_derived_face)
10898 (realize_named_face): Call lface_from_face_name directly, and use
10899 the fact that merge_face_vectors does not alter its FROM argument.
10900
109012008-02-01 Jason Rumney <jasonr@gnu.org>
10902
10903 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
10904 input in the default locale. Handle non-Unicode multibyte input.
10905
109062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10907
10908 * fontset.c (reorder_font_vector): Exclude nil elements from the
10909 font group. Don't try multiple fonts.
10910 (fontset_font): Adjust for the above change.
10911 (Finternal_char_font): Return nil if the found font doesn't
10912 contain the character ch.
10913
10914 * Makefile.in (lisp, shortlisp): Add cham.el.
10915
109162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10917
10918 * font.h (FONTP): Make it return 1 also for a font-object.
10919
10920 * .gdbinit (xfontset): New function.
10921
10922 * font.c (font_find_for_lface): Check if the character C is
10923 supported or not only for the first font.
10924
10925 * fontset.c (reorder_font_vector): Fix typo.
10926 (fontset_find_font): Don't add a font-spec specifying a script.
10927 Use 0 (not Qt) for the indication of empty font-group. Change the
10928 format of RFONT-DEF. Return Qt if no font in the font-group
10929 support the character.
10930 (fontset_font): Adjust for the above change. If no font was
10931 found the character, remember that.
10932 (face_for_char): Adjust for the change of RFONT-DEF.
10933 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
10934 no font for the target.
10935 (Finternal_char_font): Adjust for the change of RFONT-DEF.
10936
109372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10938
10939 * font.c (font_load_for_face): Handle the case that the font in
10940 face->lface is a string.
10941
109422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10943
10944 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
10945
109462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10947
10948 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
10949 Fix previous change. If the frame is not on a window system,
10950 signal an error.
10951
109522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10953
10954 * coding.c (decode_coding_object, encode_coding_object): Adjust
10955 marker positions after conversion.
10956
10957 * lisp.h (struct Lisp_Marker): New member need_adjustment.
10958
109592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10960
10961 * font.c (font_find_for_lface): Fix the handling of the return
10962 value of font_has_char.
10963 (Ffont_shape_text): Fix previous change.
10964
10965 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
10966 (fontset_ref_and_range): Delete it.
10967 (fontset_find_font): Call char_table_ref_and_range instead of
10968 FONTSET_REF_AND_RANGE.
10969 (make_fontset): Don't setup font groups of Latin here.
10970 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
10971 (new_fontset_from_font): Make the specified font the default for
10972 all Latin characters.
10973
109742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10975
10976 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
10977 is on a window system before accessing the fontset of the frame.
10978
109792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10980
10981 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
10982
10983 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
10984 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
10985
10986 * font.c (Ffont_shape_text): If the font driver doesn't have a
10987 shaper function, make zero-width glyphs to have at least one-pixel
10988 width. Fix setting of `to' field of glyphs.
10989
109902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10991
10992 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
10993 glyphs.
10994
10995 * font.h (struct font_driver): Improve docstring of member `shape'.
10996
109972008-02-01 Kenichi Handa <handa@m17n.org>
10998
10999 * composite.c (syms_of_composite): Fix docstring of
11000 auto-composition-function.
11001
11002 * font.h (LGLYPH_SIZE): New macro.
11003
11004 * font.c (Ffont_fill_gstring): Stop filling when a character not
11005 supported by the font is found.
11006 (Ffont_shape_text): When a shape callback function returns nil,
11007 try at most two more times with larger gstring.
11008 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
11009
11010 * xdisp.c (handle_auto_composed_prop): Change the argument to
11011 auto-composition-function.
11012
11013 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
11014 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
11015 Lispy glyph and store it in the lgstring.
11016
11017 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
11018
11019 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
11020
110212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11022
11023 * font.c (Ffont_shape_text): Avoid unnecessary composition.
11024
11025 * fontset.c (Vfont_encoding_charset_alist): New variable.
11026 (syms_of_fontset): DEFVAR it.
11027 (reorder_font_vector, fontset_find_font): Optimize for the case of
11028 no need of reordering.
11029 (face_for_char): Map the charset property by
11030 Vfont_encoding_charset_alist.
11031
110322008-02-01 Jason Rumney <jasonr@gnu.org>
11033
11034 * w32font.c (logfonts_match): Don't check adstyle here.
11035 (font_matches_spec): Check here against physical font instead.
11036 (add_font_entity_to_list): Avoid some substitutions.
11037
11038 * font.c (font_parse_fcname): Default weight and slant to normal.
11039 (font_score): Prefer normal fonts if weight or slant unspecified.
11040 (font_score) [WINDOWSNT]: Scale weight difference down to closer
11041 match freetype scores.
11042
110432008-02-01 Jason Rumney <jasonr@gnu.org>
11044
11045 * w32font.c (w32font_text_extents): Don't use the frame stored in the
11046 font, as it may have been deleted.
11047 (w32_enumfont_pattern_entity): Map generic family to adstyle using
11048 most common hyphenless variation.
11049 (logfonts_match): Check generic family.
11050 (font_matches_spec): Don't check generic family here.
11051 (fill_in_logfont): Set generic family based on adstyle.
11052
11053 * w32font.h (w32font_get_cache): Update declaration.
11054
110552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11056
11057 * ftfont.c (ftfont_get_cache): Adjust the argument type.
11058
11059 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
11060 If none of the new drivers are available, call font_update_drivers
11061 with the old drivers.
11062
11063 * w32font.c (w32font_get_cache): Adjust the argument type.
11064
11065 * xfont.c (xfont_get_cache): Adjust the argument type.
11066
11067 * font.h (struct font_driver): Change argument type of get_cache.
11068
11069 * xftfont.c (xftfont_start_for_frame): Delete prototype.
11070
11071 * font.c (Ffont_get): Fix arguments to Fassoc.
11072 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
11073 (font_clear_cache): New function.
11074 (font_list_entities, font_matching_entity): Use font_get_cache.
11075 (font_update_drivers): Call font_clear_cache when finishing a driver.
11076
11077 * fontset.c (fontset_find_font): Fix previous change.
11078
110792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11080
11081 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
11082 dpyinfo->font_table.
11083 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
11084 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
11085
11086 * font.c (font_at): Handle the case that the arg C is negative.
11087 Handle the unibyte case.
11088 (Ffont_at): Call font_at with the arg C -1.
11089
11090 * xdisp.c (handle_auto_composed_prop): Don't get a character at
11091 the position here, and call font_at with the arg C -1.
11092 Don't check the range of the existing composition at the point.
11093
110942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11095
11096 * fontset.c (fontset_add): New args charset_id and family.
11097 Change caller.
11098 (load_font_get_repertory, fontset_find_font): Assume that
11099 font_spec is always a font-spec object.
11100 (Fset_fontset_font): Always store a font-spec object in a fontset.
11101
11102 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
11103 instead of get_property_and_range.
11104
111052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11106
11107 * xftfont.c (struct xftfont_info): Delete the member ft_face.
11108 (xftfont_open): Don't keep locking face.
11109 (xftfont_close): Don't unlock face.
11110 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
11111
11112 * fontset.c (fontset_find_font): Don't prefer a font of
11113 supplementary charset.
11114
111152008-02-01 Kenichi Handa <handa@m17n.org>
11116
11117 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
11118 script, langsys_tag to langsys, new member script.
11119 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 11120 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
11121 listing to the script specified in that property. Fix arg to
11122 OTF_check_features.
11123
111242008-02-01 Jason Rumney <jasonr@gnu.org>
11125
11126 * w32font.h: New file.
11127
11128 * w32font.c: Include it.
11129 (struct w32font_info): Add owning_frame field. Move to w32font.h.
11130 (w32font_open): Set owning_frame.
11131 (w32font_text_extents): Use owning_frame.
11132 (struct font_callback_data): Add opentype_only field.
11133 (add_font_entity_to_list): Use it to filter fonts.
11134 Don't check against full name.
11135 (w32font_list_internal): New function.
11136 (w32font_list): Use it.
11137 (w32font_match_internal): New function.
11138 (w32font_match): Use it.
11139 (w32font_open_internal): New function.
11140 (w32font_open): Use it.
11141 (w32font_get_cache, w32font_close, w32font_has_char)
11142 (w32font_encode_char, w32font_text_extents, w32font_draw):
11143 Make non-static.
11144
11145 * makefile.w32-in (w32font.o): Depend on w32font.h.
11146
111472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11148
11149 * charset.c (Fdefine_charset_internal): Record a supplementary
11150 charset at the tail of Vcharset_order_list.
11151
11152 * font.c (Ffont_shape_text): Fix the return value.
11153
11154 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
11155
11156 * xdisp.c (handle_auto_composed_prop): Fix previous change.
11157
111582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11159
11160 * ftfont.c (struct OpenTypeSpec): New struct.
11161 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
11162 (ftfont_get_open_type_spec): New function.
11163 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
11164
11165 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
11166
111672008-02-01 Jason Rumney <jasonr@gnu.org>
11168
11169 * w32font.c (add_font_entity_to_list): Compare only the beginning
11170 of full name.
11171
111722008-02-01 Kenichi Handa <handa@m17n.org>
11173
11174 * xdisp.c (handle_auto_composed_prop): Simplify the code.
11175 Never return HANDLED_RECOMPUTE_PROPS.
11176
111772008-02-01 Kenichi Handa <handa@m17n.org>
11178
11179 * font.c (font_gstring_produce): Delete it.
11180
11181 * composite.h (COMPOSITION_METHOD):
11182 Handle COMPOSITION_WITH_GLYPH_STRING.
11183
111842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11185
11186 * xfont.c (Qx): Delete.
11187 (syms_of_xfont): Don't initialize Qx.
11188
11189 * composite.h (enum composition_method):
11190 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
11191
111922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11193
11194 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
11195 (choose_face_font): Accept new form of font-spec.
11196
11197 * frame.h (font_driver_list): Declare it unconditionally.
11198 (struct frame): Define members font_driver_list and font_data_list
11199 unconditionally.
11200
11201 * fontset.c: Include "font.h" unconditionally.
11202 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
11203 (Fset_fontset_font): Accept a font-spec object.
11204
11205 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
11206 PIXEL_SIZE part a wild card.
11207
11208 * dispextern.h (struct glyph_string): Define members clip and
11209 num_clips unconditionally.
11210 (struct face): Define members font_info and extra unconditionally.
11211
11212 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
11213 ftfont_info only when HAVE_LIBOTF is defined.
11214
112152008-02-01 Andreas Schwab <schwab@suse.de>
11216
11217 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
11218 and end.
11219
112202008-02-01 Jason Rumney <jasonr@gnu.org>
11221
11222 * w32font.c (w32font_driver): Add new fields.
11223
112242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11225
11226 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
11227 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
11228 (LIBES): Add @M17N_FLT_CFLAGS@.
11229
11230 * composite.c (compose_text): Don't treat the new style
11231 composition specially.
11232
11233 * emacs.c (main): Call syms_of_font unconditionally.
11234
11235 * font.h (FONT_ENTITY_NOT_LOADABLE)
11236 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
11237 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
11238 (struct font_driver): New member shape.
11239 (font_registry_charsets): Extern it.
11240 (font_find_for_lface, font_prepare_composition): Adjust prototype.
11241 (font_otf_capability, font_drive_otf): Delete their externs.
11242
11243 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
11244 (font_charset_alist, font_registry_charsets): Move from xfont.c
11245 and rename.
11246 (font_prop_validate_otf): New function.
11247 (font_property_table): Register it for QCotf.
11248 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
11249 (font_drive_otf): Delete.
11250 (font_prepare_composition): New arg F. Adjust for the change of
11251 lispy gstring.
11252 (font_find_for_lface): New arg C.
11253 (font_load_for_face): Adjust for the change of font_find_for_lface.
11254 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
11255 lispy gstring.
11256 (Ffont_shape_text): New function.
11257 (Fopen_font): If the font size is not given, use 12-pixel.
11258 (Ffont_at): New arg STRING.
11259 (syms_of_font): Initalize font_charset_alist.
11260 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
11261 conditionally.
11262
11263 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
11264 fonts of the same font-spec. Change the format of RFONT-DEF.
11265 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
11266 Adjust for the change of RFONT-DEF.
11267 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
11268
11269 * ftfont.h: New file.
11270
11271 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
11272 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11273 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11274 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
11275 font_otf_capability and font_drive_otf, set ftfont_shape.
11276 (ftfont_list): Adjust for the change of :otf property value.
11277 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
11278 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
11279 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
11280 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11281 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
11282 (otf_gstring, gstring, m17n_flt_initialized): New variables.
11283
11284 * w32term.c (x_draw_composite_glyph_string_foreground):
11285 Adjust for the change of lispy gstring.
11286
11287 * xdisp.c (handle_composition_prop): Adjust for the change of
11288 lispy gstring. Call a function for auto-composition with the
11289 third arg it->window.
11290 (fill_composite_glyph_string): Adjust for the change of lispy string.
11291 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
11292
11293 * xfaces.c (set_font_frame_param): Adjust for the change of
11294 font_find_for_lface.
11295
11296 * xfont.c (x_font_charset_alist): Move to font.c and rename.
11297 (xfont_registry_charsets): Likewise. Change caller.
11298 (syms_of_xfont): Don't handle x_font_charset_alist.
11299
11300 * xftfont.c: Include "ftfont.h".
11301 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11302 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11303 (xftfont_close) [HAVE_LIBOTF]: Close otf.
11304 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11305 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
11306 Set xftfont_driver.shape to xftfont_shape.
11307
11308 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
11309 the change of lispy gstring.
11310
113112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11312
11313 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
11314
113152008-02-01 Jason Rumney <jasonr@gnu.org>
11316
11317 * w32font.c (w32font_draw): Fill background manually.
11318
113192008-02-01 Jason Rumney <jasonr@gnu.org>
11320
11321 * font.c (Qfontp): Remove unused symbol.
11322 (QCantialias): New symbol.
11323 (syms_of_font): Define it.
11324 (font_property_table): Set a validator for QCantialias.
11325
11326 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
11327 Define if not already.
11328 (QCfamily): Share with xfaces.c.
11329 (Qstandard, Qsubpixel, Qnatural): New symbols.
11330 (syms_of_w32font): Define them. Don't define QCfamily here.
11331 (w32_antialias_type, lispy_antialias_type): New functions.
11332 (w32_enumfont_pattern_entity): New arg requested_font.
11333 Set antialias parameter if non-default was requested.
11334 (fill_in_logfont): Fill in lfQuality if :antialias specified.
11335
113362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11337
11338 * lread.c (read1): Undo the previous change.
11339
113402008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
11341
11342 * frame.c (Fdelete_frame): Call font_update_drivers only when
11343 USE_FONT_BACKEND is defined.
11344
113452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11346
11347 * font.h (struct font_bitmap): New member bits_per_pixel.
11348 (struct font_driver): New members start_for_frame and end_for_frame.
11349 (struct font_data_list): New struct.
11350 (font_put_frame_data, font_get_frame_data): Extern them.
11351
11352 * frame.h (struct frame): New member font_data_list.
11353
11354 * font.c (font_update_drivers): Call driver->start_for_frame and
11355 driver->end_for_frame at proper timings.
11356 (font_put_frame_data, font_get_frame_data): New functions.
11357 (Ffont_spec): Add usage in the docstring.
11358
11359 * frame.c (make_frame): Initialize f->font_data_list to NULL.
11360 (Fdelete_frame): Call font_update_drivers.
11361
11362 * xftfont.c (struct xftface_info): Delete the member xft_draw.
11363 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
11364 (xftfont_get_xft_draw): New function.
11365 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
11366 (xftfont_end_for_frame): New function.
11367 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
11368
11369 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
11370 Change argument. Cache GCs in the per-frame data.
11371 (struct ftxfont_frame_data): New struct.
11372 (ftxfont_draw_bitmap): New arg gc_fore and flush.
11373 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
11374 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
11375 (ftxfont_end_for_frame): New function.
11376 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
11377
11378 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
11379
113802008-02-01 Kenichi Handa <handa@m17n.org>
11381
11382 * xselect.c (Vselection_coding_system)
11383 (Vnext_selection_coding_system): Delete them.
11384 (syms_of_xselect): Don't declare selection-coding-system and
11385 next-selection-coding-system. They are declared in select.el.
11386
113872008-02-01 Jason Rumney <jasonr@gnu.org>
11388
11389 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
11390
11391 * w32fns.c: Include imm.h.
11392 (get_composition_string_fn, get_ime_context_fn): New optional
11393 system functions.
11394 (globals_of_w32fns): Load them from imm32.dll.
11395 (ignore_ime_char): New flag.
11396 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
11397 WM_IME_ENDCOMPOSITION messages.
11398
11399 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
11400 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
11401
114022008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11403
11404 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
11405 (READCHAR_REPORT_MULTIBYTE): New macro.
11406 (readchar): New 2nd arg MULTIBYTE.
11407 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
11408 Make symbol's name multibyte according to the multibyteness of the
11409 source.
11410
114112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11412
11413 * xfaces.c (face_for_overlay_string): Call lookup_face with
11414 correct arguments (fix of synching with the trunk).
11415
114162008-02-01 Kenichi Handa <handa@m17n.org>
11417
11418 * font.c (font_prop_validate_symbol, font_prop_validate_style)
11419 (font_prop_validate_non_neg, font_prop_validate_spacing):
11420 Delete argument prop_index.
11421 (font_property_table): Change arguments to validater. Change Callers.
11422 (font_lispy_object): Delete.
11423 (font_at): Use font_find_object instead fo font_lispy_object.
11424
114252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11426
11427 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
11428 and file names.
11429
114302008-02-01 Jason Rumney <jasonr@gnu.org>
11431
11432 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
11433 (font_matches_spec): Remove debug output.
11434 (add_font_entity_to_list): Avoid using substituted fonts.
11435
114362008-02-01 Jason Rumney <jasonr@gnu.org>
11437
11438 * doc.c (Fsnarf_documentation):
11439 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
11440
114412008-02-01 Miles Bader <miles@gnu.org>
11442
11443 * dispextern.h (struct glyph_row): Only define "clip" field if
11444 HAVE_WINDOW_SYSTEM is defined.
11445
114462008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11447
11448 Fix up multi-tty merge.
11449
11450 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
11451 and indentation.
11452
11453 * xfaces.c (free_realized_face, clear_face_gcs):
11454 Include font_done_for_face in the input_blocked section, just in case.
11455
11456 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
11457 (get_char_face_and_encoding): Undo last change and remove the *other*
11458 duplicate definition (i.e. keep the one that's better scoped and that
11459 includes code for the font-backend).
11460
11461 * terminal.c (create_terminal): Default keyboard_coding to
11462 `no-conversion' and terminal_coding to `undecided'.
11463
11464 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
11465
11466 * fontset.c (free_realized_fontsets): Check that the table entry does
11467 contain a fontset before trying to compare it to `base'.
11468
11469 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
11470 syms_of_charset, and syms_of_coding earlier because init_window_once
11471 now needs Vcoding_system_hash_table to be setup.
11472
11473 * coding.h (default_buffer_file_coding): Remove.
11474
11475 * coding.c (default_buffer_file_coding): Remove.
11476 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
11477 than ->symbol, and use the terminal-local coding system.
11478 (syms_of_coding): Don't setup the coding-systems that are not
11479 terminal-local.
11480 (Fdefine_coding_system_internal): Use XCAR/XCDR.
11481
11482 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
11483 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
11484
11485 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
11486 in chartab.c and were re-added here by mistake.
11487 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
11488
11489 * doc.c (Fsnarf_documentation):
11490 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
11491 src to etc.
11492
11493 * ChangeLog.10: Add mistakenly removed entry.
11494
114952008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
11496
11497 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
11498
114992008-02-01 Miles Bader <miles@gnu.org>
11500
11501 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
11502 Add extra args to FACE_FOR_CHAR.
11503
115042008-02-01 Kenichi Handa <handa@m17n.org>
11505
11506 * keymap.c (where_is_internal_1): If key is a cons, store the copy
11507 in sequence.
11508
11509 * chartab.c (map_sub_char_table, map_char_table): If the range
11510 contains just one character, call the function with that character
11511 even if the depth is not 3.
11512
115132008-02-01 Jason Rumney <jasonr@gnu.org>
11514
11515 * w32font.c (w32font_text_extents): Calculate metrics for the
11516 whole string.
11517
115182008-02-01 Jason Rumney <jasonr@gnu.org>
11519
11520 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
11521
115222008-02-01 Jason Rumney <jasonr@gnu.org>
11523
11524 * w32term.c (x_set_glyph_string_clipping): Use
11525 get_glyph_string_clip_rects.
11526 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11527 Adjust for the change of struct glyph_string.
11528
11529 * w32font.c (w32font_draw): Do clipping here.
11530
115312008-02-01 Kenichi Handa <handa@m17n.org>
11532
11533 * xftfont.c (xftfont_draw): Adjust for the change of struct
11534 glyph_string.
11535
11536 * xterm.c (x_set_glyph_string_clipping): Use
11537 get_glyph_string_clip_rects.
11538 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11539 Adjust for the change of struct glyph_string.
11540
11541 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
11542 the resulting clip(s}.
11543 (expose_overlaps): Add arg r. Change callers. Set it to
11544 row->clip temporarily.
11545 (expose_window): Redraw rows overlapping the exposed area.
11546
11547 * dispextern.h (struct glyph_row): New member clip.
11548 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
11549 clip_height, new member clip, and num_clips.
11550
115512008-02-01 Kenichi Handa <handa@m17n.org>
11552
11553 * data.c (Fchar_or_string_p): Fix docstring.
11554
115552008-02-01 Kenichi Handa <handa@m17n.org>
11556
11557 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
11558 create a temporary XftDraw object.
11559
115602008-02-01 Kenichi Handa <handa@m17n.org>
11561
11562 * font.c (Ffontp): Fix docstring.
11563
11564 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
11565 strong evidence of ISO-2022.
11566
115672008-02-01 Kenichi Handa <handa@m17n.org>
11568
11569 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
11570 SYNTAX_ENTRY_FOLLOW_PARENT.
11571
115722008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11573
11574 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
11575 its type.
11576 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
11577 Update to the new type of weak_hash_tables and next_weak.
11578
11579 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
11580 a plain C pointer to Lisp_Hash_Table.
11581
11582 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
11583 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
11584 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
11585 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
11586 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
11587 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
11588 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
11589 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
11590 (GC_EQ): Remove since they've been identical to their non-GC_
11591 alter-egos ever since the markbit was eradicated.
11592
11593 * alloc.c:
11594 * buffer.c:
11595 * buffer.h:
11596 * data.c:
11597 * fileio.c:
11598 * filelock.c:
11599 * fns.c:
11600 * frame.h:
11601 * lisp.h:
11602 * macterm.c:
11603 * print.c:
11604 * process.c:
11605 * w32fns.c:
11606 * w32menu.c:
11607 * w32term.c:
11608 * xfns.c:
11609 * xmenu.c:
11610 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
11611
116122008-02-01 Kenichi Handa <handa@m17n.org>
11613
11614 * chartab.c (map_sub_char_table): Make it work for the top-level
11615 char-table. Fix handling of parent char-table.
11616 (map_char_table): Adjust for the above change.
11617
116182008-02-01 Jason Rumney <jasonr@gnu.org>
11619
11620 * w32font.c (Qgdi): Rename from Qw32.
11621
116222008-02-01 Jason Rumney <jasonr@gnu.org>
11623
11624 * w32bdf.c (get_quoted_string): Make function static.
11625
116262008-02-01 Kenichi Handa <handa@m17n.org>
11627
11628 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
11629 bigger ascent and descent than those of the font, use them as
11630 font's ascent and descent.
11631
116322008-02-01 Kenichi Handa <handa@m17n.org>
11633
11634 * Makefile.in (${lispsource}international/charprop.el): Move this
11635 target within "#ifdef HAVE_UNIDATA" and "#endif".
11636
116372008-02-01 Kenichi Handa <handa@m17n.org>
11638
11639 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
11640 (shortlisp): Add ../lisp/language/tai-viet.el.
11641
116422008-02-01 Ulrich Mueller <ulm@gentoo.org>
11643
11644 * Makefile.in (${lispsource}international/charprop.el): Depend on
11645 temacs${EXEEXT}.
11646
116472008-02-01 Jason Rumney <jasonr@gnu.org>
11648
11649 * w32font.c (w32font_close): Delete the GDI font object.
11650
11651 * w32menu.c: Include character.h.
11652
11653 * w32proc.c: Likewise.
11654
11655 * w32select.c: Likewise.
11656
11657 * makefile.w32-in (w32proc.o): Depend on character.h.
11658
116592008-02-01 Jason Rumney <jasonr@gnu.org>
11660
11661 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
11662
11663 * w32menu.c (syms_of_w32menu): Likewise.
11664
11665 * w32proc.c (syms_of_ntproc): Likewise.
11666
11667 * w32select.c (syms_of_w32select): Likewise.
11668
11669 * w32term.c (syms_of_w32term): Likewise.
11670
116712008-02-01 Jason Rumney <jasonr@gnu.org>
11672
11673 * w32font.c (w32font_draw): Delete brush after using it.
11674
116752008-02-01 Jason Rumney <jasonr@gnu.org>
11676
11677 * w32font.c (w32font_open): Don't set font_idx.
11678 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
11679 to font settings.
11680 (w32font_draw): Fill background explicitly.
11681
116822008-02-01 Jason Rumney <jasonr@gnu.org>
11683
11684 * w32term.c (w32_initialize): Don't call w32font_initialize.
11685
11686 * w32font.c (w32font_info): Remove subranges.
11687 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
11688 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
11689 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
11690 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
11691 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
11692 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
11693 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
11694 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
11695 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
11696 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
11697 New symbols.
11698 (font_callback_data): New struct.
11699 (w32font_list, w32font_match): Use it.
11700 (w32font_open): Don't populate subranges.
11701 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
11702 (w32font_encode_char): Always return unicode code-point as-is.
11703 (w32font_text_extents): Supply a transformation matrix to
11704 GetGlyphOutline. Never look up by glyph index. Avoid looping
11705 twice. Use unicode version of GetTexExtentPoint32 instead of
11706 glyph index version.
11707 (set_fonts_frame): Remove.
11708 (w32_enumfont_pattern_entity): Add frame parameter, use it to
11709 set frame parameter. Use backward compatible fake foundries.
11710 Save generic family in extra slot under QCfamily. Make width slot
11711 constant. Save QCspacing value. Save list of scripts instead of
11712 binary subranges.
11713 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
11714 (add_font_entity_to_list): Use font_callback_data struct. Filter
11715 unwanted fonts.
11716 (add_one_font_entity_to_list): Use font_callback_data struct.
11717 (w32_registry): Default to iso10646_1.
11718 (fill_in_logfont): Use dpi from extra slot. Don't bother with
11719 string font registries. Don't fill in font name if it is a generic
11720 family name, fill family instead. Use spacing, family and script
11721 extra info to fill pitch, family and charset fields.
11722 (list_all_matching_fonts): Use font_callback_data struct.
11723 (unicode_range_for_char): Remove.
11724 (font_supported_scripts): New function.
11725 (w32font_initialize): Remove.
11726 (syms_of_w32font): Update which symbols are defined.
11727
117282008-02-01 Jason Rumney <jasonr@gnu.org>
11729
11730 * font.c (font_pixel_size): Reverse assq_no_quit args.
11731
11732 * w32term.h (FONT_WIDTH): Report max width, not average.
11733 (FONT_MAX_WIDTH): Remove.
11734 (FONT_AVG_WIDTH): New macro.
11735
11736 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
11737 redefinition of FONT_WIDTH.
11738
11739 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
11740 (w32_cache_char_metrics): Use FONT_WIDTH.
11741
11742 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
11743
117442008-02-01 Jason Rumney <jasonr@gnu.org>
11745
11746 * w32font.c (w32font_open): Make lfHeight negative.
11747
11748 * w32fns.c (x_default_font_parameter): Use new style font name.
11749 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
11750
117512008-02-01 Jason Rumney <jasonr@gnu.org>
11752
11753 * w32font.c (QCsubranges): New symbol.
11754 (w32font_open, w32font_has_char): Get subranges from subproperty
11755 of extra.
11756 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
11757 (syms_of_w32font): Define :subranges symbol.
11758
11759 * font.c (font_put_extra): Expose externally.
11760
11761 * font.h (font_put_extra): Move declaration from font.c.
11762
11763 * font.c (Ffont_get): Use font driver to determine otf capability.
11764 (adjust_anchor): Check if driver defines anchor_point before using.
11765
11766 * w32font.c (w32font_open): Handle size, height and pixel_size better.
11767 (w32font_draw): Use options.
11768 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
11769 Fix detection of truetype fonts.
11770 (registry_to_w32_charset): Handle charsets other than iso8859-1
11771 expressed as lisp symbols.
11772 (w32_registry): Express charset as lisp symbol.
11773 (fill_in_logfont): Reverse pixel and point height logic.
11774 Don't set width here. Set quality to default.
11775
11776 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
11777 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
11778
11779 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11780 Remove redundant loop and allocation.
11781
11782 * makefile.w32-in (font.o, w32font.o): New objects.
11783 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
11784 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
11785
11786 * xdisp.c (fill_composite_glyph_string): Make the first arg to
11787 STORE_XCHARB a valid l-value.
11788
11789 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
11790 calculations for non-Truetype fonts.
11791 (x_draw_glyph_string): Sync with xterm.c.
11792 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11793 Remove redundant code.
11794 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
11795
11796 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
11797 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
11798
11799 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
11800 (x_to_w32_charset, w32_to_x_charset): Expose externally.
11801
11802 * w32font.c: New file for w32 font backend.
11803
118042008-02-01 Kenichi Handa <handa@m17n.org>
11805
11806 * term.c: Don't include "buffer.h" twice.
11807
118082008-02-01 Kenichi Handa <handa@m17n.org>
11809
11810 * character.c (Funibyte_string): New function.
11811 (syms_of_character): Defsubr it.
11812
118132008-02-01 Jason Rumney <jasonr@gnu.org>
11814
11815 * w32term.c [USE_FONT_BACKEND]:
11816 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
11817 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
11818 (x_draw_glyph_string, x_draw_glyph_string_foreground)
11819 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
11820 (x_free_frame_resources): Sync with xterm.c.
11821
118222008-02-01 Andreas Schwab <schwab@suse.de>
11823
11824 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
11825 char-table size.
11826
118272008-02-01 Kenichi Handa <handa@m17n.org>
11828
11829 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
11830
118312008-02-01 Kenichi Handa <handa@m17n.org>
11832
11833 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
11834 font_otf_gpos, add font_drive_otf.
11835
11836 * fontset.c (fontset_find_font): Pay attention to font size
11837 specified for a font.
11838 (reorder_font_vector): Check contents of font_def.
11839
11840 * font.c (struct otf_list): Delete it.
11841 (otf_list): Make it a lisp variable.
11842 (otf_open): Use lispy otf_list.
11843 (generate_otf_features): Rename from parse_gsub_gpos_spec.
11844 (check_otf_features): New function.
11845 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11846 New functions.
11847 (font_drive_otf): New function merging font_otf_gsub and
11848 font_otf_gpos.
11849 (font_open_for_lface): New arg spec. Change argument order.
11850 (font_load_for_face): Adjust for the change of font_open_for_lface.
11851 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
11852 Ffont_otf_gpos.
11853 (syms_of_font): Staticpro otf_list. Delete defsubr of
11854 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
11855
11856 * xfaces.c (set_font_frame_param): Adjust for the change of
11857 font_open_for_lface.
11858
11859 * font.h (font_open_for_lface): Adjust prototype.
11860 (struct font_driver): Delete members otf_gsub and otf_gpos, add
11861 member otf_drive.
11862 (font_otf_gsub, font_otf_gpos): Delete externs.
11863 (font_drive_otf): Extern it.
11864
118652008-02-01 Kenichi Handa <handa@m17n.org>
11866
11867 * font.c (font_at): If the window W is not on a window system,
11868 return Qnil.
11869
11870 * coding.c (produce_chars, encode_coding): Don't call
11871 insert_from_gap if no characters to produce.
11872
118732008-02-01 Kenichi Handa <handa@m17n.org>
11874
11875 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
11876 Fclear_face_cache.
11877
11878 * xfaces.c (face_for_font): Check also face->font==font->font.font.
11879
118802008-02-01 Miles Bader <miles@gnu.org>
11881
11882 * emacs.c (main): Change default value of `enable_font_backend' to 1.
11883 Parse "--disable-font-backend" option.
11884 (standard_args): Add "--disable-font-backend" option.
11885
118862008-02-01 Kenichi Handa <handa@m17n.org>
11887
11888 * fontset.c (fontset_find_font): New function.
11889 (fontset_font): Use fontset_find_font.
11890 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
11891 Register the specified font for all Latin characters.
11892 (new_fontset_from_font): Register the specified font for all Latin
11893 characters.
11894 (dump_fontset): For a realized fontset, include the base fontset
11895 name in the returned vector.
11896
118972008-02-01 Kenichi Handa <handa@m17n.org>
11898
11899 * character.h (CHAR_STRING): Cast C to unsigned on calling
11900 char_string.
11901
11902 * character.c (char_string): Type of arg C changed to unsigned.
11903 Signal an error if C is an invalid character code.
11904
11905 * editfns.c (general_insert_function, Fchar_to_string):
11906 Use CHARACTERP, not INTEGERP.
11907
119082008-02-01 Kenichi Handa <handa@m17n.org>
11909
11910 * character.h (MIN_MULTIBYTE_LEADING_CODE)
11911 (MAX_MULTIBYTE_LEADING_CODE): New macros.
11912
11913 * regex.c (analyse_first): Fix for multibyte characters in "case
11914 charset:" and "case categoryspec:".
11915
119162008-02-01 Andreas Schwab <schwab@suse.de>
11917
11918 * Makefile.in (LIBES): Move standard libraries to the end.
11919
119202008-02-01 Kenichi Handa <handa@m17n.org>
11921
11922 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
11923 nonzero, don't shrink the buffer nextb.
11924
11925 * buffer.h (struct buffer_text): New member inhibit_shrinking.
11926
11927 * coding.c (coding_alloc_by_making_gap): New arg offset.
11928 (alloc_destination): Call coding_alloc_by_making_gap with the arg
11929 offset.
11930 (decode_coding_iso_2022): Update coding->safe_charsets.
11931 (decode_coding_gap): Temporarily set
11932 current_buffer->text->inhibit_shrinking to 1.
11933
119342008-02-01 Kenichi Handa <handa@m17n.org>
11935
11936 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
11937 indexing into elements of s->cmp and s->char2b.
11938
119392008-02-01 Juanma Barranquero <lekktu@gmail.com>
11940
11941 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
11942
119432008-02-01 Kenichi Handa <handa@m17n.org>
11944
11945 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
11946 target_multibyte instead of multibyte.
11947 (re_match_2_internal): Call bcmp_translate with target_multibyte.
11948 (bcmp_translate): Change the argument name from multibyte to
11949 target_multibyte.
11950
119512008-02-01 Kenichi Handa <handa@m17n.org>
11952
11953 These changes are to compile a regexp into a pattern that can be
11954 used both for multibyte and unibyte targets.
11955
11956 * Makefile.in (search.o): Depend on charset.h.
11957
11958 * character.c (multibyte_char_to_unibyte_safe): New function.
11959
11960 * search.c: Include "charset.h".
11961 (compile_pattern_1): Delete argument multibyte. Don't set
11962 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
11963 (compile_pattern): Don't compare cp->buf.target_multibyte.
11964 Compare cp->buf.charset_unibyte.
11965 (compile_pattern): Set cp->buf.target_multibyte.
11966
11967 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
11968
11969 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
11970
11971 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
11972 multibyte. Change callers.
11973 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
11974 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
11975 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
11976 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
11977 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
11978 (regex_compile): Make the compiled pattern usable both for
11979 multibyte and unibyte targets.
11980 (analyse_first): Make the fastmap usable both for multibyte and
11981 unibyte targets.
11982 (TRANSLATE_VIA_MULTIBYTE): Delete.
11983 (re_match_2_internal): Pay attention to the case that the
11984 multibyteness of bufp and target may be different.
11985
119862008-02-01 Kenichi Handa <handa@m17n.org>
11987
11988 * xdisp.c (x_produce_glyphs): When a font is not found, make the
11989 empty box occupy at least one column width.
11990
119912008-02-01 Miles Bader <miles@gnu.org>
11992
11993 * Makefile.in: Remove redundant HAVE_XFT clause.
11994
119952008-02-01 Kenichi Handa <handa@m17n.org>
11996
11997 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
11998
119992008-02-01 Kenichi Handa <handa@m17n.org>
12000
12001 * fontset.c (Finternal_char_font): Fix for the case of POSITION
12002 being nil.
12003
120042008-02-01 Kenichi Handa <handa@m17n.org>
12005
12006 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
12007
120082008-02-01 Kenichi Handa <handa@m17n.org>
12009
12010 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
12011
120122008-02-01 Kenichi Handa <handa@m17n.org>
12013
12014 * search.c (simple_search): Fix previous change.
12015
120162008-02-01 Kenichi Handa <handa@m17n.org>
12017
12018 * xftfont.c (ftfont_font_format): Extern declaration.
12019
12020 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
12021
12022 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
12023 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
12024
12025 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
12026 (ftfont_font_format): Fix previous change.
12027
12028 * font.h (Ffont_xlfd_name): EXFUN it.
12029
12030 * font.c (font_parse_xlfd): Fix the array size of `f'.
12031 (register_font_driver): Use EQ to compare driver->type.
12032
12033 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
12034 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
12035 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
12036
120372008-02-01 Kenichi Handa <handa@m17n.org>
12038
12039 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
12040 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
12041
120422008-02-01 Kenichi Handa <handa@m17n.org>
12043
12044 * xfont.c (xfont_open): Set font->format.
12045
12046 * xftfont.c (xftfont_open): Set font->format.
12047
12048 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
12049 (ftfont_list): Include FC_FONTFORMAT in FcObject.
12050 (ftfont_open): Set font->format.
12051 (ftfont_font_format): New function.
12052
12053 * font.h (struct font): New member format.
12054
12055 * font.c (Qopentype): New variable.
12056 (syms_of_font): Defsym it.
12057 (Fquery_font): Change the format of the last element of the return
12058 value.
12059
120602008-02-01 Kenichi Handa <handa@m17n.org>
12061
12062 * xfns.c (xic_create_xfontset): Try the default fontset name as a
12063 last resort.
12064
120652008-02-01 Kenichi Handa <handa@m17n.org>
12066
12067 * coding.c (detect_coding_charset): Fix detection of multi-byte
12068 charset.
12069
120702008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
12071
12072 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
12073
120742008-02-01 Kenichi Handa <handa@m17n.org>
12075
12076 * xdisp.c (get_next_display_element): Set it->face_id for the
12077 first component of a composition.
12078 (x_produce_glyphs): Check if the font is changed or not for composition.
12079
120802008-02-01 Kenichi Handa <handa@m17n.org>
12081
12082 * fontset.c (Qlatin): New variable.
12083 (syms_of_fontset): Define it as a lisp symbol.
12084 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
12085
120862008-02-01 Kenichi Handa <handa@m17n.org>
12087
12088 * font.c (font_unparse_fcname): Pay attention to the case that
12089 some of font property is a null string.
12090
120912008-02-01 Kenichi Handa <handa@m17n.org>
12092
12093 * term.c: Include "composite.h".
12094 (encode_terminal_code): Output all components of composition.
12095 Check the size of encode_terminal_src.
12096 (produce_glyphs): For composition, call produce_composite_glyph.
12097 (append_composite_glyph, produce_composite_glyph): New functions.
12098
12099 * xdisp.c (x_produce_glyphs): In handling composition, if a font
12100 is not found, get font_info from the current ascii face.
12101
121022008-02-01 Kenichi Handa <handa@m17n.org>
12103
12104 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
12105 buffer-file-name to Qnil before calling insert_from_buffer.
12106
12107 * font.c (font_unparse_fcname): Pay attention to the case that
12108 foundry is a null string.
12109
121102008-02-01 Kenichi Handa <handa@m17n.org>
12111
12112 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
12113
12114 * font.c (Qunicode_sip): New variable.
12115 (syms_of_font): Declare it as a Lisp symbol.
12116
12117 * font.h (Qunicode_sip): Extern it.
12118
121192008-02-01 Kenichi Handa <handa@m17n.org>
12120
12121 * composite.c (get_composition_id): Pay attention to TAB component.
12122
12123 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
12124 TAB. Adjust for the change of s->char2b which always points to
12125 the first element of allocated memory.
12126
12127 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
12128
12129 * xdisp.c (handle_composition_prop): Set it->c to the first
12130 non-TAB component.
12131 (fill_composite_glyph_string): Change argument.
12132 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
12133 (x_produce_glyphs): Fix handling of left/right padding.
12134
121352008-02-01 Kenichi Handa <handa@m17n.org>
12136
12137 * coding.c (detect_coding_system): Fix for handling off
12138 inhibit_iso_escape_detection. Fix for the case that no coding
12139 system is defined for a specific coding category.
12140
121412008-02-01 Kenichi Handa <handa@m17n.org>
12142
12143 * font.c (font_matching_entity): Delete unused local var.
12144
12145 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
12146 opening a font.
12147
12148 * fileio.c (Finsert_file_contents): On recovering a file, assume
12149 Unix-like eol.
12150 (choose_write_coding_system): On auto-saving a file, force
12151 Unix-like eol.
12152
12153 * coding.c (setup_coding_system): Fix setting of
12154 coding->common_flags based on eol_type.
12155 (coding_inherit_eol_type): If PARENT is not nil, be sure to
12156 inherit from it.
12157
121582008-02-01 Kenichi Handa <handa@m17n.org>
12159
12160 * alloc.c (NSTATICS): Increas to 0x600.
12161
121622008-02-01 Kenichi Handa <handa@m17n.org>
12163
12164 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
12165 (ftfont_list): Don't check :name property.
12166 (ftfont_match): New function.
12167 (ftfont_pattern_entity): If the pattern doesn't contain
12168 FC_SPACING, don't assume FC_MONO.
12169
12170 * font.h (struct font_driver): New member `match'.
12171 (font_update_drivers): Adjust prototype.
12172
12173 * font.c (font_parse_fcname, font_parse_name): Don't change :name
12174 property of FONT.
12175 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
12176 them unconditionally.
12177 (font_matching_entity): New function.
12178 (font_open_by_name): Try font_matching_entity if exact match is
12179 not found.
12180 (font_update_drivers): Delete the arg FONT. Return a list of
12181 actually used backends. Don't free faces, font caches here.
12182 Don't store data in frame parameters. Don't call x_set_font.
12183 (Ffont_spec): Store :name property as is.
12184 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
12185 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
12186 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
12187 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
12188 Call font->driver->otf_gsub instead of font_otf_gsub.
12189
12190 * frame.c (x_set_font_backend): Do more works that were done in
12191 font_update_drivers before.
12192
12193 * xfont.c (xfont_match): New function.
12194 (xfont_driver): Set xfont_driver.match to xfont_match.
12195 (xfont_draw): Set font in GC if necessary.
12196
12197 * ftxfont.c (ftxfont_match): New function.
12198 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
12199
12200 * xftfont.c (xftfont_match): New function.
12201 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
12202
122032008-02-01 Kenichi Handa <handa@m17n.org>
12204
12205 * font.h (struct font): New member scalable.
12206 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
12207 (font_otf_gsub): Adjust prototype.
12208
12209 * font.c (font_otf_capability): Fix handling of the default langsys.
12210 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
12211 Check the contents of SPEC.
12212 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
12213 (check_gstring): New function.
12214 (REPLACEMENT_CHARACTER): New macro.
12215 (font_otf_gsub): New arg alternate_subst. Be sure to set all
12216 glyph codes of GSTRING.
12217 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
12218 (font_prepare_composition): Set cmp->glyph_len.
12219 (font_open_entity): Set font->scalable.
12220 (Ffont_get): Handle :otf property.
12221 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
12222 functions.
12223 (Fquery_font): Use font->font.full_name.
12224 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
12225 Sfont_otf_alternates.
12226
12227 * ftfont.c (ftfont_open): Set font->font.full_name and
12228 font->font.name properly. Fix calculation of font->font.height
12229 and font->min_width.
12230
12231 * ftxfont.c (ftxfont_create_gcs): New function.
12232 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
12233 (ftxfont_draw_backgrond): Fix filling region.
12234 (ftxfont_default_fid): New function.
12235 (ftxfont_open): Set xfont->fid to the return value of
12236 ftxfont_default_fid.
12237 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
12238 (ftxfont_done_face): Free only GCs that are created by
12239 ftxfont_create_gcs.
12240 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
12241
12242 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
12243 Clip to src->width, etc (not src->clip_XXX).
12244
12245 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
12246 FontBackend frame parameter.
12247
122482008-02-01 Kenichi Handa <handa@m17n.org>
12249
12250 * font.h (struct font_driver_list): New member `on'.
12251 (Fclear_font_cache): EXFUN it.
12252 (font_update_drivers): Extern it.
12253
12254 * font.c (font_unparse_fcname): Fix typo (swidth->width).
12255 (font_list_entities): Check driver_list->on.
12256 (register_font_driver): Initalize `on' member to 0.
12257 (font_update_drivers): New function.
12258 (Fclear_font_cache): Check driver_list->on.
12259
12260 * frame.h (Qfont_backend): Extern it.
12261 (x_set_font_backend): Extern it.
12262
12263 * frame.c (Qfont_backend): New variable.
12264 (frame_parms): New element for font-backend.
12265 (x_set_font_backend): New function.
12266
12267 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
12268 FontBackend frame parameter.
12269 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
12270 x_set_font_backend.
12271
12272 * xfont.c (xfont_list): Don't try listing by :name property if the
12273 name is not for XLFD.
12274
122752008-02-01 Kenichi Handa <handa@m17n.org>
12276
12277 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
12278 (LGLYPH_SET_TO): New macros.
12279 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
12280 element of G is vector or not.
12281 (font_at): Extern it.
12282
12283 * font.c: Include window.h.
12284 (font_lispy_object): New function.
12285 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
12286 end of valid glyph.
12287 (font_close_object): Fix getting (struct font *).
12288 (font_at): New function.
12289 (Ffont_get): If FONT is a font-object, get entity from it.
12290 (Ffont_make_gstring): Initialize elements of glyphs with nil.
12291 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
12292 range check.
12293 (Ffont_at): New function.
12294 (syms_of_font): Defsubr Sfont_at.
12295
12296 * xdisp.c (it_props): Move the entry for Qauto_composed to just
12297 before the entry for Qcomposition.
12298 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
12299 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
12300 the font in gstring.
12301 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
12302 LGLYPH_FORM (g) to detect the end of valid glyph.
12303 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
12304 we are composing with gstring.
12305
12306 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
12307 Check if adjustment is vector or not.
12308
12309 * Makefile.in (font.o): Make it depends on window.h.
12310
123112008-02-01 Kenichi Handa <handa@m17n.org>
12312
12313 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
12314 adjustment is vector or not.
12315
123162008-02-01 Miles Bader <miles@gnu.org>
12317
12318 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
12319
123202008-02-01 Kenichi Handa <handa@m17n.org>
12321
12322 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
12323 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
12324 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
12325
12326 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
12327 (DEVICE_DELTA): Fix typo.
12328 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
12329 LGLYPH format.
12330
12331 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12332 the change of LGLYPH format.
12333
123342008-02-01 Kenichi Handa <handa@m17n.org>
12335
12336 * ftfont.c (ftfont_list): Fix typo.
12337 (ftfont_build_basic_charsets): Don't include letters with diacritics.
12338
123392008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12340
12341 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
12342
12343 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
12344 xftface_info is non-NULL.
12345
123462008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12347
12348 * ftfont.c (ftfont_list): Move misplaced #endif.
12349
123502008-02-01 Kenichi Handa <handa@m17n.org>
12351
12352 * ftfont.c (ftfont_list): Pay attention to the case that
12353 FC_CAPABILITY is not defined.
12354
123552008-02-01 Kenichi Handa <handa@m17n.org>
12356
12357 * xftfont.c (xftfont_open): Set charset related members to -1.
12358
12359 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
12360 QCname.
12361 (ftfont_open): Set charset related members to -1.
12362
12363 * fontset.c (Votf_script_alist): New variable.
12364 (syms_of_fontset): Initialize it.
12365 (fontset_font): Delete unused variable.
12366
12367 * fontset.h (Votf_script_alist): Extern it.
12368
12369 * font.c (font_find_for_lface): Optimize code.
12370
12371 * font.h (font_close_object, font_merge_old_spec): Extern them.
12372
123732008-02-01 Kenichi Handa <handa@m17n.org>
12374
12375 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
12376 (syms_of_font): Initialize them.
12377 (font_pixel_size): Allow float value in dpi.
12378 (font_prop_validate_type): Delete.
12379 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
12380 Change caller.
12381 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
12382 (font_prop_validate_extra): Delete.
12383 (font_prop_validate_spacing): New function.
12384 (font_property_table): Add elements for all known properties.
12385 (get_font_prop_index): Rename from check_font_prop_name. New
12386 argument FROM. Change caller.
12387 (font_prop_validate): Validate all known properties.
12388 (font_put_extra): Delete argument force. Change caller.
12389 (font_expand_wildcards): Make it static. Fix the way of shrinking
12390 the possible range.
12391 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
12392 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
12393 Change caller.
12394 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
12395 (font_parse_fcname): Delete argument merge. Fix parsing of point
12396 size. Don't validate properties values here. Change caller.
12397 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
12398 (font_open_by_name): Delete unused variable.
12399 (Ffont_spec): Likewise. Validate property values.
12400 (Ffont_match_p): New function.
12401
12402 * font.h (QCscalable): Extern it.
12403 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
12404
12405 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
12406
12407 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
12408 (xfont_list_pattern): New function.
12409 (xfont_list): Use xfont_list_pattern.
12410
124112008-02-01 Kenichi Handa <handa@m17n.org>
12412
12413 * font.h (Flist_fonts): EXFUN it.
12414
124152008-02-01 Jason Rumney <jasonr@gnu.org>
12416
12417 * w32term.c (w32_initialize): Add back smoothing_type and
12418 smoothing_enabled definitions.
12419
124202008-02-01 Kenichi Handa <handa@m17n.org>
12421
12422 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
12423 s->face->font on determining underline position.
12424
124252008-02-01 Kenichi Handa <handa@m17n.org>
12426
12427 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
12428 (font_has_char): Accept font-object too.
12429 (font_find_for_lface): Try at first with a size specified in face.
12430
124312008-02-01 Kenichi Handa <handa@m17n.org>
12432
12433 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
12434 font_open_by_name.
12435
124362008-02-01 Kenichi Handa <handa@m17n.org>
12437
12438 * font.h (QCspacing, QCdpi): Extern them.
12439 (enum font_spacing): New enum.
12440 (FONT_PIXEL_SIZE_QUANTUM): New macro.
12441
12442 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
12443 (QCspacing, QCdpi): New variables.
12444 (syms_of_font): Initialize them.
12445 (font_pixel_size): New function.
12446 (font_put_extra): New function.
12447 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
12448 in FONT_EXTRA.
12449 (font_parse_fcname): Handle enumerated values (e.g. bold).
12450 Fix handling font size. Add QCname property that contains only
12451 unknown properties.
12452 (font_score): Change argument. Change caller. Pay attention to
12453 FONT_PIXEL_SIZE_QUANTUM.
12454 (font_sort_entites, font_list_entities, font_find_for_lface)
12455 (font_open_for_lface, font_open_by_name): Fix handling of font size.
12456 (Ffont_spec): Add QCname property that contains only unknown properties.
12457
12458 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
12459 include weight in listing pattern, instead check weight of each
12460 listed font. Don't include scalable in pattern. Pay attention to
12461 FONT_PIXEL_SIZE_QUANTUM.
12462
124632008-02-01 Kenichi Handa <handa@m17n.org>
12464
12465 * font.c (font_parse_fcname): Fix parsing of point-size.
12466 (font_unparse_fcname): Produce symbolic names for style properties.
12467 (font_list_entities): Handle float size correctly.
12468 (font_open_by_name): Prefer `normal' property values if the name
12469 doesn't specify them.
12470
12471 * fontset.c (Finternal_char_font): Use font_get_name, not
12472 Ffont_xlfd_name.
12473
12474 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
12475 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
12476 pattern. Don't force scalable.
12477
12478 * xftfont.c (xftfont_open): For generating a name, start from
12479 96-byte buffer.
12480
124812008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12482
12483 * frame.h (x_new_fontset2): Fix prototype.
12484
124852008-02-01 Kenichi Handa <handa@m17n.org>
12486
12487 * font.h (struct font_driver): Delete member parse_name.
12488 (font_match_p, font_get_spec, font_parse_fcname)
12489 (font_unparse_fcname): Extern them.
12490 (font_get_name): Adjust prototype.
12491
12492 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
12493 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
12494 (font_expand_wildcards): Fix handling ENCODING field. Avoid
12495 unnecessary checks for weight, slant, and swidth.
12496 (font_parse_fcname): New function.
12497 (font_unparse_fcname): New function.
12498 (font_parse_name): New function.
12499 (font_match_p): New function.
12500 (font_get_name): Change return value to Lisp string.
12501 (font_get_spec): New function.
12502 (Qunspecified, Qignore_defface): Don't extern them.
12503 (font_find_for_lface): Assume that LFACE is fully specified.
12504 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
12505 object, use it for FACE.
12506 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
12507 driver->parse_name.
12508 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
12509
12510 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
12511 prototype.
12512
12513 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
12514 argument F. Don't call Fnew_fontset. Instead, directly call
12515 make_fontset.
12516
12517 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
12518
12519 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
12520 of x_new_fontset2.
12521
12522 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
12523 (Qsans__serif): New variables.
12524 (ftfont_generic_family_list): New variable.
12525 (syms_of_ftfont): Initialize the above variables.
12526 (ftfont_pattern_entity): Delete argument NAME.
12527 (ftfont_list_generic_family): New function.
12528 (ftfont_parse_name): Delete this function.
12529 (ftfont_list): Try generic family only when FcFontList found no font.
12530 (ftfont_list_family): Fix args to FcObjectSetBuild.
12531
12532 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
12533 object in attrs[LFACE_FONT_INDEX].
12534 (set_lface_from_font_name): Cancel all changes for font-backend.
12535 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
12536 function.
12537 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
12538 font object in QCfont attribute.
12539 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
12540 (realize_default_face) [USE_FONT_BACKEND]: Call
12541 set_lface_from_font_and_fontset.
12542
12543 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
12544 "fixed", and signal error here if no suitable font was found.
12545
12546 * xfont.c (xfont_parse_name): Delete this function.
12547
12548 * xftfont.c (xftfont_open): Change coding style of error
12549 handling. Generate fontconfig's fontname pattern.
12550
12551 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
12552 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
12553
12554 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
12555 Both args FONTSET and FONT_OBJECT must be existing ones.
12556
125572008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12558
12559 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
12560
125612008-02-01 Kenichi Handa <handa@m17n.org>
12562
12563 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
12564
12565 * font.h (struct font): Fix typo.
12566
12567 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
12568 XLFD_XXX_INDEX.
12569 (enum xlfd_field_mask): New enum.
12570 (intern_font_field): Changed argument. Change caller. If digits
12571 are followed by non-digits, return a symbol.
12572 (font_expand_wildcards): New function.
12573 (font_parse_xlfd): Fix wildcard handling.
12574 (Ffont_spec): If :name is specified, reflect the info in the other
12575 properties.
12576
12577 * ftfont.c (ftfont_pattern_entity): Fix typo.
12578 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
12579 locale.
12580
125812008-02-01 Kenichi Handa <handa@m17n.org>
12582
12583 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
12584
12585 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
12586 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
12587 registry doesn't specify encoding part.
12588 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
12589 (font_open_by_name): At first try parsing the name.
12590 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
12591 as Lisp symbols.
12592
12593 * fontset.c (reorder_font_vector): Pay attention to the case that
12594 the 3rd element of font_def is nil.
12595 (fontset_font): For the default fontset, append one more fontset
12596 elements for a script-based font specification. Don't add script
12597 attribute on finding a font.
12598 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
12599 font name.
12600 (fontset_ascii_font): If a font can't be opened, return nil.
12601
12602 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
12603 (ftfont_pattern_entity): New function.
12604 (ftfont_get_cache): Assume that freetype_font_cache is already
12605 initialized.
12606 (ftfont_list): Handle the case that a file is specified in font
12607 name. Use ftfont_pattern_entity to generate entities.
12608 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
12609 (syms_of_ftfont): Initialize freetype_font_cache.
12610
12611 * xftfont.c (xftfont_open): Make the font name fontconfig's
12612 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
12613 (xftfont_close): Free font->font.name if not NULL.
12614
12615 * xfont.c (xfont_list): If script is specified for a font, return
12616 null_vector.
12617 (xfont_list_family): Declare argument type.
12618
12619 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
12620 name, set LFACE_FONT (lface) to nil.
12621
12622 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
12623 return Qnil.
12624
126252008-02-01 Kenichi Handa <handa@m17n.org>
12626
12627 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
12628 (standard_args): Add "-enable-font-backend".
12629
126302008-02-01 Kenichi Handa <handa@m17n.org>
12631
12632 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
12633 (struct xftdraw_list, xftdraw_list): Delete them.
12634 (register_xftdraw, check_xftdraw): Delete them.
12635 (xftfont_prepare_face): Don't call register_xftdraw.
12636 (xftfont_done_face): Don't call check_xftdraw.
12637 (xftfont_draw): Get background color only when with_background is
12638 nonzero.
12639
12640 * xfont.c (xfont_encode_char): Fix calculation of char2b.
12641
126422008-02-01 Kenichi Handa <handa@m17n.org>
12643
12644 These changes are for the new font handling codes.
12645
12646 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
12647 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
12648 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
12649 (FONTSRC, FONTOBJ): New variables.
12650 (obj): Add $(FONTOBJ).
12651 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
12652 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
12653 @LIBOTF_LIBS@.
12654 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
12655 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
12656
12657 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
12658
12659 * character.h (Vscript_representative_chars): Extern it.
12660
12661 * character.c (Vscript_representative_chars): New variable.
12662 (syms_of_character): Declare it as a Lisp variable.
12663
12664 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
12665 enable_font_backend is nonzero, accept the composition method
12666 COMPOSITION_WITH_GLYPH_STRING.
12667
12668 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
12669 enumeration COMPOSITION_WITH_GLYPH_STRING.
12670
12671 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
12672 members clip_x, clip_y, clip_width, and clip_height.
12673 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
12674
12675 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
12676 --enable-font-backend. Call syms_of_font.
12677
12678 * fns.c (assoc_no_quit): New function.
12679
12680 * fontset.h (FONT_INFO_FROM_FACE): New macro.
12681 (face_for_font, new_fontset_from_font)
12682 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
12683
12684 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
12685 (fontset_font, fontset_ascii, face_for_char)
12686 (make_fontset_for_ascii_face, Ffont_info)
12687 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
12688 is nonzero, use font-backend mechanism.
12689 (find_font_encoding): Make it non-static.
12690 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
12691 New functions.
12692
12693 * frame.h (struct frame): New members resx and resy.
12694 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
12695 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
12696
12697 * frame.c [USE_FONT_BACKEND]: Include "font.h".
12698 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
12699
12700 * lisp.h (assoc_no_quit): Extern it.
12701
12702 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
12703 Through out the file, use FONT_INFO_FROM_FACE instead of
12704 FONT_INFO_FROM_ID, use get_per_char_metric instead of
12705 rif->per_char_metric.
12706 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
12707 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
12708 (get_glyph_face_and_encoding, fill_composite_glyph_string)
12709 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
12710 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
12711 nonzero, use font-backend mechanism.
12712 (get_per_char_metric): New function.
12713
12714 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
12715 (set_lface_from_font_name)
12716 (set_font_frame_param, free_realized_face)
12717 (prepare_face_for_display, clear_face_gcs)
12718 (Finternal_set_font_selection_order, realize_x_face)
12719 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
12720 font-backend mechanism.
12721 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
12722 (load_face_font) [USE_FONT_BACKEND]: Abort.
12723 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
12724 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
12725
12726 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
12727 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
12728 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
12729 nonzero, register all available font drivers. Call
12730 x_default_font_parameter for deciding a font.
12731 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
12732
12733 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
12734 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
12735 (x_set_glyph_string_clipping_exactly)
12736 (x_compute_glyph_string_overhangs)
12737 (x_draw_glyph_string_foreground)
12738 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
12739 (x_free_frame_resources) [USE_FONT_BACKEND]: If
12740 enable_font_backend is nonzero, use font-backend mechanism.
12741 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
12742
127432008-02-01 Kenichi Handa <handa@m17n.org>
12744
12745 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
12746 system_eol_type.
12747 (syms_of_coding): Initialize system_eol_type.
12748
12749 * process.c (Fset_process_coding_system): Inherit system's eol
12750 format if necessary.
12751
127522008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12753
12754 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
12755
127562008-02-01 Kenichi Handa <handa@m17n.org>
12757
12758 * coding.c (decode_eol): Pay attention to buffer relocation in
12759 del_range_2.
12760 (decode_coding): Call decode_eol before restoring undo_list.
12761
127622008-02-01 Kenichi Handa <handa@m17n.org>
12763
12764 * charset.c (Fdefine_charset_internal): Fix setting of
12765 emacs_mule_bytes.
12766
127672008-02-01 Kenichi Handa <handa@m17n.org>
12768
12769 * keyboard.c (read_char): Check if C is a character or not before
12770 looking up Vkeyboard_translate_table.
12771
127722008-02-01 Kenichi Handa <handa@m17n.org>
12773
12774 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
12775 condition to terminate the loop.
12776
127772008-02-01 Kenichi Handa <handa@m17n.org>
12778
12779 * coding.c (produce_composition): Compare charbuf[i] instead of
12780 args[i] against 0.
12781 (Fterminal_coding_system): Use EQ to compare Lisp objects.
12782
127832008-02-01 Kenichi Handa <handa@m17n.org>
12784
12785 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
12786 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
12787 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
12788 detect_coding.
12789 (emacs_mule_char): Handle old style (Emacs 20) component character
12790 of a composition.
12791 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
12792 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
12793 composition rule.
12794 (decode_coding_emacs_mule): Handle invalid bytes correctly.
12795
127962008-02-01 Kenichi Handa <handa@m17n.org>
12797
12798 * coding.c (encode_coding_ccl): Allocate destination dynamically
12799 when necessary.
12800
128012008-02-01 Kenichi Handa <handa@m17n.org>
12802
12803 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
12804 the loop. When quitted, show a proper error message.
12805
128062008-02-01 Kenichi Handa <handa@m17n.org>
12807
12808 * xterm.c (x_set_glyph_string_clipping_exactly): Set
12809 src->clip_head and src->clip_tail temporarily instead of src->hl.
12810
12811 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
12812 character sequence.
12813 (Fccl_execute_on_string): Use ASET, not XSET.
12814
128152008-02-01 Kenichi Handa <handa@m17n.org>
12816
12817 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
12818
128192008-02-01 Kenichi Handa <handa@m17n.org>
12820
12821 * coding.c (decode_coding): Fix the condition of terminating the
12822 decoding loop.
12823
128242008-02-01 Kenichi Handa <handa@m17n.org>
12825
12826 * data.c (Faset): On setting a character bigger than 255 in a
12827 unibyte string, signal an error instead of make the string multibyte.
12828
128292008-02-01 Kenichi Handa <handa@m17n.org>
12830
12831 * charset.c (map_charset_chars): Fix for ascii-compatible charset
12832 made by a mapping table.
12833
128342008-02-01 Kenichi Handa <handa@m17n.org>
12835
12836 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
12837 not.
12838 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
12839 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
12840
12841 * xterm.c (x_draw_composite_glyph_string_foreground): Check
12842 s->face is NULL or not.
12843
128442008-02-01 Kenichi Handa <handa@m17n.org>
12845
12846 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
12847 (x_draw_glyph_string): Fix drawing of right_overhang and
12848 left_overhang around/on cursor.
12849
12850 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
12851
128522008-02-01 Kenichi Handa <handa@m17n.org>
12853
12854 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
12855
128562008-02-01 Kenichi Handa <handa@m17n.org>
12857
12858 * coding.c (Fdefine_coding_system_internal)
12859 (Fdefine_coding_system_alias): Avoid a duplicated element in
12860 Vcoding_system_alist.
12861
128622008-02-01 Kenichi Handa <handa@m17n.org>
12863
12864 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
12865
12866 * coding.c (Qcoding_system_define_form): New variable.
12867 (syms_of_coding): Intern and staticpro it.
12868 (Fcoding_system_p): Check Qcoding_system_define_form.
12869 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
12870
12871 * coding.h (CODING_SYSTEM_P): If ID is not available, call
12872 Fcoding_system_p.
12873 (CHECK_CODING_SYSTEM): If ID is not available, call
12874 Fcheck_coding_system.
12875 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
12876 Try also Fcheck_coding_system.
12877
128782008-02-01 Kenichi Handa <handa@m17n.org>
12879
12880 * coding.c (code_conversion_restore): GCPRO arg.
12881
128822008-02-01 Kenichi Handa <handa@m17n.org>
12883
12884 * character.c (lisp_string_width): Check multibyteness of STRING.
12885
128862008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12887
12888 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
12889 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
12890 (decode_mac_font_name): Use decode_coding_c_string instead of
12891 decode_coding.
12892 (x_load_font): Initialize fontp->fontset to -1. Set
12893 fontp->encoding_type.
12894
128952008-02-01 Kenichi Handa <handa@m17n.org>
12896
12897 * search.c (search_buffer): Give up BM search on case-fold-search
12898 if one of a target character has a case-equivalence of different
12899 byte length even if that target charcter is an ASCII.
12900 (simple_search): Fix calculation of byte length of matched text.
12901 (boyer_moore): Fix handling of case-equivalent multibyte characters.
12902
129032008-02-01 Kenichi Handa <handa@m17n.org>
12904
12905 * coding.c (decode_coding): Fix handling of invalid bytes.
12906
129072008-02-01 Kenichi Handa <handa@m17n.org>
12908
12909 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
12910 Unicode characters.
12911
129122008-02-01 Kenichi Handa <handa@m17n.org>
12913
12914 * coding.c (encode_coding_object): If a pre-write-conversion
12915 function makes a new buffer, kill it.
12916
129172008-02-01 Kenichi Handa <handa@m17n.org>
12918
12919 * coding.c (QCascii_compatible_p): New variable.
12920 (syms_of_coding): Initialize it.
12921 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
12922 calling string_char.
12923 (record_conversion_result): Add `default:' case.
12924 (coding_charset_list): Delete unused variable `coding_type'.
12925 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
12926 property in the plist of the coding system.
12927 (Fcoding_system_put): Check QCascii_compatible_p.
12928
129292008-02-01 Miles Bader <miles@gnu.org>
12930
12931 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
12932 removed calculation of frame `f', as it's now used.
12933
129342008-02-01 Kenichi Handa <handa@m17n.org>
12935
12936 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
12937 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
12938 (UNIDATA): New variable.
12939 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
12940 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
12941 $(RUN_TEMACS) unconditionally.
12942
129432008-02-01 Kenichi Handa <handa@m17n.org>
12944
12945 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
12946 (admindir): New variable.
12947 ($(lispsource)international/charprop.el): New target.
12948
129492008-02-01 Miles Bader <miles@gnu.org>
12950
12951 * character.c (chars-in-region): Remove obsolete function.
12952 (syms_of_character): Remove its initialization.
12953
129542008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
12955
12956 * w32select.c (validate_coding_system)
12957 (setup_windows_coding_system): New functions.
12958 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
12959 setup_windows_coding_system.
12960 (setup_config, Fw32_get_clipboard_data): Use
12961 validate_coding_system.
12962 (Fx_selection_exists): Move call to setup_config to a place
12963 where signals are allowed.
12964
12965 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
12966 (Fcheck_coding_system): Add declarations.
12967
129682008-02-01 Kenichi Handa <handa@m17n.org>
12969
12970 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
12971
129722008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12973
12974 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
12975 string as the second argument for x_new_fontset.
12976
129772008-02-01 Kenichi Handa <handa@m17n.org>
12978
12979 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
12980 (encode_coding_object): Use safe_call instead of call2.
12981
129822008-02-01 Kenichi Handa <handa@m17n.org>
12983
12984 * fontset.c (Fset_fontset_font): Check family element of a given vector.
12985
12986 * Makefile.in (lisp): Include charprop.el.
12987
129882008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12989
12990 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
12991 Not sure if it's unnecessary.
12992
129932008-02-01 Steven Tamm <steventamm@mac.com>
12994
12995 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
12996 some possibly unnecessary fontset checking code that crashed
12997 when creating a new frame.
12998
129992008-02-01 Kenichi Handa <handa@m17n.org>
13000
13001 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
13002 lookup_face.
13003
13004 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
13005
13006 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
13007
130082008-02-01 Kenichi Handa <handa@m17n.org>
13009
13010 * coding.c: Cancel the change done in HEAD on 2008-02-01.
13011 (coding_charset_list): New function.
13012
13013 * coding.h (coding_charset_list): Extern it.
13014
130152008-02-01 Kenichi Handa <handa@m17n.org>
13016
13017 * fontset.c (Fset_fontset_font): Call find_font_encoding with
13018 concatenation of family and registry.
13019
130202008-02-01 Kenichi Handa <handa@m17n.org>
13021
13022 * character.h (BYTE8_STRING): Fix typo.
13023
13024 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
13025 string to multibyte (sync to HEAD).
13026
13027 * casefiddle.c (casify_region): Handle changes in byte-length
13028 using replace_range_2 (sync to HEAD).
13029
130302008-02-01 Andreas Schwab <schwab@suse.de>
13031
13032 * chartab.c (map_char_table): GCPRO table and arg.
13033
130342008-02-01 Kenichi Handa <handa@m17n.org>
13035
13036 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
13037 already at limit.
13038
130392008-02-01 Kenichi Handa <handa@m17n.org>
13040
13041 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
13042 instead of fast_c_string_match_ignore_case.
13043 (find_font_encoding): Change argument to Lisp_Object. Use
13044 fast_string_match_ignore_case instead of
13045 fast_c_string_match_ignore_case. Change caller.
13046
130472008-02-01 Kenichi Handa <handa@m17n.org>
13048
13049 * xdisp.c (get_next_display_element): In unibyte case, decide to
13050 display in octal form by checking a character by
13051 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
13052
13053 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
13054
13055 * character.c (unibyte_has_multibyte_table): New variable.
13056
13057 * character.h (unibyte_has_multibyte_table): Extern it.
13058 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
13059
130602008-02-01 Kenichi Handa <handa@m17n.org>
13061
13062 * coding.c (encode_coding_iso_2022): Fix handling of charset
13063 annotation.
13064
130652008-02-01 Kenichi Handa <handa@m17n.org>
13066
13067 * coding.c (setup_coding_system): If coding_system is nil, use
13068 Qundecided.
13069 (Fterminal_coding_system): Return nil if terminal coding system is
13070 `undecided'.
13071 (syms_of_coding): Define coding-system `undecided' here. Setup
13072 terminal_coding as `undecided'.
13073
130742008-02-01 Kenichi Handa <handa@m17n.org>
13075
13076 * xdisp.c (message_dolog, set_message_1): Call
13077 unibyte_char_to_multibyte with arg type int.
13078
13079 * lread.c (read1): Fix reading of a char-table.
13080
13081 * print.c (print_object): Include sub char-table in circularities
13082 detection.
13083
130842008-02-01 Kenichi Handa <handa@m17n.org>
13085
13086 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
13087 Append the found sequences in car of ARGS instead of prepending.
13088
130892008-02-01 Kenichi Handa <handa@m17n.org>
13090
13091 * fileio.c (report_file_error): Make a unibyte string from
13092 strerror (errorno).
13093 (Fsubstitute_in_file_name): Fix the arg to
13094 unibyte_char_to_multibyte. It is evaluated twice.
13095
130962008-02-01 Kenichi Handa <handa@m17n.org>
13097
13098 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
13099
131002008-02-01 Kenichi Handa <handa@m17n.org>
13101
13102 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
13103 BOM is not found.
13104 (detect_coding, detect_coding_system): Optimization for ISO-2022
13105 when no 8-bit data is found.
13106
131072008-02-01 Jason Rumney <jasonr@gnu.org>
13108
13109 * w32fns.c (x_to_w32_font): Update to use new coding struct.
13110
131112008-02-01 Kenichi Handa <handa@m17n.org>
13112
13113 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
13114 CHARS.
13115
131162008-02-01 Steven Tamm <steventamm@mac.com>
13117
13118 * macterm.c (mac_encode_char): Add charset argument and update
13119 to use encoding_type.
13120 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
13121 switch to pure fontset.
13122 (decode_mac_font_name): Temporarily remove decoding.
13123 (x_font_name_to_mac_font_name): Temporarily remove encoding.
13124 (x_load_font): Temporarily remove encoding.
13125
131262008-02-01 Kenichi Handa <handa@m17n.org>
13127
13128 * xfaces.c (Fface_font): If frame is not on a window system,
13129 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
13130 refer to face->font.
13131 (split_font_name_into_vector, build_font_name_from_vector)
13132 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
13133 when HAVE_WINDOW_SYSTEM is defined.
13134
131352008-02-01 Kenichi Handa <handa@m17n.org>
13136
13137 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
13138 (x_produce_glyphs): Fix setting of members of cmp in case
13139 cmp->glyph_len is zero.
13140
13141 * fontset.c (Fset_fontset_font): Fix docstring.
13142 (Ffontset_info): Make it backward compatible. New arg ALL.
13143
131442008-02-01 Kim F. Storm <storm@cua.dk>
13145
13146 * process.c (read_process_output): Grow decoding_buf when needed;
13147 this could cause a crash in allocate_string and compact_small_strings.
13148
131492008-02-01 Kenichi Handa <handa@m17n.org>
13150
13151 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
13152
131532008-02-01 Kenichi Handa <handa@m17n.org>
13154
13155 * coding.c (setup_coding_system): Set coding->common_flags
13156 correctly for raw-text.
13157 (consume_chars): On encoding unibyte text by raw-text, don't check
13158 multibyte form.
13159 (encode_coding): On encoding by raw-text, never use translation tables.
13160
13161 * fileio.c (e_write): Short cut for the case of no encoding.
13162
131632008-02-01 Kenichi Handa <handa@m17n.org>
13164
13165 * coding.c (detect_coding, detect_coding_system): Delete unused
13166 variables.
13167
131682008-02-01 Kenichi Handa <handa@m17n.org>
13169
13170 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
13171 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
13172
131732008-02-01 Kenichi Handa <handa@m17n.org>
13174
13175 * coding.c (Ffind_coding_systems_region_internal): Include
13176 raw-text and no-conversion in the result.
13177
131782008-02-01 Kenichi Handa <handa@m17n.org>
13179
13180 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
13181 (load_font_get_repertory): Delete unnecessary check of ENCODING of
13182 FONT_DEF.
13183 (font_def_arg, add_arg, from_arg, to_arg): New args.
13184 (set_fontset_font): Change argument.
13185 (Fset_fontset_font): Fix for the case that TARGET is a script
13186 name and charset name.
13187 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
13188
131892008-02-01 Kenichi Handa <handa@m17n.org>
13190
13191 * fontset.c (fontset_font): Rename from fontset_face. Change return
13192 value.
13193 (face_suitable_for_char_p, face_for_char): Adjust for the change
13194 of fontset_font.
13195 (make_fontset_for_ascii_face): Fix setting of the fontset element
13196 for ASCII.
13197 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
13198 to get a font name.
13199 (Ffontset_info): Adjust for the change of fontset_font.
13200
13201 * coding.c (emacs_mule_char): Check invalid code more rigidly.
13202
13203 * character.h (LEADING_CODE_LATIN_1_MIN)
13204 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
13205
132062008-02-01 Kenichi Handa <handa@m17n.org>
13207
13208 * editfns.c (check_translation): New function.
13209 (Ftranslate_region_internal): Handle M:N mapping.
13210
132112008-02-01 Kenichi Handa <handa@m17n.org>
13212
13213 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
13214
132152008-02-01 Kenichi Handa <handa@m17n.org>
13216
13217 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
13218 goto invalid_code.
13219 (decode_coding_iso_2022): Fix handling of invalid designation.
13220
13221 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
13222 after calling code_conversion_save.
13223
132242008-02-01 Kenichi Handa <handa@m17n.org>
13225
13226 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
13227
13228 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
13229
13230 * fontset.c: Include "intervals.h".
13231 (fontset_face): Fix comparing of Lisp_Objects.
13232 (free_face_fontset, new_fontset_from_font_name): Fix
13233 Lisp_Object/int mixup.
13234
13235 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
13236
13237 * coding.c: Add many prototypes for static functions.
13238 (get_translation_table): Allow max_lookup to be NULL.
13239 (decode_coding, Ffind_coding_systems_region_internal)
13240 (Funencodable_char_position, Fcheck_coding_systems_region): Call
13241 get_translation_table with max_lookup NULL.
13242
132432008-02-01 Kenichi Handa <handa@m17n.org>
13244
13245 * coding.c (get_translation_table): Declare it as Lisp_Object.
13246 (LOOKUP_TRANSLATION_TABLE): New macro.
13247 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
13248 instead of CHAR_TABLE_REF.
13249
132502008-02-01 Kenichi Handa <handa@m17n.org>
13251
13252 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
13253 annotation data format.
13254 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
13255 Change arguments FROM and TO to single argument NCHARS. Change caller.
13256 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
13257 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13258 (decode_coding_ccl, decode_coding_charset): Pay attention to
13259 coding->charbuf_used.
13260 (get_translation): New function.
13261 (produce_chars): New arguments translation_table and last_block.
13262 Translate characters here. Return number of carryover chars.
13263 Change caller.
13264 (produce_composition): New argument pos. Change caller.
13265 Adjust for the change of annotation data format.
13266 (produce_charset, produce_annotation): Likewise.
13267 (decode_coding, encode_coding): Don't call translate_chars.
13268 (consume_chars): New arg translation_table. Change caller.
13269 (translate_chars): Delete.
13270 (syms_of_coding): Make translation-table's number of extra slots 2.
13271
132722008-02-01 Kenichi Handa <handa@m17n.org>
13273
13274 * search.c (simple_search): Fix setting this_pos_byte in backward
13275 search.
13276
13277 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
13278 byte sequence.
13279 (detect_coding_ccl): Fix setting of the variable valids.
13280
132812008-02-01 Kenichi Handa <handa@m17n.org>
13282
13283 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
13284
13285 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
13286
13287 * editfns.c (Ftranslate_region_internal): Rename from
13288 Ftranslate_region. Accept a char-table in TABLE.
13289 (syms_of_editfns): Defsubr Stranslate_region_internal.
13290
13291 * xfaces.c (set_lface_from_font_name): If a font is specified for
13292 a frame, generate a fontset from the font.
13293 (build_scalable_font_name): If the scalable font is requested for
13294 a specific size, don't change that size.
13295 (try_font_list): Try a scalable font also in the case that a
13296 pattern string is specified.
13297
132982008-02-01 Kenichi Handa <handa@m17n.org>
13299
13300 * xfaces.c (Fface_font): New optional arg CHARACTER.
13301
133022008-02-01 Kenichi Handa <handa@m17n.org>
13303
13304 * charset.h (CHARSET_OFFSET): New macro.
13305
133062008-02-01 Kenichi Handa <handa@m17n.org>
13307
13308 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
13309
13310 * fontset.c (fontset_face): Handle the case that repertory is a
13311 char-table.
13312 (find_font_encoding): Return nil for unknown encoding.
13313 (Fset_fontset_font): Ignore a font of unknown encoding.
13314
133152008-02-01 Kenichi Handa <handa@m17n.org>
13316
13317 * keymap.c (describe_vector): Handle default value of a char table.
13318
13319 * fontset.c (fontset_face): Handle fallback fonts correctly.
13320 (Ffontset_info): Return infomation about fallback fonts.
13321
133222008-02-01 Kenichi Handa <handa@m17n.org>
13323
13324 * fontset.c (FONTSET_DEFAULT): New macro.
13325 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
13326 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
13327 the case that it is nil.
13328 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
13329 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
13330
13331 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
13332 subset or superset.
13333
133342008-02-01 Kenichi Handa <handa@m17n.org>
13335
13336 * emacs.c (main): Call init_charset after syms_of_XXX.
13337
13338 * charset.c (Vcharset_map_directory): Delete.
13339 (Vcharset_map_path): New variable.
13340 (load_charset_map_from_file): Use Vcharset_map_path instead.
13341 (init_charset): Initialize Vcharset_map_path.
13342 (syms_of_charset): Delete declaration of "charset-map-directory",
13343 add declaration of "charset-map-path".
13344
133452008-02-01 Kenichi Handa <handa@m17n.org>
13346
13347 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
13348 ASCII only string.
13349
13350 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
13351
13352 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
13353 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
13354
133552008-02-01 Kenichi Handa <handa@m17n.org>
13356
13357 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
13358
13359 * coding.c (QCmnemonic, QCdefalut_char)
13360 (QCdecode_translation_table, QCencode_translation_table)
13361 (QCpost_read_conversion, QCpre_write_conversion): New variables.
13362 (get_translation_table): Return a list of translation tables if
13363 necessary.
13364 (decode_coding): Call get_translation_table with ENCODEP 0.
13365 (char_encodable_p): If translation_table is non-nil, always call
13366 translate_char.
13367 (Fdefine_coding_system_internal): Accept list of translation
13368 tables as :encode-translation-table and :decode-translation-table.
13369 (Fcoding_system_put): New function.
13370 (syms_of_coding): Declare new symbols. Defsubr
13371 Scoding_system_put.
13372 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
13373 typically JISX0212.
13374
13375 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
13376 when the charset is superset type.
13377
13378 * character.c (translate_char): Accept list of translation tables.
13379
133802008-02-01 Kenichi Handa <handa@m17n.org>
13381
13382 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
13383 (CODING_ATTR_TRANS_TBL): New macro.
13384
13385 * coding.c (get_translation_table): New function.
13386 (translate_chars): Fix the bug of skipping annotation data.
13387 (decode_coding, encode_coding): Utilize get_translation_table.
13388 (char_encodable_p, Funencodable_char_position): Translate char if
13389 necessary.
13390 (Ffind_coding_systems_region_internal)
13391 (Fcheck_coding_systems_region): Setup translation table for encode
13392 in a coding system attribute vector in advance.
13393 (Fdefine_coding_system_internal): Allow a symbol as translation
13394 table. For shift-jis type coding system, allow 4th charset.
13395
133962008-02-01 Kenichi Handa <handa@m17n.org>
13397
13398 * coding.c (decode_coding_sjis): Check the first byte rigidly.
13399
13400 * xdisp.c (get_next_display_element): Pass -1 as POS to
13401 FACE_FOR_CHAR if displaying a C-string.
13402
134032008-02-01 Kenichi Handa <handa@m17n.org>
13404
13405 * composite.c (get_composition_id): Handle xoff and yoff in a
13406 composition rule.
13407
13408 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
13409 (struct composition): New member lbearing and rbearing.
13410
13411 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
13412 (x_get_glyph_overhangs): Handle a composition glyph.
13413 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
13414
13415 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
13416 composition glyph.
13417
134182008-02-01 Kenichi Handa <handa@m17n.org>
13419
13420 * print.c: Include charset.h.
13421 (Vprint_charset_text_property): New variable.
13422 (Qdefault): Extern it.
13423 (PRINT_STRING_NON_CHARSET_FOUND)
13424 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
13425 (print_check_string_result): New variable.
13426 (print_check_string_charset_prop): New function.
13427 (print_prune_charset_plist): New variable.
13428 (print_prune_string_charset): New function.
13429 (print_object): Call print_prune_string_charset if
13430 Vprint_charset_text_property is not t.
13431 (print_interval): Print nothing if interval->plist is nil.
13432 (syms_of_print): Declare Vprint_charset_text_property as a lisp
13433 variable. Init and staticpro print_prune_charset_plist.
13434
134352008-02-01 Kenichi Handa <handa@m17n.org>
13436
13437 * fontset.c (new_fontset_from_font_name): Use the specified font
13438 for all characters in the new fontset.
13439
13440 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13441 OBJECT args.
13442
13443 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
13444 OBJECT args for composition too.
13445
13446 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13447 OBJECT args.
13448
134492008-02-01 Kenichi Handa <handa@m17n.org>
13450
13451 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
13452
13453 * fontset.c (reorder_font_vector): Adjust for the change of
13454 FONT_DEF format.
13455 (fontset_face): New arg id. Change caller.
13456 (face_for_char): New args pos and object.
13457 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
13458 (fs_query_fontset): Check NAME by Fassoc too.
13459 (Fset_fontset_font): Allow non-XLFD font name.
13460 (Ffontset_info): Adjust for the change of FONT_DEF format.
13461
13462 * fontset.h (face_for_char): Adjust prototype.
13463
13464 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
13465 (append_space, extend_face_to_end_of_line)
13466 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13467 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
13468
13469 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
13470 POS and OBJECT args.
13471
13472 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
13473 POS and OBJECT args.
13474
134752008-02-01 Jason Rumney <jasonr@gnu.org>
13476
13477 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
13478 of GlobalAlloc'ed memory.
13479
134802008-02-01 Kenichi Handa <handa@m17n.org>
13481
13482 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
13483
13484 * charset.h (charset_table_used): Delete extern.
13485
13486 * charset.c (charset_table_used): Make it static.
13487 (map_charset_chars): Fix args to c_function with.
13488
13489 * chartab.c (map_sub_char_table_for_charset): Fix args to
13490 c_function with.
13491
13492 * coding.h (enum coding_result_code): Delete
13493 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
13494
13495 * coding.c (Qinsufficient_source, Qinconsistent_eol)
13496 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
13497 (Vlast_code_conversion_error): New variables.
13498 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
13499 (ONE_MORE_BYTE): Record error if any instead of signaling an
13500 error. If non-ASCII multibyte char is found, return the negative
13501 value of the code. All callers changed to check it.
13502 (ONE_MORE_BYTE_NO_CHECK): Likewise.
13503 (record_conversion_result): New function. Change all codes setting
13504 coding->result to call this function.
13505 (detect_coding_utf_8, decode_coding_utf_8)
13506 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
13507 Don't use the local variable incomplete.
13508 (emacs_mule_char): Change the second arg to `const'.
13509 (decode_coding): Fix of flushing out unprocessed data.
13510 (make_conversion_work_buffer): Fix making of a work buffer.
13511 (decode_coding_object): Return coding->dst_object.
13512
13513 * fontset.c (set_fontset_font): Fix args.
13514
13515 * lisp.h (CHARACTERBITS): Define as 22.
13516
13517 * process.c (send_process): Be sure to set coding->src_multibyte.
13518
13519 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
13520
135212008-02-01 Kenichi Handa <handa@m17n.org>
13522
13523 * xdisp.c (handle_auto_composed_prop): Give limit to
13524 Fnext_single_char_property_change.
13525
135262008-02-01 Kenichi Handa <handa@m17n.org>
13527
13528 * composite.c (syms_of_composite): Don't make the composition hash
13529 table weak.
13530
13531 * fontset.c (Fset_fontset_font): Fix docstring.
13532
13533 * lisp.h (detect_coding_system): Adjust prototype.
13534
13535 * fileio.c (kill_workbuf_unwind): Delete this function.
13536 (Finsert_file_contents): Adjust the call of detect_coding_system.
13537 Get conversion_buffer by code_conversion_save. Use the macro
13538 CODING_MAY_REQUIRE_DECODING. After decoding, update
13539 coding_system.
13540
13541 * coding.h (make_conversion_work_buffer): Delete extern.
13542 (code_conversion_save): Extern it.
13543
13544 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
13545 (CODING_GET_INFO): Delete argument eol_type. Change callers.
13546 (decode_coding_utf_8): Don't do eol converion.
13547 (detect_coding_utf_16): Check coding->src_chars, not
13548 coding->src_bytes. Add heuristics for those that have no signature.
13549 (decode_coding_emacs_mule, decode_coding_iso_2022)
13550 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13551 Don't do eol converion.
13552 (adjust_coding_eol_type): Return a new coding system.
13553 (detect_coding): Don't detect eol. Fix for utf-16 detection.
13554 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
13555 each change.
13556 (decode_coding): Pay attention to undo_list. Do eol conversion for
13557 all types of coding-systems (if necessary).
13558 (Vcode_conversion_work_buf_list): Delete it.
13559 (Vcode_conversion_reused_workbuf): Rename from
13560 Vcode_conversion_reused_work_buf.
13561 (Vcode_conversion_workbuf_name): New variable.
13562 (reused_workbuf_in_use): New variable.
13563 (make_conversion_work_buffer): Delete the arg DEPTH.
13564 (code_conversion_restore): Change argument to cons.
13565 (code_conversion_save): Delete the argument BUFFER. Change callers.
13566 (detect_coding_system): New argument src_chars. Change callers.
13567 Fix for utf-16 detection.
13568 (init_coding_once): Don't use ISO_carriage_return.
13569 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
13570 reused_workbuf_in_use.
13571
135722008-02-01 Kenichi Handa <handa@m17n.org>
13573
13574 * keymap.c (store_in_keymap): Pay attention to the case that idx
13575 is a cons specifying a character range.
13576
135772008-02-01 Kenichi Handa <handa@m17n.org>
13578
13579 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
13580 HANDLED_RECOMPUTE_PROPS.
13581
13582 * coding.c (Fdefine_coding_system_internal): Fix checking of
13583 ascii compatibility.
13584
135852008-02-01 Kenichi Handa <handa@m17n.org>
13586
13587 * charset.c (find_charsets_in_text): Delete unused locale variable.
13588 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
13589
13590 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
13591 Resync charset_list to Vemacs_mule_charset_list.
13592
13593 * keymap.c (store_in_keymap): Pay attention to the case that idx
13594 is a cons specifying a character range.
13595
135962008-02-01 Kenichi Handa <handa@m17n.org>
13597
13598 * composite.c (update_compositions): Bind inhibit-read-only, etc
13599 to t before calling remove-list-of-text-properties.
13600
13601 * print.c (print_object): Always print ASCII chars as is.
13602
136032008-02-01 Kenichi Handa <handa@m17n.org>
13604
13605 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
13606
13607 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
13608 is a char table.
13609
136102008-02-01 Kenichi Handa <handa@m17n.org>
13611
13612 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
13613
136142008-02-01 Kenichi Handa <handa@m17n.org>
13615
13616 * xfaces.c (set_lface_from_font_name): Fix for the case that
13617 FONTNAME is not fontset name.
13618
136192008-02-01 Kenichi Handa <handa@m17n.org>
13620
13621 * fns.c (base64_encode_1): Fix previous change.
13622
136232008-02-01 Kenichi Handa <handa@m17n.org>
13624
13625 * fontset.c (set_fontset_font): New function.
13626 (Fset_fontset_font): If a font is specified for a charset, use
13627 map_charset_chars to store the font spec in a fontset.
13628
136292008-02-01 Kenichi Handa <handa@m17n.org>
13630
13631 * fontset.c (fontset_face): Create a fallback fontset on demand.
13632 (make_fontset): Don't create a fallback fontset here.
13633 (free_face_fontset): Free a fallback fontset (if any) too.
13634 (n_auto_fontsets): Delete this variable.
13635 (auto_fontset_alist): New variable.
13636 (new_fontset_from_font_name): Check auto_fontset_alist.
13637 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
13638 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
13639 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
13640 Defsubr Sfontset_list_all.
13641
136422008-02-01 Kenichi Handa <handa@m17n.org>
13643
13644 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
13645
136462008-02-01 Kenichi Handa <handa@m17n.org>
13647
13648 * fontset.c (Fnew_fontset): Check NAME more rigidly.
13649
136502008-02-01 Kenichi Handa <handa@m17n.org>
13651
13652 * editfns.c (Fgoto_char): Fix docstring.
13653
136542008-02-01 Kenichi Handa <handa@m17n.org>
13655
13656 * insdel.c (insert_from_gap): Adjust intervals correctly.
13657
136582008-02-01 Jason Rumney <jasonr@gnu.org>
13659
13660 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
13661 (pfnGetFontUnicodeRanges): New dynamically loaded function.
13662 (w32_initialize): Try to load it.
13663 (x_get_font_repertory): Use it if available.
13664 (w32_encode_char): Add shortcut for unicode output.
13665
13666 * w32fns.c (w32_load_system_font): Default charset to -1.
13667 (x_to_w32_charset): Match all fonts for unicode.
13668 (w32_to_x_charset): New parameter matching. Don't return partial
13669 or wildcard charsets.
13670 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
13671 (w32_codepage_for_font): Return CP_UNICODE for unicode.
13672 (w32_to_x_font): Match charset to real charset.
13673 (enum_font_cb2): Always list unicode versions.
13674
13675 * makefile.w32-in (temacs): Increase EMHEAP.
13676
136772008-02-01 Jason Rumney <jasonr@gnu.org>
13678
13679 * w32term.c (w32_encode_char): New charset parameter.
13680 font_info.encoding becomes encoding_type.
13681 (x_get_font_repertory): New function. Warning: stub only!
13682 (x_new_font): Return quickly if font already set.
13683 (x_new_fontset): fontsetname parameter is Lisp_Object.
13684 Use new fs_query_fontset. Try new_fontset_from_font_name.
13685 Use fontset_name for return value.
13686
13687 * w32term.h: Declare x_get_font_repertory.
13688
13689 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
13690 place of find_charset_in_text. Use encode_coding_object in place
13691 of encode_coding.
13692 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
13693 decode_coding.
13694
13695 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
13696 of x_new_fontset.
13697 (w32_load_system_font): Initialize charset as unicode.
13698 font_info.encoding becomes encoding_type.
13699 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
13700 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
13701 (syms_of_w32fns): Set get_font_repertory_func.
13702
13703 * w32console.c: Include character.h. Use terminal_encode_buffer
13704 from term.c.
13705 (write_glyphs): Use new version of encode_terminal_code. Use
13706 encode_coding_object in place of encode_coding.
13707
13708 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
13709 encoding becomes encoding_type.
13710
13711 * term.c (terminal_encode_buffer): Make externally visible.
13712
13713 * makefile.w32-in: Add character.h dependancies.
13714 (character.o, chartab.o): New targets.
13715
137162008-02-01 Kenichi Handa <handa@m17n.org>
13717
13718 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
13719 CODING_ID_EOL_TYPE.
13720
137212008-02-01 Andreas Schwab <schwab@suse.de>
13722
13723 * coding.c (produce_chars): Revert last change.
13724
137252008-02-01 Kenichi Handa <handa@m17n.org>
13726
13727 * charset.h (charset_unicode): Extern it.
13728
13729 * charset.c (string_xstring_p): Check by (C >= 0x100).
13730 (find_charsets_in_text): Change format of the arc CHARSETS. New
13731 arg MULTIBYTE.
13732 (Ffind_charset_region, Ffind_charset_string): Adjust for the
13733 change of find_charsets_in_text.
13734 (Fsplit_char): Fix doc. Never return unknown.
13735
13736 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
13737
13738 * coding.c (Fdefine_coding_system_alias): Update
13739 Vcoding_system_list.
13740
13741 * fontset.c (load_font_get_repertory): Pay attention to the case
13742 that ENCODING of a font is specified by a char-table.
13743
13744 * xterm.c (x_get_font_repertory): Handle the case that the
13745 encoding of font is other than Unicode.
13746
137472008-02-01 Kenichi Handa <handa@m17n.org>
13748
13749 * term.c (encode_terminal_code): Don't handle glyph-table. Check
13750 if a character is encodable by the terminal coding system. If
13751 not, produces proper number of `?'s. Update
13752 terminal_encode_buffer and terminal_encode_buf_size if necessary.
13753 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
13754
137552008-02-01 Kenichi Handa <handa@m17n.org>
13756
13757 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
13758 variables.
13759 (encode_terminal_code): Change argument. Encode multiple
13760 characters at once. Store the result of encoding in
13761 terminal_encode_buffer.
13762 (write_glyphs, insert_glyphs): Adjust for the change of
13763 encode_terminal_code.
13764 (term_init): Initialize terminal_encode_buffer and
13765 terminal_encode_buf_size.
13766
13767 * coding.c (consume_chars): If coding->src_object is nil, don't
13768 check annotation.
13769
137702008-02-01 Kenichi Handa <handa@m17n.org>
13771
13772 * character.c (char_string): Use ASCII_CHAR_P instead of
13773 SINGLE_BYTE_CHAR_P.
13774
137752008-02-01 Kenichi Handa <handa@m17n.org>
13776
13777 * xdisp.c (handle_auto_composed_prop): Check if the last
13778 characters of auto-composed region is newly composed with the
13779 following characters.
13780 (handle_composition_prop): Fix checking of point being inside
13781 composition.
13782
137832008-02-01 Kenichi Handa <handa@m17n.org>
13784
13785 * fns.c (concat): Don't change multibyteness of the result by
13786 concatenating an 8-bit character.
13787
13788 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
13789 multibyteness of the result when newelt is an 8-bit character.
13790
137912008-02-01 Dave Love <fx@gnu.org>
13792
13793 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
13794 EMACS_INT.
13795
13796 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
13797
13798 * xfaces.c (face_numeric_value): Declare dim size_t.
13799 (Finternal_lisp_face_equal_p): Remove unused f.
13800
13801 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
13802 (MATRIX_ROW): Remove unused vars.
13803 (draw_glyphs, x_insert_glyphs, fast_find_position)
13804 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
13805 byte/char counts.
13806
13807 * regex.c (regex_compile): Remove unused var.
13808
13809 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
13810
13811 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13812 (Faccessible_keymaps, where_is_internal): Remove unused vars.
13813
13814 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
13815
13816 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
13817
13818 * fileio.c (Fwrite_region): Remove unused var.
13819
13820 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
13821 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
13822
13823 * composite.c (Fremove_list_of_text_properties): Declare.
13824
13825 * coding.c (inhibit_pre_post_conversion): Remove (unused).
13826 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
13827 (coding_inherit_eol_type): Remove unused attrs.
13828 (detect_coding): Cast arg of detect_eol.
13829
13830 * charset.c (syms_of_charset): Remove unused var p.
13831 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
13832 byte/char counts.
13833
13834 * casetab.c (set_case_table): Remove unused var.
13835
13836 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
13837 unused vars.
13838
138392008-02-01 Dave Love <fx@gnu.org>
13840
13841 * xterm.c (x_bitmap_mask): Declare.
13842
138432008-02-01 Dave Love <fx@gnu.org>
13844
13845 * xterm.c (x_term_init): Fix type error.
13846
13847 * lisp.h: Add Funibyte_char_to_multibyte.
13848
13849 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
13850 (Fset_coding_system_priority): Doc fix.
13851
13852 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
13853
13854 * indent.c (check_composition): Make start and end EMACS_INT.
13855
13856 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
13857
13858 * xdisp.c (handle_composition_prop, check_point_in_composition):
13859 Make buffer positions EMACS_INT.
13860
13861 * composite.c (find_composition, run_composition_function)
13862 (update_compositions, Ffind_composition_internal): Make buffer
13863 positions EMACS_INT.
13864
13865 * composite.h (find_composition, update_compositions): Make
13866 position args EMACS_INT.
13867
13868 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
13869
13870 * intervals.c (get_property_and_range):
13871 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
13872
13873 * unexalpha.c: Don't include varargs.h.
13874
138752008-02-01 Dave Love <fx@gnu.org>
13876
13877 * coding.h (ENCODE_UTF_8): New.
13878
13879 * Makefile.in (gtkutil.o): Depend on coding.h.
13880
13881 * coding.c (Fset_coding_system_priority): Doc fix.
13882
138832008-02-01 Kenichi Handa <handa@m17n.org>
13884
13885 * fileio.c (Finsert_file_contents): Call setup_coding_system in
13886 the case of auto saving.
13887
138882008-02-01 Andreas Schwab <schwab@suse.de>
13889
13890 * chartab.c (map_char_table, map_char_table_for_charset): Protect
13891 `range' from GC.
13892
138932008-02-01 Kenichi Handa <handa@m17n.org>
13894
13895 * coding.c (decode_coding_sjis): Check bytes more rigidly.
13896
138972008-02-01 Kenichi Handa <handa@m17n.org>
13898
13899 * fileio.c (choose_write_coding_system): Return a decided coding system.
13900 (Fwrite_region): Set Vlast_coding_system_used to the return value
13901 of choose_write_coding_system.
13902
139032008-02-01 Kenichi Handa <handa@m17n.org>
13904
13905 * charset.c (Fset_charset_priority): Pay attention to duplicated
13906 arguments.
13907
13908 * coding.c (QCcategory): New variable.
13909 (syms_of_coding): Defsym it. Set all elements of
13910 Vcoding_category_table and their symbol values.
13911 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
13912 coding-category-XXX, and coding-category-list.
13913 (Fdefine_coding_system_internal): Add category in the plist.
13914
139152008-02-01 Kenichi Handa <handa@m17n.org>
13916
13917 * callproc.c (Fcall_process): Handle carryover correctly.
13918
13919 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
13920 (raw_text_coding_system): Check NILP (coding_system).
13921 (coding_inherit_eol_type): Check NILP (coding_system) and
13922 NILP (parent).
13923 (consume_chars): Fix for the case of raw-text.
13924
13925 * process.c (read_process_output): Handle carryover correctly.
13926
139272008-02-01 Dave Love <fx@gnu.org>
13928
13929 * regex.c (re_search_2): Fix last change.
13930
139312008-02-01 Kenichi Handa <handa@m17n.org>
13932
13933 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
13934 target_multibyte. Even in a unibyte case, return a converted
13935 multibyte char.
13936 (GET_CHAR_AFTER): New macro.
13937 (PATFETCH): Translate via multibyte char.
13938 (HANDLE_UNIBYTE_RANGE): Delete this macro.
13939 (SETUP_MULTIBYTE_RANGE): New macro.
13940 (regex_compile): Setup compiled code so that its multibyteness
13941 matches that of a target. Fix the handling of "[X-YZ]" using
13942 SETUP_MULTIBYTE_RANGE.
13943 (analyse_first) <charset>: For filling fastmap for all multibyte
13944 characters, don't check by BASE_LEADING_CODE_P.
13945 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
13946 the same as RE_MULTIBYTE_P (bufp) now.
13947 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
13948 (TARGET_CHAR_AND_LENGTH): Delete this macro.
13949 (TRANSLATE_VIA_MULTIBYTE): New macro.
13950 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
13951 It is the same as RE_MULTIBYTE_P (bufp) now.
13952 <exactn>: Translate via multibyte.
13953 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
13954 translate it.
13955 <charset, charset_not>: Fetch a character by
13956 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
13957 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
13958 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
13959 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
13960 by GET_CHAR_AFTER.
13961 (bcmp_translate): Likewise.
13962
13963 * search.c (compile_pattern): Check the member target_multibyte,
13964 not the member multibyte of buf.
13965
13966 * lread.c (read1): While reading a string, set force_singlebyte
13967 and force_multibyte correctly.
13968
13969 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
13970 up of unibyte_to_multibyte_table.
13971
139722008-02-01 Kenichi Handa <handa@m17n.org>
13973
13974 * coding.c (setup_coding_system): If coding has
13975 post-read-conversion or pre-write-conversion, set
13976 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
13977 respectively.
13978 (decode_coding_gap): Run post-read-conversion if any.
13979
13980 * fileio.c (Finsert_file_contents): Even if we read into a
13981 unibyte buffer, check if we must decode the result or not.
13982
139832008-02-01 Kenichi Handa <handa@m17n.org>
13984
13985 * coding.c (make_conversion_work_buffer): Change the work buffer
13986 name to the same one as that of Emacs 21.
13987
139882008-02-01 Kenichi Handa <handa@m17n.org>
13989
13990 * coding.h (make_conversion_work_buffer): Adjust prototype.
13991 (code_conversion_restore): Don't extern it.
13992
13993 * coding.c (detected_mask): Delete unused variable.
13994 (decode_coding_iso_2022): Pay attention to the byte sequence of
13995 CTEXT extended segment, and retain those bytes as is.
13996 (decode_coding_ccl): Delete unused variable `valids'.
13997 (setup_coding_system): Delete unused variable `category'.
13998 (consume_chars): Delete unused variable `category'. Make it work
13999 for non-multibyte case.
14000 (make_conversion_work_buffer): Change argument.
14001 (saved_coding): Delete unused variable.
14002 (code_conversion_restore): Don't check saved_coding->destination.
14003 (code_conversion_save): New function.
14004 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
14005 instead of record_unwind_protect.
14006 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
14007 (detect_coding_system): Delete unused variable `mask'.
14008 (Fdefine_coding_system_internal): Delete unused variable id.
14009
14010 * fileio.c (kill_workbuf_unwind): New function.
14011 (Finsert_file_contents): On replacing, call
14012 make_conversion_work_buffer with correct args, and call
14013 record_unwind_protect with the first arg kill_workbuf_unwind.
14014
14015 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
14016
140172008-02-01 Kenichi Handa <handa@m17n.org>
14018
14019 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
14020 (fontset_add): Fix for the case that TO is less than TO1.
14021 (Ffontset_info): Don't use fallback fontset on checking the
14022 default fontset.
14023 (dump_fontset): New function for debugging.
14024
14025 * coding.c (Fdefine_coding_system_internal): Fix for the case that
14026 coding_type is Qcharset.
14027
140282008-02-01 Kenichi Handa <handa@m17n.org>
14029
14030 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
14031 (map_char_table): Don't inherit the value from the parent on
14032 initializing VAL. Adjust for the above change.
14033
140342008-02-01 Kenichi Handa <handa@m17n.org>
14035
14036 * coding.c (Qsignature, Qendian): Delete these variables.
14037 (syms_of_coding): Don't initialize them.
14038 (CATEGORY_MASK_UTF_16_AUTO): New macro.
14039 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
14040 detect_info->found.
14041 (decode_coding_utf_16): Don't detect BOM here.
14042 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
14043 is NOT utf_16_without_bom.
14044 (setup_coding_system): For a coding system of type utf-16, check
14045 if the attribute :endian is Qbig or not (not nil or not), and set
14046 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
14047 (detect_coding): If coding type is utf-16 and BOM detection is
14048 required, detect it.
14049 (Fdefine_coding_system_internal): For a coding system of type
14050 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
14051
140522008-02-01 Kenichi Handa <handa@m17n.org>
14053
14054 * coding.c (coding_set_source): Fix for the case that the current
14055 buffer is different from coding->src_object.
14056 (decode_coding_object): Don't use the conversion work buffer if
14057 DST_OBJECT is a buffer.
14058
140592008-02-01 Dave Love <fx@gnu.org>
14060
14061 * lread.c (read_emacs_mule_char) [len==2]: Index
14062 emacs_mule_charset correctly.
14063
140642008-02-01 Dave Love <fx@gnu.org>
14065
14066 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
14067 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
14068 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
14069 treated specially.)
14070 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
14071 (detected_mask): Remove Big5 bits.
14072
140732008-02-01 Kenichi Handa <handa@m17n.org>
14074
14075 The following changes are to make the font rescaling facility
14076 compatible with Emacs 21.
14077
14078 * xfaces.c (Vface_font_rescale_alist): Rename from
14079 Vface_resizing_fonts.
14080 (struct font_name): Rename member resizing_ratio to rescale_ratio.
14081 (font_rescale_ratio): Rename from font_resizing_ratio.
14082 (split_font_name): Set font->rescale_ratio.
14083 (better_font_p): Pay attention to font->rescale_ratio.
14084 (build_scalable_font_name): Likewise. Change RESX, and RESY
14085 fields.
14086 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14087
140882008-02-01 Kenichi Handa <handa@m17n.org>
14089
14090 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
14091 (Qutf_16_le): Remove these variables.
14092 (syms_of_coding): Don't DEFSYM them.
14093 (decode_coding_utf_16): Fix handling of BOM.
14094 (encode_coding_utf_16): Fix handling of BOM.
14095
140962008-02-01 Kenichi Handa <handa@m17n.org>
14097
14098 * fileio.c (Finsert_file_contents): On replacing, before decoding
14099 the file into the work buffer, set point of the work buffer to the end.
14100
141012008-02-01 Dave Love <fx@gnu.org>
14102
14103 * coding.c (Fcheck_coding_systems_region): Fix type errors.
14104
141052008-02-01 Dave Love <fx@gnu.org>
14106
14107 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14108 and fix C types.
14109
141102008-02-01 Kenichi Handa <handa@m17n.org>
14111
14112 * xdisp.c (SKIP_GLYPHS): New macro.
14113 (set_cursor_from_row): Pay attention to string display properties.
14114
14115 * category.c (copy_category_entry): Fix for the case that RANGE
14116 is an integer.
14117
14118 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
14119
14120 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
14121
141222008-02-01 Kenichi Handa <handa@m17n.org>
14123
14124 * charset.c (Fcharset_id_internal): New function.
14125 (syms_of_charset): Defsubr it.
14126
14127 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
14128 with the last arg charset_list acquired from coding.
14129 (Fdefine_coding_system_internal): For ccl-based coding system, fix
14130 the attribute coding_attr_ccl_valids.
14131
14132 * coding.h (enum define_coding_ccl_arg_index): Set the first
14133 member coding_arg_ccl_decoder to coding_arg_max.
14134
14135 * ccl.h (ccl_driver): Adjust prototype.
14136
14137 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
14138 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 14139 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
14140 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
14141 last arg Qnil.
14142
141432008-02-01 Kenichi Handa <handa@m17n.org>
14144
14145 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
14146 call encode_char.
14147
14148 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
14149
141502008-02-01 Dave Love <fx@gnu.org>
14151
14152 * composite.c (syms_of_composite): Make composition_hash_table weak.
14153
141542008-02-01 Kenichi Handa <handa@m17n.org>
14155
14156 * dispextern.h (check_face_attributes, generate_ascii_font_name)
14157 (font_name_registry): Don't extern them.
14158 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
14159
14160 * fontset.h (Qfontset): Don't extern it.
14161 (new_fontset_from_font_name): Extern it.
14162
14163 * fontset.c: Give 8 extra slots to fontset objects.
14164 (Qfontset_info): New variable.
14165 (syms_of_fontset): Defsym it.
14166 (FONTSET_FALLBACK): New macro.
14167 (fontset_face): Try also the default fontset.
14168 (make_fontset): Realize a fallback fontset from the default fontset.
14169 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
14170 using split_font_name_into_vector and build_font_name_from_vector.
14171 (Fset_fontset_font): Access the elements of font_spec by enum
14172 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
14173 name by using split_font_name_into_vector.
14174 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
14175 generate a proper font name from the fontset name. Update
14176 Vfontset_alias_alist.
14177 (n_auto_fontsets): New variable.
14178 (new_fontset_from_font_name): New function.
14179 (Ffont_info): Store the information about fonts generated from the
14180 default fontset in the first extra slot of the returned char-table.
14181
14182 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
14183 (font_name_registry): Delete function.
14184 (split_font_name_into_vector): New function.
14185 (build_font_name_from_vector): New function.
14186 (font_list): The argument REGISTRY is now a list of registry names.
14187 (choose_face_font): If we are choosing an ASCII font, and ATTRS
14188 specifies an explicit font name, return the name as is. Make a
14189 list of registy names.
14190
14191 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
14192 of x_new_fontset.
14193 (Fx_create_frame): Don't call x_new_fontset here. Just use
14194 x_list_fonts to check the existence of fonts.
14195
14196 * xterm.h (x_new_fontset): Adjust prototype.
14197
14198 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
14199 string. Use new_fontset_from_font_name to create a fontset from a
14200 font name.
14201
142022008-02-01 Kenichi Handa <handa@m17n.org>
14203
14204 * syntax.c (Vfind_word_boundary_function_table): New name for
14205 Vnext_word_boundary_function_table.
14206 (find-word-boundary-function-table): New name for
14207 next-word-boundary-function-table.
14208
142092008-02-01 Dave Love <fx@gnu.org>
14210
14211 * Makefile.in: Fix some dependencies.
14212
14213 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
14214 set it to nil before returning.
14215
14216 * composite.c (update_compositions): Fix type error.
14217
14218 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
14219
142202008-02-01 Kenichi Handa <handa@m17n.org>
14221
14222 * xterm.c (x_new_font): Optimize for the case that the font is
14223 already set for the frame.
14224
142252008-02-01 Kenichi Handa <handa@m17n.org>
14226
14227 * chartab.c (char_table_ascii): Check if the char table contents
14228 is sub-char-table or not.
14229 (char_table_set, char_table_set_range): Fix argument to
14230 char_table_ascii.
14231
14232 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
14233 (detect_coding_utf_8, detect_coding_utf_16)
14234 (detect_coding_emacs_mule, detect_coding_iso_2022)
14235 (detect_coding_sjis, detect_coding_big5)
14236 (detect_coding_ccl, detect_coding_charset): Change argument MASK
14237 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
14238 sequence is valid in this coding system. Change callers.
14239 (MAX_ANNOTATION_LENGTH): New macro.
14240 (ADD_ANNOTATION_DATA): New macro.
14241 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
14242 ADD_ANNOTATION_DATA. Change the format of annotation data.
14243 (ADD_CHARSET_DATA): New macro.
14244 (emacs_mule_char): New argument ID. Change callers.
14245 (decode_coding_emacs_mule, decode_coding_iso_2022)
14246 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14247 Produce charset annotation data in coding->charbuf.
14248 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
14249 to charset annotation data in coding->charbuf.
14250 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
14251 coding->common_flags if the coding system is iso-2022 based and
14252 uses designation.
14253 (produce_composition): Adjust for the new annotation data format.
14254 (produce_charset): New function.
14255 (produce_annotation): Handle charset annotation.
14256 (handle_composition_annotation, handle_charset_annotation): New
14257 functions.
14258 (consume_chars): Handle charset annotation. Utilize the above two
14259 functions.
14260 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
14261 buffer, get the deleted text as a string and set
14262 coding->src_object to that string.
14263 (detect_coding, detect_coding_system): Use the new struct
14264 coding_detection_info.
14265
14266 * coding.h (struct coding_detection_info): New structure.
14267 (struct coding_system): Adjust prototype of the member `detector'.
14268 (CODING_ANNOTATE_CHARSET_MASK): New macro.
14269
142702008-02-01 Kenichi Handa <handa@m17n.org>
14271
14272 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
14273
142742008-02-01 Dave Love <fx@gnu.org>
14275
14276 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
14277 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
14278 to new local and nullify apropos_accumulate before returning.
14279 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
14280
142812008-02-01 Kenichi Handa <handa@m17n.org>
14282
14283 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
14284 correctly.
e3eea1fc 14285
aac0c6e3
MR
142862008-02-01 Dave Love <fx@gnu.org>
14287
14288 * fns.c (Flanginfo): Call synchronize_system_time_locale.
14289
142902008-02-01 Kenichi Handa <handa@m17n.org>
14291
14292 The following changes are to make character composition happen
14293 automatically on displaying.
14294
14295 * Makefile.in (lisp, shortlisp): Add composite.elc.
14296
14297 * composite.h (Qauto_composed, Vauto_composition_function)
14298 (Qauto_composition_function): Extern them.
14299
14300 * composite.c (Vcomposition_function_table)
14301 (Qcomposition_function_table): Delete variables.
14302 (Qauto_composed, Vauto_composition_function)
14303 (Qauto_composition_function): New variables.
14304 (run_composition_function): Don't call
14305 compose-chars-after-function.
14306 (update_compositions): Clear `auto-composed' text property.
14307 (compose_chars_in_text): Delete this function.
14308 (syms_of_composite): Staticpro Qauto_composed and
14309 Qauto_composition_function. Declare Vauto_composition_function as
14310 a Lisp variable.
14311
14312 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
14313
14314 * xdisp.c (it_props): Add an entry for Qauto_composed.
14315 (handle_auto_composed_prop): New function.
14316
14317 * xselect.c (selection_data_to_lisp_data): Don't call
14318 compose_chars_in_text.
14319
143202008-02-01 Dave Love <fx@gnu.org>
14321
14322 * keyboard.c (read_char): Modify checking around use of
14323 Vkeyboard_translate_table.
14324
14325 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14326 and fix C types.
14327
143282008-02-01 Kenichi Handa <handa@m17n.org>
14329
14330 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
14331 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14332 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
14333 the case that the last byte is '\r' correctly.
14334 (decode_coding): Flush out the unprocessed data correctly.
14335 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
14336
143372008-02-01 Dave Love <fx@gnu.org>
14338
14339 * xterm.c (XTread_socket): Fix changes for defined keysyms.
14340 Add XK_ISO... case.
14341 (xaw_scroll_callback): Revert last change.
14342
143432008-02-01 Kenichi Handa <handa@m17n.org>
14344
14345 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
14346
143472008-02-01 Kenichi Handa <handa@m17n.org>
14348
14349 * xfaces.c (Vface_resizing_fonts): New variable.
14350 (struct font_name): New member `resizing_ratio'.
14351 (font_resizing_ratio): New function.
14352 (split_font_name): Set font->resizing_ratio.
14353 (better_font_p): Pay attention to font->resizing_ratio.
14354 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
14355 RESX, and RESY fields.
14356 (try_alternative_families): Try scalable fonts if
14357 Vscalable_fonts_allowed is not Qt.
14358 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
14359
143602008-02-01 Dave Love <fx@gnu.org>
14361
14362 * xterm.c (xaw_scroll_callback): Cast correctly.
14363
143642008-02-01 Dave Love <fx@gnu.org>
14365
14366 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
14367 (lispy_kana_keys): Comment out.
14368 (make_lispy_event) [XK_kana_A]: Comment out.
14369
14370 * xterm.c (xaw_scroll_callback): Cast call_data.
14371 (XTread_socket): Deal with ASCII keysyms.
14372 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
14373
143742008-02-01 Dave Love <fx@gnu.org>
14375
14376 * xterm.c (Vx_keysym_table): New.
14377 (syms_of_xterm): Initialize it.
14378 (XTread_socket): Use it.
14379 From head: Eliminate incorrect optimization that tried to avoid
14380 decoding the output of X*LookupString.
14381 (x_get_font_repertory): Delete charset declaration.
14382
143832008-02-01 Kenichi Handa <handa@m17n.org>
14384
14385 * coding.c (detect_coding_charset): If only ASCII bytes are found,
14386 return 0.
14387 (Fdefine_coding_system_internal): Setup
14388 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
14389
143902008-02-01 Dave Love <fx@gnu.org>
14391
14392 * coding.c (Fcheck_coding_system): Doc fix.
14393
14394 * editfns.c (Finsert_byte): Return a proper value.
14395
143962008-02-01 Kenichi Handa <handa@m17n.org>
14397
14398 * coding.c (decode_coding): Fix args to translate_chars. Pay
14399 attention to Vstandard_translation_table_for_decode.
14400 (encode_coding): Fix args to translate_chars. Pay attention to
14401 Vstandard_translation_table_for_encode.
14402
14403 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
14404 SINGLE_BYTE_CHAR_P.
14405
14406 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
14407 not by SINGLE_BYTE_CHAR_P.
14408
14409 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
14410 SINGLE_BYTE_CHAR_P.
14411
14412 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
14413 SINGLE_BYTE_CHAR_P.
14414
14415 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
14416 by SINGLE_BYTE_CHAR_P.
14417
14418 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
14419 SINGLE_BYTE_CHAR_P.
14420
144212008-02-01 Dave Love <fx@gnu.org>
14422
14423 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
14424
144252008-02-01 Dave Love <fx@gnu.org>
14426
14427 * fns.c (Flanginfo): Fix typo.
14428
14429 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
14430
144312008-02-01 Kenichi Handa <handa@m17n.org>
14432
14433 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
14434 (detect_coding_emacs_mule, detect_coding_iso_2022)
14435 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
14436 incomplete byte sequence. Don't update *mask when correctly detected.
14437 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
14438 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
14439 (detect_coding, detect_coding_system): Adjust for the changes above.
14440
144412008-02-01 Kenichi Handa <handa@m17n.org>
14442
14443 * character.c (char_string): Rename from
14444 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
14445 (string_char): Rename from string_char.
14446
14447 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
14448 if C is greater than MAX_3_BYTE_CHAR.
14449 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
14450 string_char instead of string_char_with_unification.
14451
144522008-02-01 Dave Love <fx@gnu.org>
14453
14454 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
14455
144562008-02-01 Kenichi Handa <handa@m17n.org>
14457
14458 * keymap.c (push_key_description): Pay attention to force_multibyte.
14459
14460 * regex.c (re_search_2): Fix for the case of unibyte buffer.
14461
144622008-02-01 Dave Love <fx@gnu.org>
14463
14464 * charset.c (define_charset_internal): Rename `supprementary'.
14465
14466 * Makefile.in (lisp, shortlisp): Remove latin-N.
14467
144682008-02-01 Dave Love <fx@gnu.org>
14469
14470 * xfns.c (x_window, x_window): Use use_xim.
14471
14472 * xterm.c (use_xim): Initialize.
14473 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14474 (x_term_init): Maybe set use_xim.
14475
14476 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14477
144782008-02-01 Kenichi Handa <handa@m17n.org>
14479
14480 * search.c (search_buffer): Fix case-fold-search of multibyte
14481 characters.
14482 (boyer_moore): Rename the last argument to char_high_bits.
14483
144842008-02-01 Kenichi Handa <handa@m17n.org>
14485
14486 * xdisp.c (display_string): Fix for the case of zero width glyph.
14487
14488 * xfns.c (x_set_font): Change the error message of the case that
14489 x_new_fontset returns Qt.
14490
14491 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
14492 (Finternal_set_lisp_face_attribute): Use signal_error for the
14493 error of invalid fontset.
14494
14495 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
14496 fontset, return Qt.
14497
144982008-02-01 Dave Love <fx@gnu.org>
14499
14500 * unexelf.c (unexec): Make .got handling not SGI-specific.
14501
14502 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
14503
14504 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
14505
14506 * keyboard.c (read_key_sequence): Fix type error.
14507
14508 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
14509 type error.
14510
14511 * fontset.c (fontset_add): Return Lisp_Object.
14512
145132008-02-01 Dave Love <fx@gnu.org>
14514
14515 * charset.h (charset_ordered_list_tick): Declare extern.
14516
145172008-02-01 Kenichi Handa <handa@m17n.org>
14518
14519 The following changes (and some of 2008-02-01 changes of mine) are
14520 for handling syntax, category, and case conversion for unibyte
14521 characters by converting them to multibyte on the fly. With these
14522 changes, we don't have to setup syntax and case tables for unibyte
14523 characters in each language environment.
14524
14525 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
14526 multibyte if necessary.
14527
14528 * bytecode.c (Fbyte_code): Likewise.
14529
14530 * character.h (LEADING_CODE_LATIN_1_MIN)
14531 (LEADING_CODE_LATIN_1_MAX): New macros.
14532 (unibyte_to_multibyte_table): Extern it.
14533 (unibyte_char_to_multibyte): New macro.
14534 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
14535 (CHAR_LEADING_CODE): New macro.
14536 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
14537
14538 * character.c (unibyte_to_multibyte_table): New variable.
14539 (unibyte_char_to_multibyte): Move to character.h and define as macro.
14540 (multibyte_char_to_unibyte): If C is an eight-bit character,
14541 convert it to the corresponding byte value.
14542
14543 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
14544 not 1, signals an error. Update the elements of
14545 unibyte_to_multibyte_table.
14546 (init_charset_once): Initialize unibyte_to_multibyte_table.
14547 (syms_of_charset): Define the charset `iso-8859-1'.
14548
14549 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
14550 as is without converting it to unibyte. In a unibyte buffer,
14551 convert C to multibyte before checking the syntax.
14552
14553 * lisp.h (unibyte_char_to_multibyte): Delete extern.
14554
14555 * minibuf.c (Fminibuffer_complete_word): Use the macro
14556 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
14557
14558 * regex.h (struct re_pattern_buffer): New member target_multibyte.
14559
14560 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
14561 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
14562 that is zero, convert an eight-bit char to multibyte.
14563 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
14564 non-emacs case.
14565 (PATFETCH): Convert an eight-bit char to multibyte.
14566 (HANDLE_UNIBYTE_RANGE): New macro.
14567 (regex_compile): Setup the compiled pattern for multibyte chars
14568 even if the given regex string is unibyte. Use PATFETCH_RAW
14569 instead of PATFETCH in many places. To handle `charset'
14570 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
14571 only for ASCII chars.
14572 (analyse_first) <exactn>: Simplify because the compiled pattern
14573 is multibyte.
14574 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
14575 <charset>: Use CHAR_LEADING_CODE to get leading codes.
14576 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
14577 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
14578 multibyte always 1.
14579 (re_search_2): In emacs, set the locale variable multibyte to 1,
14580 otherwise to 0. New local variable target_multibyte. Check it
14581 to decide the multibyteness of STR1 and STR2. If
14582 target_multibyte is zero, convert unibyte chars to multibyte
14583 before translating and checking fastmap.
14584 (TARGET_CHAR_AND_LENGTH): New macro.
14585 (re_match_2_internal): In emacs, set the locale variable multibyte
14586 to 1, otherwise to 0. New local variable target_multibyte. Check
14587 it to decide the multibyteness of STR1 and STR2. Use
14588 TARGET_CHAR_AND_LENGTH to fetch a character from D.
14589 <charset, charset_not>: If multibyte is nonzero, check fastmap
14590 only for ASCII chars. Call bcmp_translate with
14591 target_multibyte, not with multibyte.
14592 <begline>: Declare the local variable C as `unsigned'.
14593 (bcmp_translate): Change the last arg name to target_multibyte.
14594
14595 * search.c (compile_pattern_1): Don't adjust the multibyteness of
14596 the regexp pattern and the matching target. Set cp->buf.multibyte
14597 to the multibyteness of the regexp pattern. Set
14598 cp->but.target_multibyte to the multibyteness of the matching target.
14599 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
14600 FETCH_STRING_CHAR_ADVANCE.
14601 (Freplace_match): Convert unibyte chars to multibyte.
14602
14603 * syntax.c (char_quoted, back_comment, scan_words)
14604 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
14605 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
14606 unibyte chars to multibyte.
14607 (skip_chars): Delete the arg syntaxp, and move the code for
14608 handling syntaxes to skip_syntaxes. Change callers.
14609 Fix the case that the multibyteness of STRING and the current
14610 buffer doesn't match.
14611 (skip_syntaxes): New function.
14612 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
14613 SINGLE_BYTE_CHAR_P.
14614
146152008-02-01 Kenichi Handa <handa@m17n.org>
14616
14617 * xfaces.c (QCfontset): New variable.
14618 (LFACE_FONTSET): New macro.
14619 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
14620 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
14621 (Finternal_set_lisp_face_attribute)
14622 (Finternal_get_lisp_face_attribute): Handle QCfontset.
14623 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
14624 check also LFACE_FONTSET_INDEX.
14625 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
14626 attrs[LFACE_FONT_INDEX].
14627 (syms_of_xfaces): Intern and staticpro QCfontset.
14628
14629 * dispextern.h (enum lface_attribute_index): New member
14630 LFACE_FONTSET_INDEX.
14631
14632 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
14633
146342008-02-01 Kenichi Handa <handa@m17n.org>
14635
14636 * coding.c (coding_set_destination): Fix coding->destination for
14637 the case converting a region.
14638 (encode_coding_utf_8): Encode eight-bit chars as single byte.
14639 (encode_coding_object): Fix coding->dst_pos and
14640 coding->dst_pos_byte for the case converting a region.
14641
14642 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
14643
14644 * character.h (BYTE8_STRING): New macro.
14645
14646 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
14647
146482008-02-01 Kenichi Handa <handa@m17n.org>
14649
14650 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
14651 characters by octal form.
14652
14653 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
14654
14655 * buffer.h (_fetch_multibyte_char_len): Delete extern.
14656 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
14657 _fetch_multibyte_char_len.
14658 (FETCH_CHAR_AS_MULTIBYTE): New macro.
14659
14660 * casetab.c (set_canon, set_identity, shuffle): Simplify.
14661
14662 * casefiddle.c (casify_object): Simplify. Handle the case that
14663 the case conversion change the byte length.
14664 (casify_region): Likewise.
14665
14666 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
14667
14668 * character.c (_fetch_multibyte_char_len): Delete this variable.
14669 (syms_of_character): Setup Vprintable_chars.
14670
14671 * editfns.c (Fchar_equal): Fix for the unibyte case.
14672 (Finsert_byte): New function.
14673 (syms_of_editfns): Defsubr it.
14674
14675 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
14676 of direct code 0x3ffff.
14677
14678 * search.c (Freplace_match): Fix for the unibyte case.
14679
146802008-02-01 Kenichi Handa <handa@m17n.org>
14681
14682 * lread.c (safe_to_load_p): Fix the logic.
14683
14684 * syntax.c (scan_words): Don't treat characters belonging to
14685 different scripts as constituting a word.
14686
14687 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14688
14689 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
14690
14691 * emacs.c (main): In the case of --unibyte, instead of aborting on
14692 finding non-empty buffer, make it unibyte.
14693
146942008-02-01 Kenichi Handa <handa@m17n.org>
14695
14696 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
14697 to create a fontset.
14698
146992008-02-01 Dave Love <fx@gnu.org>
14700
14701 * character.c (Funibyte_char_to_multibyte): Doc fix.
14702
14703 * xfns.c [HAVE_STDLIB_H]: Fix last change.
14704
147052008-02-01 Kenichi Handa <handa@m17n.org>
14706
14707 * fontset.c (fontset_add): Make the type `int'.
14708 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
14709
14710 * character.c (unibyte_char_to_multibyte)
14711 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
14712 charset_unibyte, not charset_primary.
14713
14714 * charset.h (charset_unibyte): Extern it instead of charset_primary.
14715
14716 * charset.c (charset_unibyte): Rename from charset_primary.
14717 (Funibyte_charset): Rename from Fprimary_charset.
14718 (Fset_unibyte_charset): Rename from Fset_primary_charset.
14719 (syms_of_charset): Adjust for the above changes.
14720
14721 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14722 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14723 it->multibyte_p is zero.
14724
14725 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
14726 Delete extern.
14727
147282008-02-01 Kenichi Handa <handa@m17n.org>
14729
14730 * coding.c (Fdefine_coding_system_internal): Fix category setting
14731 for a coding system of type iso-2022.
14732
147332008-02-01 Kenichi Handa <handa@m17n.org>
14734
14735 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
14736
147372008-02-01 Kenichi Handa <handa@m17n.org>
14738
14739 * syntax.c (Vnext_word_boundary_function_table): New variable.
14740 (next-word-boundary-function-table): Declare it as a Lisp variable
14741 in syms_of_syntax.
14742 (scan_words): Call functions in Vnext_word_boundary_function_table
14743 if any.
14744
14745 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
14746
14747 * fontset.c (fs_load_font): If fontp->charset is not negative,
14748 return fontp without setting its members.
14749
147502008-02-01 Dave Love <fx@gnu.org>
14751
14752 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
14753
14754 * m/sparc.h (HAVE_ALLOCA): Delete.
14755
14756 * s/irix6-5.h: Don't include strings.h.
14757 (bcopy, bzero, bcmp): Don't undef.
14758
14759 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
14760
14761 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
14762 (TIOCSIGSEND): Don't test IRIX6.
14763 (bcopy, bzero, bcmp): Define conditionally.
14764
147652008-02-01 Kenichi Handa <handa@m17n.org>
14766
14767 * buffer.c (Qas, Qmake, Qto): New variables.
14768 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
14769 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
14770
14771 * callproc.c (Fcall_process): Don't call insert_1_both directly if
14772 we are inserting a process output into a multibyte buffer.
14773
14774 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
14775 multibyte_char_to_unibyte.
14776
14777 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
14778 by the primary charset, make it eight-bit char.
14779 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
14780
14781 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
14782 (charset_8_bit__control, charset_8_bit_graphic)
14783 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
14784 (define_charset_internal): New function.
14785 (syms_of_charset): Call define_charset_internal for pre-defined
14786 charsets.
14787
14788 * charset.h (charset_8_bit): Extern it.
14789
14790 * coding.c (make_conversion_work_buffer): Adjust for the change
14791 of Fset_buffer_multibyte.
14792 (encode_coding_raw_text): Increment p0 in the loop.
14793
14794 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
14795
14796 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
14797 for the change of Fset_buffer_multibyte.
14798
14799 * fns.c (Fstring_to_multibyte): New function.
14800 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
14801
148022008-02-01 Dave Love <fx@gnu.org>
14803
14804 * xfns.c (x_put_x_image): Declare args.
14805
14806 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
14807 (try_font_list): Declare an arg.
14808
14809 * xdisp.c (message2_nolog, set_message): Declare an arg.
14810
14811 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
14812
14813 * syntax.c (scan_sexps_forward): Declare an arg.
14814
14815 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14816 Declare an arg.
14817
14818 * lisp.h (Fnew_fontset): Declare.
14819
14820 * keymap.c (push_key_description): Call CHARACTERP correctly.
14821
14822 * fontset.c (fontset_add): Declare args. Call make_number correctly.
14823 (face_for_char): Delete unused vars.
14824 (Fset_fontset_font): Doc fix. Delete unused vars.
14825
14826 * doc.c (Fsubstitute_command_keys): Delete unused vars.
14827
14828 * composite.c (update_compositions): Declare arg.
14829
14830 * cm.c (calccost, cmgoto): Declare args.
14831
14832 * charset.c: Remove `emacs' conditional. Doc fixes.
14833 (map_char_table_for_charset): Declare.
14834
14835 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
14836
14837 * ccl.c: Remove `emacs' conditional.
14838
148392008-02-01 Kenichi Handa <handa@m17n.org>
14840
14841 The following changes are to allow specifying multiple font
14842 patterns for a character range (specified by script or charset).
14843
14844 * Makefile.in (abbrev.o): Depend on syntax.h.
14845 (xfaces.o): Depend on charset.h.
14846
14847 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
14848 SINGLE_BYTE_CHAR_P.
14849
14850 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
14851
14852 * character.h (Vchar_script_table): Extern it.
14853
14854 * character.c (Vscript_alist): Delete.
14855 (Vchar_script_table, Qchar_script_table): New variable.
14856 (syms_of_character): Declare Vchar_script_table as a lisp variable
14857 and initialize it.
14858
14859 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
14860 have property char-table-extra-slots, make no extra slot.
14861
14862 * dispextern.h (struct face): Delete member `charset'.
14863 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
14864 SINGLE_BYTE_CHAR_P.
14865 (choose_face_font, lookup_non_ascii_face, font_name_registry):
14866 Add prototypes.
14867 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
14868 (generate_ascii_font_name): Rename from generate_ascii_font.
14869
14870 * fontset.h (get_font_repertory_func): New prototype.
14871 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
14872 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
14873
14874 * fontset.c (Qprepend, Qappend): New variables.
14875 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
14876 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
14877 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
14878 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
14879 (fontset_ref_and_range, fontset_add, reorder_font_vector)
14880 (load_font_get_repertory): New functions.
14881 (fontset_set): Delete.
14882 (fontset_face): New arg FACE. Return face ID, not face.
14883 Complete re-write to handle new fontset structure. Change caller.
14884 (free_face_fontset): Use ASET istead of AREF (X) = Y.
14885 (face_for_char): Don't call lookup_face.
14886 (make_fontset_for_ascii_face): New arg FACE.
14887 (fs_load_font): New arg CHARSET_ID. Don't check
14888 Vfont_encoding_alist here.
14889 (find_font_encoding): New function.
14890 (list_fontsets): Use STRINGP, not ! NILP.
14891 (accumulate_script_ranges): New function.
14892 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
14893 re-written to handle new fontset structure.
14894 (Ffontset_font): Return a copy of element.
14895 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
14896 docstring of font-encoding-alist.
14897
14898 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
14899 (Fset_fotset_font): Fix arguments to 5.
14900
14901 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
14902
14903 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
14904 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14905 (highlight_trailing_whitespace): Adjust for the change of
14906 lookup_named_face.
14907
14908 * xfaces.c: Include charset.h.
14909 (load_face_font): Delete argument C. Change caller.
14910 (generate_ascii_font_name): Rename from generate_ascii_font.
14911 (font_name_registry): New function.
14912 (cache_face): Store ascii faces before non-ascii faces in buckets.
14913 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
14914 Lookup only ascii faces.
14915 (lookup_non_ascii_face): New function.
14916 (lookup_named_face): Delete argument C. Change caller.
14917 (lookup_derived_face): Delete argument C. Change caller.
14918 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
14919 a string, just call font_list with it.
14920 (choose_face_font): Delete arguments FACE and C. New arg
14921 FONT_SPEC. Change caller.
14922 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
14923 Change caller.
14924 (realize_non_ascii_face): New function.
14925 (realize_x_face): Call load_face_font here.
14926 (realize_tty_face): Delete argument C. Change caller.
14927 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
14928 get a face ID.
14929 (dump_realized_face): Don't print charset of FACE.
14930
14931 * xfns.c (x_set_font): Always call x_new_fontset and
14932 store_frame_parameter.
14933 (Fx_create_frame): Call x_new_fontset, not x_new_font.
14934 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
14935
14936 * xterm.h (x_get_font_repertory): Extern it.
14937
14938 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14939 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14940 it->multibyte_p is zero.
14941 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14942 (x_new_fontset): If FONTSETNAME doesn't match any existing
14943 fontsets, create a new one.
14944 (x_get_font_repertory): New function.
14945
149462008-02-01 Kenichi Handa <handa@m17n.org>
14947
14948 * coding.c (Ffind_coding_systems_region_internal): Detect an
14949 ASCII only string correctly.
14950
14951 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
14952 version is 0.
14953
149542008-02-01 Kenichi Handa <handa@m17n.org>
14955
14956 * lread.c: Include "coding.h".
14957 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
14958 (load_each_byte, unread_char): New variables.
14959 (readchar_backlog): Delete.
14960 (readchar): Return a character unless load_each_byte is nonzero.
14961 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
14962 cons. If unread_char is not -1, simply return it.
14963 (unreadchar): Handle the case that readcharfun is
14964 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
14965 (read_multibyte): Delete.
14966 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
14967 (read_emacs_mule_char): New functions.
14968 (Fload): Even if the file doesn't have the extension ".elc", if
14969 safe_to_load_p returns a positive version number, assume that the
14970 file contains bytecompiled code. If the version is less than 22,
14971 load the file while decoding multibyte sequences by emacs-mule.
14972 (readevalloop): Don't use readchar_backlog.
14973 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
14974 (Fread_from_string): Pay attention to the case that STREAM is a cons.
14975 (read_escape): Delete the arg BYTEREP.
14976 (read1): Set load_each_byte to 1 temporarily while handling
14977 #@NUMBER. Don't call read_multibyte.
14978 (read_vector): Call Fread with a cons. If readcharfun is
14979 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
14980 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
14981 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
14982 and Qload_force_doc_strings.
14983
149842008-02-01 Kenichi Handa <handa@m17n.org>
14985
14986 * xdisp.c (face_before_or_after_it_pos): Call
14987 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
14988
149892008-02-01 Kenichi Handa <handa@m17n.org>
14990
14991 * character.h (TRAILING_CODE_P): New macro.
14992 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
14993 (string_char_with_unification): Fix prototype.
14994 (Vscript_alist): Extern it.
14995
14996 * character.c (Vscript_alist): New variable.
14997 (string_char_with_unification, str_as_unibyte)
14998 (string_escape_byte8): Add `const' to local variables.
14999 (syms_of_character): Declare script-alist as a Lisp variable.
15000
15001 * charset.h (Vcharset_ordered_list): Extern it.
15002 (charset_ordered_list_tick): Extern it.
15003 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
15004 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
15005 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
15006 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
15007 (Funify_charset): Adjust for the change of Funify_charset.
15008
15009 * charset.c (charset_ordered_list_tick): New variable.
15010 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
15011 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
15012 deunify intead of unify a charset.
15013 (string_xstring_p): Add `const' to local variables.
15014 (find_charsets_in_text): Add `const' to arguments and local variables.
15015 (encode_char): Adjust for the change of Funify_charset. Fix
15016 detecting of invalid code.
15017 (Fset_charset_priority): Increment charset_ordered_list_tick.
15018 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
15019 and TO_CODE.
15020
15021 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
15022 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
15023 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
15024 (decode_coding_ccl, consume_chars)
15025 (Ffind_coding_systems_region_internal)
15026 (Fcheck_coding_systems_region): Add `const' to local variables.
15027
15028 * print.c (print_object): Use octal form for printing the
15029 contents of a bool vector.
15030
150312008-02-01 Dave Love <fx@gnu.org>
15032
15033 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
15034 <version == 20>: Refuse to load.
15035
150362008-02-01 Dave Love <fx@gnu.org>
15037
15038 * fns.c: Move coding.h.
15039 (Qcodeset, Qdays, Qmonths): New.
15040 (concat): Use CHARACTERP instead of INTEGERP.
15041 (Flocale_codeset): Delete.
15042 (Flanginfo): New function.
15043 (syms_of_fns): Change accordingly.
15044
15045 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
15046
150472008-02-01 Dave Love <fx@gnu.org>
15048
15049 * casetab.c (init_casetab_once, init_casetab_once): Fix
15050 CHAR_TABLE_SET call.
15051
15052 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
15053
15054 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
15055
15056 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
15057 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
15058 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
15059
15060 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
15061
15062 * coding.c (ENCODE_DESIGNATION, decode_eol)
15063 (make_conversion_work_buffer, code_conversion_restore)
15064 (Fdefine_coding_system_internal): Convert Lisp types.
15065 (code_conversion_restore): Use EQ, not ==.
15066 (Fencode_coding_string): Fix code_convert_string call.
15067
15068 * coding.h (code_convert_region): Fix prototype.
15069
15070 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
15071
15072 * fontset.c (fontset_ref, fontset_set, fs_load_font)
15073 (Ffontset_info): Convert Lisp types.
15074
15075 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
15076
15077 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
15078
15079 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
15080
15081 * chartab.c: Include "...h", not <...h> in some cases.
15082
15083 * callproc.c (Fcall_process): Remove unused variables.
15084
150852008-02-01 Dave Love <fx@gnu.org>
15086
15087 * coding.c (Fset_coding_system_priority): Allow null arg list.
15088
150892008-02-01 Dave Love <fx@gnu.org>
15090
15091 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15092 (Fself_insert_and_exit): Use CHARACTERP.
15093
15094 * callproc.c (Fcall_process): Remove unused vars.
15095
15096 * xterm.c (XTread_socket): Add extra dead keysyms.
15097
15098 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
15099
15100 * dispextern.h: Remove prototypes for redraw_frame,
15101 redraw_garbaged_frames.
15102
15103 * cmds.c (Fself_insert_command): Use CHARACTERP.
15104
15105 * chartab.c (make_sub_char_table): Remove unused var.
15106 (Fset_char_table_default, Fmap_char_table): Doc fix.
15107
15108 * keymap.c (access_keymap): Remove generic char code.
15109 (push_key_description): Use CHARACTERP.
15110
151112008-02-01 Dave Love <fx@gnu.org>
15112
15113 * charset.c: Doc fixes.
15114 (Funify_charset): Extra checking.
15115
151162008-02-01 Dave Love <fx@gnu.org>
15117
15118 * lread.c: Remove some unused variables.
15119 (safe_to_load_p): If safe, return the magic number version byte.
15120 (Fload): Maybe use load-with-code-conversion.
15121
151222008-02-01 Kenichi Handa <handa@m17n.org>
15123
15124 * category.c (Fmodify_category_entry): Don't modify the contents
15125 of category_set for characters out of the range. Avoid
15126 unnecessary modification.
15127
15128 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
15129 Vchar_unify_table. The default value of the table is now nil.
15130
15131 * character.c (syms_of_character): Setup Vchar_width_table for
15132 eight-bit-control and raw-byte chars.
15133
15134 * charset.h (enum define_charset_arg_index): Delete
15135 charset_arg_parents and add charset_arg_subset and
15136 charset_arg_superset.
15137 (enum charset_attr_index): Delete charset_parents and add
15138 charset_subset and charset_superset.
15139 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
15140 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
15141 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
15142 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
15143 (CHARSET_SUPERSET): New macros.
15144 (charset_work): Extern it.
15145 (ENCODE_CHAR): Use charset_work.
15146 (CHAR_CHARSET_P): Adjust for the change of encoder format.
15147 (map_charset_chars): Extern it.
15148
15149 * charset.c (load_charset_map): Set the default value of encoder
15150 and deunifier char-tables to nil.
15151 (map_charset_chars): Change argument. Change callers. Use
15152 map_char_table_for_charset instead of map_char_table.
15153 (Fmap_charset_chars): New optional args from_code and to_code.
15154 (Fdefine_charset_internal): Adjust for the change of
15155 `define-charset' (:parents -> :subset or :superset).
15156 (charset_work): New variable.
15157 (encode_char, syms_of_charset): Adjust for the change of
15158 Fdefine_charset_internal.
15159 (Ffind_charset_string): Setup the vector `charsets' correctly.
15160
15161 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
15162 the previous change.
15163 (char_table_ref_and_range): Adjust for the above change.
15164 (map_sub_char_table_for_charset): New function.
15165 (map_char_table_for_charset): New function.
15166
15167 * keymap.c (describe_vector): Handle a char-table directly here.
15168 (describe_char_table): Delete.
15169
15170 * lisp.h (map_charset_chars): Delete.
15171
151722008-02-01 Dave Love <fx@gnu.org>
15173
15174 * fns.c (count_combining): Comment out (unused).
15175 (Flocale_codeset): New.
15176 (syms_of_fns): Defsubr it.
15177
15178 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
15179 (size_t): Remove.
15180
151812008-02-01 Dave Love <fx@gnu.org>
15182
15183 * Makefile.in (chartab.o): Depend on charset.h.
15184
151852008-02-01 Kenichi Handa <handa@m17n.org>
15186
15187 * character.c (syms_of_character): Set the default value of
15188 Vprintable_chars to Qnil.
15189
151902008-02-01 Dave Love <fx@gnu.org>
15191
15192 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
15193
151942008-02-01 Kenichi Handa <handa@m17n.org>
15195
15196 * charset.c (load_charset_map): Handle the case that from < to
15197 correctly.
15198
15199 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
15200 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
15201 Pay attention to raw-8-bit chars.
15202
152032008-02-01 Kenichi Handa <handa@m17n.org>
15204
15205 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
15206 It is not bytecompiled now.
15207
15208 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
15209 (charset_jisx0208): New variables.
15210 (Fdefine_charset_internal): Setup them if appropriate.
15211 (init_charset_once): Initialize them to -1.
15212
15213 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
15214 (charset_jisx0208): Extern them.
15215
15216 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
15217 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
15218 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
15219 (setup_iso_safe_charsets): Fix arguments to Fassq.
15220 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
15221 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
15222 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
15223 (encode_coding_iso_2022): Change the 1st arg to
15224 ENCODE_ISO_CHARACTER to a variable.
15225
152262008-02-01 Kenichi Handa <handa@m17n.org>
15227
15228 * charset.h (enum define_charset_arg_index): New enums
15229 charset_arg_min_code and charset_arg_max_code.
15230 (struct charset): New member char_index_offset.
15231
15232 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
15233 Take charset->char_index_offset into account.
15234 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
15235 args[charset_arg_max_code]. Setup charset.char_index_offset.
15236 (syms_of_charset): Fix args to Fdefine_charset_internal.
15237
152382008-02-01 Dave Love <fx@gnu.org>
15239
15240 * coding.c (decode_coding_utf_8): Reject overlong sequences.
15241
152422008-02-01 Dave Love <fx@gnu.org>
15243
15244 * coding.c: Doc fixes.
15245 (Fcoding_system_aliases): Fix return value.
15246 (Qmac): Remove (duplicated) definition.
15247
152482008-02-01 Dave Love <fx@gnu.org>
15249
15250 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
15251 functions.
15252
15253 * character.c (Fstring): Doc fix.
15254
15255 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
15256
15257 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
15258 ids.
15259 (font-encoding-alist): Doc fix.
15260
152612008-02-01 Dave Love <fx@gnu.org>
15262
15263 * term.c (costs_set): Declare static, non-initialized for pcc.
15264 (encode_terminal_code): Remove unused var.
15265
15266 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15267 for K&R.
15268
15269 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
15270
15271 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
15272 (suffixes): Move out of make_subsidiaries for K&R.
15273
15274 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
15275
15276 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
15277
152782008-02-01 Dave Love <fx@gnu.org>
15279
15280 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
15281
15282 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
15283
152842008-02-01 Yong Lu <lyongu@asia-infonet.com>
15285
15286 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
15287
15288 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
15289
152902008-02-01 Kenichi Handa <handa@m17n.org>
15291
15292 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
15293 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
15294
152952008-02-01 Kenichi Handa <handa@m17n.org>
15296
15297 * coding.c (decode_coding_charset): Adjust for the change of
15298 Fdefine_coding_system_internal.
15299 (Fdefine_coding_system_internal): For a coding system of
15300 `charset' type, store a list of charset IDs in
15301 `charset_attr_charset_valids' element of coding attributes.
15302
153032008-02-01 Kenichi Handa <handa@m17n.org>
15304
15305 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
15306 (emacs_mule_char): New arg src. Delete arg `composition'. Change
15307 caller. Handle 2-byte and 3-byte charsets correctly.
15308 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
15309 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
15310 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
15311 (DECODE_EMACS_MULE_21_COMPOSITION): Call
15312 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
15313 sequence.
15314 (decode_coding_emacs_mule): Handle composition correctly. Rewind
15315 `src' and `consumed_chars' correctly before calling emacs_mule_char.
15316 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
15317 and alt&rule composition.
15318 (decode_coding_iso_2022): Handle composition correctly.
15319 (init_coding_once): Setup emacs_mule_bytes for private charsets.
15320
15321 * charset.c (Fdefine_charset_internal): Fix bug for the case of
15322 re-defining a charset. If the charset has :emacs-mule-id, setup
15323 emacs_mule_bytes.
15324 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
15325
153262008-02-01 Kenichi Handa <handa@m17n.org>
15327
15328 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
15329 (encode_coding_big5, encode_coding_charset): If coding requires safe
15330 encoding, produce a character specified by
15331 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15332
153332008-02-01 Dave Love <fx@gnu.org>
15334
15335 * xterm.c (XSetIMValues): Declare.
15336
15337 * process.c: Conditionally include sys/wait.h, pty.h.
15338
15339 * print.c (print_object): Fix print format for 64-bit systems.
15340
15341 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
15342
15343 * buffer.c (emacs_strerror): Declare.
15344
15345 * fontset.c (Fclear_face_cache): Declare.
15346 (accumulate_font_info): Comment-out (unused).
15347 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
15348 variables.
15349
15350 * character.h (string_escape_byte8): Declare.
15351
15352 * charset.c (load_charset_map, load_charset_map_from_file): Remove
15353 unused vars.
15354 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
15355 (Fmap_charset_chars): Doc fix.
15356
15357 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
15358 (Fset_coding_system_priority, Fset_coding_system_priority)
15359 (Fdefine_coding_system_internal): Doc fix.
15360
153612008-02-01 Dave Love <fx@gnu.org>
15362
15363 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
15364
153652008-02-01 Kenichi Handa <handa@m17n.org>
15366
15367 * character.c (string_escape_byte8): Make multibyte string with
15368 correct size.
15369
15370 * charset.c (Fmake_char): Delete unnecessary code.
15371
153722008-02-01 Kenichi Handa <handa@m17n.org>
15373
15374 * xfns.c (x_encode_text): Allocate coding.destination here, and
15375 call encode_coding_object with dst_object Qnil.
15376
15377 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
15378 multibyte form correctly.
15379
15380 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
15381 against Vfont_encoding_alist.
15382
15383 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
15384 handling of charset list.
15385 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
15386 (decode_coding_object): Move point to coding->dst_pos before
15387 calling post-read-conversion function.
15388 (encode_coding_object): Give correct arguments to
15389 pre-write-conversion. Ignore the return value of
15390 pre-write-conversion function. Pay attention to the case that
15391 pre-write-conversion changes the current buffer. If dst_object is
15392 Qt, even if coding->src_bytes is zero, allocate at least one byte
15393 to coding->destination.
15394
15395 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
15396
15397 * charset.c (Fmake_char): Make it more backward compatible.
15398 (Fmap_charset_chars): Fix docstring.
15399
154002008-02-01 Dave Love <fx@gnu.org>
15401
15402 * coding.c: Doc fixes.
15403 (Fdefine_coding_system_alias): Use names, not symbols, in
15404 coding-system-alist.
15405
154062008-02-01 Kenichi Handa <handa@m17n.org>
15407
15408 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
15409 of calling free_realized_face.
15410
154112008-02-01 Yong Lu <lyongu@asia-infonet.com>
15412
15413 * charset.c (read_hex): Don't treat SPC as a comment starter.
15414 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
15415 (Fdecode_char): Fix typo.
15416
154172008-02-01 Kenichi Handa <handa@m17n.org>
15418
15419 * charset.h (struct charset): New member `code_space_mask'.
15420
15421 * coding.c (coding_set_source): Delete the local variable beg_byte.
15422 (encode_coding_charset, Fdefine_coding_system_internal):
15423 Delete the local variable charset.
15424 (Fdefine_coding_system_internal): Setup
15425 attrs[coding_attr_charset_valids] correctly.
15426
15427 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
15428 member to check if CODE is valid or not.
15429 (Fdefine_charset_internal): Initialize `code_space_mask' member.
15430 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
15431 is within the range of charset->min_code and carset->max_code.
15432
154332008-02-01 Dave Love <fx@gnu.org>
15434
15435 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
15436
15437 * dispextern.h (generate_ascii_font): Fix return type.
15438
15439 * xfaces.c (generate_ascii_font): Fix arg declaration.
15440
15441 * coding.c (coding_inherit_eol_type)
15442 (Fset_terminal_coding_system_internal)
15443 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
15444
154452008-02-01 Kenichi Handa <handa@m17n.org>
15446
15447 * coding.c (decode_coding_charset, encode_coding_charset): Handle
15448 multiple charsets correctly.
15449
154502008-02-01 Kenichi Handa <handa@m17n.org>
15451
15452 * search.c (boyer_moore): Fix handling of multibyte character
15453 translation.
15454
15455 * xdisp.c (display_mode_element): When the variable `elt' is
15456 changed, update `this' and `lisp_string'.
15457
154582008-02-01 Kenichi Handa <handa@m17n.org>
15459
15460 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
15461
15462 * callproc.c (Fcall_process): Be sure to give the current buffer
15463 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
15464
15465 * charset.c (struct charset_map_entries): New struct.
15466 (load_charset_map): Rename from parse_charset_map. New args
15467 entries and n_entries. Change caller.
15468 (load_charset_map_from_file): Rename from load_charset_map.
15469 Change caller. New arg control_flag. Call load_charset_map at
15470 the tail.
15471 (load_charset_map_from_vector): New function.
15472 (Fdefine_charset_internal): Setup charset.compact_codes_p.
15473 (encode_char): If the charset is compact, change a character index
15474 to a code point.
15475
15476 * coding.c (coding_alloc_by_making_gap): Check the case that the
15477 source and destination are the same correctly.
15478 (decode_coding_raw_text): Set coding->consumed_char and
15479 coding->consumed to 0.
15480 (produce_chars): If coding->chars_at_source is nonzero, update
15481 coding->consumed_char and coding->consumed before calling
15482 alloc_destination.
15483 (Fdefine_coding_system_alias): Register ALIAS in
15484 Vcoding_system_alist.
15485 (syms_of_coding): Define `no-conversion' coding system at the tail.
15486
15487 * fileio.c (Finsert_file_contents): Set coding_system instead of
15488 val. If the current buffer is multibyte, always call
15489 decode_coding_gap.
15490
15491 * xfaces.c (try_font_list): Give higher priority to fontset's
15492 family than face's family.
15493
154942008-02-01 Kenichi Handa <handa@m17n.org>
15495
15496 * callproc.c (Fcall_process): Be sure to give the current buffer
15497 to decode_coding_c_string.
15498
15499 * xfaces.c (try_font_list): Give a family specified in a fontset
15500 higher priority than a family specified in a face.
15501
155022008-02-01 Kenichi Handa <handa@m17n.org>
15503
15504 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
15505 Fix arguments to insert_from_buffer.
15506
15507 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
15508
155092008-02-01 Kenichi Handa <handa@m17n.org>
15510
15511 * coding.c (produce_chars): Set the variable `multibytep' correctly.
15512 (decode_coding_gap): Set coding->dst_multibyte correctly.
15513
155142008-02-01 Kenichi Handa <handa@m17n.org>
15515
15516 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
15517 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
15518 (encode_coding_utf_16): Substitute coding->default_char for
15519 non-Unicode characters.
15520 (decode_coding): Don't call record_insert here.
15521 (setup_coding_system): Initialize `surrogate' of
15522 coding->spec.utf_16 to 0.
15523 (EMIT_ONE_BYTE): Fix for multibyte case.
15524
15525 * insdel.c (insert_from_gap): Call record_insert.
15526
155272008-02-01 Kenichi Handa <handa@m17n.org>
15528
15529 * casefiddle.c (casify_region): Fix multibyte case.
15530
15531 * character.c (c_string_width): Add return type `int'.
15532 (char_string_with_unification): Delete arg ADVANCED.
15533
15534 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
15535 (CHAR_STRING): Adjust for the change of char_string_with_unification.
15536 (CHAR_STRING_ADVANCE): Make it do-while statement.
15537
15538 * chartab.c (sub_char_table_set_range): Optimize for the case
15539 DEPTH == 3. Add workaround code for a GCC optimization bug.
15540
15541 * charset.c (parse_charset_map): Remove an unused variable.
15542
15543 * coding.c: Delete unused variables.
15544
15545 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
15546 earlier. If inserted is zero and the coding system doesn't
15547 require flushing, don't call decode_coding_gap.
15548
15549 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
15550
155512008-02-01 Kenichi Handa <handa@m17n.org>
15552
15553 The following changes are for using Unicode as an internal
15554 character model, and use UTF-8 format for buffer/string
15555 representation.
15556
15557 * .gdbinit (xchartable): Adjust for the change of char table structure.
15558 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
15559
15560 * Makefile.in (obj): Add character.o and chartab.o.
15561 (lisp, shortlisp): Remove utf-8.elc.
15562 (*.o): For many files, change dependency on charset.h to
15563 character.h, and add dependency on character.h.
15564 (character.o, chartab.o): New targets.
15565
15566 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
15567 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
15568 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
15569 of "charset.h".
15570
15571 * dired.c, filelock.c: Include "character.h".
15572
15573 * alloc.c: Include "character.h" instead of "charset.h".
15574 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
15575 (syms_of_alloc): Remove defsubr for Smake_char_table.
15576
15577 * buffer.c: Include "character.h" instead of "charset.h", don't
15578 include "coding.h".
15579 (Fset_buffer_multibyte): Adjust for UTF-8.
15580
15581 * buffer.h: EXFUN Fbuffer_live_p.
15582
15583 * callproc.c: Include "character.h" instead of "charset.h".
15584 (Fcall_process): Big change for the new code-conversion APIs.
15585
15586 * casetab.c: Include "character.h" instead of "charset.h".
15587 (set_canon, set_identity, shuffle): Adjust for the new
15588 map_char_table spec.
15589 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
15590 accessing the char table structure.
15591
15592 * chartab.c: New file that implements char table.
15593
15594 * category.c: Include "character.h".
15595 (copy_category_entry): New function.
15596 (copy_category_table): Call map_char_table and copy_category_entry.
15597 (Fmake_category_table): Initialize all top-level slots.
15598 (char_category_set): New function.
15599 (modify_lower_category_set): Delete.
15600 (Fmodify_category_entry): Call char_table_ref_and_range.
15601
15602 * category.h (CATEGORY_SET): Just call char_category_set.
15603
15604 * ccl.c: Include "character.h".
15605 (Qccl, Qcclp): New variables.
15606 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
15607 it's less than 256.
15608 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
15609 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
15610 and DST type.
15611 (ccl_driver): Change types of argument, adjust code accordingly.
15612 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
15613 ccl_driver.
15614 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
15615
15616 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
15617 New members src_multibyte, dst_multibyte, consumed, and produced.
15618 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
15619 (CODING_SPEC_CCL_PROGRAM): New macro.
15620 (ccl_driver): Update prototype.
15621 (Qccl, Qcclp, Fccl_program_p): Extern them.
15622 (CHECK_CCL_PROGRAM): New macro.
15623
15624 * character.c, character.h, chartab.c: New files.
15625
15626 * charset.c: Mostly re-written. Move character and multibyte sequence
15627 handling codes to character.c.
15628
15629 * charset.h: Mostly re-written. Move character and multibyte sequence
15630 handling codes to character.h.
15631
15632 * coding.c, coding.h: Mostly re-written.
15633
15634 * composite.c: Include "character.h" instead of "charset.h".
15635 (CHAR_WIDTH): Move to character.h.
15636 (HASH_KEY, HASH_VALUE): Delete.
15637
15638 * composite.h (enum composition_method): Change order of enumeration
15639 symbols.
15640
15641 * data.c: Include "character.h" instead of "charset.h".
15642 (Faref): Call CHAR_TABLE_REF for a char table.
15643 (Faset): Call CHAR_TABLE_SET for a char table.
15644
15645 * dispextern.h (free_realized_face, check_face_attribytes)
15646 (generate_ascii_font): Extern them.
15647 (free_realized_multibyte_face): Delete extern.
15648
15649 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
15650 table structure.
15651
15652 * editfns.c: Include "character.h" instead of "charset.h".
15653 (Fchar_to_string): Always call CHAR_STRING.
15654
15655 * emacs.c (main): Call init_charset_once, init_charset,
15656 syms_of_chartab, and syms_of_character.
15657
15658 * fileio.c: Include "character.h" instead of "charset.h".
15659 (Finsert_file_contents): Big change for the new code-conversion API.
15660 (choose_write_coding_system, Fwrite_region): Likewise.
15661 (build_annotations_2): Delete.
15662 (e_write): Big change for the new code-conversion API.
15663
15664 * fns.c: Include "character.h" instead of "charset.h".
15665 (copy_sub_char_table): Move to chartab.c.
15666 (Fcopy_sequence): Call copy_char_table for a char table.
15667 (concat): Delete codes calling count_multibyte.
15668 (string_char_to_byte, string_byte_to_char): Adjust for the new
15669 multibyte form.
15670 (internal_equal): Adjust for the change of char table structure.
15671 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
15672 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
15673 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
15674 (char_table_translate, optimize_sub_char_table)
15675 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
15676 chartab.c.
15677 (char_table_ref_and_index): Delete.
15678 (HASH_KEY, HASH_VALUE): Move to lisp.h.
15679 (Fmd5): Call preferred_coding_system instead of accessing
15680 Vcoding_category_list. Adjust for the new code-conversion API.
15681 (syms_of_fns): Move defsubr for char table related functions to
15682 chartab.c.
15683
15684 * fontset.c: Mostly re-written.
15685
15686 * fontset.h (struct font_info): Change type of the member encoding_type.
15687 (enum FONT_SPEC_INDEX): New enum.
15688 (fontset_font_pattern, fs_load_font): Update prototype.
15689 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
15690
15691 * indent.c: Include "character.h" instead of "charset.h".
15692 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
15693
15694 * insdel.c: Include "character.h" instead of "charset.h".
15695 (copy_text): Don't refer to Vnonascii_translation_table.
15696 (insert_from_gap): New function.
15697
15698 * keyboard.c: Include "character.h" instead of "charset.h".
15699 (command_loop_1): Never call direct_output_forward_char before
15700 a non-ASCII character.
15701 (read_char): If Vkeyboard_translate_table is a char table, always
15702 translate a character.
15703
15704 * keymap.c: Include "character.h".
15705 (store_in_keymap): Handle the case that IDX is a cons.
15706 (Fdefine_key): Handle the case that KEY is a cons and the car part
15707 is also a cons (range).
15708 (push_key_description): Adjust for the new character code.
15709 (describe_vector): Call describe_char_table for a char table.
15710 (describe_char_table): New function.
15711
15712 * keymap.h (describe_char_table): Extern it.
15713
15714 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
15715 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
15716 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
15717 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
15718 Delete.
15719 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
15720 structure.
15721 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
15722 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
15723 (CHARTAB_SIZE_BITS_3): New macros.
15724 (chartab_size): Extern it.
15725 (struct Lisp_Char_Table): Re-design.
15726 (struct Lisp_Sub_Char_Table): New structure.
15727 (HASH_KEY, HASH_VALUE): Move from fns.c.
15728 (CHARACTERBITS): Define as 22.
15729 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
15730 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
15731 (GC_SUB_CHAR_TABLE_P): New macro.
15732 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
15733 (code_convert_string_norecord): Deleted extern.
15734 (init_character_once, syms_of_character, init_charset)
15735 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
15736
15737 * lread.c: Include "character.h".
15738 (read_multibyte): New arg NBYTES.
15739 (read_escape): Change the meaning of returned *BYTEREP.
15740 (to_multibyte): Delete.
15741 (read1): Adjust the handling of char table and string.
15742
15743 * print.c: Include "character.h" instead of "charset.h".
15744 (print_string): Convert 8-bit raw bytes to octal form by
15745 string_escape_byte8.
15746 (print_object): Adjust for the new multibyte form. Print 8-bit
15747 raw bytes always in octal form. Handle sub char table correctly.
15748
15749 * process.c: Include "character.h" instead of "charset.h".
15750 (read_process_output, send_process): Adjust for the new
15751 code-conversion API.
15752
15753 * puresize.h (BASE_PURESIZE): Increase.
15754
15755 * regex.c: Include "character.h" instead of "charset.h".
15756 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
15757 (regex_compile): Accept a range whose starting and ending
15758 character have different leading bytes.
15759 (analyse_first): Adjust for the above change.
15760
15761 * search.c: Include "character.h" instead of "charset.h".
15762 (search_buffer, boyer_moore): Adjust for the new multibyte form.
15763 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
15764
15765 * syntax.c: Include "character.h" instead of "charset.h".
15766 (syntax_parent_lookup): Delete.
15767 (Fmodify_syntax_entry): Accept a cons as CHAR.
15768 (skip_chars): Adjust for the new multibyte form.
15769 (init_syntax_once): Call char_table_set_range instead of directly
15770 accessing the structure of a char table.
15771
15772 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
15773 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
15774 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
15775 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
15776
15777 * term.c: Include "buffer.h" and "character.h".
15778 (encode_terminal_code, write_glyphs): Adjust for the new
15779 code-conversion API.
15780 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
15781
15782 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
15783
15784 * xdisp.c: Include "character.h".
15785 (get_next_display_element): Adjust for the new multibyte form.
15786 (disp_char_vector): Adjust for the new char table structure.
15787 (decode_mode_spec_coding): Adjust for the new structure of
15788 coding system.
15789 (decode_mode_spec): Adjust for the new code-conversion API.
15790
15791 * xfaces.c: Include "character.h" instead of "charset.h".
15792 (load_face_font): Adjust for the change of choose_face_font and
15793 FS_LOAD_FONT.
15794 (generate_ascii_font): New function.
15795 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
15796 (set_font_frame_param): Adjust for the change of choose_face_font.
15797 (free_realized_face): Make it public.
15798 (free_realized_faces_for_fontset): Rename from
15799 free_realized_multibyte_face. Free also faces realized for ASCII.
15800 (choose_face_font): Change arguments. Adjust for the change of
15801 fontset_font_pattern and FS_LOAD_FONT.
15802
15803 * xfns.c: Include "character.h".
15804 (x_encode_text): Adjust for the new code-conversion API.
15805
15806 * xselect.c: Don't include "charset.h".
15807 (selection_data_to_lisp_data): Adjust for the new code conversion API.
15808
15809 * xterm.c: Include "character.h".
15810 (x_encode_char): New argument CHARSET. Change caller.
15811 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
15812 Call ENCODE_CHAR instead of SPLIT_CHAR.
15813 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
15814 CHAR_WIDTH instead of CHARSET_WIDTH.
15815 (XTread_socket): Adjust for the new code-conversion API.
15816 (x_new_font): Adjust for the change of FS_LOAD_FONT.
15817 (x_load_font): Adjust for the change of struct font.
15818
158192008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15820
15821 * xfaces.c (face_at_buffer_position): Remove unused vars.
15822
158232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15824
15825 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
15826 Fix overflow checking.
15827
158282008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15829
15830 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
15831 Cancel previous change.
15832
158332008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15834
15835 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
15836 ccl->eight_bit_control. Fix check for buffer overflow.
15837 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
15838 (ccl_driver): Initialize extra_bytes to 0.
15839
158402008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15841
15842 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
15843 return it ORed with ctrl_modifier.
15844
158452008-01-29 Miles Bader <miles@gnu.org>
15846
15847 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
15848
158492008-01-28 Jason Rumney <jasonr@gnu.org>
15850
15851 * w32.c (stat): Don't double check for networked drive.
15852
158532008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
15854
15855 * window.c (run_window_configuration_change_hook): New function.
15856 Code extracted from set_window_buffer. Set the selected frame.
15857 (set_window_buffer): Use it.
15858 * window.h (run_window_configuration_change_hook): Declare.
15859 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
15860
15861 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
15862
158632008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
15864
15865 * Makefile.in: Remove references to unused macros.
15866
158672008-01-26 Eli Zaretskii <eliz@gnu.org>
15868
15869 * w32.c (g_b_init_get_sid_sub_authority)
15870 (g_b_init_get_sid_sub_authority_count): New static variables.
15871 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
15872 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
15873 (init_user_info): Use them to retrieve uid and gid.
15874 Use 500/513, the Windows defaults, as Administrator's uid/gid.
15875 (fstat): Use pw_uid and pw_gid from the_passwd structure for
15876 st_uid and st_gid of the file.
15877
158782008-01-26 Jason Rumney <jasonr@gnu.org>
15879
15880 * w32.c (logon_network_drive): New function.
15881 (stat): Use it.
15882
158832008-01-26 Chong Yidong <cyd@stupidchicken.com>
15884
15885 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
15886 invisible text covered with an ellipsis.
15887
158882008-01-25 Richard Stallman <rms@gnu.org>
15889
15890 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
15891 jump back to beginning. Move some other initializations after that.
15892 (Qwindow_text_change_functions, Vwindow_text_change_functions):
15893 New variables.
15894 (syms_of_xdisp): Init them.
15895
15896 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
15897
15898 * buffer.c (reset_buffer_local_variables):
15899 Implement `permanent-local-hook'.
15900 (Qpermanent_local_hook): New variable.
15901 (syms_of_buffer): Init and staticpro it.
15902
159032008-01-25 Michael Albinus <michael.albinus@gmx.de>
15904
15905 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
15906
159072008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
15908
15909 * fns.c (Fclrhash): Return TABLE.
15910
159112008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15912
15913 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
15914 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
15915 is set even without positional changes.
15916 (x_scroll_bar_clear): Set bar->redraw_needed_p.
15917
15918 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
15919
159202008-01-23 Jason Rumney <jasonr@gnu.org>
15921
15922 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
15923
15924 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
15925 the unicode range available in MULE by locale-coding-system.
15926 Improve dbcs lead byte detection. Set event timestamp and modifiers
15927 earlier.
15928
159292008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15930
15931 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
15932 [MAC_OSX] (init_mac_osx_environment): Initialize it.
15933 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
15934 when used on child processes.
15935
159362008-01-21 Michael Albinus <michael.albinus@gmx.de>
15937
15938 * dbusbind.c (Fdbus_method_return_internal): Rename from
15939 Fdbus_method_return.
15940 (Fdbus_unregister_object): Move to dbus.el.
15941 (Fdbus_call_method, Fdbus_method_return_internal)
15942 (Fdbus_send_signal): Improve debug messages.
15943
159442008-01-20 Martin Rudalics <rudalics@gmx.at>
15945
15946 * undo.c (undo_inhibit_record_point): New variable.
15947 (syms_of_undo): Initialize it.
15948 (record_point): Don't record point when undo_inhibit_record_point
15949 is set.
15950
159512008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
15952
15953 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
15954
15955 * xdisp.c (Qauto_hscroll_mode): New var.
15956 (syms_of_xdisp): Initialize it.
15957 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
15958 window's buffer.
15959 (hscroll_windows): Don't check automatic_hscrolling_p here.
15960
15961 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
15962 vscroll if we're setting window-buffer to the value it already has.
15963
159642008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
15965
15966 * m/intel386.h: Remove references to XENIX.
15967
159682008-01-17 Andreas Schwab <schwab@suse.de>
15969
15970 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
15971 instead of HAVE_X86_64_LIB64_DIR.
15972 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
15973
159742008-01-17 Glenn Morris <rgm@gnu.org>
15975
15976 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
15977 to HAVE_X86_64_LIB64_DIR.
15978
159792008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
15980
15981 * s/irix3-3.h:
15982 * s/irix4-0.h:
15983 * s/386-ix.h:
15984 * s/domain.h:
15985 * s/hpux9-x11r4.h:
15986 * s/hpux9shxr4.h: Remove files for systems no longer supported.
15987
15988 * sysdep.c: Remove code containing references to symbols defined
15989 by unsupported systems.
15990
159912008-01-16 Glenn Morris <rgm@gnu.org>
15992
15993 * coding.c (select-safe-coding-system-function): Doc fix.
15994
159952008-01-15 Glenn Morris <rgm@gnu.org>
15996
15997 * config.in: Revert 2008-01-13 change: this is a generated file.
15998
159992008-01-13 Tom Tromey <tromey@redhat.com>
16000
16001 * lisp.h: Fix typo.
16002
160032008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16004
16005 * m/sequent-ptx.h:
16006 * m/sequent.h:
16007 * s/ptx.h:
16008 * s/ptx4-2.h:
16009 * s/ptx4.h: Remove files for systems no longer supported.
16010
16011 * callproc.c (Fcall_process): Fix previous change.
16012
160132008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16014
16015 * unexsunos4.c: Remove file, system not supported anymore.
16016
16017 * m/mips.h:
16018 * m/intel386.h:
16019 * callproc.c:
16020 * config.in:
16021 * ecrt0.c:
16022 * emacs.c:
16023 * fileio.c:
16024 * frame.c:
16025 * getpagesize.h:
16026 * keyboard.c:
16027 * lread.c:
16028 * process.c:
16029 * puresize.h:
16030 * sysdep.c:
16031 * systty.h:
16032 * syswait.h:
16033 * unexec.c:
16034 * xdisp.c:
16035 * alloc.c: Remove code containing references to symbols defined by
16036 unsupported systems.
16037
160382008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
16039
16040 * coding.c (detect_coding_mask): Fix previous change.
16041
160422008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
16043
16044 * coding.c (detect_coding_iso2022): New arg
16045 latin_extra_code_state. Allow Latin extra codes only
16046 when *latin_extra_code_state is nonzero.
16047 (detect_coding_mask): If there is a NULL byte, detect the encoding
16048 as UTF-16 or binary. If Latin extra codes exist, detect the
16049 encoding as ISO-2022 only when there's no other proper encoding is
16050 found.
16051
160522008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16053
16054 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
16055 #ifdef MAC_OS.
16056
160572008-01-08 Richard Stallman <rms@gnu.org>
16058
16059 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
16060
160612008-01-06 Nick Roberts <nickrob@snap.net.nz>
16062
16063 * keyboard.c (parse_menu_item): Don't enclose key bindings on
16064 menu bar in parentheses.
16065
160662008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
16067
16068 * m/7300.h:
16069 * m/acorn.h:
16070 * m/alliant-2800.h:
16071 * m/alliant.h:
16072 * m/alliant1.h:
16073 * m/alliant4.h:
16074 * m/altos.h:
16075 * m/amdahl.h:
16076 * m/apollo.h:
16077 * m/att3b.h:
16078 * m/aviion-intel.h:
16079 * m/aviion.h:
16080 * m/celerity.h:
16081 * m/clipper.h:
16082 * m/cnvrgnt.h:
16083 * m/convex.h:
16084 * m/cydra5.h:
16085 * m/delta88k.h:
16086 * m/dpx2.h:
16087 * m/dual.h:
16088 * m/elxsi.h:
16089 * m/f301.h:
16090 * m/gould-np1.h:
16091 * m/gould.h:
16092 * m/i860.h:
16093 * m/ibmps2-aix.h:
16094 * m/ibmrt-aix.h:
16095 * m/ibmrt.h:
16096 * m/irist.h:
16097 * m/is386.h:
16098 * m/isi-ov.h:
16099 * m/mega68.h:
16100 * m/mg1.h:
16101 * m/news-r6.h:
16102 * m/news-risc.h:
16103 * m/news.h:
16104 * m/nh3000.h:
16105 * m/nh4000.h:
16106 * m/ns16000.h:
16107 * m/ns32000.h:
16108 * m/nu.h:
16109 * m/orion.h:
16110 * m/orion105.h:
16111 * m/paragon.h:
16112 * m/pfa50.h:
16113 * m/plexus.h:
16114 * m/pyramid.h:
16115 * m/pyrmips.h:
16116 * m/sh3el.h:
16117 * m/sps7.h:
16118 * m/sr2k.h:
16119 * m/stride.h:
16120 * m/sun1.h:
16121 * m/sun2.h:
16122 * m/sun3-68881.h:
16123 * m/sun3-fpa.h:
16124 * m/sun3-soft.h:
16125 * m/sun3.h:
16126 * m/sun386.h:
16127 * m/symmetry.h:
16128 * m/tad68k.h:
16129 * m/tahoe.h:
16130 * m/targon31.h:
16131 * m/tek4300.h:
16132 * m/tekxd88.h:
16133 * m/tower32.h:
16134 * m/tower32v3.h:
16135 * m/ustation.h:
16136 * m/wicat.h:
16137 * m/xps100.h:
16138 * s/cxux.h:
16139 * s/cxux7.h:
16140 * s/dgux.h:
16141 * s/dgux4.h:
16142 * s/dgux5-4-3.h:
16143 * s/dgux5-4r2.h:
16144 * s/esix.h:
16145 * s/esix5r4.h:
16146 * s/hiuxmpp.h:
16147 * s/hiuxwe2.h:
16148 * s/iris3-5.h:
16149 * s/iris3-6.h:
16150 * s/isc2-2.h:
16151 * s/isc3-0.h:
16152 * s/isc4-0.h:
16153 * s/isc4-1.h:
16154 * s/newsos5.h:
16155 * s/newsos6.h:
16156 * s/osf1.h:
16157 * s/osf5-0.h:
16158 * s/riscix1-1.h:
16159 * s/riscix12.h:
16160 * s/sco4.h:
16161 * s/sco5.h:
16162 * s/sunos4-0.h:
16163 * s/sunos4-1.h:
16164 * s/sunos413.h:
16165 * s/sunos4shr.h:
16166 * s/umax.h:
16167 * s/unipl5-2.h:
16168 * s/xenix.h:
16169 * cxux-crt0.s:
16170 * unexapollo.c:
16171 * unexconvex.c:
16172 * unexenix.c:
16173 * unexsni.c: Remove files for systems no longer supported.
16174
16175 * m/intel386.h: Remove references to unsupported systems.
16176
16177 * w32.c (get_emacs_configuration): Remove reference to i860.
16178
16179 * sysdep.c: Remove dead code.
16180
161812008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
16182
16183 * s/rtu.h:
16184 * m/masscomp.h: Remove files. Platform is obsolete.
16185
161862008-01-04 Michael Albinus <michael.albinus@gmx.de>
16187
16188 * dbusbind.c (Fdbus_method_return): New function.
16189 (xd_read_message): Add the serial number to the event.
16190 (Fdbus_register_method): Activate the function.
16191
161922008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
16193
16194 * keyboard.c (read_key_sequence): Fix typo.
16195
161962008-01-03 Michael Albinus <michael.albinus@gmx.de>
16197
16198 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
16199 (xd_signature, xd_append_arg): Handle element type detection for
16200 empty arrays.
16201 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
16202 SDATA () calls; this must be solved more general.
16203 (Fdbus_register_signal): Use SBYTES instead of strlen.
16204
162052008-01-03 Magnus Henoch <magnus@zemdatav>
16206
16207 * dbusbind.c (xd_append_arg): Use unsigned char instead of
16208 unsigned int for byte values (necessary for big-endian platform).
16209 (Fdbus_call_method): Handle the case of no returned arguments.
16210
162112007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
16212
16213 * dbusbind.c (xd_read_message): Use non-static input_event struct.
16214
162152007-12-31 Magnus Henoch <mange@freemail.hu>
16216
16217 * dbusbind.c (xd_signature): Signature of variant is just "v".
16218
162192007-12-30 Michael Albinus <michael.albinus@gmx.de>
16220
16221 * dbusbind.c: Fix several errors and compiler warnings.
16222 Reported by Tom Tromey <tromey@redhat.com>.
16223 (XD_ERROR, XD_DEBUG_MESSAGE)
16224 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
16225 (xd_append_arg): Part for basic D-Bus types rewritten.
16226 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
16227 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
16228 appropriate.
16229 (xd_read_message): Return Qnil. Don't signal an error; it is not
16230 useful during event reading.
16231 (Fdbus_register_signal): Signal an error if the check for
16232 FUNCTIONP fails.
16233 (Fdbus_register_method): New function. The implementation is not
16234 complete, the call of the function signals an error therefore.
16235 (Fdbus_unregister_object): New function, renamed from
16236 Fdbus_unregister_signal. The initial check signals an error, if
16237 the object is not well formed.
16238
162392007-12-30 Richard Stallman <rms@gnu.org>
16240
16241 * textprop.c (get_char_property_and_overlay):
16242 Signal error if POSITION is out of range in a buffer.
16243
162442007-12-29 Martin Rudalics <rudalics@gmx.at>
16245
16246 * w32fns.c (Fx_create_frame): Make copy of frame parameters
16247 because the original parameters are in pure storage now.
16248
162492007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16250
16251 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
16252
162532007-12-22 Eli Zaretskii <eliz@gnu.org>
16254
16255 * callint.c (syms_of_callint) <command-history>: Add reference to
16256 history-length in the doc string.
16257
162582007-12-17 Jason Rumney <jasonr@gnu.org>
16259
16260 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16261 before passing as wParam.
16262
162632007-12-22 Michael Albinus <michael.albinus@gmx.de>
16264
16265 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
16266 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
16267 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
16268 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
16269 as number.
16270 (Fdbus_call_method): Fix docstring.
16271
162722007-12-21 Michael Albinus <michael.albinus@gmx.de>
16273
16274 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
16275 New macros.
16276 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
16277 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
16278 Simplify.
16279 (xd_signature): New function.
16280 (xd_append_arg): Compute also signatures. Major rewrite.
16281 (xd_retrieve_arg): Make debug messages friendly.
16282 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
16283 Check for signatures of arguments.
16284
162852007-12-19 Michael Albinus <michael.albinus@gmx.de>
16286
16287 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
16288 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
16289 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
16290 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
16291 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
16292 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
16293 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
16294 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
16295 (xd_retrieve_value): Remove. Functionality included in ...
16296 (xd_append_arg): New function.
16297 (Fdbus_call_method, Fdbus_send_signal): Apply it.
16298
162992007-12-16 Michael Albinus <michael.albinus@gmx.de>
16300
16301 * dbusbind.c (top): Include <stdio.h>.
16302 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
16303 dbus_message_new_method_call and dbus_message_new_signal.
16304 (Fdbus_register_signal): Rename unique_name to uname.
16305 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
16306 non-existing unique name. Fix typos in matching rule. Return an
16307 object which is useful in Fdbus_unregister_signal.
16308 (Fdbus_unregister_signal): Reimplementation, in order to remove
16309 only the corresponding entry.
16310 (Vdbus_registered_functions_table): Change the order of entries.
16311 Apply these changes in xd_read_message and Fdbus_register_signal.
16312
163132007-12-16 Andreas Schwab <schwab@suse.de>
16314
16315 * fileio.c (Finsert_file_contents): Fix overflow check to not
16316 depend on undefined integer overflow.
16317
163182007-12-14 Jason Rumney <jasonr@gnu.org>
16319
16320 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
16321 for characters above 127.
16322
163232007-12-13 Jason Rumney <jasonr@gnu.org>
16324
16325 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
16326 before dereferencing array.
16327 (lookup_vk_code): Remove zero comparison.
16328
163292007-12-14 Michael Albinus <michael.albinus@gmx.de>
16330
16331 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
16332 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
16333 Use `unsigned int' instead of `uint'.
16334 (xd_read_message, Fdbus_register_signal): Split expressions into
16335 multiple lines before operators "&&" and "||", according to the
16336 GNU Coding Standards.
16337
163382007-12-14 Eli Zaretskii <eliz@gnu.org>
16339
16340 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
16341
163422007-12-12 Juri Linkov <juri@jurta.org>
16343
16344 * buffer.c (Frename_buffer): In interactive spec replace
16345 `read-buffer' with `read-string' that uses `buffer-name-history'
16346 as history, and the current buffer's name as default.
16347
163482007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
16349
16350 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
16351 manipulating the backtrace manually.
16352 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
16353 (struct backtrace, backtrace_list): Remove.
16354 (command_loop_1): Remove dead var `no_direct'.
16355
16356 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
16357 preserve non-built-in buffer-local variables.
16358 (Fkill_all_local_variables): Don't re-create&re-set permanent
16359 buffer-local variables.
16360
163612007-12-09 Juri Linkov <juri@jurta.org>
16362
16363 * buffer.c (Frename_buffer): Change interactive spec from "s" to
16364 Lisp code that uses `read-buffer' with current buffer as default.
16365
163662007-12-08 Michael Albinus <michael.albinus@gmx.de>
16367
16368 * dbusbind.c (xd_read_message): Generate an event for every
16369 registered handler. There might be several handlers registered
16370 for the same signal.
16371 (Fdbus_register_signal): Don't overwrite a registration for the
16372 same signal. Add a new registration if handlers are different.
16373 (Vdbus_registered_functions_table): Rework doc string.
16374
163752007-12-07 Michael Albinus <michael.albinus@gmx.de>
16376
16377 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
16378 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
16379 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
16380 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
16381 Unify argument lists.
16382 (xd_read_message, Fdbus_register_signal): Reorder and extend event
16383 arguments and hash table keys. Use unique name for service.
16384 (Fdbus_unregister_signal): Remove checks.
16385 (Vdbus_registered_functions_table): Fix doc string.
16386
163872007-12-05 Magnus Henoch <mange@freemail.hu>
16388
16389 * process.c (make_process): Initialize pty_flag to 0.
16390
163912007-12-05 Jason Rumney <jasonr@gnu.org>
16392
16393 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
16394 specified XBMs.
16395
163962007-12-05 Richard Stallman <rms@gnu.org>
16397
16398 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
16399
164002007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16401
16402 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
16403 New variable.
16404 (mac_try_close_socket) [MAC_OSX]: New function.
16405 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
16406 Update cfsockets_for_select. Replace invalid CFRunLoop source.
16407
16408 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
16409 Use mac_try_close_socket.
16410
164112007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16412
16413 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
16414 reloc_base.
16415 (copy_dysymtab): Compute relocation base here.
16416 (rebase_reloc_address) [__ppc64__]: New function.
16417 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
16418 changed.
16419
164202007-12-05 Jason Rumney <jasonr@gnu.org>
16421
16422 * w32proc.c (sys_spawnve): Quote args with wildcards.
16423
164242007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16425
16426 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
16427 __objc_* sections.
16428 (unrelocate) [_LP64]: Set relocation base to address of data segment.
16429
164302007-12-05 Michael Albinus <michael.albinus@gmx.de>
16431
16432 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
16433 Move check for Vdbus_registered_functions_table to
16434 xd_read_queued_messages.
16435 (xd_read_queued_messages): Protect xd_read_message calls by
16436 internal_condition_case_1.
16437
164382007-12-04 Michael Albinus <michael.albinus@gmx.de>
16439
16440 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
16441 Qdbus_system_bus and Qdbus_session_bus, respectively.
16442 (Vdbus_intern_symbols): Remove.
16443 (Vdbus_registered_functions_table): New hash table.
16444 (XD_SYMBOL_INTERN_SYMBOL): Remove.
16445 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
16446 Rewrite in order to manage registered functions by hash table
16447 Vdbus_registered_functions_table.
16448
164492007-12-03 Jan Djärv <jan.h.d@swipnet.se>
16450
16451 * xterm.c: Update URL to Window Manager Specification in comment.
16452
164532007-12-02 Michael Albinus <michael.albinus@gmx.de>
16454
16455 * config.in (HAVE_DBUS): Add.
16456
16457 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
16458 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
16459 (obj): Add $(DBUS_OBJ).
16460 (LIBES): Add $(DBUS_LIBS).
16461 (dbusbind.o): New target.
16462
16463 * dbusbind.c: New file.
16464
16465 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
16466
16467 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
16468 (Qdbus_event): New Lisp symbol.
16469 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
16470 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 16471 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
16472
16473 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
16474
164752007-12-01 Richard Stallman <rms@gnu.org>
16476
16477 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
16478
164792007-11-30 Jason Rumney <jasonr@gnu.org>
16480
16481 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
16482 (w32con_reset_terminal_modes): Clear screen buffer.
16483 (w32_face_attributes): Don't use color indexes that are out of range.
16484 Only reverse the default colors.
16485
16486 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
16487 WINDOWSNT.
16488
16489 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
16490
164912007-11-29 Jason Rumney <jasonr@gnu.org>
16492
16493 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
16494 (w32_face_attributes): Use Vtty_defined_color_alist to determine
16495 if the terminal colors are initialized.
16496 (unspecified_fg, unspecified_bg): Remove unused declarations.
16497
164982007-11-29 Andreas Schwab <schwab@suse.de>
16499
16500 * keyboard.c (apply_modifiers): Fix typo.
16501
165022007-11-29 Richard Stallman <rms@gnu.org>
16503
16504 * keymap.c (Fcurrent_local_map): Doc fix.
16505
165062007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
16507
16508 * s/gnu-kfreebsd.h: New file.
16509
165102007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
16511
16512 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
16513 Don't cast redundantly.
16514
16515 * keyboard.c (KEY_TO_CHAR): New macro.
16516 (parse_modifiers, apply_modifiers): Accept integer arguments.
16517 (read_key_sequence): Use them to unify the "shift->unshift" mapping
16518 for chars and symbol keys.
16519 After doing such remapping, apply function-key-map again.
16520
165212007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
16522
16523 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
16524 compiled anymore.
16525
165262007-11-26 Andreas Schwab <schwab@suse.de>
16527
16528 * process.c (list_processes_1): Fix indentation level of the
16529 command column.
16530
165312007-11-23 Andreas Schwab <schwab@suse.de>
16532
16533 * editfns.c (Fformat): Handle %c specially since it requires the
16534 argument to be of type int.
16535
165362007-11-23 Markus Triska <markus.triska@gmx.at>
16537
16538 * emacs.c (main): Call init_editfns before init_process, since
16539 init_process sets Vprocess_connection_type depending on OS release.
16540
165412007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
16542
16543 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
16544 (find_symbol_value): Use do_symval_forwarding.
16545
16546 * data.c (set_internal): Set the value in the `cons-cell' (for
16547 Buffer_Local_values) not only for frame-local variables.
16548
165492007-11-22 Andreas Schwab <schwab@suse.de>
16550
16551 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
16552 values to sprintf.
16553 * keymap.c (Fsingle_key_description): Likewise.
16554 * print.c (print_object): Likewise.
16555
165562007-11-22 Jan Djärv <jan.h.d@swipnet.se>
16557
16558 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
16559 file for image is nil.
16560
165612007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
16562
16563 * term.c: Include stdarg.h.
16564 (fatal): Implement using varargs.
16565 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
16566
165672007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16568
16569 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
16570 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
16571 Update call to buffer_slot_type_mismatch.
16572 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
16573 (buffer_slot_type_mismatch): Update.
16574 * buffer.c (buffer_local_types): Remove.
16575 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
16576 (defvar_per_buffer): Set the type in the buffer_objfwd.
16577
165782007-11-21 Jason Rumney <jasonr@gnu.org>
16579
16580 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
16581 CreateFileMapping returns NULL on failure.
16582
165832007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16584
16585 * search.c (Fset_match_data): Remove the `evaporate' feature.
16586 (unwind_set_match_data): Don't use the `evaporate' feature.
16587
165882007-11-21 Jason Rumney <jasonr@gnu.org>
16589
16590 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
16591
16592 * w32console.c (w32con_write_glyphs): Remove unused variables.
16593
165942007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
16595
16596 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
16597
16598 * s/darwin.h (MULTI_KBOARD): Remove.
16599
16600 * macfns.c (x_create_tip_frame, Fx_create_frame)
16601 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
16602
166032007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
16604
16605 * buffer.c (Fbuffer_local_value): Remove redundant test.
16606 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
16607 than in `current-buffer' to match the comment.
16608 Do the swap using swap_in_global_binding.
16609
16610 * data.c (store_symval_forwarding, set_internal):
16611 * eval.c (specbind): Remove dead code.
16612
16613 * coding.c (detect_coding, Fupdate_coding_systems_internal):
16614 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
16615 Since we do not want to see internal Lisp_*fwd objects here.
16616
166172007-11-18 Jan Djärv <jan.h.d@swipnet.se>
16618
16619 * sysdep.c (init_system_name): Use getaddrinfo if available.
16620
16621 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
16622 (x_scroll_bar_note_movement): start, end, with, height in struct
16623 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
16624
166252007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
16626
16627 * puresize.h (BASE_PURESIZE): Increase to 1190000.
16628
166292007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
16630
16631 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
16632 This undoes Richard's change of 14-Oct-2002.
16633
16634 * alloc.c (allocate_other_vector):
16635 * lisp.h (allocate_other_vector): Remove.
16636
16637 * window.c (struct save_window_data): Move non-lisp data to the end
16638 and make it `int' rather than Lisp_Object.
16639 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
16640 Done wrap/unwrap integer values.
16641 (Fset_window_configuration, compare_window_configurations):
16642 Update use of fields to their new types.
16643
16644 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
16645 Turn integer fields into `int'. Merge x_window_low and x_window_high.
16646 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
16647 (SET_SCROLL_BAR_X_WINDOW): Remove.
16648 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
16649 Access the new x_window field directly.
16650 * xterm.c (x_scroll_bar_create): Use a pseudovector.
16651 Don't wrap/unwrap integers into Lisp_Objects.
16652 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
16653 (x_scroll_bar_report_motion):
16654 Don't wrap/unwrap integers into Lisp_Objects.
16655 (x_term_init): Use SDATA.
16656 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
16657 (x_scroll_bar_set_handle, x_scroll_bar_remove)
16658 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
16659 (x_scroll_bar_report_motion, x_scroll_bar_clear):
16660 * xfns.c (x_set_background_color):
16661 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
16662 Access the new x_window field directly.
16663
16664 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
16665 (allocate_pseudovector): Make non-static.
16666
16667 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
16668 (allocate_pseudovector): Declare.
16669 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
16670
166712007-11-15 Andreas Schwab <schwab@suse.de>
16672
16673 * editfns.c (Fformat): Correctly format EMACS_INT values.
16674 Also take precision into account when formatting an integer.
16675
16676 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
16677
166782007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
16679
16680 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
16681 (syms_of_keyboard): Defsubr it.
16682
16683 * data.c (swap_in_global_binding): Fix longstanding bug where
16684 store_symval_forwarding was not called with the right second argument,
16685 thus causing objfwd-ing from being dropped.
16686
166872007-11-14 Juanma Barranquero <lekktu@gmail.com>
16688
16689 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
16690 (Fx_display_pixel_height, Fx_display_planes)
16691 (Fx_display_color_cells, Fx_server_max_request_size)
16692 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16693 (Fx_display_visual_class, Fx_display_save_under):
16694 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
16695 (Fx_display_pixel_height, Fx_display_planes)
16696 (Fx_display_color_cells, Fx_server_max_request_size)
16697 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
16698 (Fx_display_mm_height, Fx_display_mm_width)
16699 (Fx_display_backing_store, Fx_display_visual_class)
16700 (Fw32_select_font, Fx_display_save_under):
16701 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
16702 (Fx_display_pixel_height, Fx_display_planes)
16703 (Fx_display_color_cells, Fx_server_max_request_size)
16704 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16705 (Fx_display_save_under): Fix typos in docstrings.
16706
167072007-11-14 Juanma Barranquero <lekktu@gmail.com>
16708
16709 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
16710 corresponding to deleted entries; they are an implementation detail.
16711 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
16712 Remove variables.
16713 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
16714 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
16715 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
16716 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
16717 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
16718 (Fw32_define_rgb_color, Fw32_load_color_file)
16719 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
16720 Fix typos in docstrings.
16721 (Fx_server_version): Reflow docstring.
16722 (Fw32_shell_execute): Doc fixes.
16723
167242007-11-13 Juanma Barranquero <lekktu@gmail.com>
16725
16726 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
16727 if w32_parse_hot_key returned nil.
16728
167292007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
16730
16731 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
16732
167332007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 16734
aac0c6e3
MR
16735 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
16736
16737 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
16738
16739 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
16740 Remove W32_SCROLL_BAR_CLICK_EVENT.
16741
16742 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
16743 Add MULTIMEDIA_KEY_EVENT.
16744
16745 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
16746 (lispy_multimedia_keys) [WINDOWSNT]: New array.
16747 (make_lispy_event) [WINDOWSNT]: Use it to translate
16748 MULTIMEDIA_KEY_EVENT.
16749
16750 * w32term.h (WM_APPCOMMAND): Define if not already.
16751 (GET_APPCOMMAND_LPARAM): Likewise.
16752
16753 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
16754 WM_APPCOMMAND.
16755
16756 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
16757 (syms_of_w32fns): Export and initialize it.
16758 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
16759
167602007-11-09 Chong Yidong <cyd@stupidchicken.com>
16761
16762 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
16763 twice.
16764
16765 * xdisp.c (handle_face_prop): Fix last change.
16766
167672007-11-09 Richard Stallman <rms@gnu.org>
16768
16769 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
16770 not just for after-strings and before-strings.
16771 Call face_for_overlay_string and pass the overlay to it.
16772 (handle_display_prop): Determine whether property came from an overlay.
16773 Pass OVERLAY arg to handle_single_display_spec.
16774 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
16775 (load_overlay_strings): Fill in it->string_overlays.
16776 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
16777
16778 * xfaces.c (face_for_overlay_string): Function renamed from
16779 face_at_buffer_position_no_overlays, and add arg OVERLAY.
16780
16781 * dispextern.h (struct it): New elt string_overlays.
16782 New elt from_overlay, also in stack.
16783 Rearrange a few elements.
16784 (face_for_overlay_string): Decl renamed from
16785 face_at_buffer_position_no_overlays, and add argument.
16786
167872007-11-09 Richard Stallman <rms@gnu.org>
16788
16789 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
16790 to get the base face for an overlay string.
16791
16792 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
16793
16794 * xfaces.c (face_at_buffer_position_no_overlays): New function.
16795
16796 * xdisp.c (handle_stop): Move some code out of loop.
16797
167982007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16799
16800 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
16801 Fix conversion from Lisp object to ATSUFontID.
16802
168032007-11-09 Jason Rumney <jasonr@gnu.org>
16804
16805 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
16806
168072007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16808
16809 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
16810 Don't assume regions are aligned to page boundary.
16811 (print_load_command_name): Add LC_UUID if defined.
16812
168132007-11-09 Richard Stallman <rms@gnu.org>
16814
16815 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
16816
168172007-11-07 Jason Rumney <jasonr@gnu.org>
16818
16819 * s/windows95.h: Remove.
16820
168212007-11-06 Jan Djärv <jan.h.d@swipnet.se>
16822
16823 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
16824 abort with a message on unhandled store_type values.
16825
168262007-11-01 Jan Djärv <jan.h.d@swipnet.se>
16827
16828 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
16829 Remove HAVE_X11R5 and HAVE_X11R4.
16830
168312007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16832
16833 * Makefile.in: Remove references to sunfns.c and sunfns.o.
16834
168352007-11-01 Johan Bockgård <bojohan@gnu.org>
16836
16837 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
16838 Don't set s->stippled_p here, since it has already been set by
16839 x_set_glyph_string_gc from x_draw_glyph_string.
16840
168412007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16842
16843 * sunfns.c: Remove file.
16844
16845 * m/sun386.h:
16846 * m/sun2.h:
16847 * m/sparc.h: Remove Sun windows code.
16848
168492007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
16850
16851 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
16852 (init_keyboard): Set current_kboard's window-system to nil.
16853 (tty_read_avail_input): Typo.
16854 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
16855
168562007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
16857
16858 * s/usg5-4.h:
16859 * s/usg5-3.h:
16860 * s/ptx.h:
16861 * m/is386.h:
16862 * m/ibmps2-aix.h:
16863 * Makefile.in: Remove all mentions of X10.
16864
16865 * dispnew.c (syms_of_display): Don't mention version 10.
16866
168672007-10-28 Juanma Barranquero <lekktu@gmail.com>
16868
16869 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
16870 ($(BLD)/abbrev.$(O)): Remove.
16871
168722007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
16873
16874 Rewrite abbrev.c in Elisp.
16875 * image.c (Qcount): Don't declare as extern.
16876 (syms_of_image): Initialize and staticpro `Qcount'.
16877 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
16878 * emacs.c (main): Don't call syms_of_abbrev.
16879 * Makefile.in (obj): Remove abbrev.o.
16880 (abbrev.o): Remove.
16881 * abbrev.c: Remove.
16882
168832007-10-26 Martin Rudalics <rudalics@gmx.at>
16884
16885 * window.c (window_min_size_2): Don't count header-line.
16886
168872007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
16888
16889 * frame.h (struct frame): Move all bit fields after the first bit
16890 field to take advantage of the available space. Group all the
16891 chars together to reduce wasted space due to padding.
16892
168932007-10-26 Juanma Barranquero <lekktu@gmail.com>
16894
16895 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
16896
16897 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
16898 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
16899 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
16900 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
16901 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
16902 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
16903 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
16904 (last_marked, mark_object_loop_halt): Make static.
16905
16906 * frame.c (syms_of_frame) <delete-frame-functions>:
16907 Fix typo in docstring.
16908
169092007-10-25 Juanma Barranquero <lekktu@gmail.com>
16910
16911 * w32.c (init_environment): Fix tiny memory leak.
16912 (w32_get_resource): Remove unused variable `ok'.
16913
169142007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
16915
16916 Make `window-system' into a keyboard-local variable (rather than
16917 frame-local as done originally by multi-tty).
16918
16919 * keyboard.h (struct kboard): Add Vwindow_system.
16920 * keyboard.c (init_kboard): Set a default for Vwindow_system.
16921 (mark_kboards): Mark Vwindow_system.
16922
16923 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
16924 (init_display): Don't set the obsolete `window-system' frame-param.
16925
16926 * xterm.c (x_term_init):
16927 * w32term.c (w32_create_terminal):
16928 * term.c (init_tty): Set Vwindow_system.
16929 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
16930 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
16931
16932 * xfns.c (Fx_create_frame, x_create_tip_frame):
16933 * w32fns.c (Fx_create_frame, x_create_tip_frame):
16934 * macfns.c (Fx_create_frame):
16935 Don't set the obsolete `window-system' frame-param.
16936
16937 * frame.h (Qwindow_system): Remove.
16938 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
16939 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
16940
169412007-10-24 Richard Stallman <rms@gnu.org>
16942
16943 * frame.c (x_figure_window_size): For fullscreen case,
16944 set USPosition | PPosition without clobbering rest of window_prompting.
16945
16946 * keyboard.c (Fcurrent_idle_time): Doc fix.
16947
16948 * print.c (Fwith_output_to_temp_buffer): Doc fix.
16949
169502007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
16951
16952 * process.c (unwind_request_sigio): Only define if __ultrix__.
16953
16954 * callproc.c (child_setup): Remove spurious *.
16955
16956 * lisp.h (Fget_text_property): Declare.
16957 (have_menus_p): Declare it here rather than in sys-dep header files.
16958 * macterm.h (have_menus_p):
16959 * msdos.h (have_menus_p):
16960 * xterm.h (have_menus_p): Remove.
16961
16962 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
16963 (Fmake_variable_frame_local): Just check the variable's const-ness
16964 rather than checking nil or t.
16965
169662007-10-22 Jason Rumney <jasonr@gnu.org>
16967
16968 * w32fns.c: Include math.h.
16969 (w32_abort): Declaration moved to nt/config.nt.
16970
16971 * s/ms-w32.h (HAVE_STDLIB_H): Define.
16972 (abort): Redefinition moved to nt/config.nt.
16973
16974 * m/windowsnt.h: Remove.
16975
169762007-10-22 Juanma Barranquero <lekktu@gmail.com>
16977
16978 * emacs.c (Fdump_emacs): Fix typo in message.
16979 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
16980 <installation-directory>: Reflow docstring.
16981
169822007-10-22 Juri Linkov <juri@jurta.org>
16983
16984 * minibuf.c: Allow minibuffer default to be a list of default values.
16985 With empty input use the first element of this list as returned default.
16986 (string_to_object)
16987 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
16988 (read_minibuf): If defalt is cons, set histstring to its car.
16989 (Fread_string): If default_value is cons, set val to its car.
16990 (Fread_buffer): If def is cons, use its car.
16991 (Fcompleting_read): If defalt is cons, set val to its car.
16992
169932007-10-21 Michael Albinus <michael.albinus@gmx.de>
16994
16995 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
16996
169972007-10-20 Juanma Barranquero <lekktu@gmail.com>
16998
16999 * doc.c (Fdocumentation): Check for advice in all cases.
17000
170012007-10-19 Chong Yidong <cyd@stupidchicken.com>
17002
17003 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
17004
170052007-10-19 Richard Stallman <rms@gnu.org>
17006
17007 * doc.c (Fdocumentation): Check for and handle an advised function.
17008
170092007-10-19 Juanma Barranquero <lekktu@gmail.com>
17010
17011 * process.c (Fset_process_filter): Doc fix.
17012
170132007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
17014
17015 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
17016 which caused key-translation-map to applied repeatedly (thus breaking
17017 double-mode).
17018
170192007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17020
17021 * xselect.c (x_own_selection, x_handle_selection_clear)
17022 (x_clear_frame_selections):
17023 * w32menu.c (list_of_panes, list_of_items):
17024 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
17025 * textprop.c (validate_plist, interval_has_all_properties)
17026 (interval_has_some_properties, interval_has_some_properties_list)
17027 (add_properties, text_property_list):
17028 * process.c (Fget_buffer_process, list_processes_1, status_notify):
17029 * minibuf.c (Fassoc_string):
17030 * macselect.c (x_own_selection, x_clear_frame_selections)
17031 (Fx_disown_selection_internal):
17032 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
17033 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
17034
170352007-10-17 Chong Yidong <cyd@stupidchicken.com>
17036
17037 * process.c: Link to libs for calling res_init() if available.
17038 (Fmake_network_process): Call res_init() before getaddrinfo or
17039 gethostbyname, if possible.
17040
170412007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17042
17043 * lread.c (read1): Set pvectype for char_tables.
17044
17045 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
17046 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
17047 Add type checks.
17048 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
17049
17050 * alloc.c (free_misc): Use XMISCTYPE.
17051 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
17052
170532007-10-17 Glenn Morris <rgm@gnu.org>
17054
17055 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
17056 (syms_of_minibuf): Add Qcompletion_ignore_case.
17057 * dired.c (Qcompletion_ignore_case): Change to external.
17058 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
17059 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
17060 (Fread_file_name): Use it rather than intern'ing.
17061
17062 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
17063 (Fread_coding_system): Ignore case of user input.
17064
170652007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17066
17067 * xdisp.c (handle_display_prop): Ignore display specs after
17068 replacing one when string text is being replaced.
17069 (handle_single_display_spec): Pretend as if characters with display
17070 property haven't been consumed only when buffer text is being replaced.
17071
170722007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
17073
17074 * xfns.c (Fx_create_frame, Fx_display_list):
17075 * window.c (window_fixed_size_p, enlarge_window)
17076 (shrink_window_lowest_first):
17077 * macterm.c (init_font_name_table):
17078 * macfns.c (Fx_create_frame, Fx_display_list):
17079 * lread.c (close_load_descs):
17080 * keyboard.c (read_char_x_menu_prompt):
17081 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
17082 * coding.c (code_convert_region_unwind): Test the type of an object
17083 rather than just !NILP before extracting data from it.
17084
17085 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
17086
17087 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
17088 (XMISCANY): New macro.
17089 (XMISCTYPE): Use it.
17090 (struct Lisp_Misc_Any): New type.
17091 (union Lisp_Misc): Use it.
17092 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
17093 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
17094 (find_symbol_value, set_internal, default_value, Fset_default)
17095 (Fmake_variable_buffer_local, Fmake_local_variable)
17096 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
17097 (Flocal_variable_if_set_p, Fvariable_binding_locus):
17098 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
17099 * alloc.c (allocate_buffer): Set the size and tag.
17100 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
17101 Use XMISCANY.
17102 (die): Follow the GNU convention for error messages.
17103 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
17104 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
17105 tag any more.
17106 (set_buffer_internal_1):
17107 * frame.c (store_frame_param):
17108 * eval.c (specbind):
17109 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
17110
17111 * doc.c (Fsnarf_documentation): Simplify.
17112
171132007-10-14 Juanma Barranquero <lekktu@gmail.com>
17114
17115 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
17116 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
17117
171182007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
17119
17120 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
17121
171222007-10-14 Juanma Barranquero <lekktu@gmail.com>
17123
17124 * eval.c (do_autoload): Don't save autoloads.
17125
17126 * data.c (Ffset): Save autoload of the function being set.
17127
171282007-10-07 John Paul Wallington <jpw@pobox.com>
17129
17130 * xfns.c (x_create_tip_frame): Set the `display-type' frame
17131 parameter before setting up faces.
17132
171332007-10-13 Eli Zaretskii <eliz@gnu.org>
17134
17135 * ccl.c (Fregister_code_conversion_map):
17136 * keyboard.c (append_tool_bar_item): Reformat last change.
17137
17138 * lisp.h (eabs): Rename from `abs'. All callers changed.
17139
171402007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
17141
17142 * buffer.c (add_overlay_mod_hooklist):
17143 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
17144 * fontset.c (make_fontset):
17145 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
17146 (append_tool_bar_item):
17147 * macmenu.c (grow_menu_items):
17148 * w32menu.c (grow_menu_items):
17149 * xmenu.c (grow_menu_items): Use larger_vector.
17150
171512007-10-13 Eli Zaretskii <eliz@gnu.org>
17152
17153 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
17154 selected frame'' on MSDOS).
17155
171562007-10-12 Martin Rudalics <rudalics@gmx.at>
17157
17158 * frame.c (Qexplicit_name): New variable.
17159 (x_report_frame_params): Report it in parameter alist.
17160 (syms_of_frame): Intern and staticpro it.
17161
171622007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
17163
17164 * macfns.c (x_create_tip_frame): Set terminal for frame.
17165
171662007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
17167
17168 * frame.c (Qenvironment): Remove.
17169 (syms_of_frame) <Qenvironment>: Don't initialize.
17170 (Fdelete_frame): Don't treat the `environment' param specially.
17171 * frame.h (Qenvironment): Don't declare.
17172 * callproc.c (set_initial_environment): Don't set unused frame param.
17173
17174 * frame.c (Fframe_with_environment): Remove.
17175 (syms_of_frame) <Sframe_with_environment>: Don't declare.
17176
17177 * lisp.h (Fframe_with_environment): Don't declare.
17178
171792007-10-10 Juanma Barranquero <lekktu@gmail.com>
17180
17181 * indent.c (indent_tabs_mode, last_known_column)
17182 (last_known_column_modified): Make static.
17183 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
17184
171852007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
17186
17187 * puresize.h (BASE_PURESIZE): Increase to 1170000.
17188
171892007-10-09 Jason Rumney <jasonr@gnu.org>
17190
17191 * w32term.c (x_set_window_size): Disable code that attempts to tell
17192 Lisp code about a size change before it actually happens.
17193
171942007-10-09 Richard Stallman <rms@gnu.org>
17195
17196 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
17197 return HANDLED_RETURN.
17198
171992007-10-08 Martin Rudalics <rudalics@gmx.at>
17200
17201 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
17202 when there's an unread command event.
17203
17204 * frame.c (focus_follows_mouse): Move here from frame.el to allow
17205 window autoselection act appropriately when leaving selected frame.
17206 (syms_of_frame): Initialize focus_follows_mouse.
17207 * frame.h (focus_follows_mouse): Extern it.
17208 * macterm.c (XTread_socket): When focus_follows_mouse is nil
17209 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
17210 * msdos.c (dos_rawgetc): Likewise.
17211 * w32term.c (w32_read_socket): Likewise.
17212 * xterm.c (handle_one_xevent): Likewise.
17213 * xdisp.c (syms_of_xdisp): In doc-string of
17214 mouse-autoselect-window mention focus-follows-mouse.
17215
172162007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17217
17218 * macterm.c (mac_load_query_font): Fix missing return value.
17219 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
17220 Add BLOCK_INPUT.
17221
172222007-10-08 Richard Stallman <rms@gnu.org>
17223
17224 * xdisp.c (get_window_cursor_type): Implement documented behavior
17225 for cursor-in-non-selected-windows = t.
17226
172272007-10-08 Jason Rumney <jasonr@gnu.org>
17228
17229 * w32.c (w32_get_resource): Always close registry keys.
17230
172312007-10-08 Jason Rumney <jasonr@gnu.org>
17232
17233 * makefile.w32-in (LIBS): Add COMCTL32.
17234
17235 * w32fns.c (globals_of_w32fns): Init common controls.
17236
172372007-10-08 Richard Stallman <rms@gnu.org>
17238
17239 * image.c (our_memory_buffer): Rename from omfib_buffer.
17240
172412007-10-08 Richard Stallman <rms@gnu.org>
17242
17243 * buffer.c (Foverlays_at): Doc fix.
17244
172452007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
17246
17247 * fns.c (Fplist_put): Preserve uneven tail data.
17248
172492007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
17250
17251 * termhooks.h (enum event_kind): Remove trailing comma.
17252
17253 * frame.h (enum): Remove trailing comma.
17254
172552007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
17256
17257 * w32proc.c (delete_child): Don't terminate threads of zombies.
17258
172592007-10-08 Martin Rudalics <rudalics@gmx.at>
17260
17261 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
17262
17263 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
17264 last-repeatable-command.
17265 (init_kboard): Initialize Vlast_repeatable_command.
17266 (command_loop_1): Set it to real_this_command unless that was
17267 bound to an input event.
17268 (mark_kboards): Mark it.
17269
172702007-10-08 Richard Stallman <rms@gnu.org>
17271
17272 * eval.c (condition-case): Doc fix.
17273
172742007-10-08 Masatake YAMATO <jet@gyve.org>
17275
17276 * xfaces.c (tty_supports_face_attributes_p): Fix code
17277 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
17278 was copied and not edited.
17279
172802007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
17281
17282 Add new `input-decode-map' keymap and use it for terminal
17283 escape sequences.
17284 * keyboard.h (struct kboard): Add Vinput_decode_map.
17285 Remove Vlocal_key_translation_map.
17286 * keyboard.c (read_key_sequence): Add support for input-decode-map.
17287 (init_kboard): Init input-decode-map.
17288 Replace local-key-translation-map back with key-translation-map.
17289 (syms_of_keyboard): Declare input-decode-map.
17290 Remove local-key-translation-map. Update docstrings.
17291 (mark_kboards): Mark Vinput_decode_map.
17292 Don't mark Vlocal_key_translation_map.
17293 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
17294 Replace local-key-translation-map back with key-translation-map.
17295 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
17296 Bind in input-decode-map rather than function-key-map.
17297
17298 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
17299 This was made redundant by the previous introduction of XSETPVECTYPE.
17300
173012007-10-09 Richard Stallman <rms@gnu.org>
17302
17303 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
17304
173052007-09-29 Richard Stallman <rms@gnu.org>
17306
17307 * eval.c (internal_condition_case_2, internal_condition_case_1)
17308 (internal_condition_case): Reenable abort if x_catching_errors ()
17309 to see if that really happens and why.
17310
173112007-10-06 Andreas Schwab <schwab@suse.de>
17312
17313 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
17314
173152007-10-04 Juanma Barranquero <lekktu@gmail.com>
17316
17317 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
17318
173192007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
17320
17321 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
17322
173232007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
17324
17325 * window.h (struct window):
17326 * window.c (struct save_window_data, struct saved_window):
17327 * termhooks.h (struct terminal):
17328 * process.h (struct Lisp_Process):
17329 * frame.h (struct frame):
17330 * buffer.h (struct buffer):
17331 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
17332 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
17333 The size field of (pseudo)vectors is now unsigned.
17334 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
17335
17336 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
17337 Turn `count' into an integer.
17338
17339 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
17340 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
17341 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
17342 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
17343 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
17344
17345 * alloc.c (allocate_pseudovector): New fun.
17346 (ALLOCATE_PSEUDOVECTOR): New macro.
17347 (allocate_window, allocate_terminal, allocate_frame)
17348 (allocate_process): Use it.
17349 (mark_vectorlike): New function.
17350 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
17351 (mark_terminals): Use it.
17352 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
17353 (Fmake_byte_code): Use XSETPVECTYPE.
17354
17355 * frame.c (Fframe_parameters): Minor simplification.
17356
17357 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
17358
17359 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
17360
17361 * buffer.c (Fget_buffer_create, init_buffer_once):
17362 * lread.c (defsubr):
17363 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
17364
17365 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
17366 defined differently in the m/*.h files.
17367 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
17368 (XSETPVECTYPE): New macro.
17369 (XSETPSEUDOVECTOR): Use it.
17370
17371 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
17372 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
17373
17374 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
17375 * lread.c (defvar_per_buffer):
17376 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
17377
17378 * window.c (candidate_window_p): Only consider as visible frames that
17379 are on the same terminal.
17380
17381 * m/ibms390x.h (MARKBIT): Remove unused macro.
17382
173832007-10-01 Juanma Barranquero <lekktu@gmail.com>
17384
17385 * lread.c (Fload): Fix typo in docstring.
17386
173872007-10-01 Michaël Cadilhac <michael@cadilhac.name>
17388
17389 * floatfns.c (Fexpt): Manually check for overflows, so that a power
17390 of a non-zero value can't yield zero.
17391
173922007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
17393
17394 * term.c (term_clear_mouse_face, term_mouse_highlight)
17395 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
17396
17397 * print.c (safe_debug_print): Use XHASH.
17398
17399 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
17400 Lisp elements such as tags.
17401 (XHASH): New macro.
17402 (EQ): Use it.
17403 (SREF, SSET, STRING_COPYIN): Use SDATA.
17404 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
17405
17406 * alloc.c (mark_terminal): Remove left-over declaration.
17407 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
17408 (allocate_vectorlike): Remove type argument. Adjust callers.
17409 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
17410 Only handle the one remaining MEM_TYPE_VECTORLIKE.
17411
17412 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
17413 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
17414 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
17415 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
17416 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
17417 Use them.
17418
17419 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
17420 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
17421 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
17422
174232007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
17424
17425 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
17426 loaded by default.
17427
174282007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
17429
17430 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
17431 on this tty.
17432 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
17433
17434 * term.c (mouse_face_window): Rename from Qmouse_face_window.
17435 Update all users.
17436 (handle_one_term_event): Use Gpm_DrawPointer.
17437 (Fgpm_mouse_start): Rename from Fterm_open_connection.
17438 Signal errors instead of returning nil. Always return nil.
17439 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
17440 Make it a noop if gpm-mouse was not activated.
17441 (syms_of_term): Update names.
17442
174432007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
17444
17445 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
17446 (init_sys_modes): Check that gpm_tty is the current tty.
17447
17448 * alloc.c (allocate_terminal): Set the vector size to only count the
17449 lisp fields. Initialize those to nil.
17450 (mark_object): Don't treat terminals specially.
17451 (mark_terminal): Remove.
17452 (mark_terminals): Use mark_object instead.
17453
17454 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
17455 the GC to the beginning.
17456
17457 * indent.h:
17458 * indent.c: Use EMACS_INT for ints coming from Elisp data.
17459
17460 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
17461
174622007-09-25 Jason Rumney <jasonr@gnu.org>
17463
17464 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
17465
17466 * w32console.c (create_w32cons_output): Remove.
17467
17468 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
17469
17470 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
17471 (reset_sys_modes): Use reset_terminal_modes_hook.
17472
174732007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
17474
17475 * eval.c (do_autoload): Don't output any message.
17476
174772007-09-24 Juri Linkov <juri@jurta.org>
17478
17479 * emacs.c (standard_args): Change priority of "--no-splash"
17480 from 40 to 3. Add "--no-desktop" with the same priority.
17481
174822007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
17483
17484 * alloc.c (gc_sweep): Check cons cell mark bits word by word
17485 and optimize the case where they are all 1.
17486
174872007-09-23 Johannes Weiner <hannes@saeurebad.de>
17488
17489 * lisp.h (abs): Define if not defined.
17490 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
17491 Don't define `abs', since it's defined in lisp.h.
17492
174932007-09-22 Eli Zaretskii <eliz@gnu.org>
17494
17495 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
17496 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
17497 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
17498 (init_tty): Use DEV_TTY instead of "/dev/tty".
17499 [WINDOWSNT]: No need to protect from NAME arg being null.
17500
175012007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
17502
17503 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
17504 up the tty state.
17505
175062007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17507
17508 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
17509 (gpm_tty): Change its type.
17510 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
17511 (gpm_tty): Change its type and initialize it.
17512 (Fterm_open_connection): Check the frame is indeed a tty.
17513 Use the new gpm_tty.
17514 (Fterm_close_connection): Use the new gpm_tty.
17515 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
17516 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
17517
175182007-09-21 Juanma Barranquero <lekktu@gmail.com>
17519
17520 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
17521 underline_color, to draw strike-through.
17522
175232007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17524
17525 * lisp.h (allocate_terminal): Declare.
17526
17527 * window.c (candidate_window_p): Consider frames that are being placed
17528 by the user as somewhere between visible and iconified.
17529 (window_loop): Prefer windows on the current frame.
17530 (Fselect_window): Move the use of select-frame to the beginning so we
17531 can just delegate all the work (it'll call us back anyway).
17532
17533 * frame.c (Qdisplay_environment_variable):
17534 * frame.h (Qdisplay_environment_variable): Delete.
17535
17536 * .gdbinit (xbacktrace): Print the arg's address rather than the value
17537 of the first arg, since that value may be a union.
17538
17539 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
17540 parameter rather than Qdisplay_environment_variable. If all else
17541 fails, look for DISPLAY in initial-environment.
17542
175432007-09-21 Glenn Morris <rgm@gnu.org>
17544
17545 * Makefile.in (emacstool): Remove target.
17546 (lisp, shortlisp): Remove termdev.elc.
17547
175482007-09-21 Markus Triska <markus.triska@gmx.at>
17549
17550 * xterm.c (x_delete_display): Compile session management conditionally.
17551
175522007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
17553
17554 * callproc.c (getenv_internal_1): New function.
17555 (getenv_internal): Use it.
17556 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
17557
17558 * terminal.c (get_terminal): Don't accept ints to represent terminals.
17559 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
17560 (Fset_terminal_parameter): Work with dead terminals as well.
17561 (Fmodify_terminal_parameters): Remove.
17562
17563 * terminal.c (get_terminal): Handle terminals.
17564 Make sure the terminal returned is live.
17565 (create_terminal): Use allocate_terminal.
17566 (mark_terminals): Move to alloc.c.
17567 (delete_terminal): Use terminal->name as liveness status.
17568 NULL out fields after freeing their contents.
17569 Don't deallocate the object.
17570 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
17571 rather than an int.
17572 (Fterminal_live_p): Accept non-integer arguments.
17573 (Fterminal_list): Return terminal objects rather than an ints.
17574
17575 * alloc.c (enum mem_type): New member for `terminal' objects.
17576 (allocate_terminal): New function.
17577 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
17578 Handle terminals.
17579 (mark_terminal): New fun.
17580 (mark_terminals): Move from terminal.c.
17581
17582 * term.c (get_tty_terminal): Don't treat output_initial specially.
17583 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
17584 (delete_tty): Use terminal->name as liveness status.
17585
17586 * termhooks.h (struct terminal): Make it into a pseudovector.
17587 Remove `deleted' replaced by checking `name's nullness.
17588
17589 * print.c (print_object): Handle terminals.
17590
17591 * lisp.h (enum pvec_type): New `terminal' pseudovector.
17592 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
17593
17594 * frame.c (make_terminal_frame):
17595 * keyboard.c (tty_read_avail_input):
17596 * w32term.c (x_delete_terminal):
17597 * xfns.c (Fx_create_frame, x_create_tip_frame):
17598 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
17599
176002007-09-20 Glenn Morris <rgm@gnu.org>
17601
17602 * process.c (Fmake_network_process): Doc fix.
17603
176042007-09-19 Jason Rumney <jasonr@gnu.org>
17605
17606 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
17607
176082007-09-19 Michaël Cadilhac <michael@cadilhac.name>
17609
17610 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
17611 Fix a C warning regarding variable constness.
17612
17613 * xterm.c (handle_one_xevent): Fix a C warning.
17614
176152007-09-18 Jason Rumney <jasonr@gnu.org>
17616
17617 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
17618
176192007-09-17 Jan Djärv <jan.h.d@swipnet.se>
17620
17621 * gtkutil.c (gdpy_def): New variable.
17622 (xg_initialize): Initialize gdpy_def.
17623 (xg_display_close): If no other display exists, set gdpy_def to a
17624 new connection.
17625
176262007-09-16 Jan Djärv <jan.h.d@swipnet.se>
17627
17628 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
17629 when we have no file name for the icon.
17630 (xg_tool_bar_expose_callback): Remove.
17631 (xg_create_tool_bar): Don't connect expose signal to
17632 xg_tool_bar_expose_callback.
17633 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
17634
176352007-09-16 Andreas Schwab <schwab@suse.de>
17636
17637 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
17638 values instead of zapping them.
17639
176402007-09-14 Glenn Morris <rgm@gnu.org>
17641
17642 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
17643 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
17644 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
17645 scope and rename to omfib_buffer for clarity.
17646 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
17647
176482007-09-14 Kenichi Handa <handa@m17n.org>
17649
17650 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
17651
176522007-09-13 Jason Rumney <jasonr@gnu.org>
17653
17654 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
17655
17656 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
17657
17658 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
17659 (mac_term_init): Call here instead, passing rif.
17660
176612007-09-13 Glenn Morris <rgm@gnu.org>
17662
17663 * s/hpux.h: No longer define `static' as nothing.
17664
176652007-09-13 Johan Bockgård <bojohan@gnu.org>
17666
17667 * callint.c (Fcall_interactively): Remove unused var `fun'.
17668
176692007-09-12 Romain Francoise <romain@orebokech.com>
17670
17671 * window.c (prefer_window_split_horizontally, display_buffer):
17672 Revert 2007-09-08 change.
17673
176742007-09-12 Glenn Morris <rgm@gnu.org>
17675
17676 * alloca.c: Remove file.
17677 * Makefile.in (alloca): Do not undef.
17678 (allocaobj, alloca.o): Remove.
17679 (otherobj): Remove allocaobj.
17680 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
17681 * regex.c (C_ALLOCA): Remove all references and code that was only
17682 used when this was defined.
17683 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
17684 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
17685 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
17686
17687 * Makefile.in (SOURCES, unlock, relock): Delete.
17688
17689 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
17690 (menu_grab_callback): All uses changed.
17691
17692 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
17693 (x_reply_selection_request): All uses changed.
17694
176952007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
17696
17697 * lread.c (load_warn_old_style_backquotes): Change message to look
17698 better when it appears in the middle of byte-compiler messages.
17699
177002007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
17701
17702 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
17703
17704 * xterm.c (x_create_terminal): Add comment.
17705
17706 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
17707
177082007-09-10 Richard Stallman <rms@gnu.org>
17709
17710 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
17711
177122007-09-10 Michaël Cadilhac <michael@cadilhac.name>
17713
17714 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
17715 (DEFUN): Document `intspec', use it instead of `prompt'.
17716
17717 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
17718
17719 * data.c (Finteractive_form): If the interactive specification starts
17720 with a `(', use it as a Lisp form.
17721
17722 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
17723 name and file modes.
17724
17725 * callint.c (Fcall_interactively): Comment fixes.
17726
177272007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
17728
17729 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
17730 and compiled functions.
17731
177322007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
17733
17734 * window.c (prefer_window_split_horizontally): New variable.
17735 (display_buffer): Consider splitting window horizontally depending
17736 on prefer_window_split_horizontally.
17737
177382007-09-08 Eli Zaretskii <eliz@gnu.org>
17739
17740 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
17741
177422007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17743
17744 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
17745
17746 * frame.c (x_set_frame_parameters): Check number is positive before
17747 using XFASTINT.
17748
17749 * window.c (freeze_window_start): Don't presume selected_window holds
17750 a window object.
17751 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
17752
177532007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
17754
17755 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
17756
177572007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17758
17759 * window.c (Vsplit_window_preferred_function): New var.
17760 (Fdisplay_buffer): Use it.
17761 (syms_of_window): Export, and initialize it.
17762
177632007-09-06 Pixel <pixel@mandriva.com> (tiny change)
17764
17765 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
17766
177672007-09-06 Glenn Morris <rgm@gnu.org>
17768
17769 * gtkutil.c (menu_grab_callback) <cnt>:
17770 * xselect.c (x_reply_selection_request) <cnt>: Move static
17771 variable to file scope.
17772
177732007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
17774
17775 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
17776 consistent values of selected_frame and selected_window.
17777
177782007-09-04 Jason Rumney <jasonr@gnu.org>
17779
17780 * w32console.c (initialize_w32_display): Zero unused hooks.
17781
177822007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17783
17784 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
17785 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
17786
177872007-09-04 Jason Rumney <jasonr@gnu.org>
17788
17789 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
17790 in w32console.c. Set up input. Remove XXX comments that have been
17791 confirmed as correct.
17792
17793 * s/ms-w32.h (MULTI_KBOARD): Define.
17794
17795 * w32console.c (one_and_only_w32cons): Remove.
17796 (initialize_w32_display): Take terminal argument.
17797
17798 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
17799 initialize_w32_display.
17800 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
17801
17802 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
17803
17804 * keyboard.c (discard_mouse_events): Discard it.
17805 (make_lispy_event): Translate it to a lisp event.
17806 (lispy_wheel_names): Add wheel-left and right events.
17807 (syms_of_keyboard): Enlarge wheel_syms.
17808
17809 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
17810 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
17811
17812 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
17813
17814 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
17815 from WM_MOUSEHWHEEL.
17816 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
17817
17818 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
17819 terminal.
17820
17821 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
17822 keyboard for the terminal.
17823
178242007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17825
17826 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
17827 (Vresume_tty_hook): Rename from Vresume_tty_functions.
17828 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
17829 and resume-tty-function to resume-tty-hook.
17830 (Fsuspend_tty, Fresume_tty): Use new names.
17831
178322007-09-02 Jan Djärv <jan.h.d@swipnet.se>
17833
17834 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
17835 if it starts with "n:".
17836
178372007-08-31 Jan Djärv <jan.h.d@swipnet.se>
17838
17839 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
17840
178412007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
17842
17843 * frame.h:
17844 * frame.c (Qterm_environment_variable): Remove.
17845 (syms_of_frame): Don't init and staticpro it.
17846
17847 * callproc.c (getenv_internal): Remove special case for $TERM.
17848
17849 * callproc.c (Vinitial_environment): New variable.
17850 (set_initial_environment): Initialize it.
17851 (syms_of_callproc): Declare it.
17852 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
17853 TERM under which a process runs is never related to the TERM in which
17854 Emacs is running.
17855
178562007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17857
17858 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
17859 * s/darwin.h: ... do it here.
17860
178612007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
17862
17863 * lisp.h (set_initial_environment): Rename from set_global_environment.
17864
17865 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
17866 removed by mistake on the multi-tty branch.
17867
17868 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
17869 (Fmodify_frame_parameters): Return a value.
17870
17871 * image.c (png_load): Comment-out var only used in commented-out code.
17872
17873 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
17874 before passing it to mark_object.
17875
17876 * xfaces.c (internal_resolve_face_name): Return a value.
17877 (internal_resolve_face_name, resolve_face_name_error): Comment out.
17878
17879 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
17880 (x_icon): Comment-out var only used in commented-out code.
17881
178822007-08-29 Romain Francoise <romain@orebokech.com>
17883
17884 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
17885 QUIT hasn't been provided.
17886
178872007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17888
17889 * callproc.c (child_setup, getenv_internal): Use the
17890 display-environment-variable and term-environment-variable frame params.
17891 (set_initial_environment): Initialise Vprocess_environment.
17892
17893 * config.in: Disable multi-keyboard support on a mac.
17894
17895 * frame.c (Qterm_environment_variable)
17896 (Qdisplay_environment_variable): New variables.
17897 (syms_of_frame): Intern and staticpro them.
17898 (Fmake_terminal_frame): Disable output method test.
17899
17900 * frame.h: Declare them here.
17901
17902 * macfns.c (x_set_mouse_color): Get rif from the frame.
17903 (x_set_tool_bar_lines): Don't use updating_frame.
17904 (mac_window): Add 2 new parameters for consistency with other systems.
17905 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
17906 frame parameters following what is done in X11 and w32. Don't use
17907 FRAME_MAC_DISPLAY_INFO.
17908 (Fx_open_connection, start_hourglass): Remove window-system check.
17909 (x_create_tip_frame): Get the keyboard from the terminal.
17910
17911 * macmenu.c: Reorder includes.
17912 (Fx_popup_menu): Use terminal specific mouse_position_hook.
17913
17914 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
17915 terminal parameter.
17916 (x_clear_frame): Add a frame parameter.
17917 (note_mouse_movement): Get rif from the frame.
17918 (mac_term_init): Initialize the terminal.
17919 (mac_initialize): Make static and move terminal initialization ...
17920 (mac_create_terminal): ... to this new function.
17921
17922 * macterm.h (struct mac_display_info): Add terminal.
17923 (mac_initialize): Delete declaration.
17924
17925 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
17926
17927 * sysdep.c: Comment out text after #endif.
17928
17929 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
17930 is defined. Better initialize ttys in windows. Use terminal
17931 specific mouse_position_hook.
17932
17933 * termhooks.h (union display_info): Add mac_display_info.
17934
17935 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
17936 Set the default minibuffer frame, window_system and the rest of the
17937 frame parameters following what is done in X11.
17938
17939 * w32term.c (w32_initialize): Make static.
17940
17941 * xselect.c (x_handle_selection_clear): Only access
17942 terminal->kboard when MULTI_KBOARD is defined.
17943
17944 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
17945 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
17946
179472007-08-29 Jason Rumney <jasonr@gnu.org>
17948
17949 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
17950 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
17951
17952 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
17953 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
17954
17955 * keyboard.c (restore_kboard_configuration): Only define when
17956 MULTI_KBOARD defined.
17957
17958 * makefile.w32-in: Update dependancies from Makefile.in.
17959 (OBJ1): Add terminal.$(O)
17960
17961 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
17962 Don't define function body.
17963 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
17964
17965 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
17966
17967 * w32.c (request_sigio, unrequest_sigio): Remove.
17968
17969 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
17970 (w32con_clear_frame, w32con_clear_end_of_line)
17971 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
17972 (w32con_delete_glyphs, w32con_set_terminal_window)
17973 (scroll_line, w32_sys_ring_bell): Add frame arg.
17974 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
17975 Add terminal arg.
17976 (PICK_FRAME): Remove.
17977 (w32con_write_glyphs): Use frame specific terminal coding.
17978 (one_and_only_w32cons): New global variable.
17979 (initialize_w32_display): Use it for storing hooks.
17980 (create_w32cons_output): New function.
17981
17982 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
17983 arg a frame.
17984
17985 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
17986 Set window_system.
17987 (x_set_tool_bar_lines): Don't use updating_frame.
17988 (Fx_create_frame): Set terminal and ref count.
17989 (Fx_open_connection): Remove window-system check.
17990
17991 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
17992
17993 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
17994 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
17995 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
17996 Add frame arg.
17997 (x_delete_terminal, w32_create_terminal): New functions.
17998 (w32_term_init): Create a terminal.
17999 (w32_initialize): Move terminal specific initialization to
18000 w32_create_terminal.
18001
18002 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
18003 (w32_clear_rect, w32_clear_area): Use background from frame.
18004 (w32_display_info): Add terminal.
18005 (w32_sys_ring_bell, x_delete_display): Declare here.
18006
18007 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
18008
18009 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
18010
180112007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
18012
18013 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
18014 Fix get_named_tty calls for the controlling tty.
18015
180162007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
18017
18018 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
18019
180202007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
18021
18022 * term.c (tty_insert_glyphs): Add missing first parameter.
18023
180242007-08-29 Károly Lőrentey <karoly@lorentey.hu>
18025
18026 * buffer.c (Fbuffer_list, Fbury_buffer):
18027 Take frame->buried_buffer_list into account.
18028
18029 * cm.c (current_tty): New variable, for cmputc().
18030 (cmputc): Use it.
18031 (cmcheckmagic): Add tty parameter, look up terminal streams there.
18032 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
18033 (cmgoto): Add tty parameter. Pass it on to calccost().
18034 Use emacs_tputs() instead of tputs().
18035
18036 * cm.h (emacs_tputs): New macro to set current_tty, and then call
18037 tputs().
18038 (current_tty): New variable, for cmputc().
18039 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
18040
18041 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
18042 (internal_condition_case, internal_condition_case_1)
18043 (internal_condition_case_2): Don't abort when x_catching_errors.
18044
18045 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
18046 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
18047 prevent crashes caused by bogus longjmps in read_char.
18048
18049 * keymap.h (Fset_keymap_parent): Add EXFUN.
18050
18051 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
18052 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18053 Remove redundant definition.
18054
18055 * macfns.c (x_set_mouse_color, x_make_gc):
18056 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18057
18058 * w32term.c (x_free_frame_resources):
18059 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18060 (w32_initialize): Use the accessor macros for terminal characteristics.
18061
18062 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
18063 Use the accessor macros for terminal characteristics.
18064 * msdos.c (internal_terminal_init): Use the accessor macros for
18065 terminal characteristics.
18066 (ScreenVisualBell, internal_terminal_init):
18067 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18068
18069 * termopts.h (no_redraw_on_reenter): Declare.
18070
18071 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
18072 (mark_terminals, mark_ttys): Declare.
18073 (Fgarbage_collect): Call them.
18074 (mark_object): Mark buried_buffer_list.
18075
18076 * prefix-args.c: Include stdlib.h for exit.
18077
18078 * syssignal.h: Add comment.
18079
18080 * indent.c: Include stdio.h.
18081
18082 * window.h (Vinitial_window_system): Declare.
18083 (Vwindow_system): Delete declaration.
18084
18085 * fontset.c (Finternal_char_font): Use FRAME_RIF.
18086
18087 * image.c (lookup_image): Don't initialize `c' until the xasserts
18088 have been run.
18089
18090 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
18091 FRAME_FOREGROUND_PIXEL.
18092
18093 * print.c (print_preprocess): Don't lose print_depth levels while
18094 iterating.
18095
18096 * widget.c (update_from_various_frame_slots):
18097 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18098
18099 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
18100 frames.
18101 (window_internal_height): Remove bogus make_number call.
18102 (init_window_once): Call make_terminal_frame with two zero parameters.
18103
18104 * fileio.c (Fread_file_name): Update comment.
18105
18106 * callint.c (Fcall_interactively):
18107 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
18108 Make sure it is correctly unwound.
18109
18110 * xsmfns.c (x_session_close): New function.
18111
18112 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
18113 Delete declarations.
18114
18115 * xterm.h: Remove declaration for x_fully_uncatch_errors.
18116 (x_output): Remove background_pixel and foreground_pixel fields.
18117 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
18118 (x_delete_device, x_session_close): Declare.
18119
18120 * lread.c: Include setjmp.h. Update declaration of `read_char'.
18121 (read_filtered_event): Call `read_char' with a local
18122 `wrong_kboard_jmpbuf'.
18123
18124 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
18125 Don't call single_kboard_state. Use FRAME_RIF.
18126
18127 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
18128 systems.
18129
18130 * lisp.h (set_process_environment): Rename to `set_global_environment'.
18131 (Fframe_with_environment, Fset_input_meta_mode)
18132 (Fset_quit_char): EXFUN.
18133 (x_create_device, tty_output, terminal, tty_display_info): Declare.
18134 (init_sys_modes, reset_sys_modes): Update prototypes.
18135 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
18136
18137 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
18138 Vlocal_key_translation_map, and Vkeyboard_translate_table.
18139 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
18140 Delete declarations.
18141 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
18142 (temporarily_switch_to_single_kboard, tty_read_avail_input):
18143 New declarations.
18144
18145 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
18146 already does that during init_display(). Call syms_of_keymap
18147 before syms_of_keyboard. Call `syms_of_terminal'.
18148 Call set_initial_environment, not set_process_environment.
18149 (shut_down_emacs): Call reset_all_sys_modes() instead of
18150 reset_sys_modes().
18151
18152 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
18153 (internal_resolve_face_name, resolve_face_name_error): New functions.
18154 (resolve_face_name): Protect against loops and errors thrown by Fget.
18155 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
18156 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
18157
18158 * scroll.c: Replace CURTTY() with local variables throughout the
18159 file (where applicable).
18160 (calculate_scrolling, calculate_direct_scrolling)
18161 (scrolling_1, scroll_cost): Use the accessor macros for terminal
18162 characteristics.
18163
18164 * keymap.c (Vfunction_key_map): Remove.
18165 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
18166 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
18167 (Vkey_translation_map): Remove.
18168 (syms_of_keymap): Remove DEFVAR for key-translation-map.
18169 (Fdescribe_buffer_bindings)
18170 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
18171 Update for terminal-local key-translation-map.
18172
18173 * Makefile.in (callproc.o): Update dependencies.
18174 (lisp, shortlisp): Add termdev.elc.
18175 (obj): Add terminal.o.
18176 (terminal.o): Add dependencies.
18177 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
18178 (data.o, fns.o): Add termhooks.h dependency.
18179 (SOME_MACHINE_LISP): Add dnd.elc.
18180 (minibuf.o): Fix typo.
18181 Update dependencies.
18182
18183 * data.c (do_symval_forwarding, store_symval_forwarding)
18184 (find_symbol_value): Use the selected frame's keyboard, not
18185 current_kboard.
18186
18187 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
18188 Vwindow_system.
18189
18190 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
18191 Fmenu_bar_open.
18192 (syms_of_xmenu): Update defsubr.
18193 (mouse_position_for_popup, Fx_popup_menu)
18194 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
18195 (set_frame_menubar, free_frame_menubar)
b97439ce 18196 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
18197 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
18198 an X frame.
18199
18200 * xselect.c (x_own_selection): Abort if not an X frame.
18201 (some_frame_on_display): Check if it is an X frame.
18202 (x_handle_selection_clear): Deal with MULTI_KBOARD.
18203
18204 * coding.c: Include frame.h and termhooks.h.
18205 (terminal_coding, keyboard_coding): Delete.
18206 (Fset_terminal_coding_system_internal)
18207 (Fset_keyboard_coding_system_internal)
18208 (Fkeyboard_coding_system)
18209 (Fterminal_coding_system): Add a terminal parameter.
18210 Get terminal_coding from the terminal.
18211 (init_coding_once): Don't call setup_coding_system here.
18212
18213 * dispextern.h (set_scroll_region, turn_off_insert)
18214 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
18215 (tty_clear_end_of_line, tty_setup_colors)
18216 (delete_tty, updating_frame)
18217 (produce_special_glyphs, produce_glyphs, write_glyphs)
18218 (insert_glyphs): Remove.
18219 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
18220 (tty_turn_off_highlight, get_tty_size): Add declaration.
18221 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
18222
18223 * frame.h (enum output_method): Add output_initial.
18224 (struct x_output): Delete.
18225 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18226 Access foreground_pixel and background_pixel directly from the frame.
18227 (tty_display): Delete.
18228 (struct frame): Add buried_buffer_list, foreground_pixel,
18229 background_pixel and terminal. Delete kboard.
18230 (union output_data): Add tty.
18231 (FRAME_KBOARD): Get the kboard from the terminal.
18232 (FRAME_INITIAL_P): New macro.
18233 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
18234 (Qterm_environment_variable, Qdisplay_environment_variable)
18235 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
18236 New declarations.
18237
18238 * termchar.h (tty_output, tty_display_info): New structures.
18239 (tty_list): Declare.
18240 (FRAME_TTY, CURTTY): New macros.
18241 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
18242 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
18243 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
18244 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
18245
18246 * callproc.c: Include frame.h and termhooks.h, for terminal
18247 parameters.
18248 (add_env): New function.
18249 (child_setup): Use it.
18250 (child_setup, getenv_internal): Handle the new Vprocess_environment.
18251 (getenv_internal): Fix get_terminal_param call.
18252 (Fgetenv_internal, egetenv): Update doc.
18253 (syms_of_callproc): Initialize Vprocess_environment to nil.
18254 Register and initialize them. Remove obsolete defvars. Update doc
18255 strings.
18256 (child_setup): Handle Vlocal_environment_variables.
18257 (getenv_internal): Add terminal parameter.
18258 Handle Vlocal_environment_variables.
18259 (Fgetenv_internal): Add terminal parameter.
18260 (child_setup, getenv_internal, Fgetenv_internal): Store the local
18261 environment in a frame (not terminal) parameter. Update doc strings.
18262 (set_initial_environment): Rename from set_global_environment.
18263 Store Emacs environment in initial frame parameter.
18264
18265 * xdisp.c (redisplay_internal): Update references to
18266 `previous_terminal_frame'.
18267 (display_mode_line, Fformat_mode_line): Replace calls to
18268 `push_frame_kboard' with `push_kboard'.
18269 (get_glyph_string_clip_rects): Add extra parentheses and
18270 braces to prevent compiler warnings.
18271 (calc_pixel_width_or_height): Add xassert to check that the
18272 frame is alive. Don't call `lookup_image' on a termcap frame.
18273 (message2_nolog, message3_nolog, redisplay_internal)
18274 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
18275 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
18276 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
18277 (Fx_display_pixel_width, Fx_display_pixel_height)
18278 (Fx_display_planes, Fx_display_color_cells)
18279 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
18280 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
18281 (Fx_display_backing_store, Fx_display_visual_class)
18282 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
18283 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
18284
18285 * xfns.c (x_set_foreground_color x_set_background_color)
18286 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
18287 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18288 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
18289 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
18290 terminal that is being deleted.
18291 (Fx_create_frame): Use `store_frame_param' to set `window-system'
18292 frame parameter, and make sure it overrides any user-supplied setting.
18293 (Fx_close_connection, Fx_synchronize): Unify argument names with
18294 the rest of the DEFUNs.
18295
18296 * dispnew.c (Fsend_string_to_terminal): Update call to
18297 `get_tty_terminal'.
18298 (Fredraw_frame, Fsend_string_to_terminal)
18299 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
18300 FRAME_TERMCAP_P and FRAME_TTY.
18301 (window_change_signal): Don't believe width/height values that are
18302 impossibly small.
18303 (Vinitial_window_system): Rename from Vwindow_system.
18304 (termscript, Wcm, rif): Delete.
18305
18306 * termhooks.h (struct terminal): New struct containing the
18307 previously global text display hooks and new members NAME,
18308 DELETED and PARAM_ALIST.
18309 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
18310 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
18311 (FRAME_RIF): New macros.
18312 (get_terminal_param, get_device): New declarations.
18313 (termscript): Delete declaration.
18314
18315 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
18316 (XTflash, x_free_frame_resources, x_scroll_bar_create)
18317 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
18318 FRAME_FOREGROUND_PIXEL.
18319 (x_fully_uncatch_errors): Disable definition.
18320 (x_scroll_bar_expose): Fix reference to foreground pixel.
18321 (XTread_socket): Disable loop on all X displays.
18322 (x_delete_terminal): Don't set terminal->deleted and let
18323 delete_terminal delete the frames on the terminal.
18324 (x_delete_display): Doc update to reflect changes in
18325 delete_terminal.
18326 (x_display_info) <terminal>: Move member earlier in the struct.
18327 (deleting_tty): Remove old variable.
18328 (Fsuspend_tty): Call clear_tty_hooks.
18329 (Fresume_tty, init_tty): Call set_tty_hooks.
18330 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
18331 errors on X frames.
18332 (x_catch_errors_unwind): Abort if x_error_message is NULL.
18333 (handle_one_xevent): Initialize `f' to NULL.
18334 (x_delete_terminal, x_create_terminal): New functions.
18335 (XTset_terminal_modes, XTreset_terminal_modes)
18336 (XTread_socket, x_connection_closed, x_term_init)
18337 (x_term_init, x_delete_display): Add terminal parameter.
18338 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
18339 X connections.
18340
18341 * frame.c: Include termchar.h.
18342 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
18343 (Qwindow_system, Qenvironment, Qterm_environment_variable)
18344 (Qdisplay_environment_variable): New vars.
18345 (Fframep): Deal with output_initial.
18346 (Fframe-live-p): Doc fix.
18347 (Fwindow-system): New function.
18348 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
18349 (make_terminal_frame): Don't create frames on a terminal that is
18350 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18351 (store_frame_param): Check for found_for_frame before calling XFRAME.
18352 (Fmake_terminal_frame): Handle NULL tty names correctly.
18353 (syms_of_frame): Enhance doc string of `default-frame-alist'.
18354 (Fdelete_frame): Remove unused variable `count'. Don't allow other
18355 frames to refer to a deleted frame in their 'environment parameter.
18356 (Fframe_with_environment): New function.
18357 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
18358 (get_future_frame_param): New function.
18359 (Fmake_terminal_frame): Use it.
18360 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
18361
18362 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
18363 * sysdep.c (reset_sys_modes): Update for renames.
18364
18365 * keyboard.c (tty_read_avail_input): New function.
18366 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
18367 (syms_of_keyboard): Defsubr them.
18368 (Fset_input_meta_mode, Fset_quit_char): New functions.
18369 (Fset_input_mode): Split to above functions.
18370 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
18371 parameter. Use it in call to `read_char'.
18372 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
18373 Set wrong_kboard_jmpbuf correctly in recursive calls.
18374 Use current_kboard to access Vkeyboard_translate_table.
18375 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
18376 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
18377 Update longjmp invocations. Remember the original current_kboard,
18378 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
18379 changes it. Comment out unnecessary calls to
18380 `record_single_kboard_state' and `any_kboard_state'.
18381 Update recursive calls.
18382 (wrong_kboard_jmpbuf): Remove global variable.
18383 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
18384 Handle deleted interrupted_kboards correctly; that is a legal
18385 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
18386 and read_char calls. Abort if interrupted_kboard died in read_char.
18387 (any_kboard_state, single_kboard_state)
18388 (push_frame_kboard): Remove function.
18389 (pop_kboard): Switch out of single_kboard mode if the kboard has
18390 been deleted. Remove unused variable. Help debugging by not
18391 changing current_kboard unnecessarily. Set current_kboard to the
18392 kboard of the selected frame when the stored kboard object has
18393 been deleted before pop_kboard.
18394 (temporarily_switch_to_single_kboard): Change first parameter to a
18395 frame pointer. Throw an error when caller wants to change kboards
18396 while in single_kboard mode. Don't push_kboard if we weren't in
18397 single kboard state. Don't pop_kboard if we popped into any
18398 kboard state.
18399 (restore_kboard_configuration): Abort if pop_kboard changed the
18400 kboard in single_kboard mode. Call pop_kboard only after setting
18401 up single_kboard mode.
18402 (Frecursive_edit): Switch to single_kboard mode only in nested
18403 command loops.
18404 (cmd_error, command_loop, command_loop_1, timer_check):
18405 Comment out unnecessary call to `any_kboard_state' and
18406 `record_single_kboard_state'.
18407 (delete_kboard): Exit single_kboard mode if we have just deleted
18408 that kboard. Use FRAME_KBOARD.
18409 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
18410 `fatal_error_signal'.
18411 (record_single_kboard_state): Don't push_kboard if we weren't in
18412 single kboard state. Don't pop_kboard if we popped into any
18413 kboard state.
18414 (push_frame_kboard): Rename to push_kboard.
18415 (kbd_buffer_get_event): Use FRAME_TERMINAL.
18416 (read_avail_input): Read input from all terminals.
18417 (mark_kboards): Also mark Vkeyboard_translate_table.
18418 (kbd_buffer_store_event_hold): Simplify condition.
18419 (read_key_sequence): Reinitialize fkey and keytran at each replay.
18420 (Vkeyboard_translate_table): Move to struct kboard.
18421 (init_kboard): Initialize Vkeyboard_translate_table.
18422 (syms_of_keyboard): Use DEFVAR_KBOARD to define
18423 Vkeyboard_translate_table. Update doc strings. Update docs of
18424 local-function-key-map and function-key-map.
18425
18426 * terminal.c: New file.
18427
18428 * term.c: Include errno.h.
18429 (Vring_bell_function, device_list, initial_device)
18430 (next_device_id, ring_bell, update_begin, update_end)
18431 (set_terminal_window, cursor_to, raw_cursor_to)
18432 (clear_to_end, clear_frame, clear_end_of_line)
18433 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
18434 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
18435 (syms_of_term): Move their initialization to terminal.c.
18436 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
18437 (Ftty_display_color_cells)
18438 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
18439 (clear_tty_hooks, set_tty_hooks)
18440 (init_tty, maybe_fatal): New functions.
18441 (Ftty_type): Return nil if terminal is not on a tty instead of
18442 throwing an error. Doc update.
18443 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
18444 Doc update. Initialize new subrs and variables.
18445 (delete_tty): Use terminal->deleted.
18446 (tty_set_terminal_modes): Rename from set_terminal_modes.
18447 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
18448 (set_scroll_region): Rename to `tty_set_scroll_region'.
18449 (turn_on_insert): Rename to `tty_turn_on_insert'.
18450 (turn_off_insert): Rename to `tty_turn_off_insert'.
18451 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
18452 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
18453 (toggle_highligh): Rename to `tty_toggle_highlight'.
18454 (background_highlight): Rename to `tty_background_highlight'.
18455 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
18456 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
18457 (tty_set_scroll_region, tty_background_highlight)
18458 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
18459 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
18460 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
18461 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
18462 Add static modifier.
18463 (tty_reset_terminal_modes, tty_set_terminal_window)
18464 (tty_set_scroll_region, tty_background_highlight)
18465 (tty_highlight_if_desired, tty_cursor_to)
18466 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
18467 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
18468 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
18469 renames.
18470
184712007-08-28 Jan Djärv <jan.h.d@swipnet.se>
18472
18473 * keyboard.c: Qrtl is new.
18474 (parse_tool_bar_item): Handle :rtl keyword.
18475 (syms_of_keyboard): Intern :rtl keyword.
18476
18477 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
18478
18479 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
18480 so no Lisp code is executed.
18481 (file_for_image, find_rtl_image): New functions.
18482 (xg_get_image_for_pixmap): Use file_for_image.
18483 (update_frame_tool_bar): If direction is RTL, use RTL image if
18484 defined. Use Gtk stock images if defined.
18485
184862007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18487
18488 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
18489 for nonexistent or zero-width glyph in composition glyph.
18490
184912007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
18492
18493 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
18494
18495 * xdisp.c (Finvisible_p): New function.
18496 (syms_of_xdisp): defsubr it.
18497
184982007-08-24 Juanma Barranquero <lekktu@gmail.com>
18499
18500 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
18501 Doc fixes.
18502
185032007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18504
18505 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
18506
185072007-08-24 Martin Rudalics <rudalics@gmx.at>
18508
18509 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
18510 whether decoding has modified buffer contents.
18511
185122007-08-24 Jason Rumney <jasonr@gnu.org>
18513
18514 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
18515 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
18516 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
18517 (init_svg_functions) [HAVE_NTGUI]: New function.
18518 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
18519 (svg_load_image): Use them.
18520 (svg_load_image) [HAVE_NTGUI]: Implement background.
18521
185222007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18523
18524 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
18525 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
18526 (LIBX): Remove @RSVG_LIBS@.
18527 (LIBES): Add $(RSVG_LIBS).
18528
18529 * image.c (svg_load_image): Blend with specified background if exists.
18530 Use IMAGE_BACKGROUND. Add Mac OS Support.
18531
18532 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
18533 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
18534 Remove macros.
18535 [MAC_OSX] (socket_callback): Do nothing.
18536 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
18537 ReceiveNextEvent.
18538 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
18539 socket_callback.
18540 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
18541
185422007-08-22 Glenn Morris <rgm@gnu.org>
18543
18544 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
18545
185462007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
18547
18548 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
18549
18550 * image.c: Add support for SVG images. Some additional comments
18551 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
18552 (svg_image_p): New function to test for SVG image.
18553 (svg_load): New function to load SVG image.
18554 (svg_load_image): New function, helper for svg_load.
18555 (Qsvg): New Lisp_object.
18556 (svg_keyword_index): New enum.
18557 (svg_format): New static `image_keyword' struct.
18558 (svg_type): New static `image_type' struct.
18559 (librsvg/rsvg.h): Include it.
18560
185612007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
18562
18563 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
18564
185652007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
18566
18567 * lread.c (Qold_style_backquotes): New var.
18568 (syms_of_lread): Init and staticpro it.
18569 (load_warn_old_style_backquotes): New fun.
18570 (Fload): Use them to warn about old style backquotes.
18571 (end_of_file_error, Fload): Remove unused vars.
18572
18573 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
18574
18575 * lread.c (Vold_style_backquotes): New var.
18576 (syms_of_lread): Init and export it to Elisp.
18577 (read1): Set it when we find an old-style (back)quote.
18578
185792007-08-22 Jason Rumney <jasonr@gnu.org>
18580
18581 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
18582
185832007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
18584
18585 * puresize.h (BASE_PURESIZE): Increase to 1140000.
18586
185872007-08-19 Richard Stallman <rms@gnu.org>
18588
18589 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
18590
185912007-08-19 Andreas Schwab <schwab@suse.de>
18592
18593 * alloc.c (pure): Round PURESIZE up.
18594
185952007-08-17 Jan Djärv <jan.h.d@swipnet.se>
18596
18597 * xterm.c (handle_one_xevent): Remove check that mouse click is in
18598 active frame.
18599
186002007-08-16 Richard Stallman <rms@gnu.org>
18601
18602 * eval.c (Fcommandp): Add parens to clarify.
18603
18604 * minibuf.c (Fall_completions): Use enum for type of table.
18605
18606 * emacs.c (USAGE2): Improve text.
18607
186082007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
18609
18610 * term.c (tty_default_color_capabilities): Declare static
18611 variables in file scope, to avoid HPUX compiler problem.
18612
186132007-08-13 Jan Djärv <jan.h.d@swipnet.se>
18614
18615 * gtkutil.c (update_frame_tool_bar): Use -1 as index
18616 to gtk_toolbar_insert.
18617
186182007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
18619
18620 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
18621
18622 * insdel.c (reset_var_on_error): New fun.
18623 (signal_before_change, signal_after_change):
18624 Use it to reset (after|before)-change-functions to nil in case of error.
18625 Bind inhibit-modification-hooks to t.
18626 Don't bind (after|before)-change-functions to nil while they run.
18627
186282007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18629
18630 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
18631 filling pixmap with stippled background.
18632
186332007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18634
18635 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
18636 Don't use invisible frame as parent window for repositioning.
18637
186382007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
18639
18640 * print.c (new_backquote_output): Rename from old_backquote_output.
18641 (print): Inverse its logic (according to its name) so as to match the
18642 behavior of new_backquote_flag in lread.c.
18643
186442007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18645
18646 * gmalloc.c (posix_memalign): New function.
18647
18648 * macterm.c (frame_highlight, frame_unhighlight): Don't call
18649 ActivateControl/DeactivateControl here.
18650 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
18651 frame-notice-user-settings is non-nil.
18652 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
18653 for kEventParamFMFontStyle.
18654 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
18655 mac_pass_command_to_system and mac_pass_control_to_system here.
18656 (XTread_socket): Call ActivateControl/DeactivateControl here.
18657 (XTread_socket) [TARGET_API_MAC_CARBON]:
18658 Check mac_pass_command_to_system and mac_pass_control_to_system here.
18659 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
18660 for window repositioning.
18661
186622007-08-08 Glenn Morris <rgm@gnu.org>
18663
18664 * Replace `iff' in doc-strings and comments.
18665
186662007-08-07 Chong Yidong <cyd@stupidchicken.com>
18667
18668 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
18669
186702007-08-07 Martin Rudalics <rudalics@gmx.at>
18671
18672 * fileio.c (Finsert_file_contents): Run format-decode and
18673 after_insert_file_functions on entire buffer when REPLACE is
18674 non-nil and inhibit modification_hooks and point_motion_hooks.
18675 For consistency, run after_insert_file_functions iff something
18676 got inserted. Move signal_after_change and update_compositions
18677 after code running after_insert_file_functions. Make sure that
18678 undo_list doesn't record intermediate steps of the decoding process.
18679
186802007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18681
18682 * emacs.c (main)
18683 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
18684 Call malloc_enable_thread on interactive startup.
18685
18686 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
18687 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
18688 [USE_PTHREAD]: Conditionalize with it.
18689 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
18690 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
18691 New functions.
18692
186932007-08-06 Chong Yidong <cyd@stupidchicken.com>
18694
18695 * xdisp.c (redisplay_window): When restoring original buffer
18696 position, make sure it is still valid.
18697
18698 * image.c (png_load): Ignore png-supplied background color.
18699
187002007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18701
18702 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
18703 Use kCFAbsoluteTimeIntervalSince1970.
18704
18705 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
18706 New variable.
18707 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
18708 event loop should be quit.
18709 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
18710 Quit dialog event loop if quit_dialog_event_loop is set.
18711
18712 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
18713 (Selection): New typedef. Use instead of ScrapRef.
18714 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
18715 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
18716 (mac_clear_selection): Rename from clear_scrap.
18717 (get_flavor_type_from_symbol): New argument SEL and subsume function of
18718 scrap_has_target_type. All uses changed.
18719 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
18720 (mac_selection_has_target_p): New functions.
18721 (mac_put_selection_value): Rename from put_scrap_string.
18722 (mac_get_selection_value): Rename from get_scrap_string.
18723 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
18724 (put_scrap_private_timestamp, scrap_has_target_type)
18725 (get_scrap_private_timestamp): Remove functions.
18726 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
18727 (x_own_selection, x_get_local_selection):
18728 Use mac_valid_selection_value_p.
18729 (x_own_selection): Don't use put_scrap_private_timestamp.
18730 Record OWNERSHIP-INFO into Vselection_alist instead.
18731 (x_get_local_selection): Don't check type if request is local.
18732 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
18733 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
18734
187352007-08-04 Jan Djärv <jan.h.d@swipnet.se>
18736
18737 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
18738 add comment explaining why.
18739
187402007-08-03 Richard Stallman <rms@gnu.org>
18741
18742 * fileio.c (Fvisited_file_modtime): Use make_time.
18743
187442007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
18745
18746 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
18747 build.
18748
187492007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
18750
18751 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
18752
187532007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
18754
18755 * puresize.h (BASE_PURESIZE): Increase to 1130000.
18756
187572007-07-30 Richard Stallman <rms@gnu.org>
18758
18759 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
18760
187612007-07-29 Jan Djärv <jan.h.d@swipnet.se>
18762
18763 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
18764
187652007-07-28 Nick Roberts <nickrob@snap.net.nz>
18766
18767 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
18768 remote default-directory.
18769
18770 * buffer.c (mode-line-format): Update doc string.
18771
187722007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18773
18774 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
18775 scroll bar gap.
18776 (x_scroll_bar_create): Set bar->fringe_extended_p.
18777 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
18778 on frame edge. Check fringe background extension. Don't clear
18779 extended fringe background area.
18780
18781 * w32term.h (struct scroll_bar): New member fringe_extended_p.
18782 (w32_fill_area): Enclose multiple statements with do ... while (0).
18783
18784 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
18785 Extend fringe background to scroll bar gap.
18786 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
18787 Set bar->fringe_extended_p.
18788 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18789 Put leftmost/rightmost scroll bars on frame edge. Check fringe
18790 background extension. Don't clear extended fringe background area.
18791
18792 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18793 New member fringe_extended_p.
18794
187952007-07-25 Glenn Morris <rgm@gnu.org>
18796
18797 * Relicense all FSF files to GPLv3 or later.
18798
18799 * COPYING: Switch to GPLv3.
18800
188012007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
18802
18803 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
18804
18805 * data.c (Finteractive_form): Check for the presence of an
18806 `interactive-form' symbol property more thoroughly.
18807
18808 * data.c (Finteractive_form): Use an `interactive-form' property if
18809 present, analogous to the function-documentation property.
18810
188112007-07-24 Jason Rumney <jasonr@gnu.org>
18812
18813 * w32fns.c (x_real_positions): Get real position from OS instead of
18814 calculating it.
18815
188162007-07-23 Jason Rumney <jasonr@gnu.org>
18817
18818 * filelock.c (current_lock_owner): Allow for @ sign in username.
18819
188202007-07-22 Nick Roberts <nickrob@snap.net.nz>
18821
18822 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
18823 remote default-directory.
18824
18825 * buffer.c (mode-line-format): Describe above case in doc string.
18826
188272007-07-20 Eli Zaretskii <eliz@gnu.org>
18828
18829 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
18830 Define if not defined.
18831
188322007-07-18 Jason Rumney <jasonr@gnu.org>
18833
18834 * w32proc.c (w32_executable_type): Handle 64 bit executables.
18835
188362007-07-18 Richard Stallman <rms@gnu.org>
18837
18838 * data.c (Fsetq_default): Doc fix.
18839
18840 * eval.c (Fsetq): Doc fix.
18841
188422007-07-18 Juanma Barranquero <lekktu@gmail.com>
18843
18844 * coding.c (Ffind_operation_coding_system):
18845 * eval.c (For, Fand): Doc fixes.
18846 Reported by Johan Bockgård.
18847
188482007-07-18 Jan Djärv <jan.h.d@swipnet.se>
18849
18850 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
18851
18852 * xterm.h: Declare x_ewmh_activate_frame.
18853
18854 * xterm.c (x_ewmh_activate_frame): New function.
18855 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
18856
188572007-07-17 Martin Rudalics <rudalics@gmx.at>
18858
18859 * window.c (Fdisplay_buffer): If largest or LRU window is the
18860 only window, split it even if it is not eligible for splitting.
18861 This restores the original behavior broken by the 2007-07-15
18862 change.
18863
188642007-07-17 Glenn Morris <rgm@gnu.org>
18865
18866 * abbrev.c (abbrev_check_chars): New function.
18867 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
18868 Call abbrev_check_chars to check abbrev characters are word
18869 constituents. Doc fix.
18870
188712007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
18872
18873 * process.c (Fstart_process, Fmake_network_process)
18874 (read_process_output): Fix up last changes.
18875
188762007-07-16 Eli Zaretskii <eliz@gnu.org>
18877
18878 * makefile.w32-in (clean): Don't delete *~.
18879
188802007-07-16 Andreas Schwab <schwab@suse.de>
18881
18882 * window.c (Fdisplay_buffer): Use NILP.
18883 (Fset_window_scroll_bars): Likewise.
18884
188852007-07-15 Martin Rudalics <rudalics@gmx.at>
18886
18887 * window.c (window_min_size_2): New function.
18888 (window_min_size_1, size_window, Fdisplay_buffer)
18889 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
18890 windows without mode- or header-lines when window-min-height is
18891 too small.
18892 (size_window): Reset nodelete_p after testing it, following an
18893 earlier note by Kim F. Storm.
18894 (display_buffer): Do not set split_height_threshold to twice the
18895 value of window_min_height to avoid changing the value of a
18896 customizable variable. Rather explicitly check whether the
18897 height of the window that shall be splitted is at least as large
18898 as split_height_threshold.
18899 (Fwindow_full_width_p): New defun.
18900 (syms_of_window): Defsubr it.
18901
18902 * window.h: Add EXFUN for Fwindow_full_width_p.
18903
189042007-07-14 Jason Rumney <jasonr@gnu.org>
18905
18906 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
18907
189082007-07-14 Richard Stallman <rms@gnu.org>
18909
18910 * eval.c (maybe_call_debugger): New function.
18911 (find_handler_clause): Use maybe_call_debugger.
18912 Call it when the handler says `debug'.
18913 Eliminate DEBUGGER_VALUE_PTR.
18914 (Fsignal): Eliminate debugger_value.
18915 (Qdebug): New variable.
18916 (syms_of_eval): Initialize it.
18917
189182007-07-14 Juanma Barranquero <lekktu@gmail.com>
18919
18920 * eval.c (Fprogn):
18921 * keyboard.c (Ftrack_mouse):
18922 * print.c (Fwith_output_to_temp_buffer):
18923 * window.c (Fsave_window_excursion): Doc fix.
18924
189252007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
18926
18927 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
18928
189292007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
18930
18931 * process.h (struct Lisp_Process): Turn slots infd, outfd,
18932 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
18933 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
18934 read_output_delay, and read_output_skip from Lisp_Objects to ints.
18935 Remove unused encoding_carryover.
18936 * process.c: Adjust all functions accordingly.
18937
189382007-07-12 Richard Stallman <rms@gnu.org>
18939
18940 * term.c: Include unistd.h only if HAVE_UNISTD_H.
18941
189422007-07-11 Jason Rumney <jasonr@gnu.org>
18943
18944 * makefile.w32-in (LIBS): Include OLE32.
18945
18946 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
18947 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
18948
189492007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
18950
18951 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
18952 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
18953 from a Lisp_Object into a bare pointer.
18954 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
18955 Adjust the code correspondingly.
18956
18957 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
18958
18959 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
18960 (term_show_mouse_face): Remove unused var `j'.
18961 (handle_one_term_event): Remove unused vars `i' and `j'.
18962 Don't cast return value of ttyname since it's not necessary.
18963
189642007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
18965
18966 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
18967 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
18968
18969 * fns.c (map_char_table): Use an array of int for `indices' rather than
18970 an array of Lisp_Objects (which are only ever integers anyway).
18971 (Fmap_char_table): Update caller.
18972 * lisp.h: Update prototype.
18973 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
18974 * fontset.c (Ffontset_info):
18975 * casetab.c (set_case_table): Update callers.
18976
18977 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
18978
18979 * keymap.c (struct accessible_keymaps_data)
18980 (struct where_is_internal_data): New structures.
18981 (accessible_keymaps_1, where_is_internal_1): Use them to change
18982 interface to adhere to the one used by map_keymap.
18983 (Faccessible_keymaps, where_is_internal): Use map_keymap.
18984 (accessible_keymaps_char_table, where_is_internal_2): Remove.
18985
18986 * keymap.h (map_keymap_function_t): More informative prototype.
18987
189882007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
18989
18990 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
18991 (looking_at_1): Don't change search_regs and last_thing_searched
18992 if `inhibit-changing-match-data' is non-nil.
18993 (string_match_1, search_buffer, set_search_regs): Likewise.
18994 (syms_of_search): Add Lisp level definition for
18995 `inhibit-changing-match-data' and set it to nil.
18996 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
18997 start and end of the match, instead of using values in search_regs.
18998
189992007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19000
19001 * minibuf.c (Fcompleting_read): New value `confirm-only'
19002 for `require-match'.
19003
190042007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
19005
19006 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
19007 part of the 2007-06-27 change to syms_of_fileio.
19008
190092007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19010
19011 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
19012 Check WINDOWP before using XWINDOW. Consolidate return statements.
19013
190142007-06-27 Richard Stallman <rms@gnu.org>
19015
19016 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
19017
190182007-06-27 Juanma Barranquero <lekktu@gmail.com>
19019
19020 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
19021
190222007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19023
19024 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
19025 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
19026 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
19027 (_free_internal, memalign): Use them.
19028 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
19029 Initialize to PTHREAD_MUTEX_INITIALIZER.
19030 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
19031 (morecore_nolock): Rename from morecore. All uses changed.
19032 Use only nolock versions of internal allocation functions.
19033 (_malloc_internal_nolock, _realloc_internal_nolock)
19034 (_free_internal_nolock): New functions created from
19035 _malloc_internal, _realloc_internal, and _free_internal.
19036 (_malloc_internal, _realloc_internal, _free_internal): Use them.
19037 Copy hook value to automatic variable before its use.
19038 (memalign): Copy hook value to automatic variable before its use.
19039
190402007-06-26 Kenichi Handa <handa@m17n.org>
19041
19042 * coding.c (Ffind_operation_coding_system): Docstring improved.
19043 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
19044
190452007-06-25 David Kastrup <dak@gnu.org>
19046
19047 * keymap.c (Fcurrent_active_maps): Add `position' argument.
19048 (Fwhere_is_internal): Adjust call to `current-active-maps' to
19049 cater for additional parameter.
19050
19051 * keymap.h: Adjust number of parameters to `current-active-maps'.
19052
19053 * doc.c (Fsubstitute_command_keys): Adjust call of
19054 `current-active-maps'.
19055
190562007-06-25 David Kastrup <dak@gnu.org>
19057
19058 * callint.c (Fcall_interactively): Make the parsing of interactive
19059 specs somewhat more readable.
19060
190612007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19062
19063 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
19064 to scroll bar gap also when bitmap fills fringe. Draw only foreground
19065 if extended background has already been filled.
19066
190672007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19068
19069 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
19070 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
19071
19072 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
19073 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
19074 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
19075 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
19076 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
19077 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
19078 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
19079 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
19080 Run timers during dialog popup.
19081 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
19082
190832007-06-21 Jason Rumney <jasonr@gnu.org>
19084
19085 * image.c (convert_mono_to_color_image): Swap fore and background.
19086
190872007-06-20 Jason Rumney <jasonr@gnu.org>
19088
19089 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
19090 (w32_free_bdf_font): Unmap memory not handle.
19091
190922007-06-20 Sam Steingold <sds@gnu.org>
19093
19094 * gmalloc.c (__morecore): Fix the declaration to comply with the
19095 definition.
19096
190972007-06-20 Juanma Barranquero <lekktu@gmail.com>
19098
19099 * w32term.c (w32_delete_display): Remove leftover declaration.
19100 (w32_define_cursor, w32_initialize): Make static.
19101
19102 * w32.c (_wsa_errlist): Fix typo in error message.
19103 (init_environment): Ignore any environment variable from the
19104 registry having a null value.
19105
191062007-06-20 Glenn Morris <rgm@gnu.org>
19107
19108 * Makefile.in (LIBGIF): Default to -lgif.
19109
191102007-06-17 Jason Rumney <jasonr@gnu.org>
19111
19112 * w32menu.c (add_menu_item): Don't use multibyte string functions on
19113 unicode strings.
19114
191152007-06-16 Juanma Barranquero <lekktu@gmail.com>
19116
19117 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
19118 Fix typo in docstring.
19119
191202007-06-16 Eli Zaretskii <eliz@gnu.org>
19121
19122 * w32menu.c (add_menu_item): Escape `&' characters in menu items
19123 and their keybindings.
19124
191252007-06-15 Chong Yidong <cyd@stupidchicken.com>
19126
19127 * composite.c (update_compositions): Fix last fix.
19128
191292007-06-14 Jason Rumney <jasonr@gnu.org>
19130
19131 * w32.c (get_process_times_fn): New function pointer.
19132 (globals_of_w32): Intialize it if present in kernel32.dll.
19133 (w32_get_internal_run_time): New function.
19134
19135 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
19136
191372007-06-14 Kenichi Handa <handa@etlken.m17n.org>
19138
19139 * composite.c (update_compositions): Check the validness of
19140 compositions.
19141
191422007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19143
19144 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
19145 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
19146
19147 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
19148 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
19149
19150 * macgui.h (USE_MAC_TOOLBAR): New define.
19151
19152 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19153 Return immediately unless popup is activated.
19154
19155 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
19156 background to scroll bar gap.
19157 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
19158 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
19159 scroll bars on frame edge. Check fringe background extension.
19160 Don't clear extended fringe background area.
19161 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
19162 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
19163 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
19164 [USE_MAC_TOOLBAR]: New macros.
19165 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
19166 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
19167 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
19168 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
19169 [USE_MAC_TOOLBAR]: New functions.
19170 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
19171 manually if previous repositioning has failed.
19172 (mac_handle_keyboard_event): Use precomputed event kind.
19173 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
19174 as tool bar item click. Handle mouse movement over tool bar items.
19175
19176 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
19177 toolbar_win_gravity.
19178 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
19179 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
19180 Add externs.
19181
19182 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
19183 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
19184
191852007-06-14 Chong Yidong <cyd@stupidchicken.com>
19186
19187 * image.c (search_image_cache): Remove unused variable.
19188
191892007-06-13 Chong Yidong <cyd@stupidchicken.com>
19190
19191 * xfns.c, xmenu.c: Link to xaw3d if available.
19192
191932007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19194
19195 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
19196 frame_foreground and frame_background.
19197
19198 * image.c (lookup_image): Save frame foreground and background colors.
19199 (search_image_cache): Check if saved and current frame colors match.
19200
192012007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
19202
19203 * regex.c (regex_compile): Remove the `regnum' counter.
19204 Use bufp->re_nsub instead. Add support for \(?N:RE\).
19205
192062007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19207
19208 * term.c: Include intervals.h to declare Fget_text_property.
19209
192102007-06-10 Jason Rumney <jasonr@gnu.org>
19211
19212 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
19213
192142007-06-08 Juanma Barranquero <lekktu@gmail.com>
19215
19216 * callint.c (Fcall_interactively):
19217 * editfns.c (Fdelete_and_extract_region):
19218 * fileio.c (Fread_file_name):
19219 * fns.c (Fmapconcat):
19220 * keyboard.c (cmd_error_internal):
19221 * keymap.c (Fkey_description):
19222 * lread.c (openp):
19223 * minibuf.c (read_minibuf):
19224 * search.c (wordify):
19225 * sunfns.c (sel_read):
19226 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
19227 * xfns.c (x_default_scroll_bar_color_parameter):
19228 * xmenu.c (menu_help_callback):
19229 * xselect.c (Fx_get_atom_name):
19230 * xterm.c (x_term_init): Use empty_unibyte_string.
19231
192322007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
19233
19234 * alloc.c (init_strings): Initialize canonical empty strings.
19235 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
19236 canonical empty string when the requested size is 0.
19237
19238 * emacs.c (empty_unibyte_string): Rename from empty_string.
19239 (empty_multibyte_string): New canonical empty string.
19240 (syms_of_emacs): Don't initialize empty_string.
19241
19242 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
19243 string, if appropriate.
19244 (empty_unibyte_string, empty_multibyte_string): New externs.
19245 (empty_string): Remove extern.
19246
19247 * lread.c (syms_of_lread): Use empty_unibyte_string.
19248
192492007-06-07 Jason Rumney <jasonr@gnu.org>
19250
19251 * s/ms-w32.h: Don't define HAVE_TZNAME.
19252
19253 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
19254
192552007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19256
19257 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
19258
19259 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
19260 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
19261
19262 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19263 Don't call next handler.
19264 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
19265 Remove argument. Install handler to application.
19266 (set_frame_menubar): Don't change deep_p.
19267 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
19268 FRAME_OUTER_TO_INNER_DIFF_Y.
19269 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
19270 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
19271 [HAVE_DIALOGS]: New macros.
19272 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
19273 Use them.
19274 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
19275
19276 * macselect.c [MAC_OSX] (install_service_handler): Rename from
19277 init_service_handler. All callers changed. Return OSStatus value.
19278
19279 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
19280 All callers changed so as not to call SetPortWindowPort.
19281 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
19282 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
19283 mac_draw_string_common.
19284 (mac_draw_image_string_qd): Likewise.
19285 (mac_draw_string_common): Use them. Add INLINE.
19286 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
19287 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
19288 GetGlobalMouse.
19289 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
19290 and FRAME_OUTER_TO_INNER_DIFF_Y.
19291 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
19292 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
19293 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
19294 repositioning window to mac_handle_window_event.
19295 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
19296 saving window location to mac_handle_window_event
19297 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
19298 (install_menu_target_item_handler): Remove argument in extern.
19299 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
19300 Also accept command events.
19301 (do_keystroke): New function created from XTread_socket.
19302 (init_command_handler): Remove functions.
19303 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
19304 and save window location by kEventWindowShowing and kEventWindowHiding
19305 handlers here. Don't call next handler for window state change and
19306 focus events.
19307 (mac_handle_application_event, mac_handle_keyboard_event)
19308 [TARGET_API_MAC_CARBON]: New functions.
19309 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
19310 kEventWindowShowing and kEventWindowHiding events. Move installation
19311 of mouse, font, text input and menu target item handlers to
19312 install_application_handler.
19313 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
19314 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19315 New function.
19316 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19317 Register it.
19318 (XTread_socket) [TARGET_API_MAC_CARBON]:
19319 Consolidate SendEventToEventTarget calls.
19320 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
19321 Move application activation handler to mac_handle_application_event.
19322 Move keyboard handler to mac_handle_keyboard_event.
19323 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
19324 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
19325 init_command_handler. Call install_application_handler.
19326
19327 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
19328 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
19329
193302007-06-07 Glenn Morris <rgm@gnu.org>
19331
19332 * emacs.c (main): Use `emacs-copyright' in --version output.
19333
193342007-06-06 Chong Yidong <cyd@stupidchicken.com>
19335
19336 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
19337
193382007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19339
19340 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
19341
19342 * macgui.h: Replace WindowPtr with WindowRef.
19343
19344 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19345 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19346 Replace ControlHandle with ControlRef.
19347 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
19348
19349 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19350 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19351 Replace ControlHandle with ControlRef.
19352 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
19353 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
19354
19355 * macterm.h (struct scroll_bar): Rename member control_handle_low
19356 and control_handle_high to control_ref_low and control_ref_high.
19357 All uses changed.
19358 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
19359 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
19360 respectively. All uses changed.
19361 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
19362 (install_window_handler, remove_window_handler): Replace WindowPtr
19363 with WindowRef in externs.
19364
193652007-06-05 Juanma Barranquero <lekktu@gmail.com>
19366
19367 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
19368
193692007-06-03 Nick Roberts <nickrob@snap.net.nz>
19370
19371 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
19372
19373 * frame.c (Fmouse_position, Fmouse_pixel_position):
19374 Condition on HAVE_GPM too.
19375
19376 * term.c (term_mouse_highlight): Remove unused variables.
19377 (Fterm_open_connection): Set gpm_zerobased to 1.
19378 (term_mouse_movement, term_mouse_click, handle_one_term_event):
19379 Use zero based co-ordinates.
19380 (handle_one_term_event): Report a drag as mouse movement too.
19381
19382 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
19383
193842007-06-03 Chong Yidong <cyd@stupidchicken.com>
19385
19386 * image.c (search_image_cache): New function. Require background
19387 color match if background color is unspecified in the image spec.
19388 (uncache_image, lookup_image): Use it.
19389
193902007-06-01 Juanma Barranquero <lekktu@gmail.com>
19391
19392 * window.c (Fshrink_window): Reflow docstring.
19393
193942007-06-02 Chong Yidong <cyd@stupidchicken.com>
19395
19396 * Version 22.1 released.
19397
193982007-06-01 Richard Stallman <rms@gnu.org>
19399
19400 * xfns.c (x_encode_text): Add GCPRO.
19401
194022007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19403
19404 * xfns.c (x_set_name_internal): Save encoded name before
19405 x_encode_text in case string data is relocated.
19406
194072007-05-31 Richard Stallman <rms@gnu.org>
19408
19409 * buffer.c (syms_of_buffer): Doc fix.
19410
194112007-05-30 Nick Roberts <nickrob@snap.net.nz>
19412
19413 * sysdep.c (init_sys_modes): Add rather than replace with
19414 O_NONBLOCK.
19415
19416 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
19417 term_mouse_moveto.
19418
19419 * termhooks.h (term_mouse_moveto): New extern.
19420
19421 * term.c (mouse_face_window): Rename...
19422 (Qmouse_face_window): ...to this.
19423 (term_show_mouse_face, term_clear_mouse_face)
19424 (term_mouse_highlight): Use Qmouse_face_window.
19425 (term_mouse_moveto): New function.
19426 (term_mouse_position): Make it work.
19427 (syms_of_term): Uncomment assignment to mouse_position_hook.
19428 Staticpro Qmouse_face_window.
19429
194302007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19431
19432 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
19433 around current_column call.
19434
194352007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
19436
19437 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
19438 * xdisp.c (next_element_from_buffer):
19439 * window.c (delete_window):
19440 * term.c (term_mouse_highlight):
19441 * msdos.c (getdefdir):
19442 * macterm.c (mac_create_bitmap_from_bitmap_data)
19443 (init_font_name_table):
19444 * fns.c (Fsxhash):
19445 * data.c (Fmake_local_variable):
19446 * ccl.c (ccl_driver): Likewise.
19447
194482007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19449
19450 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
19451 Call mac_wakeup_from_rne on window size change.
19452
194532007-05-25 Chong Yidong <cyd@stupidchicken.com>
19454
19455 * image.c (uncache_image): Fix typo.
19456
194572007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
19458
19459 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
19460
194612007-05-22 Richard Stallman <rms@gnu.org>
19462
19463 * xterm.c (x_connection_closed): Remove NO_RETURN.
19464
194652007-05-22 Martin Rudalics <rudalics@gmx.at>
19466
19467 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
19468
194692007-05-21 Chong Yidong <cyd@stupidchicken.com>
19470
19471 * image.c (uncache_image): New function.
19472 (Fimage_refresh): New function.
19473
194742007-05-20 Jan Djärv <jan.h.d@swipnet.se>
19475
19476 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
19477
194782007-05-20 Nick Roberts <nickrob@snap.net.nz>
19479
19480 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
19481 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
19482
194832007-05-20 Nick Roberts <nickrob@snap.net.nz>
19484
19485 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
19486 conditional on [HAVE_GPM_H].
19487
194882007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
19489
19490 * syntax.c (skip_chars): Update syntax-table only after we checked that
19491 the new location is valid.
19492
194932007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19494
19495 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
19496 mac_get_window_bounds.
19497
194982007-05-20 Nick Roberts <nickrob@snap.net.nz>
19499
19500 * Makefile.in (LIBGPM): Allow it to be set from configure.
19501 If set then link Emacs with it.
19502
19503 * config.in: Regenerate.
19504
19505 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
19506 New externs.
19507
19508 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
19509 Include gpm.h.
19510 (handle_one_term_event, term_gpm): New externs.
19511
19512 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
19513 and allow it to be interrupted by SIGIO.
19514
19515 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
19516 (wait_reading_process_output): Wait on gpm_fd too.
19517 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
19518 (add_gpm_wait_descriptor_called_flag): New variable.
19519 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
19520
19521 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
19522 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
19523 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
19524 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
19525 (make_lispy_event): Add case GPM_CLICK_EVENT.
19526 (read_avail_input): Handle mouse input.
19527
19528 * term.c (write_glyphs_with_face): New function.
19529 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
19530 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
19531 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
19532 (mouse_face_face_id, term_gpm, pos_x, pos_y)
19533 (last_mouse_x, last_mouse_y): New variables.
19534 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
19535 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
19536 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
19537 (Fterm_close_connection): New functions.
19538 (term_init): Initialise mouse_face_window.
19539
195402007-05-19 Chong Yidong <cyd@stupidchicken.com>
19541
19542 * xdisp.c (redisplay_window): If first window line is a
19543 continuation line, recompute the new window start instead of
19544 recentering.
19545
195462007-05-18 Glenn Morris <rgm@gnu.org>
19547
19548 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
19549 Suggested by Alfred M. Szmidt <ams@gnu.org>.
19550
195512007-05-17 Glenn Morris <rgm@gnu.org>
19552
19553 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
19554
195552007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19556
19557 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
19558 dead key repeat and up events.
19559
195602007-05-14 Chong Yidong <cyd@stupidchicken.com>
19561
19562 * image.c (pbm_load): Check image size for monochrome pbm.
19563
195642007-05-13 Chong Yidong <cyd@stupidchicken.com>
19565
19566 * xterm.c (XTread_socket): Revert last change.
19567
195682007-05-12 Chong Yidong <cyd@stupidchicken.com>
19569
19570 * image.c (pbm_load): Correctly check image size for greyscale pbm.
19571
19572 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
19573
195742007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19575
19576 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
19577 mixup (YAILOM).
19578
195792007-05-07 Andreas Schwab <schwab@suse.de>
19580
19581 * keymap.c (Flookup_key): Fix typo in last change.
19582
195832007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19584
19585 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
19586 mapping for unibyte strings.
19587
195882007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19589
19590 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
19591 (Fx_popup_dialog) [MAC_OSX]: Likewise.
19592
195932007-04-29 Richard Stallman <rms@gnu.org>
19594
19595 * insdel.c (replace_range): For undo, record insertion first.
19596
195972007-04-29 Andreas Schwab <schwab@suse.de>
19598
19599 * lisp.h (VECSIZE): Use OFFSETOF.
19600
196012007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19602
19603 * xdisp.c (try_window_reusing_current_matrix): Fix number of
19604 disabled lines.
19605
196062007-04-28 Richard Stallman <rms@gnu.org>
19607
19608 * lread.c (read_escape): In a string, \s is always space.
19609
196102007-04-27 Jan Djärv <jan.h.d@swipnet.se>
19611
19612 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
19613
19614 * gtkutil.c (xg_update_menubar, create_menus): Create empty
19615 submenu for menu bar items.
19616
19617See ChangeLog.10 for earlier changes.
19618
19619;; Local Variables:
19620;; coding: utf-8
19621;; add-log-time-zone-rule: t
aac0c6e3
MR
19622;; End:
19623
76b6f707 19624 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
19625
19626 This file is part of GNU Emacs.
19627
19628 GNU Emacs is free software: you can redistribute it and/or modify
19629 it under the terms of the GNU General Public License as published by
19630 the Free Software Foundation, either version 3 of the License, or
19631 (at your option) any later version.
19632
19633 GNU Emacs is distributed in the hope that it will be useful,
19634 but WITHOUT ANY WARRANTY; without even the implied warranty of
19635 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19636 GNU General Public License for more details.
19637
19638 You should have received a copy of the GNU General Public License
19639 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
19640
19641;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40