Don't abort try_window with fonts change when showing tooltip (Bug#2423).
[bpt/emacs.git] / src / ChangeLog
CommitLineData
5634ff85
YM
12010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
6eff5c3d
YM
3 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
4 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
5
6 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
7 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
8 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
9 TRY_WINDOW_CHECK_MARGINS.
10
11 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
12 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423).
5634ff85 13
b13aef54
J
142010-04-09 Jan Djärv <jan.h.d@swipnet.se>
15
16 * xfns.c (Fx_show_tip): Call try_window in a loop until
17 fonts_changed_p is zero (Bug#2423).
18
21d28484
EZ
192010-04-08 Eli Zaretskii <eliz@gnu.org>
20
21 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
22 the end of TEXT_AREA. (Bug#5856)
23
0269ef77
JD
242010-04-08 Jan Djärv <jan.h.d@swipnet.se>
25
26 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
27 HAVE_GCONF.
28
5930fe97
EZ
292010-04-08 Eli Zaretskii <eliz@gnu.org>
30
31 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
32 prev.orig_type, for resolving type of NSM. (Bug#5858)
33
99852628
JD
342010-04-08 Jan Djärv <jan.h.d@swipnet.se>
35
36 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
37 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
38 in current_font.
39 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
40 (Ffont_get_system_normal_font, xsettings_get_system_normal_font): New
41 functions.
42 (syms_of_xsettings): Initialize current_font. defsubr
43 Sfont_get_system_normal_font.
44
45 * xsettings.h (Ffont_get_system_normal_font,
46 xsettings_get_system_normal_font): Declare.
47
48 * xfns.c (extern xlwmenu_default_font): Remove.
49 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
50 to xlwmenu.c.
51
52 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
53 menu items in UTF-8.
54
55 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
56 (apply_systemfont_to_menu): New function.
57 (set_frame_menubar, create_and_show_popup_menu): Call
58 apply_systemfont_to_menu.
59
7fc874c4
J
602010-04-07 Jan Djärv <jan.h.d@swipnet.se>
61
62 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
63 FRAME_LINE_TO_PIXEL_Y.
64
65 * xterm.c (x_set_window_size_1): Don't add border_width/height to
66 pixelwidth/height.
67
863bf481
DN
682010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
69
5e5a3b92
DN
70 Simplify code for HP machines.
71 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
72 for GNU_LINUX, not needed.
73 (UNEXEC, NEED_BSDTTY): Move definitions...
74 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
75
863bf481
DN
76 * m/iris4d.h (UNEXEC): Move definition ...
77 * s/irix6-5.h (UNEXEC): ... here.
78
3e6bec3b
JD
792010-04-04 Jan Djärv <jan.h.d@swipnet.se>
80
81 * xfns.c (set_machine_and_pid_properties): New function.
82 (Fx_create_frame): Call set_machine_and_pid_properties.
83
2912322b
SM
842010-04-03 Eli Zaretskii <eliz@gnu.org>
85
1502b819
EZ
86 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
87 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
88 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
89
2912322b
SM
90 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
91 in this function. (Bug#5703)
92
932010-04-03 Chong Yidong <cyd@stupidchicken.com>
94
95 * nsterm.h: Fix last change.
96
c435b432
DN
972010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
98
a568f507
DN
99 * m/intel386.h (NO_REMAP): Move definition ...
100 * s/msdos.h (NO_REMAP): ... here.
101
4cd9f6c2
DN
102 * m/vax.h (CRT0_DUMMIES): Remove, unused.
103
c435b432
DN
104 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
105 used on those platforms.
106
42a2c622
DN
1072010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
108
109 Remove extern errno declarations.
110 * xterm.c:
111 * xrdb.c:
112 * w32term.c:
113 * unexec.c:
114 * unexaix.c:
115 * sysdep.c:
116 * process.c:
117 * lread.c:
118 * keyboard.c:
119 * floatfns.c:
120 * filelock.c:
121 * fileio.c:
122 * emacs.c (main):
123 * ecrt0.c:
124 * dispnew.c:
125 * callproc.c:
126 * buffer.c: Remove errno extern declarations.
127 * s/netbsd.h (NEED_ERRNO): Remove.
128
8224f93d
DN
1292010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
130
131 Remove all uses of LIBX11_SYSTEM.
132 * Makefile.in (LIBX11_SYSTEM): Remove.
133 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
134 instead.
135
814062c7
EZ
1362010-04-01 Eli Zaretskii <eliz@gnu.org>
137
ed68db4d
EZ
138 Remove support for DJGPP v1.x (bug#5813).
139
140 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
8224f93d
DN
141 * s/msdos.h:
142 * unexec.c (make_hdr, copy_text_and_data):
143 * sysdep.c (wait_for_termination, sys_subshell):
ed68db4d 144 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
52f4d8d5
EZ
145 (IT_set_terminal_modes, __write, _rename, gethostname)
146 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
147 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
148 the value of __DJGPP__.
ed68db4d
EZ
149 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
150 compatibility code.
8224f93d
DN
151 * lread.c:
152 * gmalloc.c (memalign):
153 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
154 * emacs.c (main):
155 * dosfns.c (init_dosfns):
ed68db4d
EZ
156 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
157
52f4d8d5
EZ
1582010-04-01 Eli Zaretskii <eliz@gnu.org>
159
814062c7
EZ
160 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
161 string with `cursor' property comes from an `after-string'
162 overlay. (Bug#5816)
163
0dc2e11d
GM
1642010-04-01 Glenn Morris <rgm@gnu.org>
165
166 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
167 Define as Makefile variables.
168 (LIBX): Use above variables rather than directly using autoconf.
169
1d29df59
DN
1702010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
171
172 Clean up BSD_SYSTEM use.
173 * xterm.c:
174 * process.c:
175 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
176 for including <sys/ioctl.h>.
177 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
178 code is only used for MSDOS.
179
1546c559
JL
1802010-03-31 Juri Linkov <juri@jurta.org>
181
182 * image.c: Add `Qextension_data'.
183 (syms_of_image): Initialize and staticpro `Qextension_data'.
184 (Fimage_metadata): Rename from `Fimage_extension_data'.
185 (gif_load): Put GIF extension data to the property
186 `Qextension_data'.
187
6521c534
CY
1882010-03-31 Chong Yidong <cyd@stupidchicken.com>
189
190 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
191 * nsterm.h: Fix prototype.
192
52c30783
EZ
1932010-03-31 Eli Zaretskii <eliz@gnu.org>
194
195 * xdisp.c (highlight_trailing_whitespace): Support highlight of
196 trailing whitespace in right-to-left rows.
197
855a0da7
SM
1982010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
199
200 Get rid of the direct_output optimizations.
201 * keyboard.c (nonundocount): Remove extern declaration.
202 (command_loop_1): Remove brittle optimisation for cheap and
203 common operations.
204 * xdisp.c (redisplay_internal): Don't bother checking
205 redisplay_performed_directly_p any more.
206 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
207 any more.
208 * dispnew.c (redisplay_performed_directly_p)
209 (direct_output_for_insert, direct_output_forward_char):
210 * dispextern.h (redisplay_performed_directly_p)
211 (direct_output_for_insert, direct_output_forward_char): Remove.
212 * cmds.c (nonundocount): Make it static.
213
85738751 2142010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
a6d676d9
CY
215
216 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
217
85738751 2182010-03-31 Jan Djärv <jan.h.d@swipnet.se>
67fee863
JD
219
220 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
221 invisible (Bug#5766).
222
85738751 2232010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
9ae6e189 224
855a0da7
SM
225 * xdisp.c (x_consider_frame_title, update_window_cursor):
226 Remove HAVE_NS conditionals.
194d44e7 227 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
9ae6e189
CY
228
229 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
230 filename for the title.
231 (ns_set_doc_edited): Do nothing if the selected window is a
232 minibuffer window.
233
234 * nsterm.h: Add prototypes for ns_set_name_as_filename and
235 ns_set_doc_edited.
236
237 * nsterm.m: Remove unneeded prototype.
238
85738751 2392010-03-31 Glenn Morris <rgm@gnu.org>
25c72475
GM
240
241 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
242 in the DOC file. (Bug#5336)
243
85738751 2442010-03-31 Chong Yidong <cyd@stupidchicken.com>
f79a01db
CY
245
246 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
247
75d1428c
SM
2482010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
249
250 * window.c (keys_of_window): Remove redundant/overridden bindings.
251
82043cfb
EZ
2522010-03-30 Eli Zaretskii <eliz@gnu.org>
253
254 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
255 Restore original behavior when the iterator is not bidi_p.
256
b5dd0ae7
DN
2572010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
258
259 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
260
bd924a5d
EZ
2612010-03-30 Eli Zaretskii <eliz@gnu.org>
262
263 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
264 are outside the range of cached character positions.
265
3580374b
JB
2662010-03-30 Juanma Barranquero <lekktu@gmail.com>
267
268 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
269
a7b02820
EZ
2702010-03-30 Eli Zaretskii <eliz@gnu.org>
271
272 Initial support for bidirectional editing.
273
274 * Makefile.in (obj): Include bidi.o.
275 (bidi.o): New target.
276
277 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
278 ($(BLD)/bidi.$(O)): New target.
279
280 * bidi.c: New file.
281
282 * buffer.h (struct buffer): New members bidi_display_reordering
283 and bidi_paragraph_direction.
284
285 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
286 and bidi_paragraph_direction.
287 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
288 and bidi-paragraph-direction.
289 (Fbuffer_swap_text): Swap the values of
290 bidi_display_reordering and bidi_paragraph_direction.
291
292 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
293 (bidi_type_t, bidi_dir_t): New types.
294 (bidi_saved_info, bidi_stack, bidi_it): New structures.
295 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
296 prev_stop, base_level_stop, and eol_pos.
297 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
298 (IT_STACK_SIZE): Enlarge to 5.
299 (struct glyph_row): New member reversed_p.
300 <string_buffer_position>: Update prototype.
301 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
302 glyph_row if bidi_it.paragraph_dir == R2L.
303 (struct glyph): New members resolved_level and bidi_type.
304
305 * dispnew.c (direct_output_forward_char): Give up if we need bidi
306 processing or buffer's direction is right-to-left.
307 (prepare_desired_row): Preserve the reversed_p flag.
308 (row_equal_p): Compare the reversed_p attributes as well.
309
310 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
311 bidi_init_it and set it->paragraph_embedding from the current
312 buffer's value of bidi_paragraph_direction.
313 (reseat_1): Initialize bidi_it.first_elt.
314 (set_iterator_to_next, next_element_from_buffer): Use the value of
315 paragraph_embedding to determine the paragraph direction.
316 (set_iterator_to_next): Under bidi reordering, call
317 bidi_get_next_char_visually. Call bidi_paragraph_init if the
318 new_paragraph flag is set in the bidi iterator.
319 (next_element_from_buffer): If bidi_it.first_elt is set,
320 initialize paragraph direction and find the first character to
321 display in the visual order. If reseated to a middle of a line,
322 prime the bidi iterator starting at the line's beginning. Handle
323 the situation where we overstepped stop_charpos due to
324 non-linearity of the bidi iteration. Likewise for when we back up
325 beyond the previous stop_charpos. When moving across stop_charpos,
326 record it in prev_stop.
327 (display_line): Set row->end and it->start for the next row to the
328 next character in logical order. Always extend reversed_p rows to
329 the end of line, even if they end at ZV. Copy the reversed_p flag
330 to the next glyph row. Keep calling set_cursor_from_row for
331 bidi-reordered rows even if we already have a possible candidate
332 for cursor position. Set row_end after all the row's glyphs have
333 been produced, by looping over the glyphs. Record the position
334 after EOL in it->eol_pos, and use it to set end_pos of the last
335 row produced for a continued line.
336 <Qright_to_left, Qleft_to_right>: New variables.
337 (syms_of_xdisp): Initialize and staticpro them.
338 (string_buffer_position_lim): New function.
339 (string_buffer_position): Most of code moved to
340 string_buffer_position_lim. Last argument and return value are
341 now EMACS_INT; all callers changed.
342 (set_cursor_from_row): Rewritten to support bidirectional text and
343 reversed glyph rows.
344 (text_outside_line_unchanged_p, try_window_id): Disable
345 optimizations if we are reordering bidirectional text and the
346 paragraph direction can be affected by the change.
347 (append_glyph, append_composite_glyph)
348 (produce_image_glyph, append_stretch_glyph): Set the
349 resolved_level and bidi_type members of each glyph.
350 (append_glyph): If the glyph row is reversed, prepend the glyph
351 rather than appending it.
352 (handle_stop_backwards): New function.
353 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
354 (reseat): call handle_stop_backwards to recompute prev_stop and
355 base_level_stop for the new position.
356 (handle_invisible_prop): Under bidi iteration, skip invisible text
357 using bidi_get_next_char_visually. If we are `reseat'ed, init the
358 paragraph direction. Update IT->prev_stop after skipping
359 invisible text.
360 (move_it_in_display_line_to): New variables prev_method
361 and prev_pos. Compare for strict equality in
362 BUFFER_POS_REACHED_P.
363 (try_cursor_movement): Examine all the candidate rows that occlude
364 point, to return the best match. If rows are bidi-reordered
365 and point moved backwards, back up to the row that is not a
366 continuation line, and start looking for a suitable row from
367 there.
368
369 * term.c (append_glyph): Reverse glyphs by pre-pending them,
370 rather than appending, if the glyph_row's reversed_p flag is set.
371 Set the resolved_level and bidi_type members of each glyph.
372
373 * .gdbinit (pbiditype): New command.
374 (pgx): Use it to display bidi level and type of the glyph.
375 (pitx): Display some bidi information about the iterator.
376 (prowlims, pmtxrows): New commands.
377
32a8894e
DN
3782010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
379
380 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
381 * s/usg5-4.h (LIBS_DEBUG):
382 * s/irix6-5.h (C_DEBUG_SWITCH):
383 * s/gnu-linux.h (LIBS_DEBUG):
384 * s/darwin.h (LIBS_DEBUG):
385 * s/bsd-common.h (LIBS_DEBUG):
386 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
387 * m/iris4d.h (LIBS_DEBUG):
388 * m/hp800.h (LIBS_DEBUG): Remove definitions.
389
390 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
391 (LIBS_DEBUG): Remove definition.
392
649dbf36
CY
3932010-03-27 Chong Yidong <cyd@stupidchicken.com>
394
395 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
396 Windows.
397
cad4261f
YM
3982010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
399
400 * process.c (Fmake_network_process): Don't call turn_on_atimers around
401 `connect' (Bug#5723).
402
cd591dbc
HE
4032010-03-25 Helmut Eller <eller.helmut@gmail.com>
404
405 * process.c (Fmake_network_process): Call `select' for interrupted
406 `connect' rather than creating new socket (Bug#5173).
407
e867cb5d 4082010-03-24 Jan Djärv <jan.h.d@swipnet.se>
93318cbd
JD
409
410 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
411
412 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
413
414 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
415
e867cb5d 4162010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ad13a3ee
YM
417
418 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
419 XLoadQueryFont.
420
e867cb5d 4212010-03-24 Kenichi Handa <handa@m17n.org>
fbdc1721
KH
422
423 * coding.c (decode_coding_ccl): Fix previous change for the
424 multibyte case.
fb608df3
KH
425 (encode_coding_ccl): Don't setup ccl program here. Fix for the
426 case that the output buffer is fullfilled.
427 (encode_coding): Setup ccl program here.
fbdc1721 428
e867cb5d 4292010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
35cd7cd6
CY
430
431 * editfns.c (Fformat): Account for string precision when computing
432 field width (Bug#5710).
433
5845f0ed
DN
4342010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
435
814fb708
DN
436 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
437
5845f0ed
DN
438 Simplify LIBS_MACHINE definitions.
439 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
440 * m/iris4d.h (LIBS_MACHINE): Likewise.
441 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
442 * s/aix4-2.h (LIBS_SYSTEM): ... here.
38e3487c 443 * s/netbsd.h: Remove commented out code.
5845f0ed 444
b7064064
DN
4452010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
446
df7734b2
DN
447 Remove dead code dealing with POSIX_SIGNALS.
448 * atimer.c (set_alarm): Remove dead code, all USG systems define
449 POSIX_SIGNALS.
450 * data.c (arith_error): Likewise.
451 * keyboard.c (input_available_signal, handle_user_signal)
452 (interrupt_signal): Likewise.
453 * process.c (sigchld_handler): Likewise.
454 (create_process): Remove if 0 code. Remove HPUX conditional when
455 !defined (POSIX_SIGNALS), it cannot be true.
456 * syssignal.h: Remove USG5_4 and USG conditionals when
457 !POSIX_SIGNALS, they cannot be true.
458
b7064064
DN
459 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
460 NO_SOCK_SIGIO, not used anymore.
461
55da5ee3
DN
4622010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
463
0be96e3a
DN
464 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
465 support vax on BSDs.
466
55da5ee3
DN
467 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
468 * s/aix4-2.h (ORDINARY_LINK): ... here.
469
c0282183
AS
4702010-03-21 Andreas Schwab <schwab@linux-m68k.org>
471
82c3d67a
AS
472 * Makefile.in (abs_builddir): Define.
473 (bootstrap_exe): Use it.
474 (VPATH): Use $(srcdir) instead of @srcdir@.
c0282183 475
3613edce
SM
4762010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
477
478 * Makefile.in (bootstrap_exe): Use an absolute name.
479
7f110ddc
DN
4802010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
481
22e87574
DN
482 Remove support for old GNU/Linux using libc version 5.
483 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
484 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
485
05a670e6
DN
486 Consolidate redundant definitions in s/bsd-common.h.
487 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
488 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
489 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
490 doing it in all files that include this one.
491 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
492 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
493 (LDAV_SYMBOL, KERNEL_FILE): Remove.
494 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
495 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
496 (LDAV_SYMBOL, KERNEL_FILE): Remove.
497 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
498 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
499 (LDAV_SYMBOL, KERNEL_FILE): Remove.
500
2968f561
DN
501 Consolidate redundant definitions.
502 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
503 it's undefined in all files that include this one.
504 (POSIX_SIGNALS): Define here instead of doing it in all files that
505 include this one.
506 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
507 (POSIX_SIGNALS): Do not define.
508 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
509 (POSIX_SIGNALS): Do not define.
510 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
511 (POSIX_SIGNALS): Do not define.
512
15d25dc0
DN
513 Remove support for old UNIX System V systems.
514 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
515 * s/usg-5-4-2.h: Remove.
516
07e339e4
DN
517 Remove support for Solaris on PPC and for old versions.
518 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
519 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
520 that cancel each other.
521 * s/sol2-3.h:
522 * s/sol2-4.h:
523 * s/sol2-5.h: Remove.
524 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
525 (NO_REMAP): Remove, unused.
526 (UNEXEC): Move definition ...
527 * s/aix4-2.h (UNEXEC): ... here.
528
7f110ddc
DN
529 * s/openbsd.h: Remove support for non-ELF and for systems that do
530 not support shared libraries.
531 * s/netbsd.h:
532 * s/freebsd.h: Likewise.
533
605f35cd
DN
5342010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
535
536 Remove non-working support for lynxos 3.0.
537 * s/lynxos.h: Remove file.
538
539 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
540 COFF_BSD_SYMBOLS, nothing defines it anymore.
541
aed71cf4
DN
5422010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
543
544 Remove obsolete uses of HAVE_SHM.
545 * emacs.c (standard_args):
546 (Fdump_emacs):
547 (syms_of_emacs): Remove code depending on HAVE_SHM.
548
549 * alloc.c: Remove HAVE_SHM dependent definition.
550
551 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
552
aded53ff
GM
5532010-03-18 Glenn Morris <rgm@gnu.org>
554
17284745
GM
555 * emacs.c (USAGE4): Hard-code bug address.
556 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
557 (bug_reporting_address): Remove.
558 (main): Don't call bug_reporting_address.
559
aded53ff
GM
560 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
561 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
562
303500aa
CY
5632010-03-15 Chong Yidong <cyd@stupidchicken.com>
564
565 * xfns.c (Fx_create_frame):
566 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
567 on left.
568
cef3058f
CY
5692010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
570
571 * editfns.c (Fformat): Account for string precision when computing
572 field width (Bug#5710).
573
a647d59d
CY
5742010-03-12 Chong Yidong <cyd@stupidchicken.com>
575
4fa42018
CY
576 * xfns.c (Fx_create_frame): Set default to Qright.
577
a647d59d
CY
578 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
579 all window systems.
580
6da23aaa
EZ
5812010-03-12 Eli Zaretskii <eliz@gnu.org>
582
a96f6398 583 These changes remove termcap.c from the build on Posix platforms.
83d02def 584 * Makefile.in (termcapobj): Move termcap.o from here...
6da23aaa
EZ
585 (MSDOS_OBJ): ...to here.
586 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
587 now identical to when LIBS_TERMCAP is defined.
588
589 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
590
591 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
592
a96f6398 593 * config.in: Regenerated. (See top-level ChangeLog.)
6da23aaa 594
288f9fc0
CY
5952010-03-10 Chong Yidong <cyd@stupidchicken.com>
596
597 * Branch for 23.2.
598
d48cd3f4
SM
5992010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
600
601 Cleanup setup of gl_state in various parts of the code.
602 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
603 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
604 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
605 (skip_chars):
606 * regex.c (regex_compile): Use it.
607 (re_compile_pattern): Don't set gl_state.current_syntax_table since
608 it's now set in regex_compile when/if we need it.
609
618db430
SM
6102010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
611
c0335e02
SM
612 Make it possible to C-g in a tight bytecode loop again (bug#5680).
613 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
614 (QUIT): Use it to consolidate code and remove redundancy.
615 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
616
254c06a8
SM
617 * regex.c (regex_compile): Setup gl_state as well.
618
618db430
SM
619 * syntax.c (skip_chars): Setup gl_state (bug#3823).
620 (in_classes): Use CONSP before XCAR/XCDR.
621
233f0c9f
CY
6222010-03-03 Chong Yidong <cyd@stupidchicken.com>
623
624 * keymap.c (Fwhere_is_internal): Use Fequal to compare
625 definitions, so that keyboard macros are correctly handled
626 (Bug#5481).
627
75f80e63
EZ
6282010-03-02 Eli Zaretskii <eliz@gnu.org>
629
630 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
631 text that could be relocated inside the call to emacs_mule_char.
632 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
633 (CODING_DECODE_CHAR): Add a comment describing its purpose.
634
dcfb9bc4
KH
6352010-03-02 Kenichi Handa <handa@m17n.org>
636
fc9a17bc
KH
637 * character.c (parse_str_as_multibyte): Fix handling of the
638 multibyte form of raw-bytes.
639 (str_as_multibyte): Likewise.
640
dcfb9bc4
KH
641 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
642 form of raw-bytes.
643
412c01b6
CY
6442010-02-28 Chong Yidong <cyd@stupidchicken.com>
645
646 * charset.c (load_charset_map_from_file)
647 (load_charset_map_from_vector): Zero out allocated
648 charset_map_entries before using them.
649
df7e1ea0
AS
6502010-02-27 Andreas Schwab <schwab@linux-m68k.org>
651
652 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
653
fe69a722
CY
6542010-02-27 Chong Yidong <cyd@stupidchicken.com>
655
4ed28cf4
CY
656 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
657 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
fe69a722 658
7379cfce
KH
6592010-02-26 Kenichi Handa <handa@m17n.org>
660
f88cc4d6
KH
661 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
662
7379cfce
KH
663 * xdisp.c (reseat_to_string): Fix previous change.
664
cf2fdcfb
CY
6652010-02-26 David Reitter <david.reitter@gmail.com>
666
667 * nsfont.m (nsfont_draw): ns_antialias_text should be a
668 Lisp_Object (Bug#4736).
669
cc6c7c75
KH
6702010-02-25 Kenichi Handa <handa@m17n.org>
671
672 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
673
32e737d7
JD
6742010-02-24 Jan Djärv <jan.h.d@swipnet.se>
675
676 * xterm.c (XTflash): Move declarations before statements.
677
678 * gtkutil.c (xg_get_gdk_display): Remove (unused).
679 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
680 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
681 (xg_create_tool_bar): Remove unused variables.
682 (x_wm_set_size_hint): Move declarations before statements.
683 (xg_create_frame_widgets): Remove variable grav,
684
676cae9f
CY
6852010-02-21 Chong Yidong <cyd@stupidchicken.com>
686
687 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
688
886cc2b8
SM
6892010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
690
691 * term.c (fatal): Add a final \n if needed (bug#5596).
692
ddb2d8e2
CY
6932010-02-18 Chong Yidong <cyd@stupidchicken.com>
694
695 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
696
2a4f8d3d
GM
6972010-02-18 Glenn Morris <rgm@gnu.org>
698
699 * callint.c (Finteractive): Doc fix.
700
ebaf11b6
KH
7012010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
702
886cc2b8
SM
703 * coding.c (record_conversion_result):
704 Handle CODING_RESULT_INSUFFICIENT_DST.
ebaf11b6
KH
705 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
706 memory allocation error.
707
d0396581
KH
7082010-02-17 Kenichi Handa <handa@m17n.org>
709
886cc2b8
SM
710 * coding.c (decode_coding_ccl): Don't setup ccl program here.
711 Fix for the case that the output buffer is fullfilled.
d0396581
KH
712 (decode_coding): Setup ccl program here. Keep looping when the
713 decoder stopped because the output buffer is
714 fullfilled (bug#5534).
715
716 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
717
98599f74
JD
7182010-02-13 Jan Djärv <jan.h.d@swipnet.se>
719
471e4f04 720 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
98599f74 721 bug #5571.
886cc2b8 722 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
471e4f04 723 overdrawn.
98599f74 724
182659ae
JD
7252010-02-10 Jan Djärv <jan.h.d@swipnet.se>
726
727 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
728 doing_interact here.
729 (ice_connection_closed): New function.
730 (x_session_check_input, smc_die_CB, ice_io_error_handler)
731 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
732 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
733 returns I/O error.
734 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
735 bug #5512.
736
9be32c4e 7372010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
14a225f9
CY
738
739 * nsfont.m (nsfont_open): The system's value for the font descent
740 is negative, so round it down to avoid clipping.
741
a2f3eb19
CY
7422010-02-06 Chong Yidong <cyd@stupidchicken.com>
743
744 * charset.c (load_charset_map_from_file)
745 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
953d248c 746 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
a2f3eb19 747
3088147c
CY
7482010-02-05 Chong Yidong <cyd@stupidchicken.com>
749
750 * charset.c (load_charset_map_from_file): Allocate large
751 charset_map_entries structure on the heap rather than the stack.
752 (Bug#5526).
753
b57d9029
KH
7542010-01-31 Kenichi Handa <handa@m17n.org>
755
756 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
115e4fd3 757 size in NAME is invalid, return -1 (Bug#5396).
b57d9029 758
c67d885b
CY
7592010-01-31 Chong Yidong <cyd@stupidchicken.com>
760
761 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
762 <deactivated@gmail.com> (Bug#3605).
763
8fab2362
CY
7642010-01-31 David De La Harpe Golden <david@harpegolden.net>
765
766 * fileio.c (Frename_file): Correctly rename symlinks to
767 directories (Bug#5496).
768
cb2a62f2
CY
7692010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
770
771 * nsterm.m (ns_ring_bell): Handle visible bell like X.
772
944c7a26
AS
7732010-01-30 Andreas Schwab <schwab@linux-m68k.org>
774
775 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
776
c024ac08
CY
7772010-01-29 Chong Yidong <cyd@stupidchicken.com>
778
779 * frame.c (DEFAULT_ROWS): Change default to 35.
780
781 * xfns.c (x_default_font_parameter): Change default XFT font to
782 monospace-10 (Bug#3643).
783
af93af83
EZ
7842010-01-29 Eli Zaretskii <eliz@gnu.org>
785
786 * w32inevt.c (key_event): Remove unnecessary comparison of
787 event->uChar.AsciiChar with 128.
788
ca0eb708
CY
7892010-01-28 Chong Yidong <cyd@stupidchicken.com>
790
b242dbfc
CY
791 * fileio.c (Frename_file): Fix last change (Bug#5487).
792
ca0eb708
CY
793 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
794
795 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
796
45d45af5
JD
7972010-01-28 Jan Djärv <jan.h.d@swipnet.se>
798
799 * xfns.c (Fx_create_frame): Remove window size matching code from
800 2010-01-15.
801 (x_get_current_desktop, x_get_desktop_workarea): Remove
802
7e233730
JR
8032010-01-27 Jason Rumney <jasonr@gnu.org>
804
805 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
a292592c 806 (key_event): Use unicode for characters 128 and higher (Bug#4567).
7e233730 807
86e893e3
KH
8082010-01-27 Kenichi Handa <handa@m17n.org>
809
810 * regex.c (analyse_first): Fix setting of fastmap for unibyte
c8b96b2a 811 pattern string (Bug#4209).
86e893e3 812
8719abec
CY
8132010-01-27 David De La Harpe Golden <david@harpegolden.net>
814
815 * fileio.c (Frename_file): Call copy-directory and
816 delete-directory for directories, in order to handle cross-device
817 renaming (Bug#3353).
818
844794c8
JD
8192010-01-25 Jan Djärv <jan.h.d@swipnet.se>
820
aa3e13b5 821 * xfns.c (Fx_create_frame): If frame height is too big, try
ac146f82 822 sizes 24 and 10. Bug #3643.
844794c8 823
bd4b5750
SM
8242010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
825
8dc1adf6 826 Try and fix bug#788, hopefully for real this time.
bd4b5750
SM
827 * keymap.c (shadow_lookup): Add `remap' arg.
828 (describe_map, describe_vector): Update calls to shadow_lookup.
829 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
830 `remapped' so this flag is applicable to `sequence'. Be careful to
8dc1adf6
SM
831 perform remapping during shadow_lookup check of remapped_sequences.
832
285d07e2
CY
8332010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
834
835 * image.c (png_load): Use png_sig_cmp instead of the obsolete
836 png_check_sig, which has been removed in libpng 1.4.
837
c6d09b8d
CY
8382010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
839
840 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
841 lacks this header file).
842
3d782998
YM
8432010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
844
845 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
846 as in Emacs 22.
847
2aff7c53
YM
8482010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
849
850 * lisp.h (make_pure_string): String pointer arg now points to const.
851
852 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
853 args now point to const.
854
74327f7a
EZ
8552010-01-22 Eli Zaretskii <eliz@gnu.org>
856
857 * lread.c (Fload): Don't treat files without .elc extension as
858 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
859 them. (bug#5303)
860
4d1e6632
KH
8612010-01-20 Kenichi Handa <handa@m17n.org>
862
863 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
864 treat the source as actual byte sequence.
865
1fdede8f
AM
8662010-01-19 Alan Mackenzie <acm@muc.de>
867
868 Fix spurious before-change-functions invocation from (insert ?\n).
194d44e7 869 * textprop.c (set_text_properties): Rename parameter
1fdede8f
AM
870 `signal_after_change_p' to `coherent_change_p', and make the
871 invocation of `modify_region' conditional on it.
872
67477f30
JD
8732010-01-19 Jan Djärv <jan.h.d@swipnet.se>
874
875 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
876 for debug purpose.
877 (syms_of_xsettings): Declare xft-settings.
878
244b023e
CY
8792010-01-18 Chong Yidong <cyd@stupidchicken.com>
880
881 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
882
617364fe
CY
8832010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
884
885 * xterm.c (event_handler_gdk): Block input (Bug#5037).
886
4fe22cdf
CY
8872010-01-16 Chong Yidong <cyd@stupidchicken.com>
888
889 * emacs.c (standard_args): Adjust arg priorities to reflect how
890 they are processed in startup.el.
891
e118d2be
AS
8922010-01-16 Andreas Schwab <schwab@linux-m68k.org>
893
894 * Makefile.in (lisp, shortlisp): Update.
895
523ae620
SM
8962010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
897
898 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
899 code, link the new kboard into all_kboard before running Lisp code,
900 and protect the new terminal with GCPRO (Bug#5365).
901 (x_term_init): Remove unused var `atom'.
902 (x_delete_display, x_delete_terminal): Remove unused var `i'.
903
f0d13888
JD
9042010-01-15 Jan Djärv <jan.h.d@swipnet.se>
905
906 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
907 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
908 to find out usable size of the desktop. Don't make frames larger than
ac146f82 909 this. Bug #3643.
f0d13888 910
cc320f07
KH
9112010-01-15 Kenichi Handa <handa@m17n.org>
912
913 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
914
7ffdf101
CY
9152010-01-15 Chong Yidong <cyd@stupidchicken.com>
916
917 * nsterm.m (Qnone): Define.
918
919 * nsfns.m (Qnone): Move definition to nsterm.m.
920
d12bd917
KH
9212010-01-14 Kenichi Handa <handa@m17n.org>
922
923 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
924 systems.
925
d9a7c140
KH
9262010-01-14 Kenichi Handa <handa@m17n.org>
927
928 Make auto-composition work on all buffers even if they are
929 fundamental mode.
930
931 * composite.c (Vauto_composition_mode): New variable.
932 (composition_compute_stop_pos): Check Vauto_composition_mode
933 instead of Vauto_composition_function.
934 (composition_adjust_point, Ffind_composition_internal): Likewise.
935 (syms_of_composite): Declare Lisp variable
936 "auto-composition-mode" here.
937
63286bb2
CY
9382010-01-13 Chong Yidong <cyd@stupidchicken.com>
939
940 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
941 during call to vendor-specific-keysyms (Bug#5365).
942
c2623ee7
YM
9432010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
944
945 * keyboard.c (input_available_signal) [SYNC_INPUT]:
946 Call SIGNAL_THREAD_CHECK (Bug#5333).
947
948 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
949 Call SIGNAL_THREAD_CHECK.
950
0b5397c2
SM
9512010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
952
953 Try to fix bug#5314. This is probably not the final word, tho.
954 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
955 recent-auto-save-p as a side-effect.
956 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
957 * buffer.c (Fkill_buffer, reset_buffer):
958 * editfns.c (Fsubst_char_in_region):
959 * fileio.c (Finsert_file_contents, Fdo_auto_save)
960 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
961
dc954cb2
KH
9622010-01-13 Kenichi Handa <handa@m17n.org>
963
964 Display buffer name, etc. in mode line by composing correctly.
965
966 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
967 STRING is not nil.
0b5397c2 968 (display_mode_element): Adjust for the change of
dc954cb2
KH
969 decode_mode_spec and display_line.
970 (decode_mode_spec): Change arg MULTIBYTE to STRING.
971 (display_string): Handle the case that STRING is non-null and
972 LISP_STRING is not nil.
973
0b5397c2
SM
974 * xterm.c (x_draw_composite_glyph_string_foreground):
975 Pay attention to s->face->overstrike.
dc954cb2
KH
976
977 * composite.c (composition_reseat_it): Don't check PT if STRING is
978 non nil.
979
4a00eaca
YM
9802010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
981
982 * keyboard.c (read_char): Don't apply previous change when current
983 buffer is unchanged by command execution.
984
60abb287
JD
9852010-01-12 Jan Djärv <jan.h.d@swipnet.se>
986
987 * keyboard.c (read_char): Return after executing from special map.
988
893db5bc
GM
9892010-01-12 Glenn Morris <rgm@gnu.org>
990
991 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
992 bug-gnu-emacs rather than emacs-pretest-bug.
993
4d03ece0
CY
9942010-01-11 Chong Yidong <cyd@stupidchicken.com>
995
996 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
997 initializing the Lisp variables that depend on them.
998
1df47e38
YM
9992010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1000
1001 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
1002 Clear areas that will not be updated after change of menu bar lines.
1003 Clear the menu bar window's current matrix when the window gets empty.
1004
2f1c6384
CY
10052010-01-09 Chong Yidong <cyd@stupidchicken.com>
1006
e398c61c
CY
1007 * intervals.h, textprop.c (extend_property_ranges): Return value
1008 and args changed. Discard properties that begin at or after the
1009 new end (Bug#5306).
1010
1011 * editfns.c (Fformat): Caller changed.
1012
e5a29a10
CY
1013 * nsterm.m (ns_set_default_prefs): Delete function.
1014 (syms_of_nsterm): Initialize ns_command_modifier,
1015 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
1016 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
1017
2f1c6384
CY
1018 * xdisp.c (pos_visible_p): Check for invisible text at the correct
1019 position (Bug#4040).
1020
d427a9fa
EZ
10212010-01-09 Eli Zaretskii <eliz@gnu.org>
1022
1023 * editfns.c (Ffloat_time): Doc fix.
1024
21b9df2f
JD
10252010-01-09 Jan Djärv <jan.h.d@swipnet.se>
1026
1027 * xfns.c (Fx_create_frame): Don't create frame larger than display
1028 by default bug#3643.
1029
4b00d3b1
YM
10302010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1031
1032 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
1033 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
1034 windows above internal border.
1035
1036 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
1037 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
1038 windows above internal border.
1039
1040 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
1041 tool bar windows specially.
1042
1043 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
1044
1045 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
1046 specially.
1047 (XTflash): Take account of menu bar height.
1048
1049 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
1050 specially.
1051
5075d853
JD
10522010-01-08 Jan Djärv <jan.h.d@swipnet.se>
1053
ac146f82 1054 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
5075d853
JD
1055 also be true before we can return early (bug #5339).
1056
474217c8
CY
10572010-01-06 David Reitter <david.reitter@gmail.com>
1058
1059 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
1060 (Fns_display_usable_bounds): Rewrite, computing bounds properly
1061 (Bug#3233).
1062
c0e6d47d
JD
10632010-01-06 Jan Djärv <jan.h.d@swipnet.se>
1064
d0cf45b7
JD
1065 * font.c (font_open_entity): Enable chache and call cached_font_ok
1066 for the driver if defined.
1067 (QCuser_spec): New symbol.
1068 (font_spec_from_name): Save name as user-spec.
1069 (font_load_for_lface): Keep user-spec instead of name.
1070 (font_open_by_name): Save name as user-spec.
1071 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 1072 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
1073
1074 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
1075 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
1076 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
1077
1078 * font.h (struct font_driver): Add cached_font_ok.
1079
c0e6d47d
JD
1080 * xterm.c (x_clear_frame): Queue draw for scroll bars.
1081
7c583cd8
JD
10822010-01-05 Jan Djärv <jan.h.d@swipnet.se>
1083
1084 * xterm.c (x_new_font): Move code for setting rows/cols before
1085 resizing ...
ac146f82 1086 (x_set_window_size): ... to here. Bug #2568.
7c583cd8
JD
1087
1088 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
1089 (xg_frame_resized, xg_frame_set_char_size):
1090 Call xg_clear_under_internal_border.
7c583cd8 1091 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 1092
03f77f0a
CY
10932010-01-05 Chong Yidong <cyd@stupidchicken.com>
1094
1095 * keyboard.c (read_key_sequence): Catch keyboard switch after
1096 making a new tty frame (Bug#5095).
1097
2a1ef5be
KH
10982010-01-05 Kenichi Handa <handa@m17n.org>
1099
1100 * fontset.c (fontset_find_font): Fix getting the frame pointer.
1101
e3eb1dae
SM
11022010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
1103
1104 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
1105 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
1106 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
1107
777013f2
MA
11082010-01-03 Michael Albinus <michael.albinus@gmx.de>
1109
1110 * dbusbind.c (xd_add_watch): Improve debug message.
1111 (xd_remove_watch): Improve debug message. If DATA is the session
1112 bus, unset D-Bus session environment.
1113 (Fdbus_init_bus): Pass the bus as argument to
1114 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 1115
8932b1c2
CY
11162010-01-01 Chong Yidong <cyd@stupidchicken.com>
1117
87231e2c
CY
1118 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
1119
4801c5fa
CY
1120 * lread.c (syms_of_lread): Make it clearer that these are the
1121 names of loaded files (Bug#5068).
1122
8932b1c2
CY
1123 * eval.c (run_hook_with_args): Handle the case where the global
1124 value has the obsolete single-function form (Bug#5026).
1125
11e3c684
CY
11262009-12-27 Chong Yidong <cyd@stupidchicken.com>
1127
1128 * minibuf.c (Fall_completions): Minor optimization.
1129
5b28ce35
EZ
11302009-12-26 Eli Zaretskii <eliz@gnu.org>
1131
5ce6e4f4
JB
1132 * .gdbinit (pgx): Fix display of composite glyphs.
1133 Display cmp.from and cmp.to as well.
1134 (pitx): Fix last change.
5b28ce35 1135
bcffff46
KH
11362009-12-25 Kenichi Handa <handa@m17n.org>
1137
1138 * composite.h (composition_adjust_point): Update prototype.
1139
1140 * composite.c (composition_reseat_it): Don't make a composition
1141 spanning over point.
1142 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
1143 composable characters.
1144 (composition_adjust_point): New arg NEW_PT. Callers changed.
1145
1146 * keyboard.c (command_loop_1): Force redisplay if the last point
1147 was within a composition.
1148 (adjust_point_for_property): Don't adjust point for automatic
1149 composition when called after buffer modification.
1150
3f670e9a
EZ
11512009-12-19 Eli Zaretskii <eliz@gnu.org>
1152
5ce6e4f4
JB
1153 * .gdbinit (pitx): Don't use enum names, use their values.
1154 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
1155 (pgx): Don't use enum names, use their values.
1156 (pitmethod): New helper command.
1157 (pitx): Use it to display iteration method.
1158 (pgrowit): New command.
1159
ad903955
EZ
1160 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
1161
3f670e9a
EZ
1162 Update dependencies in Makefile.in.
1163
1164 * Makefile.in (alloc.o): Depend on termhooks.h.
1165 (atimer.o): Depend on blockinput.h.
1166 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
1167 and frame.h.
1168 (callint.o): Depend on systime.h, coding.h, and composite.h.
1169 (callproc.o): Depend on buffer.h.
1170 (casefiddle.o): Don't depend on charset.h.
1171 (casetab.o): Depend on character.h.
1172 (ccl.o): Depend on composite.h.
1173 (chartab.o): Depend on ccl.h.
1174 (cm.o): Depend on dispextern.h.
1175 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
1176 (coding.o): Don't depend on $(INTERVALS_H).
1177 (composite.o): Don't depend on dispextern.h explicitly (it's in
1178 $(INTERVALS_H)). Depend on ccl.h.
1179 (data.o): Depend on systime.h, coding.h, composite.h,
1180 dispextern.h, font.h, and ccl.h.
1181 (dired.o): Depend on composite.h.
1182 (dispnew.o): Depend on coding.h. Don't depend explicitly on
1183 composite.h (it's in $(INTERVALS_H)).
1184 (doc.o): Depend on systime.h, coding.h, and composite.h.
1185 (editfns.o): Don't depend explicitly on dispextern.h.
1186 (emacs.o): Depend on frame.h and coding.h.
1187 (eval.o): Depend on coding.h, composite.h, and xterm.h.
1188 (fileio.o): Depend on frame.h and commands.h. Don't depend
1189 explicitly on dispextern.h.
1190 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
1191 composite.h.
1192 (fns.o): Don't depend on termhooks.h.
1193 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
1194 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
1195 coding.h, $(INTERVALS_H), window.h, xterm.h.
1196 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
1197 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
1198 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
1199 fontset.h, ccl.h, and ftfont.h.
1200 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
1201 (gtkutil.o): Depend on dispextern.h and composite.h.
1202 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
1203 termhooks.h, and ccl.h.
1204 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
1205 (intervals.o): Depend on systime.h and coding.h.
1206 (keyboard.o): Depend on composite.h and coding.h.
1207 (keymap.o): Depend on coding.h and frame.h.
1208 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
1209 (macros.o): Depend on systime.h, coding.h, and composite.h.
1210 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
1211 and atimer.h.
1212 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
1213 dispextern.h explicitly.
0b5397c2
SM
1214 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
1215 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
1216 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
1217 (regex.o): Don't depend on charset.h.
1218 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
1219 (search.o): Don't depend explicitly on composite.h.
1220 (sound.o): Depend on atimer.h and systime.h.
1221 (syntax.o): Don't depend explicitly on composite.h.
1222 (sysdep.o): Depend on coding.h and composite.h.
1223 (term.o): Depend on xterm.h and buffer.h.
1224 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
1225 (textprop.o): Don't depend on dispextern.h explicitly.
1226 (undo.o): Depend on dispextern.h.
1227 (window.o): Depend on coding.h and termhooks.h. Don't depend on
1228 dispextern.h and composite.h explicitly.
1229 (xdisp.o): Depend on ccl.h.
1230 (xfaces.o): Depend on coding.h and ccl.h.
1231 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
1232 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
1233 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
1234 ftfont.h.
1235 (xgselect.o): New dependency.
1236 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
1237 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
1238 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
1239 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
1240 (xsmfns.o): Depend on frame.h and dispextern.h.
1241 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
1242 sysselect.h.
1243
7a6f7fea
AS
12442009-12-19 Andreas Schwab <schwab@linux-m68k.org>
1245
1246 * font.c (Fclear_font_cache): Pass correct cache argument to
1247 font_clear_cache.
1248
f4c21026
AS
12492009-12-16 Andreas Schwab <schwab@linux-m68k.org>
1250
1251 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
1252 twice.
1253
f7ab0997
CY
12542009-12-15 Chong Yidong <cyd@stupidchicken.com>
1255
1256 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
1257 calling file-remote-p. Reported by Jim Meyering.
1258
fa8e045a
MA
12592009-12-15 Michael Albinus <michael.albinus@gmx.de>
1260
1261 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 1262 avoid compiler warnings. (Bug #5217)
fa8e045a 1263
a63dba42
KH
12642009-12-14 Kenichi Handa <handa@m17n.org>
1265
1266 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
1267 in 8-bit encoding.
1268
5ce6e4f4 12692009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
1270
1271 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
1272 tooltip windows.
1273
223e5fc6
JD
12742009-12-13 Jan Djärv <jan.h.d@swipnet.se>
1275
36acb2a7
JD
1276 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
1277 Xatom_net_window_type.
1278
1279 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
1280 Xatom_net_window_type.
1281
b8f00677
JD
1282 * xterm.c (my_log_handler): New function.
1283 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 1284 so we can filter out buggy messages. (Bug #5120).
b8f00677 1285
e5f0bc9a
JD
1286 * xterm.c (xg_scroll_callback): Parameter list changed,
1287 use parameter GtkScrollType to determine scroll/line/page.
1288 Only allow dragging if a button < 4 is grabbed (bug #5177).
1289 (xg_end_scroll_callback): New function.
1290 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
1291 xg_create_scroll_bar.
1292
1293 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
1294 (scroll_end_callback): Remove.
1295 (xg_create_scroll_bar): Add parameter end_callback, bind it to
1296 button-release-event. Replace value-changed event with change-value,
1297 bug #5177,
1298 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
1299 bug #5177.
1300
1301 * gtkutil.h (XG_LAST_SB_DATA): Remove.
1302 (xg_create_scroll_bar): Add GCallback end_callback.
1303
223e5fc6
JD
1304 * xftfont.c (QClcdfilter): New variable.
1305 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
1306 (syms_of_xftfont): Initialize QClcdfilter.
1307
3c055b77
JD
13082009-12-12 Jan Djärv <jan.h.d@swipnet.se>
1309
1310 * xsettings.c (struct xsettings): Add member seen.
1311 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 1312 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
1313 (apply_xft_settings): Only update Xft settings with what member seen
1314 indicates as new.
1315
05fe33ff
EZ
13162009-12-12 Eli Zaretskii <eliz@gnu.org>
1317
1318 * dispextern.h (struct text_pos): Use EMACS_INT;
1319 (struct glyph): Use EMACS_INT for charpos.
1320 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
1321 region_beg_charpos, region_end_charpos,
1322 redisplay_end_trigger_charpos, and also for
1323 iterator_stack_entry.end_charpos and
1324 iterator_stack_entry.stop_charpos.
1325
e8d7886a
JD
13262009-12-12 Jan Djärv <jan.h.d@swipnet.se>
1327
5ce6e4f4 1328 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
1329 (xg_create_scroll_bar): Call scroll_end_callback on button release
1330 event (bug #5177).
1331 (xg_event_is_for_scrollbar): != replaced with ==.
1332
d0db2ec8
KH
13332009-12-12 Kenichi Handa <handa@m17n.org>
1334
1335 * ftfont.c (struct ftfont_info): New member matrix.
1336 (ftfont_open): Setup xftfont_info->matrix.
1337 (MFLTFontFT): New member matrix.
1338 (FLOOR, CEIL, ROUND): New macros.
1339 (ftfont_get_metrics): Handle matrix transformation.
1340 (ftfont_shape_by_flt): New arg matrix. Callers changed.
1341
1342 * xftfont.c (struct xftfont_info): New member matrix.
1343 (xftfont_open): Setup xftfont_info->matrix.
1344
13452009-12-10 Kenichi Handa <handa@m17n.org>
1346
1347 * xdisp.c (append_space_for_newline): Consider face-remapping.
1348
2cc7b62f
AS
13492009-12-09 Andreas Schwab <schwab@linux-m68k.org>
1350
b87dd913
AS
1351 * xsettings.c: Include "keyboard.h".
1352
eba5eb94
AS
1353 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
1354
2cc7b62f
AS
1355 Fix implicit function declarations.
1356 * cmds.c: Include "frame.h".
1357 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
1358 * frame.h: Move declaration of delete_frame outside of
1359 HAVE_WINDOW_SYSTEM.
1360
a4ef73c8
CY
13612009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
1362
1363 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
1364
1365 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
1366 GTK builds.
1367
944a300c
AS
13682009-12-07 Andreas Schwab <schwab@linux-m68k.org>
1369
1370 * unexelf.c (unexec): Don't search for .data twice.
1371
022eef62
CY
13722009-12-05 Chong Yidong <cyd@stupidchicken.com>
1373
426ac949
CY
1374 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
1375 if push failed.
1376 (handle_line_prefix): Set avoid_cursor_p here. Check return value
1377 of push_display_prop (Bug#5000).
1378
022eef62
CY
1379 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
1380 value of font_list_entities (Bug#5085).
1381
be95bee9
JB
13822009-12-04 Juanma Barranquero <lekktu@gmail.com>
1383
1384 Fix `string-to-number' to deal consistently with integers and floats.
1385 * lread.c (isfloat_string): New argument ignore_trailing to accept all
1386 trailing characters, not just whitespace.
1387 (read1): Pass new arg 0 to keep old behavior.
1388 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
1389 trailing chars, as it is already done for integers. Doc fixes.
1390 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
1391
24c2d7ce
EZ
13922009-12-04 Eli Zaretskii <eliz@gnu.org>
1393
0b5397c2
SM
1394 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
1395 Delete unused enumeration value.
24c2d7ce 1396
7e694795
EZ
13972009-12-03 Eli Zaretskii <eliz@gnu.org>
1398
1399 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
1400
84b31826
SM
14012009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
1402
1403 * process.c (Fmake_network_process): Fix up the tests for
1404 "connectionless socket", so they DTRT for seqpacket sockets as well.
1405
f00c449b
SM
14062009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
1407
1408 * process.c (Qseqpacket): New symbol.
1409 (HAVE_SEQPACKET): New macro.
1410 (Fmake_network_process): Accept new :type `seqpacket'.
1411 (init_process): Add `seqpacket' feature when applicable.
1412 (syms_of_process): Initialize Qseqpacket.
1413
8096a0ff
YM
14142009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1415
1416 * font.c (font_load_for_lface, font_open_by_name): Don't store name
1417 if entity is Qnil.
1418
3e0de07f
SM
14192009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
1420
1421 * print.c (print_preprocess): Preprocess the key_and_value table of
1422 hashtables, even tho they're "hidden" (bug#5082).
1423
abeafb2a
JD
14242009-11-29 Jan Djärv <jan.h.d@swipnet.se>
1425
1426 * frame.c (frame_make_pointer_invisible)
1427 (frame_make_pointer_visible): Declare f before statements.
1428
4bf47195
EZ
14292009-11-28 Eli Zaretskii <eliz@gnu.org>
1430
1431 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
1432 omitted dependencies on lisp.h.
1433
c525b3f2
JD
14342009-11-27 Jan Djärv <jan.h.d@swipnet.se>
1435
ece2d4ed
JD
1436 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
1437 is NULL.
1438
1439 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
1440
1441 * frame.c (frame_make_pointer_invisible)
3e0de07f 1442 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
1443 frame.
1444
c525b3f2
JD
1445 * search.c (simple_search): Remove warning by making *p const.
1446
2f00e299
DN
14472009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
1448
1449 * xdisp.c (power_letter): Remove duplicate const.
1450
084b049b
JD
14512009-11-25 Jan Djärv <jan.h.d@swipnet.se>
1452
a1fadc6f
JD
1453 * term.c (delete_tty): Remove check for last terminal (bug#4970).
1454
5ce6e4f4 1455 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
1456 defaults (bug #5025).
1457
28259cac
SM
14582009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
1459
1460 * insdel.c (adjust_markers_for_delete): Move it in the
1461 right direction! (bug#4803)
1462
e8e14166
YM
14632009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1464
1465 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
1466
1467 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
1468
86677b58
GM
14692009-11-24 Glenn Morris <rgm@gnu.org>
1470
1471 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
1472
581e51e8
JD
14732009-11-23 Jan Djärv <jan.h.d@swipnet.se>
1474
cfc86c7a
JD
1475 * Makefile.in: Must create deps for ecrt0.o in its rule.
1476
581e51e8
JD
1477 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
1478 because that is what Gtk+ font dialog understands.
1479
1480 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
1481 of Fcopy_sequence.
1482 (font_open_by_name): Put name given into QCname for font-object returned.
1483
1484 * frame.c (x_set_font): Save original font name as frame parameter
1485 font-parameter.
1486
1487 * xsettings.c (set_default_xft_settings): New function.
1488 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
1489 is found.
1490
8b264ecb
AS
14912009-11-22 Andreas Schwab <schwab@linux-m68k.org>
1492
1493 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
1494 searching backwards through multibyte buffer.
1495
872870b2
JD
14962009-11-21 Jan Djärv <jan.h.d@swipnet.se>
1497
1498 * xterm.c: #include xgselect.h.
1499 (x_initialize): Call xgselect_initialize.
1500
1501 * xsettings.c (something_changedCB): C++ comments => C comments.
1502 (init_gconf): Do not deal with any GLib file descriptors, xg_select
1503 does that now.
1504
1505 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
1506 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
1507 (scroll_bar_button_cb): Remove.
5ce6e4f4 1508 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
1509 event.
1510 (xg_create_scroll_bar): Don't bind button-press-event and
1511 button-release-event.
1512
1513 * process.c: Include xgselect.h if defined (USE_GTK) ||
1514 defined (HAVE_GCONF).
1515 (wait_reading_process_output): Call xg_select for the same condition.
1516
1517 * xgselect.c (xg_select): New function to better integrate with
1518 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
1519
1520 * xgselect.h: New file, declare xg_select, xgselect_initialize.
1521
1522 * Makefile.in (XOBJ): Add xgselect.o.
1523
62a6e103
AS
15242009-11-21 Andreas Schwab <schwab@linux-m68k.org>
1525
0b5397c2
SM
1526 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
1527 Remove ignored second argument. All callers changed.
62a6e103
AS
1528 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
1529 (RE_STRING_CHAR_AND_LENGTH): Likewise.
1530 * xdisp.c (string_char_and_length): Likewise.
1531
b0ca0f33
DN
15322009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
1533
1534 * xterm.c (x_new_font):
1535 * print.c (print_object):
1536 * cmds.c (Fself_insert_command): Move declarations before statements.
1537
dd5a6279
CY
15382009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
1539
1540 * s/cygwin.h: Remove unneeded linker flags.
1541
4a8e097d
JD
15422009-11-20 Jan Djärv <jan.h.d@swipnet.se>
1543
0d1d0d26
JD
1544 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
1545
1546 * xsettings.h: Declare xsettings_get_system_font.
1547
1548 * xsettings.c (xsettings_get_system_font): New function.
1549 (init_gconf): No use initiating gconf unless we have Xft also.
1550 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
1551 HAVE_GCONF.
1552
4a8e097d
JD
1553 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
1554 add a blank entry so it doesn't collapse into nothing.
1555
8ab1650e
SM
15562009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
1557
1558 * lread.c (Funintern): Comment out last change.
1559
82c602f0
RS
15602009-11-19 Richard Stallman <rms@gnu.org>
1561
1562 * lread.c (Funintern): Error if symbol is t or nil.
1563
87e32266
SM
15642009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
1565
1566 * insdel.c (make_gap_larger): Don't make as many assumptions about the
1567 representation of Lisp integers.
1568 Reported by MJ Chan <mjchan.inbox@gmail.com>.
1569
1b9ac145
AS
15702009-11-17 Andreas Schwab <schwab@linux-m68k.org>
1571
1572 * lisp.h: Remove declaration of Ffont_get_system_font.
1573 * xfns.c: Move include of "xsettings.h".
1574 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
1575
dfb3c4c6
JD
15762009-11-17 Jan Djärv <jan.h.d@swipnet.se>
1577
87e32266
SM
1578 * xsettings.c (something_changedCB, Ffont_get_system_font):
1579 Check use_system_font.
dfb3c4c6
JD
1580 (syms_of_xsettings): DEFVAR font-use-system-font.
1581
9370c1d8
AS
15822009-11-17 Andreas Schwab <schwab@linux-m68k.org>
1583
25fe851a
AS
1584 * xfns.c (x_default_font_parameter): Remove dead assignment.
1585
9370c1d8
AS
1586 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
1587
637fa988
JD
15882009-11-17 Jan Djärv <jan.h.d@swipnet.se>
1589
87e32266 1590 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 1591 not have FC_LCD_*. #define them if not there.
a6eb20d8 1592
87e32266 1593 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 1594
637fa988
JD
1595 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
1596
1597 * xterm.c (handle_one_xevent): Call xft_settings_event for
1598 ClientMessage, PropertyNotify and DestroyNotify.
1599 (x_term_init): If we have XFT, get DPI from Xft.dpi.
1600 Call xsettings_initialize.
1601
1602 * xftfont.c (xftfont_fix_match): New function.
1603 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
1604 Call xftfont_fix_match after XftFontMatch.
1605
1606 * xfont.c (xfont_driver): Initialize all members.
1607
87e32266
SM
1608 * xfns.c (x_default_font_parameter):
1609 Try font from Ffont_get_system_font.
637fa988
JD
1610 Do not get font from x_default_parameter if we got one from
1611 Ffont_get_system_font.
87e32266 1612 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
1613
1614 * w32font.c (w32font_driver): Initialize all members.
1615
1616 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
1617
1618 * lisp.h: Declare syms_of_xsettings.
1619
87e32266
SM
1620 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
1621 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
1622
1623 * ftfont.c (ftfont_filter_properties): New function.
1624
1625 * frame.c (x_set_font): Remove unused variable lval.
1626
87e32266 1627 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
1628
1629 * font.c (font_put_extra): Don't return if val is nil, it means
1630 boolean option is off.
1631 (font_parse_fcname): Collect all extra properties in extra_props
1632 and call filter_properties for all drivers with extra_props and
1633 font as parameter.
87e32266
SM
1634 (font_open_entity): Do not use cache, it does not pick up new
1635 fontconfig settings like hinting.
637fa988
JD
1636 (font_load_for_lface): If spec had a name in it, store it in entity.
1637
1638 * emacs.c (main): Call syms_of_xsettings
1639
1640 * config.in: HAVE_GCONF is new.
1641
1642 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
1643 xsettings.o is new.
1644
5a942932
KH
16452009-11-17 Kenichi Handa <handa@m17n.org>
1646
1647 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
1648 back to the default font in case that no suitable font is found.
1649
b7c7a4d1
SM
16502009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1651
1652 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
1653 Suggested by Chad Brown <yandros@mit.edu>.
1654 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
1655
072f1e39
JD
16562009-11-16 Jan Djärv <jan.h.d@swipnet.se>
1657
1658 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
1659
5d1e70a2
AS
16602009-11-14 Andreas Schwab <schwab@linux-m68k.org>
1661
87e32266 1662 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 1663
a53cfbe5
JD
16642009-11-14 Jan Djärv <jan.h.d@swipnet.se>
1665
473a99b7
JD
1666 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
1667 has a parent.
1668
a53cfbe5 1669 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 1670 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
1671
1672 * config.in: Generated (AUTO_DEPEND).
1673
f04bb9b2
MA
16742009-11-13 Michael Albinus <michael.albinus@gmx.de>
1675
b7c7a4d1 1676 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
1677 Vdbus_registered_functions_table, because it contains also
1678 properties. Fix docstring.
b7c7a4d1 1679 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 1680
8f11f7ec
SM
16812009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
1682
1683 * alloc.c (mark_object): Don't reprocess marked strings.
1684 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
1685 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
1686
8a605fe8
KH
16872009-11-13 Kenichi Handa <handa@m17n.org>
1688
8f11f7ec 1689 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
1690 semantics of Vword_combining_categories.
1691 (Vword_combining_categories): Describe the slight change of the
1692 semantics.
1693
241c4680
EZ
16942009-11-13 Eli Zaretskii <eliz@gnu.org>
1695
1696 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
1697
1698 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
1699
5d58e44c
SM
17002009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
1701
1702 * xdisp.c (syms_of_xdisp): Fix typo in last change.
1703
5e13f9d3
JB
17042009-11-12 Juanma Barranquero <lekktu@gmail.com>
1705
1706 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
1707
cf54c754
DR
17082009-11-11 David Reitter <david.reitter@gmail.com>
1709
1710 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
1711 variables to fix 2009-11-09 change.
1712
a4ada374
DN
17132009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
1714
91433552
DN
1715 * process.c (ifflag_def): Make flag_sym constant.
1716 (Fnetwork_interface_info): Use a constant pointer.
1717 (ifflag_table):
1718 * xfns.c (cursor_bits):
1719 * xdisp.c (power_letter):
1720 * termcap.c (speeds, esctab):
1721 * sysdep.c (baud_convert):
1722 * keyboard.c (lispy_accent_codes, modifier_names):
1723 * image.c (xbm_format, xpm_format, pbm_format, png_format)
1724 (jpeg_format, tiff_format, gif_format, svg_format)
1725 (interlace_start, interlace_increment, gs_format):
1726 * gtkutil.c (separator_names):
1727 * fringe.c (swap_nibble):
1728 * fns.c (base64_value_to_char, base64_char_to_value):
1729 * fileio.c (make_temp_name_tbl):
1730 * coding.c (suffixes): Make constant.
1731
f4265f6c
DN
1732 * frame.c (make_initial_frame):
1733 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
1734 build_string.
1735 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
1736
04420943
DN
1737 * s/freebsd.h:
1738 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
1739
0a5d24ae
DN
1740 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
1741 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
1742
a4ada374
DN
1743 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
1744 * xterm.c (syms_of_xterm):
1745 * xfaces.c (syms_of_xfaces):
1746 * xdisp.c (syms_of_xdisp):
1747 * lread.c (syms_of_lread):
1748 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
1749 build_string.
91433552 1750
a4ada374
DN
1751 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
1752
af98fc7f
SM
17532009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
1754
8ab1650e 1755 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 1756
e90292a9
JD
17572009-11-10 Jan Djärv <jan.h.d@swipnet.se>
1758
1759 * keyboard.h: Declare timer_check.
1760
1761 * keyboard.c (timer_check_2): New function that does what the old
1762 timer_check did.
1763 (timer_check): Call timer_check_2 until -1 or a non-zero time is
1764 returned, i.e. don't return -1 with timers pending.
1765
1766 * process.c: Remove extern declaration of timer_check.
1767
1768 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
1769 even if timer_check returned -1.
1770
af98fc7f
SM
1771 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
1772 xg_dialog_data.
e90292a9
JD
1773 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
1774 the event loop.
1775 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
1776 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
1777 Destroy the dialog after xg_dialog_run.
1778
045b83c0
SM
17792009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
1780
1781 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
1782
1fb99a3a
JD
17832009-11-10 Jan Djärv <jan.h.d@swipnet.se>
1784
1785 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
1786
04e452cb
JB
17872009-11-09 Juanma Barranquero <lekktu@gmail.com>
1788
1789 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
1790
ef7417fd
SM
17912009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
1792
1793 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
1794 w32menu.c, and nsmenu.m.
1795 Simplify the obsolete case where position is nil.
1796 (cleanup_popup_menu): New function, moved from nsmenu.m.
1797 (struct skp): Remove slot `notreal'.
1798 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
1799 adjust callers.
1800 (single_menu_item): Adjust call to parse_menu_item.
1801 (syms_of_menu): Defsubr x-popup-menu.
1802 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
1803 (keymap_panes): Don't export any more.
1804 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
1805 (xmenu_show): Declare.
1806 * keyboard.c (parse_menu_item): Remove arg `notreal'.
1807 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
1808 * keyboard.h (parse_menu_item): Update declaration.
1809 * xmenu.c (Fx_popup_menu): Remove.
1810 (syms_of_xmenu): Don't defsubr x-popup-menu.
1811 * w32menu.c (Fx_popup_menu): Remove.
1812 (syms_of_w32menu): Don't defsubr x-popup-menu.
1813 * nsmenu.m (cleanup_popup_menu): Remove.
1814 (ns_menu_show): Rename from ns_popup_menu and remove all the code
1815 moved to menu.c's Fx_popup_menu.
1816 (Fx_popup_menu): Remove.
1817 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
1818 menu_items (it's done in menu.c already).
1819
424d6179
SM
18202009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
1821
1822 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
1823 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
1824
c0df13a6 18252009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
1826
1827 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 1828 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
1829 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
1830 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
1831
2de9f71c
SM
18322009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
1833
1834 Let integers use up 2 tags to give them one extra bit and thus double
1835 their range.
1836 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
1837 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
1838 New macros.
1839 (enum Lisp_Type): Use them. Give explicit values.
1840 (Lisp_Type_Limit): Remove.
1841 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
1842 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
1843 Pay attention to USE_2_TAGS_FOR_INTS.
1844 (INTEGERP): Use LISP_INT_TAG_P.
1845 * fns.c (internal_equal): Simplify the default case.
1846 (sxhash): Use case_Lisp_Int.
1847 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
1848 any more.
1849 (Ftype_of): Use case_Lisp_Int.
1850 (store_symval_forwarding): Take into account the fact that Ints can
1851 now have more than one tag.
1852 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
1853 buffer_slot_type_mismatch):
1854 * xfaces.c (face_attr_equal_p):
1855 * print.c (print_object):
1856 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
1857 Use case_Lisp_Int.
1858
323637a2
EZ
18592009-11-06 Eli Zaretskii <eliz@gnu.org>
1860
7ac65b38
EZ
1861 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
1862
323637a2
EZ
1863 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
1864 warning.
1865
e511451f
JD
18662009-11-06 Jan Djärv <jan.h.d@swipnet.se>
1867
1868 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
1869
1870 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
1871
1872 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
1873 ButtonPressRelease and MotionNotify (bug#4870).
1874
5e2327cf
DN
18752009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
1876
5adc433e
DN
1877 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
1878
d67b4f80
DN
1879 * xterm.c (syms_of_xterm):
1880 * xselect.c (syms_of_xselect):
1881 * xmenu.c (syms_of_xmenu):
1882 * xfns.c (syms_of_xfns):
1883 * xfaces.c (syms_of_xfaces):
1884 * xdisp.c (syms_of_xdisp):
1885 * window.c (syms_of_window):
1886 * w32fns.c (syms_of_w32fns):
1887 * undo.c (syms_of_undo):
1888 * textprop.c (syms_of_textprop):
1889 * terminal.c (syms_of_terminal):
1890 * syntax.c (syms_of_syntax):
1891 * sound.c (syms_of_sound):
1892 * search.c (syms_of_search):
1893 * print.c (syms_of_print):
1894 * minibuf.c (syms_of_minibuf):
1895 * macros.c (syms_of_macros):
1896 * keymap.c (syms_of_keymap, initial_define_key)
1897 (initial_define_lispy_key):
1898 * keyboard.c (syms_of_keyboard):
1899 * insdel.c (syms_of_insdel):
1900 * image.c (syms_of_image):
1901 * fringe.c (syms_of_fringe):
1902 * frame.c (syms_of_frame):
1903 * fontset.c (syms_of_fontset):
1904 * fns.c (syms_of_fns):
1905 * fns.c (syms_of_fns):
1906 * fileio.c (syms_of_fileio):
1907 * fileio.c (syms_of_fileio):
1908 * eval.c (syms_of_eval):
1909 * doc.c (syms_of_doc):
1910 * dispnew.c (syms_of_display):
1911 * dired.c (syms_of_dired):
1912 * dbusbind.c (syms_of_dbusbind):
1913 * data.c (syms_of_data):
1914 * composite.c (syms_of_composite):
1915 * coding.c (syms_of_coding):
1916 * cmds.c (syms_of_cmds):
1917 * charset.c (define_charset_internal, syms_of_character):
1918 * ccl.c (syms_of_ccl):
1919 * category.c (syms_of_category, init_category_once):
1920 * casetab.c (syms_of_casetab):
1921 * casefiddle.c (syms_of_casefiddle):
1922 * callint.c (syms_of_callint):
1923 * bytecode.c (syms_of_bytecode):
1924 * buffer.c (keys_of_buffer, syms_of_buffer):
1925 * alloc.c (syms_of_alloc):
1926 * process.c (syms_of_process, init_process):
1927 * lread.c (syms_of_lread, init_obarray):
1928 * font.c (build_style_table):
1929 * emacs.c (syms_of_emacs, main): Replace calls to intern with
1930 intern_c_string, calls to make_pure_string with
1931 make_pure_c_string. Use pure_cons instead of Fcons.
1932
5e2327cf
DN
1933 * process.c (socket_options): Make it const.
1934 (set_socket_option, init_process): Use a const pointer.
1935
1936 * lread.c (intern_c_string): New function.
1937 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
1938 (defvar_int): Uset it. Make the name const char*.
1939
1940 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
1941 (defvar_int): Update prototypes.
1942 (DEFUN, EXFUN): Support for prototypes is now required.
1943 (intern_c_string): New prototype.
1944 (struct Lisp_Subr): Make symbol_name constant.
1945
1946 * font.c (struct table_entry): Remove unused member. Make NAMES
1947 constant.
1948 (weight_table, slant_table, width_table): Make constant.
1949
1950 * emacs.c (struct standard_args): Make name and longname constant.
1951
1952 * character.h (DEFSYM): Use intern_c_string.
1953
a56eaaef
DN
19542009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
1955
1956 * alloc.c (make_pure_c_string): New function.
1957
1958 * eval.c (Fautoload): Purecopy all arguments.
1959
f6a07420
KH
19602009-11-05 Kenichi Handa <handa@m17n.org>
1961
1962 * fileio.c (Finsert_file_contents): Be sure set coding-system of
1963 the buffer in case of replace.
1964
5d28d4b1
DN
19652009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
1966
1967 * puresize.h (BASE_PURESIZE): Increase to 1620000.
1968
b349d111
SM
19692009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
1970
d528b1ce
SM
1971 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
1972 when applicable (bug#4851).
1973
b349d111
SM
1974 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
1975 (P_): Support for prototypes is now required.
1976
c38eb027
CY
19772009-10-31 Chong Yidong <cyd@stupidchicken.com>
1978
1979 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
1980 (Bug#4827).
1981
0405f8d9
EZ
19822009-10-30 Eli Zaretskii <eliz@gnu.org>
1983
d528b1ce 1984 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 1985
ca0a881a
DN
19862009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
1987
1988 * puresize.h (BASE_PURESIZE): Increase to 1470000.
1989
d528b1ce
SM
1990 * lread.c (Fload): Purecopy the file name when building
1991 Vpreloaded_file_list.
ca0a881a 1992
47e0e0e4
JR
19932009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
1994
1995 * w32fns.c (syms_of_w32fns): Change default value of
1996 w32-scroll-lock-modifier to nil. (Bug#2827)
1997
057bce6f
JB
19982009-10-26 Juanma Barranquero <lekktu@gmail.com>
1999
782a943e 2000 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 2001
242bc74c
AS
20022009-10-26 Andreas Schwab <schwab@redhat.com>
2003
2004 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
2005
522d013a
JB
20062009-10-26 Juanma Barranquero <lekktu@gmail.com>
2007
2008 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
2009 For delta < 0, skip check that only makes sense when the mini-window
2010 is going to be enlarged. (Bug#4534)
2011
18060980
CY
20122009-10-25 Chong Yidong <cyd@stupidchicken.com>
2013
2014 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
2015 string in menu maps (Bug#4471).
2016
fec8f0fe
CY
20172009-10-24 Chong Yidong <cyd@stupidchicken.com>
2018
2019 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
2020 FRAME_NS_VIEW on terminal frames (Bug#4765).
2021
10d66ec0
AS
20222009-10-24 Andreas Schwab <schwab@linux-m68k.org>
2023
1cae01f7
AS
2024 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
2025 DBUS_TYPE_UINTnn separately to get proper sign extension.
2026
58a12889
AS
2027 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
2028 can properly handle unsigned types.
d528b1ce 2029 (make_uid, make_gid): Remove.
58a12889 2030
987c9327
AS
2031 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
2032 types again.
2033
522d013a 2034 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
2035 (system_process_attributes): Likewise.
2036
905a9ed3
DN
20372009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
2038
2039 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
2040
2041 * eval.c (Fautoload): Purecopy the filename. Simplify.
2042
2043 * category.c (Fdefine_category): Purecopy docstring.
2044
a599b3e8
AS
20452009-10-23 Andreas Schwab <schwab@linux-m68k.org>
2046
7b792fc9
AS
2047 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
2048
a599b3e8
AS
2049 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
2050
b35ac83e
CY
20512009-10-23 Chong Yidong <cyd@stupidchicken.com>
2052
2053 * window.c (Fwindow_edges, Fwindow_pixel_edges)
2054 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
2055 (Bug#4775).
2056
e8903e00
SM
20572009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
2058
2059 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
2060 (init_fileio_once):
2061 * lisp.h (init_fileio_once): Remove.
2062 * emacs.c (main): Don't call init_fileio_once.
2063
8f43cbf3
DN
20642009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
2065
2066 * puresize.h (BASE_PURESIZE): Increase to 1430000.
2067
26898943
AS
20682009-10-21 Andreas Schwab <schwab@linux-m68k.org>
2069
2070 * doprnt.c (doprnt): Fix overflow check.
2071
5c646d5a
JD
20722009-10-21 Jan Djärv <jan.h.d@swipnet.se>
2073
3132a7ea
JD
2074 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
2075
5c646d5a
JD
2076 * xterm.h (x_wait_for_event): Declare it.
2077
2078 * xterm.c (pending_event_wait): New variable.
2079 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
2080 see pending_event_wait.eventtype.
2081 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
2082 (x_new_font): Call change_frame_size with new rows/columns before we
2083 try to resize the frame.
5c646d5a 2084 (x_wait_for_event): New function.
d528b1ce
SM
2085 (x_set_window_size_1): Don't change gravity unless change_gravity
2086 is set.
5c646d5a
JD
2087 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
2088 don't change frame size, instead wait for the ConfigureNotify.
2089 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
2090 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
2091 (x_initialize): Initialize pending_event_wait.
2092
2093 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
2094 size.
2095
2096 * widget.c (EmacsFrameSetValues): Add comment.
2097 (EmacsFrameSetCharSize): Just call x_set_window_size.
2098
2099 * gtkutil.c (xg_frame_set_char_size): Flush events and call
2100 x_wait_for_event.
d528b1ce 2101 (flush_and_sync): Remove again.
5c646d5a
JD
2102 (xg_get_font_name): Suggest monospace if no previous font is known.
2103
e9c1637d
SM
21042009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
2105
2106 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 2107 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 2108
5a72cccb
YM
21092009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2110
2111 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
2112 processing pending events when event is filtered for input method.
ab04798f 2113 (Bug#3681)
5a72cccb 2114
2629aa37
JB
21152009-10-20 Juanma Barranquero <lekktu@gmail.com>
2116
2117 * fns.c: Add #endif accidentally removed in previous change.
2118
c3417a74
DN
21192009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
2120
2121 * fns.c: Remove code for unsupported system: MAC_OS.
2122 * image.c: Likewise. Include setjmp.h.
2123
9685cef2
JD
21242009-10-19 Jan Djärv <jan.h.d@swipnet.se>
2125
2126 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
2127 pixel -1 (bug #4742).
2128
d7306fe6
DN
21292009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
2130
019d2c4c
DN
2131 * process.c (create_pty): Remove conditionals for no longer
2132 supported systems: UNIPLUS and RTU.
2133
ee6bacd4
DN
2134 * xterm.c:
2135 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
2136
d7306fe6
DN
2137 * alloc.c: Do not define struct catchtag.
2138 * eval.c: Move struct catchtag definition ...
2139 * lisp.h: ... here.
2140
2141 * image.c: Move png.h #include earlier to avoid warnings.
2142
2143 * xterm.c:
2144 * xsmfns.c:
2145 * xselect.c:
2146 * xrdb.c:
2147 * xmenu.c:
2148 * xftfont.c:
2149 * xfont.c:
2150 * xfns.c:
2151 * xfaces.c:
2152 * xdisp.c:
2153 * window.c:
2154 * widget.c:
2155 * w32xfns.c:
2156 * w32uniscribe.c:
2157 * w32term.c:
2158 * w32select.c:
2159 * w32reg.c:
2160 * w32proc.c:
2161 * w32menu.c:
2162 * w32inevt.c:
2163 * w32heap.c:
2164 * w32font.c:
2165 * w32fns.c:
2166 * w32console.c:
2167 * w32.c:
2168 * w16select.c:
2169 * vm-limit.c:
2170 * unexsol.c:
2171 * unexec.c:
2172 * unexcw.c:
2173 * unexaix.c:
2174 * undo.c:
2175 * tparam.c:
2176 * textprop.c:
2177 * terminfo.c:
2178 * terminal.c:
2179 * termcap.c:
2180 * term.c:
2181 * syntax.c:
2182 * sound.c:
2183 * sheap.c:
2184 * search.c:
2185 * scroll.c:
2186 * region-cache.c:
2187 * regex.c:
2188 * ralloc.c:
2189 * process.c:
2190 * print.c:
b024548b
DN
2191 * nsterm.m:
2192 * nsselect.m:
2193 * nsmenu.m:
2194 * nsimage.m:
2195 * nsfont.m:
2196 * nsfns.m:
d7306fe6
DN
2197 * msdos.c:
2198 * minibuf.c:
2199 * menu.c:
2200 * marker.c:
2201 * macros.c:
2202 * keymap.c:
2203 * keyboard.c:
2204 * intervals.c:
2205 * insdel.c:
2206 * indent.c:
2207 * gtkutil.c:
2208 * ftxfont.c:
2209 * ftfont.c:
2210 * fringe.c:
2211 * frame.c:
2212 * fontset.c:
2213 * font.c:
2214 * fns.c:
2215 * floatfns.c:
2216 * filelock.c:
2217 * fileio.c:
2218 * emacs.c:
2219 * editfns.c:
2220 * dosfns.c:
2221 * doprnt.c:
2222 * doc.c:
2223 * dispnew.c:
2224 * dired.c:
2225 * dbusbind.c:
2226 * data.c:
2227 * composite.c:
2228 * coding.c:
2229 * cmds.c:
2230 * cm.c:
2231 * chartab.c:
2232 * charset.c:
2233 * character.c:
2234 * ccl.c:
2235 * category.c:
2236 * casetab.c:
2237 * casefiddle.c:
2238 * callproc.c:
2239 * callint.c:
2240 * bytecode.c:
2241 * buffer.c:
2242 * atimer.c: Include setjmp.h. (Bug#4643)
2243
fd5f21e6
SM
22442009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
2245
4c0354d7
SM
2246 Remove leftover table unibyte_to_multibyte_table.
2247 * character.c (unibyte_to_multibyte_table): Remove.
2248 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
2249 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
2250 * character.h (UNIBYTE_TO_CHAR): New macro.
2251 (MAKE_CHAR_MULTIBYTE): Use it.
2252 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
2253 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
2254 (message_dolog, set_message_1):
2255 * search.c (Freplace_match):
2256 * editfns.c (Fcompare_buffer_substrings):
2257 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
2258 (concat):
2259 * insdel.c (copy_text, count_size_as_multibyte):
2260 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
2261 * term.c (produce_glyphs):
2262 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
2263 * regex.c (RE_CHAR_TO_MULTIBYTE):
2264 * cmds.c (internal_self_insert):
2265 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
2266
fd5f21e6
SM
2267 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
2268
4418646e
DN
22692009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
2270
2271 * puresize.h (BASE_PURESIZE): Increase to 1310000.
2272
35f5c1d2
JB
22732009-10-16 Juanma Barranquero <lekktu@gmail.com>
2274
2275 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
2276
a0cd8f6b
AR
22772009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
2278
2279 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
2280 still needed under Tiger.
2281
2282 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
2283
2284 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
2285 __Apple__.
2286
2287 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
2288
01a8d3fa
KH
22892009-10-15 Kenichi Handa <handa@m17n.org>
2290
2291 * print.c (print_object): Escape a symbol like "2E10" too.
2292
bf6c75c9 22932009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
2294
2295 Cleanups and changes for 64-bit compile under Snow Leopard.
2296 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
2297
2298 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
2299
c5959062 2300 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
2301 (ns_findfonts, nsfont_list_family): Use long format in printf, and
2302 cast argument.
2303 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 2304 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
2305
2306 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
2307
2308 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
2309 where appropriate.
2310
2311 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
2312 where appropriate.
6e4780c5
JB
2313 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
2314 Use stringWithUTF8String.
bf6c75c9
AR
2315 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
2316
6e4780c5
JB
2317 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
2318 Add formal protocol mention to inheritance.
bf6c75c9
AR
2319 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
2320
6e4780c5
JB
2321 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
2322 Fix printf format.
bf6c75c9
AR
2323 (ns_query_color): Use CGFloat where appropriate.
2324 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
ac146f82 2325 (EmacsScroller-mouseDown:): Use long format in printf, and cast
bf6c75c9
AR
2326 argument.
2327
3d87f118
AR
2328 * config.in (NS_HAVE_NSINTEGER): Drop.
2329
a95c8102
AR
2330 * dbusbind.c (dbus-method-return-internal)
2331 (dbus-method-error-internal): Use long format in printf, and cast
2332 argument.
2333
2334 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
2335 in printf, and cast argument.
2336
6873acca 2337 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
2338 cast argument.
2339
9ec6f100
GM
23402009-10-11 Glenn Morris <rgm@gnu.org>
2341
2342 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
2343
5be883cd
JD
23442009-10-08 Jan Djärv <jan.h.d@swipnet.se>
2345
2346 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
2347 menu bar with a small width so it doesn't enlarge the frame.
2348
d7a39b51
JB
23492009-10-08 Juanma Barranquero <lekktu@gmail.com>
2350
2351 * fontset.c (Fset_fontset_font): Fix typos in error messages.
2352
0c2b6f8e
GM
23532009-10-06 Glenn Morris <rgm@gnu.org>
2354
2355 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
2356 SOME_MACHINE_LISP (this enters indirectly via DOC).
2357
e02131a2
EZ
23582009-10-05 Eli Zaretskii <eliz@gnu.org>
2359
2360 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
2361
b4744254
EZ
23622009-10-04 Eli Zaretskii <eliz@gnu.org>
2363
2364 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
2365 Doc fix.
2366
dbf64827
JB
23672009-10-03 Martin Rudalics <rudalics@gmx.at>
2368
2369 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
2370
e9a0aef8
MA
23712009-10-02 Michael Albinus <michael.albinus@gmx.de>
2372
d528b1ce 2373 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
2374 used anymore outside fileio.c.
2375
2376 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
2377
64eb2b56
JB
23782009-10-01 Juanma Barranquero <lekktu@gmail.com>
2379
2380 * lisp.h (Qdelete_directory_internal):
2381 Declare, instead of Qdelete_directory.
2382
2383 * w32fns.c (Fsystem_move_file_to_trash): Use it.
2384
9d28c33e
SM
23852009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
2386
2387 * eval.c (Fcalled_interactively_p): Add `kind' argument.
2388
9d8f3bd9
MA
23892009-10-01 Michael Albinus <michael.albinus@gmx.de>
2390
9d28c33e 2391 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
2392 Fdelete_directory. It is not a command anymore. It has no file
2393 name handler.
2394
9694740b
SM
23952009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
2396
2397 * xdisp.c (get_next_display_element): Use an enum in last change.
2398
748e162f
KH
23992009-09-28 Kenichi Handa <handa@m17n.org>
2400
9694740b 2401 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
2402 unibyte_display_via_language_environment in handling
2403 Vnobreak_char_display.
2404
17efd58d
AR
24052009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2406
2407 * nsterm.h (ns_app_name): New extern variable.
2408
2409 * nsterm.m (ns_app_name): New variable.
2410 (ns_term_init): Set and use it.
2411 (ns_term_shutdown): Use it.
2412
2413 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
2414 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
2415
2416 * nsfns.m (ns_set_name_iconic, ns_set_name)
2417 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
2418 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
2419
9694740b
SM
2420 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
2421 Remove double-casting in client_data comparison.
31c2d412 2422
3208cb35
YM
24232009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2424
2425 * keyboard.c (make_lispy_event): Remember last wheel direction.
2426 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
2427
b7d552d6
GM
24282009-09-26 Glenn Morris <rgm@gnu.org>
2429
2430 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
2431 internal.elc. Add term/pc-win.elc.
2432 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
2433 term/x-win.elc.
2434 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
2435 term/w32-win.elc.
2436 (NS_SUPPORT): New.
2437 (lisp): Add NS_SUPPORT.
2438 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
2439
4ff670a8
DR
24402009-09-25 David Reitter <david.reitter@gmail.com>
2441
2442 * nsmenu.m (EmacsMenu-clear): Recognize application menu
2443 on Mac OS X 10.6+ (bug#4513).
2444
feabfb6c
JB
24452009-09-24 Juanma Barranquero <lekktu@gmail.com>
2446
2447 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
2448 some parts of Emacs code (like font selection) don't grok them.
2449 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 2450
de59072a
AS
24512009-09-24 Andreas Schwab <schwab@redhat.com>
2452
2453 * coding.c (decode_coding_iso_2022): Fix operator precedence.
2454
a489517b
JB
24552009-09-24 Juanma Barranquero <lekktu@gmail.com>
2456
2457 * dired.c (Fdirectory_files): Fix typo in docstring.
2458
0592970c
AR
24592009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2460
2461 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
2462 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
2463 (EmacsScroller-setPosition:portion:whole:): Remove -display call
2464 under GNUstep.
2465 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
2466
2467 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
2468 glyph advancement.
2469
48e8a88b
AR
24702009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2471
2472 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 2473 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
2474
2475 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
2476 deleted (bug #4492).
2477
e14f0a78
AR
2478 * nsfont.m (Vns_reg_to_script): New lisp variable.
2479 (syms_of_nsfont): Declare it.
2480 (ns_registry_to_script): New function.
2481 (ns_get_req_script): Call it.
2482 (ns_findfonts): Don't give up on non-unicode registry.
2483
2484 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
2485
5b650faa
SM
24862009-09-20 Tom Tromey <tromey@redhat.com>
2487
2488 * eval.c (find_handler_clause): Make stack-trace-on-error work in
2489 batch mode (bug#4228).
2490
a489517b 24912009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
2492
2493 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 2494 carefully. (Bug #4339)
0bae4e09 2495
fcfe06f3
CY
24962009-09-18 Chong Yidong <cyd@stupidchicken.com>
2497
d798ba87 2498 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 2499
31642728
AR
25002009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2501
2502 * emacs.c (inhibit_x_resources): Update doc string for NS.
2503 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 2504 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
2505
2506 * nsterm.h (ns_no_defaults): Remove.
2507
2508 * nsterm.m (ns_no_defaults): Remove.
2509 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
2510 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
2511 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
2512 don't update the NSWindow itself.
2513 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 2514 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
2515
2516 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
2517 ns_use_qd_smoothing.
2518
2519 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
2520 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 2521 (x-close-connection): Drop PSFlush() under OS X.
a489517b 2522 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 2523
8686ac71
JB
25242009-09-17 Juanma Barranquero <lekktu@gmail.com>
2525
2526 * emacs.c (inhibit_x_resources): New variable.
2527 (main) [HAVE_NS]: Don't process --quick command line option.
2528 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
2529
2530 * lisp.h (inhibit_x_resources): Declare it extern.
2531
2532 * w32reg.c (x_get_string_resource):
2533 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
2534
e227ba05
EZ
25352009-09-17 Eli Zaretskii <eliz@gnu.org>
2536
362654a6
JB
2537 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
2538 Add lisp/term/internal.elc.
e227ba05 2539
742d40e8
SM
25402009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
2541
2542 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
2543 (bug#4461).
2544
005bd5a2
DN
25452009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
2546
2547 * puresize.h (BASE_PURESIZE): Increase to 1290000.
2548
2549 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
2550 (OBJECTS_MACHINE): Remove, unused.
2551
f9af9719
SM
25522009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
2553
2554 * frame.c (x_get_resource_string): Remove unused.
2555
0307c7d2
JD
25562009-09-15 Jan Djärv <jan.h.d@swipnet.se>
2557
2558 * xterm.c (x_new_font): Call change_frame_size before calling
2559 x_set_window_size, in case frame size won't change.
2560
2561 * frame.c (x_set_font): Remove dead code.
2562
428b13d6
SM
25632009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
2564
2565 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
2566
5766c380
SM
25672009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2568
2569 * lread.c (Fload): Don't output a message after loading an obsolete
2570 package any more (done in Lisp now).
2571
2fd0161b
CY
25722009-09-12 Chong Yidong <cyd@stupidchicken.com>
2573
2574 * fns.c (syms_of_fns): Doc fix (Bug#4227).
2575
bc5e75b6
SM
25762009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2577
2578 * keymap.c (Fwhere_is_internal): Use nconc2.
2579
c31c985e
AM
25802009-09-11 Alan Mackenzie <acm@muc.de>
2581
2582 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
2583 batch mode.
2584
78012bd2
AS
25852009-09-11 Andreas Schwab <schwab@linux-m68k.org>
2586
2587 * xdisp.c (display_mode_element): Detect cycles.
2588
9d889332
SM
25892009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2590
2591 * keymap.c (where_is_internal): Don't erroneously return nil right after
2592 filling the cache.
2593 (where_is_internal_1): Fix up typo.
2594
7ab5d780
GM
25952009-09-11 Glenn Morris <rgm@gnu.org>
2596
2597 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
2598 share a common doc-string.
2599
5238a749
SM
26002009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2601
66d77eda
SM
2602 * keymap.c (get_keymap): Return the actual keymap symbol rather than
2603 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
2604
5238a749
SM
2605 * keymap.c (QCadvertised_binding): New constant.
2606 (syms_of_keymap): Initialize it.
2607 (Fwhere_is_internal): Try and use bindings from :advertised-binding
2608 if applicable.
2609
19f48442
SM
26102009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
2611
50d4ba39
SM
2612 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
2613 (parse_menu_item): Streamline since bindings are recomputed all the
2614 time anyway. Don't bother checking Vdefine_key_rebound_commands any
2615 more and don't support lmenu's menu-alias any more either.
2616
a88a5372
SM
2617 * keymap.c (where_is_internal_data): Make noindirect a boolean.
2618 (where_is_internal): Strip it down to only traverse the keymaps.
2619 Move the cache handling from Fwhere_is_internal to here.
2620 (Fwhere_is_internal): Move the handling of remapping and the choice of
2621 the best binding from where_is_internal to here.
2622 Unify the cached/noncached paths, so remapping is also handled
2623 correctly when the cache is used, and so the cache can be used to
2624 speed up remap-handling when applicable.
2625 Give preference to non-remapped bindings.
2626 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
2627 non-remapped bindings.
2628 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
2629 command remapping.
2630
19f48442
SM
2631 * xdisp.c (display_mode_element): Move list length limit from 50 to
2632 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
2633
599498c3 26342009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
2635
2636 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
2637
f9b7b5ac
SM
26382009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
2639
a53af587
JB
2640 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
2641 (Bug#4334)
2642
f9b7b5ac
SM
2643 * keymap.c (where_is_internal): Filter out shadowed remappings.
2644 Assume that where_is_internal returns unshadowed bindings to simplify
2645 the code and get rid of the gotos. Use ASIZE.
2646
04f4b72d
JD
26472009-09-04 Jan Djärv <jan.h.d@swipnet.se>
2648
4da146f2
JD
2649 * xterm.c (x_focus_changed): If we get a focusout and pointer
2650 is invisible, make it visible.
2651
04f4b72d
JD
2652 * xterm.h: Remove condition for declaration of
2653 x_*_window_to_frame.
2654
7cef7ce3
SM
26552009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
2656
2657 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
2658 initial terminal as well.
2659
a54fa5b7
JD
26602009-09-02 Jan Djärv <jan.h.d@swipnet.se>
2661
2662 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 2663 x_menubar_window_to_frame.
a54fa5b7
JD
2664
2665 * xterm.c: Remove declarations also in xterm.h
2666 (XTmouse_position): Do not return valid positions
2667 for clicks in the menubar and the toolbar for Gtk+.
2668
2669 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
2670 if the widget for the event has the same top level as a frame,
2671 return the frame.
2672 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
2673 internal windows, bug #4122.
2674 (x_non_menubar_window_to_frame): Remove.
2675
5a021dd0
GM
26762009-09-02 Glenn Morris <rgm@gnu.org>
2677
2678 * buffer.c (default-major-mode): Move most of the doc from here...
2679 (major-mode): ... to here.
2680
548fe2f3
NR
26812009-08-30 Nick Roberts <nickrob@snap.net.nz>
2682
2683 * process.c (wait_reading_process_output): Keep the descriptor
2684 when pty is used by a non-child process, e.g., in I/O buffer of
2685 GDB this allows inferior to be restarted.
2686
e0840eef
EZ
26872009-08-29 Eli Zaretskii <eliz@gnu.org>
2688
2689 * xdisp.c (redisplay_internal): Remove redundant test and collapse
2690 both branches into one.
2691
82e98df4
SM
26922009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
2693
2694 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
2695 (main): Use enable-multibyte-characters rather than
2696 default-enable-multibyte-characters. Output a warning message when
2697 running a unibyte session.
2698
890617cb
YM
26992009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2700
2701 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
2702 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
2703 (copy_data_segment): Also copy __program_vars section.
2704 (copy_dyld_info) [LC_DYLD_INFO]: New function.
2705 (dump_it) [LC_DYLD_INFO]: Use it.
2706
2707 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
2708
e7adeadc
EZ
27092009-08-28 Eli Zaretskii <eliz@gnu.org>
2710
2711 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
2712 $(SRC)/buildobj.h.
2713 (buildobj.h): Renamed from $(SRC)/buildobj.h.
2714 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
2715 $(SRC)/buildobj.h.
2716 (clean): Add buildobj.h.
2717
3ed8bbdc
TZ
27182009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
2719
2720 * print.c (print_object): Set escapeflag to 1 when printing
2721 hashtable keys and values.
2722
155a6764
SM
27232009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
2724
2725 * lread.c (read_integer): Use doubles (and potentially return a float
2726 number) as we do in string-to-number.
2727 (read1): Use strtol to read integers, signal errors on strtol's
2728 overflow and use floats if strtol's output is too large for
2729 Elisp integers.
2730
877610de
EZ
27312009-08-27 Eli Zaretskii <eliz@gnu.org>
2732
2733 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
2734 (make-buildobj-SH): Fix last change.
2735 (SRC): Move to before where it's first used.
2736
ef73e7be
KH
27372009-08-27 Kenichi Handa <handa@m17n.org>
2738
550c8289
KH
2739 * process.c (send_process): Use encode_coding_object instead of
2740 encode_coding_string to perform eol-conversion even if the string
2741 is unibyte.
2742
60afa08d
KH
2743 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
2744 character.
2745
ef73e7be 2746 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 2747 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 2748
7b3a82d7
DN
27492009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
2750
5654bf63
DN
2751 * callproc.c (Fcall_process): Remove always true #if.
2752
7b3a82d7
DN
2753 * lisp.h: Replace #if 0 code for checking with text pointing to
2754 the --enable-checking configure flag.
2755
2756 * emacs.c (main): Mention the --enable-profiling configure flag
2757 instead of using CFLAGS.
2758
878bde49
KR
27592009-08-26 Ken Raeburn <raeburn@raeburn.org>
2760
2761 * Makefile.in (buildobj.h): New target.
2762 (doc.o): Depend on it.
2763 (temacs${EXEEXT}): Don't generate buildobj.lst.
2764 (mostlyclean): Delete buildobj.h, not buildobj.lst.
2765 * makefile.w32-in ($(SRC)/buildobj.h): New target.
2766 ($(BLD)/doc.$(O)): Depend on it.
2767 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
2768 provided by Eli Zaretskii.)
2769 ($(TEMACS)): Don't generate buildobj.lst.
2770 * doc.c: Include buildobj.h.
2771 (buildobj): New static variable.
2772 (Fsnarf_documentation): Use it, instead of opening and reading
2773 buildobj.lst.
2774
1574224c
MA
27752009-08-25 Michael Albinus <michael.albinus@gmx.de>
2776
2777 * dbusbind.c (Fdbus_call_method)
2778 (Fdbus_call_method_asynchronously): Use English numeric format for
2779 timeout values in doc string.
2780
d9da2f45
KH
27812009-08-25 Kenichi Handa <handa@m17n.org>
2782
ef73e7be
KH
2783 * alloc.c (mark_char_table): New function.
2784 (mark_object): Use mark_char_table for a char-table.
2785
d9da2f45
KH
2786 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
2787 (CHAR_TABLE_REF): Use it.
2788
c8edcc01
KR
27892009-08-23 Ken Raeburn <raeburn@raeburn.org>
2790
2791 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
2792 before invoking the newly build emacs to check for load-path
2793 shadowing.
2794
7763401b
GM
27952009-08-22 Glenn Morris <rgm@gnu.org>
2796
2797 * Makefile.in (bootstrap_exe): New variable.
2798 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
2799 Use ${bootstrap_exe}.
2800
729eadda
EZ
28012009-08-22 Eli Zaretskii <eliz@gnu.org>
2802
2803 * coding.h (encode_coding_string): Don't encode unibyte strings.
2804 (Bug#4047)
2805
eb4c6ace
MA
28062009-08-22 Michael Albinus <michael.albinus@gmx.de>
2807
2808 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
2809
2810 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
2811 intended as hotfix only.
2812 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
2813
36e34d1b
AR
28142009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2815
2816 * nsterm.m (ns_get_color): Update documentation properly for last
2817 change, and clean up loose ends in the code left by it. Fix
2818 longstanding bug with 16-bit hex parsing, and add support for
2819 yet another X11 format (rgb:r/g/b) for compatibility.
2820 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
2821 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
2822
f983eb8a
SM
28232009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
2824
2825 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
2826
3f56d3c6
MA
28272009-08-20 Michael Albinus <michael.albinus@gmx.de>
2828
2829 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
2830 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
2831 (xd_initialize, xd_pending_messages): Check, whether
2832 $DBUS_SESSION_BUS_ADDRESS is set.
2833
fb641d68
YM
28342009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2835
2836 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
2837
2838 * nsterm.m (ns_get_color): Remove incompatible color formats again.
2839
cf59a374
GM
28402009-08-20 Glenn Morris <rgm@gnu.org>
2841
2842 * emacs.c (system-type): Doc fix.
2843
1373f3be
SM
28442009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
2845
2846 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
2847 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
2848
058ed861
MA
28492009-08-18 Michael Albinus <michael.albinus@gmx.de>
2850
1373f3be
SM
2851 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
2852 New functions.
058ed861
MA
2853 (xd_initialize): Revert change from 2009-08-16.
2854
563a866e 28552009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
2856
2857 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 2858 font-group vector, return nil.
5fc05db0 2859
e42bdf01
CY
28602009-08-17 Chong Yidong <cyd@stupidchicken.com>
2861
2862 * process.c (status_notify): Don't perform redisplay.
2863 (Fdelete_process, list_processes_1, process_send_signal):
2864 Expliticly perform redisplay.
2865 (wait_reading_process_output): Always check process status, but
2866 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
2867
4230ab74
KR
28682009-08-17 Ken Raeburn <raeburn@raeburn.org>
2869
1373f3be 2870 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
2871 (XFLOAT_INIT): New macro for storing a float value.
2872 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
2873 * fns.c (sxhash): Copy out the value of a float in order to
2874 examine its bytes.
2875 * dbusbind.c (xd_append_arg): Likewise.
2876
4230ab74
KR
2877 * emacs.c (main): Don't call syms_of_data twice.
2878
a0645cdd
MA
28792009-08-16 Michael Albinus <michael.albinus@gmx.de>
2880
2881 * dbusbind.c (xd_initialize): Add connection file descriptor to
2882 input_wait_mask, in order to let select() detect, whether a new
2883 message has been arrived.
ca4f31ea 2884 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 2885
485db0ba
MA
28862009-08-15 Michael Albinus <michael.albinus@gmx.de>
2887
1373f3be
SM
2888 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
2889 New functions.
485db0ba
MA
2890
2891 * lisp.h (xd_pending_messages): Declare.
2892
2893 * keyboard.c (readable_events): Call xd_pending_messages.
2894
b5b98ff4
CY
28952009-08-15 Chong Yidong <cyd@stupidchicken.com>
2896
1373f3be 2897 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 2898
f8354c6e
CY
2899 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
2900
b5b98ff4
CY
2901 * buffer.c (set_buffer_internal_1)
2902 (swap_out_buffer_local_variables): Check for unbound local
2903 variables (Bug#4138).
2904
8b9fc636
EZ
29052009-08-14 Eli Zaretskii <eliz@gnu.org>
2906
2907 * process.c (create_pty): Fix last change.
2908
ce959360
CY
29092009-08-13 Chong Yidong <cyd@stupidchicken.com>
2910
2911 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
2912 (xbm_load_image): Caller changed.
64b807c9 2913 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 2914
c7baf7e9
NR
29152009-08-13 Nick Roberts <nickrob@snap.net.nz>
2916
2917 * process.c (create_pty): New function.
2918 (Fstart_process): Use it to allow Emacs to just associate a pty
2919 with the buffer. See associated change in gdb-mi.el.
2920 (list_processes_1): Deal with no program name.
2921 (start_process_unwind): Use pid == -2 to mean no process.
2922
1ac9108a
SM
29232009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
2924
2925 * cmds.c (nonundocount): New global variable.
2926 (keys_of_cmds): Initialize it.
2927 (Fself_insert_command): Use it to combine upto 20 sequential chars
2928 into a single undo entry, just like the Qself_insert_command code in
2929 keyboard.c does.
2930 Call frame_make_pointer_invisible, also like the Qself_insert_command
2931 code in keyboard.c does.
2932 * keyboard.c (command_loop_1): Use the new global nonundocount rather
2933 than its own local replacement for it.
2934
e267324c
KR
29352009-08-10 Ken Raeburn <raeburn@raeburn.org>
2936
1ac9108a 2937 * fns.c (concat): Don't re-set string length to its current value.
77437343 2938
1ac9108a
SM
2939 * coding.h (decode_coding_string, encode_coding_string):
2940 Use SBYTES macro.
f0bed503 2941
1ac9108a 2942 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
2943 (doprnt): Merge with doprnt1, discarding lispstrings code.
2944 * lisp.h (doprnt_lisp): Don't declare.
2945
416e006d
JL
29462009-08-07 Juri Linkov <juri@jurta.org>
2947
2948 * puresize.h (BASE_PURESIZE): Increase to 1270000.
2949
6f7d5780
DN
29502009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
2951
2952 * print.c (syms_of_print): Undo previous change.
2953
f19a0f5b
TZ
29542009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
2955
2956 * lread.c (read1, syms_of_lread): Read hashtables back from the
2957 readable format.
2958
2959 * print.c (print_preprocess, print_object): Print hashtables fully
2960 and readably.
2961 (syms_of_print): Provide 'hashtable-print-readable.
2962
b9173dc2
AR
29632009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2964
2965 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
2966 no family set.
2967 (nsfont_open): Handle case when entity has no family.
2968
1586503c
AR
29692009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2970
2971 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
2972 element, not a list, for match case.
2973
087048cd
KH
29742009-07-28 Kenichi Handa <handa@m17n.org>
2975
2976 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
2977 rigidly.
2978
2979 * xfont.c (xfont_list_pattern): Don't ignore the return value of
2980 font_parse_xlfd. Check font properties more rigidly.
2981
780c2506
DN
29822009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
2983
31fd7c5c
JB
2984 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
2985 bsd-common.h.
780c2506 2986
a8c0cc18
KH
29872009-07-27 Kenichi Handa <handa@m17n.org>
2988
2989 * xfaces.c (face_with_height): Call font_clear_prop.
2990
4fbe2306
CY
29912009-07-26 Chong Yidong <cyd@stupidchicken.com>
2992
111d9af3
CY
2993 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
2994
2995 * xterm.c (x_term_init): Use Qx.
2996
4fbe2306
CY
2997 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
2998
1ac9108a 2999 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
3000 (ns_get_color): Revert 2009-07-16 change.
3001
beb0b7f9
EZ
30022009-07-25 Eli Zaretskii <eliz@gnu.org>
3003
3004 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 3005 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 3006
2baf5e76
KR
30072009-07-25 Ken Raeburn <raeburn@raeburn.org>
3008
1ac9108a
SM
3009 * coding.h (decode_coding_string, encode_coding_string):
3010 Use SCHARS macro.
8890e5f5 3011
2baf5e76 3012 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 3013 (load_depth): Delete.
2baf5e76
KR
3014 (Qload_in_progress): New variable.
3015 (load_unwind): Don't reference load_depth or load_in_progress.
3016 (Fload): Likewise; specbind Qload_in_progress instead.
3017 (init_lread): Don't initialize load_depth.
3018 (syms_of_lread): Initialize and protect Qload_in_progress.
3019
1395c6f5
AR
30202009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3021
3022 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
3023
4e2f36cf
AR
30242009-07-23 Yavor Doganov <yavor@gnu.org>
3025
3026 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
3027
5dd9a6f7
AR
30282009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3029
3030 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
3031 Bugs 3792, 3720, 2402.
3032 (ns_lookup_indexed_color): Check for bad index.
3033 (ns_index_color): Init unused slot to 0.
3034 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
3035 Bug 3714, possibly 3082.
5dd9a6f7 3036
c902b920
JR
30372009-07-22 Jason Rumney <jasonr@gnu.org>
3038
1ac9108a
SM
3039 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
3040 Position IME window at cursor (Bug#2570).
c902b920
JR
3041 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
3042 (globals_of_w32fns): Dynamically load functions required above.
3043
3044 * w32term.c (w32_draw_window_cursor): Send message to reposition
3045 any IME window.
3046
090101cf
CY
30472009-07-21 Chong Yidong <cyd@stupidchicken.com>
3048
3049 * fileio.c: Revert 2009-07-16 changes.
3050 (Vauto_save_include_big_deletions): New variable.
3051 (Fdo_auto_save): Disable auto-save only if
3052 auto-save-include-big-deletions is nil.
3053
e6583e3d
CY
30542009-07-21 Chong Yidong <cyd@stupidchicken.com>
3055
3056 * xdisp.c (move_it_to): For continued lines ending in a tab, take
3057 the overflowed pixels into account (Bug#3879).
3058
ece435a5
KR
30592009-07-21 Ken Raeburn <raeburn@raeburn.org>
3060
3061 * lread.c (load_depth): New variable.
3062 (Fload, load_unwind, init_lread): Set it to the load recursion
3063 depth; set load_in_progress as a simple boolean based on the
3064 current load_depth. (Bug#3892)
3065
40b2d973
AR
30662009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3067
3068 * nsfont.m (ns_has_attribute): Remove.
3069 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
3070
10be7e0d
JL
30712009-07-18 Juri Linkov <juri@jurta.org>
3072
3073 * process.c (Fset_process_query_on_exit_flag): Mention killing
3074 a buffer in docstring.
3075
fa055055
KH
30762009-07-17 Kenichi Handa <handa@m17n.org>
3077
3078 * casetab.c (shuffle): Fix the logic of setting up the cycle.
3079
042f7b69
YM
30802009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3081
3082 * nsfns.m (Fns_set_alpha): Remove function.
3083 (syms_of_nsfns): Don't defsubr it.
3084
3085 * nsterm.m (ns_get_color): Remove incompatible color formats.
3086 (ns_color_to_lisp): Generate #rrggbb color format string.
3087
4be941e3
RS
30882009-07-16 Richard Stallman <rms@gnu.org>
3089
3090 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
3091 (Fset_buffer_auto_saved): Handle save_length = -2.
3092
4e6b227d
CY
30932009-07-16 Chong Yidong <cyd@stupidchicken.com>
3094
3095 * xterm.c (Qx_gtk_map_stock): New var.
3096
3097 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
3098 of calling intern each time.
3099
a1856973
YM
31002009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3101
3102 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
3103 does tiling.
3104
3105 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
3106
497e54d8
KH
31072009-07-14 Kenichi Handa <handa@m17n.org>
3108
72d36834
KH
3109 * font.c (font_vconcat_entity_vectors): New function.
3110 (struct font_sort_data): New member font_driver_preference.
3111 (font_compare): Check font_driver_preference.
3112 (font_sort_entities): The format of the first argument changed.
3113 (font_delete_unmatched): Likewise.
3114 (font_list_entities): The return type changed.
3115 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
3116 (font_find_for_lface): Adjuste for the above changes.
3117 Don't suppress the checking of C even if the repertory supports it.
3118 (Flist_fonts): Adjust for the above changes.
72d36834 3119
1ac9108a
SM
3120 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
3121 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
3122 Reject a font who has adstyle property that is different from a
3123 langname derived from registry property.
1ac9108a 3124 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 3125
b6046155
EZ
31262009-07-13 Eli Zaretskii <eliz@gnu.org>
3127
3128 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
3129 local copy of dirfilename.
3130
fb6b6049
KH
31312009-07-13 Kenichi Handa <handa@m17n.org>
3132
e2402a5e
KH
3133 * chartab.c (sub_char_table_ref_and_range): Fix the range check
3134 against max_char.
3135
fb6b6049
KH
3136 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
3137 calling XSYMBOL (sym).
3138
65156807
EZ
31392009-07-11 Eli Zaretskii <eliz@gnu.org>
3140
1ac9108a
SM
3141 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
3142 New function.
3143 (directory_files_internal) [WINDOWSNT]:
3144 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
3145 the filesystem of the directory is fast or slow.
3146
3147 * w32.c (logon_network_drive): Don't assume PATH is an absolute
3148 file name.
3149 (is_slow_fs): New function.
3150 (stat): Use it to determine whether to issue more system calls to
3151 get accurate file attributes, when w32-get-true-file-attributes is
3152 `local'.
3153
e0ab5fcf
JD
31542009-07-10 Jan Djärv <jan.h.d@swipnet.se>
3155
3156 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 3157 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
3158 parameter font-parameter as default to the font dialog.
3159
784ceded
KH
31602009-07-10 Kenichi Handa <handa@m17n.org>
3161
3162 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
3163
fb8edc0b
EZ
31642009-07-09 Eli Zaretskii <eliz@gnu.org>
3165
1ac9108a 3166 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 3167
fb8edc0b
EZ
3168 * w32.c (stat): Treat UNC file names as residing on remote
3169 drives. (Bug#3542)
3170
635c75b1
KH
31712009-07-09 Kenichi Handa <handa@m17n.org>
3172
3173 * fontset.c (fontset_find_font): Fix previous change.
3174
c1d5ce94
MA
31752009-07-08 Michael Albinus <michael.albinus@gmx.de>
3176
3177 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
3178 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
3179 error flag.
3180
edb61b39
KH
31812009-07-08 Kenichi Handa <handa@m17n.org>
3182
374bf7e4
KH
3183 * fontset.c (fontset_find_font): Fix the logic of handling
3184 charset_matched.
3185 (font_for_char): Delete unused var.
3186 (generate_ascii_font_name): Delete it.
3187
edb61b39
KH
3188 * coding.h (JIS_TO_SJIS2): Fix the code range check.
3189
3190 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
3191 (encode_coding_sjis): Fix the code range check.
3192
0f3f018c
CY
31932009-07-07 Chong Yidong <cyd@stupidchicken.com>
3194
3195 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
3196 (Fexpand_file_name): Copy string data properly (Bug#3772).
3197
fcaf6f3a
JD
31982009-07-07 Jan Djärv <jan.h.d@swipnet.se>
3199
3200 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
3201 first MapNotify.
3202
6809ca75
KH
32032009-07-07 Kenichi Handa <handa@m17n.org>
3204
3205 * character.h (unibyte_has_multibyte_table): Delete extern.
3206 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
3207
3208 * charset.c (Fset_charset_priority): Update charset_unibyte.
3209 (syms_of_charset): Initialize charset_unibyte.
3210
3211 * character.c (unibyte_has_multibyte_table): Delete it.
3212 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
3213 charset_unibyte.
3214 (multibyte_char_to_unibyte_safe): Likewise.
3215 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
3216
1ac9108a 3217 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
3218 (x_produce_glyphs): Likewise.
3219
3220 * .gdbinit (xcharset): Fix the treating $arg0.
3221
ad9e2d54
EZ
32222009-07-04 Eli Zaretskii <eliz@gnu.org>
3223
3224 Emulation of `getloadavg' on MS-Windows.
3225 * w32.c: Include float.h
3226 (g_b_init_get_native_system_info, g_b_init_get_system_times)
3227 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
3228 (get_native_system_info, get_system_times): New functions.
3229 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
3230 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
3231 (globals_of_w32): Initialize g_b_init_get_native_system_info,
3232 g_b_init_get_system_times, and num_of_processors.
3233
0a3472c7
JR
32342009-07-03 Jason Rumney <jasonr@gnu.org>
3235
3236 * w32term.c (w32_initialize): Use standard types.
3237
80904120
EZ
32382009-07-03 Eli Zaretskii <eliz@gnu.org>
3239
3240 * dired.c (Ffile_attributes): Decode user and group names by the
3241 locale's encoding. (Bug#3443)
3242
6978862d
DN
32432009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
3244
f8d23104
DN
3245 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
3246 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
3247
3248 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
3249
3250 * term.c (init_tty): Remove spurious #ifdef.
3251
6978862d
DN
3252 * m/mips.h: Mention this file is also used for netbsd.
3253 * m/pmax.h: Remove file.
3254
e044e4fc
JD
32552009-07-03 Jan Djärv <jan.h.d@swipnet.se>
3256
3257 * xterm.h (struct x_display_info): Add invisible_cursor.
3258 (struct x_output): Add current_cursor.
3259
3260 * xterm.c (XTtoggle_invisible_pointer): New function.
3261 (x_define_frame_cursor): Don't define cursor if invisible or the
3262 same as before. Set current_cursor.
3263 (x_create_terminal): Set toggle_invisible_pointer_hook.
3264
3265 * xfns.c (make_invisible_cursor): New function.
3266 (x_set_mouse_color): Call make_invisible_cursor.
3267 Set current_cursor.
3268 (x_window): Set current_cursor.
3269
3270 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
3271
3272 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
3273 inserting a character.
3274 (read_avail_input): Call frame_make_pointer_visible.
3275
3276 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
3277 (frame_make_pointer_invisible, frame_make_pointer_visible):
3278 New functions.
e044e4fc
JD
3279 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
3280
3281 * frame.h: Declare frame_make_pointer_invisible and
3282 frame_make_pointer_visible.
3283 (struct frame): Add pointer_invisible.
3284
574c8efa
JD
32852009-07-02 Jan Djärv <jan.h.d@swipnet.se>
3286
7b507248
JD
3287 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
3288 frame isn't visible.
3289 (xg_frame_resized): If width/height is -1, get size of window
3290 from X server.
3291
3292 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
3293 for MapNotify.
3294
835bdaa7 3295 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 3296 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 3297 (flush_and_sync): Reintroduce.
574c8efa 3298
3f1c6666 32992009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 3300
31fd7c5c 3301 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
3302
3303 * xterm.c (x_handle_net_wm_state): Also look for sticky.
3304 (x_term_init): Initialize Xatom_net_wm_state_sticky.
3305
3306 * frame.h: Declare Qsticky.
3307
cad9ef74
JD
3308 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
3309
3310 * nsfns.m (ns_frame_parm_handlers): Ditto.
3311
3312 * frame.c: Declare Qsticky.
3313 (frame_parms): Add sticky.
3314
3315 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
3316
3317 * xterm.h: Declare x_set_sticky.
3318
3319 * xterm.c (x_set_sticky): New function.
3320
69b16610
JD
3321 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
3322 (xg_tool_bar_menu_proxy): Attach enter/leave events to
3323 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
3324
3325 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
3326
3327 * frame.c: Qmaximized is new.
3328 (x_set_frame_parameters): Do not handle fullscreen specially.
3329 Only set width and height if explicitly set.
3330 (x_set_fullscreen): Handle Qmaximized.
3331 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
3332 (syms_of_frame): Initialize Qmaximized.
3333
1ac9108a
SM
3334 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
3335 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
3336
3337 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
3338 for Expose event. Add call to x_check_fullscreen for MapNotify event.
3339 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
3340 set gravity to NorthWestGravity when USE_GTK.
3341 (set_wm_state): New function.
31fd7c5c 3342 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
3343 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
3344 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 3345 or the case when no window manager is running. That means remove calls
3f1c6666
JD
3346 to x_real_positions and x_fullscreen_adjust.
3347
3348 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
3349 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
3350 flush_and_sync.
3351 (xg_height_changed): New function.
3352 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
3353 and gtk_window_set_policy. Set frame gravity after parsing the
3354 geometry string.
3f1c6666
JD
3355 (xg_update_frame_menubar, free_frame_menubar)
3356 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
3357 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
3358 Remove calls to xg_frame_set_char_size.
3359
fd503d99
KH
33602009-07-01 Kenichi Handa <handa@m17n.org>
3361
3362 * keyboard.c (decode_keyboard_code): New function.
3363 (tty_read_avail_input): Decode the input bytes if necessary.
3364
1ac9108a
SM
3365 * coding.c (setup_coding_system):
3366 Initialize coding->carryover_bytes to 0.
fd503d99
KH
3367 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
3368 use Qno_conversion.
3369
24ed93fb
YM
33702009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3371
3372 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
3373
99061dfc
CY
33742009-06-30 Chong Yidong <cyd@stupidchicken.com>
3375
1ac9108a 3376 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 3377
ff90fbde
JR
33782009-06-30 Jason Rumney <jasonr@gnu.org>
3379
3380 * w32term.c (w32_initialize): Use GetModuleHandle for library that
3381 is already loaded.
3382 Set user model ID if supported (bug#1849).
3383
5f445726
JM
33842009-06-29 Jim Meyering <meyering@redhat.com>
3385
3386 Remove useless if-before-xfree test.
3387 * nsfont.m (nsfont_close): Remove useless test.
3388 * term.c (delete_tty): Likewise.
3389 * w32.c (system_process_attributes): Likewise.
3390 * w32font.c (w32font_close): Likewise.
3391 * xfaces.c (x_free_gc): Likewise.
3392 * xselect.c (buffer): Likewise.
3393
b9607587
AS
33942009-06-28 Andreas Schwab <schwab@linux-m68k.org>
3395
3396 * process.c (send_process): Keep decoded string in a local
3397 variable and protect it from GC. (Bug#3521)
3398
89ba96f4
EZ
33992009-06-28 Eli Zaretskii <eliz@gnu.org>
3400
3401 * term.c (create_tty_output) [MSDOS]: #ifdef away.
3402 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
3403
098a1589
CY
34042009-06-28 Chong Yidong <cyd@stupidchicken.com>
3405
485422be
CY
3406 * xdisp.c (start_display, handle_face_prop)
3407 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
3408 (redisplay_window, try_window_id, produce_image_glyph):
3409 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 3410
098a1589
CY
3411 * xterm.c (x_update_window_begin, x_new_focus_frame)
3412 (x_scroll_bar_handle_click, handle_one_xevent)
3413 (handle_one_xevent, XTread_socket, x_focus_on_frame)
3414 (x_make_frame_visible, x_make_frame_invisible)
3415 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
3416 code chunks that are now obsolete.
3417
78c38319
MA
34182009-06-28 Michael Albinus <michael.albinus@gmx.de>
3419
3420 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
3421 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
3422 for hours, when optimzation is enabled.
3423 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
3424 (xd_read_message): Make them static.
3425
4189ed40
CY
34262009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
3427
3428 * term.c (turn_on_face): Allow simultaneously bold and dim
3429 terminal faces (Bug#3530).
3430
cd9b5e16
CY
34312009-06-27 Chong Yidong <cyd@stupidchicken.com>
3432
4e23bedb
CY
3433 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
3434
cd9b5e16
CY
3435 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
3436 truncation glyphs (Bug#3686).
3437
07cc3c35
GM
34382009-06-27 Glenn Morris <rgm@gnu.org>
3439
3440 * m/pmax.h: Restore file, with only netbsd portions.
3441
31fd7c5c 34422009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 3443
cd9b5e16 3444 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 3445
42d4a64f
KH
34462009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
3447
3448 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
3449 the arg FORCE_SYMBOL.
3450
930fe55b 34512009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
3452
3453 * fontset.c (fontset_find_font): When a usable rfont_def is found
3454 in a fallback font-group, make it the first element of the group.
3455
57ebc3fd
CY
34562009-06-24 Chong Yidong <cyd@stupidchicken.com>
3457
3458 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
3459
f084f942
KH
34602009-06-24 Kenichi Handa <handa@m17n.org>
3461
3462 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
3463 set for C.
3464 (fontset_font): Record the availability of a font for C both in
3465 the realized fontsets of the current one and the default one.
3466
2f686c87
DN
34672009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
3468
3469 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
3470 conditional, it is always defined on AIX.
3471
666e158e
MB
34722009-06-23 Miles Bader <miles@gnu.org>
3473
3474 * window.c (Vrecenter_redisplay): New variable.
3475 (syms_of_window): Initialize it.
3476 (Qtty): New extern declaration.
3477 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
3478
c6da7cd2
JM
34792009-06-23 Jim Meyering <meyering@redhat.com>
3480
1ac9108a
SM
3481 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
3482 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 3483 pointer dereferences are guaranteed to be valid.
c6da7cd2 3484
678dca3d
KH
34852009-06-23 Kenichi Handa <handa@m17n.org>
3486
74d75424
KH
3487 * emacs.c (main): Call init_font ().
3488
3489 * font.h (Vfont_log): Extern it.
3490 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
3491
3492 * font.c (font_sort_entities, font_list_entities)
3493 (font_matching_entity, font_open_entity)
3494 (font_close_object): Change font_add_log to FONT_ADD_LOG.
3495 (Vfont_log): Delete static.
3496 (font_log_env_checked): Delete this variable.
3497 (font_add_log): Don't check font_log_env_checked.
3498 (font_deferred_log): Check Vfont_log.
3499 (init_font): New function.
3500
678dca3d
KH
3501 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
3502
3503 * w32font.c: Change font_add_log to FONT_ADD_LOG.
3504
3505 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
3506
3507 * xfont.c: Change font_add_log to FONT_ADD_LOG.
3508
3509 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
3510 (face_for_char): Don't call font_deferred_log here.
3511 (font_for_char): Likewise.
3512
8a668709
CY
35132009-06-22 Chong Yidong <cyd@stupidchicken.com>
3514
9a01ee33
CY
3515 * w32term.c (x_draw_glyph_string): Use the glyph string's width
3516 rather than its background_width for drawing the overline and
3517 underline (Bug#489).
3518
3519 * xterm.c (x_draw_glyph_string): Use the glyph string's width
3520 rather than its background_width for drawing the overline and
3521 underline (Bug#489).
ec7c9926
CY
3522 (xg_default_icon_file): New variable.
3523 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
3524 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 3525
8a668709
CY
3526 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
3527 (load_overlay_strings): Remove externs.
3528 (fast_find_position): Function deleted.
3529 (mouse_face_from_buffer_pos): New function, based on
3530 fast_find_position. Correctly handle before-strings,
3531 display-strings, and after-strings (Bug#1220).
3532 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
3533
4d4c02d8
CY
35342009-06-21 Chong Yidong <cyd@stupidchicken.com>
3535
1ac9108a 3536 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
3537 (move_it_in_display_line_to, move_it_in_display_line_to)
3538 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
3539
70243478
CY
35402009-06-21 Chong Yidong <cyd@stupidchicken.com>
3541
3542 * Branch for 23.1.
3543
13087e59
JR
35442009-06-21 Jason Rumney <jasonr@gnu.org>
3545
3546 * w32term.c (keyboard_codepage): New static variable.
3547 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
3548 (w32_read_socket) [WM_CHAR]: Use it to decode character
3549 input (bug#3237).
3550 (w32_initialize): Initialize it.
3551 (codepage_for_locale): New function.
3552
4735b74e
KR
35532009-06-20 Ken Raeburn <raeburn@raeburn.org>
3554
3555 * process.c (status_message): Pass Faset index argument as a lisp
3556 object, so as to work with USE_LISP_UNION_TYPE.
3557
0e727afa
YM
35582009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3559
3560 * coding.c (Ffind_coding_systems_region_internal):
3561 Cache checked characters.
3562
cf299835
KH
35632009-06-18 Kenichi Handa <handa@m17n.org>
3564
1ac9108a 3565 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 3566
90f20d94
AS
35672009-06-18 Andreas Schwab <aschwab@redhat.com>
3568
3569 * xdisp.c (redisplay_internal): Check that the frame is still
3570 live after redisplay of its windows.
3571 (redisplay_windows): Check that the window is still live.
3572
7f1faf1c
KH
35732009-06-17 Andreas Schwab <schwab@linux-m68k.org>
3574
3575 * coding.c (detect_coding_utf_16): Fix previous change.
3576
cc13543e
KH
35772009-06-16 Kenichi Handa <handa@m17n.org>
3578
3579 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
3580 UTF-16 by checking the dispersion of Eth and Oth bytes.
3581
977b85f4
AS
35822009-06-15 Andreas Schwab <schwab@linux-m68k.org>
3583
3584 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
3585
66bd43d1
KH
35862009-06-15 Kenichi Handa <handa@m17n.org>
3587
3588 * process.c (status_message): Fix previous change. Be sure to
3589 decode a localized string.
3590
cb5ca9c5
YM
35912009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3592
3593 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
3594 add comment explaining why.
3595
ec7709ba 35962009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 3597
ec7709ba 3598 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 3599
4b7f335c
AR
36002009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
3601
3602 * nsfont.m (ns_attribute_value): Remove.
3603 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
3604 (ns_has_attribute): Shrink the normal range.
3605 (ns_findfonts): Don't worry about requested spec in determining
3606 need for synthItal.
e41820ee 3607 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 3608
73b26103
SZ
36092009-06-14 Seiji Zenitani <zenitani@mac.com>
3610
3611 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
3612
5753e4da
KH
36132009-06-11 Kenichi Handa <handa@m17n.org>
3614
3615 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
3616 overhang for the static composition case.
3617
3561b671
KH
36182009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3619
5753e4da
KH
3620 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
3621 overhang for the automatic composition case.
3622
3561b671
KH
3623 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
3624 composition case.
3625
852bbd41
CY
36262009-06-10 Chong Yidong <cyd@stupidchicken.com>
3627
3628 * xdisp.c (get_next_display_element): When handling wrap-prefix
3629 and line-prefix, treat \n as a control character (bug#3502).
3630
9903d1e6
KH
36312009-06-10 Kenichi Handa <handa@m17n.org>
3632
3633 * font.c (font_parse_family_registry): Fix for one-char foundry.
3634 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
3635
0bcbaaaa
CY
36362009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
3637
3638 * process.c (status_message): Fix handling of multibyte signal
3639 string (Bug#3499).
3640
40aa3f13
JM
36412009-06-09 Jim Meyering <meyering@redhat.com>
3642
1f80c7e2
CY
3643 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
3644 color name is missing.
40aa3f13 3645
72d51285
KH
36462009-06-09 Kenichi Handa <handa@m17n.org>
3647
3648 * charset.c (Fmap_charset_chars): In docstring, state clearly that
3649 FROM-CODE and TO-CODE are codepoints of CHARSET.
3650
c1d04d84
AR
36512009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
3652
3653 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
3654
36552009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
3656
3657 Changes to support :script/:lang/:otf in NS font driver.
3658 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
3659 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
3660 indicate not part of font driver interface, and change callers.
3661 (ns_get_family): Remove pointless null check.
3662 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
3663 ns_spec_to_descriptor, ns_descriptor_to_entity.
3664 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
3665 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
3666 (ns_spec_to_descriptor, ns_descriptor_to_entity)
3667 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
3668 (ns_get_req_script, ns_accumulate_script_ranges)
3669 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
3670 New functions.
3671 (nsfont_list, nsfont_match): Use ns_findfonts.
3672 (nsfont_open): Use font descriptor instead of traits.
3673 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
3674 (dump_glyphstring): Rename to ns_dump_glyphstring.
3675
c7eb9816
AR
3676 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
3677
c1d04d84
AR
3678 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
3679
3680 * fontset.c (fontset_from_font): Remove NS-specific code.
3681
ec7709ba 36822009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
3683
3684 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
3685 nonactive windows.
3686
31fd7c5c 36872009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 3688
1ac9108a 3689 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 3690
68852c13 36912009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
3692
3693 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
3694
6756cd1d
CY
36952009-06-07 Chong Yidong <cyd@stupidchicken.com>
3696
3697 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
3698 account for the overflowing of newlines into the last glyph on the
3699 display line (Bug#3482).
3700
28bf482a
DR
37012009-06-05 David Reitter <david.reitter@gmail.com>
3702
ec7709ba
JB
3703 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
3704 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
3705 Fns_selection_exists_p, Fns_selection_owner_p.
3706
fdb55376
JR
37072009-06-03 Jason Rumney <jasonr@gnu.org>
3708
3709 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
3710 available. (Bug#3379)
3711
05129fbe
KH
37122009-05-29 Kenichi Handa <handa@m17n.org>
3713
1ac9108a
SM
3714 * coding.c (get_translation_table):
3715 Check Venable_character_translation.
05129fbe 3716
ec7709ba 37172009-05-26 David Reitter <david.reitter@gmail.com>
15891144 3718
ec7709ba
JB
3719 * nsterm.m (ns_raise_frame): Only raise frame if visible.
3720 (x_make_frame_visible): Move frame to front rather than calling
15891144 3721 ns_raise_frame().
ec7709ba 3722 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 3723 isn't key window.
ec7709ba 3724 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
3725 drawRect may be called by NSView even if the frame is hidden.
3726
ec7709ba
JB
3727 * nsfns.m (Fx_create_frame): Follow other ports in
3728 determining visibility; default to t. Ensure async_visible is set.
15891144 3729
21f73755
EZ
37302009-05-23 Eli Zaretskii <eliz@gnu.org>
3731
3732 * dired.c (Ffile_attributes): Doc fix.
3733
34001e41
CY
37342009-05-22 Chong Yidong <cyd@stupidchicken.com>
3735
3736 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
3737
46306a17
SM
37382009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
3739
3740 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
3741 and xfont_scratch_props.
3742 (syms_of_xfont): Do it here instead.
3743 (xfont_find_ccl_program): Delete, unused.
3744 (xfont_open): Delete unused var `i'.
3745
ef6e0694
KH
37462009-05-21 Kenichi Handa <handa@m17n.org>
3747
3748 * fontset.c (Qlatin): Don't make it static.
3749
46306a17
SM
3750 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
3751 New functions.
ef6e0694
KH
3752 (xfont_scripts_cache, xfont_scratch_props): New variables.
3753 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
3754 (xfont_list_pattern): Argument changed. Callers changed.
3755 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
3756 (xfont_list): Don't reject a font spec with :script property.
3757 (xfont_has_char): Fix setting of encoding.
3758 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
3759 xfont_scratch_props.
3760
37612009-05-19 Kenichi Handa <handa@m17n.org>
3762
46306a17 3763 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
3764 Callers changed.
3765
37662009-05-18 Kenichi Handa <handa@m17n.org>
3767
3768 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
3769
ac71ced7
SM
37702009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
3771
3772 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
3773 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
3774
1c6d1051
YM
37752009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3776
3777 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
3778 (x_delete_terminal): Dissociate resource database from display and
3779 then call XrmDestroyDatabase before closing display.
3780
9b9b779c
AR
37812009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
3782
3783 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
3784 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
3785 whether selected frame is viable before raising it (based on patch
3786 by David Reitter), and improve commentary.
3787 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 3788
cccd42d5
KH
37892009-05-15 Kenichi Handa <handa@m17n.org>
3790
3791 * font.c (Ffont_spec): Check arguments.
3792
337fbd17
CY
37932009-05-14 Chong Yidong <cyd@stupidchicken.com>
3794
3795 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
3796 weight when testing attributes (Bug#3282).
3797
47a6002f
JD
37982009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3799
3800 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
3801 what we expect to get in the next ConfigureNotify event.
3802
9cb363db
YM
3803 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
3804 before Xft one (Bug#1696).
3805
b9126609
CY
38062009-05-07 David Reitter <david.reitter@gmail.com>
3807
3808 * nsfns.m (Fx_display_planes): Compute bitplanes using
3809 NSBitsPerPixelFromDepth (Bug#3207).
3810
27a69fd9
CY
38112009-05-10 Chong Yidong <cyd@stupidchicken.com>
3812
3813 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
3814
00f37552
TTN
38152009-05-10 Ulrich Mueller <ulm@gentoo.org>
3816
3817 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
3818
2d82a920
DR
38192009-05-07 David Reitter <david.reitter@gmail.com>
3820
ec7709ba
JB
3821 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
3822 Respect mouse face background.
2d82a920 3823
46b0d52d
DR
38242009-05-07 David Reitter <david.reitter@gmail.com>
3825
ec7709ba
JB
3826 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
3827 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
3828 in ns_update_begin and ns_update_end.
3829
ce1b23bb
SM
38302009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3831
5996e1b7
SM
3832 * nsfns.m (ns_get_screen): Rewrite.
3833 Don't presume selected-frame is of type `ns'.
3834
ba98e3a0
SM
3835 * font.c (font_update_drivers): Sanity fallback to avoid disabling
3836 all drivers.
3837
ce1b23bb
SM
3838 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
3839
bcda200f
YM
38402009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3841
3842 * keyboard.h (add_user_signal): Fix typo in extern.
3843
3844 * lisp.h (add_user_signal): Remove extern.
3845
3846 * unexelf.c (unexec): Consider a section to precede the .bss section
3847 if its addresses overlap that of .bss.
3848 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
3849 instead of dumping process.
3850
864660a2
SM
38512009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3852
3853 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
3854
50da4e56
SM
38552009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
3856
3857 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
3858
51520a1a
DN
38592009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
3860
3861 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
3862 any statements.
3863
409ea3a1
AS
38642009-05-02 Andreas Schwab <schwab@linux-m68k.org>
3865
59c4c60f
AS
3866 * process.c (read_process_output): Make sure the current buffer is
3867 always restored.
3868
409ea3a1
AS
3869 * coding.c (record_conversion_result): Don't modify
3870 Vlast_code_conversion_error for successful result.
3871 (alloc_destination): Don't clobber conversion result. (Bug#1650)
3872
56f00ed2
KH
38732009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
3874
3875 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 3876 (load_charset_map): Remove unnecessary code.
56f00ed2 3877
4491c9d2
DR
38782009-04-30 David Reitter <david.reitter@gmail.com>
3879
35f5b128 3880 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
3881 through f24.
3882
6970f632
CY
38832009-04-30 Chong Yidong <cyd@stupidchicken.com>
3884
3885 * xfaces.c (face_at_buffer_position): New arg base_face_id.
3886
3887 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
3888 face_at_buffer_position.
3889 (face_before_or_after_it_pos, get_next_display_element)
3890 (note_mouse_highlight): Update face_at_buffer_position call.
3891
3892 * term.c (term_mouse_highlight):
3893 * msdos.c (IT_note_mouse_highlight):
3894 * fontset.c (Finternal_char_font):
35f5b128 3895 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
3896
3897 * dispextern.h (face_at_buffer_position): Update prototype.
3898
0c616f63
KH
38992009-04-30 Kenichi Handa <handa@m17n.org>
3900
35f5b128 3901 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 3902
ad3aaf33
AS
39032009-04-29 Andreas Schwab <schwab@linux-m68k.org>
3904
3905 * callproc.c (Fcall_process): Fix GC protection. Make sure
3906 current buffer is always restored.
3907
c3c963a0
YM
39082009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3909
3910 * atimer.c (init_atimer): Also clear stopped_atimers.
3911
3912 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
3913
7e3386cb
YM
3914 * process.c (create_process): Clean up merger residues of
3915 2008-07-17 change.
3916
91f68422
CY
39172009-04-29 Ulrich Mueller <ulm@gentoo.org>
3918
3919 * lread.c (Vread_circle): New variable.
3920 (read1): Disable recursive read if Vread_circle is nil.
3921
24b34550
KH
39222009-04-29 Kenichi Handa <handa@m17n.org>
3923
3924 * fontset.h (set_default_ascii_font): Delete extern.
3925
3926 * fontset.c (set_default_ascii_font): Delete this unused function.
3927
3928 * frame.c (x_set_font): When ARG is a font-object, check if the
3929 font-object matches with the ASCII font-spec of the frame's
9c358bda 3930 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 3931
77bf07e1
AS
39322009-04-28 Andreas Schwab <schwab@linux-m68k.org>
3933
3934 * fns.c (Flocale_info): Protect vector from GC during decoding.
3935
3936 * process.c (Fstart_process): Protect argv strings from GC during
3937 encoding.
3938
2c55aacf
AS
39392009-04-27 Andreas Schwab <schwab@linux-m68k.org>
3940
3941 * sysdep.c: Include <ctype.h>.
3942
b892d3c9
DR
39432009-04-27 David Reitter <david.reitter@gmail.com>
3944
35f5b128 3945 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
3946 Remove commented-out code.
3947
9d0644c4
JB
39482009-04-26 Johan Bockgård <bojohan@gnu.org>
3949
3950 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
3951
b7053016
JR
39522009-04-25 Jason Rumney <jasonr@gnu.org>
3953
3954 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
3955
4e8231f3
YM
39562009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3957
3958 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
3959 Swap bytes in short integer if fringe bitmap width > 8.
3960
493dcf2c
KH
39612009-04-23 Kenichi Handa <handa@m17n.org>
3962
3963 * xfaces.c (Fx_list_fonts): If a font size is specified in
3964 PATTERN, set it in returned scalable fonts.
3965
401e9e57
CY
39662009-04-22 Chong Yidong <cyd@stupidchicken.com>
3967
708e05dc
CY
3968 * keyboard.c (Fset_input_meta_mode): Doc fix.
3969
3970 * dispnew.c (Fsend_string_to_terminal): Doc fix.
3971
1ac9108a 3972 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
3973
3974 * coding.c (Fterminal_coding_system): Doc fix.
3975
3976 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
3977 (Fx_display_pixel_height, Fx_display_planes)
3978 (Fx_display_color_cells, Fx_server_max_request_size)
3979 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3980 (Fx_display_mm_height, Fx_display_mm_width)
3981 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
3982 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
3983 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
3984 (check_x_display_info): Handle terminal objects instead of
3985 terminal ids.
3986
401e9e57
CY
3987 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
3988 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
3989 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
3990 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 3991
df80c7f0
KH
39922009-04-21 Kenichi Handa <handa@m17n.org>
3993
5a8f12af 3994 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 3995 (font_score): Check AVGWIDTH too.
908567ef 3996
df80c7f0
KH
3997 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
3998 worst case.
1ac9108a
SM
3999 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
4000 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 4001
705af33f
JR
40022009-04-19 Jason Rumney <jasonr@gnu.org>
4003
4004 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 4005 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
4006
4007 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
4008 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
4009 get_phys_cursor_geometry.
4010
b71ac3dd 4011 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
4012 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
4013 using get_phys_cursor_geometry.
4014
4015 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
4016 correctly calculated.
4017
dc2933eb
JD
40182009-04-19 Jan Djärv <jan.h.d@swipnet.se>
4019
1ac9108a
SM
4020 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
4021 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
4022 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
4023 is deprecated.
4024
973e7849
AS
40252009-04-18 Andreas Schwab <schwab@linux-m68k.org>
4026
4027 * font.c (font_put_frame_data): Use xfree instead of free.
4028
314d66f4
JB
40292009-04-17 Juanma Barranquero <lekktu@gmail.com>
4030
4031 * w32font.c (Qja, Qko): Remove declarations.
4032 (syms_of_w32font): Don't DEFSYM them.
4033
cf702558
CY
40342009-04-17 Chong Yidong <cyd@stupidchicken.com>
4035
4036 * font.c (Qja, Qko): Move definitions here from ftfont.c.
4037
4038 * font.h (Qja, Qko): Extern them.
4039
4040 * ftfont.c (Qja, Qko): Remove declarations.
4041
4042 * xfont.c (Qja, Qko): Remove declarations.
4043
b50504f5
KH
40442009-04-17 Kenichi Handa <handa@m17n.org>
4045
bde25748
KH
4046 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
4047 string from a vector to handle Latin-1 characters correctly.
4048
b50504f5
KH
4049 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
4050 entity even if the cache hits.
4051
f4646fff
AS
40522009-04-16 Andreas Schwab <schwab@linux-m68k.org>
4053
4054 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 4055 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 4056
e7deaab0
AS
4057 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
4058 * lisp.h: Adjust prototypes.
4059
0a0e7d49
CY
40602009-04-16 Chong Yidong <cyd@stupidchicken.com>
4061
4062 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
4063 change (Bug#3003).
4064
3c908a57
KH
40652009-04-16 Kenichi Handa <handa@m17n.org>
4066
1ac9108a 4067 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
4068
4069 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
4070 adstyle.
4071
4072 * ftfont.c (Qja, Qko): Don't make them static.
4073 (enum ftfont_cache_for): New enum.
4074 (fc_charset_table): Undo the previous change.
4075 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
4076 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
4077 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
4078 non-scarable font, try to get AVERAGE_WIDTH.
4079 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
4080 Change ft_face_cache from a list of a hash-table. Don't check
4081 `ja' and `ko' adstyle here.
4082 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
4083 FTFONT_CACHE_FOR_CHARET.
4084 (ftfont_get_charset): Undo the previous change.
1ac9108a 4085 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
4086 (ftfont_close): Likewise.
4087 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
4088
4089 * font.c (font_sort_entites): Change the meaning of the arg
4090 BEST-ONLY. Don't optimize for VEC of lenght 1.
4091 (font_select_entity): Just return the value of font_sort_entites.
4092
4093 * xfaces.c (merge_face_vectors): Reflect font properties in
4094 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
4095 font_clear_prop if a face attribute doesn't change.
4096
3c908a57
KH
4097 * charset.h (charset_ksc5601): Extern it.
4098
4099 * charset.c (charset_ksc5601): New variable.
4100 (Fdefine_charset_internal): Set charset_ksc5601.
4101 (init_charset_once): Initialize charset_ksc5601 to -1.
4102
d65859c3
DN
41032009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
4104
4105 * fileio.c (history_delete_duplicates): Remove unused declaration.
4106
4107 * callint.c (history_delete_duplicates): New declaration.
4108 (Fcall_interactively): Remove command history duplicates when
4109 history_delete_duplicates is true.
4110
3ba010e5
EZ
41112009-04-14 Eli Zaretskii <eliz@gnu.org>
4112
4113 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
4114
06f19b91
KH
41152009-04-14 Kenichi Handa <handa@m17n.org>
4116
4117 * font.c (Ffont_info): Fix docstring. Fix the second element of
4118 the returned value (bug#2949).
4119
2cce8bfc
CY
41202009-04-14 Chong Yidong <cyd@stupidchicken.com>
4121
4122 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
4123
d156542d
KH
41242009-04-14 Kenichi Handa <handa@m17n.org>
4125
4126 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
4127 encoding charset is ascii_compatible.
4128
4129 * charset.c (Fdefine_charset_internal): Make charset
4130 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
4131 code_offset is 0, and covers all ASCII characters.
4132
86fa089e
SM
41332009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4134
4135 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
4136 (ns_string_to_pasteboard_internal):
4137 * nsmenu.m (process_dialog):
4138 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
4139 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
4140 * lisp.h (Fx_load_color_file): Declare.
4141
a8a3728b
KH
41422009-04-13 Kenichi Handa <handa@m17n.org>
4143
1ac9108a 4144 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
4145 (font_select_entity): Suppress the code to optimize for the same
4146 kind of fonts.
4147 (font_load_for_lface): Get a font that supports at least ASCII
4148 characters.
4149
4150 * ftfont.c (Qja, Qko): New variables.
4151 (fc_charset_table): Delete uniquifier data for iso8859-1.
4152 (ftfont_get_latin1_charset): New function.
4153 (get_adstyle_property): New function.
4154 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
4155 bitmap fonts.
4156 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
4157 Delete iso-8859-1 range from the charset of fonts whose adstyle is
4158 `ko' or `ja'.
4159 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 4160 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
4161 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
4162 property.
4163 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
4164 (syms_of_ftfont): DEFSYM Qja and Qko.
4165
483670b5
KH
41662009-04-09 Kenichi Handa <handa@m17n.org>
4167
12b55765
KH
4168 * charset.c (map_charset_chars): For a charset of `superset'
4169 method, fix calculation of code range.
4170
483670b5
KH
4171 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
4172 from the list of extra properties.
4173 (font_clear_prop): Be sure to delete `:name' font property.
4174
57d3b93b
KH
41752009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4176
b4b2c2ca
YM
4177 * dispnew.c (redraw_overlapping_rows): Fix detection of
4178 overlapping for topmost and bottommost rows.
4179
1ac9108a 4180 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 4181
472c3609
JR
41822009-04-06 Jason Rumney <jasonr@gnu.org>
4183
4184 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
4185
ab193662
KH
41862009-04-06 Kenichi Handa <handa@m17n.org>
4187
4188 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
4189
4190 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
4191
0c26f026
KH
41922009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4193
4194 * ftfont.c (ftfont_open): Fix checking of the return value of
4195 FT_Load_Char. Fix setting font->underline_thickness.
4196
e173bbce
CY
41972009-04-04 Chong Yidong <cyd@stupidchicken.com>
4198
4199 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
4200 (Fterminal_parameters, Fterminal_parameter)
4201 (Fset_terminal_parameter): In doc string, refer to terminal
4202 objects rather than terminal ids.
4203
693a2698
EZ
42042009-04-04 Eli Zaretskii <eliz@gnu.org>
4205
4206 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
4207 ret_lim_data. (Bug#2867)
4208
d5221487
CY
42092009-04-03 Chong Yidong <cyd@stupidchicken.com>
4210
4211 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
4212 so they don't get wider than the window, matching 2006-01-23
4213 change to the partner function in xdisp.c (Bug#2800).
4214
223509a3
KH
42152009-04-03 Kenichi Handa <handa@m17n.org>
4216
4217 * print.c (print_object): Make each lowest sub_char_table start a
4218 new line (Bug#2866).
4219
74fcd0b1
KH
42202009-04-02 Kenichi Handa <handa@m17n.org>
4221
4222 * fontset.c (fontset_font): Record no-font when a fontset
4223 explicitly tells not to try another font-specs.
4224
c542407d
SM
42252009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
4226
4227 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
4228
e3869731
KH
42292009-03-30 Kenichi Handa <handa@m17n.org>
4230
d8d2f142
KH
4231 * fontset.c (fontset_from_font): Specify only registry in a
4232 font-spec for all characters supported by that registry.
4233
e3869731
KH
4234 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
4235 even if HAVE_M17N_FLT is not defined.
4236
5da5f805
CY
42372009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
4238
4239 * ftfont.c: Conditionalize prototyping and use of
4240 ftfont_variation_glyphs.
4241
ab226c50
SM
42422009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
4243
9628fed7
SM
4244 * frame.c (delete_frame): Work around compiler bug.
4245
4246 * editfns.c (general_insert_function): Adjust to insdel.c changes.
4247 * insdel.c (prepare_to_modify_buffer, signal_before_change):
4248 Some more EMACS_INT.
4249 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
4250
4251 * xdisp.c (dump_glyph): Fix typo.
4252
ae19ba7c
SM
4253 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
4254 (adjust_markers_gap_motion, adjust_markers_for_delete)
4255 (adjust_markers_for_insert, adjust_point)
4256 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
4257 (make_gap, copy_text, count_size_as_multibyte, insert)
4258 (insert_and_inherit, insert_before_markers)
4259 (insert_before_markers_and_inherit, insert_1)
4260 (count_combining_before, count_combining_after, insert_1_both)
4261 (insert_from_string, insert_from_string_before_markers)
4262 (insert_from_string_1, insert_from_gap, insert_from_buffer)
4263 (insert_from_buffer_1, adjust_after_replace)
4264 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
4265 (replace_range_2, del_range, del_range_1, del_range_byte)
4266 (del_range_both, del_range_2, modify_region)
4267 (prepare_to_modify_buffer, signal_before_change)
4268 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
4269 for buffer positions and sizes.
4270 * lisp.h: Adjust prototypes accordingly.
4271
4272 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
4273 (non_regular_inserted, non_regular_nbytes, read_non_regular)
4274 (Finsert_file_contents): Use EMACS_INT for buffer positions.
4275
ab226c50
SM
4276 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
4277
46dfb8fb
JD
42782009-03-27 Jan Djärv <jan.h.d@swipnet.se>
4279
4280 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
4281 lines and columns so we keep the same pixel height and width.
4282
4283 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
4284 the property _NET_WM_STATE has changed.
46dfb8fb
JD
4285 (x_handle_net_wm_state): New function to update frame parameter
4286 fullscreen.
4287 (x_term_init): Initialize atoms for _NET_WM_STATE.
4288
4289 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
4290
d347e494
SM
42912009-03-27 Kevin Ryde <user42@zip.com.au>
4292
4293 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
4294 Gpm_GetEvent as an error that justifies closing the filedescriptor.
4295 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
4296 (Fgpm_mouse_stop): Pass that new parameter.
4297 * termhooks.h (close_gpm): Adjust prototype.
4298
84db11d6
SM
42992009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
4300
c95a5008
SM
4301 * lisp.h (Fx_focus_frame): Declare.
4302
84db11d6
SM
4303 * callint.c (Fcall_interactively): For '^' just delegate the work to
4304 handle-shift-selection.
4305 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
4306
0a1958d6
CY
43072009-03-24 Chong Yidong <cyd@stupidchicken.com>
4308
0bfdff23
CY
4309 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
4310
0a1958d6
CY
4311 * data.c (Qinteractive_form): New variable.
4312 (Finteractive_form): Use it.
4313
4314 * eval.c (Fcommandp): Use Qinteractive_form.
4315
58aec0d6
JR
43162009-03-24 Jason Rumney <jasonr@gnu.org>
4317
4318 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
4319 Calculate total size precisely. Decode environment variables
4320 before substituting. (Bug#38)
4321
553dd618
KH
43222009-03-24 Kenichi Handa <handa@m17n.org>
4323
4324 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 4325 encoding (Bug#2722).
553dd618 4326
c39ea606
JD
43272009-03-23 Jan Djärv <jan.h.d@swipnet.se>
4328
4329 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
4330 that gdpy is set.
4331
bc9b2b5e
AM
43322009-03-22 Alan Mackenzie <acm@muc.de>
4333
4334 * callint.c (Finteractive): Clarify the doc string - even
4335 promptless elements need \n separators.
4336
9f995a76
JR
43372009-03-22 Jason Rumney <jasonr@gnu.org>
4338
4339 * w32term.c (syms_of_w32term): Doc fix for
4340 x-use-underline-position-properties.
4341
22749e9a
EZ
43422009-03-21 Eli Zaretskii <eliz@gnu.org>
4343
4344 * w32.c (getpwuid): Change argument type to unsigned.
4345 (struct w32_id): Change type of `rid' member to unsigned.
4346 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
4347 argument ID to unsigned. All callers changed.
4348 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
4349
e00553bf
EZ
43502009-03-20 Eli Zaretskii <eliz@gnu.org>
4351
4352 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
4353 negative, produce a float value.
4354
4355 * dired.c (make_uid, make_gid): New functions.
4356 (Ffile_attributes): Use them to avoid negative UID and GID.
4357
f761d6b6
JB
43582009-03-20 Juanma Barranquero <lekktu@gmail.com>
4359
4360 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
4361 (syms_of_keyboard) <command-hook-internal, input-method-function>:
4362 Fix typos in docstrings.
4363
d507f8d7
KH
43642009-03-19 Kenichi Handa <handa@m17n.org>
4365
4366 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
4367 changed, use font_load_for_lface to get a new font object.
4368 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
4369
4370 * frame.c (x_set_font): Handle the case that ARG is a cons.
4371
c68845e0
GM
43722009-03-19 Glenn Morris <rgm@gnu.org>
4373
4374 * fileio.c (Fsubstitute_in_file_name): Doc fix.
4375
bfa49dd1
CY
43762009-03-19 Chong Yidong <cyd@stupidchicken.com>
4377
4378 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
4379
8458d4c1
KH
43802009-03-19 Kenichi Handa <handa@m17n.org>
4381
4382 * charset.c (load_charset_map_from_file): When a mapfile can't be
4383 loaded, signal an error.
4384
78e7d1fe
EZ
43852009-03-18 Eli Zaretskii <eliz@gnu.org>
4386
4387 * dired.c (Ffile_attributes): Make sure UID and GID are always
4388 positive, even if the value is too large for a positive EMACS_INT.
4389 Doc fix.
4390
4391 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
4392
5da9fdfa
YM
43932009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4394
4395 * xmenu.c (xdialog_show): Move Fredisplay call ...
4396 (Fx_popup_dialog): ... here.
4397
7519c40d
SM
43982009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
4399
4400 * dired.c (file_name_completion): Disable the first optimization just
4401 installed, since it is not implemented correctly.
4402
2cd298e2
SM
44032009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4404
4405 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 4406 only if the entry can affect bestmatch.
2cd298e2
SM
4407 Stop the search early, as Ftry_completion already does.
4408
48d37adf
CY
44092009-03-17 Chong Yidong <cyd@stupidchicken.com>
4410
e10c9c93 4411 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 4412
9286b16a
CY
44132009-03-15 Chong Yidong <cyd@stupidchicken.com>
4414
4415 * keyboard.c (parse_menu_item): Don't display remappings as menu
4416 equivalent bindings (Bug#788).
4417
f7b146dc
JR
44182009-03-15 Jason Rumney <jasonr@gnu.org>
4419
4420 * w32term.h (WM_EMACS_PAINT): New message.
4421 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
4422 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
4423 before passing to lisp thread. (Bug#950)
4424
f761d6b6 44252009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 4426
d93f9575
CY
4427 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
4428 variable as it was never reset.
4429 (ns_term_init): Remove initialization of Lisp-settable defaults
4430 and ns_expand_space.
4431 (-setPanelFromDefaultValues): Remove ns_expand_space.
4432 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
4433 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
4434 i.e. no additional spacing, similar to Carbon port.
4435
d93f9575
CY
4436 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
4437 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 4438
305018ec
JD
44392009-03-14 Jan Djärv <jan.h.d@swipnet.se>
4440
4441 * sound.c (alsa_configure): Remove call to deprecated
4442 snd_pcm_sw_params_set_xfer_align.
4443
f761d6b6 44442009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
4445
4446 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
4447 after clicking in a detached tool bar.
4448 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
4449
46e722a9
SM
44502009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
4451
348db3dd
SM
4452 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
4453 int/Lisp_Object mixup).
46e722a9 4454
a3d16f39
KH
44552009-03-13 Kenichi Handa <handa@m17n.org>
4456
4457 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 4458 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
4459 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
4460 (set_fontset_font): Change ARG to a vector. Handle range_list in
4461 ARG correctly.
4462 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 4463 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
4464 the above change.
4465 (fontset_from_font): Fix previous change.
fe24f56a 4466 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
4467 entry. If FONTSET is the default fontset, don't set the extra
4468 slot of the returning char-table.
4469
b066e6b6
JB
44702009-03-12 Juanma Barranquero <lekktu@gmail.com>
4471
4472 * nsfns.m (Fx_close_connection): Doc fix.
4473 (Fns_do_applescript): Reflow docstring.
4474 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
4475 (Fx_display_pixel_width, Fx_display_pixel_height)
4476 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
4477 Fix typos in docstrings.
4478 (Fns_set_alpha): Fix typos in error messages.
4479
d472514e 44802009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 4481
d472514e 4482 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
4483 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
4484 were used for such events.
4485
d472514e
JB
4486 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
4487 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 4488
d472514e 4489 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
4490 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
4491
fb930676
KH
44922009-03-11 Kenichi Handa <handa@m17n.org>
4493
ff85581a
KH
4494 * font.h (font_open_by_spec): Extern it.
4495
c50b7e98
KH
4496 * font.c (font_open_by_spec): New function.
4497 (font_open_by_name): Use font_open_by_spec.
4498
fb930676
KH
4499 * frame.c (x_set_font): When ARG is a font-object, don't alter the
4500 fontset of the frame.
4501
4502 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
4503 modify the default font of frames that use this fontset.
4504 (num_auto_fontsets): New variable.
4505 (fontset_from_font): Use num_auto_fontsets to decide a fontset
4506 name. Be sure to set FONTSET_ASCII to the correct font name.
4507 (update_auto_fontset_alist): New function.
4508
df4e8455
JB
45092009-03-11 Juanma Barranquero <lekktu@gmail.com>
4510
4511 * makefile.w32-in: Update dependencies.
4512
0a375797
AR
45132009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4514
4515 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
4516
61313fa3
SM
45172009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
4518
4519 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
4520
b55103fb
CY
45212009-03-10 Chong Yidong <cyd@stupidchicken.com>
4522
4523 * lread.c (Feval_buffer): Doc fix.
4524
dde2559c
KH
45252009-03-09 Kenichi Handa <handa@m17n.org>
4526
4527 * charset.c (Qfile_name_handler_alist): Extern it.
4528 (load_charset_map_from_file): Temporarily bind
4529 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
4530
df4e8455 45312009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 4532
47f588bb
GM
4533 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
4534 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 4535
4ddf94bd
AR
45362009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4537
4c9bdfc2
AR
4538 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
4539 (x_set_window_size): Change back to calculated method of setting
4540 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
4541 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
4542 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
4543
fe41ae9e
AR
4544 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
4545
4c9bdfc2
AR
4546 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
4547 accelerator in parens under GNUstep.
4548
825d0875
KH
45492009-03-06 Kenichi Handa <handa@m17n.org>
4550
4551 These changes are to detect incorrect composition sequence without
f3b3be74 4552 looking ahead the source. (Bug#2370)
825d0875
KH
4553
4554 * coding.h: Include "composite.h".
4555 (enum compisition_state): New enum.
4556 (struct compisition_status): New struct.
4557 (struct iso_2022_spec): New member cmp_status.
4558 (struct emacs_mule_spec): New struct.
4559 (struct coding_system): New members ctext_extended_segment_len and
4560 embedded_utf_8. Change the union member
4561 spec.emacs_mule_full_support to spec.emacs_mule.
4562
4563 * coding.c (CODING_ISO_CMP_STATUS): New macro.
4564 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 4565 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
4566 (ADD_COMPOSITION_DATA): New arg nbytes.
4567 (emacs_mule_char): New arg cmp_status.
4568 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
4569 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
4570 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
4571 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
4572 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
4573 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
4574 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
4575 (EMACS_MULE_COMPOSITION_END): New macro.
4576 (emacs_mule_finish_composition): New function.
4577 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
4578 (decode_coding_emacs_mule): Avoid long looking ahead while
4579 handling composition.
4580 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
4581 (ENCODE_COMPOSITION_RULE): New macro.
4582 (finish_composition): New function.
4583 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
4584 (DECODE_COMPOSITION_START): New implementation.
4585 (DECODE_COMPOSITION_END): Likewise.
4586 (STORE_COMPOSITION_RULE): New macro.
4587 (decode_coding_iso_2022): Avoid long looking ahead while handling
4588 composition, CTEXT extended segment, and embedded UTF-8.
4589 (setup_coding_system): For a coding of type iso-2022, reset
4590 CODING_ISO_EXTSEGMENT_LEN (coding) and
4591 CODING_ISO_EMBEDDED_UTF_8 (coding).
4592 (get_translation): Delete arguments last_block, from_nchars,
4593 to_nchars. Callers changed.
4594 (produce_chars): Don't modify charbuf. Adjusted for the change of
4595 get_translation.
98a326f7 4596 (produce_composition): Adjust for the new annotation sequence.
825d0875 4597 (handle_composition_annotation): Likewise.
98a326f7 4598 (consume_chars): Adjust for the change of get_translation.
825d0875 4599
ccbc4452
AR
46002009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
4601
4ddf94bd 4602 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 4603
988a7ddb
KH
46042009-03-05 Kenichi Handa <handa@m17n.org>
4605
4606 * font.c (font_select_entity): New function.
4607 (font_find_for_lface): Use font_select_entity to select a font.
4608
4609 * fontset.c (fontset_find_font): If a font found without
a8a3728b 4610 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
4611 font with C restriction.
4612
98a326f7 46132009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 4614
be1bce46 4615 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 4616
10ea2b82
JR
46172009-03-04 Jason Rumney <jasonr@gnu.org>
4618
2c93b248 4619 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 4620 characters that have already been read. (Bug#2569)
2c93b248 4621
10ea2b82
JR
4622 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
4623 Log an error message if check_image_size failed.
4624 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 4625 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 4626
71a0c011
EZ
46272009-03-02 Eli Zaretskii <eliz@gnu.org>
4628
4629 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
4630 when decoding process output.
4631
2f63bba8
RS
46322009-03-01 Richard M Stallman <rms@gnu.org>
4633
4634 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
4635
4636 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
4637
0a9564cb
EZ
46382009-02-28 Eli Zaretskii <eliz@gnu.org>
4639
4640 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
4641 (decode_coding_emacs_mule, decode_coding_iso_2022)
4642 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4643 (decode_coding_raw_text, decode_coding_charset)
4644 (setup_coding_system, decode_eol, decode_coding, consume_chars):
4645 Honor inhibit-eol-conversion. (Bug #2186)
4646
449148b3
JR
46472009-02-28 Jason Rumney <jasonr@gnu.org>
4648
4649 * coding.c (detect_coding_charset): If not checking latin extra,
4650 fail on characters between 0x80 and 0xA0. (Bug#2354)
4651
a4aee864
EZ
46522009-02-28 Eli Zaretskii <eliz@gnu.org>
4653
4654 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 4655 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 4656
d88bee5a
GM
46572009-02-27 Glenn Morris <rgm@gnu.org>
4658
4659 * callint.c (Finteractive): Doc fix.
4660
a808f22d
KH
46612009-02-27 Kenichi Handa <handa@m17n.org>
4662
4663 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
4664
caf8d60c
CY
46652009-02-27 Chong Yidong <cyd@stupidchicken.com>
4666
4667 * font.c (font_style_to_value): Set value for unknown symbols to
4668 100 instead of 255.
b61137ea
CY
4669 (weight_table, slant_table, width_table): Treat "unspecified" as
4670 the default value.
caf8d60c 4671
1a0de25c
JB
46722009-02-26 Juanma Barranquero <lekktu@gmail.com>
4673
4674 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
4675
8fc45744
JB
46762009-02-25 Juanma Barranquero <lekktu@gmail.com>
4677
107bd7d1
JB
4678 * lread.c (Fload): Stop checking Vloads_in_progress and signal
4679 error as soon as a recursive load is detected.
8fc45744 4680
f097e223
AR
46812009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4682
4683 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
4684 before caching.
4685
8810a12f
KH
46862009-02-24 Kenichi Handa <handa@m17n.org>
4687
4688 * fontset.c (fontset_find_font): Fix the condition for checking
4689 unavailable font.
4690
2c7d1565
GM
46912009-02-24 Glenn Morris <rgm@gnu.org>
4692
4693 * xfaces.c (Finternal_set_font_selection_order): Remove leading
4694 whitespace that confuses documentation.
4695
a20878b6
MB
46962009-02-23 Miles Bader <miles@gnu.org>
4697
4698 * process.c (Flist_system_processes, Fprocess_attributes)
4699 (syms_of_process): Rename `system-process-attributes' to
4700 `process-attributes'.
4701
b3b58c01
AS
47022009-02-22 Andreas Schwab <schwab@linux-m68k.org>
4703
1b3b981b
AS
4704 * coding.h (struct coding_system): Make safe_charsets a pointer to
4705 unsigned char.
4706 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
4707 being 255.
4708 (SAFE_CHARSET_P): Likewise.
4709 (setup_iso_safe_charsets): Properly setup safe_charsets.
4710 (Fdefine_coding_system_internal): Likewise.
4711 (setup_coding_system): Likewise. Remove unneeded casts.
4712 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
4713 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
4714 unneeded casts.
4715
b3b58c01
AS
4716 * insdel.c (del_range_2): Don't modify gap contents when called
4717 from decode_coding_object. (Bug#1809)
4718
0b6f228c
CY
47192009-02-21 Chong Yidong <cyd@stupidchicken.com>
4720
4721 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
4722 Qfont_object.
4723 (Ftype_of): Recognize font objects.
4724
4725 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
4726
4727 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
4728 moved to data.c.
4729
52f8870b
AR
47302009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4731
4732 * nsterm.m (x_make_frame_invisible): Unset async_visible,
4733 async_iconified. Based on a patch by Christian Lynbech
4734 <christian.lynbech@tieto.com>.
4735 (EmacsView-windowDidMiniaturize:): Unset async_visible.
4736
7087d5e9
GM
47372009-02-20 Glenn Morris <rgm@gnu.org>
4738
4739 * syntax.c (Fskip_chars_forward): Fix doc typo.
4740
41d2ceef
CY
47412009-02-20 Chong Yidong <cyd@stupidchicken.com>
4742
4743 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
4744
1a3b7ca6
CY
47452009-02-19 Chong Yidong <cyd@stupidchicken.com>
4746
4747 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
4748
73cce38d
KH
47492009-02-19 Kenichi Handa <handa@m17n.org>
4750
4751 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 4752 Don't overflow coding->carryover. (Bug#2370)
73cce38d 4753
a51092ee
DN
47542009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
4755
4756 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
4757
c423ecca
KH
47582009-02-18 Kenichi Handa <handa@m17n.org>
4759
4760 * font.c (font_check_otf_features): Fix handling of `nil' element.
4761 (Ffont_spec): Describe :lang and :otf in the docstring.
4762
4c1958f4
AS
47632009-02-16 Andreas Schwab <schwab@suse.de>
4764
4765 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
4766 string.
4767
5704f39a
KH
47682009-02-16 Kenichi Handa <handa@m17n.org>
4769
4770 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 4771 (Bug#1723)
5704f39a 4772
8f0085aa
CY
47732009-02-14 Chong Yidong <cyd@stupidchicken.com>
4774
a057d86a 4775 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
4776
4777 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
4778 (handle_line_prefix): Suppress wrapping of wrap prefixes.
4779
aff01dd9
EZ
47802009-02-14 Eli Zaretskii <eliz@gnu.org>
4781
4782 * msdos.c (MAX_SCREEN_BUF): New macro.
4783 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
4784 Encode the entire run of glyphs sharing the same face, instead of
4785 doing that one glyph at a time (fixes a bug with displaying
4786 double-size characters).
4787
ba301db3
AR
47882009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
4789
4790 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
4791
4792 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
4793 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 4794 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
4795
4796 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 4797 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 4798
51d861de
SM
47992009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
4800
ac146f82 4801 * keyboard.c (adjust_point_for_property): Allow stopping between two
51d861de
SM
4802 invisible areas.
4803
7fed8996
JR
48042009-02-12 Jason Rumney <jasonr@gnu.org>
4805
631ea4fb
JR
4806 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
4807 (add_font_entity_to_list): Call check_face_name even when family
4808 is unspecified.
4809
cb4a3e42
JR
4810 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4811 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 4812 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 4813
7fed8996 4814 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 4815 raster fonts. (Bug#2219)
7fed8996 4816
895416e3
KH
48172009-02-12 Kenichi Handa <handa@m17n.org>
4818
4819 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
4820 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
4821 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 4822 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
4823 (find_automatic_composition): While looking forward and backward,
4824 check static composition. Fix where to stop looking forward.
4825 (composition_adjust_point): Fix checking of static composition.
4826 (Fcomposition_get_gstring): Pay attention to
1dacf998 4827 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
4828
4829 * lisp.h (fast_looking_at): Extern it.
4830
4831 * search.c (fast_looking_at): New function.
4832
51d861de 4833 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
4834 <struct glyph>.u.cmp.to.
4835 (append_composite_glyph): Likewise.
4836
51d861de 4837 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
4838 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
4839 composition.
51d861de 4840 (append_composite_glyph): Adjust for the change of
895416e3
KH
4841 <strcut glyph>.u.cmp.to.
4842
8510724d
JB
48432009-02-11 Juanma Barranquero <lekktu@gmail.com>
4844
4845 * casetab.c (init_casetab_once):
4846 * coding.c (ALLOC_CONVERSION_WORK_AREA):
4847 * font.c (font_update_lface):
4848 * fontset.c (Fnew_fontset):
4849 * ftfont.c (ftfont_drive_otf):
4850 * xfont.c (xfont_open):
4851 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
4852
294fa707
SM
48532009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
4854
4855 * fileio.c (Fwrite_region): !NILP -> CONSP.
4856
b5bfebec
AS
48572009-02-10 Andreas Schwab <schwab@suse.de>
4858
4859 * process.c (send_process): Properly relocate pointer into data
adab88bd 4860 when using encoded data. (Bug#2272)
b5bfebec 4861
cb84a2be
KH
48622009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
4863
4864 * coding.c (detect_coding_charset): Fix previous change.
4865
89e09428
JR
48662009-02-08 Jason Rumney <jasonr@gnu.org>
4867
4868 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 4869 disappeared while hourglass was displayed. (Bug #2193)
89e09428 4870
4470a277
AS
48712009-02-07 Andreas Schwab <schwab@suse.de>
4872
4873 * unexelf.c (unexec): Fix error message.
4874
3175b12a
AR
48752009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
4876
4877 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 4878 when modal window is active. (Bug #2152)
3175b12a
AR
4879 (applicationShouldTerminate:): Remove now-unneeded while loop
4880 around NSRunAlertPanel.
4881
4882 * nsmenu.m (popupSession): New file-global variable.
4883 (pop_down_menu): End the popupSession before closing dialog.
4884 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
4885 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
4886 don't query NSApp for events (just sleep instead).
4887
8434d0b8
EZ
48882009-02-07 Eli Zaretskii <eliz@gnu.org>
4889
51d861de
SM
4890 * coding.c (syms_of_coding) <translation-table-for-input>:
4891 Modify doc string to discourage use for character code unification.
8434d0b8 4892
aa82edfd
CY
48932009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4894
4895 * atimer.c (run_timers): Update pending_atimers.
4896
2d283c7c
CY
48972009-02-06 Chong Yidong <cyd@stupidchicken.com>
4898
eb306cab
CY
4899 * image.c (svg_load_image): Fix last change.
4900
2d283c7c
CY
4901 * xfns.c (Fx_create_frame): Signal an error if no font is
4902 found (Bug#2147).
4903
4d8e170e
JB
49042009-02-05 Juanma Barranquero <lekktu@gmail.com>
4905
4906 * character.c (syms_of_character) <script-representative-chars>:
4907 Fix typo in docstring.
4908
c96169a0
AR
49092009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4910
4911 * nsmenu.m (pop_down_menu): New function.
4912 (ns_popup_dialog): Call it on unwind.
4913 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
4914 call timer_check() (Bug#2154).
4915 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
4916 handling_signal is set.
4917 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
4918
31fd7c5c 4919 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
4920
4921 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
4922
4923 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
4924
51d861de
SM
4925 * keyboard.c (poll_for_input_1, handle_async_input):
4926 Set handling_signal under HAVE_NS.
c96169a0 4927
aacd8ba1
GM
49282009-02-04 Glenn Morris <rgm@gnu.org>
4929
4930 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
4931
4cb75c4b
KH
49322009-02-04 Kenichi Handa <handa@m17n.org>
4933
4934 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
4935
4936 * charset.c (Fchar_charset): New optional arg restriction.
4937
4938 * coding.h (coding_system_charset_list): Extern it.
4939
4940 * coding.c (coding_system_charset_list): New function.
4941
4942 * composite.c: Include coding.h and termhooks.h.
4943 (composition_gstring_p): Fix for the terminal case.
4944 (composition_gstring_width): Likewise.
4945 (fill_gstring_body): Likewise.
4946 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
4947 the frame.
4948 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
4949 is within a composition.
867d4bb3 4950 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
4951
4952 * term.c (encode_terminal_code): Fix handling of composition.
4953 (produce_composite_glyph): For static composition, get pixel_width
4954 from struct composition.
4955
826ba17e
AS
49562009-02-02 Andreas Schwab <schwab@suse.de>
4957
4958 * unexelf.c (unexec): Handle unaligned bss offset.
4959
8ad093db
AR
49602009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4961
4962 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
4963 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 4964
8ad093db
AR
4965 * keyboard.c (handle_interrupt): Don't call
4966 quit_throw_to_read_char() under NS.
d0a76a6e 4967
8ad093db
AR
4968 * blockinput.h: Remove NS-specific code.
4969
4d18a7a2
DN
49702009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
4971
db878925
DN
4972 * dispnew.c (window_change_signal): Don't try to get the size of a
4973 suspended tty frame.
4974 * term.c (Fresume_tty): Resize if the size has changed while the
4975 tty was suspended.
4976
4d18a7a2
DN
4977 * alloc.c (mark_stack): Properly conditionalize previous change.
4978
8984df7c
JB
49792009-01-30 Juanma Barranquero <lekktu@gmail.com>
4980
4981 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
4982 * w32term.c (w32_read_socket) [SYNC_INPUT]:
4983 Remove; this code is not used on Windows.
4984
75f4f1ac
EZ
49852009-01-30 Eli Zaretskii <eliz@gnu.org>
4986
4987 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
4988 EOLs that also has stray ^M characters.
4989
07a1e794
JB
49902009-01-30 Juanma Barranquero <lekktu@gmail.com>
4991
4992 * atimer.c (run_timers, alarm_signal_handler):
4993 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
4994 * w32inevt.c (w32_console_read_socket):
4995 * w32term.c (w32_read_socket):
4996 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
4997
a8b11cc9
CY
49982009-01-30 Chong Yidong <cyd@stupidchicken.com>
4999
5000 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
5001 Initialize it as a relative filename pattern.
5002 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
5003 (Fcall_process_region): Simplify temp file creation using
5004 temporary-file-directory.
5005
c279587b
EZ
50062009-01-29 Eli Zaretskii <eliz@gnu.org>
5007
5008 * msdos.c: Rename pending_signals to msdos_pending_signals.
5009 (sig_suspender, sigprocmask): Adjust.
5010
a8fe3242
CY
50112009-01-29 Chong Yidong <cyd@stupidchicken.com>
5012
5013 * keyboard.c (pending_signals): New var.
5014 (poll_for_input, input_available_signal, init_keyboard): Set it.
5015 (process_pending_signals): New function.
5016
5017 * lisp.h (QUIT): Check pending_signals instead of
5018 interrupt_input_pending. Use process_pending_signals.
5019
51d861de 5020 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 5021
51d861de 5022 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
5023
5024 * sysdep.c (emacs_write): Use process_pending_signals.
5025
5026 * xterm.c (XTread_socket): Update pending_signals.
5027
5028 * w32term.c (w32_read_socket): Update pending_signals.
5029
5030 * w32inevt.c (w32_console_read_socket): Update pending_signals.
5031
6570a1c4
KH
50322009-01-29 Kenichi Handa <handa@m17n.org>
5033
5034 * xftfont.c (xftfont_has_char): New function.
5035 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
5036
d72a4afa
AR
50372009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5038
5039 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
5040 under GNUstep.
5041 (ns_query_color): New declaration.
5042
5043 * nsterm.m (ns_confirm_quit): New variable.
5044 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
5045 (EmacsApp-applicationShouldTerminate:): Use it.
5046 (EmacsPrefsController): Let user set it.
5047 (ns_query_color): New function.
5048 (ns_defined_color): Use it.
5049 (ns_initialize): Drop.
5050 (ns_term_init): Add two lines from ns_initialize(), and set
5051 input_interrupt_mode to nil.
5052
5053 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 5054 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 5055
9fe78804
KH
50562009-01-28 Kenichi Handa <handa@m17n.org>
5057
5058 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
5059 (fontset_get_font_group): Remember that no font-group is specified
5060 for C.
9fe78804 5061
fa57de36
CY
50622009-01-27 Chong Yidong <cyd@stupidchicken.com>
5063
930600e9
CY
5064 * fns.c (concat): Check for string overflow (bug#1787).
5065
fa57de36
CY
5066 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
5067 Quadruple undo limits (bug#1501).
5068
7179ce7b
KH
50692009-01-27 Kenichi Handa <handa@m17n.org>
5070
5071 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
5072 directly use GT_Get_Char_index.
5073
5074 * xftfont.c (struct xftfont_info): New member `index'.
5075
5076 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 5077 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 5078
5be8fcc0
CY
50792009-01-26 Kenichi Handa <handa@m17n.org>
5080
5081 * fontset.c (fontset_find_font): Fix handling of non-cons return
5082 value of fontset_get_font_group.
5083 (fontset_font): Revert last change.
5084
19ae3e61
JR
50852009-01-26 Jason Rumney <jasonr@gnu.org>
5086
5087 * w32font.c (w32font_list_internal): Return quickly if registry is
5088 unknown. Simplify final return.
5089 (add_font_entity_to_list): Break complex logic down into more
5090 manageable chunks. Move unknown registry check to
5091 w32font_list_internal.
5092
8612b71a
AR
50932009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
5094
5095 Changes to remove Feval calls from GUI under NS.
5096
d8038940
JB
5097 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
5098 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
5099 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
5100
5101 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
5102 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
5103 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
5104 instead of NON_ASCII_KEYSTROKE_EVENT.
5105 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
5106 (EmacsApp-applicationShouldTerminate:): Query user.
5107 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
5108 instead of Feval.
5109
5110 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
5111
5112 * keyboard.c (kbd_buffer_get_event): Check for it.
5113 (keys_of_keyboard): Define lispy keys for
5114 ns-put/unput-working-text.
5115
5116 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
5117 versions.
5118 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
5119
6288ae55
CY
51202009-01-25 Chong Yidong <cyd@stupidchicken.com>
5121
5122 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 5123 setting current_buffer directly. (Bug#2044)
6288ae55 5124
289e7f8f
CY
51252009-01-24 Chong Yidong <cyd@stupidchicken.com>
5126
5ce87308 5127 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 5128 any work. (Bug#1952, bug#1990).
5ce87308 5129
64cc3cf6 5130 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 5131
b3243e6f
AR
51322009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
5133
5134 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
5135 (ns_no_defaults): New declaration.
5136 (main): Use it.
e0d2e69a 5137
d900b2af 5138 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 5139
d900b2af 5140 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 5141
d900b2af
AR
5142 * nsterm.m (ns_no_defaults): New variable.
5143 (ns_initialize): Don't read defaults when ns_no_defaults.
5144 (EmacsView-readSelectionFromPasteboard:)
5145 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 5146 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
5147 (ns_dumpglyphs_stretch): New function.
5148 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 5149 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 5150
e0d2e69a
AR
5151 * nsimage.m (setPixmapData:): Set to ignore image DPI.
5152
3ac71f5d
CY
51532009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
5154
5155 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
5156 call for Sparc64.
5157
3fe53a83
AR
51582009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5159
5160 * nsfns.m:
5161 * nsgui.h:
5162 * nsmenu.m:
5163 * nsselect.m:
5164 * nsterm.h:
5165 * nsterm.m: Remove '23' comments that indicated code added during
5166 update from emacs-20 -> emacs-23.
5167
10f87c6f 51682009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
5169
5170 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 5171 ns_alternate_modifier. (Bug#1217)
a3b53a85 5172
c7cef62d
AR
5173 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
5174 Display all shortcuts, including those w/o super modifier.
5175
575fb8bd
AR
5176 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
5177
918b848b
CY
51782009-01-22 Chong Yidong <cyd@stupidchicken.com>
5179
5180 * fileio.c (Vwrite_region_post_annotation_function)
5181 (Vwrite_region_annotation_buffers): New vars.
5182 (build_annotations_unwind): Just reset
5183 Vwrite_region_annotation_buffers.
5184 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
5185 Call write-region-post-annotation-function.
5186 (build_annotations): Add to Vwrite_region_annotation_buffers if
5187 buffer changes.
5188
a39e2539
AR
51892009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5190
5191 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
5192 Tiger.
51d861de
SM
5193 * nsfns.m (ns_do_applescript):
5194 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 5195
35ed44db
AR
51962009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
5197
5198 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
5199
cbe0b5bf
AR
52002009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5201
5202 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 5203
6049d3a0
AR
5204 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
5205
5206 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
5207 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
5208 handle Ctrl-tab. (Bug#1841)
5209 (ns_get_color): Use unsigned long long for scanned hex string value.
5210 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 5211 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 5212 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 5213 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 5214 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 5215 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 5216 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 5217
d3810c21 5218 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 5219 DPI. (Bug#1316)
d3810c21
AR
5220 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
5221 values in onTiger section.
4c7077c3 5222
e301e634
CY
52232009-01-19 Chong Yidong <cyd@stupidchicken.com>
5224
7f82490b
CY
5225 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
5226 Check return value of font_spec_from_name.
64cc3cf6 5227 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
5228
5229 * font.c (font_spec_from_name): Return Qnil if font name could not
5230 be parsed.
5231 (font_parse_name): Treat a `?' character as part of an XLFD.
5232
e301e634
CY
5233 * fns.c (Fsubstring): Doc fix.
5234
1c0db158
KH
52352009-01-19 Kenichi Handa <handa@m17n.org>
5236
51d861de 5237 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
5238 (ftfont_list): Likewise.
5239
acf20901
JB
52402009-01-18 Juanma Barranquero <lekktu@gmail.com>
5241
fff4e459
JB
5242 * dbusbind.c (Fdbus_register_signal):
5243 * process.c (conv_sockaddr_to_lisp):
5244 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
5245
acf20901
JB
5246 * callproc.c (Fgetenv_internal): Doc fix.
5247
e7abcdfb
CY
52482009-01-16 Chong Yidong <cyd@stupidchicken.com>
5249
5250 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
5251 it is not even used.
5252
b60861e6
GM
52532009-01-16 Glenn Morris <rgm@gnu.org>
5254
5255 * font.c (Ffont_variation_glyphs): Silence compiler.
5256
8db52afe
JB
52572009-01-15 Juanma Barranquero <lekktu@gmail.com>
5258
5259 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
5260 Reported by David Robinow <drobinow@gmail.com>.
5261
4cddb209
KH
52622009-01-15 Kenichi Handa <handa@m17n.org>
5263
51d861de 5264 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 5265
f247f67b
JR
52662009-01-14 Jason Rumney <jasonr@gnu.org>
5267
5268 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 5269 never a fontset. (Bug#1562)
f247f67b 5270
f56a4450
KH
52712009-01-14 Kenichi Handa <handa@m17n.org>
5272
5273 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 5274 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 5275
4e99855e
CY
52762009-01-13 Chong Yidong <cyd@stupidchicken.com>
5277
5278 * font.c (font_clear_prop): If clearing the family, clear the font
5279 width index too.
5280
fff4e459 5281 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 5282
24f01470
JB
52832009-01-12 Juanma Barranquero <lekktu@gmail.com>
5284
5285 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
5286 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
5287 functions, use sizeof.
5288
a41240a3
MR
52892009-01-12 Martin Rudalics <rudalics@gmx.at>
5290
5291 * keyboard.c (read_char): Fix case where last_nonmenu_event
5292 returned a bad value with submenus. (Bug#447)
5293
944636b8
CY
52942009-01-12 Chong Yidong <cyd@stupidchicken.com>
5295
5296 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
5297 family, clear the font width index too.
5298
0dad7c6f
JR
52992009-01-11 Jason Rumney <jasonr@gnu.org>
5300
5301 * keyboard.c (cmd_error_internal): Exit when errors occur before
5302 frame creation and not in daemon mode. (Bug#1836)
5303
7c2363af
CY
53042009-01-10 Chong Yidong <cyd@stupidchicken.com>
5305
5306 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
5307 of a display vector, backtrack.
5308 (try_window_reusing_current_matrix): Check glyph type before
5309 referencing charpos member.
5310
97b1b294
EZ
53112009-01-10 Eli Zaretskii <eliz@gnu.org>
5312
5313 Fix Bug #876:
5314
5315 * coding.c (inhibit_null_byte_detection): New variable.
5316 (detect_coding, detect_coding_system): Don't pay attention to null
5317 bytes if inhibit_null_byte_detection is non-zero.
51d861de 5318 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
5319 <inhibit-iso-escape-detection>: Doc fix.
5320
4624b6e3
JR
53212009-01-09 Jason Rumney <jasonr@gnu.org>
5322
5323 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 5324 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
5325 Only report Unicode Plane 2 fonts as unicode-sip.
5326
323b840c
CY
53272009-01-09 Chong Yidong <cyd@stupidchicken.com>
5328
51d861de
SM
5329 * xfaces.c (Fx_font_family_list): Delete function.
5330 Move compatibility version to faces.el.
323b840c 5331
51d861de 5332 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 5333
eba7400d
MR
53342009-01-09 Martin Rudalics <rudalics@gmx.at>
5335
5336 * frame.c (x_set_frame_parameters): Remember requested value for
5337 fullscreen before it's reset by the parameter handler.
5338
4b09796d
GM
53392009-01-09 Glenn Morris <rgm@gnu.org>
5340
5341 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 5342 (last_command_event): ... and update all users.
4b09796d
GM
5343 (last_input_char): For clarity, rename to...
5344 (last_input_event): ... and update all users.
5345 (last-command-char, last-input-char): Move to subr.el as aliases.
5346 * cmds.c, commands.h: Update for last_command_char rename.
5347
14ccea62
CY
53482009-01-08 Chong Yidong <cyd@stupidchicken.com>
5349
51d861de 5350 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 5351
5f004711
JR
53522009-01-08 Jason Rumney <jasonr@gnu.org>
5353
5354 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
5355 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
5356 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
5357 Don't declare.
fff4e459 5358 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
5359 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
5360
b71f6f73
KH
53612009-01-07 Kenichi Handa <handa@m17n.org>
5362
50b06221 5363 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 5364 remember the coding system used for decoding in
50b06221
KH
5365 coding_system (Bug#1039).
5366
b71f6f73 5367 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 5368 breaking the loop. (Bug#870)
b71f6f73
KH
5369 (decode_coding_utf_16, decode_coding_emacs_mule)
5370 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5371 (decode_coding_charset): Likewise.
5372
56f668f7
MR
53732009-01-05 Martin Rudalics <rudalics@gmx.at>
5374
5375 * frame.c (x_set_frame_parameters): Make sure height (width) get
5376 applied when fullwidth (fullheight) is set. (Bug#1522)
5377
5da9424d
JB
53782009-01-04 Juanma Barranquero <lekktu@gmail.com>
5379
5380 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
5381 (utc_base): Declare as ULONGLONG, not long double.
5382 (convert_time_raw): Delete.
5383 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
5384 (initialize_utc_base): New function.
5385 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
5386 (convert_from_time_t): Use initialize_utc_base; compute result with
5387 64-bit arithmetic.
5388 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
5389
c4605e09
EZ
53902009-01-03 Eli Zaretskii <eliz@gnu.org>
5391
9acef61c 5392 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
5393 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
5394 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
5395 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
5396 [!subprocesses]: Define.
5397 (syms_of_process) [!subprocesses]: Intern and staticpro them.
5398 (Flist_system_processes, Fsystem_process_attributes)
5399 [!subprocesses]: Call list_system_processes and
5400 system_process_attributes instead of returning Qnil.
5401
9acef61c
JB
5402 * dosfns.c (system_process_attributes, list_system_processes):
5403 New functions.
c4605e09
EZ
5404
5405 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
5406
5407 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
5408 Don't use the default (no-op) implementation.
5409
8b7d0a16
JR
54102009-01-03 Jason Rumney <jasonr@gnu.org>
5411
a6d46bc1
JR
5412 * keyboard.c (parse_modifiers_uncached): Wheel events are
5413 clicks (bug#687).
5414
8b7d0a16
JR
5415 * w32term.c (x_query_colors, x_query_color): New functions.
5416
5417 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
5418 (svg_load_image): Cast returned pointers from dynamically loaded
5419 functions. Eliminate W32 specific code.
5420
bfe11752
DN
54212009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
5422
89e2438a
DN
5423 * nsfns.m (x_set_foreground_color, x_set_background_color)
5424 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
5425 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
5426 x_ prefix instead of ns_. Update references.
5427 (syms_of_nsfns): Add a FIXME comment.
5428
5429 * nsterm.m (x_set_cursor_type): New prototype.
5430 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
5431
bfe11752
DN
5432 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
5433 for Solaris instead of incorrectly providing Qutime and Qcutime.
5434
031da700
EZ
54352009-01-02 Eli Zaretskii <eliz@gnu.org>
5436
5437 * w32.c (process_times): Compute sum of utime and stime.
5438 (system_process_attributes): Add Qtime to the alist.
5439
5440 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
5441 and add them to the alist.
5442
5443 * process.c (top level) <Qtime, Qctime>: New variables.
5444 (syms_of_process): staticpro them.
5445 (Fsystem_process_attributes): Add their documentation to the doc
5446 string.
5447
5448 * process.h: Declare Qtime and Qctime.
5449
df23bf08
JR
54502009-01-02 Jason Rumney <jasonr@gnu.org>
5451
9acef61c 5452 * image.c (Qgobject): New symbol.
df23bf08
JR
5453 (syms_of_image): Initialize it.
5454 (init_svg_functions): Load some functions from gobject library.
5455
5bbdf7aa
DN
54562009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
5457
5458 * frame.c (make_terminal_frame): Remove redundant code and useless
5459 block.
5460
63136da6
AS
54612009-01-01 Andreas Schwab <schwab@suse.de>
5462
5463 * process.c (conv_sockaddr_to_lisp): Add workaround for
5464 getsockname bug on BSD.
5465
9ef69046
CY
54662009-01-01 Chong Yidong <cyd@stupidchicken.com>
5467
d6fafbe0
CY
5468 * xfns.c (x_create_tip_frame): Set border width of the X window.
5469
51d861de 5470 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 5471
f9c34147
JR
54722009-01-01 Jason Rumney <jasonr@gnu.org>
5473
9acef61c 5474 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
5475 Don't block input, as per earlier xterm.c changes.
5476
f5497e45
AR
54772008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
5478
5479 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
5480 (ns_appkit_version_int): New function.
5481 (x-server-version): Use ns_appkit_version_int and follow 21+
5482 convention of returning 3 integers.
5483
c19cab20
KH
54842008-12-30 Kenichi Handa <handa@m17n.org>
5485
5486 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
5487 (CHAR_SURROGATE_PAIR_P): New macro.
5488
5489 * font.h (struct font_driver): New member get_variation_glyphs.
5490
9acef61c 5491 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
5492 (Ffont_variation_glyphs): New function.
5493 (syms_of_font): Defsubr it.
5494
5495 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
5496 ftfont_variation_glyphs.
5497 (setup_otf_gstring): New function.
5498 (ftfont_drive_otf): Use it.
5499 (ftfont_shape_by_flt): Handle variation selector.
5500 (ftfont_variation_glyphs): New function.
5501
28cd591f
MR
55022008-12-30 Martin Rudalics <rudalics@gmx.at>
5503
5504 * frame.c (Vemacs_iconified): Remove.
5505
7f714baf
JR
55062008-12-30 Jason Rumney <jasonr@gnu.org>
5507
5508 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 5509 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 5510
9d2d22ab
CY
55112008-12-30 Chong Yidong <cyd@stupidchicken.com>
5512
5513 * indent.c (Fvertical_motion): Don't advance iterator if we have
5514 reseated to the desired position.
5515
5516 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
5517 checking for pos match.
5518
545312c2
KH
55192008-12-30 Kenichi Handa <handa@m17n.org>
5520
1ede3eb6
KH
5521 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
5522 just get the low 8-bit of the code.
5523
545312c2
KH
5524 * font.c (font_intern_prop): Validate str as multibyte.
5525
bd7bbf29
DN
55262008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
5527
31e0750e
DN
5528 * dispextern.h (struct face): Move lface and hash from the middle
5529 of bitfields.
5530
bd7bbf29
DN
5531 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
5532
b5672e7c
DN
55332008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
5534
5535 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
5536 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
5537 instead of intervals.h.
5538
d704470f
AS
55392008-12-26 Andreas Schwab <schwab@suse.de>
5540
5541 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
5542 cons.
5543
54b33868
MR
55442008-12-26 Martin Rudalics <rudalics@gmx.at>
5545
5546 * textprop.c (Qminibuffer_prompt): New variable.
5547 (syms_of_textprop): Initialize it.
5548 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
5549 in minibuffer-prompt face. (Bug#1662)
5550
40b615d6
JR
55512008-12-25 Jason Rumney <jasonr@gnu.org>
5552
5553 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
5554
baae5c2d
JR
55552008-12-24 Jason Rumney <jasonr@gnu.org>
5556
5557 * ralloc.c (r_alloc_reset_variable): New function.
5558
5559 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 5560 record of what points where. (Bug#716)
baae5c2d 5561
a9051c88
DN
55622008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
5563
5564 * minibuf.c (read_minibuf): Follow the non-interactive case when
5565 running as a daemon, before detaching.
5566
8b146312
AS
55672008-12-22 Andreas Schwab <schwab@suse.de>
5568
5569 * buffer.c (init_buffer): Use realloc instead of xrealloc.
5570 * gtkutil.c (free_widget_value): Use xfree instead of free.
5571
56f2de10
MR
55722008-12-22 Martin Rudalics <rudalics@gmx.at>
5573
5574 * frame.c (delete_frame): New function derived from
5575 Fdelete_frame to handle Qnoelisp value for FORCE argument.
5576 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
5577 (Fdelete_frame): Call delete_frame. Remove line from doc-string
5578 saying that FORCE non-nil doesn't run `delete-frame-functions'.
5579 * frame.h: Extern delete_frame.
5580 * window.c (window_loop):
5581 * terminal.c (delete_terminal):
5582 * xterm.c (x_connection_closed):
5583 * xfns.c (Fx_hide_tip):
9acef61c 5584 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 5585
1fc200d6
JR
55862008-12-21 Jason Rumney <jasonr@gnu.org>
5587
5588 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
5589 when character maps to .notdef character.
5590
5e252df2
SM
55912008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
5592
5593 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
5594
99b72cc4
JR
55952008-12-20 Jason Rumney <jasonr@gnu.org>
5596
5597 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 5598 a graphical frame on Windows. (Bug#1325)
99b72cc4 5599
acc49a52
JD
56002008-12-20 Jan Djärv <jan.h.d@swipnet.se>
5601
5602 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
5603
6ea15123
CY
56042008-12-20 Chong Yidong <cyd@stupidchicken.com>
5605
5606 * minibuf.c (Fread_buffer): Doc fix.
5607
b2dab6c8
JR
56082008-12-20 Jason Rumney <jasonr@gnu.org>
5609
54ea0c87 5610 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 5611 server name in UNC paths. (Bug#719)
54ea0c87 5612
b2dab6c8 5613 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 5614 charbuf. (Bug#1035)
b2dab6c8 5615
6d1921be
DN
56162008-12-19 Daniel Engeler <engeler@gmail.com>
5617
5618 * sysdep.c (serial_configure): Fix typo.
5619
53934c98
DN
56202008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
5621
5622 * sysdep.c: Include alloca.h.
f4f634e8
DN
5623 (system_process_attributes): Add implementation for Solaris.
5624
5625 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 5626
06e111a6
DN
56272008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
5628
5629 Reorganize implementation of Flist_system_processes and
5630 Fsystem_process_attributes. No functional changes.
5631 * process.c: Don't #include pwd.h, grp.h and limits.h.
5632 (Flist_system_processes): Just call list_system_processes.
5633 (Fsystem_process_attributes): Just call system_process_attributes.
5634 (procfs_list_system_processes, time_from_jiffies)
5635 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
5636 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
5637
5638 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
5639 (list_system_processes): Rename from
5640 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
5641 Provide a do nothing implementation.
5642 (system_process_attributes): Rename from
5643 procfs_list_system_processes.
5644 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 5645 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
5646
5647 * w32.c (list_system_processes): Rename from
5648 w32_list_system_processes.
5649 (system_process_attributes): Rename from
5650 w32_system_process_attributes.
5651
5652 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
5653
5654 * process.h (w32_list_system_processes)
5655 (w32_system_process_attributes): Remove.
362654a6
JB
5656 (list_system_processes, system_process_attributes):
5657 New prototypes.
06e111a6 5658
6a705b23
KH
56592008-12-19 Kenichi Handa <handa@m17n.org>
5660
5661 * xfont.c (xfont_decode_coding_xlfd): New function.
5662 (xfont_encode_coding_xlfd): New function.
5663 (xfont_list_pattern): Decode XLFD by iso-8859-1.
5664 (xfont_list): Decode and encode XLFD by iso-8859-1.
5665 (xfont_match): Likewise.
5666 (xfont_list_family): Likewise.
5667 (xfont_open): Likewise.
5668
d66c0241 5669 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
5670 names are utf-8.
5671
d66c0241 5672 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
5673 names are utf-8.
5674
5a130941
JD
56752008-12-18 Jan Djärv <jan.h.d@swipnet.se>
5676
5677 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
5678 changed.
bfd20325
JD
5679 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
5680 clicked on a detached tool bar button.
5a130941 5681
fd95644b
DN
56822008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
5683
5684 * emacs.c (main): Print and error and exit when no data is read
5685 from the pipe.
5686
e6eee6ae
JR
56872008-12-17 Jason Rumney <jasonr@gnu.org>
5688
5689 * w32font.c (w32font_has_char): Always return -1.
5690
a35dd56b
KH
56912008-12-16 Kenichi Handa <handa@m17n.org>
5692
5693 * font.c (font_open_entity): Fix previous change.
5694
0e3635c2
DN
56952008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
5696
5697 * process.c: Include <limits.h>.
5698
d4835507 56992008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
5700
5701 * font.c (font_update_drivers): Fix mistake in reconstructing the
5702 driver list.
5703
57042008-12-16 Chong Yidong <cyd@stupidchicken.com>
5705
5706 * font.c (font_clear_cache): Fix format of font cache data.
5707
e2cbc401
CY
57082008-12-15 Chong Yidong <cyd@stupidchicken.com>
5709
5710 * xftfont.c (xftfont_open): Free Xft font pattern if
5711 XftFontOpenPattern fails.
5712
5713 * xterm.c (x_free_frame_resources): Remove extraneous call to
5714 free_frame_faces.
5715
b131d535
CY
57162008-12-13 Chong Yidong <cyd@stupidchicken.com>
5717
5718 * xterm.c (x_delete_display): Move xim_close_dpy call to
5719 x_delete_terminal.
5720 (x_delete_terminal): Call xim_close_dpy.
5721
e6df5336
JR
57222008-12-13 Jason Rumney <jasonr@gnu.org>
5723
5724 * w32font.c (intern_font_name): New function.
5725 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
5726 (w32font_open_internal, Fx_select_font): Decode font name.
5727 (fill_in_logfont, list_all_matching_fonts): Encode font name.
5728
5729 * w32font.h (intern_font_name): Declare new function.
5730
5731 * w32uniscribe.c (add_opentype_font_name_to_list):
5732 Use intern_font_name.
5733
20d68145
CY
57342008-12-13 Chong Yidong <cyd@stupidchicken.com>
5735
9f2554de
CY
5736 * frame.c (Fdelete_frame): Call free_font_driver_list.
5737
3d9bec9a
CY
5738 * font.c (free_font_driver_list): Implement missing function.
5739
20d68145
CY
5740 * w32term.c (w32_term_init): Don't initialize the image cache
5741 here; it will be done in init_frame_faces.
5742
5743 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
5744 (struct x_display_info): Remove unused member null_pixel. New
5745 member xim_callback_data.
5746
5747 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
5748 (xim_initialize): Save pointer to callback function data.
5749 (xim_close_dpy): Free callback function data. Call XCloseIM,
5750 reverting 2008-11-04 change by David Smith.
5751 (x_term_init): Don't initialize the image cache here; it will be
5752 done in init_frame_faces. Remove ancient "null_pixel" cruft.
5753 (x_delete_display): Free x_dnd_atoms member.
5754
96f9306b
KH
57552008-12-13 Kenichi Handa <handa@m17n.org>
5756
6dec9044
JB
5757 * font.c (font_rescale_ratio): Moved from xfaces.c.
5758 Argument type changed. Handle a font-spec too.
96f9306b 5759 (font_score): Check Vface_font_rescale_alist.
6dec9044 5760 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
5761
5762 * xfaces.c (font_rescale_ratio): Moved to font.c.
5763
8d5b4964
CY
57642008-12-13 Chong Yidong <cyd@stupidchicken.com>
5765
5766 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
5767
e6df5336
JR
57682008-12-12 Jason Rumney <jasonr@gnu.org>
5769
5770 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
5771 Vwindow_system_version to the real w32 major version.
5772
97c6058a
DN
57732008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
5774
5775 * term.c (init_tty): Move setting the terminal name before the
5776 potential user: maybe_fatal.
5777
ec4e88d7
CY
57782008-12-11 Chong Yidong <cyd@stupidchicken.com>
5779
d4835507
JB
5780 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
5781 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 5782
b4233ec9
JR
57832008-12-11 Jason Rumney <jasonr@gnu.org>
5784
8ec71e23 5785 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 5786 SYMBOL_CHARSET. (Bug#547)
8ec71e23 5787
b4233ec9 5788 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 5789 size for surrogates. (Bug#1096, bug#872)
b4233ec9 5790
011a0143
JB
57912008-12-11 Juanma Barranquero <lekktu@gmail.com>
5792
5793 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
5794
3c309f34
JB
57952008-12-11 Juanma Barranquero <lekktu@gmail.com>
5796
5797 * process.c (Fsystem_process_attributes, syms_of_process):
5798 Fix typo in name of Ssystem_process_attributes.
5799 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
5800
fedc6ab5
JB
58012008-12-11 Juanma Barranquero <lekktu@gmail.com>
5802
5803 * syntax.c (Fmodify_syntax_entry): Doc fix.
5804
ba3de0e8
JB
58052008-12-10 Juanma Barranquero <lekktu@gmail.com>
5806
5807 * font.c (Ffont_spec): Move usage to end of docstring.
5808
174f1c74
JR
58092008-12-10 Jason Rumney <jasonr@gnu.org>
5810
5811 * w32font.c (Qcham): New symbol.
5812 (font_supported_scripts): Add cham, and comments for other new
5813 scripts in bitfield from OpenType spec.
9d32f818
JR
5814 (add_font_entity_to_list): Limit unicode-sip fonts to those that
5815 contain characters beyond the bmp.
174f1c74 5816
7b649478
KH
58172008-12-10 Kenichi Handa <handa@m17n.org>
5818
5819 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 5820 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
5821 Qunicode_sip.
5822
2133e2d1
JB
58232008-12-10 Juanma Barranquero <lekktu@gmail.com>
5824
5825 * coding.c (QCdefault_char): Rename from QCdefalut_char.
5826 (Fcoding_system_put): Use QCdefault_char.
5827 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
5828
9af886ee
CY
58292008-12-09 Chong Yidong <cyd@stupidchicken.com>
5830
74d819eb
CY
5831 * xftfont.c (syms_of_xftfont): Fix typo.
5832
4ccfa1c0 5833 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 5834
7c19d3ae
DN
58352008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
5836
5837 * emacs.c (main): Close daemon_pipe on exec.
5838
567826bb
CY
58392008-12-08 Chong Yidong <cyd@stupidchicken.com>
5840
5841 * termchar.h (struct tty): New members termcap_term_buffer and
5842 termcap_strings_buffer.
5843
5844 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 5845 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
5846 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
5847 All callers changed.
5848 (init_tty): Store termcap data and string buffers in new struct
5849 tty members termcap_term_buffer and termcap_strings_buffer.
5850 (delete_tty): Free them.
4ccfa1c0 5851 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 5852
aa96c42b
SZ
58532008-12-07 Seiji Zenitani <zenitani@mac.com>
5854
5855 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 5856 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 5857
b7e1d896
CY
58582008-12-06 Chong Yidong <cyd@stupidchicken.com>
5859
5860 * coding.c (make_conversion_work_buffer): Disable buffer
5861 modification hooks in the work buffer.
5862
b5ec91a5
EZ
58632008-12-05 Eli Zaretskii <eliz@gnu.org>
5864
5865 * process.c (procfs_system_process_attributes): If `nread' has a
5866 negative value, assign zero to it.
5867
a5d2a52b
CY
58682008-12-05 Chong Yidong <cyd@stupidchicken.com>
5869
68c5540b 5870 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 5871
7bf1bb21
KH
58722008-12-05 Kenichi Handa <handa@m17n.org>
5873
5874 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
5875 second character is a combining character.
5876
2fdc7d00
EZ
58772008-12-05 Eli Zaretskii <eliz@gnu.org>
5878
5879 * process.c (procfs_system_process_attributes): Don't use cmd,
5880 cmdsize, and q without initializing them first.
5881
bf6bfba8
JR
58822008-12-04 Jason Rumney <jasonr@gnu.org>
5883
5884 * w32font.c (w32font_draw): Initialize orig_clip before getting
5885 it, and delete it when finished.
5886
a3b1a468
DN
58872008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
5888
5889 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
5890 case when running as a daemon before detaching.
5891
8b8be8eb
JB
58922008-12-03 Juanma Barranquero <lekktu@gmail.com>
5893
805f2638 5894 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 5895
b1bde622
KH
58962008-12-03 Kenichi Handa <handa@m17n.org>
5897
e500c47d
KH
5898 * font.c (font_at): Set `multibyte' at first.
5899
ca516334
KH
5900 * coding.c (decode_coding_charset): Check type of an element of
5901 vector VALIDS.
7bf1bb21 5902 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 5903
4ccfa1c0 5904 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
5905 (font_for_char): Likewise.
5906
1e5ecd37
CY
59072008-12-03 Chong Yidong <cyd@stupidchicken.com>
5908
d5b01609 5909 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
5910 (font_update_lface): Handle fonts with corrupted size specs,
5911 i.e. non-int and non-float.
d5b01609 5912
11e3a6e4 5913 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 5914 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 5915 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 5916
ab06788b
CY
5917 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
5918
1e5ecd37 5919 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 5920 underline_minimum_offset for underline position.
1e5ecd37 5921
63c125ab
DN
59222008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
5923
5924 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
5925
5926 * character.c (c_string_width): Specify the type for LEN.
5927
3a8406e1
KH
59282008-12-03 Kenichi Handa <handa@m17n.org>
5929
4ccfa1c0 5930 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 5931 (decode_coding_utf_8): Likewise.
4ccfa1c0 5932 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 5933 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 5934
651df7d9
CY
59352008-12-02 Chong Yidong <cyd@stupidchicken.com>
5936
5937 * keyboard.c (make_lispy_position): Only use PT if the selected
5938 window is current.
5939
1f625c6c
AS
59402008-12-02 Andreas Schwab <schwab@suse.de>
5941
f7741ce9
AS
5942 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
5943
1f625c6c
AS
5944 * doprnt.c (doprnt1): Fix size of charbuf.
5945
92bc2678
CY
59462008-12-02 Chong Yidong <cyd@stupidchicken.com>
5947
5948 * keyboard.c (timer_check): Revert last change.
5949
93b9e8cc
JB
59502008-12-02 Juanma Barranquero <lekktu@gmail.com>
5951
5952 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
5953
fd7a37d5
JB
59542008-12-01 Juanma Barranquero <lekktu@gmail.com>
5955
5956 * makefile.w32-in: Update dependencies.
5957 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
5958
c115043b
AS
59592008-12-01 Andreas Schwab <schwab@suse.de>
5960
5961 * font.c (register_font_driver): Use xmalloc.
5962 (font_put_frame_data): Likewise.
5963
f5668d2a
CY
59642008-12-01 Chong Yidong <cyd@stupidchicken.com>
5965
860d96be
CY
5966 * xfaces.c (realize_x_face): Make abort condition clearer.
5967
f5668d2a
CY
5968 * gtkutil.c (update_frame_tool_bar): Initialize variable.
5969
379c17e7
CY
59702008-11-30 Chong Yidong <cyd@stupidchicken.com>
5971
5972 * keyboard.c (timer_check): After a timer runs, ensure that the
5973 selected window's buffer is current.
5974
35f36d65
JB
59752008-11-30 Juanma Barranquero <lekktu@gmail.com>
5976
f952c61c
JB
5977 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
5978 It was accidentally restored by the Unicode merge.
5979
35f36d65
JB
5980 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
5981
b23077df
JB
59822008-11-29 Juanma Barranquero <lekktu@gmail.com>
5983
5984 * w32proc.c: Include "coding.h".
5985 (Fw32_short_file_name): Encode filename passed to Windows API.
5986 (Fw32_long_file_name): Encode filename passed to Windows API and
5987 decode back the result. (Bug#1433)
5988
b8ebe9dd
KH
59892008-11-29 Kenichi Handa <handa@m17n.org>
5990
8cc53f96
KH
5991 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
5992 not before accessing it.
5993
b8ebe9dd
KH
5994 * charset.c (Fdefine_charset_internal): After calculating
5995 min_char, max_char, and fastmap, copy the charset structure again.
5996 (encode_char): Fix the previous change.
5997
59bc82c0
SZ
59982008-11-28 Seiji Zenitani <zenitani@mac.com>
5999
6000 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
6001
6002 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
6003
6004 * nsterm.m (x_set_frame_alpha): New function.
6005
32247e3d
EZ
60062008-11-27 Eli Zaretskii <eliz@gnu.org>
6007
6008 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
6009
b003e5ff
JB
60102008-11-27 Juanma Barranquero <lekktu@gmail.com>
6011
6012 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
6013 pointer to check_face_name.
6014
708550f5
KH
60152008-11-27 Kenichi Handa <handa@m17n.org>
6016
6017 * category.h (SET_CATEGORY_SET): Call set_category_set.
6018 (set_category_set): Extern it.
6019
6020 * category.c (hash_get_category_set): New function.
6021 (Fmodify_category_entry): Adjusted for the change of
6022 char_table_ref_and_range. Call hash_get_category_set to get a
6023 category set to store in the table.
6024
6025 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
6026 Funify_charset.
6027
2ae37cf0 6028 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
6029 (DECODE_CHAR): Check if the decoder vector is ready.
6030 (ENCODE_CHAR): Check if the encoder char-table is ready.
6031 (maybe_unify_char): Extern it.
6032
6033 * charset.c (Vchar_unified_charset_table): Delete it.
6034 (inhibit_load_charset_map): New variable.
6035 (temp_charset_work): New variable.
6036 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
6037 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
6038 New macros.
6039 (load_charset_map): Meaning of control_flag changed. If
6040 inhibit_load_charset_map is nonzero, setup a table in
6041 temp_charset_work.
6042 (load_charset): New argument control_flag.
6043 (map_charset_for_dump): New function.
6044 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
6045 map_charset_for_dump.
6046 (Fdefine_charset_internal): If the charset method is MAP, load
6047 mapping tables by calling load_charset.
6048 (Funify_charset): Don't load a mapping table but directly set
6049 Vchar_unify_table.
6050 (maybe_unify_char): New function.
6051 (decode_char): Don't handle the deleted method MAP_DEFERRED.
6052 Handle the case of inhibit_load_charset_map being nonzero.
6053 (encode_char): Don't handle the deleted method MAP_DEFERRED.
6054 Handle the case of inhibit_load_charset_map being nonzero.
6055 (Fclear_charset_maps): Just free temp_charset_work.
6056 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
6057 variable.
6058
6059 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
6060 change of char_table_ref_and_range.
6061 (char_table_ref_and_range): Change the meaning of argument FROM
6062 and TO. Now the caller must provide initial values for *FROM
6063 and *TO.
6064
6065 * fontset.c (fontset_add): Adjusted for the change of
6066 char_table_ref_and_range.
6067 (fontset_get_font_group): Likewise.
6068 (Ffontset_info): Likewise.
6069
6070 * keymap.c (describe_vector): Adjusted for the change of
6071 char_table_ref_and_range. For char-table, put boundary between
6072 non-ASCII and 8-bit characters.
6073
6074 * print.c (print_object): For bool-vector, delete unnecessary
6075 check of ASCII_BYTE_P.
6076
9196133b
JR
60772008-11-26 Jason Rumney <jasonr@gnu.org>
6078
6079 * w32font.c (w32font_open_internal): Don't include external
9acef61c 6080 leading in font height. (Bug#879)
9196133b 6081
9f688acf
GM
60822008-11-26 Glenn Morris <rgm@gnu.org>
6083
6084 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
6085 redefinition with ifdef. (Bug#1383)
6086
90d19aff
AR
60872008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6088
6089 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
6090
4ccfa1c0 60912008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
6092
6093 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
6094 New EmacsView methods.
6095 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
6096 Fixes bug #1048,1357,1414.
6097
60982008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6099
6100 Fix bug #1362.
6101 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
6102 is not an indexed color.
6103 * nsterm.m (free_indexed_color): Add argument checking.
6104 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
6105
e7d5ecb3
CY
61062008-11-24 Chong Yidong <cyd@stupidchicken.com>
6107
6108 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
6109 Document confirm-after-completion value for
6110 minibuffer-completion-confirm.
6111
c285743c
JR
61122008-11-24 Jason Rumney <jasonr@gnu.org>
6113
6114 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
6115 warning.
6116
b0857706
JR
61172008-11-23 Jason Rumney <jasonr@gnu.org>
6118
6119 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
6120 restored before returning.
6121
6122 * w32font.c (check_face_name): New function.
6123 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 6124 fonts. (Bug#642)
b0857706 6125
ee50ff07
MR
61262008-11-22 Martin Rudalics <rudalics@gmx.at>
6127
6128 * buffer.c (Fswitch_to_buffer): Reword and mention new option
6129 confirm-nonexistent-file-or-buffer in doc-string.
6130
b8ff72fa
SM
61312008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
6132
6133 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
6134 Fix copy/paste typo. Add checks.
6135
cee53ed4
KH
61362008-11-21 Kenichi Handa <handa@m17n.org>
6137
6138 * coding.c (detect_coding_iso_2022): Reject invalid composition
6139 sequence.
6140 (DECODE_COMPOSITION_START): If the current source is the last
6141 block, and the current composition doesn't end, regard this
6142 sequence as invalid.
6143 (decode_coding_iso_2022): Handle invalid composition sequence.
6144
f6ef1e65
MR
61452008-11-20 Martin Rudalics <rudalics@gmx.at>
6146
6147 * window.c (coordinates_in_window): Don't return
6148 ON_VERTICAL_BORDER for the rightmost position of a mode/header
6149 line when the window is not the rightmost one. (Bug#1372)
6150
e08b1705
MR
61512008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
6152
6153 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
6154
ad98e89f
EZ
61552008-11-15 Eli Zaretskii <eliz@gnu.org>
6156
6157 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
6158 and bright_bg if noninteractive is non-zero.
6159
fb098a4b
CY
61602008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6161
6162 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
6163 x_draw_glyph_string_background.
6164
6165 * w32term.c (x_draw_glyph_string): Likewise.
6166
ce952b6e
CY
61672008-11-15 Chong Yidong <cyd@stupidchicken.com>
6168
6169 * xterm.c (x_draw_glyph_string): Stop drawing the background of
6170 the next glyph string once past the overhang width.
6171
6172 * nsterm.m (ns_draw_glyph_string): Likewise.
6173
6174 * w32term.c (x_draw_glyph_string): Likewise.
6175
26ea7079
CY
61762008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
6177
6178 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
6179 double file close.
6180
1c33c906
MR
61812008-11-14 Martin Rudalics <rudalics@gmx.at>
6182
6183 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
6184 dedicated status of window before attempting to display another
6185 buffer in it.
6186
8fc29035
JB
61872008-11-14 Juanma Barranquero <lekktu@gmail.com>
6188
6189 * msdos.c (Fmsdos_long_file_names):
6190 (syms_of_msdos) <dos-unsupported-char-glyph>:
6191 * dosfns.c (Fint86): Fix typos in docstrings.
6192
55fb4286
EZ
61932008-11-14 Eli Zaretskii <eliz@gnu.org>
6194
6195 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
6196
3fda0315
KY
61972008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
6198
6199 * puresize.h (BASE_PURESIZE): Increase to 1260000.
6200
7e849c17
CY
62012008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
6202
6203 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
6204
6205 * frame.h: Negative alpha means "don't touch".
6206
6207 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
6208
6209 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
6210
b9fd67bd
DN
62112008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
6212
6213 * hftctl.c:
6214 * chpdef.h:
6215 * acldef.h: Remove files used only for systems no longer supported.
6216
6217 * Makefile.in: Fix .o alphabetical ordering.
6218 (hftctl.o): Remove dependency, file removed.
6219 (keymap.o, print.o): Depend on charset.h.
6220
d5998e03
KH
62212008-11-10 Kenichi Handa <handa@m17n.org>
6222
2ae37cf0 6223 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 6224
be70e183
CY
62252008-11-08 Chong Yidong <cyd@stupidchicken.com>
6226
6227 * dired.c (file_name_completion): If completion_ignore_case is
6228 enabled, ignore case when checking completion-regexp-list.
6229
7cf94eac
EZ
62302008-11-08 Eli Zaretskii <eliz@gnu.org>
6231
6232 * vm-limit.c (get_lim_data): Fix last change.
6233
ee107a89
KH
62342008-11-08 Kenichi Handa <handa@m17n.org>
6235
6236 * character.c (Fget_byte): New function.
6237 (syms_of_character): Defsubr Fget_byte.
6238
5fd15622
CY
62392008-11-07 Chong Yidong <cyd@stupidchicken.com>
6240
6241 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
6242 cursor position is valid after scrolling.
6243
13d62fad
JB
62442008-11-06 Juanma Barranquero <lekktu@gmail.com>
6245
6246 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
6247
a1dd2936
GM
62482008-11-06 Glenn Morris <rgm@gnu.org>
6249
6250 * xterm.c (handle_one_xevent): Don't let popup menus cause
6251 mouse-autoselect-window related window switching. (Bug#1261)
6252
860cd236
CY
62532008-11-04 David Smith <davidsmith@acm.org> (tiny change)
6254
6255 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
6256
653a3150
AS
62572008-11-04 Andreas Schwab <schwab@suse.de>
6258
6259 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
6260
870f5cac
CY
62612008-11-03 Chong Yidong <cyd@stupidchicken.com>
6262
6263 * xfns.c (Fx_wm_set_size_hint): New function.
6264
1e02f3cb
MR
62652008-11-03 Martin Rudalics <rudalics@gmx.at>
6266
6267 * textprop.c (Fprevious_single_char_property_change): Return 0
6268 when there's no change in a string. (Bug#1301)
6269
e630dfc6
MR
62702008-11-02 Martin Rudalics <rudalics@gmx.at>
6271
6272 * frame.c (do_switch_frame): New argument NORECORD passed to
6273 Fselect_window.
6274 (Fselect_frame): New argument NORECORD passed to
6275 do_switch_frame.
6276 (Fset_frame_selected_window): New argument NORECORD passed to
6277 Fselect_frame.
6278 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
6279 in call of do_switch_frame.
6280 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
6281 Handle NORECORD argument in call of Fselect_frame.
6282 * lisp.h (do_switch_frame, Fselect_frame)
6283 (Fset_frame_selected_window): Adjust declarations.
6284 * window.c (select_frame_norecord): New function.
6285 (run_window_configuration_change_hook): Use it and call
6286 Fselect_frame with NORECORD set.
6287 (Fselect_window): Pass NORECORD to Fselect_frame.
6288 (Fset_window_configuration): Handle NORECORD argument in call of
6289 do_switch_frame.
6290 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
6291 Fset_frame_selected_window.
6292 * keyboard.c (command_loop_1): Handle NORECORD in call of
6293 Fselect_frame (currently ifdefd).
6294
9020b223
GM
62952008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
6296
6297 * emacs.c (USAGE2): Untabify.
6298
793ffee8
SM
62992008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
6300
6301 * composite.c (fill_gstring_header): Fix copy/paste typo.
6302
ab6d1131
MR
63032008-10-31 Martin Rudalics <rudalics@gmx.at>
6304
6305 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
6306 (Fother_window): Rename argument and rewrite doc-string.
6307 (select_window_norecord): Fix return value. (Bug#1276)
6308
601a9cf1
JB
63092008-10-30 Juanma Barranquero <lekktu@gmail.com>
6310
6311 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
6312 new frames overriding foreground for tooltips. Based on similar patch
6313 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
6314
813b0652
CY
63152008-10-29 Chong Yidong <cyd@stupidchicken.com>
6316
6317 * emacs.c (Fdaemon_initialized): Initialize nfd.
6318
4414f58f
MR
63192008-10-29 Martin Rudalics <rudalics@gmx.at>
6320
6321 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
6322 (Fwindow_text_height): Clarify doc-strings.
6323 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
6324 doc-string of window-scroll-functions.
6325
ecdcaa09
RS
63262008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
6327
6328 * category.c (syms_of_category): Fix typo in docstring.
6329
23fe745a
JB
63302008-10-28 Juanma Barranquero <lekktu@gmail.com>
6331
6332 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
6333 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
6334 Fix typos in docstrings.
6335
ff808935
DN
63362008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
6337
6338 * emacs.c (daemon_pipe): Make non-static.
6339 (IS_DAEMON): Move definition ...
6340 * lisp.h (IS_DAEMON): ... here.
6341 (daemon_pipe): Declare.
6342 (is_daemon): Remove.
6343 * dispnew.c (init_display): Use IS_DAEMON.
6344
fc012771
SM
63452008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6346
6347 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
6348 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
6349
6350 * emacs.c (is_daemon): Remove.
6351 (main): Don't set is_daemon.
6352 (IS_DAEMON): New macro.
6353 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 6354 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
6355 parent exits.
6356 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
6357
d8bdbe6f
CY
63582008-10-27 Chong Yidong <cyd@stupidchicken.com>
6359
d1a072bf
CY
6360 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
6361 over-sized glyph, draw it with the default glyph width.
6362
e2e325aa
CY
6363 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
6364 glyph, draw it with the default glyph width.
6365
6366 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
6367 glyph, draw it with the default glyph width.
6368
d8bdbe6f
CY
6369 * xdisp.c (try_scrolling): When computing the distance from the
6370 scroll margin to PT, try moving some distance past the window
6371 bottom before giving up.
6372
7bfac547
MR
63732008-10-27 Martin Rudalics <rudalics@gmx.at>
6374
6375 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
6376 (Fset_window_buffer): Explain in doc-string that a window can be
6377 "strongly" dedicated to its buffer.
6378
4ff029f6
DN
63792008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
6380
6381 * emacs.c (daemon_name): New variable.
6382 (main): Deal with --daemon=SERVER_NAME.
6383 (Fdaemonp): Return a name if one was passed to --daemon.
6384
5790ef40
DN
63852008-10-26 Romain Francoise <romain@orebokech.com>
6386
f9bd0df9 6387 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
6388 (main): Create a pipe before forking, make the parent exit only after
6389 the child has closed its end of the pipe. Move closing the
6390 descriptors ...
6391 (Fdaemon_initialized): ... here. New function.
6392
f5385255
SM
63932008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
6394
4d632321
SM
6395 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
6396 the previous unoptimized table.
6397
f5385255
SM
6398 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
6399 the distinction between non-nil and non-t value of `dedicated'.
6400
6c56a0f3
CY
64012008-10-25 Chong Yidong <cyd@stupidchicken.com>
6402
6403 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 6404 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 6405
fec89261
MR
64062008-10-25 Martin Rudalics <rudalics@gmx.at>
6407
6408 * window.c (Fget_buffer_window, Fdelete_windows_on)
6409 (Freplace_buffer_in_windows): Make buffer argument optional and
6410 rename to buffer_or_name.
6411
34fcddd0
CY
64122008-10-24 Chong Yidong <cyd@stupidchicken.com>
6413
f5385255
SM
6414 * xdisp.c (handle_single_display_spec, handle_display_prop):
6415 Undo 2005-05-16 change.
34fcddd0
CY
6416 (handle_stop): Pop iterator if it's loaded with an empty string.
6417 (get_overlay_strings_1): Don't save iterator if it's loaded with
6418 an empty string (bug#1201).
6419
064766f2
KH
64202008-10-24 Kenichi Handa <handa@m17n.org>
6421
6422 * ftfont.c (ftfont_otf_features): Fix previous change.
6423 (ftfont_otf_capability): Check FeatureList.FeatureCount before
6424 calling ftfont_otf_features.
6425
f9bd0df9 64262008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
6427
6428 * font.c (font_match_p): Fix for the case that a vector of
6429 characters is in script-representative-chars.
6430
1dae9197
MA
64312008-10-24 Michael Albinus <michael.albinus@gmx.de>
6432
6433 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 6434 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
6435 (xd_read_queued_messages): Catch Qdbus_error from the macros.
6436 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 6437 macro. (Bug#1186)
1dae9197 6438
f9bd0df9 64392008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
6440
6441 * s/sol2-10.h: New file.
6442
878a4584
JB
64432008-10-23 Juanma Barranquero <lekktu@gmail.com>
6444
6445 * xdisp.c (fill_glyph_string): Fix typo in source (though the
6446 poor beast has survived 9+ years and the jump from xterm.c!).
6447
cd265ca6
MR
64482008-10-23 Martin Rudalics <rudalics@gmx.at>
6449
6450 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
6451 Reword doc-string.
f5385255 6452 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 6453
472a4dc9
JB
64542008-10-23 Juanma Barranquero <lekktu@gmail.com>
6455
6456 * character.c (syms_of_character) <script-representative-chars>:
6457 <unicode-category-table>: Doc fixes.
6458
159bd5a2
NF
64592008-10-23 Noah Friedman <friedman@splode.com>
6460
6461 * coding.c (make_conversion_work_buffer): Check that
6462 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
6463 Fget_buffer_create.
6464
49f9c344
KH
64652008-10-23 Kenichi Handa <handa@m17n.org>
6466
6467 * font.c (font_add_log): Check the values of extra properties.
6468
12bb3111
MR
64692008-10-22 Martin Rudalics <rudalics@gmx.at>
6470
6471 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
6472 Reword doc-string.
6473 (Fset_window_parameter): Use NILP.
6474 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 6475 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 6476
bbeb4e99
JB
64772008-10-22 Juanma Barranquero <lekktu@gmail.com>
6478
6479 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
6480
64812008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
6482
6483 * nsfns.m (ns_appkit_version): New function.
6484 (x-server-version): Use it.
6485 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
6486 (x-server-vendor): Don't check_ns().
6487
6488 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
6489
a9b555d3
JB
64902008-10-22 Juanma Barranquero <lekktu@gmail.com>
6491
6492 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
6493 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
6494
4626499f
KH
64952008-10-22 Kenichi Handa <handa@m17n.org>
6496
e3681952
KH
6497 * syntax.c (scan_words): Call word_boundary_p instead of comparing
6498 scripts.
6499
4626499f
KH
6500 * category.c (word_boundary_p): Check scripts instead of charset.
6501 Handle nil value in word-separating-categories and
6502 word-combining-categories.
6503 (syms_of_category): Fix docstrings of word-separating-categories
6504 and word-combining-categories.
6505
1560f91a
EZ
65062008-10-21 Eli Zaretskii <eliz@gnu.org>
6507
6508 * coding.c (Fencode_coding_region, Fdecode_coding_region)
6509 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
6510
f4668441
MR
65112008-10-21 Martin Rudalics <rudalics@gmx.at>
6512
6513 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
6514 Rename arg "buffer" to "buffer_or_name".
6515 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
6516 it optional.
6517 (no_switch_window): Remove since the return value is not used.
a9b555d3 6518 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
6519 Consider window as dedicated when Fwindow_dedicated_p returns a
6520 non-nil value.
6521 * lisp.h: Remove prototype for no_switch_window.
6522
fd75ddb2
JD
65232008-10-21 Jan Djärv <jan.h.d@swipnet.se>
6524
6525 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 6526 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 6527
07295713
KH
65282008-10-21 Kenichi Handa <handa@m17n.org>
6529
6530 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
6531 check Vlatin_extra_code_table.
6532
712adc82
EZ
65332008-10-20 Eli Zaretskii <eliz@gnu.org>
6534
6535 * fileio.c (Fset_file_modes): Doc fix.
6536
f549eb0b
MA
65372008-10-19 Michael Albinus <michael.albinus@gmx.de>
6538
6539 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
6540 in arrays.
6541
aac0c6e3
MR
65422008-10-19 Martin Rudalics <rudalics@gmx.at>
6543
6544 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
6545 Mention kill-buffer in doc-string.
6546 (Fset_window_buffer): Reinsert tem check removed in last commit.
6547 (Fenlarge_window, Fshrink_window): Have argument names and
6548 doc-string follow Elisp manual more closely.
6549
65502008-10-18 Eli Zaretskii <eliz@gnu.org>
6551
6552 * fileio.c (Fset_file_modes): Doc fix.
6553
65542008-10-18 Martin Rudalics <rudalics@gmx.at>
6555
6556 * window.c (Fwindow_width, Fset_window_start)
6557 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
6558 (Fdelete_windows_on, Freplace_buffer_in_windows):
6559 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
6560 (Fwindow_dedicated_p): Make window argument optional.
6561 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
6562 (Fset_window_buffer): Respect any non-nil dedicated value for
6563 window. Rename "buffer" argument to "buffer_or_name".
6564
65652008-10-18 Ulrich Mueller <ulm@gentoo.org>
6566
6567 * m/sh3.h: New file, machine description for SuperH.
6568
65692008-10-17 Martin Rudalics <rudalics@gmx.at>
6570
6571 * window.c (Fsplit_window): Rename arg horflag to horizontal.
6572
65732008-10-17 Kenichi Handa <handa@m17n.org>
6574
6575 * ftfont.c (ftfont_otf_features): Fix indexing
6576 gsub_gpos->FeatureList.Feature. Check the validity of indices.
6577
65782008-10-16 Magnus Henoch <mange@freemail.hu>
6579
6580 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
6581 (Fdbus_call_method_asynchronously): Ditto.
6582 This change makes C-h f display the argument list.
6583
65842008-10-16 Chong Yidong <cyd@stupidchicken.com>
6585
6586 * fileio.c (Fexpand_file_name): Doc fix.
6587
6588 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
6589 of :foreground and :background equivalent to unspecified (20.x
6590 compatibility).
6591
65922008-10-15 Eli Zaretskii <eliz@gnu.org>
6593
6594 * buffer.c (syms_of_buffer): Doc fix.
6595
65962008-10-14 Kenichi Handa <handa@m17n.org>
6597
6598 * font.c (font_clear_prop): When clearing font width, clear the
6599 average width field too.
6600
66012008-10-12 Andreas Schwab <schwab@suse.de>
6602
6603 * ftfont.c (ftfont_shape_by_flt): Make static.
6604 * ftfont.h (ftfont_shape_by_flt): Don't declare.
6605
6606 * font.c: Don't include <m17n-flt.h>.
6607
66082008-10-10 Eli Zaretskii <eliz@gnu.org>
6609
6610 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
6611
66122008-10-09 Eli Zaretskii <eliz@gnu.org>
6613
6614 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
6615 away code.
6616
66172008-10-09 Chong Yidong <cyd@stupidchicken.com>
6618
6619 * dispnew.c (update_text_area): Avoid looping due to large glyph
6620 overhangs (bug#1070).
6621
66222008-10-09 Kenichi Handa <handa@m17n.org>
6623
6624 * fontset.c (face_for_char): If face->fontset is negative, just
6625 return ascii_face.
6626
f5385255
SM
6627 * font.c (font_delete_unmatched): Fix previous change.
6628 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
6629
66302008-10-09 Martin Rudalics <rudalics@gmx.at>
6631
6632 * frame.c (Fraise_frame): On text-only terminals select frame in
6633 order to make it visible. (Bug#1061)
6634
66352008-10-08 Chong Yidong <cyd@stupidchicken.com>
6636
6637 * fontset.c (fontset_find_font): Check frame validity.
6638
66392008-10-07 Chong Yidong <cyd@stupidchicken.com>
6640
a9b555d3 6641 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
6642 (xg_display_close): Allow Emacs to close all displays (bug#985).
6643
66442008-10-06 Andreas Schwab <schwab@suse.de>
6645
f5385255 6646 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
6647
66482008-10-06 Chong Yidong <cyd@stupidchicken.com>
6649
f5385255 6650 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 6651
a9b555d3 6652 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
6653
6654 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
6655 during initialization.
6656
66572008-10-04 Eli Zaretskii <eliz@gnu.org>
6658
6659 * xdisp.c (redisplay_internal): If frame switched, redisplay the
6660 whole thing on MSDOS frames as well as on a TTY.
6661
6662 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
6663 well as for TTY.
6664 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
6665 well as on a TTY.
6666
6667 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
6668 as well as for TTY.
6669
6670 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
6671
6672 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
6673 MSDOS frames as well.
6674
66752008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
6676
6677 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
6678 correct arguments.
b71ac3dd 6679 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
6680
66812008-10-03 Glenn Morris <rgm@gnu.org>
6682
6683 * emacs.c (USAGE1): Add --daemon.
6684
66852008-10-02 Eli Zaretskii <eliz@gnu.org>
6686
6687 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
6688 100, so it's in percents as advertised.
6689
66902008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
6691
6692 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
6693 (ns_output.current_cursor, ns_output.desired_cursor)
6694 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
6695 (FRAME_NEW_CURSOR_COLOR): Remove.
6696
6697 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 6698 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
6699 enumeration (HOLLOW_BOX_CURSOR, etc.).
6700
6701 * nsterm.m (ns_frame_rehighlight): Remove commented code.
6702 (draw_window_cursor): Simplify code.
f5385255
SM
6703 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
6704 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 6705 updates manually.
a9b555d3
JB
6706 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
6707 Use core Emacs cursor types.
aac0c6e3 6708
b8ff72fa 6709 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
6710
67112008-10-02 Martin Rudalics <rudalics@gmx.at>
6712
6713 * process.c (Faccept_process_output): Fix doc-string.
6714
67152008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
6716
6717 * gmalloc.c (__sbrk): Also define for uClibc.
6718
6719 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
6720 for uClibc.
6721
67222008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6723
6724 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
6725 styles.
6726 (nsfont_open): Reenable the cache.
6727
67282008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6729
6730 * font.c (font_matching_entity): Reflect ATTRS in font selection.
6731 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
6732
67332008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
6734
6735 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
6736 a suspended terminal.
6737
67382008-09-30 Michael Albinus <michael.albinus@gmx.de>
6739
6740 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
6741
67422008-09-30 Eli Zaretskii <eliz@gnu.org>
6743
6744 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
6745
67462008-09-30 Chong Yidong <cyd@stupidchicken.com>
6747
6748 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
6749 in a continued line coincides with a line beginning.
6750
67512008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6752
6753 * nsfont.m (nsfont_trait_distance): Fix bug.
6754 (nsfont_list): Return a list rather than a vector (syncs with Handa
6755 changes of 2008-05-14).
6756 (nsfont_open): Improve logging.
6757
67582008-09-29 Andreas Schwab <schwab@suse.de>
6759
6760 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
6761
67622008-09-28 Martin Rudalics <rudalics@gmx.at>
6763
6764 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
6765 name as char-resolve-modifiers.
6766 Reported by: Markus Triska <markus.triska@gmx.at>
6767
67682008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
6769
6770 * dispnew.c (init_display): Return earlier when running as a daemon.
6771
67722008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6773
6774 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
6775
67762008-09-27 Eli Zaretskii <eliz@gnu.org>
6777
6778 * composite.c (Fcomposition_get_gstring)
6779 (Fcompose_region_internal, Fcompose_string_internal)
6780 (Ffind_composition_internal): Doc fix.
6781 (syms_of_composite) <compose-chars-after-function>: Doc fix.
6782 (syms_of_composite) <auto-composition-function>: Doc fix.
6783 (syms_of_composite) <composition-function-table>: Doc fix.
6784
67852008-09-25 Chong Yidong <cyd@stupidchicken.com>
6786
6787 * search.c (wordify): New argument for lax word-ends.
6788 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
6789
67902008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
6791
6792 * lisp.h (is_daemon): Declare.
6793 * dispnew.c (init_display): Do not try to initialize the terminal
6794 when running as a daemon.
6795
67962008-09-22 Chong Yidong <cyd@stupidchicken.com>
6797
6798 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
6799 x_display_pixel_height.
6800
68012008-09-22 Martin Rudalics <rudalics@gmx.at>
6802
6803 * undo.c (record_point): Don't call Fundo_boundary for first
6804 change. (Bug#731)
6805
68062008-09-22 Juanma Barranquero <lekktu@gmail.com>
6807
6808 * emacs.c (Fdaemonp): Doc fix.
6809
68102008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
6811
6812 * emacs.c (main): Place #ifdef in the proper place.
6813
68142008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
6815
6816 * emacs.c (standard_args): Add --daemon.
6817 (main): Disconnect from the terminal when --daemon is passed.
6818 (is_daemon): New variable.
6819 (Fdaemonp): New function.
6820 (syms_of_emacs): Defsubr it.
6821
68222008-09-20 Chong Yidong <cyd@stupidchicken.com>
6823
6824 * xdisp.c (get_next_display_element): Handle string display
6825 correctly when checking for the end of a box run.
6826
68272008-09-20 Glenn Morris <rgm@gnu.org>
6828
6829 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
6830 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
6831 (Frename_file): Avoid copying to trash if a rename involves
6832 a delete. (Bug#964).
6833
68342008-09-20 Eli Zaretskii <eliz@gnu.org>
6835
6836 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
6837 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
6838 frames as well as termcap frames.
6839 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
6840 get_named_tty.
6841
68422008-09-19 Eli Zaretskii <eliz@gnu.org>
6843
6844 * process.c (procfs_system_process_attributes): Fix cmdline in
6845 case /proc/PID/cmdline is empty.
6846
6847 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
6848 x_display_pixel_height.
6849
68502008-09-19 Juanma Barranquero <lekktu@gmail.com>
6851
6852 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
6853
6854 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
6855 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
6856
68572008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
6858
6859 * dispextern.h (struct it): Move line_wrap away from the middle of
6860 bitfields. Move voffset in struct iterator_stack_entry after the
6861 bitfields. Move tab_width near after another short.
6862
68632008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
6864
6865 * frame.h (struct frame): Move alpha from the middle of bitfields.
6866
6867 * window.h (struct window): Move frozen_window_start_p after the
6868 rest of the bitfields to reduce padding.
6869
68702008-09-18 Chong Yidong <cyd@stupidchicken.com>
6871
6872 * xterm.h (x_display_info): Remove `height' and `width' members.
6873
6874 * nsterm.h (ns_display_info): Remove `height' and `width' members.
6875
6876 * w32term.h (w32_display_info): Remove `height', `width',
6877 `height_in', and `width_in' members.
6878
b8ff72fa
SM
6879 * xterm.c (x_display_pixel_height, x_display_pixel_width):
6880 New functions.
aac0c6e3
MR
6881 (x_calc_absolute_position): Use them.
6882 (x_term_init): Omit removed `height' and `width' members.
6883
b8ff72fa
SM
6884 * w32term.c (x_display_pixel_height, x_display_pixel_width):
6885 New functions.
aac0c6e3
MR
6886 (w32_read_socket, x_calc_absolute_position): Use them.
6887 (w32_initialize_display_info, w32_term_init): Omit removed members
6888 of w32_display_info.
6889
b8ff72fa
SM
6890 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
6891 New functions.
6892 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 6893
b8ff72fa
SM
6894 * xterm.c (x_display_pixel_height, x_display_pixel_width):
6895 New functions.
aac0c6e3
MR
6896 (x_calc_absolute_position): Use them.
6897 (x_term_init): Omit removed `height' and `width' members.
6898
6899 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
6900 (compute_tip_xy):
6901 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
6902 * xmenu.c (menu_position_func): Use x_display_pixel_height and
6903 x_display_pixel_width.
6904
69052008-09-18 Kenichi Handa <handa@m17n.org>
6906
6907 * composite.c (fill_gstring_header): Don't check FROM and TO here.
6908 (composition_compute_stop_pos): Fix handling of static composition.
6909 (Fcomposition_get_gstring): Check FROM and TO at first.
6910
69112008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
6912
46e722a9 6913 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
6914 mixup (YAILOM).
6915
69162008-09-17 Chong Yidong <cyd@stupidchicken.com>
6917
6918 * indent.c (Fvertical_motion): Use position reported by iterator
6919 instead of PT for determining screen motion (bug#943).
6920
69212008-09-17 Romain Francoise <romain@orebokech.com>
6922
6923 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
6924
69252008-09-17 Kenichi Handa <handa@m17n.org>
6926
6927 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
6928
6929 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
6930 if necessary.
6931
69322008-09-16 Kenichi Handa <handa@m17n.org>
6933
6934 * coding.c (make_conversion_work_buffer): Avoid calling
6935 Fget_buffer_create if it is not necessary.
6936
69372008-09-15 Martin Rudalics <rudalics@gmx.at>
6938
6939 * window.c (Fselect_window): Don't update window_select_count and
6940 use_time when norecord is not nil.
6941
69422008-09-14 Kenichi Handa <handa@m17n.org>
6943
6944 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
6945 specpdl_ptr.
6946
69472008-09-12 Kenichi Handa <handa@m17n.org>
6948
6949 * indent.c (scan_for_column): Don't handle automatic composition
6950 if the current buffer is not associated with a window.
6951
6952 * composite.c (composition_reseat_it): If the current buffer is
6953 not associated with a window, ignore the automatic composition.
6954 (find_automatic_composition): Likewise.
6955
69562008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
6957
6958 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
6959 (Fgpm_mouse_stop): Use it.
6960 * termhooks.h (close_gpm): Declare.
6961 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
6962 connection if Gpm_GetEvent fails.
6963
6964 * window.c (set_window_buffer): Always preserve current-buffer.
6965
69662008-09-12 Glenn Morris <rgm@gnu.org>
6967
6968 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
6969
69702008-09-11 Glenn Morris <rgm@gnu.org>
6971
6972 * charset.c (charset-map-path): Doc fix.
6973
69742008-09-10 Kenichi Handa <handa@m17n.org>
6975
6976 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
6977
6978 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
6979 compose a grapheme cluster with the preceding base glyph.
6980
6981 * composite.c (composition_compute_stop_pos): Fix previous change.
6982 Reset cmp_it->id to -1 at first.
6983
69842008-09-10 Glenn Morris <rgm@gnu.org>
6985
6986 * Makefile.in (character.o, chartab.o): Fix config.h typo.
6987
69882008-09-09 Chong Yidong <cyd@stupidchicken.com>
6989
6990 * keyboard.c (read_key_sequence): Reapply translation maps when
6991 switching keyboards.
6992
69932008-09-09 Kenichi Handa <handa@m17n.org>
6994
6995 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
6996 characters.
6997
6998 * composite.c (FORWARD_CHAR): Fix calculation
6999 of (POSITION).pos_byte.
7000 (composition_compute_stop_pos): Limit the search of composition to
7001 at most 500 characters ahead. If we reach the limit or find a
7002 newline, set cmp_it->ch to -2 and return 0.
7003 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
7004
70052008-09-08 Kenichi Handa <handa@m17n.org>
7006
7007 * indent.c (Fvertical_motion): Be sure to set
7008 it_overshoot_expected if it.cmp_it.id is non-negative.
7009
70102008-09-07 Andreas Schwab <schwab@suse.de>
7011
7012 * callproc.c (Fcall_process): Don't hold references to string data
7013 across garbage collection. Move initialisation of new_argv down
7014 to avoid compiler bug.
7015
70162008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
7017
7018 * process.c (Fsystem_process_attributes): Doc fix.
7019
70202008-09-07 Chong Yidong <cyd@stupidchicken.com>
7021
7022 * callproc.c (Fcall_process): Canonicalize current directory name.
7023
7024 * xdisp.c (move_it_to): When moving by vpos, ensure that the
7025 iterator advances to the next line if the current line ends in a
7026 continued tab.
7027
70282008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
7029
7030 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
7031 member to point to cmp_from.
7032
7033 * xdisp.c: Doc fix for references to gidx data member.
7034
70352008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
7036
7037 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
7038
70392008-09-07 Kenichi Handa <handa@m17n.org>
7040
7041 * composite.c (FORWARD_CHAR): Check STOP after
7042 incrementing (POSITION).pos.
7043
70442008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
7045
7046 * process.c (Fsystem_process_attributes): Doc fix.
7047
70482008-09-06 Chong Yidong <cyd@stupidchicken.com>
7049
7050 * keyboard.c (Ftop_level): Doc fix.
7051
70522008-09-06 Eli Zaretskii <eliz@gnu.org>
7053
7054 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
7055 minibuffer, don't let lower part of menu invade the echo area.
7056
7057 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
7058 "char *q" to access menu text and advance through it. Revert the
7059 change that displayed ">" instead of ASCII character 0x10.
7060
70612008-09-05 Eli Zaretskii <eliz@gnu.org>
7062
7063 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
7064 toggle boxes and radio buttons on MS-DOS as well.
7065
70662008-09-05 Kenichi Handa <handa@m17n.org>
7067
7068 * composite.c (autocmp_chars): Check lookback count.
7069 (composition_compute_stop_pos): Set cmp_it->lookback.
7070 (composition_reseat_it): Check lookback count.
7071 (struct position_record): New struct.
7072 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
7073 (find_automatic_composition): New function.
7074 (composition_adjust_point): Use find_automatic_composition.
7075
7076 * dispextern.h (struct composition_it): New member lookback.
7077
70782008-09-02 Chong Yidong <cyd@stupidchicken.com>
7079
7080 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
7081 if moving by a single line.
7082
70832008-09-02 Andreas Schwab <schwab@suse.de>
7084
7085 * xterm.c (x_delete_display): Fix merge error.
7086
7087 * fileio.c (Fexpand_file_name): Remove unused variables.
7088
70892008-09-02 Eli Zaretskii <eliz@gnu.org>
7090
7091 * fileio.c (Fexpand_file_name): Copy argument `name' into local
7092 storage on all platforms, not just on DOS_NT.
7093
70942008-09-02 Jason Rumney <jasonr@gnu.org>
7095
b8ff72fa
SM
7096 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
7097 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
7098
70992008-09-01 Chong Yidong <cyd@stupidchicken.com>
7100
7101 * xfaces.c (Finternal_set_alternative_font_family_alist)
7102 (Finternal_set_alternative_font_registry_alist): Properly copy
7103 entire alist structure.
7104
71052008-09-01 Kenichi Handa <handa@m17n.org>
7106
d66c0241 7107 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 7108 representative chars of the script is a vector.
d66c0241
JB
7109 (ftfont_list): Handle the case where the representative chars of
7110 the script is a vector.
aac0c6e3
MR
7111
7112 * character.c (syms_of_character): Docstring of
7113 script-representative-chars fixed.
7114
71152008-08-31 Eli Zaretskii <eliz@gnu.org>
7116
7117 * msdos.c (BUILD_CHAR_GLYPH): New macro.
7118 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
7119 the menu. Allocate larger buffer for `text', to account for
7120 possible ^C characters.
7121
71222008-08-31 Martin Rudalics <rudalics@gmx.at>
7123
7124 * xdisp.c (prepare_menu_bars): Don't call
7125 Vwindow_size_change_functions with arg Qt.
7126
71272008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
7128
7129 * font.h (font_range):
7130 * fileio.c (report_file_error):
46e722a9
SM
7131 * composite.c (composition_update_it): Yet another int/Lisp_Object
7132 mixup (YAILOM).
aac0c6e3
MR
7133
71342008-08-30 Glenn Morris <rgm@gnu.org>
7135
7136 * data.c (Fmake_variable_frame_local): Doc fix.
7137
7138 * frame.c (Fmodify_frame_parameters): Doc fix.
7139
71402008-08-30 Eli Zaretskii <eliz@gnu.org>
7141
7142 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
7143 needed by GetTokenInformation.
7144 (w32_system_process_attributes): Check return values of all system
7145 APIs.
7146
7147 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
7148 only when the state changes.
7149 (IT_update_begin, IT_update_end): Add termscript trace.
7150
7151 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
7152 clipboard is unavailable. Set dst to NULL if it doesn't point to
7153 malloc'ed data.
7154 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
7155 passing random values to xfree.
7156
7157 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 7158 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
7159
71602008-08-29 Jason Rumney <jasonr@gnu.org>
7161
7162 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
7163
71642008-08-29 Eli Zaretskii <eliz@gnu.org>
7165
7166 * composite.c (fill_gstring_body): Avoid compiler warnings.
7167
7168 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
7169 LGLYPH_SET_CODE to avoid compiler warnings.
7170
2ae37cf0 7171 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
7172
7173 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
7174
7175 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
7176 LGLYPH_SET_CODE.
7177
71782008-08-29 Kenichi Handa <handa@m17n.org>
7179
7180 * fileio.c (report_file_error): Don't downcase the first character
7181 of errstring if it is still unibyte.
7182
71832008-08-29 Kenichi Handa <handa@m17n.org>
7184
7185 These changes are to re-implement the automatic composition so
7186 that it doesn't use text properties.
7187
7188 * Makefile.in (ftfont.o): Depend on composite.h.
7189 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
7190
7191 * character.h (Vunicode_category_table): Extern it.
7192
7193 * character.c (Vunicode_category_table): New variable.
7194 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
7195
7196 * chartab.c (optimize_sub_char_table): Perform more greedy
7197 optimization.
7198
b8ff72fa
SM
7199 * composite.h (enum composition_method):
7200 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
7201 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
7202 (Vcomposition_function_table): Extern it.
7203 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
7204 (composition_gstring_put_cache, composition_gstring_from_id)
7205 (composition_gstring_p, composition_gstring_width)
7206 (composition_compute_stop_pos, composition_reseat_it)
7207 (composition_update_it, composition_adjust_point): Extern them.
7208 (Fcomposition_get_gstring): EXFUN it.
7209
d66c0241 7210 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
7211 (Vcomposition_function_table)
7212 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
7213 (gstring_hash_table, gstring_work, gstring_work_headers):
7214 New variables.
aac0c6e3
MR
7215 (gstring_lookup_cache, composition_gstring_put_cache)
7216 (composition_gstring_from_id, composition_gstring_p)
7217 (composition_gstring_width, fill_gstring_header)
7218 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
7219 (composition_reseat_it, composition_update_it)
b8ff72fa 7220 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
7221 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
7222 and gstring_work_headers. DEFVAR_LISP composition-function-table.
7223 Defsubr compostion_get_gstring.
7224
7225 * dispextern.h (struct glyph): New union u.cmp. Delete the member
7226 cmp_id.
7227 (struct glyph_string): Delete the member gidx. New members
7228 cmp_id, cmp_from, and cmp_to.
7229 (enum it_method): Delete GET_FROM_COMPOSITION.
7230 (struct composition_it): New struct.
7231 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
7232 Delete c, len, cmp_id, cmp_len in u.comp.
7233
7234 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 7235 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 7236 (enum lglyph_indices): Likewise.
b8ff72fa 7237 (font_range): Adjust extern.
aac0c6e3
MR
7238 (font_fill_lglyph_metrics): Extern it.
7239
7240 * font.c (QCf): New variable.
7241 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
7242 (font_prepare_composition): Delete this function.
7243 (font_range): Type and arguments changed.
7244 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
7245 (font_fill_lglyph_metrics): New function.
b8ff72fa 7246 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 7247 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
7248 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
7249 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
7250
7251 * fontset.h (font_for_char): Extern it.
7252
7253 * fontset.c (font_for_char): New function.
7254
7255 * ftfont.c: Include composite.h.
7256 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 7257 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
7258
7259 * indent.c: Include composite.h and dispextern.h.
7260 (check_composition): Delete this function.
7261 (scan_for_column): Handle composition by
7262 composition_compute_stop_pos, composition_reseat_it, and
7263 composition_update_it.
7264 (compute_motion): Likewise.
7265 (Fvertical_motion): Fix checking of composition.
7266
7267 * keyboard.c (adjust_point_for_property): Check composition by
7268 composition_adjust_point.
7269
b8ff72fa 7270 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
7271 struct glyph_string.
7272
b8ff72fa
SM
7273 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
7274 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
7275 struct glyph.
7276 (produce_composite_glyph): Likewise.
7277
b8ff72fa
SM
7278 * w32term.c (x_draw_composite_glyph_string_foreground):
7279 Adjust for the change of struct glyph_string.
aac0c6e3
MR
7280 (x_draw_glyph_string): Likewise.
7281
7282 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
7283 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
7284
7285 * xdisp.c: Include font.h.
7286 (it_props): Delete the entry for Qauto_composed.
7287 (init_iterator): Initialize it->cmp_it.id to -1.
7288 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 7289 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
7290 (handle_auto_composed_prop): Delete it.
7291 (handle_composition_prop): Handle only static composition.
7292 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
7293 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 7294 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
7295 (pop_it): Likewise.
7296 (get_next_element): Delete next_element_from_composition.
7297 (CHAR_COMPOSED_P): New macro.
7298 (get_next_display_element): For automatic composition, get a face
7299 from the font in the glyph-string.
7300 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 7301 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
7302 (next_element_from_string): Check if the character at the current
7303 position is composed by CHAR_COMPOSED_P.
7304 (next_element_from_buffer): Likewise.
d66c0241
JB
7305 (next_element_from_composition): Adjust for the change of struct it.
7306 Update it->cmp_it.
b8ff72fa
SM
7307 (dump_glyph): Adjust for the change of struct glyph.
7308 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
7309 it and struct glyph. Don't handle automatic composition here.
7310 (fill_gstring_glyph_string): New function.
7311 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 7312 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
7313 (BUILD_GSTRING_GLYPH_STRING): New macro.
7314 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
7315 automatic composition.
b8ff72fa 7316 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 7317 struct glyph.
b8ff72fa 7318 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 7319
b8ff72fa 7320 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
7321 the change of struct glyph_string.
7322 (x_draw_glyph_string): Likewise.
7323
73242008-08-29 Glenn Morris <rgm@gnu.org>
7325
7326 * buffer.c (word-wrap): Doc fix.
7327 * xdisp.c (truncate-partial-width-windows): Doc fix.
7328 Increase default to 50.
7329
73302008-08-29 Chong Yidong <cyd@stupidchicken.com>
7331
7332 * xdisp.c (update_tool_bar_unwind): New function.
7333 (update_tool_bar): Temporarily set selected frame before building
7334 tool-bar items.
7335
73362008-08-28 Michael Albinus <michael.albinus@gmx.de>
7337
7338 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
7339 snprintf, respectively.
7340 (xd_append_arg): Convert strings with Fstring_make_unibyte.
7341
73422008-08-28 Chong Yidong <cyd@stupidchicken.com>
7343
7344 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
7345 LDFLAGS to GNUstep CC invocation.
7346
73472008-08-27 Chong Yidong <cyd@stupidchicken.com>
7348
7349 * indent.c (Fvertical_motion): Revert last change. Handle the
7350 general case where we are moving forward, and PT spans multiple
7351 screen lines.
7352
7353 * eval.c (find_handler_clause): Temporarily increase
7354 max-lisp-eval-depth while printing the backtrace buffer, to
7355 guarantee that help-mode code can run.
7356
73572008-08-27 Eli Zaretskii <eliz@gnu.org>
7358
7359 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
7360 colors under -rv.
7361 (IT_set_frame_parameters): Don't swap foreground and background
7362 colors if `(reverse . t)' is present in the frame properties.
7363 (internal_terminal_init): Call init_frame_faces only for the
7364 initial frame.
7365
73662008-08-27 Andreas Schwab <schwab@suse.de>
7367
7368 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
7369
73702008-08-27 Andreas Schwab <schwab@suse.de>
7371
7372 * search.c (search_buffer): Set char_base to zero only at the end.
7373
73742008-08-27 Kenichi Handa <handa@m17n.org>
7375
b8ff72fa 7376 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
7377
73782008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
7379
7380 * xterm.c (x_term_init): Temporarily hide the partially
7381 initialized terminal while calling vendor-specific-keysyms.
7382
73832008-08-26 Eli Zaretskii <eliz@gnu.org>
7384
7385 * msdos.c (internal_terminal_init): Most initializations done only
7386 once, especially initial_screen_colors[] and termscript open.
7387
73882008-08-26 Chong Yidong <cyd@stupidchicken.com>
7389
7390 * eval.c (Fcondition_case): Doc fix.
7391
7392 * widgetprv.h (EmacsFramePart): Change font member to the new font
7393 struct.
7394
7395 * widget.c: Include character.h and font.h for XSETFONT.
7396 (setup_frame_gcs): Compute X font id from font struct, just once.
7397
73982008-08-26 Eli Zaretskii <eliz@gnu.org>
7399
7400 * term.c (get_named_tty): Fix last change.
7401
74022008-08-26 Chong Yidong <cyd@stupidchicken.com>
7403
7404 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 7405 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
7406
74072008-08-25 Eli Zaretskii <eliz@gnu.org>
7408
7409 * frame.c (do_switch_frame): Mark previously displayed frame as
7410 obscured for FRAME_MSDOS_P frames as well.
7411
74122008-08-24 Eli Zaretskii <eliz@gnu.org>
7413
7414 * frame.c (make_terminal_frame): Initialize f->terminal,
7415 f->terminal->reference_count, and scroll bars on MS-DOS as well.
7416 Set the top frame to newly created frame.
7417 (Fmake_terminal_frame): Reuse the_only_display_info.
7418
7419 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
7420 estimating available memory.
7421
b97439ce 74222008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
7423
7424 * nsterm.m (ns_draw_window_cursor): Don't call
7425 NSDisableScreenUpdates and NSEnableScreenUpdates on
7426 non-NS_IMPL_COCOA systems.
7427
74282008-08-23 Andreas Schwab <schwab@suse.de>
7429
7430 * process.c (procfs_system_process_attributes): Fix use of
7431 uninitialized variables.
7432
74332008-08-23 Eli Zaretskii <eliz@gnu.org>
7434
7435 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
7436
7437 * dispnew.c (init_display): Remove MS-DOS specific conditions for
7438 calling tty-set-up-initial-frame-faces.
7439
b8ff72fa
SM
7440 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
7441 Allow MSDOS frames along with X frames.
aac0c6e3
MR
7442
7443 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
7444 addition to output_termcap.
7445
7446 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
7447
7448 * termchar.h (FRAME_TTY): Support output_msdos_raw.
7449 (struct tty_display_info) [MSDOS]: Add fields related to mouse
7450 highlight.
7451
7452 * process.c [!subprocesses]: Define QCname.
7453 (syms_of_process): Intern and staticpro it.
7454
7455 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
7456 Adjust for changes in encoding/decoding routines.
7457 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
7458 encode_coding and decode_coding.
7459
b8ff72fa 7460 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
7461
7462 * dosfns.c: Include frame.h before termhooks.h.
7463 (dos_cleanup): Use CURTTY ()->termscript instead of a global
7464 variable termscript.
7465
7466 * s/msdos.h (USER_FULL_NAME): Define.
7467 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
7468
7469 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
7470 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
7471 pw->pw_gecos.
7472
7473 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
7474 SELECTED_FRAME as additional (1st) argument.
7475 (tty_read_avail_input): Handle output_msdos_raw in
7476 addition to output_termcap.
7477
7478 * msdos.c: Include frame.h before termhooks.h.
7479 (mouse_on, mouse_off, mouse_moveto, mouse_init)
7480 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
7481 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
7482 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
7483 (IT_set_terminal_modes, IT_reset_terminal_modes)
7484 (IT_set_frame_parameters): Use tty->termscript instead of a global
7485 variable termscript.
7486 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
7487 global variable terminal_coding. Don't refer to
7488 Vnonascii_translation_table.
7489 (internal_terminal_init): Set Vwindow_system in current_kboard.
7490 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
7491 Announce date and time of session start, if termscript is open.
7492 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
7493 term.c:init_tty). Open termscript only of not already open.
7494 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
7495 here instead of dos_ttraw. Don't initialize display if this is an
7496 initial tty. Don't set FRAME_FONT.
7497 (Vwindow_system_version): Bump to 23.
7498 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
7499 is available, set up mouse_position_hook.
7500 (dos_ttraw, IT_set_terminal_modes): If called with initial
7501 terminal, do nothing.
7502 (IT_set_frame_parameters): Handle the Qtty_type frame
7503 parameter by calling internal_terminal_init.
7504 (dos_set_window_size, show_mouse_face)
7505 (clear_mouse_face, IT_note_mode_line_highlight)
7506 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
7507 (dos_rawgetc): Use tty_display_info instead of x_display_info.
7508 (initialize_msdos_display): New function.
7509 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
7510 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
7511 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
7512 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 7513 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
7514 (request_sigio, unrequest_sigio): Don't define, now defined on
7515 sysdep.c.
7516 (IT_write_glyphs): Rewrite to use encode_terminal_code.
7517
7518 * term.c [MSDOS]: Include msdos.h.
7519 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
7520 conditional to DOS_NT. Allow only one call to this function in a
7521 session. Don't allocate a new struct tty_display_info; instead,
7522 reuse the_only_display_info. Call get_tty_size to get screen
7523 dimensions. Call init_baud_rate to set bad_rate.
7524 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
7525 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 7526 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
7527 (get_tty_terminal, get_named_tty, Ftty_type)
7528 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
7529 output_termcap.
b8ff72fa
SM
7530 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
7531 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 7532 only when subprocesses are supported.
aac0c6e3
MR
7533
7534 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
7535 f->output_data.x.
7536 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
7537 terminal devices.
7538
5582fbc7 7539 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
7540 x_output.
7541 (FRAME_FONT): Use output_data.tty.
7542 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
7543 (struct x_display_info): Rename from display_info. Update all users in
7544 msdos.c.
aac0c6e3 7545 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 7546 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
7547 (dos_ttraw): Update prototype.
7548
7549 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
7550 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
7551
75522008-08-23 Jason Rumney <jasonr@gnu.org>
7553
7554 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
7555 (fn_TIFFSetDirectory): New library function used.
7556 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
7557 (tiff_load): Use :index to select among multiple images. Set count
7558 property when multiple images exist.
7559 (gif_format): Use :index, not :image.
7560
75612008-08-23 Chong Yidong <cyd@stupidchicken.com>
7562
7563 * xdisp.c (try_scrolling): Check INT_MAX instead of
7564 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
7565 to obtain INT_MAX.
7566
75672008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
7568
7569 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
7570
75712008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
7572
7573 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
7574 GNUstep library location.
7575
75762008-08-21 Chong Yidong <cyd@stupidchicken.com>
7577
7578 * xfaces.c (x_update_menu_appearance): Check validity of menu font
7579 before using it.
7580
7581 * puresize.h (BASE_PURESIZE): Increase to 1250000.
7582
75832008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7584
7585 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
7586 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
7587 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
7588 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
7589 (EmacsApp-cursor_blink_handler): Remove declaration.
7590 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
7591 match 01 Feb 2008 changes in xterm.c.
7592 (ns_read_socket): Add cast to avoid warning.
7593 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
7594 GNUstep.
7595
75962008-08-20 Chong Yidong <cyd@stupidchicken.com>
7597
7598 * xselect.c (x_get_foreign_selection): Return nil if desired
7599 selection could not be obtained, instead of signalling an error.
7600
76012008-08-20 David Reitter <david.reitter@gmail.com>
7602
7603 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
7604 * nsterm.m: Remove ns-specific code for cursor blinking.
7605 (ns_draw_window_cursor): Clear cursor properly rather than
7606 redrawing the area. Respect width of bar cursors.
7607 These changes enable the use of generic blink-cursor-mode and
7608 generic cursor types in NS and support smooth cursor movements (do
7609 not blink off after command).
7610 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
7611 Nextstep, too.
7612
76132008-08-19 Kenichi Handa <handa@m17n.org>
7614
7615 * font.c (Vfont_log_deferred): New variable.
7616 (font_add_log): Check Vfont_log_deferred.
7617 (font_deferred_log): New function.
7618
7619 * font.h (font_deferred_log): Extern it.
7620
7621 * fontset.c (reorder_font_vector): Use encoding charset of fonts
7622 for sorting.
7623 (face_for_char): Use deferred log.
7624
76252008-08-18 Kenichi Handa <handa@m17n.org>
7626
7627 * fontset.c (face_for_char): Add font log.
7628
7629 * font.c (font_add_log): Add the font properties :script, :lang,
7630 and :otf in the log.
7631
76322008-08-17 Chong Yidong <cyd@stupidchicken.com>
7633
7634 * xdisp.c: Remove dead code.
7635 (handle_invisible_prop, next_overlay_string): Defer call to
7636 setup_for_ellipsis.
7637 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
7638
76392008-08-15 Chong Yidong <cyd@stupidchicken.com>
7640
7641 * xfaces.c (lookup_derived_face): Properly handle possible zero
7642 return value of get_lface_attributes.
7643 (merge_faces): Don't tell lookup_derived_face to signal an error
7644 if face is not found.
7645
7646 * dired.c (Fdirectory_files): Doc fix.
7647
7648 * process.c (make_process): Initialize kill_without_query struct
7649 member.
7650
76512008-08-15 Eli Zaretskii <eliz@gnu.org>
7652
7653 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
7654 Alternative calculation of totphys for Visual Studio 6.
7655
7656 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
7657
7658 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
7659 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
7660 All users changed.
7661 (stat): Only root directory passed to GetDriveType. Allow RAM
7662 disk as well as local fixed disk when w32-get-true-file-attributes
7663 is set to `local'.
7664 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
7665 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
7666 (w32_cached_id, w32_add_to_cache): New functions.
7667 (get_name_and_id): Look account names in the cache before calling
7668 lookup_account_sid.
7669 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
7670 New initialization flags.
7671 (globals_of_w32): Initialize them to zero.
7672 (w32_system_process_attributes): Use w32_cached_id and
7673 w32_add_to_cache.
7674
76752008-08-14 Lawrence Mitchell <wence@gmx.li>
7676
7677 * lread.c (Fread_char, Fread_char_exclusive): If no character
7678 event is read before timeout is reached, return nil, rather than
7679 converting to a number.
7680
76812008-08-14 Chong Yidong <cyd@stupidchicken.com>
7682
7683 * fns.c (use_dialog_box): Doc fix.
7684
7685 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
7686 on OS X.
7687
76882008-08-13 Chong Yidong <cyd@stupidchicken.com>
7689
7690 * frame.c (Qns_parse_geometry): New var.
7691 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
7692
76932008-08-11 Chong Yidong <cyd@stupidchicken.com>
7694
7695 * xdisp.c (x_produce_glyphs): Handle the case when font has no
7696 space character in calculating tabs.
7697
76982008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
7699
7700 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
7701
77022008-08-10 Glenn Morris <rgm@gnu.org>
7703
7704 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
7705 silence gcc "limited range of data type" warnings in some
7706 make_fixnum_or_float calls.
7707
77082008-08-09 Eli Zaretskii <eliz@gnu.org>
7709
7710 * w32.c (w32_system_process_attributes): If the process does not
7711 exist, return nil.
7712
7713 * w32.c: Include thelp32.h, psapi.h and coding.h.
7714 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
7715 declarations.
7716 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
7717 (Process32Next_Proc): New typedefs.
7718 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
7719 (g_b_init_process32_next, g_b_init_open_thread_token)
7720 (g_b_init_impersonate_self, g_b_init_revert_to_self)
7721 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
7722 (g_b_init_get_process_working_set_size)
7723 (g_b_init_global_memory_status_ex): New static variables.
7724 (globals_of_w32): Initialize them.
7725 (create_toolhelp32_snapshot, process32_first, process32_next)
7726 (open_thread_token, impersonate_self, revert_to_self)
7727 (get_process_memory_info, get_process_working_set_size)
7728 (global_memory_status, global_memory_status_ex): New wrapper
7729 functions.
7730 (w32_list_system_processes, w32_system_process_attributes)
7731 (enable_privilege, restore_privilege, ltime, process_times):
7732 New functions.
7733 (convert_time_raw): New function.
7734 (convert_time): Remove conversion of FILETIME into time in 100
7735 nsec units, call convert_time_raw instead.
7736
7737 * process.h (w32_list_system_processes, w32_system_process_attributes):
7738 Add prototypes.
7739 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
7740 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
7741 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
7742 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
7743
7744 * process.c (Fsystem_process_attributes): Doc fix.
7745
77462008-08-08 Chong Yidong <cyd@stupidchicken.com>
7747
7748 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
7749 a continued multi-char glyph; if so, advance to the actual glyph.
7750
77512008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
7752
7753 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
7754
7755 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
7756 (.m.o): Use it.
7757 * config.in: Regenerate.
7758
77592008-08-07 Chong Yidong <cyd@stupidchicken.com>
7760
7761 * xdisp.c (redisplay_window): Revert last change.
7762 (try_window): Check bottom scroll margin too.
7763
77642008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
7765
7766 * config.in: Regenerate.
7767
7768 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
7769 -list-load-path-shadows'.
7770 (nsgui.h): Reduce number of things depending on it.
7771
77722008-08-06 Chong Yidong <cyd@stupidchicken.com>
7773
7774 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
7775 instead of window-end which does the wrong thing at eob.
7776 (try_cursor_movement): Minor optimization.
7777 (redisplay_window): If scroll margin is defined, don't assume
7778 window doesn't need scrolling.
7779
77802008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
7781
7782 * config.in: Regenerate.
7783
7784 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
7785 (mostlyclean): Don't delete *.d under NS.
7786
7787 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
7788
77892008-08-06 Kenichi Handa <handa@m17n.org>
7790
7791 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
7792
77932008-08-06 Andreas Schwab <schwab@suse.de>
7794
7795 * config.in: Regenerate.
7796
77972008-08-05 Chong Yidong <cyd@stupidchicken.com>
7798
7799 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
7800 forcing a window start.
7801
7802 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
7803 (auto_save_1): Update modtime when auto-save-list-file-name is on.
7804
78052008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
7806
7807 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
7808 argument.
7809
78102008-08-05 Juanma Barranquero <lekktu@gmail.com>
7811
7812 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
7813 <scroll-down-aggressively, before-change-functions>:
7814 <after-change-functions>: Reflow docstrings.
7815
78162008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
7817 Ken Raeburn <raeburn@gnu.org>
7818
7819 Dock menu customization, based on a patch by Ken Raeburn, plus some
7820 other fixes.
7821 * nsmenu.m (dockMenu): New variable.
7822 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
7823
7824 * nsterm.h (dockMenu): Declare.
7825
7826 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
7827 (ns_term_init): Initialize dockMenu.
7828 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
7829 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
7830 left.
7831
7832 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
7833
78342008-08-04 Chong Yidong <cyd@stupidchicken.com>
7835
7836 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
7837
7838 * config.in: Regenerate.
7839
78402008-08-04 Seiji Zenitani <zenitani@mac.com>
7841
7842 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
7843
78442008-08-04 Chong Yidong <cyd@stupidchicken.com>
7845
7846 * nsterm.h (find_and_call_menu_selection): Fix prototype.
7847
78482008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
7849
7850 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
7851
7852 * keyboard.h: Comment an #endif.
7853
7854 * lisp.h (have_menus_p): Adjust comment.
7855
7856 * menu.c (find_and_return_menu_selection): Fix comparison with
7857 client_data.
7858
7859 * nsmenu.m (popup_activated_flag): New variable.
7860 (popup_activated): New function.
7861 (menu-or-popup-active-p): New exported lisp definition.
7862 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
7863 when popup done.
7864 (ns_popup_dialog): Set popup_activated_flag.
7865
7866 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
7867 version for GNUstep (handled by conditional typedef in nsterm.m).
7868 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
7869 in rgb.txt).
7870
7871 * process.c (init_process): Use DARWIN_OS, not DARWIN.
7872
7873 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
7874
7875 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
7876
7877 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
7878 shortcircuit if popup_activated like GTK and X toolkit.
7879
7880 * m/inter386.h: Change DARWIN to DARWIN_OS.
7881
7882 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
7883 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
7884 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
7885 comment on NO_SOCK_SIGIO.
7886
78872008-08-03 Chong Yidong <cyd@stupidchicken.com>
7888
7889 * nsterm.m (windowDidResize): Remove stopModal call.
7890
78912008-08-03 Andreas Schwab <schwab@suse.de>
7892
7893 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
7894 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
7895
78962008-08-02 Chong Yidong <cyd@stupidchicken.com>
7897
7898 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
7899 Don't use uninitialized pointer variable when using getrlimit.
7900
79012008-08-02 Jason Rumney <jasonr@gnu.org>
7902
7903 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
7904
79052008-08-02 Eli Zaretskii <eliz@gnu.org>
7906
7907 * alloc.c (NSTATICS): Bump to 0x640.
7908
7909 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
7910
7911 * lisp.h: Add prototype for directory_files_internal.
7912
7913 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
7914 New functions.
7915 (syms_of_process): Defsubr them. Add initializations for various
7916 Q* symbols used in procfs_system_process_attributes.
7917 (procfs_list_system_processes, procfs_system_process_attributes)
7918 [HAVE_PROCFS]: New functions.
7919 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
7920 (procfs_get_total_memory): New functions.
7921
79222008-08-01 Juanma Barranquero <lekktu@gmail.com>
7923
7924 * xfaces.c (Fx_load_color_file): Fix previous change;
7925 it is #ifdef WINDOWSNT, not WINDOWS_NT.
7926
79272008-08-01 Michael Albinus <michael.albinus@gmx.de>
7928
7929 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
7930
79312008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7932
7933 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
7934
79352008-08-01 Chong Yidong <cyd@stupidchicken.com>
7936
7937 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
7938
7939 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
7940 define NSApplicationDelegateReplySuccess.
7941 (EmacsView -converstationIdentifier): Use long instead of
7942 NSInteger for GNUstep, since it doesn't have NSInteger.
7943
7944 * xmenu.c: Revert last change.
7945
7946 * keyboard.h: Fix last change.
7947
79482008-08-01 Juanma Barranquero <lekktu@gmail.com>
7949
7950 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
7951 on Windows.
7952
79532008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7954
7955 Warning clearing and clean-up in NS port.
7956 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
7957 Add prototypes.
7958 * nsgui.h (FACE_DEFAULT): Remove, unused.
7959 (XGCValues): Change colors to unsigned long.
7960 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
7961 nsterm.m.
7962 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
7963 (ns_list_fonts): Remove, unused.
7964 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
7965 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
7966 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
7967 (nsfont_draw): Compare face colors to 0, not nil.
7968 * nsmenu.m (struct widget_value): Drop unneeded declaration.
7969 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
7970 (-addSubmenuWithTitle:): Use NSMenuItem class.
7971 (ns_popup_menu): Use NO, not NULL, for enabled setting.
7972 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
7973 (ns_clip_to_row): Make gc arg a BOOL.
7974 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
7975 ns_clip_to_row() call.
7976 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
7977 used). Cast FRAME_FONT assignments.
7978 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
7979 (ns_string_to_lispmod): Change arg to const char.
7980 (ns_term_init): Use NSMenuItem class.
7981 (EmacsApp -openFile:): Move to different section of file.
7982 (EmacsApp -application:openFiles:): Don't return a value, call
7983 -replyToOpenOrPrint:.
7984 (EmacsView -keyDown:): Fix up cast.
7985 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
7986 (EmacsView -menuDown:): Cast tag in call to
7987 find_and_call_menu_selection().
7988 (ns_list_fonts): Remove, unused.
7989 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
7990 (ns_fontname_to_xlfd): Make static.
7991 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
7992 Remove prototypes (now in keyboard.h).
7993 (next_menubar_widget_id): Remove, unused.
7994 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
7995 Remove prototypes (now in keyboard.h).
7996 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
7997
79982008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
7999
8000 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
8001 (floatfns.o): Depend on syssignal.h.
8002 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
8003
8004 * systty.h: Fix previous change that removed BSD_TERMIOS.
8005 Add comments to #ifdefs.
8006
80072008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8008
8009 * w32fns.c (w32-load-color-file): Remove.
8010 (x-open-connection): Use renamed Fx_load_color_file.
8011 * xfaces.c (x-load-color-file): Add.
8012 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
8013 Emacs.clr.
8014 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
8015
80162008-07-31 Michael Albinus <michael.albinus@gmx.de>
8017
8018 * dbusbind.c (Fdbus_call_method_asynchronously)
8019 (Fdbus_method_error_internal): New defuns.
8020 (xd_read_message): Handle also reply messages.
8021 (Vdbus_registered_functions_table): Extend docstring.
8022
80232008-07-31 Juanma Barranquero <lekktu@gmail.com>
8024
8025 * keyboard.c (gobble_input): Fix previous change.
8026
80272008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
8028
8029 * bitmaps/README:
8030 * xfns.c:
8031 * termcap.c:
8032 * term.c:
8033 * syswait.h:
8034 * systty.h:
8035 * systime.h:
8036 * syssignal.h:
8037 * sysdep.c:
8038 * process.h:
8039 * process.c:
8040 * print.c:
8041 * ndir.h:
8042 * lread.c:
8043 * keyboard.c:
8044 * getpagesize.h:
8045 * floatfns.c:
8046 * fileio.c:
8047 * emacs.c:
8048 * doc.c:
8049 * dispnew.c:
8050 * dired.c:
8051 * data.c:
8052 * callproc.c:
8053 * buffer.c:
8054 * README:
8055 * Makefile.in:
8056 * s/template.h:
8057 * s/msdos.h:
8058 * m/vax.h: Remove VMS support.
8059 * s/vms.h:
8060 * vlimit.h:
8061 * uaf.h:
8062 * temacs.opt:
8063 * param.h:
8064 * ioctl.h: Remove file.
8065
80662008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
8067
8068 * s/ms-w32.h (MULTI_KBOARD): Remove.
8069 * xterm.c:
8070 * xselect.c:
8071 * xfns.c:
8072 * window.c:
8073 * w32term.c:
8074 * w32fns.c:
8075 * terminal.c:
8076 * termhooks.h:
8077 * term.c:
8078 * sysdep.c:
8079 * keyboard.h:
8080 * keyboard.c:
8081 * frame.h:
8082 * frame.c:
8083 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
8084 * config.in: Regenerate.
8085
80862008-07-30 Jason Rumney <jasonr@gnu.org>
8087
8088 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
8089
8090 * w32font.c (w32font_encode_char): Leave as unicode if in range.
8091 (w32font_open_internal): Get unicode version of textmetrics.
8092 Don't enable or disable glyph indices here.
8093 (w32font_open): Disable use of glyph indices.
8094
8095 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
8096
80972008-07-30 Chong Yidong <cyd@stupidchicken.com>
8098
8099 * minibuf.c (Vread_buffer_function): Doc fix.
8100
81012008-07-30 John Paul Wallington <jpw@pobox.com>
8102
8103 * minibuf.c (read_buffer_completion_ignore_case): New var.
8104 (Fread_buffer): Use it.
8105
81062008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
8107
8108 * systty.h (sensemode): Remove empty #if. Remove reference to
8109 BSD_TERMIOS, unused.
8110
8111 * sysdep.c: Remove reference to DGUX.
8112 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
8113
8114 * config.in: Regenerate.
8115
81162008-07-30 Jason Rumney <jasonr@gnu.org>
8117
8118 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
8119
81202008-07-29 Jason Rumney <jasonr@gnu.org>
8121
8122 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
8123 is populated.
8124 (uniscribe_encode_char): Always use uniscribe.
8125 Avoid using context if cache is populated.
8126
81272008-07-29 Jan Djärv <jan.h.d@swipnet.se>
8128
8129 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
8130 open menu.
8131
8132 * gtkutil.c (menu_nav_ended): Remove.
8133 (create_menus): Remove signal connect for menu_nav_ended.
8134
81352008-07-28 Chong Yidong <cyd@stupidchicken.com>
8136
8137 * xdisp.c (redisplay_window): Check return value of
8138 compute_window_start_on_continuation_line before forcing a window
8139 start.
8140
81412008-07-28 Jason Rumney <jasonr@gnu.org>
8142
8143 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
8144
8145 * w32term.c (w32_enable_unicode_output, cleartype_active):
8146 Remove obsolete display options.
8147 (x_draw_glyph_string_background): Don't use old cleartype_active
8148 workaround.
8149 (w32_initialize): Remove cleartype_active initialization.
8150 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
8151
81522008-07-28 Andreas Schwab <schwab@suse.de>
8153
8154 * lisp.h (init_weak_hash_tables, syms_of_font)
8155 (xd_read_queued_messages, syms_of_dbusbind): Declare.
8156 (remove_hash_entry): Don't declare.
8157 * eval.c (maybe_call_debugger): Make static and move before use.
8158 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
8159 * xdisp.c: Include "gtkutil.h" if USE_GTK.
8160 * xterm.h (x_set_frame_alpha): Declare.
8161
81622008-07-28 Jan Djärv <jan.h.d@swipnet.se>
8163
8164 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
8165 (create_menus): Connect selection-done to menu_nav_ended.
8166
81672008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8168
8169 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
8170 Set Vx_resource_name to a fallback. Replace read of 'buffered'
8171 parameter with read of 'alpha' one.
8172 (Qns_frame_parameter): Remove.
5582fbc7 8173 * nsselect.m (selection-coding-system)
aac0c6e3
MR
8174 (next-selection-coding-system, Vselection_coding_system)
8175 (Vnext_selection_coding_system): Drop.
8176
81772008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8178
8179 * nsfns.m (do-applescript, do_applescript): Rename to
8180 ns-do-applescript, ns_do_applescript, and move within file.
8181
81822008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
8183
8184 Remove support for Mac Carbon.
8185 * mactoolbox.c:
8186 * macterm.h:
8187 * macterm.c:
8188 * macselect.c:
8189 * macmenu.c:
8190 * macgui.h:
8191 * macfns.c:
8192 * mac.c: Remove file.
8193 * s/darwin.h:
8194 * m/intel386.h:
8195 * xfaces.c:
8196 * xdisp.c:
8197 * window.c:
8198 * tparam.c:
8199 * termhooks.h:
8200 * termcap.c:
8201 * term.c:
8202 * syssignal.h:
8203 * sysselect.h:
8204 * sysdep.c:
8205 * process.c:
8206 * lread.c:
8207 * lisp.h:
8208 * keyboard.c:
8209 * image.c:
8210 * fringe.c:
8211 * frame.h:
8212 * frame.c:
8213 * fontset.c:
8214 * font.h:
8215 * font.c:
8216 * fns.c:
8217 * fileio.c:
8218 * emacs.c:
8219 * dispnew.c:
8220 * dispextern.h:
8221 * config.in:
8222 * atimer.c:
2ae37cf0 8223 * Makefile.in: Remove code for Carbon.
aac0c6e3 8224
f0131492 82252008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
8226
8227 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
8228
82292008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8230
8231 * macterm.h (kCGBitmapByteOrder32Host): New define for
8232 non-universal SDKs.
8233
8234 * image.c (mac_create_cg_image_from_image, image_load_image_io)
8235 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
8236
8237 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
8238 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
8239
82402008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
8241
8242 * w32inevt.c: Include dispextern.h.
8243
82442008-07-26 Andreas Schwab <schwab@suse.de>
8245
8246 * print.c (print_object): Fix off-by-one in last change.
8247
82482008-07-25 Juanma Barranquero <lekktu@gmail.com>
8249
8250 * term.c (syms_of_term): Don't initialize default_orig_pair,
8251 default_set_foreground and default_set_background on Windows.
8252
82532008-07-25 Jason Rumney <jasonr@gnu.org>
8254
8255 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
8256 ScriptItemize. Clean up return value checking. Remove unused
8257 variables.
8258 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
8259 shaping engine.
8260
8261 * w32font.c (w32font_has_char): Handle the case where we can't
8262 determine the script for a character.
8263
82642008-07-25 Chong Yidong <cyd@stupidchicken.com>
8265
8266 * term.c (syms_of_term): Initialize default_orig_pair,
8267 default_set_foreground, and default_set_background.
8268
8269 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
8270 clash (bug#86).
8271 (getloadavg): Callers changed.
8272
8273 * image.c (svg_load_image): Fix last change.
8274 (svg_load_image): Use rsvg_handle_get_dimensions to check that
8275 image size is valid. Use g_object_unref instead of deprecated
8276 rsvg_handle_free to free rsvg handle.
8277 (x_from_xcolors): Don't initialize pixmap (silence compiler).
8278
82792008-07-25 Jason Rumney <jasonr@gnu.org>
8280
8281 * w32font.c (w32font_encode_char): Encode characters outside BMP as
8282 surrogates before looking up glyph index.
8283 (w32font_text_extents): Encode as surrogates if falling back to
8284 functions that need UTF-16 wide chars.
8285
8286 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
8287 BMP as surrogates before looking up glyph index.
8288
82892008-07-25 Chong Yidong <cyd@stupidchicken.com>
8290
8291 * image.c (svg_load_image): Check for failure in return value of
8292 rsvg_handle_get_pixbuf. Free rsvg handle when done.
8293
82942008-07-25 Jason Rumney <jasonr@gnu.org>
8295
8296 * w32font.c (Fx_select_font): Reverse sense of second arg.
8297
82982008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
8299
8300 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
8301 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
8302
8303 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
8304 (PURESIZE): Use it.
8305
83062008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
8307
8308 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
8309 * m/alpha.h (TEXT_END):
8310 * m/ibmrs6000.h (TEXT_END):
8311 * m/macppc.h (TEXT_END):
8312 * s/darwin.h (TEXT_END):
8313 * s/msdos.h (TEXT_END): Remove, unused.
8314 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
8315 * s/cygwin.h: Remove comment.
8316
8317 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
8318 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
8319 * m/intel386.h (DOT_GLOBAL_START):
8320 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
8321 (USG): Remove, file not used on USG platforms.
8322
8323 * Makefile.in (HAVE_X11): Remove empty #else.
8324
83252008-07-24 Andreas Schwab <schwab@suse.de>
8326
8327 * fileio.c (Finsert_file_contents): Properly adjust undo list
8328 after format conversion.
8329
83302008-07-24 Jan Djärv <jan.h.d@swipnet.se>
8331
8332 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
8333 (menu_nav_ended): Remove.
8334 (create_menus): Remove signal connect for menu_nav_ended.
8335 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
8336 create_menus.
8337 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
8338
83392008-07-23 Jason Rumney <jasonr@gnu.org>
8340
8341 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
8342 with opened font.
8343 (w32font_open): Set font type to gdi.
8344
8345 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
8346
83472008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
8348
8349 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
8350 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
8351 defines it.
8352 * unexec.c (ADDR_CORRECT): Define unconditionally.
8353
8354 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
8355
8356 * unexec.c: Remove code depending on !COFF and USG, the file is
8357 not used for such systems.
8358
8359 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
8360 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
8361 (LD_SWITCH_SYSTEM_1): Remove, update users.
8362
8363 * s/darwin.h (DATA_END):
8364 * m/intel386.h (DATA_END):
8365 * m/ibmrs6000.h (DATA_END):
8366 * m/alpha.h (DATA_END): Remove, unused.
8367
8368 * config.in: Regenerate.
8369 * s/ms-w32.h (subprocesses): Define unconditionally.
8370 * s/template.h (subprocesses): Update comment.
8371 * s/vms.h (subprocesses):
8372 * s/usg5-4.h (subprocesses):
8373 * s/hpux10-20.h (subprocesses):
8374 * s/gnu-linux.h (subprocesses):
8375 * s/cygwin.h (subprocesses):
8376 * s/bsd-common.h (subprocesses):
8377 * s/aix4-2.h (subprocesses):
8378 * s/darwin.h (subprocesses): Do not define, defined by default now.
8379
8380 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
8381 Remove all references.
8382 (temacs): Add GNUstep specific ld flags.
8383
8384 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
8385 similarly to what X does.
8386
83872008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8388
8389 * nsfns.m (x-list-fonts): Remove.
8390 (syms_of_nsfns): Drop the x-list-fonts declaration.
8391 * nsterm.m: Get rid of remaining "//" comments.
8392
83932008-07-22 Chong Yidong <cyd@stupidchicken.com>
8394
8395 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
8396
8397 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
8398 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
8399 (Fns_own_selection_internal, Fx_disown_selection_internal)
8400 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
8401
8402 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
8403 ... */' style of docstrings. Doc fixes.
8404
84052008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
8406
8407 * terminfo.c (UP, BC, PC): Undo previous change.
8408
8409 * nsfns.m: Rename ns prefixed functions/variables to the
8410 corresponding x versions. Update references.
8411
84122008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
8413
8414 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
8415
84162008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
8417
8418 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
8419 Remove forwarding functions.
8420 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
8421 non-static.
8422 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
8423 non-static.
8424 (ns_frame_parm_handlers): Use the new names.
8425 (syms_of_nsfns): Move to the end of file.
8426
8427 * nsterm.m (syms_of_nsterm): Move to the end of file.
8428
8429 * dispnew.c (init_display): Remove code for X10.
8430
84312008-07-22 Jason Rumney <jasonr@gnu.org>
8432
8433 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
8434 bare drive.
8435
84362008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8437
8438 * nsterm.m (syms_of_nsterm): Remove debugging println.
8439
84402008-07-22 David Reitter <david.reitter@gmail.com>
8441
8442 * nsfns.m (do_applescript, F_do_applescript): NS version of the
8443 Carbon implementation of the same functionality: execute arbitrary
8444 AppleScript code.
8445
84462008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
8447
8448 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
8449 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
8450 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
8451 (Fx_display_mm_height, Fx_display_mm_width)
8452 (Fx_display_backing_store, Fx_display_visual_class)
8453 (Fx_display_save_under, Fx_open_connection)
8454 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
8455 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
8456 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
8457 (Fx_display_pixel_width, Fx_display_pixel_height)
8458 (Fx_display_usable_bounds, Fx_display_planes)
8459 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
8460 ... */' style of docstrings.
8461
84622008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
8463
8464 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
8465 on this platform.
8466 (mips):
8467 * m/iris4d.h (mips): Do not define.
8468 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
8469
8470 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
8471
8472 * image.c:
8473 * nsfns.m:
8474 * nsselect.m:
8475 * nsterm.h:
8476 * nsterm.m: Rename ns prefixed functions/variables to the
8477 corresponding x versions. Update references.
8478
8479 * m/ibms390x.h (NO_REMAP): Do not undefine.
8480
8481 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
8482
84832008-07-21 Chong Yidong <cyd@stupidchicken.com>
8484
8485 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
8486 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
8487 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
8488 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
8489 (Fns_display_mm_height, Fns_display_mm_width)
8490 (Fns_display_backing_store, Fns_display_visual_class)
8491 (Fns_display_save_under, Fns_open_connection)
8492 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
8493 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
8494 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
8495 (Fns_display_pixel_width, Fns_display_pixel_height)
8496 (Fns_display_usable_bounds, Fx_display_planes)
8497 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
8498
84992008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
8500
8501 * print.c (print_object): Check print_depth before searching for
8502 circularities.
8503
85042008-07-21 Michael Albinus <michael.albinus@gmx.de>
8505
8506 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
8507 only sprintf.
8508
85092008-07-21 Kenichi Handa <handa@m17n.org>
8510
8511 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
8512
85132008-07-20 Andreas Schwab <schwab@suse.de>
8514
8515 * syntax.c (find_start_pos, find_start_value)
8516 (find_start_value_byte, find_start_begv, find_defun_start)
8517 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
8518
85192008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
8520
8521 * s/sol2-3.h: Insert contents of s/sol2.h.
8522 (LD_SWITCH_SYSTEM): Remove redundant definition.
8523 * s/sol2.h: Remove, unused.
8524
85252008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8526
8527 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
8528
85292008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8530
8531 * Makefile.in (ns_appdir): Fix typo in find command.
8532
85332008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
8534
8535 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
8536
8537 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
8538 added not supported anymore.
8539
8540 * s/usg5-4-2.h (LIBS_SYSTEM):
8541 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
8542
8543 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
8544 * s/lynxos.h (GETPGRP_NO_ARG):
8545 * s/hpux10-20.h (NO_SIOCTL_H):
8546 * s/gnu.h (GETPGRP_NO_ARG):
8547 * s/gnu-linux.h (NO_SIOCTL_H):
8548 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
8549 * s/cygwin.h (GETPGRP_NO_ARG):
8550 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
8551 (C_DEBUG_SWITCH): Remove duplicate definition.
8552
8553 * m/ibms390.h: Remove boilerplate comments.
8554
8555 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
8556
8557 * process.c (HAVE_SERIAL): Consolidate ifdefs.
8558 (wait_reading_process_output): Remove code for SunOS, platform not
8559 supported anymore. Use SOLARIS2 instead of sun.
8560
85612008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
8562
8563 * font.c (font_open_by_name): Under NS, default lface height to zero.
8564 (font_open_for_lface): Under NS, set size based on frame fontsize.
8565 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
8566 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
8567
85682008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
8569
8570 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
8571 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
8572 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
8573 YES/NO.
8574 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
8575 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
8576 * Makefile.in (clean): Clear out build destination dir.
8577
85782008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
8579
8580 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
8581 xterm, xselect.
8582 * lisp.h: Remove declaration of hash_remove.
8583 * nsgui.h: Remove redefinitions of hash_remove.
8584 * fns.c (hash_remove): Rename to hash_remove_from_table.
8585
85862008-07-19 Seiji Zenitani <zenitani@mac.com>
8587
8588 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
8589 strdup() the family UTF8String before modifying it.
8590
85912008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
8592
8593 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
8594 NS_FACE_BACKGROUND with 0 instead of nil.
8595 * nsfont.m (nsfont_draw): Same.
8596
85972008-07-19 Chong Yidong <cyd@stupidchicken.com>
8598
8599 * nsfns.m (ns_set_background_color): Fix crash.
8600
86012008-07-18 Chong Yidong <cyd@stupidchicken.com>
8602
8603 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
8604
86052008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
8606
8607 * puresize.h (BASE_PURESIZE): Increase to 1240000.
8608
86092008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8610
8611 * gtkutil.c: Include <config.h> instead of "config.h".
8612
8613 * lisp.h (Foverlay_buffer): Add EXFUN.
8614
8615 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
8616 child process to complete child_setup. Undo 2005-09-21 change.
8617
8618 * s/darwin.h: Mention setsid after vfork.
8619
86202008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8621
8622 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
8623 Depend on macgui.h.
8624
8625 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
8626 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
8627
8628 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
8629 and f19.
8630 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
8631
8632 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
8633 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
8634 Remove enumerators.
8635
8636 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
8637 Check if FACE_FROM_ID returns NULL.
8638
86392008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
8640
8641 * w32inevt.c (change_frame_size): Remove extern declaration.
8642 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
8643 change_frame_size.
8644
86452008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
8646
8647 * getloadavg.c: Revert last change (2008-07-15).
8648
86492008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
8650
8651 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 8652 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
8653 from configure.
8654
86552008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
8656
8657 * s/sol2.h:
8658 * s/sol2-4.h: Reorganize conditionals.
8659
8660 * ecrt0.c: Remove code depending on m68000, not used anymore.
8661
8662 * fns.c (hash_remove): Make static.
8663 * lisp.h (hash_remove): Don't prototype.
8664
8665 * m/ibmrs6000.h:
8666 * m/ibms390x.h:
8667 * m/macppc.h: Remove boilerplate comments.
8668
8669 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
8670 Solaris, which does not need them.
8671
8672 * m/vax.h: Remove comments about unsupported systems.
8673
8674 * s/darwin.h: Reorganize ifdefs.
8675
86762008-07-17 Andreas Schwab <schwab@suse.de>
8677
8678 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
8679
86802008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
8681
8682 Use SDATA. Follow coding convention of placing operators at
8683 beginning of next line rather than end of previous line, and placing
8684 spaces around infix operators.
8685
8686 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
8687 in case it was defined already.
8688 USE @GNUSTEP_MAKEFILES@ rather than envvars.
8689 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
8690 ns_default.
8691 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
8692 Lisp_Objects.
8693 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
8694 (ns_defined_color, ns_color_to_lisp): Declare.
8695 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
8696 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
8697 it's accepted even with USE_LISP_UNION_TYPE.
8698 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
8699 (update_frame_tool_bar): Remove apparently obsolete tests for
8700 non-integerness of f->tool_bar_lines.
8701 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
8702 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
8703 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
8704 (nsfont_open): Don't confuse NULL for Qnil.
8705 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
8706 * menu.h (find_and_call_menu_selection):
8707 * menu.c (find_and_call_menu_selection): Use just int for vector size.
8708 (find_and_return_menu_selection): Always return something.
8709 * frame.h: Include dispextern.h for Display_Info.
8710 (display_x_get_resource): Declare.
8711
87122008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
8713
8714 * syntax.c: Remove stdio.h include accidentally introduced in
8715 Emacs.app commit.
8716 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
8717 NS_IMPL_COCOA.
8718 * keyboard.c (handle_async_input, input_available_signal): Remove
8719 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
8720
87212008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
8722
8723 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
8724 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
8725 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
8726 Use SDATA.
8727
8728 * keymap.c: Remove all NS-specific code.
8729 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
8730 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
8731 where_is_preferred_modifier, return a different value depending on how
8732 preferred is the binding.
8733 (where_is_internal): Adjust accordingly.
8734 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
8735 Adjust to new preferred_sequence_p.
8736 (syms_of_keymap): Declare `where-is-preferred-modifier'.
8737 * keyboard.c (parse_solitary_modifier): Not static any more.
8738 * keyboard.h (parse_solitary_modifier): Declare.
8739
87402008-07-16 Andreas Schwab <schwab@suse.de>
8741
8742 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
8743 of easymenu.
8744
87452008-07-16 Chong Yidong <cyd@stupidchicken.com>
8746
8747 * xdisp.c (move_it_in_display_line): Account for word wrap, so
8748 that we don't move off the line.
8749
87502008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
8751
8752 * keyboard.c (Qsuper): Remove.
8753 (parse_menu_item): Don't call where_is_internal specially for NS.
8754
87552008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
8756
8757 * s/gnu-linux.h: Remove boilerplate comments.
8758
8759 * m/alpha.h (__ELF__): Consolidate conditions.
8760
8761 * m/m68k.h (linux): Use GNU_LINUX instead.
8762 Remove boilerplate comments.
8763
8764 * m/intel386.h: Undo refactoring from previous change.
8765 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
8766 too, remove dead code.
8767 (linux): Use GNU_LINUX instead.
8768
87692008-07-16 Jason Rumney <jasonr@gnu.org>
8770
8771 * w32gui.h: Repeat 26 June changes lost by last change.
8772
87732008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
8774
8775 * systty.h: Remove code for Aix on 386, unsupported platform.
8776
8777 * s/ms-w32.h: Remove boilerplate comments.
8778 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
8779
8780 * s/gnu-linux.h (TERM): Remove support.
8781 (HAVE_SYSVIPC): Remove, unused.
8782 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
8783 for this system.
8784
8785 * process.c: Remove support for IRIS, unused.
8786 Remove support for TERM, not relevant anymore.
8787
8788 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
8789 used with the definition.
8790
8791 * s/aix4-2.h (static): Do not undef.
8792
8793 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
8794 only used on Aix.
8795 (HAVE_SYSVIPC): Remove, unused.
8796
8797 * m/hp800.h (CANNOT_DUMP): Do not undef.
8798
8799 * m/alpha.h: Fix comment.
8800
8801 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
8802 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
8803 used by this configuration.
8804 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
8805 * unexec.c: Remove code depending on HPUX and
8806 USG_SHARED_LIBRARIES, not used with this file. Remove code
8807 depending on IRIS, unused. Remove if 0-ed code.
8808
8809 * s/template.h: Remove comments about static.
8810
8811 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
8812 Remove if 0-ed code.
8813 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
8814 were the same as the default.
8815 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
8816 Remove boilerplate comments.
8817 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
8818 (HAVE_SYSVIPC): Remove, unused.
8819 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
8820
8821 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
8822 Remove boilerplate comments.
8823 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
8824 Remove boilerplate comments.
8825 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
8826 Remove boilerplate comments.
8827 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
8828
8829 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
8830 USG systems which do not use DATA_SEG_BITS.
8831 Refactor code. Remove boilerplate comments.
8832
8833 * m/ibms390.h:
8834 * m/m68k.h:
8835 * s/bsd-common.h:
8836 * s/cygwin.h:
8837 * s/darwin.h:
8838 * s/freebsd.h:
8839 * s/gnu.h:
8840 * s/msdos.h: Remove boilerplate comments.
8841
8842 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 8843 do not use this file.
aac0c6e3
MR
8844 (IRIS_4D): Remove, unused.
8845
8846 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 8847 do not use this file.
aac0c6e3
MR
8848 (SIGN_EXTEND_CHAR):
8849 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
8850 * unexmips.c: Remove file, unused.
8851
8852 * editfns.c (Fuser_full_name): Replace the only use of
8853 USER_FULL_NAME with its value.
8854 * config.in: Regenerate.
8855
88562008-07-16 David Reitter <david.reitter@gmail.com>
8857
8858 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
8859 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
8860
88612008-07-16 Glenn Morris <rgm@gnu.org>
8862
8863 * emacs.c (system-type): Doc fix.
8864
88652008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
8866
8867 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
8868 If the cache doesn't work, let's fix it, rather than work around it.
8869
88702008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8871
8872 * Makefile.in: Correct additions for nsfont.o in last commit.
8873 * nsfont.m: New file (forgot last commit).
8874
88752008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
8876
8877 * callproc.c (set_initial_environment): Initialize
8878 Vprocess_environment under CANNOT_DUMP (fixes crash when
8879 batch-compiling for bootstrap).
8880
88812008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
8882 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8883
8884 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
8885 fix crash due to different init order.
8886
88872008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8888
8889 Changes and additions for NeXTstep windowing system (Cocoa and
8890 GNUstep) support.
8891
8892 * Makefile.in:
8893 * config.in: Support defines and build commands for NS port.
8894 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
8895 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
8896 * dispextern.h: Include nsgui.h and add needed typedefs under NS
8897 windowing.
8898 (struct face): Add synth_ital field.
8899 * dispnew.c: Include nsterm.h when compiling under NS windowing.
8900 (init_display): Initialize Vinitial_window_system to "ns" when so
8901 compiled.
8902 * emacs.c: Include GSConfig.h when compiling under GNUstep.
8903 (display_arg): Use under NS.
8904 (main): Under NS, allocate autorelease pool and handle command line
8905 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
8906 (standard_args): Add NS-specific args.
8907 (shut_down_emacs): Shut down NS terminal if compiled under NS.
8908 * font.c (DEFAULT_ENCODING): New variable.
8909 (font_find_for_lface): Use it.
8910 (syms_of_font): Load syms_of_nsfont under NS.
8911 * font.h: Declare nsfont_driver when compiled under NS.
8912 * fontset.c: When compiling under NS, include nsterm.h.
8913 (fontset_from_font): Autoconstruct fontset under NS.
8914 * frame.c (various): Under NS, include nsterm.h, add Qns window system
8915 symbol, document and use it.
8916 (do_switch_frame): When for_deletion under Cocoa, add
8917 Fraise_frame(Qnil).
8918 (x_set_frame_parameters): Ensure font attribute changes are picked up.
8919 (x_get_arg): Allow "yes" and "no" as boolean values.
8920 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
8921 Qright under Cocoa.
8922 (focus-follows-mouse): Default to 0 under NS.
8923 * frame.h (enum output_method): Add output_ns.
8924 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
8925 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
8926 (FRAME_WINDOW_P): NS-specific definition.
8927 * fringe.c (max_used_fringe_bitmap): Make public.
8928 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
8929 (getloadavg): Use NeXT code under descendant OS's.
8930 * image.c (includes and header section, x_create_bitmap_from_data)
8931 (x_create_bitmap_from_file, free_bitmap_record, image_background)
8932 (image_background_transparent, x_clear_image_1)
8933 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
8934 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
8935 (x_to_xcolors, x_from_xcolors, x_disable_image)
8936 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
8937 other GUIs, including XPM support using code originally written for
8938 Carbon GUI.
8939 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
8940 using NS API.
8941 (image_ascent): Use font metrics macros instead of direct struct field
8942 access.
8943 * keyboard.c (includes): Add nsterm.h when compiling under NS.
8944 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
8945 Also, handle NS as GTK for menu bar purposes.
8946 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
8947 toolkit where they differ.
8948 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
8949 use cachelist, still needed under NS.
8950 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
8951 (struct widget_value): Define it here for menu.c.
8952 * keymap.c (includes): Include modifier internals.
8953 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
8954 NS.
8955 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
8956 support for preferring sequences using certain modifiers, specified by
8957 the FIRSTONLY argument.
8958 * lisp.h (hash_remove): Rename to avoid name clash when compiling
8959 under NS GNUstep implementation.
8960 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
8961 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
8962 * menu.c: Include nsterm.h under NS.
8963 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
8964 (free_menubar_widget_tree_value, update_submenu_strings)
8965 (find_and_call_menu_selection): Treat NS as X and NT.
8966 (find_and_return_menu_selection): New function, used for popup menus.
8967 * nsgui.h:
8968 * nsterm.h:
8969 * nsfns.m:
8970 * nsimage.m:
8971 * nsmenu.m:
8972 * nsselect.m:
8973 * nsterm.m: New files.
8974 * process.c (wait_reading_process_output): Under NS, call ns_select()
8975 instead of plain select().
8976 * syntax.c (char_quoted): Under NS, avoid a crash when called near
8977 beginning of buffer.
8978 * sysselect.h (init_process): Rename when compiling under Cocoa to
8979 avoid name conflict.
8980 * termhooks.h (display_info): Add ns_display_info to union.
8981 * terminal.c (Fterminal_live_p): Add ns to terminal types.
8982 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
8983 COCOA environment.
8984 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
8985 unexec() signature. (Note, this will dump, but the resulting file
8986 crashes; unexosx is used instead; keeping around for reference and
8987 possible aid in getting dump working under GNUstep.)
8988 * w32gui.h (button_type, widget_value): Remove definitions (now in
8989 keyboard.h).
8990 * window.c: Include nsterm.h when compiling under NS.
8991 * xdisp.c (includes): Include nsterm.h when compiling under NS.
8992 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
8993 other GUI windowing systems.
8994 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
8995 GTK.
8996 (x_consider_frame_title): Under NS, set icon type and frame
8997 modified-state indicator; use ns_set_name_as_filename() when using
8998 formatted title.
8999 (update_window_cursor): Make public when compiling under NS.
9000 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
9001 (hourglass_atimer, Vhourglass_delay
9002 * xfaces.c (header section, init_frame_faces, clear_font_table)
9003 (defined_color, unload_color, x_face_list_fonts)
9004 (prepare_face_for_display): Add NS support parallel to other GUIs.
9005 Emulate GCs like other non-X GUIs.
9006 (split_font_name): Don't lowercase font name under NS.
9007 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
9008 under NS.
9009 * s/darwin.h: Add support for compilation under NS.
9010
90112008-07-15 Jason Rumney <jasonr@gnu.org>
9012
9013 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
9014 (w32_show_hourglass): Rename from show_hourglass.
9015 (w32_hide_hourglass): Rename from hide_hourglass.
9016 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
9017 (Vhourglass_delay): Declare extern.
9018 (hourglass_started): Remove.
9019
9020 * xdisp.c (Vhourglass_delay): Remove static.
9021 (hourglass_started, start_hourglass, cancel_hourglass):
9022 Don't include these versions on WINDOWSNT.
9023
90242008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9025
9026 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
9027 variables (formerly in xfns.c).
9028 (show_hourglass, hide_hourglass): New prototypes (same).
9029 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
9030 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
9031 in xfns.c).
9032 (syms_of_xdisp): Declare/initialize display-hourglass,
9033 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
9034 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
9035 formerly in xfns.c.
9036 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
9037 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
9038 (start_hourglass, cancel_hourglass): Remove.
9039 (show_hourglass, hide_hourglass): Remove prototypes and static
9040 modifiers.
9041 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
9042 hourglass_atimer, hourglass_shown_p declaration/initialization.
9043 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
9044 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
9045 (start_hourglass, cancel_hourglass): Remove.
9046 (show_hourglass, hide_hourglass): Remove prototypes and static
9047 modifiers.
9048 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
9049 hourglass_atimer, hourglass_shown_p declaration/initialization.
9050 * w32fns.c (display_hourglass_p, Vhourglass_delay)
9051 (DEFAULT_HOURGLASS_DELAY): Remove.
9052 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
9053 hourglass_shown_p declaration/initialization.
9054
90552008-07-14 Jason Rumney <jasonr@gnu.org>
9056
9057 * w32fns.c (w32_get_arg): Remove wrapper function.
9058 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
9059 directly.
9060 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
9061
90622008-07-14 Kenichi Handa <handa@m17n.org>
9063
9064 * xfont.c (xfont_open): Add workaround for X's bug.
9065
90662008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9067
9068 * fontset.c: Include <stdio.h> unconditionally.
9069
90702008-07-13 Michael Albinus <michael.albinus@gmx.de>
9071
9072 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
9073 for filtering.
9074
90752008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
9076
9077 * s/vms.h: Use __GNUC__ instead of _GNUC_.
9078
9079 * m/macppc.h:
9080 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
9081
9082 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
9083 (SPECIAL_EMACS_INT):
9084 * m/ia64.h (SPECIAL_EMACS_INT):
9085 * m/amdx86-64.h (SPECIAL_EMACS_INT):
9086 * s/gnu.h (NLIST_STRUCT):
9087 * s/aix4-2.h (X11R5_INHIBIT_I18N):
9088 * s/gnu-linux.h (LINUX):
9089 * s/msdos.h (HAVE_FACES):
9090 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
9091
9092 * systty.h:
9093 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
9094 anymore.
9095
90962008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
9097
9098 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
9099 always defined as int.
9100
9101 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
9102 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
9103 * s/gnu-linux.h (HAVE_WAIT_HEADER):
9104 * s/freebsd.h (HAVE_WAIT_HEADER):
9105 * s/bsd-common.h (HAVE_UNION_WAIT):
9106 * s/aix4-2.h (HAVE_WAIT_HEADER):
9107 * m/mips.h (HAVE_UNION_WAIT):
9108 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
9109 (COFF, static): Do not define, they are undefined later in the file.
9110
9111 * process.c (update_status): Don't use a union.
9112 (status_convert):
9113 (sigchld_handler): Use int instead of WAITTYPE.
9114
91152008-07-12 Chong Yidong <cyd@stupidchicken.com>
9116
9117 * indent.c (Fvertical_motion): Restore hscroll before moving to
9118 goal column.
9119
91202008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
9121
9122 * lisp.h: Remove left over code.
9123
91242008-07-11 Andreas Schwab <schwab@suse.de>
9125
9126 * lisp.h: Fix logic in last change.
9127
9128 * menu.h: New file.
9129 * menu.c: Include it.
9130 * xmenu.c: Likewise.
9131 * Makefile.in: Update dependencies.
9132
91332008-07-11 Kenichi Handa <handa@m17n.org>
9134
9135 * fontset.c (fontset_from_font): Cancel the previous change.
9136
91372008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
9138
9139 * lisp.h:
9140 * w32heap.c:
9141 * emacs.c:
9142 * alloc.c: Replace all references of NO_UNION_TYPE with
9143 USE_LISP_UNION_TYPE.
9144
9145 * m/xtensa.h (NO_UNION_TYPE):
9146 * m/vax.h (NO_UNION_TYPE):
9147 * m/template.h (NO_UNION_TYPE):
9148 * m/sparc.h (NO_UNION_TYPE):
9149 * m/mips.h (NO_UNION_TYPE):
9150 * m/macppc.h (NO_UNION_TYPE):
9151 * m/m68k.h (NO_UNION_TYPE):
9152 * m/iris4d.h (NO_UNION_TYPE):
9153 * m/intel386.h (NO_UNION_TYPE):
9154 * m/ibms390x.h (NO_UNION_TYPE):
9155 * m/ibms390.h (NO_UNION_TYPE):
9156 * m/ibmrs6000.h (NO_UNION_TYPE):
9157 * m/ia64.h (NO_UNION_TYPE):
9158 * m/hp800.h (NO_UNION_TYPE):
9159 * m/arm.h (NO_UNION_TYPE):
9160 * m/amdx86-64.h (NO_UNION_TYPE):
9161 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
9162 defining it the same.
9163
91642008-07-10 Chong Yidong <cyd@stupidchicken.com>
9165
9166 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
9167
91682008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
9169
9170 * fileio.c:
9171 * sysdep.c
9172 * systty.h:
9173 * m/ibmrs6000.h:
9174 * m/iris4d.h:
9175 * s/aix4-2.h:
9176 * s/freebsd.h:
9177 * s/gnu-linux.h:
9178 * s/hpux10-20.h:
9179 * s/hpux11.h:
9180 * s/netbsd.h:
9181 * s/sol2-3.h:
9182 * s/sol2-4.h:
9183 * s/sol2.h:
9184 * s/usg5-4.h:
9185 * s/vms.h: Remove references to unused variables.
9186
91872008-07-10 Andreas Schwab <schwab@suse.de>
9188
9189 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
9190 pattern before matching the generic family.
9191
91922008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
9193
9194 * unexec.c:
9195 * s/vms.h:
9196 * s/usg5-4-2.h:
9197 * s/sol2-5.h:
9198 * s/freebsd.h:
9199 * s/darwin.h: Remove dead code.
9200
9201 * m/template.h:
9202 * m/sparc.h:
9203 * m/mips.h:
9204 * m/m68k.h:
9205 * m/iris4d.h:
9206 * m/intel386.h:
9207 * m/ibms390x.h:
9208 * m/ibms390.h:
9209 * m/ia64.h:
9210 * m/hp800.h:
9211 * m/arm.h:
9212 * m/amdx86-64.h: Remove dead code and references to unused
9213 and compiler defined symbols.
9214
9215 * unexmips.c:
9216 * unexelf.c: Remove references to desupported systems.
9217
9218 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
9219
9220 * m/powermac.h: Remove boilerplate comments.
9221 (NO_REMAP): Remove unused definition.
9222
9223 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
9224 define them.
9225
92262008-07-10 Kenichi Handa <handa@m17n.org>
9227
9228 * xfont.c (xfont_open): Log the reason of failure.
9229
92302008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
9231
9232 * fontset.c (fontset_get_font_group):
9233 * font.c (font_check_otf): Specify argument types.
9234
92352008-07-09 Kenichi Handa <handa@m17n.org>
9236
9237 * coding.c (detect_coding_utf_8): Set detect_info->found only when
9238 non-ASCII char is found.
9239
9240 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
9241 (reorder_font_vector): Change the arg preferred_family to font.
9242 Prefer the spec matching with font.
9243 (fontset_get_font_group): New function.
9244 (fontset_find_font): Change the format of an element of a realized
9245 fontset. Use fontset_get_font_group.
9246 (fontset_font): Try the current fontset, the default fontset, the
9247 fallbacks of the current fontset, and the fallbacks of the default
9248 fontset in this order.
9249 (face_for_char): Delete the shortcut to use the current font.
9250 (fontset_from_font): Don't set fonts for Latin in the fontset.
9251
9252 * font.h (font_make_object, font_match_p): Adjust prototypes.
9253
9254 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
9255
9256 * font.c (font_make_object): New arg entity and pixelsize.
9257 (font_check_otf_features, font_check_otf): New functions.
9258 (font_match_p): Check :lang, :script, and :otf properties.
9259
9260 * xfont.c (xfont_open): Adjust it for the change of
9261 font_make_object.
9262 (xfont_text_extents): Fix initial setting of metrics.
9263
9264 * ftfont.c (struct ftfont_info): New member index, delete member
9265 fc_charset_idx. Make the member order compatible with struct
9266 xftfont_info.
9267 (fc_charset_table): Change charset names to registry names.
9268 (ftfont_pattern_entity): Delete the args registry and
9269 fc_charset_idx. Change the value of :font-entity property
9270 to (FONTNAME . INDEX). Always set :registry property to
9271 `iso10646-1'.
9272 (struct ftfont_cache_data): New struct.
9273 (ftfont_lookup_cache): New arg for_face.
9274 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
9275 (ftfont_driver): Set the member otf_capability.
9276 (ftfont_get_charset): Adjust it for the change of
9277 fc_charset_table.
9278 (OTF_TAG_SYM): New macro.
9279 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
9280 for the change of fc_charset_table.
9281 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
9282 ftfont_pattern_entity. Add FC_INDEX to objset.
9283 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
9284 and ftfont_pattern_entity.
9285 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
9286 font_make_object, struct ftfont_info.
9287 (ftfont_has_char): Use ftfont_get_fc_charset.
9288 (ftfont_otf_features, ftfont_otf_capability): New functions.
9289 (ftfont_shape): Use ftfont_get_otf.
9290 (ftfont_text_extents): Fix initial setting of metrics.
9291
9292 * xftfont.c (struct xftfont_info): New member ft_size. Make the
9293 member order compatible with struct ftfont_info.
9294 (xftfont_open): Add FC_CHARSET to the pattern. Set
9295 xftfont_info->ft_size. Don't unlock the face. Check BDF
9296 properties if appropriate.
9297 (xftfont_close): Unlock the face.
9298 (xftfont_anchor_point, xftfont_shape): Deleted.
9299 (syms_of_xftfont): Don't set members anchor_point and shape of
9300 xftfont_driver.
9301
9302 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
9303 font_make_object.
9304
9305 * w32font.c (w32font_open): Adjust it for the change of
9306 font_make_object.
9307 (w32font_open_internal): Don't set properties of font_object here.
9308
93092008-07-08 Chong Yidong <cyd@stupidchicken.com>
9310
9311 * macfns.c (x_create_tip_frame):
9312 * w32fns.c (x_create_tip_frame):
9313 * xfns.c (x_create_tip_frame): Pass parameter argument to
9314 face-set-after-frame-default.
9315
9316 * xfaces.c (Finternal_merge_in_global_face): Save merged
9317 attributes for the default face back into the face vector.
9318
93192008-07-08 Andreas Schwab <schwab@suse.de>
9320
9321 * fontset.h: Declare fontset_from_font. Don't declare
9322 new_fontset_from_font and fontset_from_font_name.
9323 * xterm.c: Include "fontset.h".
9324 * Makefile.in (xterm.o): Update dependencies.
9325
93262008-07-08 Glenn Morris <rgm@gnu.org>
9327
9328 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
9329 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
9330
93312008-07-07 Chong Yidong <cyd@stupidchicken.com>
9332
9333 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
9334 (x_set_frame_parameters): Don't bind it.
9335
93362008-07-07 Juanma Barranquero <lekktu@gmail.com>
9337
9338 * w32fns.c (map_w32_filename): Declare extern.
9339
93402008-07-07 Jason Rumney <jasonr@gnu.org>
9341
9342 * w32term.c (WS_EX_LAYERED): Define if not already.
9343
93442008-07-06 Chong Yidong <cyd@stupidchicken.com>
9345
9346 * xfaces.c (set_font_frame_param): Don't try to set the font
9347 parameter if it is still unspecified in the lface.
9348
93492008-07-05 Chong Yidong <cyd@stupidchicken.com>
9350
9351 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
9352 face if it didn't already exist.
9353
9354 * xdisp.c (try_window_id): Give up if word-wrapping is on.
9355
93562008-07-05 Andreas Schwab <schwab@suse.de>
9357
9358 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
9359
93602008-07-05 Chong Yidong <cyd@stupidchicken.com>
9361
9362 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
9363 word-wrapping.
9364 (IT_DISPLAYING_WHITESPACE): New macro.
9365 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
9366 when word-wrapping. Simplify word-wrapping logic. Use correct
9367 pixel positions when saving copies of the iterator.
9368 (display_line): Use proper wrap point if the last character on a
9369 line was preceded by whitespace.
9370
93712008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
9372
9373 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
9374
93752008-07-04 Kenichi Handa <handa@m17n.org>
9376
9377 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
9378
9379 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
9380
93812008-07-02 Jason Rumney <jasonr@gnu.org>
9382
9383 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 9384 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
9385
9386 * xdisp.c (next_element_from_display_vector): Move assignment out
9387 of if statement.
9388
93892008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
9390
9391 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
9392
9393 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
9394 (syms_of_fileio): Initialize and export them.
9395 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
9396
9397 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
9398 (Fsystem_move_file_to_trash): New function.
9399 (syms_of_w32fns): Export it to lisp.
9400
94012008-07-01 Jason Rumney <jasonr@gnu.org>
9402
9403 * w32font.c (w32font_text_extents): Don't count overhang as part
9404 of width.
9405
94062008-06-30 Miles Bader <miles@gnu.org>
9407
9408 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
9409 Add `avoid_cursor_p' field.
9410
9411 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
9412 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
9413 (append_glyph, append_composite_glyph, produce_image_glyph)
9414 (append_stretch_glyph): Initialize avoid_cursor_p.
9415 (get_it_property): Rename from `get_line_height_property'.
9416 (x_produce_glyphs): Use get_it_property.
9417 (handle_line_prefix, push_display_prop): New functions.
9418 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
9419 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
9420 New variables.
9421 (syms_of_xdisp): Initialize them.
9422
94232008-06-30 Kenichi Handa <handa@m17n.org>
9424
9425 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
9426 XftDefaultSubstitute (they are called in XftFontMatch).
9427 (xftfont_open): Fix args to ftfont_font_format.
9428
9429 * ftfont.c (fc_charset_table): New member lang.
9430 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 9431 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
9432 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
9433 (ftfont_open): Fix args to ftfont_font_format.
9434 (ftfont_font_format): New arg filename.
9435
94362008-06-30 Chong Yidong <cyd@stupidchicken.com>
9437
9438 * xfaces.c (Finternal_merge_in_global_face): If default face was
9439 modified, realize it again. Update the font face attribute.
9440
94412008-06-29 Jason Rumney <jasonr@gnu.org>
9442
9443 * w32term.c (x_set_frame_alpha): Fix logic.
9444
94452008-06-29 Kenichi Handa <handa@m17n.org>
9446
9447 * fontset.c (Finternal_char_font): Return font-object instead of
9448 font-name.
9449
9450 * composite.c (get_composition_id): Fix the width calculation for TAB.
9451
94522008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
9453
9454 * indent.c (Fvertical_motion): Properly handle float column arg.
9455
94562008-06-28 Jason Rumney <jasonr@gnu.org>
9457
9458 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
9459 (pfnSetLayeredWindowAttributes): New function pointer.
9460 (w32_initialize): Initialize it when supported.
9461 (x_set_frame_alpha): New function.
9462
9463 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
9464 (w32_frame_parm_handlers): Set alpha handler.
9465
9466 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
9467
94682008-06-27 Jason Rumney <jasonr@gnu.org>
9469
9470 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
9471 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
9472 (w32_to_x_charset, x_to_w32_charset)
9473 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
9474 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
9475 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
9476 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
9477 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
9478 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
9479 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
9480 (Qw32_charset_unicode): Remove.
9481 (syms_of_w32fns): Update for above changes.
9482
9483 * w32font.c (w32_to_x_charset, x_to_w32_charset)
9484 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
9485 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
9486 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
9487 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
9488 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
9489 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
9490 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
9491 (syms_of_w32font): Update for above changes.
9492
94932008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
9494
9495 * s/usg5-4.h: Fix previous change: keep the correct branch of a
9496 removed #if.
9497 (USG_SHARED_LIBRARIES): Remove duplicate definition.
9498
94992008-06-26 Juanma Barranquero <lekktu@gmail.com>
9500 Eli Zaretskii <eliz@gnu.org>
9501
9502 * makefile.w32-in (LOCAL_FLAGS):
9503 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
9504
9505 * sysdep.c (_spawnlp, _getpid):
9506 Declare with explicit _cdecl instead of _CRTAPI1.
9507
9508 * editfns.c (Fget_internal_run_time):
9509 Check for WINDOWSNT with #ifdef, not #if.
9510
95112008-06-26 Jason Rumney <jasonr@gnu.org>
9512
9513 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
9514
9515 * w32term.c (x_draw_glyph_string_foreground)
9516 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
9517 Use FONT_HANDLE macro.
9518 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
9519
9520 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
9521 (uniscribe_encode_char): Use FONT_HANDLE macro.
9522
9523 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
9524 (w32font_text_extents): Use precast w32_font.
9525 (w32font_close): Free cached metrics.
9526 (w32font_open_internal): Allocate space for name on stack.
9527
95282008-06-26 Chong Yidong <cyd@stupidchicken.com>
9529
9530 * xdisp.c (extend_face_to_end_of_line): Fix last change.
9531
95322008-06-26 Jason Rumney <jasonr@gnu.org>
9533
9534 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
9535 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
9536
95372008-06-26 Juanma Barranquero <lekktu@gmail.com>
9538
9539 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
9540
95412008-06-26 Jason Rumney <jasonr@gnu.org>
9542
9543 * w32bdf.c, w32bdf.h: Remove obsolete files.
9544
9545 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
9546
9547 * w32gui.h: Don't include w32bdf.h.
9548 (XCharStruct, enum w32_char_font_type, W32FontStruct):
9549 Remove obsolete font support.
9550
9551 * w32font.h (struct w32font_info): Remove compat_w32_font.
9552 Add hfont member.
9553 (FONT_COMPAT): Remove obsolete macro.
9554
9555 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
9556 (w32font_encode_char, w32font_text_extents): Use new hfont member.
9557 (w32font_open_internal): Remove compat code. Set new hfont member.
9558 (Fx_select_font): Use new hfont member.
9559
9560 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
9561 (uniscribe_encode_char): Use new hfont member.
9562
9563 * w32term.c (x_draw_glyph_string_foreground)
9564 (x_draw_composite_glyph_string_foreground): Use new hfont member.
9565 (x_draw_glyph_string): Use metrics in w32font_info.
9566
95672008-06-26 Kenichi Handa <handa@m17n.org>
9568
9569 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
9570
95712008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
9572
9573 * unexnext.c:
9574 * m/ews4800.h:
9575 * m/hp9000s300.h:
9576 * m/ibm370aix.h:
9577 * m/mips-siemens.h:
9578 * m/ncr386.h:
9579 * m/next.h:
9580 * m/pmax.h:
9581 * m/powerpcle.h:
9582 * m/tandem-s2.h:
9583 * s/386bsd.h:
9584 * s/bsd386.h:
9585 * s/bsd4-1.h:
9586 * s/bsd4-2.h:
9587 * s/bsdos2-1.h:
9588 * s/bsdos2.h:
9589 * s/bsdos3.h:
9590 * s/bsdos4.h:
9591 * s/nextstep.h:
9592 * s/ultrix4-3.h:
9593 * s/usg5-0.h:
9594 * s/usg5-2-2.h:
9595 * s/usg5-2.h:
9596 * s/usg5-4-3.h:
9597 * s/ux4800.h:
9598 * s/uxpds.h:
9599 * s/uxpv.h: Remove support for obsolete systems.
9600 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 9601 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
9602 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
9603 Remove, insert contents in s/aix4-2.h.
9604 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
9605 * s/bsd4-3.h: Rename to ...
9606 * s/bsd-common.h: ... this.
9607 * data.c:
9608 * doc.c:
9609 * ecrt0.c:
9610 * emacs.c:
9611 * fileio.c:
9612 * floatfns.c:
9613 * keyboard.c:
9614 * mem-limits.h:
9615 * print.c:
9616 * process.c:
9617 * sysdep.c:
9618 * syssignal.h:
9619 * systty.h:
9620 * syswait.h:
9621 * term.c:
9622 * unexec.c:
9623 * unexelf.c:
9624 * unexhp9k800.c:
9625 * m/hp800.h:
9626 * m/ibmrs6000.h:
9627 * m/mips.h:
9628 * m/vax.h:
9629 * s/darwin.h:
9630 * s/freebsd.h:
9631 * s/gnu.h:
9632 * s/ms-w32.h:
9633 * s/msdos.h:
9634 * s/netbsd.h:
9635 * s/template.h: Remove references to obsolete variables.
9636
9637 * Makefile.in: Add dependencies for all unexec files.
9638 (admindir): Remove unused variable.
9639 (UNEXEC_SRC): Remove references.
9640
96412008-06-25 Chong Yidong <cyd@stupidchicken.com>
9642
9643 * xfns.c (x_default_font_parameter): If Xft is available, first
9644 try Monospace-12 for the default font.
9645
96462008-06-25 Jason Rumney <jasonr@gnu.org>
9647
9648 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
9649
96502008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
9651
9652 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
9653
9654 * buffer.c (syms_of_buffer): Remove default-word-wrap.
9655
96562008-06-25 Juanma Barranquero <lekktu@gmail.com>
9657
9658 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
9659 <scroll-conservatively>: Fix typo in docstring.
9660
9661 * xselect.c (Fx_send_client_event): Doc fix.
9662
96632008-06-25 Kenichi Handa <handa@m17n.org>
9664
9665 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
9666
9667 * font.c (font_parse_fcname): Remove unused variables.
9668 (font_sort_entites): Delete the arg SPEC. Caller changed.
9669 Fix for the case of ! best_only.
9670 (font_delete_unmatched): Check DPI and AVGWIDTH too.
9671
9672 * lisp.h (Fstring_to_unibyte): EXFUN it.
9673
9674 * character.h (str_to_unibyte): Extern it.
9675
9676 * character.c (str_to_unibyte): New function.
9677
9678 * fns.c (Fstring_to_unibyte): New function.
9679 (syms_of_fns): Defsubr it.
9680
96812008-06-24 Kenichi Handa <handa@m17n.org>
9682
9683 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
9684 DPI too.
9685 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
9686
96872008-06-24 Andreas Schwab <schwab@suse.de>
9688
9689 * Makefile.in (${lispsource}loaddefs.el): Rename from
9690 ../lisp/loaddefs.el.
9691 (bootstrap-clean): Do what distclean does but don't remove
9692 Makefile.
9693 (distclean): Depend on bootstrap-clean and remove Makefile.
9694
96952008-06-24 Chong Yidong <cyd@stupidchicken.com>
9696
9697 * buffer.h (struct buffer): New member word_wrap.
9698
9699 * buffer.c (syms_of_buffer): New variables default-word-wrap and
9700 word-wrap.
9701 (init_buffer_once): Initialize them.
9702
9703 * dispextern.h (struct it): Replace bool truncate_lines_p with a
9704 line_wrap enum possessing three possible values.
9705
9706 * termopts.h: Replace truncate_partial_width_windows with
9707 Vtruncate_partial_width_windows.
9708
9709 * dispnew.c (direct_output_for_insert): Avoid direct output when
9710 inserting a space with word wrap on.
9711
9712 * indent.c (compute_motion): Obey integer values of
9713 truncate-partial-width-windows.
9714
9715 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
9716 replacing truncate_partial_width_windows.
9717 (init_iterator): If Vtruncate_partial_width_windows is an integer,
9718 truncate only if the window width is below that integer.
9719 (start_display, resize_mini_window, produce_stretch_glyph)
9720 (display_string, move_it_in_display_line_to): Use line_wrap.
9721 (back_to_previous_visible_line_start, reseat_1): Reset
9722 string_from_display_prop_p.
9723 (display_line): Extend default face to end of line when wrapping.
9724
97252008-06-24 Kim F. Storm <storm@cua.dk>
9726
9727 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
9728 to wrap continued lines at word boundaries.
9729
97302008-06-24 Jason Rumney <jasonr@gnu.org>
9731
9732 * font.c (Ffont_face_attributes): Multiply pixel size before point
9733 conversion to avoid multiplying rounding error.
9734
97352008-06-23 Jason Rumney <jasonr@gnu.org>
9736
9737 * w32term.c (x_draw_glyph_string_background)
9738 (x_draw_glyph_string): Remove old bdf font code.
9739
9740 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
9741
97422008-06-22 Kenichi Handa <handa@m17n.org>
9743
9744 * font.c (font_find_for_lface): Try the adstyle specified in
9745 the property of LFACE_FONT of LFACE (if any).
9746
97472008-06-21 Seiji Zenitani <zenitani@mac.com>
9748 Ryo Yoshitake <ryo@shiftmode.net>
9749
9750 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
9751
97522008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
9753
9754 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
9755 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
9756 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
9757 (witness-emacs): Remove.
9758 (lisp, shortlisp): Move loaddefs.el earlier.
9759 (mostlyclean): Forget about witness-emacs.
9760
97612008-06-22 Glenn Morris <rgm@gnu.org>
9762
9763 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
9764 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
9765
97662008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
9767
9768 * Makefile.in (PRECOMP): Remove.
9769 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
9770 (witness-emacs): Run `compile-first'.
9771 (.el.elc): Use the new compile-onefile target.
9772
97732008-06-21 Kenichi Handa <handa@m17n.org>
9774
9775 * xftfont.c (xftfont_open): Handle QCembolden only when
9776 FC_EMBOLDEN is defined.
9777
97782008-06-21 Andreas Schwab <schwab@suse.de>
9779
9780 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
9781 (.el.elc): Likewise.
9782
97832008-06-21 Miles Bader <miles@gnu.org>
9784
9785 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
9786 build dir, not the lisp source dir.
9787
97882008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
9789
9790 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
9791 (bootstrapclean): Remove.
9792 (.el.elc): New rule.
9793 (PRECOMP): New var.
9794 (../lisp/subdirs.el): Remove.
9795 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
9796 (witness-emacs): New target.
9797 (mostlyclean): Remove witness-emacs as well.
9798 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
9799 Add witness-emacs dependency.
9800
98012008-06-20 Chong Yidong <cyd@stupidchicken.com>
9802
9803 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
9804 defined by the font.
9805
98062008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
9807
9808 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
9809 (bootstrap-clean): New target that keeps TAGS around.
9810 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
9811 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
9812
98132008-06-20 Jason Rumney <jasonr@gnu.org>
9814
9815 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
9816 Remove obsolete font code.
9817
9818 * w32font.c (font_matches_spec): Use csb bitfield from font signature
9819 to determine language support.
9820
98212008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
9822
9823 * sysdep.c (cfsetspeed): New fun extracted from the code.
9824 (cfmakeraw): Move before first use.
9825
98262008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
9827
9828 * sysdep.c (cfmakeraw): Provide fallback implementation.
9829 (serial_configure): Provide fallback implementation of cfsetspeed.
9830
98312008-06-20 Kenichi Handa <handa@m17n.org>
9832
9833 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
9834 the pattern.
9835
9836 * fontset.c (fontset_from_font): Copy font_spec before changing
9837 the elements.
9838
9839 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
9840
98412008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
9842
9843 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
9844 for explicit `font' parameters.
9845
9846 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
9847
98482008-06-19 Kenichi Handa <handa@m17n.org>
9849
9850 * frame.c: Include <ctype.h>.
9851 (x_set_font_backend): Allow spacing characters in the X resource
9852 for FontBackend.
9853
98542008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
9855
9856 * w32fns.c, xfns.c (Qfont_param): New var.
9857 (syms_of_w32fns): Initialize it.
9858 (x_default_font_parameter): Record explicit `font' into
9859 `font-parameter'.
9860
98612008-06-18 Kenichi Handa <handa@m17n.org>
9862
9863 * font.c (font_parse_xlfd): Fix previous change.
9864 (font_parse_fcname): Don't use :fc-unknown-spec.
9865 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
9866 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
9867 (font_add_log): Prepend the driver name to the resulting fonts.
9868
9869 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
9870 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
9871 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
9872
9873 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
9874 (QCembolden): New variables.
9875 (syms_of_xftfont): DEFSYM them.
9876 (xftfont_open): Call XftFontMatch. Don't trust the result of
9877 XftTextExtents8 if the pixel_size is less than 5.
9878
98792008-06-18 Andreas Schwab <schwab@suse.de>
9880
9881 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
9882 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
9883
98842008-06-18 Jason Rumney <jasonr@gnu.org>
9885
9886 * w32font.c (w32font_list, w32font_match): Add logging.
9887
9888 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
9889
98902008-06-17 Chong Yidong <cyd@stupidchicken.com>
9891
9892 * font.c (font_parse_fcname): Store divider characters for
9893 unknown-spec list. For known key symbols, intern using correct
9894 symbol name.
9895
98962008-06-17 Kenichi Handa <handa@m17n.org>
9897
9898 * xfaces.c (realize_default_face): If the frame is not on window
9899 system, set the fontset of face to nil.
9900
99012008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
9902
9903 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
9904
99052008-06-16 Juanma Barranquero <lekktu@gmail.com>
9906
9907 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
9908 (build_font_name_from_vector): Delete externs.
9909
9910 * xfaces.c (struct font_name): Don't declare.
9911
99122008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
9913
9914 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
9915
99162008-06-16 Chong Yidong <cyd@stupidchicken.com>
9917
9918 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
9919
99202008-06-16 Juanma Barranquero <lekktu@gmail.com>
9921
9922 * font.c (Ffont_spec): Fix usage in docstring.
9923 (Ffont_face_attributes): Doc fix.
9924
99252008-06-16 Andreas Schwab <schwab@suse.de>
9926
9927 * font.c (Ffont_face_attributes): Fix definition.
9928
99292008-06-16 Jason Rumney <jasonr@gnu.org>
9930
9931 * font.h (font_style_symbolic_from_value): Remove.
9932
9933 * font.c (font_style_symbolic_from_value): Remove.
9934 (font_style_symbolic): Revert to pre 2008-06-13 version.
9935
9936 * w32font.c (w32_to_fc_weight): New function.
9937 (w32font_full_name, logfont_to_fcname): Use it.
9938
99392008-06-16 Kenichi Handa <handa@m17n.org>
9940
9941 * font.c (font_check_object): Delete it.
9942 (font_clear_cache): Check if a font-object is alive.
9943 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
9944 font-object to nil.
9945 (font_close_object): Don't check FONT_CLOSE_OBJECT.
9946 (font_at): Don't call font_check_object.
9947 (Ffont_get): Return a symbol for :weight, :slant, and :width.
9948
99492008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
9950
9951 * puresize.h (BASE_PURESIZE): Increase to 1230000.
9952
99532008-06-16 Chong Yidong <cyd@stupidchicken.com>
9954
9955 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
9956
99572008-06-15 Chong Yidong <cyd@stupidchicken.com>
9958
9959 * font.c (font_parse_fcname): Only one decimal point.
9960 (font_unparse_fcname): Handle data in family and foundry indices
9961 as symbols, not strings.
9962 (font_unparse_gtkname, Ffont_face_attributes): New functions.
9963
9964 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
9965
9966 * font.h (font_unparse_gtkname): Add prototype.
9967
99682008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
9969
9970 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
9971
99722008-06-15 Andreas Schwab <schwab@suse.de>
9973
9974 * font.c (font_update_drivers): Fix crash when no drivers match.
9975
99762008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
9977
9978 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
9979 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
9980
99812008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
9982
9983 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
9984
99852008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
9986
9987 * process.c (Fserial_process_configure, Fprocess_send_eof):
9988 Use EQ to compare Lisp_Objects.
9989
99902008-06-13 Jason Rumney <jasonr@gnu.org>
9991
9992 * w32fns.c (Fw32_select_font): Remove old font API function.
9993
9994 * w32font.c (logfont_to_fcname): New function.
9995 (Fx_select_font): New font dialog function compatible with
9996 GTK/fontconfig version.
9997
9998 * font.c (font_style_symbolic_from_value): New function.
9999 (font_style_symbolic): Use it.
10000
10001 * font.h (font_style_symbolic_from_value): Declare new function.
10002
100032008-06-13 Juanma Barranquero <lekktu@gmail.com>
10004
10005 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
10006 <font-width-table>: Fix typos in docstrings.
10007
100082008-06-13 Daniel Engeler <engeler@gmail.com>
10009
10010 These changes add serial port access.
10011 * process.c: Add HAVE_SERIAL.
10012 (Fdelete_process, Fprocess_status, Fset_process_buffer)
10013 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
10014 (list_processes_1, select_wrapper, Fstop_process)
10015 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
10016 (status_notify): Modify to handle serial processes.
10017 [HAVE_SERIAL] (Fserial_process_configure)
10018 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
10019 New functions.
10020 * process.h (struct Lisp_Process): Add `type'.
10021 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
10022 New functions.
10023 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
10024 serial ports.
b71ac3dd 10025 (serial_open, serial_configure): New functions.
aac0c6e3
MR
10026 * w32.h: Add FILE_SERIAL.
10027 (struct _child_process): Add ovl_read, ovl_write.
10028
100292008-06-13 Kenichi Handa <handa@m17n.org>
10030
10031 * dispextern.h (enum lface_attribute_index): New member
10032 LFACE_FOUNDRY_INDEX.
10033
10034 * font.c (font_score): Delete arg alternate_families. Check only
10035 weight, slant, width, and size. Ignore the difference of alias
10036 style symbols.
10037 (font_sort_entites): Adjust for the above change. Reflect the
10038 order of font-driver to scores.
10039 (font_list_entities): Don't check alternate_familes here.
10040 (font_clear_prop): Handle foundry.
10041 (font_update_lface): Don't parse "foundry-family" form here.
10042 Handle FONT_FOUNDRY_INDEX.
10043 (font_find_for_lface): Likewise. Handle alternate families here.
10044 If registry is nil, try iso8859-1 and ascii-0.
10045 (font_open_for_lface): Pay attention to size in ENTITY.
10046 (font_open_by_name): Simplify by calling font_load_for_lface.
10047 (free_font_driver_list): Delete it.
10048 (font_update_drivers): Preserve the order of backends.
10049 (syms_of_font): Setting of sort_shift_bits adjusted for the change
10050 of font_score and font_sort_entites.
10051 (font_update_sort_order): Likewise.
10052
10053 * xfaces.c (LFACE_FOUNDRY): New macro.
10054 (check_lface_attrs): Check foundry.
10055 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
10056 (merge_face_vectors): Check foundry.
10057 (merge_face_ref): Likewise.
10058 (Finternal_set_lisp_face_attribute): Likewise.
10059 (x_update_menu_appearance): Likewise.
10060 (Finternal_get_lisp_face_attribute): Likewise.
10061 (lface_hash): Likewise.
10062 (lface_same_font_attributes_p): Likewise.
10063 (x_supports_face_attributes_p): Likewise.
10064 (tty_supports_face_attributes_p): Likewise.
10065 (Finternal_set_alternative_font_family_alist): Intern strings.
10066 (Finternal_set_alternative_font_registry_alist): Downcase strings.
10067 (realize_default_face): Set LFACE_FOUNDRY (lface).
10068
10069 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
10070 font-driver at first.
10071
10072 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
10073
100742008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10075
10076 * lread.c (Fload): Use xfree, not free on saved_doc_string.
10077
100782008-06-12 Jim Meyering <meyering@redhat.com>
10079
10080 Make unexec_free handle NULL the same way free does.
10081 * unexmacosx.c (unexec_free): Ignore a NULL argument.
10082
100832008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
10084
10085 * character.h (CHAR_TO_BYTE_SAFE): New macro.
10086 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
10087 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
10088 (WEAK_ALIAS): Simplify.
10089 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
10090 when searching a unibyte buffer.
10091
100922008-06-12 Chong Yidong <cyd@stupidchicken.com>
10093
10094 * xfns.c (Fx_select_font): Rename from x-font-dialog.
10095
100962008-06-12 Juanma Barranquero <lekktu@gmail.com>
10097
10098 * w32font.c: Include ctype.h.
10099
101002008-06-11 Jason Rumney <jasonr@gnu.org>
10101
10102 * w32font.c (w32font_encode_char): Detect missing glyphs that are
10103 misreported as space.
10104 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
10105 as aliases for registry iso10646-1.
10106
101072008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
10108
10109 * buffer.c (clone_per_buffer_values): Skip `name'.
10110
101112008-06-11 Chong Yidong <cyd@stupidchicken.com>
10112
10113 * font.c (font_parse_fcname): Fix last change; accept decimal
10114 points in font size.
10115
101162008-06-10 Jason Rumney <jasonr@gnu.org>
10117
10118 * w32uniscribe.c (add_opentype_font_name_to_list):
10119 Skip non unicode fonts.
10120
101212008-06-10 Chong Yidong <cyd@stupidchicken.com>
10122
10123 * xfns.c (Fx_font_dialog): New function.
10124
10125 * gtkutil.c (xg_dialog_response_cb): Rename from
10126 xg_file_response_callback.
10127 (pop_down_dialog): Rename from pop_down_file_dialog.
10128 (xg_get_file_name): Callers changed.
10129 (xg_get_font_name): New function.
10130
10131 * gtkutil.h (xg_get_font_name): Insert prototype.
10132
101332008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
10134
10135 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
10136 x_underline_minimum_display_offset.
10137 (syms_of_xdisp): Declare it here rather than in xterm.c.
10138 * dispextern.h (underline_minimum_offset): Declare it.
10139 * w32term.c (x_draw_glyph_string): Use it.
10140 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
10141 (syms_of_xterm): Don't declare it any more.
10142 (x_draw_glyph_string): Adjust to the new name.
10143
8719abec 101442008-06-10 David De La Harpe Golden <david@harpegolden.net>
aac0c6e3
MR
10145
10146 * xterm.c (x_underline_minimum_display_offset): New var.
10147 (x_draw_glyph_string): Use it.
10148 (syms_of_xterm): Declare it.
10149
101502008-06-10 Chong Yidong <cyd@stupidchicken.com>
10151
10152 * font.c (font_parse_fcname): Accept GTK-style font names too.
10153
101542008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
10155
10156 * dired.c (file_name_completion): Don't return t if the match is exact
10157 but with different capitalization.
10158 * minibuf.c (Ftry_completion): Simplify.
10159
10160 * window.c (Vwindow_point_insertion_type): New var.
10161 (set_window_buffer): Use it.
10162 (syms_of_window): Init and export it to Lisp.
10163
101642008-06-10 Kenichi Handa <handa@m17n.org>
10165
10166 * font.h (font_intern_prop): Prototype adjusted.
10167
10168 * font.c (font_intern_prop): New arg force_symbol.
10169 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
10170 Adjust for the change of font_intern_prop.
10171
10172 * ftfont.c (ftfont_pattern_entity):
10173 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
10174 (w32_registry):
10175 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
10176 the change of font_intern_prop.
10177
101782008-06-09 Juanma Barranquero <lekktu@gmail.com>
10179
10180 * w32menu.c (digest_single_submenu): Declare extern.
10181
101822008-06-09 Jason Rumney <jasonr@gnu.org>
10183
10184 * w32term.c (x_make_frame_visible): Use alternate restore flags.
10185
10186 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
10187 (parse_single_submenu): Remove.
10188 (digest_single_submenu): Remove.
10189 (syms_of_w32menu): Don't initialise variables that have moved
10190 to menu.c.
10191 (set_frame_menubar): Sync with version in xmenu.c.
10192 (w32_menu_show): Sync with xmenu_show in xmenu.c.
10193
10194 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
10195 Make static again.
10196
101972008-06-09 Jason Rumney <jasonr@gnu.org>
10198
10199 Changes to w32 files related to the move of common menu code
10200 to menu.c on 2008-06-08 by Chong Yidong.
10201
10202 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
10203 defs to w32gui.h.
10204 (single_keymap_panes, push_menu_item, push_menu_pane):
10205 Make globally visible.
10206
10207 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
10208 (local_free, malloc_widget_value, free_widget_value)
10209 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
10210 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
10211 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
10212 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
10213 (menu_items, menu_items_allocated, menu_items_used)
10214 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
10215 (init_menu_items, finish_menu_items, discard_menu_items)
10216 (grow_menu_items, push_submenu_start, push_submenu_end)
10217 (push_left_right_boundary, push_menu_pane, push_menu_item)
10218 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
10219 (free_menubar_widget_tree_value, parse_single_submenu)
10220 (update_submenu_strings): Remove functions.
10221 (xmalloc_widget_value): Remove and declare extern.
10222
10223 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
10224 (OBJ1): Build it.
10225
10226 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
10227 (local_heap, local_alloc, local_free, malloc_widget_value)
10228 (free_widget_value): Define here.
10229
102302008-06-09 Kenichi Handa <handa@m17n.org>
10231
10232 * font.h (Qascii_0): Extern it.
10233
10234 * font.c (Qascii_0): New variable.
10235 (syms_of_font): DEFSYM it.
10236 (font_open_by_name): If the registry "iso8859-1" fails, try also
10237 "ascii-0".
10238
10239 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
10240
102412008-06-08 Kenichi Handa <handa@m17n.org>
10242
10243 * .gdbinit (xfont): New command.
10244
102452008-06-08 Andreas Schwab <schwab@suse.de>
10246
10247 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
10248 * Makefile.in (menu.o): Update dependencies.
10249
10250 * Makefile.in (obj): Always add menu.o.
10251 * emacs.c (main): Always call syms_of_menu.
10252 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
10253
102542008-06-08 Chong Yidong <cyd@stupidchicken.com>
10255
10256 * Makefile.in: Compile menu.c.
10257
10258 * lisp.h: Declare syms_of_menu.
10259
10260 * emacs.c (main): Call syms_of_menu.
10261
10262 * keyboard.h: Relocate platform-independent menu definitions from
10263 xmenu.c.
10264
10265 * menu.c: New file. Relocate platform-independent menu
10266 definitions from xmenu.c. Suggested by Adrian Robert.
10267
10268 * xmenu.c: Remove platform-independent menu definitions.
10269 (menu_items menu_items_inuse, menu_items_allocated)
10270 (menu_items_used, menu_items_n_panes)
10271 (menu_items_submenu_depth): Move to keyboard.h.
10272 (init_menu_items, finish_menu_items, unuse_menu_items)
10273 (discard_menu_items, restore_menu_items, save_menu_items)
10274 (grow_menu_items, push_submenu_start, push_submenu_end)
10275 (push_left_right_boundary, push_menu_pane, push_menu_item)
10276 (keymap_panes, single_keymap_panes, single_menu_item)
10277 (list_of_panes, list_of_items, find_and_call_menu_selection)
10278 (xmalloc_widget_value, free_menubar_widget_value_tree)
10279 (parse_single_submenu, digest_single_submenu)
10280 (update_submenu_strings): Move to menu.c.
10281
102822008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
10283
10284 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
10285
102862008-06-06 Miles Bader <miles@gnu.org>
10287
10288 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
10289 face, not frame default.
10290
102912008-06-05 Martin Rudalics <rudalics@gmx.at>
10292
10293 * window.c (pop_up_windows, pop_up_frames)
10294 (display_buffer_reuse_frames, Vpop_up_frame_function)
10295 (Vdisplay_buffer_function, Veven_window_heights)
10296 (Vspecial_display_buffer_names, Vspecial_display_regexps)
10297 (Vspecial_display_function, Vsame_window_buffer_names)
10298 (Vsame_window_regexps, split_height_threshold)
10299 (Vsplit_window_preferred_function): Move those vars to window.el.
10300 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
10301 (Fdisplay_buffer): Move those functions to window.el.
10302 (syms_of_window): Remove corresponding declarations.
10303 (display_buffer): New function.
10304 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
10305 * dispnew.c (Flast_nonminibuf_frame): New function.
10306 * buffer.c (Fpop_to_buffer): Move to window.el.
10307
103082008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
10309
10310 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
10311
103122008-06-05 Kenichi Handa <handa@m17n.org>
10313
10314 * coding.c (detect_coding): Fix previous change.
10315 (detect_coding_system): Likewise.
10316
103172008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
10318
10319 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
10320
10321 * keymap.c (Vminibuffer_local_filename_must_match_map):
10322 Rename from Vminibuffer_local_must_match_filename_map.
10323 (syms_of_keymap):
10324 * minibuf.c (Fcompleting_read): Adjust accordingly.
10325 * commands.h: Rename declaration as well.
10326
103272008-06-05 Kenichi Handa <handa@m17n.org>
10328
10329 * font.c (Ffont_spec): Don't use font_parse_family_registry for
10330 family name.
10331 (Ffont_put): Likewise.
10332
10333 * fontset.c (fontset_find_font): Call font_open_for_lface with the
10334 current font-spec.
10335
10336 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
10337 is unspecified.
10338
10339 * xfaces.c (realize_x_face): If the font-related face attributes
10340 are the same as those of default face, realize a new fontset from
10341 default->fontset.
10342 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
10343
103442008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
10345
10346 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
10347 (move_it_in_display_line): New wrapper.
10348
10349 * window.c (window_scroll_pixel_based_preserve_x)
10350 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
10351 (window_scroll_pixel_based, window_scroll_line_based):
10352 Use them to preserve column positions.
10353 (syms_of_window): Initialize them.
10354
10355 * indent.c (Fvertical_motion): Extend first arg to allow passing an
10356 (HPOS . VPOS) pair.
10357
10358 * dispextern.h (move_it_in_display_line): Declare.
10359
103602008-06-05 Juanma Barranquero <lekktu@gmail.com>
10361
10362 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
10363 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
10364 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
10365
103662008-06-04 Juanma Barranquero <lekktu@gmail.com>
10367
10368 * window.c (Fset_window_parameter): Doc fix.
10369 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
10370
103712008-06-04 Joakim Verona <joakim@verona.se>
10372
10373 * window.h (struct window): Add new member window_parameters.
10374
10375 * window.c (Fwindow_parameters, Fwindow_parameter)
10376 (Fset_window_parameter): New defuns.
10377 (syms_of_window): Defsubr the new defuns.
10378 (make_window): Initialize window_parameters to nil.
10379
103802008-06-04 John Paul Wallington <jpw@pobox.com>
10381
10382 * eval.c (Fdefmacro): Doc fix.
10383
103842008-06-04 Kenichi Handa <handa@m17n.org>
10385
10386 * coding.c (detect_coding): Fix handling of coding->head_ascii.
10387 Be sure to call setup_coding_system when we find a proper coding system.
10388 (detect_coding_system): Fix handling of coding->head_ascii.
10389
103902008-06-03 Andreas Schwab <schwab@suse.de>
10391
10392 * font.c (font_prop_validate_spacing): Fix last change.
10393
103942008-06-03 Kenichi Handa <handa@m17n.org>
10395
10396 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
10397 (font_parse_fcname): Fix handling of unknown key.
10398
10399 * xfont.c (xfont_list): Try an alias.
10400
10401 * charset.c (char_charset): Return NULL if the arg charset_list is
10402 specified and C doesn't belong to any of them.
10403
104042008-06-02 Chip Coldwell <coldwell@redhat.com>
10405
10406 * font.c (font_pixel_size): Don't take cdr of an integer.
10407
104082008-06-02 Jim Meyering <meyering@redhat.com>
10409
10410 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
10411 * alloc.c (xfree): Return right away for a NULL arg.
10412 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
10413 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
10414 * mac.c (create_apple_event_from_event_ref): Likewise.
10415 (create_apple_event_from_drag_ref, cfstring_create_normalized):
10416 Likewise.
10417 * doprnt.c (doprnt1): Likewise.
10418 * frame.c (frame): Likewise.
10419 * keyboard.c (wipe_kboard): Likewise.
10420 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
10421 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
10422 * term.c (tty_default_color_capabilities, maybe_fatal)
10423 (delete_tty): Likewise.
10424 * w16select.c (string): Likewise.
10425 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
10426 * w32bdf.c (w32_free_bdf_font): Likewise.
10427 * w32fns.c (w32_unload_font): Likewise.
10428 * w32font.c (w32font_close): Likewise.
10429 * window.c (size_window): Likewise.
10430 * xselect.c (receive_incremental_selection): Likewise.
10431 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
10432 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
10433 * w32.c (stat): Likewise.
10434
10435 Remove useless if-before-free tests.
10436 * editfns.c (Fset_time_zone_rule): Likewise.
10437 * lread.c (nosuffix): Likewise.
10438 * ralloc.c (get_bloc): Likewise.
10439 * regex.c (reg_free): Likewise.
10440 * xftfont.c (xftfont_open, xftfont_close): Likewise.
10441 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
10442 * xsmfns.c (smc_save_yourself_CB): Likewise.
10443
104442008-06-02 Kenichi Handa <handa@m17n.org>
10445
10446 * font.c (font_find_for_lface): Handle float font size.
10447 (font_open_for_lface): Likewise.
10448
10449 * xfaces.c (x_supports_face_attributes_p): Check face->font before
10450 comparing the properties.
10451
104522008-06-01 Jason Rumney <jasonr@gnu.org>
10453
10454 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
10455 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
10456 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
10457 Don't add empty script list.
10458 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
10459
104602008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
10461
10462 * Makefile.in (dot, dotdot): Remove, update users.
10463 ".." has been used elsewhere in the file for a long time.
10464 (LIBXT_STATIC): Remove conditional based on unused variable.
10465
104662008-06-01 Miles Bader <miles@gnu.org>
10467
10468 * xfaces.c (Vface_remapping_alist): New variable.
10469 (syms_of_xfaces): Initialize it.
10470 (enum named_merge_point_kind): New type.
10471 (struct named_merge_point): Add `named_merge_point_kind' field.
10472 (push_named_merge_point): Make cycle detection respect different
10473 named-merge-point kinds.
10474 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
10475 Remove face-name alias resolution.
10476 (lface_from_face_name): New definition using
10477 `lface_from_face_name_no_resolve'.
10478 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
10479 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
10480 (get_lface_attributes): New definition that layers face-remapping on
10481 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
10482 (lookup_basic_face): New function.
10483 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
10484 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
10485 `get_lface_attributes'.
10486 (face_at_buffer_position): Use `lookup_basic_face' to lookup
10487 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
10488 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
10489
10490 * xdisp.c (init_iterator): Pass base_face_id through
10491 `lookup_basic_face' when we actually use it as a face-id.
10492 (handle_single_display_prop): Use `lookup_basic_face' to lookup
10493 DEFAULT_FACE_ID.
10494
10495 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
10496 lookup the initial face-id.
10497
10498 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
10499
105002008-06-01 Juanma Barranquero <lekktu@gmail.com>
10501
10502 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
10503 (Fremove_text_properties): Fix typos in docstrings.
10504
105052008-05-31 Kenichi Handa <handa@m17n.org>
10506
10507 * font.c (font_list_entities): Fix the car part of data to be
10508 stored in the cache.
10509
10510 * ftfont.c (ftfont_font_format): Don't use strcasestr.
10511
105122008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
10513
10514 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
10515 Add a `test' argument so another predicate than `equal' can be used.
10516 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
10517 (map_char_table): Remove unused vars `c' and `i'.
10518 * lisp.h (Foptimize_char_table): Adjust declaration.
10519 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
10520
105212008-05-30 Kenichi Handa <handa@m17n.org>
10522
10523 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
10524 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
10525 defined.
10526
105272008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
10528
10529 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10530 (Fmake_variable_frame_local): Disallow mixing buffer-local and
10531 frame-local settings for the same variable.
10532
105332008-05-30 Kenichi Handa <handa@m17n.org>
10534
10535 * fontset.c (Ffont_info): Move to font.c.
10536 (syms_of_fontset): Delete defsubr of Sfont_info.
10537
10538 * font.c (font_style_to_value, font_score): Delete casting of the
10539 args to xstcasecmp.
10540 (register_font_driver): Increment num_font_drivers only when
10541 registering the driver globally.
10542 (Ffont_info): Move from fontset.c. Handle a font object too.
10543 (syms_of_font): Defsubr Sfont_info.
10544
105452008-05-29 Kenichi Handa <handa@m17n.org>
10546
10547 * coding.h (enum define_coding_utf8_arg_index): New enum.
10548 (enum coding_attr_index): Change coding_attr_utf_16_bom to
10549 coding_attr_utf_bom.
10550 (enum utf_bom_type): Rename from utf_16_bom_type.
10551 (struct utf_16_spec): Adjust for the above change.
10552 (struct coding_system): Add utf_8_bom in `spec' union.
10553
10554 * coding.c (CODING_UTF_8_BOM): New macro.
10555 (enum coding_category): Delete coding_category_utf_8, add
10556 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
10557 coding_category_utf_8_sig.
10558 (CATEGORY_MASK_UTF_8): Delete it.
10559 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
10560 (CATEGORY_MASK_UTF_8_SIG): New macros.
10561 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
10562 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
10563 CATEGORY_MASK_UTF_8_SIG.
10564 (CATEGORY_MASK_UTF_8): New macro.
10565 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
10566 (detect_coding_utf_8): Check BOM.
10567 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
10568 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
10569 (encode_coding_utf_16): Likewise.
10570 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
10571 (detect_coding, detect_coding_system): Handle utf-8-auto.
10572 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
10573 (syms_of_coding): Fix setting up of Vcoding_category_table.
10574
105752008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
10576
10577 * process.c (Faccept_process_output): If `millisec' is non-nil,
10578 `seconds' default to 0.
10579 (wait_reading_process_output): Also return non-nil if we read output
10580 from a non-running process.
10581
105822008-05-29 Jason Rumney <jasonr@gnu.org>
10583
10584 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
10585 `raster' specified.
10586 (add_font_entity_to_list): Allow non-opentype truetype fonts back
10587 in the uniscribe backend, but disallow any font that has no
10588 unicode subrange support.
10589
105902008-05-29 Juanma Barranquero <lekktu@gmail.com>
10591
10592 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
10593 Fix typos in docstrings.
10594
105952008-05-29 Kenichi Handa <handa@m17n.org>
10596
10597 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
10598 (Fx_family_fonts): Set frame correctly.
10599
106002008-05-28 Jason Rumney <jasonr@gnu.org>
10601
10602 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
10603
106042008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
10605
10606 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
10607 calling build_annotations.
10608
106092008-05-28 Juanma Barranquero <lekktu@gmail.com>
10610
10611 * coding.c (Fdecode_coding_region, Fencode_coding_region)
10612 (Fencode_coding_string):
10613 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
10614 <latin-extra-code-table>: Fix typos in docstrings.
10615 (syms_of_coding) <coding-system-alist>: Doc fix.
10616 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
10617
106182008-05-28 Kenichi Handa <handa@m17n.org>
10619
10620 * fontset.c (Ffont_info): Don't call font_close_object.
10621
10622 * font.c (font_parse_family_registry): Use Ffont_put to validate
10623 foundry and family.
10624 (font_delete_unmatched): Don't check spacing.
10625 (font_list_entities): Add spacing to the spec to list fonts.
10626
10627 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
10628 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
10629
10630 * coding.c (encode_coding_raw_text): Fix previous change.
10631 (encode_coding_object): When the dst_object is a buffer and is
10632 different from src_object, move gap to PT.
10633
106342008-05-27 Chong Yidong <cyd@stupidchicken.com>
10635
10636 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
10637
106382008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
10639
10640 * coding.c (encode_coding_raw_text): Set coding->produced_char for
10641 all branches. Compute it differently.
10642
10643 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
10644
106452008-05-27 Juanma Barranquero <lekktu@gmail.com>
10646
10647 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
10648 into "else if () ... else ...".
10649
106502008-05-27 Jason Rumney <jasonr@gnu.org>
10651
10652 * w32font.c (w32font_open_internal): Determine if glyph indices
10653 are likely to work here.
10654
106552008-05-27 Chong Yidong <cyd@stupidchicken.com>
10656
10657 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
10658 draw overlap glyphs with appropriate highlighting.
10659
106602008-05-27 Kenichi Handa <handa@m17n.org>
10661
10662 * xfont.c (xfont_open): Fix calculation of font->average_width.
10663
106642008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
10665
10666 * casefiddle.c (casify_object): Try to guess better whether the
10667 argument is a byte or a char.
10668
106692008-05-26 Andreas Schwab <schwab@suse.de>
10670
10671 * xselect.c (x_reply_selection_request): Properly handle format == 32.
10672 Always send multiples of format size.
10673
10674 * xterm.c (x_set_frame_alpha): Fix type mismatch.
10675
106762008-05-26 Jason Rumney <jasonr@gnu.org>
10677
10678 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
10679 (compute_metrics): Don't set failure if we just cleared the cache.
10680 (w32_weight_table): Remove unused variable.
10681 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
10682 backwards compatibility.
10683
106842008-05-25 Kenichi Handa <handa@m17n.org>
10685
10686 * w32term.c (x_draw_glyph_string):
10687 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
10688
10689 * xfaces.c: Delete unused function prototypes.
10690 (xstrlwr, font_frame): Delete them.
10691 (clear_face_cache): Delete unused variable.
10692
10693 * xftfont.c (xftfont_open): Delete unused variable.
10694 If underline_thickness is not 1, adjust underline_position.
10695
10696 * ftxfont.c (ftxfont_open): Delete unused variable.
10697
10698 * fontset.c (face_for_char): Optimize for the case of no charset
10699 property.
10700
10701 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
10702 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
10703 (otf_open, font_otf_capability, generate_otf_features)
10704 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
10705 Comment out by surrounding "#if 0" and "#endif" for the moment.
10706 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
10707 (syms_of_font): Codes for accessing above commented out.
10708
107092008-05-24 Eli Zaretskii <eliz@gnu.org>
10710
10711 * w32proc.c: Include dispextern.h.
10712
10713 * w32.c: Include dispextern.h.
10714
107152008-05-23 Juanma Barranquero <lekktu@gmail.com>
10716
10717 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
10718 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
10719 Fix typos in docstrings.
10720
107212008-05-23 Jason Rumney <jasonr@gnu.org>
10722
10723 * xsmfns.c: Remove includes that are already included by config.h.
10724
107252008-05-23 Kenichi Handa <handa@m17n.org>
10726
10727 * charset.c (Qemacs, charset_emacs): New variables.
10728 (char_charset): Fix for non-Unicode characters.
10729 (syms_of_charset): Define charset_emacs.
10730
10731 * w32term.c (x_draw_glyph_string): Be sure to update
10732 s->underline_thickness and s->underline_position. Be sure to draw
10733 underline within the current line area.
10734
10735 * xterm.c (x_draw_glyph_string): Be sure to update
10736 s->underline_thickness and s->underline_position. Be sure to draw
10737 underline within the current line area.
10738
10739 * fontset.c: Delete unused variables and add casting for char *
10740 throughout the file.
10741 (fontset_font): Try the fallback fonts of the current fontset
10742 before consulting the default fontset.
10743
10744 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
10745
10746 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
10747
107482008-05-22 Jason Rumney <jasonr@gnu.org>
10749
10750 * font.c: Don't include strings.h.
10751
10752 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
10753
10754 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
10755 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
10756 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
10757 to call xstrcasecmp.
10758
10759 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
10760
10761 * fontset.c (fs_query_fontset): Use xstrcasecmp.
10762
10763 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
10764
10765 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
10766
107672008-05-22 Kenichi Handa <handa@m17n.org>
10768
10769 * puresize.h (BASE_PURESIZE): Increase to 1220000.
10770
10771 * font.c (font_prop_validate_style): Adjust for the format
10772 change of font_style_table.
10773
10774 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
10775 two args.
10776
10777 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
10778 two args.
10779
107802008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
10781
10782 * minibuf.c (keys_of_minibuf): Delete.
10783 * lisp.h (keys_of_minibuf): Delete.
10784 * emacs.c (main): Don't call keys_of_minibuf.
10785
107862008-05-22 Kenichi Handa <handa@m17n.org>
10787
10788 * ftfont.c (ftfont_resolve_generic_family): Rename from
10789 ftfont_list_generic_family. Return a single family for each
10790 generic family.
10791 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
10792 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
10793 Call font_add_log.
10794 (ftfont_match): Call font_add_log.
10795
10796 * font.h (Ffont_xlfd_name): EXFUN adjusted.
10797 (FONT_DEBUG): Define it.
10798 (font_add_log): Extern it.
10799 (font_assert): Rename from xassert.
10800
10801 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
10802 (xfont_list_family): Call font_add_log.
10803 (xfont_match): Likewise.
10804 (memq_no_quit): Delete.
10805
10806 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
10807 call of Ffont_xlfd_name.
10808
10809 * xfaces.c (struct table_entry, slant_table, weight_table)
10810 (swidth_table): Move to font.c.
10811
10812 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
10813 xassert are changed to font_assert. Delete many unused variables.
10814 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
10815 New variables.
10816 (struct table_entry): Move from xfaces.c and modified.
10817 (weight_table, slant_table, width_table): Move from xfaces.c and
10818 contents adjusted for the change of struct table_entry.
10819 (font_style_to_value, font_style_symbolic): Adjust for the
10820 format change of font_style_table.
10821 (font_parse_family_registry): Don't overwrite existing foundry and
10822 family of font_spec.
10823 (font_score): Fix calculation of diff for sizes.
10824 (font_sort_entites): Call font_add_log.
10825 (font_delete_unmatched): Return a newly created list.
10826 (font_list_entities): Fix previous change. Call font_add_log.
10827 (font_matching_entity, font_open_entity, font_close_entity):
10828 Call font_add_log.
10829 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
10830 (Finternal_set_font_style_table): Delete.
10831 (BUILD_STYLE_TABLE): New macro.
10832 (build_style_table): New function.
10833 (Vfont_log, font_log_env_checked): New variables.
10834 (font_add_log): New function.
10835 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
10836 Declare Lisp variables "font-weight-table", "font-slant-table",
10837 "font-width-table", and "font-log". Initialize font_style_table.
10838
108392008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
10840
10841 * xterm.c (x_set_frame_alpha): Move declarations before statements.
10842
108432008-05-21 Seiji Zenitani <zenitani@mac.com>
10844 Ryo Yoshitake <ryo@shiftmode.net>
10845
10846 * frame.c (Qalpha): Add a new frame parameter `alpha'.
10847 (Vframe_alpha_lower_limit): New variable.
10848 (x_set_alpha): New function.
10849
10850 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
10851
10852 * xfns.c (x-create-frame, Qalpha):
10853 Initialize the frame parameter `alpha'.
10854 * xterm.c (OPAQUE, OPACITY): New.
10855 (x_set_frame_alpha): New function.
10856 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
10857
10858 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
10859 * w32fns.c (w32_frame_parm_handlers): Likewise.
10860
108612008-05-20 Jason Rumney <jasonr@gnu.org>
10862
10863 * w32font.c (add_font_entity_to_list): Don't add non-opentype
10864 truetype fonts to opentype list.
10865
108662008-05-20 Juanma Barranquero <lekktu@gmail.com>
10867
10868 * fontset.c (Ffontset_info): Doc fix.
10869 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
10870 <ignore-relative-composition>: Fix typos in docstrings.
10871
10872 * font.c (syms-of-font) <font-encoding-alist>:
10873 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
10874 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
10875 (Ffont_otf_alternates): Doc fixes.
10876
108772008-05-20 Kenichi Handa <handa@m17n.org>
10878
10879 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
10880 font.h through out the file.
10881 (FONT_DRIVERS): Rename from FONTOBJ.
10882 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
10883 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
10884
10885 * emacs.c (main): Call syms_of_font unconditionally.
10886
10887 * font.h (find_font_encoding): Extern it.
10888
10889 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
10890 fontset.c.
194d44e7 10891 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
aac0c6e3
MR
10892 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
10893 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
10894 only when HAVE_WINDOW_SYSTEM is defined.
10895 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
10896 when HAVE_WINDOW_SYSTEM is defined.
10897
10898 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
10899 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
10900
10901 * xfaces.c: Include font.h unconditionally.
10902 (merge_face_ref, merge_face_vectors)
10903 (Finternal_set_lisp_face_attribute): Cancel the previous change.
10904
109052008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
10906
10907 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
10908 indirect_variable.
10909 * eval.c (lisp_indirect_variable): New fun.
10910 (Fuser_variable_p): Use it.
10911
109122008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
10913
10914 * lisp.h (indirect_variable):
10915 * data.c (indirect_variable, let_shadows_buffer_binding_p):
10916 Use Lisp_Symbol pointers rather than Lisp_Object.
10917 Adjust callers.
10918 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
10919 To this end, change calling-convention.
10920
10921 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
10922 if some non-hidden buffers are selected by string&pred.
10923
109242008-05-19 Chong Yidong <cyd@stupidchicken.com>
10925
10926 * process.c (wait_reading_process_output): Always check status
10927 when in batch mode.
10928
109292008-05-19 Kenichi Handa <handa@m17n.org>
10930
10931 * font.c (font_list_entities): Fix handling of cache.
10932 (font_matching_entity): Likewise.
10933
10934 * ftfont.c (cs_iso8859_1): Delete.
10935 (ft_face_cache): New variable.
10936 (struct ftfont_info): New member fc_charset_idx.
10937 (ftfont_build_basic_charsets): Delete.
10938 (fc_charset_table): New variable.
10939 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
10940 . FC_CHARSET_IDX) as :font-entity property in the font entity.
10941 Callers changed.
10942 (ftfont_lookup_cache, ftfont_get_charset): New functions.
10943 (ftfont_spec_pattern): New argument fc_charset_idx.
10944 Check registry more rigidly. Change callers.
10945 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
10946 change of :font-entity property of the font.
10947
10948 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
10949 property of the font.
10950
109512008-05-18 Juanma Barranquero <lekktu@gmail.com>
10952
10953 * coding.c (Fcoding_system_p): Rename argument to match docstring.
10954 (Funencodable_char_position, Fcheck_coding_systems_region)
10955 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
10956 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
10957 (Ffind_operation_coding_system, Fset_coding_system_priority)
10958 (Fcoding_system_eol_type): Doc fixes.
10959
109602008-05-17 Glenn Morris <rgm@gnu.org>
10961
10962 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
10963
109642008-05-16 Eli Zaretskii <eliz@gnu.org>
10965
10966 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
10967 and st_gid.
10968
10969 * frame.c (Fdelete_frame): Don't call font_update_drivers if
10970 HAVE_WINDOW_SYSTEM is not defined.
10971
10972 * xfaces.c (merge_face_ref, merge_face_vectors)
10973 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
10974 HAVE_WINDOW_SYSTEM is defined.
10975 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
10976
109772008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
10978
10979 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
10980
109812008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10982
10983 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
10984
109852008-05-15 Kenichi Handa <handa@m17n.org>
10986
10987 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
10988 preference.
10989
109902008-05-15 Glenn Morris <rgm@gnu.org>
10991
10992 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
10993
109942008-05-15 Chong Yidong <cyd@stupidchicken.com>
10995
10996 * fns.c (init_fns): Don't initialize weak_hash_tables here.
10997 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
10998
10999 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
11000
110012008-05-15 Kenichi Handa <handa@m17n.org>
11002
11003 * ftfont.c (ftfont_list): Downcase family name to check generic
11004 families.
11005
11006 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
11007 font-spec for QCfont value.
11008
11009 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
11010 buffer. Check the return value of it.
11011
110122008-05-14 Jason Rumney <jasonr@gnu.org>
11013
11014 * w32term.c (w32_get_glyph_overhangs): Remove.
11015 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
11016
110172008-05-14 Kenichi Handa <handa@m17n.org>
11018
11019 * font.c (font_prop_validate): Make nil a valid value.
11020 (font_clear_cache): Check if the cached vector of entities is nil
11021 or not.
11022
110232008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11024
11025 * emacs.c (main_thread): Conditionalize on
11026 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
11027 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
11028
11029 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
11030 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
11031 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
11032
110332008-05-14 Kenichi Handa <handa@m17n.org>
11034
11035 * coding.c (detect_coding_iso_2022): Ignore a coding category that
11036 has no corresponding coding system.
11037
110382008-05-14 Jason Rumney <jasonr@gnu.org>
11039
11040 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
11041
11042 * w32font.h (w32font_open_internal): Update declaration.
11043
11044 * w32font.c (w32font_open_internal): Change last argument from
11045 w32font_info struct to font object. Fill in font object from
11046 font_entity. Get Outline metrics if possible. Use them to
11047 calculate underline position and thickness. Use xlfd name as name
11048 property. Don't set codepage.
11049 (w32font_open): Pass font_object to w32font_open_internal. Don't
11050 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
11051 (w32font_draw): Use s->font.
11052 (clear_cached_metrics): Don't clear non-existent blocks.
11053
11054 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
11055 font was not found.
11056 (x_draw_glyph_string): Use underline position and thickness from font.
11057
11058 * w32uniscribe.c (uniscribe_open): Pass font_object to
11059 w32font_open_internal.
11060
110612008-05-14 Kenichi Handa <handa@m17n.org>
11062
11063 These changes are to delete all legacy font-handling codes, and
11064 make Emacs use only font-backends.
11065
11066 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
11067 (frame.o, image.o, print.o): Depend on $(FONTSRC).
11068
11069 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
11070
11071 * charset.h (Vcharset_non_preferred_head)
11072 (Vcurrent_iso639_language): Extern them.
11073
11074 * charset.c (Vcharset_non_preferred_head): New variable.
11075 (Vcurrent_iso639_language): New variable.
11076 (syms_of_charset): Declare it as a Lisp variable.
11077 (char_charset): Don't check non preferred charsets. As a last
11078 resort, return charset_unicode.
11079 (Fset_charset_priority): Update Vcharset_non_preferred_head.
11080
11081 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
11082 conditionals. Don't check enable_font_backend. Delete all codes
11083 used only when USE_FONT_BACKEND is not defined.
11084
11085 * dispextern.h (struct glyph_string): Change type of `font' to
11086 `struct font *'.
11087 (struct glyph_string): New member underline_position and
11088 underline_thickness.
11089 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
11090 (struct face): Change type of `font' to `struct font *'. Remove
11091 members `font_name', `font_info_id'.
11092 (per_char_metric, encode_char): Delete externs.
11093 (calc_pixel_width_or_height): Adjust the prototype.
11094
11095 * emacs.c (enable_font_backend): Delete extern.
11096 (main): Don't set enable_font_backend. Don't check the command
11097 line argument "-disable-font-backend".
11098
11099 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
11100 (enum font_property_index): New members FONT_DPI_INDEX,
11101 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
11102 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
11103 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
11104 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
11105 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
11106 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
11107 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
11108 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
11109 (struct font_spec, struct font_entity): New structs.
11110 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
11111 (struct font): Many members from old "struct font_info" moved to
11112 here. Members font and entity deleted.
11113 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
11114 the new font-related objects.
11115 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
11116 (CHECK_FONT_GET_OBJECT): Likewise.
11117 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
11118 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
11119 (struct font_driver): New members case_sensitive anc check. Type
11120 of the member list and open changed.
11121 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
11122 (font_symbolic_width, font_find_object, font_get_spec)
11123 (font_set_lface_from_name): Delete extern.
11124 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
11125
11126 * font.c: Include <strings.h>.
11127 (enable_font_backend): Delete it.
11128 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
11129 (CHECK_VALIDATE_FONT_SPEC): Delete it.
11130 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
11131 (null_string): Delete it.
11132 (null_vector): Make it static.
11133 (font_family_alist): Delete it.
11134 (Qnormal): Extern it.
11135 (QCextra, QClanguage): Delete it.
11136 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
11137 (font_make_spec, font_make_entity, font_make_object)
11138 (font_intern_prop): Renamed from intern_downcase. Don't downcase
11139 the string. Callers changed.
11140 (font_pixel_size): Adjusted for the format change of font-related
11141 objects.
11142 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
11143 (font_style_to_value, font_style_symbolic): New function.
11144 (build_font_family_alist): Delete it.
11145 (font_registry_charsets): Use Fassoc_string instead of
11146 assq_no_quit.
11147 (font_prop_validate_symbol): Don't return null_string.
11148 (font_prop_validate_style): Adjusted for the change of
11149 style-related values in a font vector.
11150 (font_property_table): Delete entries for QClanguage and
11151 QCantialias, add entries for QCavgwidth.
11152 (get_font_prop_index): Delete the 2nd argument FROM.
11153 (font_prop_validate): Arguments changed.
11154 (font_put_extra): Adjusted for the change of font-related objects.
11155 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
11156 (font_parse_fcname, font_unparse_fcname)
11157 (font_prepare_composition): Likewise.
11158 (font_parse_family_registry): Renamed from font_merge_old_spec.
11159 (otf_open): Delete the 1st arg entity.
11160 (font_otf_capability): Adjusted for the above change.
11161 (font_score): New arg alternate_families. Adjusted for the change
11162 of font-related objects.
11163 (font_sort_entites): New arg best_only.
11164 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
11165 Delete them.
11166 (font_match_p): Check alternate families.
11167 (font_find_object): Delete it.
11168 (font_check_object): New function.
11169 (font_clear_cache): Adjusted for the change of font-related objects.
11170 (font_delete_unmatched): New arg.
11171 (font_list_entities): Call font_driver->list with a spec that
11172 doesn't specify style-related properties.
11173 (font_matching_entity): Arguments changed. Caller changed.
11174 (font_open_entity): Adjusted for the change of font-related objects.
11175 (font_close_object, font_has_char, font_encode_char)
11176 (font_get_name, font_get_spec): Likewise.
11177 (font_spec_from_name, font_clear_prop, font_update_lface):
11178 New functions.
11179 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
11180 (font_prepare_for_face, font_done_for_face, font_open_by_name)
11181 (font_at): Adjusted for the change of font-related objects.
11182 (font_range): New function.
11183 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
11184 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
11185 (Fcopy_font_spec, Fmerge_font_spec): New function.
11186 (Ffont_family_list): Renamed from list-families.
11187 (Finternal_set_font_style_table): Arguments changed.
11188 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
11189 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
11190 change of font-related objects.
11191 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
11192
11193 * fontset.h (struct font_info): Delete it. Most members go to
11194 struct font.
11195 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
11196 (enum FONT_SPEC_INDEX): Delete it.
11197 (font_info, list_fonts_func, load_font_func, query_font_func)
11198 (set_frame_fontset_func, find_ccl_program_func)
11199 (get_font_repertory_func, new_fontset_from_font_name): Delete
11200 externs.
11201 (fontset_from_font_name): Extern it.
11202 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
11203 (FONT_INFO_FROM_FACE): Deleted.
11204 (face_for_font): Adjust prototype.
11205
11206 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
11207 conditionals. Don't check enable_font_backend. Delete all codes
11208 used only when USE_FONT_BACKEND is not defined.
11209 (get_font_info_func, list_font_func, load_font_func)
11210 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
11211 (get_font_repertory_func): Delete them.
11212 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
11213 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
11214 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
11215 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
11216 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
11217 (fontset_compare_rfontdef): New function.
11218 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
11219 rfont-defs by qsort. Adjusted for the change of font-group vector.
11220 (load_font_get_repertory): Deleted.
11221 (fontset_find_font): Use new macros to ref/set elements of
11222 font-def and rfont-def.
11223 (fontset_font): Fix the timing of remembering that no font for C.
11224 (free_face_fontset): Do nothing if the face has no fontset.
11225 (face_suitable_for_char_p): Use new macros to ref/set elements of
11226 rfont-def.
11227 (face_for_char): Likewise. Call face_for_char with font_object.
11228 (fs_load_font): Delete. Delete #pragma surrounding it.
11229 (fs_query_fontset): Use strcasecmp instead of strcmp.
11230 (generate_ascii_font_name): Adjusted for the format change of
11231 font-spec.
11232 (Fset_fontset_font): Likewise. Use new macros to set elements of
11233 font-def.
11234 (Fnew_fontset): Use font_unparse_xlfd to generate
11235 FONTSET_ASCII (fontset).
11236 (new_fontset_from_font_name): Deleted.
11237 (fontset_from_font): Renamed from new_fontset_from_font. Check if
11238 a fontset is already created for the font. FIx updating of
11239 Vfontset_alias_alist.
11240 (fontset_ascii_font): Deleted.
11241 (Ffont_info): Adjusted for the format change of font-spec.
11242 (Finternal_char_font): Likewise.
11243 (Ffontset_info): Likewise.
11244 (syms_of_fontset): Don't check load_font_func.
11245
11246 * fns.c (internal_equal): Handle PREV_FONT.
11247
11248 * frame.h: Delete USE_FONT_BACKEND conditional.
11249
11250 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
11251 conditionals. Don't check enable_font_backend. Delete all codes
11252 used only when USE_FONT_BACKEND is not defined.
11253 (x_set_font): Call x_new_font, not x_new_fontset2.
11254 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
11255 already set for the frame.
11256
11257 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
11258 a font-entity by font_make_entity. Use font_intern_prop instead
11259 of intern_downcase. Use FONT_SET_STYLE to set a style-related
11260 font property. If a font is scalable, set avgwidth property to 0.
11261 Set font-entity property by font_put_extra.
11262 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
11263 (ffont_driver): Adjusted for the change of struct font_driver.
11264 (ftfont_spec_pattern): New function.
11265 (ftfont_list): Return a list, not vector.
11266 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
11267 (ftfont_list_family): Don't downcase names.
11268 (ftfont_free_entity): Deleted.
11269 (ftfont_open): Return a font-object. Adjusted for the change of
11270 struct font. Get underline_thickness and underline_position from
11271 font property. Don't update dpyinfo->smallest_font_height and
11272 dpyinfo->smallest_char_width.
11273 (ftfont_close): Don't free `struct font'.
11274 (ftfont_has_char): Adjusted for the format change of font-entity.
11275 (ftfont_encode_char, ftfont_text_extents): Likewise.
11276
11277 * ftxfont.c (ftxfont_list): Return a list, not vector.
11278 (ftxfont_open): Return a font-object. Adjusted for the change of
11279 struct font. Get underline_thickness and underline_position from
11280 font property. Don't update dpyinfo->smallest_font_height and
11281 dpyinfo->smallest_char_width.
11282 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
11283 (ftxfont_draw): Adjusted for the change of struct font.
11284
11285 * image.c (image_ascent): Don't include "charset.h". Include
11286 "character.h" and "font.h".
11287
11288 * lisp.h (enum pvec_type): New member PREV_FONT.
11289 (Fassoc_string): EXFUN it.
11290
11291 * print.c: Include font.h.
11292 (print_object): Handle font-related objects.
11293
11294 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
11295 conditionals. Don't check enable_font_backend. Delete all codes
11296 used only when USE_FONT_BACKEND is not defined.
11297 (handle_auto_composed_prop): Do nothing if it->f is not on a
11298 window system. Check how many following characters can be
11299 displayed by the same font.
11300 (calc_pixel_width_or_height): Type of the 4th arg is changed to
11301 'struct font *'.
11302 (get_char_face_and_encoding): Assign the whole encoding task to
11303 the `encode-char' method of a font driver.
11304 (fill_composite_glyph_string): Adjusted for the change of `struct
11305 face' and `struct glyph_string'.
11306 (fill_glyph_string): Likewise.
11307 (get_per_char_metric): Arguments changed.
11308 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
11309 and `struct glyph_string'.
11310 (produce_stretch_glyph, calc_line_height_property)
11311 (x_produce_glyphs): Likewise.
11312
11313 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
11314 conditionals. Don't check enable_font_backend. Delete all codes
11315 used only when USE_FONT_BACKEND is not defined. Use
11316 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
11317 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
11318 (Qp): Extern them.
11319 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
11320 Deleted.
11321 (struct font_name): Deleted.
11322 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
11323 (compare_fonts_by_sort_order): New function.
11324 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
11325 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
11326 Deleted.
11327 (Fx_family_fonts): Use font_list_entities, and sort fonts by
11328 compare_fonts_by_sort_order.
11329 (Fx_font_family_list): Call Ffont_family_list.
11330 (face_numeric_value, face_numeric_weight, face_numeric_slant)
11331 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
11332 (face_symbolic_slant, face_symbolic_swidth)
11333 (split_font_name_into_vector, build_font_name_from_vector)
11334 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
11335 (font_rescale_ratio, split_font_name, build_font_name)
11336 (free_font_names, sort_fonts, x_face_list_fonts)
11337 (face_font_available_p, sorted_font_list, cmp_font_names)
11338 (font_list_1, concat_font_list, font_list, remove_duplicates):
11339 Deleted.
11340 (Fx_list_fonts): Use Ffont_list.
11341 (LFACE_AVGWIDTH): Deleted.
11342 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
11343 by FONTP.
11344 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
11345 (set_lface_from_font_name): Delete it.
11346 (set_lface_from_font): Renamed from
11347 set_lface_from_font_and_fontset. Caller changed. Don't set
11348 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
11349 for face.
11350 (merge_face_vectors): Copy font-spec if necessary.
11351 Clear properties of the font-spec if necessary.
11352 (merge_face_ref): Clear properties of the font-spec if necessary.
11353 (Finternal_set_lisp_face_attribute): Likewise.
11354 (set_font_frame_param): Use font_load_for_lface to load a
11355 font-object, and call Fmodify_frame_parameters with it.
11356 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
11357 font name by Ffont_xlfd_name.
11358 (Finternal_lisp_face_attribute_values): Don't check QCweight,
11359 QCslant, and QCwidth.
11360 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
11361 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
11362 Compare fonts by EQ.
11363 (lookup_non_ascii_face): Deleted.
11364 (face_for_font): The 2nd argument changed.
11365 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
11366 Check atomic font properties by case insensitive.
11367 (realize_non_ascii_face): Set face->overstrike correctly.
11368 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
11369 (dump_realized_face): Get font name from
11370 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
11371
11372 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
11373 conditionals. Don't check enable_font_backend. Delete all codes
11374 used only when USE_FONT_BACKEND is not defined.
11375 (xic_create_xfontset): Original code deleted and renamed from
11376 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
11377 (x_make_gc): Don't set GCFont in GCs.
11378 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
11379 opened by "fixed".
11380 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
11381 find_ccl_program_func, query_font_func, set_frame_fontset_func,
11382 get_font_repertory_func.
11383
11384 * xfont.c: Include <stdlib.h> and "ccl.h".
11385 (struct xfont_info): New structure.
11386 (xfont_query_font): Deleted.
11387 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
11388 moved from xterm.c.
11389 (xfont_driver): Adjusted for the change of struct font_driver.
11390 (compare_font_names): New function.
11391 (xfont_list_pattern): Sort font names case insensitively. Make
11392 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
11393 (xfont_list): Return a list, not vector.
11394 (xfont_match): If the font doesn't have QCname property, generate
11395 a name from the other font properties.
11396 (xfont_open): Return a font-object. Adjusted for the change of
11397 struct font. Get underline_thickness and underline_position from
11398 font property. Don't update dpyinfo->smallest_font_height and
11399 dpyinfo->smallest_char_width.
11400 (xfont_close): Don't free struct font.
11401 (xfont_prepare_face): Adjusted for the change of struct font.
11402 (xfont_done_face): Deleted.
11403 (xfont_has_char): Adjusted for the change of struct font.
11404 (xfont_encode_char, xfont_draw): Likewise.
11405 (xfont_check): New function.
11406
11407 * xftfont.c (xftfont_list): Adjusted for the change of `list'
11408 callback function.
11409 (xftfont_match): Adjusted for the format change of font-entity.
11410 (xftfont_open): Adjusted for the format change of font-entity and
11411 font-object. Adjusted for the change of struct font. Return a
11412 font-object. Don't update dpyinfo->smallest_font_height and
11413 dpyinfo->smallest_char_width.
11414 (xftfont_close): Block input while calling XftFontClose.
11415 (xftfont_prepare_face): Don't block input while calling
11416 xftfont_get_colors. Adjusted for the change of struct font.
11417 (xftfont_shape): Return value of error case fixed.
11418
11419 * xrdb.c (x_load_resources): Don't setup a fontset resource.
11420
11421 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
11422 conditionals.
11423 (FONT_WIDTH): Return (f)->max_width.
11424 (struct x_display_info): Delete member `font'.
11425 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
11426 (x_find_ccl_program, x_get_font_repertory): Delete externs.
11427 (struct x_output): Change type of `font' to `struct font *'.
11428
11429 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
11430 conditionals. Don't check enable_font_backend. Delete all codes
11431 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
11432 (x_per_char_metric, x_encode_char): Deleted.
11433 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
11434 (x_compute_glyph_string_overhangs): Adjusted for the change of
11435 `struct face'.
11436 (x_draw_glyph_string_foreground)
11437 (x_draw_composite_glyph_string_foreground): Likewise.
11438 (x_draw_glyph_string): Likewise. Use font->underline_position and
11439 font->underline_thickness.
11440 (x_new_font): Renamed from x_new_fontset2.
11441 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
11442 (x_check_font): Call `check' method of a font driver.
11443 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
11444 (x_query_font, x_get_font_repertory): Deleted.
11445 (x_find_ccl_program): Renamed and moved to xfont.c.
11446 (x_redisplay_interface): Adjusted for the change of `struct
11447 redisplay_interface'.
11448
11449 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
11450 conditionals. Don't check enable_font_backend. Delete all codes
11451 used only when USE_FONT_BACKEND is not defined. Surround non-used
11452 code by "#ifdef OLD_FONT" and "endif".
11453 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
11454
11455 * w32font.h (struct w32font_info): New member.
11456 (FONT_COMPAT): New macro.
11457 (w32font_open_internal): Prototype adjusted.
11458
11459 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
11460 OLD_FONT" and "endif".
11461
11462 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
11463 conditionals. Don't check enable_font_backend. Delete all codes
11464 used only when USE_FONT_BACKEND is not defined.
11465 (w32font_open): Return a font-object. Make a font-object by
11466 font_make_object. Adjusted for the change of struct w32font_info.
11467 (w32font_close): Don't free struct font. Adjusted for the change
11468 of struct w32font_info.
11469 (w32font_encode_char, w32font_text_extents, w32font_draw):
11470 Adjusted for the change of struct w32font_info.
11471 (w32font_draw): Likewise.
11472 (w32font_list_internal): Return a list, not vector.
11473 (w32font_open_internal): Change the 4th arg to font-object.
11474 Adjusted for the change of struct w32font_info and font-object format.
11475 (add_font_name_to_list): Don't downcase names.
11476 (w32_enumfont_pattern_entity): Make a font-entity by
11477 font_make_entity. Adjusted for the format change of font-entity.
11478 Use FONT_SET_STYLE to set a style-related font property. If a
11479 font is scalable, set avgwidth property to 0. Set font-entity
11480 property by font_put_extra.
11481 (font_matches_spec): Adjusted for the format change of font-entity.
11482 (w32_weight_table, w32_decode_weight): New variables.
11483 (w32_encode_weight): New function.
11484 (fill_in_logfont): Adjusted for the format change of font-spec.
11485 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
11486 weight value.
11487 (w32font_driver): Adjusted for the change of struct font_driver.
11488
11489 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
11490 conditionals. Don't check enable_font_backend. Surround non-used
11491 code by "#ifdef OLD_FONT" and "endif".
11492 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
11493 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
11494
11495 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
11496 conditionals. Don't check enable_font_backend. Delete all codes
11497 used only when USE_FONT_BACKEND is not defined. Surround non-used
11498 code by "#ifdef OLD_FONT" and "endif".
11499
11500 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
11501 (uniscribe_open): Return value changed to font-object.
11502 Adjusted for the format change of font-object.
11503 (uniscribe_otf_capability): Adjusted for the change of struct font.
11504 (add_opentype_font_name_to_list): Don't downcase names.
11505 (uniscribe_font_driver): Adjusted for the change of struct
11506 font_driver.
11507
115082008-05-13 Chong Yidong <cyd@stupidchicken.com>
11509
11510 * dispnew.c (update_frame_1): Check if tty output is still valid
11511 before flushing it.
11512
115132008-05-13 Jan Djärv <jan.h.d@swipnet.se>
11514
11515 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
11516 to Gtk+ menus.
11517
115182008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
11519
11520 * dired.c (file_name_completion): Tweak the code so as to always do it
11521 in a single pass. Tighten the scope of some variables.
11522
11523 * dired.c (Qdefault_directory): New var.
11524 (file_name_completion): Use it instead of Fexpand_file_name.
11525 (syms_of_dired): Initialize it.
11526
115272008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
11528
11529 * fileio.c (double_dollars): Remove dead code.
11530
115312008-05-10 Eli Zaretskii <eliz@gnu.org>
11532
11533 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
11534 Mention w32-get-true-file-attributes in doc string.
11535
11536 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
11537
115382008-05-09 Glenn Morris <rgm@gnu.org>
11539
11540 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
11541 2008-04-23.
11542
115432008-05-09 Eli Zaretskii <eliz@gnu.org>
11544
11545 Support for reporting owner and group of each file on MS-Windows:
11546 * dired.c (stat_uname, stat_gname): New functions, with special
11547 implementation for w32.
11548 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
11549
11550 * w32.c: Rename the_passwd_* to dflt_passwd_*.
11551 (dflt_group_name): New static variable.
11552 (dflt_group): Rename from the_group.
11553 (init_user_info): Init dflt_group fields. Get user's group name
11554 from LookupAccountSid.
11555 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
11556 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
11557 New initialization states.
11558 (globals_of_w32): Initialize them to zero. Initialize the default
11559 group name to "None".
11560 (GetFileSecurity_Name): New global var, the name of the function
11561 to call for GetFileSecurity.
11562 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
11563 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
11564 (get_file_security, get_security_descriptor_owner)
11565 (get_security_descriptor_group, is_valid_sid)
11566 (get_file_security_desc, get_rid, get_name_and_id)
11567 (get_file_owner_and_group): New functions.
11568 (stat): Use get_file_security_desc and get_file_owner_and_group to
11569 report the owner and primary group of each file. Don't ignore the
11570 high 32 bits of file's size, now that st_size is 64-bit wide.
11571 Fix test when to get true file attributes.
11572 (init_user_info): Use get_rid instead of equivalent inline code.
11573 (fstat): Don't ignore the high 32 bits of file's size.
11574
115752008-05-09 Chong Yidong <cyd@stupidchicken.com>
11576
11577 * image.c (png_load): Use correct bit-depth for setting background
11578 color.
11579
115802008-05-08 Eli Zaretskii <eliz@gnu.org>
11581
11582 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
11583 epa-hook.elc.
11584
115852008-05-08 Juanma Barranquero <lekktu@gmail.com>
11586
11587 * font.c (Ffont_match_p): Don't use `iff' in docstring.
11588
115892008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
11590
11591 * macfns.c (Fx_create_frame): Make a copy of frame parameters
11592 because the original parameters are in pure storage now.
11593 (mac_window): Remove unused params. Update callers.
11594
115952008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
11596
11597 * lread.c (substitute_object_recurse): Use lower-level primitives.
11598 Don't signal errors when traversing sub-char-tables.
11599 Don't loop over all the possible characters when traversing char-tables.
11600
11601 * print.c (print_preprocess): Add sub-char-tables to the print-table,
11602 just like we do in print.c.
11603
116042008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
11605
11606 * minibuf.c (Ftry_completion): Remove code left over from when we used
11607 scmp instead of Fcompare_strings.
11608
116092008-05-04 Juanma Barranquero <lekktu@gmail.com>
11610
11611 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
11612
116132008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11614
11615 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
11616 Create bitmap context in native byte order.
11617
11618 * macterm.c (XDrawLine)
11619 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
11620 context in native byte order.
11621
116222008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11623
11624 * config.in: Regenerate.
11625
11626 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
11627 New definitions for Image I/O support.
11628 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
11629 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
11630 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
11631 (mac_data_provider_release_data, image_load_image_io)
11632 [USE_MAC_IMAGE_IO]: New functions.
11633 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
11634 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
11635 (init_image_func_pointer) [MAC_OSX]: Remove function.
11636 (image_load_quartz2d) [MAC_OSX]: Check availability of
11637 CGImageCreateWithPNGDataProvider at compile time.
11638 Use lowercase `false' for boolean constant.
11639 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
11640 Use image_load_image_io.
11641 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
11642 Don't check MyCGImageCreateWithPNGDataProvider.
11643 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
11644 Don't call init_image_func_pointer.
11645
11646 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
11647
11648 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
11649 Make variable non-static.
11650 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
11651 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
11652
11653 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
11654 (RED_FROM_ULONG): Mask off higher bits.
11655 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
11656
11657 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
11658 Include AvailabilityMacros.h.
11659 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
11660 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
11661
116622008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
11663
11664 * chartab.c (Fset_char_table_range): If range is t, really set all
11665 chars to that value.
11666
116672008-05-03 Eli Zaretskii <eliz@gnu.org>
11668
11669 * dired.c (Ffile_attributes): Don't allow the device number become
11670 negative.
11671
116722008-05-02 Daiki Ueno <ueno@unixuser.org>
11673
11674 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
11675
116762008-05-02 Juri Linkov <juri@jurta.org>
11677
11678 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
11679 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
11680 DEFAULT argument as a list of default values in docstrings.
11681
116822008-05-01 Chong Yidong <cyd@stupidchicken.com>
11683
11684 * puresize.h (BASE_PURESIZE): Increase to 1210000.
11685
116862008-05-01 Martin Rudalics <rudalics@gmx.at>
11687
11688 * dispnew.c (change_frame_size_1): Preserve small windows when
11689 shrinking frames by calling set_window_height|width with third
11690 arg 2.
11691
11692 * window.h (struct window): Replace field too_small_ok by field
11693 resize_proportionally.
11694
11695 * window.c (make_window): Initialize resize_proportionally.
11696 (enlarge_window): Temporarily set resize_proportionally to make
11697 sure that shrink_windows does scale the window proportionally.
11698 (shrink_windows): When window has resize_proportionally set try
11699 to shrink it proportionally by stealing from other windows.
11700 (struct saved_window, Fset_window_configuration)
11701 (compare_window_configurations): Handle resize_proportionally.
11702 (WINDOW_TOTAL_SIZE): New macro.
11703 (window_min_size, shrink_windows, size_window): Use it.
11704 (check_min_window_sizes): Remove. Invalid values of
11705 window-min-height|width are handled by window_min_size_2 now.
11706 (size_window, Fsplit_window, enlarge_window)
11707 (adjust_window_trailing_edge, grow_mini_window): Don't call
11708 check_min_window_sizes.
11709 (window_min_size_2, window_min_size_1, window_min_size):
11710 New argument safe_p for retrieving "safe" minimum sizes.
11711 (Fdisplay_buffer, Fsplit_window, enlarge_window)
11712 (adjust_window_trailing_edge, grow_mini_window):
11713 Adjust arguments of window_min_size... functions.
11714 (shrink_windows): Argument min_size removed. New argument
11715 safe_p allows shrinking windows to their safe minimum sizes.
11716 Calculate minimum size and decide whether a window shall be
11717 deleted for each window individually.
11718 (size_window): When nodelete_p equals 2, tell shrink_windows to
11719 delete windows only if their new minimum size is no more safe.
11720 (shrink_window_lowest_first): Call window_min_size_1 to make
11721 sure to preserve modeline of bottom-most window when resizing
11722 the minibuffer.
11723 (Fset_window_configuration, Fcurrent_window_configuration)
11724 (compare_window_configurations): Do not handle
11725 window-min-height|width any more.
11726 (syms_of_window): Clarify window-min-height|width doc-strings.
11727
117282008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
11729
11730 * dired.c (file_name_completion): Fix up the encoding/decoding issue
11731 some more. Copy some of the code from Ftry_completions.
11732 Remove special case code that dates back to initial revision when the
11733 slash was only added when necessary and that can't trigger nowadays.
11734
117352008-04-27 Kenichi Handa <handa@m17n.org>
11736
11737 * font.c (font_prop_validate): Signal `error' instead of `font'.
11738
117392008-04-29 Jason Rumney <jasonr@gnu.org>
11740
11741 * w32fns.c (Fw32_battery_status): New defun.
11742 (syms_of_w32fns): Defsubr it.
11743
117442008-04-28 Andreas Schwab <schwab@suse.de>
11745
11746 * dired.c (file_name_completion): Fix another mixing of encoded
11747 and decoded names.
11748
117492008-04-28 Juanma Barranquero <lekktu@gmail.com>
11750
11751 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
11752
117532008-04-27 Juanma Barranquero <lekktu@gmail.com>
11754
11755 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
11756
117572008-04-27 Andreas Schwab <schwab@suse.de>
11758
11759 * dired.c (file_name_completion): Fix inappropriate mixing of
11760 encoded and decoded names.
11761
11762 * xterm.c (XTread_socket): Fix use of uninitialized variable.
11763
11764 * puresize.h (BASE_PURESIZE): Increase to 1200000.
11765
117662008-04-26 Eli Zaretskii <eliz@gnu.org>
11767
11768 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
11769 2008-03-31, it's not needed anymore with `struct stat' definition
11770 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
11771 for the same reasons.
11772
117732008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
11774
11775 * m/sparc.h: Additional redefinitions for GNU/Linux.
11776
117772008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11778
11779 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
11780 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
11781 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
11782 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
11783 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
11784 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
11785 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
11786 Likewise.
11787
11788 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
11789 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
11790 (mac_ax_number_of_characters): Add externs.
11791 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
11792 [USE_MAC_TSM]: Likewise.
11793 (mac_handle_text_input_event) [MAC_OSX]:
11794 Handle kEventTextInputOffsetToPos for no active input area case.
11795 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
11796 (mac_handle_document_access_event)
11797 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
11798 (install_application_handler) [MAC_OSX]: Register handlers for
11799 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
11800 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
11801 Register mac_handle_document_access_event.
11802
11803 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
11804 Make functions non-static.
11805
118062008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
11807
11808 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
11809 (read_file_name_completion_ignore_case, insert_default_directory)
11810 (Qdefault_directory): Move to minibuffer.el.
11811 (Fread_file_name): Call the new `read-file-name' instead.
11812
118132008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11814
11815 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
11816 Make function non-static.
11817 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
11818 Remove function.
11819 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
11820 Move to mactoolbox.c.
11821 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
11822
11823 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
11824 (mac_rect_make): New macro.
11825
11826 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
11827 instead of float.
11828 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
11829 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
11830 (XSetBackground) [USE_CG_DRAWING]: Likewise.
11831 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
11832 CGRectMake.
11833 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
11834 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
11835 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
11836 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
11837 instead of WindowRef in argument type.
11838 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
11839 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
11840 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
11841 instead of DISPLAY. All uses changed.
11842 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
11843 (x_calc_absolute_position): Simplify so as not to use
11844 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
11845
11846 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
11847 instead of WindowRef in argument type.
11848 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
11849 [TARGET_API_MAC_CARBON]: Remove externs.
11850 (create_apple_event, mac_event_parameters_to_lisp)
11851 [TARGET_API_MAC_CARBON]: Add externs.
11852
11853 * mactoolbox.c (Vmac_ts_script_language_on_focus)
11854 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
11855 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
11856 is clicked.
11857 (x_activate_menubar): Remove extern for saved_menu_event_location.
11858 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
11859 Move from mac.c.
11860
118612008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11862
11863 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
11864 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
11865
118662008-04-23 Jason Rumney <jasonr@gnu.org>
11867
11868 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
11869 attributes only for local files.
11870
11871 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
11872 default to Qlocal.
11873
118742008-04-22 Juri Linkov <juri@jurta.org>
11875
11876 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
11877 read-buffer-to-switch instead of using the letter "B".
11878
118792008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
11880
11881 * fileio.c (Qdefault_directory): New variable.
11882 (Fread_file_name): Use it to pass `dir' to the completion functions.
11883
118842008-04-20 Chong Yidong <cyd@stupidchicken.com>
11885
11886 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
11887
118882008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
11889
11890 * keyboard.c (Vpre_help_message): Remove.
11891 (show_help_echo): Remove default C code.
11892
11893 * dired.c (directory_files_internal, file_name_completion):
11894 Only call ENCODE_FILE if the string is indeed decoded.
11895
118962008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
11897
11898 * Makefile.in (TOOLKIT_DEFINES): Remove.
11899 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
11900
119012008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11902
11903 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
11904 (mactoolbox.o): New target.
11905
11906 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
11907 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
11908
11909 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
11910 Use mac_set_frame_window_background instead of XSetWindowBackground.
11911 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
11912 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
11913 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
11914 instead of SetWindowTitleWithCFString.
11915 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
11916 Move function to mactoolbox.c.
11917 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
11918 Use mac_set_window_modified instead of SetWindowModified.
11919 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
11920 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
11921 (Fx_focus_frame): Use mac_front_non_floating_window instead of
11922 FrontNonFloatingWindow. Use mac_activate_window instead of
11923 ActivateWindow. Use mac_active_non_floating_window instead of
11924 ActiveNonFloatingWindow.
11925 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
11926 Use mac_show_hourglass and mac_hide_hourglass.
11927 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
11928 instead of GetGlobalMouse.
11929 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
11930 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
11931 Use mac_bring_window_to_front instead of BringToFront.
11932 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
11933 mactoolbox.c.
11934 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
11935 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
11936 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
11937 mactoolbox.c.
11938
11939 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
11940 (XtPointer): Move typedef from macmenu.c.
11941 (enum button_type): Move enum from macmenu.c.
11942 (widget_value): Move typedef from macmenu.c.
11943 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
11944 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
11945 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
11946 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
11947 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
11948 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
11949 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
11950 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
11951 (Selection): Move typedef from macselect.c.
11952 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
11953 macterm.c.
11954 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
11955 (mac_is_window_collapsed, mac_bring_window_to_front)
11956 (mac_send_window_behind, mac_hide_window, mac_show_window)
11957 (mac_collapse_window, mac_front_non_floating_window)
11958 (mac_active_non_floating_window, mac_activate_window)
11959 (mac_move_window_structure, mac_move_window, mac_size_window)
11960 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
11961
11962 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
11963 (enum mac_menu_kind): Move enum to mactoolbox.c.
11964 (min_menu_id): Move variable to mactoolbox.c.
11965 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
11966 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
11967 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
11968 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
11969 [TARGET_API_MAC_CARBON]: Likewise.
11970 (XtPointer): Move typedef to macgui.h.
11971 (enum button_type): Move enum to macgui.h.
11972 (widget_value): Move typedef to macgui.h.
11973 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
11974 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
11975 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
11976 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
11977 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
11978 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
11979 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
11980 (popup_activated_flag): Make variable non-static.
11981 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
11982 (add_menu_item, fill_menu, dispose_menus):
11983 Move functions to mactoolbox.c.
11984 (restore_show_help_function, menu_target_item_handler)
11985 (install_menu_target_item_handler, mac_handle_dialog_event)
11986 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
11987 [TARGET_API_MAC_CARBON]: Likewise.
11988 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
11989 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11990 (find_and_call_menu_selection, name_is_separator): Make function
11991 non-static.
11992 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
11993 to mactoolbox.c.
11994 (set_frame_menubar): Don't call install_menu_quit_handler.
11995 (menu_item_selection): New variable.
11996 (mac_menu_show): Use create_and_show_popup_menu.
11997 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
11998 selection but set variable menu_item_selection. All uses changed.
11999 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
12000 Call install_menu_quit_handler. Move to mactoolbox.c.
12001
12002 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
12003 (Selection): Move typedef to macgui.h.
12004 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
12005 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
12006 Make variables non-static.
12007 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
12008 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
12009 Make functions non-static.
12010 (Vmac_service_selection) [MAC_OSX]: Likewise.
12011 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
12012 (mac_valid_selection_target_p, mac_clear_selection)
12013 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
12014 (mac_put_selection_value, mac_selection_has_target_p)
12015 (mac_get_selection_value, mac_get_selection_target_list)
12016 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
12017 Move functions to mactoolbox.c.
12018 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
12019 Likewise.
12020 (copy_scrap_flavor_data, mac_handle_service_event)
12021 (install_service_handler) [MAC_OSX]: Likewise.
12022 (syms_of_macselect) <Vmac_dnd_known_types>:
12023 Use mac_dnd_default_known_types.
12024
12025 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
12026 Move to mactoolbox.c.
12027 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
12028 (Fx_selection_owner_p): Add EXFUN.
12029 (install_window_handler, remove_window_handler, XSetWindowBackground):
12030 Remove externs.
12031 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
12032 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
12033 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
12034 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
12035 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
12036 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
12037 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
12038 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
12039 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
12040 (create_and_show_popup_menu, mac_get_selection_from_symbol)
12041 (mac_valid_selection_target_p, mac_clear_selection)
12042 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
12043 (mac_put_selection_value, mac_selection_has_target_p)
12044 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
12045 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
12046 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
12047 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
12048 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
12049 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
12050 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
12051 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
12052 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
12053
12054 * mactoolbox.c: New file.
12055
120562008-04-18 Jason Rumney <jasonr@gnu.org>
12057
12058 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
12059
120602008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
12061
12062 * character.c (Fmultibyte_char_to_unibyte):
12063 Return latin1 chars unchanged.
12064
12065 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
12066 relocated if it points to `name'.
12067
120682008-04-17 Kenichi Handa <handa@m17n.org>
12069
12070 * data.c (Faset): Allow setting a multibyte character in an
12071 ASCII-only unibyte string.
12072
12073 * lisp.h (STRING_SET_MULTIBYTE): New macro.
12074
120752008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
12076
12077 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
12078 done in config.h.
12079
120802008-04-16 Juanma Barranquero <lekktu@gmail.com>
12081
12082 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
12083 (Fchar_direction): Add usage in the docstring.
12084
120852008-04-15 Chong Yidong <cyd@stupidchicken.com>
12086
12087 * keyboard.c (read_key_sequence): Remove always-true checks.
12088
120892008-04-14 Jason Rumney <jasonr@gnu.org>
12090
12091 * w32font.c (w32font_open_internal): Set max_bounds.descent in
12092 compatibility struct, for better underline positioning.
12093
120942008-04-13 David Hansen <david.hansen@gmx.net>
12095
12096 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
12097 string.
12098
120992008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
12100
12101 * m/hp800.h (XUINT, XSET): Remove.
12102
121032008-04-12 Juanma Barranquero <lekktu@gmail.com>
12104
12105 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
12106 previous change.
12107
121082008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
12109
12110 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
12111 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
12112
121132008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
12114
12115 * keymap.h (map_keymap_canonical): Declare.
12116 * xmenu.c (single_keymap_panes): Use it.
12117
121182008-04-11 Glenn Morris <rgm@gnu.org>
12119
12120 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
12121 set the target's value to that of the alias.
12122
121232008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
12124
12125 * term.c (set_tty_color_mode): Left over typo.
12126
121272008-04-10 Michael Albinus <michael.albinus@gmx.de>
12128
12129 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
12130 only after check for file name handler functions. Signal, when
12131 native functionality is not supported.
12132 (syms_of_fileio): Declare it unconditionally.
12133
121342008-04-10 Jason Rumney <jasonr@gnu.org>
12135
12136 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
12137 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
12138
12139 * w32.c (logon_network_drive): Also logon to remote drives that
12140 are mapped to drive letters.
12141
121422008-04-10 Glenn Morris <rgm@gnu.org>
12143
12144 * xdisp.c (truncate-partial-width-windows): Doc fix.
12145
121462008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
12147
12148 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
12149 Move functions to minibuffer.el.
12150 (syms_of_fileio): Don't declare them.
12151
121522008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
12153
12154 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
12155 (syms_of_minibuf): Remove its initialization.
12156
12157 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
12158
121592008-04-09 Juanma Barranquero <lekktu@gmail.com>
12160
12161 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
12162
121632008-04-09 Jason Rumney <jasonr@gnu.org>
12164
12165 * makefile.w32-in (distclean): Delete makefile too.
12166 (maintainer-clean): New target.
12167
12168 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
12169
12170 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
12171 for new font backend and composite cases.
12172
121732008-04-09 Jan Djärv <jan.h.d@swipnet.se>
12174
12175 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
12176 Most of the code moved to run_timers.
12177 (do_pending_atimers): Call run_timers.
12178 (run_timers): New function.
12179
12180 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
12181 run atimers.
12182
12183 * process.c (wait_reading_process_output): The same as above.
12184
121852008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
12186
12187 * minibuf.c (last_exact_completion): Remove variable.
12188 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
12189 (complete_and_exit_1, complete_and_exit_2)
12190 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
12191 (Fdisplay_completion_list, display_completion_list_1)
12192 (Fminibuffer_completion_help, Fself_insert_and_exit)
12193 (Fexit_minibuffer, Fminibuffer_message): Move functions to
12194 minibuffer.el.
12195 (syms_of_minibuf): Remove corresponding initializations.
12196
12197 * keyboard.c (Qdeactivate_mark): New var.
12198 (command_loop_1): Use it to call `deactivate-mark'.
12199 (syms_of_keyboard): Initialize it.
12200
12201 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
12202 to another frame.
12203 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
12204 Don't call set_tty_color_mode.
12205 (store_frame_param): Reset previous_frame rather than call
12206 set_tty_color_mode.
12207 * term.c (set_tty_color_mode): Rewrite.
12208 * dispextern.h (set_tty_color_mode): New type.
12209 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
12210
122112008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
12212
12213 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
12214 for generic chars, which do not exist any more in emacs-unicode.
12215
122162008-04-08 Michael Albinus <michael.albinus@gmx.de>
12217
12218 * coding.c (detect_coding_emacs_mule)
12219 (Ffind_operation_coding_system): Fix typo.
12220
122212008-04-08 Jason Rumney <jasonr@gnu.org>
12222
12223 * w32uniscribe.c (SNAME): Extract only symbol name.
12224
12225 * w32font.h (struct w32_metric_cache): New struct.
12226 (w32font_info): Use it.
12227 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
12228 (CACHE_BLOCKSIZE): New constants.
12229
12230 * w32font.c (Qja, Qko, Qzh): New symbols.
12231 (syms_of_w32font): Initialise them.
12232 (font_matches_spec): Use them to filter by language.
12233 (recompute_cached_metrics): Remove function.
12234 (compute_metrics, clear_cached_metrics): New functions.
12235 (w32font_encode_char): Use them to manage metric cache.
12236 (w32font_text_extents): Cache metrics for all glyphs on demand.
12237 Delay converting glyph indices to WORD until needed.
12238 (w32font_open_internal): Initialize metric cache to empty.
12239 (registry_to_w32_charset): Charset should always be a symbol.
12240 (fill_in_logfont, list_all_matching_fonts): Family should
12241 always be a symbol.
12242
122432008-04-06 Jason Rumney <jasonr@gnu.org>
12244
12245 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
12246 Give up if glyph indices not supported. Use uniscribe obtained
12247 ABC widths for individual metrics. Map glyph clusters back to
12248 characters using fClusterStart flag. Return number of glyphs
12249 produced, not chars processed.
12250 (uniscribe_shape): Map char at FROM to current glyph.
12251
122522008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12253
12254 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
12255 Use SetMenuItemHierarchicalMenu.
12256
122572008-04-05 Jason Rumney <jasonr@gnu.org>
12258
12259 * image.c (pbm_load): Allow color values up to 65535.
12260 Throw an error if max_color_idx is outside the supported range.
12261 Report an error when image size is invalid.
12262 Read two bytes at a time when raw images have max_color_idx above 255.
12263
122642008-04-05 Eli Zaretskii <eliz@gnu.org>
12265
12266 * w32.c (readdir): If FindFirstFile/FindNextFile return in
12267 cFileName a file name that includes `?' characters, use the 8+3
12268 alias in cAlternateFileName instead.
12269
122702008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
12271
12272 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
12273 append "CCL: Quitted" when the CCL program is quitted.
12274 (setup_ccl_program): Initialize ccl->quit_silently to zero.
12275
12276 * ccl.h (struct ccl_program): New member quit_silently.
12277
122782008-04-05 Chong Yidong <cyd@stupidchicken.com>
12279
12280 * search.c (compile_pattern_1): Treat non-nil and non-string of
12281 search-spaces-regexp as nil.
12282
12283 * minibuf.c (Fassoc_string): Tweak docstring.
12284
122852008-04-05 Eli Zaretskii <eliz@gnu.org>
12286
12287 * dired.c (Ffile_attributes): Support inode numbers wider than 32
12288 bits. Remove ugly WINDOWSNT-specific kludge introduced on
12289 2008-03-14 to force inode be positive.
12290
12291 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
12292 _S_* ones, since we now use our own sys/stat.h.
12293 (stat, fstat): Don't mangle the inode number.
12294 (init_user_info): Don't restrict UID and GID to 0-60000 range.
12295
122962008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
12297
12298 * frame.h (struct frame): Give one more bit to `visible' since we use
12299 values larger than 1 to indicate obscured frames on ttys.
12300
12301 * keymap.c (Qkeymap_canonicalize): New var.
12302 (Fmap_keymap_internal): New fun.
12303 (describe_map): Use keymap-canonicalize.
12304
12305 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
12306 (Fundo_boundary): Set them.
12307 (syms_of_undo): Initialize them.
12308 (record_point): Use them instead of last_point_position*.
12309 (last_undo_buffer): Change type.
12310
123112008-04-04 Jason Rumney <jasonr@gnu.org>
12312
12313 * w32font.c (w32font_text_extents): Use font's ascent and descent.
12314 (recompute_cached_metrics): Don't set ascent and descent per char.
12315
12316 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
12317 (uniscribe_check_otf): Add GC protection before consing.
12318 Rearrange loop for counting features.
12319
123202008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
12321
12322 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
12323 buffer with byte-size of source buffer.
12324
123252008-04-03 Chong Yidong <cyd@stupidchicken.com>
12326
12327 * callint.c (Fcall_interactively): Handle temporary region even
12328 when shift-select-mode is off.
12329
123302008-04-03 Jason Rumney <jasonr@gnu.org>
12331
12332 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
12333
123342008-04-03 Kenichi Handa <handa@m17n.org>
12335
12336 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
12337 (CATEGORY_MASK_UTF_16): Likewise.
12338 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
12339 binary file.
12340 (detect_coding): Add null-byte detection for a binary file.
12341 (detect_coding_system): Likewise.
12342
123432008-04-03 Jason Rumney <jasonr@gnu.org>
12344
12345 * w32uniscribe.c: New file.
12346
12347 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
12348
12349 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
12350
12351 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
12352 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
12353 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
12354 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
12355 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
12356 (Qphonetic): New symbols.
12357 (syms_of_w32font): Initialize them.
12358 (font_supported_scripts): Use them.
12359 (w32font_list_family): List all charsets.
12360 (w32font_text_extents, recompute_cached_metrics): Fix metric
12361 calculations.
12362 (w32_enumfont_pattern_entity): Make full_type a DWORD.
12363 Give opentype fonts their own format.
12364 (font_matches_spec): New arguments backend and logfont.
12365 Handle :otf spec for uniscribe backend.
12366 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
12367 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
12368
12369 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
12370 font backend.
12371 (globals_of_w32fns): Initialize uniscribe font backend.
12372
12373 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
12374 dependencies.
12375 (w32uniscribe.$(O)): New file to build.
12376 (FONT_OBJ): Include w32uniscribe.$(O).
12377 (LIBS): Add uniscribe libraries.
12378
12379 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
12380
123812008-04-02 Chong Yidong <cyd@stupidchicken.com>
12382
12383 * callint.c (Vshift_select_mode): New var.
12384 (Finteractive): Document new ^ spec.
12385 (Fcall_interactively): Call handle-shift-selection if the ^ spec
12386 is present.
12387
12388 * keyboard.c (Vthis_command_keys_shift_translated): New var.
12389 (command_loop_1): Avoid running the direct display versions of
12390 forward-char and backward-char if shift-selection may occur.
12391 (read_key_sequence): Set Vthis_command_keys_shift_translated if
12392 shift-translation takes place.
12393
12394 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
12395 avoid clobbering by define-minor-mode.
12396
12397 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
12398 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
12399
12400 * syntax.c (Fforward_word): Add ^ interactive spec.
12401
12402 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
12403 (Fscroll_right): Add ^ interactive spec.
12404
124052008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
12406
12407 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
12408
12409 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
12410
12411 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
12412
124132008-03-31 Juri Linkov <juri@jurta.org>
12414
12415 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
12416
124172008-03-30 Jan Djärv <jan.h.d@swipnet.se>
12418
12419 * gtkutil.c (xg_set_geometry): Fix indentation.
12420 (xg_resize_outer_widget): Remove.
12421 (x_wm_size_hint_off): Fix indentation.
12422 (xg_frame_set_char_size): Call flush_and_sync after
12423 gtk_window_resize.
12424 (x_wm_set_size_hint): Pass NULL as geometry window to
12425 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
12426 Add menu bar and tool bar height to base height.
12427 (xg_update_frame_menubar, free_frame_menubar)
12428 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
12429 (update_frame_tool_bar, free_frame_tool_bar):
12430 Change xg_resize_outer_widget to xg_frame_set_char_size.
12431
124322008-03-30 Michael Albinus <michael.albinus@gmx.de>
12433
12434 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
12435 (Fdbus_call_method): New parameter TIMEOUT.
12436 (dbus-send-signal): Optimize UNGCPRO call.
12437
124382008-03-29 Juri Linkov <juri@jurta.org>
12439
12440 * window.c (Fdisplay_buffer): Move call to
12441 Vsplit_window_preferred_function out of conditions that check
12442 if window is eligible for vertical splitting.
12443 When Vsplit_window_preferred_function is non-nil, call it and use
12444 its non-nil return value as window. Otherwise, continue doing
12445 vertical splitting using Fsplit_window with arg horflag=nil.
12446 (syms_of_window) <Vsplit_window_preferred_function>: Change the
12447 default value from `split-window' to nil.
12448
124492008-03-29 Juri Linkov <juri@jurta.org>
12450
12451 * callint.c (Fcall_interactively): Revert 2008-03-16 change
12452 for interactive code letters 'b' and 'B'.
12453
124542008-03-29 Eli Zaretskii <eliz@gnu.org>
12455
12456 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
12457 multibyte string.
12458
124592008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
12460
12461 * keyboard.c (pending_funcalls): New var.
12462 (timer_check): Run it.
12463 (syms_of_keyboard): Initialize it.
12464 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
12465 (Vdelete_terminal_functions): New vars.
12466 (syms_of_terminal): Initialize them.
12467 (Fdelete_terminal): Run delete-terminal-functions.
12468 * xdisp.c (safe_eval): Rewrite.
12469 (safe_call2): New fun.
12470 * frame.c (Qdelete_frame_functions): New var.
12471 (syms_of_frame): Initialize it.
12472 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
12473 * lisp.h (safe_call2, pending_funcalls): Declare.
12474
124752008-03-28 Andreas Schwab <schwab@suse.de>
12476
12477 * indent.c (Fmove_to_column): Move declaration before statements.
12478
124792008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
12480
12481 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
12482 (struct frame): Use bit fields for boolean vars.
12483
12484 * process.c (server_accept_connection): Simplify naming.
12485 (emacs_get_tty_pgrp): Use SDATA.
12486
12487 * coding.c (decode_coding_object): Fix last change.
12488
124892008-03-27 Jason Rumney <jasonr@gnu.org>
12490
12491 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
12492
124932008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
12494
12495 * charset.c (Fdefine_charset_internal): Change the way of
12496 registering charsets in Vcharset_order_list.
12497 (syms_of_charset): Make the charset `eight-bit' supplementary.
12498
124992008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
12500
12501 * regex.c (EXTEND_BUFFER): Change order of pointer addition
12502 operations, to avoid having the difference between pointers
12503 overflow.
12504
125052008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
12506
12507 * indent.c (check_display_width): New fun.
12508 (scan_for_column): Use it.
12509
12510 * data.c (syms_of_data): Mark most-positive-fixnum and
12511 most-negative-fixnum as constants.
12512
12513 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
12514
12515 * indent.c (scan_for_column): Extract from current_column_1.
12516 Merge with the same code from Fmove_to_column.
12517 (current_column_1, Fmove_to_column): Use it.
12518
125192008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
12520
12521 * keymap.c (map_keymap_internal): New fun.
12522 (map_keymap): Use it.
12523 (Fmap_keymap_internal): New fun.
12524 (Fmap_keymap): Remove left-out test from before make_save_value.
12525
12526 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
12527
12528 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
12529 Use XCAR/XCDR.
12530
12531 * process.h (struct Lisp_Process): Remove filter_multibyte.
12532 * process.c (QCfilter_multibyte): Remove.
12533 (setup_process_coding_systems): Don't use filter_multibyte.
12534 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
12535 (read_process_output): Don't adjust multibyteness to filter_multibyte.
12536 (Fset_process_filter_multibyte): Change the coding-system to
12537 approximate the previous behavior.
12538 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
12539 coding-system.
12540
12541 * coding.c (decode_coding_object): When not decoding into a buffer,
12542 obey the coding system's preference of (uni|multi)byte.
12543
125442008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
12545
12546 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
12547 every char is changed and has a different byte-length.
12548 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
12549 Fix int -> EMACS_INT.
12550
125512008-03-23 David Hansen <david.hansen@gmx.net>
12552
12553 * dbusbind.c (xd_read_message): Remove extra copying of message
12554 strings. Check for NULL `interface' or `member'.
12555
125562008-03-22 Eli Zaretskii <eliz@gnu.org>
12557
12558 * w32.c (readdir): If FindFirstFile/FindNextFile return in
12559 cFileName a file name that includes `?' characters, use the 8+3
12560 alias in cAlternateFileName instead.
12561
125622008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
12563
12564 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
12565
125662008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
12567
12568 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
12569 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
12570 work on current_buffer only instead (that was already the case
12571 for some of the code anyway).
12572 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
12573 (temp_set_point, temp_set_point_both): Use EMACS_INT.
12574 (SET_PT, SET_PT_BOTH): Adjust.
12575 * intervals.h (set_point, temp_set_point, set_point_both)
12576 (temp_set_point_both): Remove redundant declarations.
12577
125782008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
12579
12580 * fileio.c (Finsert_file_contents):
12581 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
12582 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
12583 when buffer != current_buffer anyway.
12584
125852008-03-20 Andreas Schwab <schwab@suse.de>
12586
12587 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
12588 as default.
12589
125902008-03-19 Jason Rumney <jasonr@gnu.org>
12591
12592 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
12593 (syms_of_w32fns): Initialize them.
12594 (HOURGLASS_ID): New constant.
12595 (x_window_to_frame): Don't check hourglass_window.
12596 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
12597 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
12598 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
12599 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
12600 Only change the cursor if hourglass is not active.
12601 (Fx_create_frame): Initialize frame's current_cursor.
12602 (hourglass_atimer): Remove.
12603 (hourglass_started): New function.
12604 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
12605 (show_hourglass): Adapt to w32, changing argument to frame.
12606
12607 * w32term.h (struct w32_output): Remove hourglass_window.
12608 Add current_cursor.
12609
12610 * eval.c (call_debugger, Fsignal):
12611 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
12612 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
12613 (Fexecute_extended_command, cancel_hourglass_unwind):
12614 * minibuf.c (read_minibuf):
12615 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
12616
126172008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
12618
12619 * window.c (run_funs): New fun.
12620 (run_window_configuration_change_hook): Use it to run the buffer-local
12621 and the global part of the hook.
12622
12623 * xdisp.c (format_mode_line_unwind_data): Add window argument.
12624 (unwind_format_mode_line): Restore selected window.
12625 (x_consider_frame_title, Fformat_mode_line): Set selected window.
12626
126272008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
12628
12629 * editfns.c (Fchar_equal): Check they are valid characters.
12630
12631 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
12632
126332008-03-17 Andreas Schwab <schwab@suse.de>
12634
12635 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
12636 against a charset.
12637
12638 * lisp.h (Fbuffer_list): Declare.
12639
126402008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 12641
aac0c6e3
MR
12642 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
12643 handlebox_widget is != 0.
12644
126452008-03-16 Juri Linkov <juri@jurta.org>
12646
12647 * callint.c (Fcall_interactively): For interactive code letters
12648 'b' and 'B' put the buffer list into the list of default "future"
12649 values of the minibuffer.
12650
126512008-03-16 Andreas Schwab <schwab@suse.de>
12652
12653 * keyboard.c (read_key_sequence): Fix downcasing of letters with
12654 modifiers.
12655
12656 * regex.c (re_match_2_internal): Correct matching of a charset
12657 against latin-1 characters.
12658
126592008-03-16 Kenichi Handa <handa@m17n.org>
12660
12661 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
12662 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
12663 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
12664 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
12665 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
12666 CHAR_STRING_ADVANCE.
12667 (produce_chars): Fix for the case that the source and the
12668 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
12669 instead of CHAR_STRING_ADVANCE.
12670 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
12671 STRING_CHAR_ADVANCE.
12672
126732008-03-15 Andreas Schwab <schwab@suse.de>
12674
12675 * regex.c (re_match_2_internal): Correct matching of eight bit
12676 characters in unibyte strings.
12677
126782008-03-15 Martin Rudalics <rudalics@gmx.at>
12679
12680 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
12681 at end of range when it coincides with the end of the buffer.
12682
126832008-03-14 Eli Zaretskii <eliz@gnu.org>
12684
12685 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
12686
12687 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
12688
126892008-03-14 Jason Rumney <jasonr@gnu.org>
12690
12691 * editfns.c (initial_tz): New variable.
12692 (syms_of_editfns): Initialize it.
12693 (Fset_time_zone_rule): Set it when first called.
12694 Use it when TZSTRING is nil.
12695
12696 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
12697 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
12698 (monitor_from_point_fn, get_monitor_info_fn): New globals.
12699 (globals_of_w32fns): Initialize them.
12700 (compute_tip_xy): Use them to position tooltips.
12701
127022008-03-14 Glenn Morris <rgm@gnu.org>
12703
12704 * emacs.c (main): Revert previous change.
12705 (standard_args): Revert -internal-script back to -scriptload,
12706 and remove the long-option form.
12707
127082008-03-13 Glenn Morris <rgm@gnu.org>
12709
12710 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
12711 Remove option -enable-font-backend.
12712
127132008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
12714
12715 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
12716
127172008-03-11 Jan Djärv <jan.h.d@swipnet.se>
12718
12719 * xterm.c (x_connection_closed): For GTK: If this is the last
12720 terminal just exit without closing the display.
12721
127222008-03-11 Jason Rumney <jasonr@gnu.org>
12723
12724 * w32font.c (w32font_full_name): Use floor to round.
12725
f0131492 127262008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
12727
12728 * sound.c (alsa_configure): Declare vol at beginning of block.
12729
12730 * fontset.c (Ffontset_info): Remove extra semicolon.
12731
127322008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
12733
12734 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
12735 size of resulting string.
12736
127372008-03-10 Jason Rumney <jasonr@gnu.org>
12738
12739 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
12740
127412008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12742
12743 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
12744 Don't pretend as if characters with display property haven't been
12745 consumed for string-replacing-string case.
12746
127472008-03-08 Kim F. Storm <storm@cua.dk>
12748
12749 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
12750 (get_next_display_element, next_element_from_string)
12751 (next_element_from_ellipsis, next_element_from_buffer): Use it.
12752
127532008-03-08 Andreas Schwab <schwab@suse.de>
12754
12755 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
12756
127572008-03-06 Jason Rumney <jasonr@gnu.org>
12758
12759 * w32font.c (w32_registry): Take font_type argument. Use ANSI
12760 when charset not specified. Only translate ANSI to unicode when
12761 font_type is truetype.
12762 (w32font_coverage_ok): New function.
12763 (add_font_entity_to_list): Use it to filter unsuitable fonts.
12764
127652008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
12766
12767 * lread.c (Fread_char): Resolve modifiers.
12768 (Fread_char_exclusive): Likewise.
12769
12770 * character.c (char_resolve_modifier_mask): New function.
12771 (char_string): Use char_resolve_modifier_mask.
12772 (Fchar_resolve_modifiers): New function.
12773 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
12774 function.
12775
127762008-03-04 Jason Rumney <jasonr@gnu.org>
12777
12778 * makefile.w32-in: Always include w32font.c in the build.
12779 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
12780
127812008-03-04 Andreas Schwab <schwab@suse.de>
12782
12783 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
12784 (versionclean): Likewise.
12785
127862008-03-04 Juanma Barranquero <lekktu@gmail.com>
12787
12788 * .cvsignore: Add oo.
12789
127902008-03-03 Andreas Schwab <schwab@suse.de>
12791
12792 * coding.c (decode_coding_object): Inhibit gap shrinking while
12793 decoding in place.
12794
127952008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
12796
12797 * w32term.c: Remove unused include "gnu.h".
12798 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
12799
12800 * gnu.h: Rename to ...
12801 * emacs-icon.h: ... this.
12802 * xterm.c: Use emacs-icon.h instead of gnu.h.
12803 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
12804
128052008-03-03 Juanma Barranquero <lekktu@gmail.com>
12806
12807 * w32font.c: Include math.h.
12808
128092008-03-03 Jason Rumney <jasonr@gnu.org>
12810
12811 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
12812 Compute options separately.
12813 (w32font_open_internal): Set glyph_idx before caching metrics.
12814
12815 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
12816 Define if system headers don't.
12817 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
12818 (w32font_encode_char): Don't declare here.
12819
12820 * w32font.c (Quniscribe, QCformat): New symbols.
12821 (syms_of_w32font): Define them.
12822 (w32font_has_char): Indicate uncertainty.
12823 (w32font_encode_char): Encode as glyph point. Make static.
12824 (recompute_cached_metrics): New function.
12825 (w32font_open_internal): Use it. Set font to use glyph points
12826 initially. Set format based on type of font.
12827 (w32font_text_extents, w32font_draw): Optionally use glyph points.
12828 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
12829 on it. Set format based on information available here.
12830 (add_font_entity_to_list): Identify backend based on opentype_only.
12831
128322008-03-02 Andreas Schwab <schwab@suse.de>
12833
12834 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
12835
12836 * coding.c (decode_coding_big5, produce_chars):
12837 Fix typos in last change.
12838
128392008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
12840
12841 * gnu.h: New icon.
12842
128432008-03-02 Kenichi Handa <handa@m17n.org>
12844
12845 * coding.c (decode_coding_utf_8): When eol-type of CODING is
12846 `dos', don't decode '\r' if that is the last in the source.
12847 (decode_coding_utf_16, decode_coding_emacs_mule)
12848 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
12849 (decode_coding_raw_text, decode_coding_charset): Likewise.
12850 (produce_chars): Don't decode EOL here. Use EMACS_INT.
12851
128522008-03-01 Jason Rumney <jasonr@gnu.org>
12853
12854 * w32font.c (w32font_full_name): Report point size for scalable fonts.
12855
128562008-03-01 Kim F. Storm <storm@cua.dk>
12857
12858 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
12859
128602008-03-01 Jason Rumney <jasonr@gnu.org>
12861
12862 * w32font.c (w32font_full_name): New function.
12863 (w32font_open_internal): Use it.
12864
128652008-03-01 Kim F. Storm <storm@cua.dk>
12866
12867 * dispnew.c (line_draw_cost): Fix invalid glyph check.
12868
128692008-03-01 Jason Rumney <jasonr@gnu.org>
12870
12871 * font.c (font_unparse_fcname): Increase len when style is a symbol.
12872
128732008-03-01 Jan Djärv <jan.h.d@swipnet.se>
12874
12875 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
12876 xg_frame_resized when the event is for the edit widget.
12877
12878 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
12879
12880 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
12881 set_char_size.
12882 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
12883 operations on widgets here. Just set frame size if needed.
12884 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
12885 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
12886 (x_wm_set_size_hint): Set size hints on the edit widget only, not
12887 the whole frame.
12888 (xg_create_tool_bar): Move attachment of the tool bar to
12889 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
12890 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
12891
128922008-03-01 Jason Rumney <jasonr@gnu.org>
12893
12894 * w32fns.c (w32_msg_pump): Disable debug code.
12895
128962008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12897
12898 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
12899
129002008-02-29 Chong Yidong <cyd@stupidchicken.com>
12901
12902 * xdisp.c (next_overlay_string): Don't set
12903 overlay_strings_at_end_processed_p if we're currently reading from
12904 a display string.
12905
129062008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
12907
12908 * xdisp.c (get_overlay_strings_1): Fix typo.
12909
129102008-02-29 Chong Yidong <cyd@stupidchicken.com>
12911
12912 * xdisp.c (get_overlay_strings_1): Add missing argument type.
12913
129142008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
12915
12916 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
12917
12918 * xdisp.c (display_mode_element): Cancel the previous change.
12919 (decode_mode_spec): Likewise.
12920 (handle_auto_composed_prop): Don't make composition if it->string
12921 is a string.
12922
129232008-02-27 Kim F. Storm <storm@cua.dk>
12924
12925 * lisp.h (GLYPH): Change type from int to struct with separate char
12926 and face_id members.
12927 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
12928 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
12929 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
12930 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
12931 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
12932 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
12933 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
12934 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
12935 handle new Lisp glyph code encoding, either an integer or a cons.
12936
12937 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
12938 (GLYPH_ALIAS): Delete.
12939 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
12940 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
12941 (GLYPH_FROM_CHAR): Replace macro by ...
12942 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
12943
12944 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
12945 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
12946 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
12947 (GLYPH_INVALID_P): New macro.
12948 (spec_glyph_lookup_face): Update prototype.
12949
12950 * dispnew.c (line_draw_cost): Adapt to new glyph type.
12951 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
12952 new glyph code encoding.
12953 (spec_glyph_lookup_face): No return value; update passed glyph instead.
12954 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
12955
12956 * xdisp.c (get_next_display_element, next_element_from_display_vector):
12957 Adapt to new glyph type and new glyph code encoding.
12958
12959 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
12960
12961 * indent.c (current_column, current_column_1, Fmove_to_column)
12962 (compute_motion): Adapt to new glyph code encoding.
12963
12964 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
12965
129662008-02-27 Chong Yidong <cyd@stupidchicken.com>
12967
12968 * process.c (wait_reading_process_output): Check for window
12969 changes caused by timers.
12970 Suggested by Johan Bockgård.
12971
129722008-02-27 Glenn Morris <rgm@gnu.org>
12973
12974 * emacs.c (USAGE1): Add `--disable-font-backend'.
12975
129762008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
12977
12978 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
12979 is made to the buffer.
12980
129812008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
12982
12983 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
12984 (face_at_string_position):
12985 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
12986 (face_at_string_position):
12987 * xdisp.c (display_string, next_overlay_change):
12988 * buffer.h (overlays_at):
12989 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
12990 Update callers.
12991
129922008-02-26 Chong Yidong <cyd@stupidchicken.com>
12993
12994 * editfns.c (Fformat): Doc fix.
12995
129962008-02-26 Juanma Barranquero <lekktu@gmail.com>
12997
12998 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
12999 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
13000 (Ffont_otf_alternates, Fquery_font): Doc fixes.
13001
130022008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
13003
13004 * buffer.c (Fbuffer_swap_text): New function.
13005 (syms_of_buffer): Defsubr it.
13006
130072008-02-25 Chong Yidong <cyd@stupidchicken.com>
13008
13009 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
13010
130112008-02-25 Jason Rumney <jasonr@gnu.org>
13012
13013 * w32font.c (w32font_draw): Draw one character at a time when padding.
13014
130152008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
13016
13017 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
13018 Handle a nil arg. Use run_window_configuration_change_hook.
13019 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
13020 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
13021 Use run_window_configuration_change_hook.
13022
130232008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
13024
13025 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
13026 1-pixel width.
13027
130282008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
13029
13030 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
13031 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
13032 if the glyph in the font is zero pixel with.
13033
13034 * dispextern.h (struct glyph_string): New member padding_p.
13035
13036 * w32font.c (w32font_draw): Pay attention to s->padding_p.
13037
13038 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
13039
13040 * xfont.c (xfont_draw): Pay attention to s->padding_p.
13041
13042 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
13043
13044 * font.c: If the font driver doesn't have `shape' function, return Qnil.
13045
130462008-02-25 Jason Rumney <jasonr@gnu.org>
13047
13048 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
13049
130502008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
13051
13052 Allow fine-grained image-cache flushing.
13053 * dispextern.h (struct image): Add `dependencies' field.
13054 (clear_image_caches): Change arg to Lisp_Object.
13055 * image.c (make_image): Initialize `dependencies' field.
13056 (clear_image_cache): Change arg to allow fine-grained flushing.
13057 Perform the flush even if image-cache-eviction-delay is nil.
13058 (clear_image_caches): Change arg to Lisp_Object.
13059 (Fclear_image_cache): Expand meaning of the argument.
13060 (mark_image): Mark `dependencies' field.
13061 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
13062 (lface_hash): Use XHASH rather than XFASTINT.
13063 (face_at_buffer_position): Fix int -> EMACS_INT position.
13064 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
13065 (select_frame_for_redisplay): Remove code duplication.
13066 (redisplay_internal): Adapt arg to call to clear_image_caches.
13067
130682008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
13069
13070 * s/vms4-0.h:
13071 * s/vms4-2.h:
13072 * s/vms4-4.h:
13073 * s/vms5-5.h: Remove, unused.
13074
13075 * s/irix5-2.h:
13076 * s/irix6-0.h:
13077 * s/riscos5.h:
13078 * s/mach-bsd4-3.h:
13079 * m/mips4.h: Remove files for obsolete systems.
13080
13081 * Makefile.in:
13082 * filelock.c:
13083 * unexmips.c:
13084 * m/hp9000s300.h:
13085 * m/iris4d.h:
13086 * s/aix3-1.h:
13087 * s/hpux.h:
13088 * s/msdos.h:
13089 * s/usg5-0.h:
13090 * s/usg5-2-2.h:
13091 * s/usg5-2.h:
13092 * s/usg5-3.h: Remove references to obsolete variables.
13093
13094 * s/irix5-0.h: Remove, move all the contents ...
13095 * s/irix6-5.h: ... here. Simplify.
13096 * config.in: Regenerate.
13097
130982008-02-24 Jason Rumney <jasonr@gnu.org>
13099
13100 * w32term.c (x_draw_glyph_string_background): Clear the background
13101 manually when cleartype is in use.
13102 (x_draw_glyph_string_foreground): Draw text transparently when
13103 cleartype is in use.
13104
13105 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
13106 a font into it unless we have to.
13107
131082008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
13109
13110 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
13111 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 13112
aac0c6e3
MR
131132008-02-18 Jason Rumney <jasonr@gnu.org>
13114
13115 * w32fns.c (Fw32_shell_execute): Encode parameters.
13116
131172008-02-09 Eli Zaretskii <eliz@gnu.org>
13118
13119 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
13120
131212008-02-05 Juanma Barranquero <lekktu@gmail.com>
13122
13123 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
13124
131252008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
13126
13127 * xterm.c (x_set_offset): Don't change the gravity if
13128 CHANGE_GRAVITY is -1.
13129
131302008-02-23 Chong Yidong <cyd@stupidchicken.com>
13131
13132 * fileio.c (auto_save_error_occurred): New var.
13133 (auto_save_error): Set it.
13134 (Fdo_auto_save): Don't overwrite the error message if an auto-save
13135 error occurred.
13136
131372008-02-23 Eli Zaretskii <eliz@gnu.org>
13138
13139 * w32.c (globals_of_w32): Add initializations for
13140 g_b_init_get_sid_sub_authority and
13141 g_b_init_get_sid_sub_authority_count.
13142
131432008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
13144
13145 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
13146 (font_parse_xlfd): Use them for sanity check.
13147 (Finternal_set_font_style_table): Make sure the table is bijective.
13148
13149 Consolidate the image_cache to the terminal struct.
13150 * termhooks.h (P_): Remove redundant def.
13151 (struct terminal): New field `image_cache'.
13152 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
13153 of FRAME_X_IMAGE_CACHE.
13154 * xterm.h (struct x_display_info): Remove image_cache field.
13155 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13156 * w32term.h (struct w32_display_info): Remove image_cache field.
13157 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13158 * macterm.h (struct mac_display_info): Remove image_cache field.
13159 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13160 * xterm.c (x_term_init):
13161 * w32term.c (w32_term_init):
13162 * macterm.c (mac_term_init): Set the image_cache in the terminal.
13163 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
13164 Remove declarations.
13165 (clear_image_caches, mark_image_cache): New declarations.
13166 * xfaces.c (clear_face_cache):
13167 * xdisp.c (redisplay_internal): Use clear_image_caches.
13168 * image.c (clear_image_cache): Don't check that a frame is on
13169 a window-system before checking if it shares the same cache.
13170 (clear_image_caches): New function.
13171 (Fclear_image_cache): Use it.
13172 (mark_image): Move from allo.c.
13173 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
13174 * alloc.c (mark_image, mark_image_cache): Move to image.c.
13175 (mark_object): Don't call mark_image_cache for frames.
13176 (mark_terminals): Call mark_image_cache.
13177
13178 * lisp.h (Fdelete_terminal): Declare.
13179
13180 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
13181 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
13182 wrong_type_argument.
13183
131842008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
13185
13186 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
13187 malayalam.el, and tamil.el. Add sinhala.el.
13188
131892008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
13190
13191 * xterm.c (x_connection_closed): Consolidate identical tests.
13192 (x_delete_terminal): Don't crash if called via x_connection_closed.
13193
131942008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
13195
13196 * xdisp.c (decode_mode_spec): New arg string.
13197 (display_mode_element): Adjust for the above change.
13198
131992008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
13200
13201 * callint.c (Fcall_interactively): Use AREF.
13202
132032008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
13204
13205 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
13206
132072008-02-18 Jan Djärv <jan.h.d@swipnet.se>
13208
13209 * xfns.c (Fx_show_tip): Set string to " " if empty.
13210
132112008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
13212
13213 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
13214 with Qt.
13215
132162008-02-17 Kenichi Handa <handa@m17n.org>
13217
13218 * ftfont.c (ftfont_shape): Return Lispy number.
13219
13220 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
13221 for GCs.
13222 (Finternal_set_font_selection_order): Call font_update_sort_order
13223 only when enable_font_backend is set.
13224 (realize_x_face): Set face->font_info to that of default face only
13225 when enable_font_backend is set.
13226
13227 * xdisp.c (handle_composition_prop): Set it->c to the fist
13228 character of the composed region.
13229 (fill_composite_glyph_string): Set base_face->font_info to
13230 s->font_info. Get a face for ascii from base_face->ascii_face.
13231 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
13232 with a face already decided.
13233 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
13234 non-negative.
13235 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
13236 call font_prepare_composition unconditionally.
13237
13238 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
13239
13240 * xterm.h (struct x_display_info): New member font.
13241
13242 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
13243 (x_set_mouse_face_gc, x_new_font): Likewise.
13244 (x_term_init): Setup display_info->font.
13245 (x_delete_terminal): Free display_info->font.
13246
13247 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
13248
13249 * ftxfont.c (ftxfont_default_fid): Delete it.
13250 (ftxfont_open): Set xfont->fid to 0.
13251 (ftxfont_end_for_frame): Clear data specific to the frame and the
13252 font-driver.
13253
13254 * xftfont.c (xftfont_default_fid): Delete it.
13255 (xftfont_open): Set xfont->fid to 0.
13256
13257 * fontset.c (FONTSET_OBJLIST): New macro.
13258 (fontset_find_font): Update font-object list of the fontset.
13259 (free_realized_fontset): New function.
13260 (free_face_fontset): Call free_realized_fontset.
13261 (Ffont_info): Call font_close_object only when enable_font_backend
13262 is set.
13263
13264 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
13265 [HAVE_NTGUI]: Include w32term.h.
13266 [MAC_OS]: Include macterm.ch.
13267 (font_otf_ValueRecord): Use make_number.
13268 (font_finish_cache): Fix handling of reference count.
13269 (font_clear_cache): Update num_fonts.
13270 (font_open_entity): Update smallest_char_width and
13271 smallest_font_height of the frame.
13272 (font_close_object): Update num_fonts.
13273 (Fclear_font_cache): Fix finding the target cache data.
13274
132752008-02-16 Glenn Morris <rgm@gnu.org>
13276
13277 * fontset.c (Finternal_char_font): Fix compilation warning.
13278
132792008-02-16 Eli Zaretskii <eliz@gnu.org>
13280
13281 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
13282 instead of char arrays. Enlarge the size of array passed to
13283 get_token_information.
13284
13285 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
13286 warnings.
13287
132882008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
13289
13290 * .gdbinit: Don't set `args', it breaks gdb --args.
13291
132922008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
13293
13294 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
13295 within a narrowed buffer.
13296
132972008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
13298
13299 * coding.c (decode_coding_object, encode_coding_object):
13300 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
13301
133022008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
13303
13304 * coding.c (coding_set_destination): Use BEG_BYTE rather than
13305 hardcoding 1.
13306 (detect_coding_system):
13307 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
13308 (string_char_to_byte, string_byte_to_char, insert_from_gap):
13309 * insdel.c (insert_from_gap):
13310 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
13311 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
13312 (string_to_multibyte):
13313 * character.c (chars_in_text, multibyte_chars_in_text):
13314 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
13315
13316 * character.h (FETCH_STRING_CHAR_ADVANCE)
13317 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
13318 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
13319 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
13320
13321 * casefiddle.c (casify_region): Only call after-change and composition
13322 functions on the part of the region that was changed.
13323
13324 * keyboard.c (read_avail_input):
13325 * frame.c (Fdelete_frame): Call Fdelete_terminal.
13326
133272008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
13328
13329 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
13330 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
13331
133322008-02-11 Juanma Barranquero <lekktu@gmail.com>
13333
13334 * w32menu.c (push_submenu_start, push_submenu_end)
13335 (push_left_right_boundary, push_menu_pane, push_menu_item):
13336 * keyboard.c (read_key_sequence): Don't pass args with side effects
13337 to AREF, it fails when compiling with -DENABLE_CHECKING.
13338
133392008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
13340
13341 * Makefile.in (${lispsource}international/charprop.el):
13342 Delete this target.
13343
13344 * search.c (boyer_moore): Fix incorrect synching of the trunk and
13345 emacs-unicode-2.
13346
133472008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
13348
13349 * terminal.c (Fdelete_terminal): Clean up the `force' path.
13350
133512008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
13352
13353 * frame.c (Qnoelisp): New symbol.
13354 (syms_of_frame): Initialize it.
13355 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
13356 harmless Elisp code, from a strong `force' from x_connection_closed.
13357 * frame.h (Qnoelisp): Declare.
13358 * xterm.c (x_connection_closed): Pass `noelisp'.
13359
13360 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
13361 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
13362 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
13363 rather than `int' for the type of `type'.
13364
133652008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
13366
13367 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
13368
13369 * Makefile.in (GNUC): Remove support for gcc-1.x.
13370
133712008-02-10 Richard Stallman <rms@gnu.org>
13372
13373 * lisp.h (ASET): Use AREF, not ASLOT.
13374
133752008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
13376
13377 * lisp.h (ASET): Check bounds.
13378
133792008-02-10 Glenn Morris <rgm@gnu.org>
13380
13381 * buffer.c (mode-name): Doc fix.
13382
133832008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
13384
13385 * Makefile.in:
13386 * emacs.c:
13387 * gmalloc.c:
13388 * keyboard.c:
13389 * lisp.h:
13390 * m/ibm370aix.h:
13391 * process.c:
13392 * regex.c:
13393 * s/hpux.h:
13394 * sysdep.c:
13395 * sysselect.h:
13396 * systty.h:
13397 * unexec.c:
13398 * w32term.c:
13399 * xsmfns.c:
13400 * xterm.c: Remove code that deals with obsolete variables.
13401
13402 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
13403
13404 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
13405 nothing else needs it anymore.
13406
134072008-02-09 Eli Zaretskii <eliz@gnu.org>
13408
13409 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
13410 instead of unibyte_char_to_multibyte.
13411
134122008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
13413
13414 * s/gnu-linux.h: Remove commented out code.
13415
13416 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
13417
13418 * Makefile.in: Update what RMS says about using autoconf.
13419 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
13420 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
13421 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
13422 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
13423
134242008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
13425
13426 * keymap.c (Fkey_description): Move side effect outside of macro call.
13427
13428 * xfaces.c (Finternal_make_lisp_face):
13429 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
13430
13431 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
13432 (syms_of_fontset): Use ASET.
13433
13434 * fns.c (concat): Move side effect outside of macro call.
13435 (hash_clear): Use ASET.
13436
134372008-02-08 Richard Stallman <rms@gnu.org>
13438
13439 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
13440 If FORCE, and frame has a surrogate minibuffer for another frame,
13441 delete the other frame first.
13442
134432008-02-07 Timo Savola <timo.savola@iki.fi>
13444
13445 * xterm.c (x_detect_focus_change): Handle embed client message.
13446 (handle_one_xevent): Ditto.
13447 (handle_one_xevent): If embedded and we get a button press/release,
13448 request focus.
13449 (xembed_set_info, xembed_send_message): New functions.
13450 (x_make_frame_visible): Call xembed_set_info if embedded.
13451 (x_make_frame_invisible): Call xembed_set_info if embedded.
13452 (x_term_init): Initialize Xatom_XEMBED.
13453 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
13454 (x_iconify_frame): Ditto.
13455
13456 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
13457 (enum xembed_info, enum xembed_message, enum xembed_focus)
13458 (enum xembed_modifier, enum xembed_accelerator): New.
13459 (xembed_set_info, xembed_send_message): Declare.
13460 (FRAME_X_EMBEDDED_P): New.
13461
13462 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
13463 gtk_plug_new.
13464
13465 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
13466 window ID of a frame.
13467 (x_window): Reparent frame if embedded.
13468 (Fx_create_frame): Don't set border width if embedded.
13469
13470 * emacs.c (USAGE3): Add --parent-id.
13471 (standard_args): Ditto.
13472
134732008-02-07 Jan Djärv <jan.h.d@swipnet.se>
13474
13475 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
13476
134772008-02-07 Jim Meyering <meyering@redhat.com>
13478
13479 Use "do...while (0)", not "if (1)...else" in macro definitions.
13480 The latter provokes a warning from gcc about the empty else, when
13481 followed by ";". Also, without that trailing semicolon, it would
13482 silently swallow up any following statement.
13483 * syntax.h (SETUP_SYNTAX_TABLE)
13484 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
13485 * buffer.h (DECODE_POSITION): Likewise.
13486 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
13487 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
13488 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
13489 (FETCH_CHAR_ADVANCE): Likewise.
13490 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
13491
134922008-02-07 Jim Meyering <meyering@redhat.com>
13493
13494 * lread.c [lint]: Don't include <sys/inode.h>.
13495
134962008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
13497
13498 * xselect.c (x_handle_dnd_message):
13499 * xmenu.c (digest_single_submenu, xmenu_show):
13500 * xdisp.c (with_echo_area_buffer_unwind_data)
13501 (format_mode_line_unwind_data, unwind_format_mode_line)
13502 (display_menu_bar):
13503 * eval.c (Ffetch_bytecode):
13504 * doc.c (store_function_docstring):
13505 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
13506 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
13507 * buffer.c (add_overlay_mod_hooklist): Use ASET.
13508
135092008-02-07 Kenichi Handa <handa@m17n.org>
13510
13511 * ftxfont.c (ftxfont_open): Don't set
13512 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
13513
13514 * ftfont.c (ftfont_open): Fix previous change.
13515
135162008-02-06 Jason Rumney <jasonr@gnu.org>
13517
13518 * w32font.c (w32font_text_extents): Fill in lbearing metric.
13519 Use cached metrics for ASCII characters.
13520 (w32font_open_internal): Don't set font's owning_frame.
13521 Cache metrics for ASCII characters.
13522
13523 * w32font.h (struct w32font_info): Add ascii_metrics.
13524 Remove owning_frame.
13525
135262008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
13527
13528 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
13529 to negative value.
13530
13531 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
13532
13533 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
13534
13535 * charset.c (syms_of_charset): Set QCtest and Qeq.
13536
135372008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
13538
13539 * process.c (Fstart_process):
13540 * callproc.c (Fcall_process): Handle the case where
13541 Funhandled_file_name_directory returns nil.
13542
13543 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
13544 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
13545 * font.c (check_gstring): Use them and AREF to access the vector before
13546 we know it's really a gstring.
13547 (Ffont_shape_text): Fix typo.
46e722a9 13548 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
13549
13550 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
13551 Declare.
13552
13553 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
13554
135552008-02-05 Jason Rumney <jasonr@gnu.org>
13556
13557 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
13558 Set smallest_font_height and smallest_char_width in display info.
13559
135602008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
13561
13562 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
13563
135642008-02-05 Miles Bader <miles@gnu.org>
13565
13566 * xfaces.c (get_lface_attributes, merge_named_face)
13567 (lookup_named_face, lookup_derived_face, realize_named_face):
13568 Revert 2008-02-01 change by cyd@stupidchicken.com.
13569
135702008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
13571
13572 * fontset.c (Ffontset_info): Handle the case of inhibitting the
13573 fallback fonts.
13574 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
13575
135762008-02-04 Jason Rumney <jasonr@gnu.org>
13577
13578 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
13579 set full_name.
13580 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
13581
135822008-02-03 Jason Rumney <jasonr@gnu.org>
13583
13584 * makefile.w32-in (OBJ1): Include font.o here.
13585 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
13586
135872008-02-02 Jason Rumney <jasonr@gnu.org>
13588
13589 * makefile.w32-in (temacs): Bump EMHEAP to 21.
13590
135912008-02-01 Jason Rumney <jasonr@gnu.org>
13592
13593 * s/cygwin.h: Define VIRT_ADDR_VARIES.
13594
13595 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
13596
135972008-02-01 Andreas Schwab <schwab@suse.de>
13598
13599 * Makefile.in (shortlisp, lisp): Update for rename of
13600 ../lisp/language/myanmar.el.
13601
136022008-02-01 Chong Yidong <cyd@stupidchicken.com>
13603
13604 * xfaces.c (get_lface_attributes): Delete function.
13605 (merge_named_face, lookup_named_face, lookup_derived_face)
13606 (realize_named_face): Call lface_from_face_name directly, and use
13607 the fact that merge_face_vectors does not alter its FROM argument.
13608
136092008-02-01 Jason Rumney <jasonr@gnu.org>
13610
13611 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
13612 input in the default locale. Handle non-Unicode multibyte input.
13613
136142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13615
13616 * fontset.c (reorder_font_vector): Exclude nil elements from the
13617 font group. Don't try multiple fonts.
13618 (fontset_font): Adjust for the above change.
13619 (Finternal_char_font): Return nil if the found font doesn't
13620 contain the character ch.
13621
13622 * Makefile.in (lisp, shortlisp): Add cham.el.
13623
136242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13625
13626 * font.h (FONTP): Make it return 1 also for a font-object.
13627
13628 * .gdbinit (xfontset): New function.
13629
13630 * font.c (font_find_for_lface): Check if the character C is
13631 supported or not only for the first font.
13632
13633 * fontset.c (reorder_font_vector): Fix typo.
13634 (fontset_find_font): Don't add a font-spec specifying a script.
13635 Use 0 (not Qt) for the indication of empty font-group. Change the
13636 format of RFONT-DEF. Return Qt if no font in the font-group
13637 support the character.
13638 (fontset_font): Adjust for the above change. If no font was
13639 found the character, remember that.
13640 (face_for_char): Adjust for the change of RFONT-DEF.
13641 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
13642 no font for the target.
13643 (Finternal_char_font): Adjust for the change of RFONT-DEF.
13644
136452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13646
13647 * font.c (font_load_for_face): Handle the case that the font in
13648 face->lface is a string.
13649
136502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13651
13652 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
13653
136542008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13655
13656 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
13657 Fix previous change. If the frame is not on a window system,
13658 signal an error.
13659
136602008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13661
13662 * coding.c (decode_coding_object, encode_coding_object): Adjust
13663 marker positions after conversion.
13664
13665 * lisp.h (struct Lisp_Marker): New member need_adjustment.
13666
136672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13668
13669 * font.c (font_find_for_lface): Fix the handling of the return
13670 value of font_has_char.
13671 (Ffont_shape_text): Fix previous change.
13672
13673 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
13674 (fontset_ref_and_range): Delete it.
13675 (fontset_find_font): Call char_table_ref_and_range instead of
13676 FONTSET_REF_AND_RANGE.
13677 (make_fontset): Don't setup font groups of Latin here.
13678 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
13679 (new_fontset_from_font): Make the specified font the default for
13680 all Latin characters.
13681
136822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13683
13684 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
13685 is on a window system before accessing the fontset of the frame.
13686
136872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13688
13689 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
13690
13691 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
13692 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
13693
13694 * font.c (Ffont_shape_text): If the font driver doesn't have a
13695 shaper function, make zero-width glyphs to have at least one-pixel
13696 width. Fix setting of `to' field of glyphs.
13697
136982008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13699
13700 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
13701 glyphs.
13702
13703 * font.h (struct font_driver): Improve docstring of member `shape'.
13704
137052008-02-01 Kenichi Handa <handa@m17n.org>
13706
13707 * composite.c (syms_of_composite): Fix docstring of
13708 auto-composition-function.
13709
13710 * font.h (LGLYPH_SIZE): New macro.
13711
13712 * font.c (Ffont_fill_gstring): Stop filling when a character not
13713 supported by the font is found.
13714 (Ffont_shape_text): When a shape callback function returns nil,
13715 try at most two more times with larger gstring.
13716 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
13717
13718 * xdisp.c (handle_auto_composed_prop): Change the argument to
13719 auto-composition-function.
13720
13721 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
13722 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
13723 Lispy glyph and store it in the lgstring.
13724
13725 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
13726
13727 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
13728
137292008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13730
13731 * font.c (Ffont_shape_text): Avoid unnecessary composition.
13732
13733 * fontset.c (Vfont_encoding_charset_alist): New variable.
13734 (syms_of_fontset): DEFVAR it.
13735 (reorder_font_vector, fontset_find_font): Optimize for the case of
13736 no need of reordering.
13737 (face_for_char): Map the charset property by
13738 Vfont_encoding_charset_alist.
13739
137402008-02-01 Jason Rumney <jasonr@gnu.org>
13741
13742 * w32font.c (logfonts_match): Don't check adstyle here.
13743 (font_matches_spec): Check here against physical font instead.
13744 (add_font_entity_to_list): Avoid some substitutions.
13745
13746 * font.c (font_parse_fcname): Default weight and slant to normal.
13747 (font_score): Prefer normal fonts if weight or slant unspecified.
13748 (font_score) [WINDOWSNT]: Scale weight difference down to closer
13749 match freetype scores.
13750
137512008-02-01 Jason Rumney <jasonr@gnu.org>
13752
13753 * w32font.c (w32font_text_extents): Don't use the frame stored in the
13754 font, as it may have been deleted.
13755 (w32_enumfont_pattern_entity): Map generic family to adstyle using
13756 most common hyphenless variation.
13757 (logfonts_match): Check generic family.
13758 (font_matches_spec): Don't check generic family here.
13759 (fill_in_logfont): Set generic family based on adstyle.
13760
13761 * w32font.h (w32font_get_cache): Update declaration.
13762
137632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13764
13765 * ftfont.c (ftfont_get_cache): Adjust the argument type.
13766
13767 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
13768 If none of the new drivers are available, call font_update_drivers
13769 with the old drivers.
13770
13771 * w32font.c (w32font_get_cache): Adjust the argument type.
13772
13773 * xfont.c (xfont_get_cache): Adjust the argument type.
13774
13775 * font.h (struct font_driver): Change argument type of get_cache.
13776
13777 * xftfont.c (xftfont_start_for_frame): Delete prototype.
13778
13779 * font.c (Ffont_get): Fix arguments to Fassoc.
13780 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
13781 (font_clear_cache): New function.
13782 (font_list_entities, font_matching_entity): Use font_get_cache.
13783 (font_update_drivers): Call font_clear_cache when finishing a driver.
13784
13785 * fontset.c (fontset_find_font): Fix previous change.
13786
137872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13788
13789 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
13790 dpyinfo->font_table.
13791 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
13792 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
13793
13794 * font.c (font_at): Handle the case that the arg C is negative.
13795 Handle the unibyte case.
13796 (Ffont_at): Call font_at with the arg C -1.
13797
13798 * xdisp.c (handle_auto_composed_prop): Don't get a character at
13799 the position here, and call font_at with the arg C -1.
13800 Don't check the range of the existing composition at the point.
13801
138022008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13803
13804 * fontset.c (fontset_add): New args charset_id and family.
13805 Change caller.
13806 (load_font_get_repertory, fontset_find_font): Assume that
13807 font_spec is always a font-spec object.
13808 (Fset_fontset_font): Always store a font-spec object in a fontset.
13809
13810 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
13811 instead of get_property_and_range.
13812
138132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13814
13815 * xftfont.c (struct xftfont_info): Delete the member ft_face.
13816 (xftfont_open): Don't keep locking face.
13817 (xftfont_close): Don't unlock face.
13818 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
13819
13820 * fontset.c (fontset_find_font): Don't prefer a font of
13821 supplementary charset.
13822
138232008-02-01 Kenichi Handa <handa@m17n.org>
13824
13825 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
13826 script, langsys_tag to langsys, new member script.
13827 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 13828 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
13829 listing to the script specified in that property. Fix arg to
13830 OTF_check_features.
13831
138322008-02-01 Jason Rumney <jasonr@gnu.org>
13833
13834 * w32font.h: New file.
13835
13836 * w32font.c: Include it.
13837 (struct w32font_info): Add owning_frame field. Move to w32font.h.
13838 (w32font_open): Set owning_frame.
13839 (w32font_text_extents): Use owning_frame.
13840 (struct font_callback_data): Add opentype_only field.
13841 (add_font_entity_to_list): Use it to filter fonts.
13842 Don't check against full name.
13843 (w32font_list_internal): New function.
13844 (w32font_list): Use it.
13845 (w32font_match_internal): New function.
13846 (w32font_match): Use it.
13847 (w32font_open_internal): New function.
13848 (w32font_open): Use it.
13849 (w32font_get_cache, w32font_close, w32font_has_char)
13850 (w32font_encode_char, w32font_text_extents, w32font_draw):
13851 Make non-static.
13852
13853 * makefile.w32-in (w32font.o): Depend on w32font.h.
13854
138552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13856
13857 * charset.c (Fdefine_charset_internal): Record a supplementary
13858 charset at the tail of Vcharset_order_list.
13859
13860 * font.c (Ffont_shape_text): Fix the return value.
13861
13862 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
13863
13864 * xdisp.c (handle_auto_composed_prop): Fix previous change.
13865
138662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13867
13868 * ftfont.c (struct OpenTypeSpec): New struct.
13869 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
13870 (ftfont_get_open_type_spec): New function.
13871 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
13872
13873 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
13874
138752008-02-01 Jason Rumney <jasonr@gnu.org>
13876
13877 * w32font.c (add_font_entity_to_list): Compare only the beginning
13878 of full name.
13879
138802008-02-01 Kenichi Handa <handa@m17n.org>
13881
13882 * xdisp.c (handle_auto_composed_prop): Simplify the code.
13883 Never return HANDLED_RECOMPUTE_PROPS.
13884
138852008-02-01 Kenichi Handa <handa@m17n.org>
13886
13887 * font.c (font_gstring_produce): Delete it.
13888
13889 * composite.h (COMPOSITION_METHOD):
13890 Handle COMPOSITION_WITH_GLYPH_STRING.
13891
138922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13893
13894 * xfont.c (Qx): Delete.
13895 (syms_of_xfont): Don't initialize Qx.
13896
13897 * composite.h (enum composition_method):
13898 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
13899
139002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13901
13902 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
13903 (choose_face_font): Accept new form of font-spec.
13904
13905 * frame.h (font_driver_list): Declare it unconditionally.
13906 (struct frame): Define members font_driver_list and font_data_list
13907 unconditionally.
13908
13909 * fontset.c: Include "font.h" unconditionally.
13910 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
13911 (Fset_fontset_font): Accept a font-spec object.
13912
13913 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
13914 PIXEL_SIZE part a wild card.
13915
13916 * dispextern.h (struct glyph_string): Define members clip and
13917 num_clips unconditionally.
13918 (struct face): Define members font_info and extra unconditionally.
13919
13920 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
13921 ftfont_info only when HAVE_LIBOTF is defined.
13922
139232008-02-01 Andreas Schwab <schwab@suse.de>
13924
13925 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
13926 and end.
13927
139282008-02-01 Jason Rumney <jasonr@gnu.org>
13929
13930 * w32font.c (w32font_driver): Add new fields.
13931
139322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13933
13934 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
13935 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
13936 (LIBES): Add @M17N_FLT_CFLAGS@.
13937
13938 * composite.c (compose_text): Don't treat the new style
13939 composition specially.
13940
13941 * emacs.c (main): Call syms_of_font unconditionally.
13942
13943 * font.h (FONT_ENTITY_NOT_LOADABLE)
13944 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
13945 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
13946 (struct font_driver): New member shape.
13947 (font_registry_charsets): Extern it.
13948 (font_find_for_lface, font_prepare_composition): Adjust prototype.
13949 (font_otf_capability, font_drive_otf): Delete their externs.
13950
13951 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
13952 (font_charset_alist, font_registry_charsets): Move from xfont.c
13953 and rename.
13954 (font_prop_validate_otf): New function.
13955 (font_property_table): Register it for QCotf.
13956 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
13957 (font_drive_otf): Delete.
13958 (font_prepare_composition): New arg F. Adjust for the change of
13959 lispy gstring.
13960 (font_find_for_lface): New arg C.
13961 (font_load_for_face): Adjust for the change of font_find_for_lface.
13962 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
13963 lispy gstring.
13964 (Ffont_shape_text): New function.
13965 (Fopen_font): If the font size is not given, use 12-pixel.
13966 (Ffont_at): New arg STRING.
13967 (syms_of_font): Initalize font_charset_alist.
13968 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
13969 conditionally.
13970
13971 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
13972 fonts of the same font-spec. Change the format of RFONT-DEF.
13973 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
13974 Adjust for the change of RFONT-DEF.
13975 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
13976
13977 * ftfont.h: New file.
13978
13979 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
13980 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
13981 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
13982 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
13983 font_otf_capability and font_drive_otf, set ftfont_shape.
13984 (ftfont_list): Adjust for the change of :otf property value.
13985 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
13986 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
13987 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
13988 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13989 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
13990 (otf_gstring, gstring, m17n_flt_initialized): New variables.
13991
13992 * w32term.c (x_draw_composite_glyph_string_foreground):
13993 Adjust for the change of lispy gstring.
13994
13995 * xdisp.c (handle_composition_prop): Adjust for the change of
13996 lispy gstring. Call a function for auto-composition with the
13997 third arg it->window.
13998 (fill_composite_glyph_string): Adjust for the change of lispy string.
13999 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
14000
14001 * xfaces.c (set_font_frame_param): Adjust for the change of
14002 font_find_for_lface.
14003
14004 * xfont.c (x_font_charset_alist): Move to font.c and rename.
14005 (xfont_registry_charsets): Likewise. Change caller.
14006 (syms_of_xfont): Don't handle x_font_charset_alist.
14007
14008 * xftfont.c: Include "ftfont.h".
14009 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
14010 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
14011 (xftfont_close) [HAVE_LIBOTF]: Close otf.
14012 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
14013 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
14014 Set xftfont_driver.shape to xftfont_shape.
14015
14016 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14017 the change of lispy gstring.
14018
140192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14020
14021 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
14022
140232008-02-01 Jason Rumney <jasonr@gnu.org>
14024
14025 * w32font.c (w32font_draw): Fill background manually.
14026
140272008-02-01 Jason Rumney <jasonr@gnu.org>
14028
14029 * font.c (Qfontp): Remove unused symbol.
14030 (QCantialias): New symbol.
14031 (syms_of_font): Define it.
14032 (font_property_table): Set a validator for QCantialias.
14033
14034 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
14035 Define if not already.
14036 (QCfamily): Share with xfaces.c.
14037 (Qstandard, Qsubpixel, Qnatural): New symbols.
14038 (syms_of_w32font): Define them. Don't define QCfamily here.
14039 (w32_antialias_type, lispy_antialias_type): New functions.
14040 (w32_enumfont_pattern_entity): New arg requested_font.
14041 Set antialias parameter if non-default was requested.
14042 (fill_in_logfont): Fill in lfQuality if :antialias specified.
14043
140442008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14045
14046 * lread.c (read1): Undo the previous change.
14047
140482008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
14049
14050 * frame.c (Fdelete_frame): Call font_update_drivers only when
14051 USE_FONT_BACKEND is defined.
14052
140532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14054
14055 * font.h (struct font_bitmap): New member bits_per_pixel.
14056 (struct font_driver): New members start_for_frame and end_for_frame.
14057 (struct font_data_list): New struct.
14058 (font_put_frame_data, font_get_frame_data): Extern them.
14059
14060 * frame.h (struct frame): New member font_data_list.
14061
14062 * font.c (font_update_drivers): Call driver->start_for_frame and
14063 driver->end_for_frame at proper timings.
14064 (font_put_frame_data, font_get_frame_data): New functions.
14065 (Ffont_spec): Add usage in the docstring.
14066
14067 * frame.c (make_frame): Initialize f->font_data_list to NULL.
14068 (Fdelete_frame): Call font_update_drivers.
14069
14070 * xftfont.c (struct xftface_info): Delete the member xft_draw.
14071 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
14072 (xftfont_get_xft_draw): New function.
14073 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
14074 (xftfont_end_for_frame): New function.
14075 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
14076
14077 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
14078 Change argument. Cache GCs in the per-frame data.
14079 (struct ftxfont_frame_data): New struct.
14080 (ftxfont_draw_bitmap): New arg gc_fore and flush.
14081 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
14082 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
14083 (ftxfont_end_for_frame): New function.
14084 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
14085
14086 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
14087
140882008-02-01 Kenichi Handa <handa@m17n.org>
14089
14090 * xselect.c (Vselection_coding_system)
14091 (Vnext_selection_coding_system): Delete them.
14092 (syms_of_xselect): Don't declare selection-coding-system and
14093 next-selection-coding-system. They are declared in select.el.
14094
140952008-02-01 Jason Rumney <jasonr@gnu.org>
14096
14097 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
14098
14099 * w32fns.c: Include imm.h.
14100 (get_composition_string_fn, get_ime_context_fn): New optional
14101 system functions.
14102 (globals_of_w32fns): Load them from imm32.dll.
14103 (ignore_ime_char): New flag.
14104 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
14105 WM_IME_ENDCOMPOSITION messages.
14106
14107 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
14108 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
14109
141102008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14111
14112 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
14113 (READCHAR_REPORT_MULTIBYTE): New macro.
14114 (readchar): New 2nd arg MULTIBYTE.
14115 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
14116 Make symbol's name multibyte according to the multibyteness of the
14117 source.
14118
141192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14120
14121 * xfaces.c (face_for_overlay_string): Call lookup_face with
14122 correct arguments (fix of synching with the trunk).
14123
141242008-02-01 Kenichi Handa <handa@m17n.org>
14125
14126 * font.c (font_prop_validate_symbol, font_prop_validate_style)
14127 (font_prop_validate_non_neg, font_prop_validate_spacing):
14128 Delete argument prop_index.
14129 (font_property_table): Change arguments to validater. Change Callers.
14130 (font_lispy_object): Delete.
14131 (font_at): Use font_find_object instead fo font_lispy_object.
14132
141332008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14134
14135 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
14136 and file names.
14137
141382008-02-01 Jason Rumney <jasonr@gnu.org>
14139
14140 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
14141 (font_matches_spec): Remove debug output.
14142 (add_font_entity_to_list): Avoid using substituted fonts.
14143
141442008-02-01 Jason Rumney <jasonr@gnu.org>
14145
14146 * doc.c (Fsnarf_documentation):
14147 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
14148
141492008-02-01 Miles Bader <miles@gnu.org>
14150
14151 * dispextern.h (struct glyph_row): Only define "clip" field if
14152 HAVE_WINDOW_SYSTEM is defined.
14153
141542008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14155
14156 Fix up multi-tty merge.
14157
14158 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
14159 and indentation.
14160
14161 * xfaces.c (free_realized_face, clear_face_gcs):
14162 Include font_done_for_face in the input_blocked section, just in case.
14163
14164 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
14165 (get_char_face_and_encoding): Undo last change and remove the *other*
14166 duplicate definition (i.e. keep the one that's better scoped and that
14167 includes code for the font-backend).
14168
14169 * terminal.c (create_terminal): Default keyboard_coding to
14170 `no-conversion' and terminal_coding to `undecided'.
14171
14172 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
14173
14174 * fontset.c (free_realized_fontsets): Check that the table entry does
14175 contain a fontset before trying to compare it to `base'.
14176
14177 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
14178 syms_of_charset, and syms_of_coding earlier because init_window_once
14179 now needs Vcoding_system_hash_table to be setup.
14180
14181 * coding.h (default_buffer_file_coding): Remove.
14182
14183 * coding.c (default_buffer_file_coding): Remove.
14184 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
14185 than ->symbol, and use the terminal-local coding system.
14186 (syms_of_coding): Don't setup the coding-systems that are not
14187 terminal-local.
14188 (Fdefine_coding_system_internal): Use XCAR/XCDR.
14189
14190 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
14191 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
14192
14193 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
14194 in chartab.c and were re-added here by mistake.
14195 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
14196
14197 * doc.c (Fsnarf_documentation):
14198 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
14199 src to etc.
14200
14201 * ChangeLog.10: Add mistakenly removed entry.
14202
142032008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
14204
14205 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
14206
142072008-02-01 Miles Bader <miles@gnu.org>
14208
14209 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
14210 Add extra args to FACE_FOR_CHAR.
14211
142122008-02-01 Kenichi Handa <handa@m17n.org>
14213
14214 * keymap.c (where_is_internal_1): If key is a cons, store the copy
14215 in sequence.
14216
14217 * chartab.c (map_sub_char_table, map_char_table): If the range
14218 contains just one character, call the function with that character
14219 even if the depth is not 3.
14220
142212008-02-01 Jason Rumney <jasonr@gnu.org>
14222
14223 * w32font.c (w32font_text_extents): Calculate metrics for the
14224 whole string.
14225
142262008-02-01 Jason Rumney <jasonr@gnu.org>
14227
14228 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
14229
142302008-02-01 Jason Rumney <jasonr@gnu.org>
14231
14232 * w32term.c (x_set_glyph_string_clipping): Use
14233 get_glyph_string_clip_rects.
14234 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
14235 Adjust for the change of struct glyph_string.
14236
14237 * w32font.c (w32font_draw): Do clipping here.
14238
142392008-02-01 Kenichi Handa <handa@m17n.org>
14240
14241 * xftfont.c (xftfont_draw): Adjust for the change of struct
14242 glyph_string.
14243
14244 * xterm.c (x_set_glyph_string_clipping): Use
14245 get_glyph_string_clip_rects.
14246 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
14247 Adjust for the change of struct glyph_string.
14248
14249 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
14250 the resulting clip(s}.
14251 (expose_overlaps): Add arg r. Change callers. Set it to
14252 row->clip temporarily.
14253 (expose_window): Redraw rows overlapping the exposed area.
14254
14255 * dispextern.h (struct glyph_row): New member clip.
14256 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
14257 clip_height, new member clip, and num_clips.
14258
142592008-02-01 Kenichi Handa <handa@m17n.org>
14260
14261 * data.c (Fchar_or_string_p): Fix docstring.
14262
142632008-02-01 Kenichi Handa <handa@m17n.org>
14264
14265 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
14266 create a temporary XftDraw object.
14267
142682008-02-01 Kenichi Handa <handa@m17n.org>
14269
14270 * font.c (Ffontp): Fix docstring.
14271
14272 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
14273 strong evidence of ISO-2022.
14274
142752008-02-01 Kenichi Handa <handa@m17n.org>
14276
14277 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
14278 SYNTAX_ENTRY_FOLLOW_PARENT.
14279
142802008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14281
14282 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
14283 its type.
14284 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
14285 Update to the new type of weak_hash_tables and next_weak.
14286
14287 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
14288 a plain C pointer to Lisp_Hash_Table.
14289
14290 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
14291 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
14292 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
14293 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
14294 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
14295 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
14296 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
14297 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
14298 (GC_EQ): Remove since they've been identical to their non-GC_
14299 alter-egos ever since the markbit was eradicated.
14300
14301 * alloc.c:
14302 * buffer.c:
14303 * buffer.h:
14304 * data.c:
14305 * fileio.c:
14306 * filelock.c:
14307 * fns.c:
14308 * frame.h:
14309 * lisp.h:
14310 * macterm.c:
14311 * print.c:
14312 * process.c:
14313 * w32fns.c:
14314 * w32menu.c:
14315 * w32term.c:
14316 * xfns.c:
14317 * xmenu.c:
14318 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
14319
143202008-02-01 Kenichi Handa <handa@m17n.org>
14321
14322 * chartab.c (map_sub_char_table): Make it work for the top-level
14323 char-table. Fix handling of parent char-table.
14324 (map_char_table): Adjust for the above change.
14325
143262008-02-01 Jason Rumney <jasonr@gnu.org>
14327
14328 * w32font.c (Qgdi): Rename from Qw32.
14329
143302008-02-01 Jason Rumney <jasonr@gnu.org>
14331
14332 * w32bdf.c (get_quoted_string): Make function static.
14333
143342008-02-01 Kenichi Handa <handa@m17n.org>
14335
14336 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
14337 bigger ascent and descent than those of the font, use them as
14338 font's ascent and descent.
14339
143402008-02-01 Kenichi Handa <handa@m17n.org>
14341
14342 * Makefile.in (${lispsource}international/charprop.el): Move this
14343 target within "#ifdef HAVE_UNIDATA" and "#endif".
14344
143452008-02-01 Kenichi Handa <handa@m17n.org>
14346
14347 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
14348 (shortlisp): Add ../lisp/language/tai-viet.el.
14349
143502008-02-01 Ulrich Mueller <ulm@gentoo.org>
14351
14352 * Makefile.in (${lispsource}international/charprop.el): Depend on
14353 temacs${EXEEXT}.
14354
143552008-02-01 Jason Rumney <jasonr@gnu.org>
14356
14357 * w32font.c (w32font_close): Delete the GDI font object.
14358
14359 * w32menu.c: Include character.h.
14360
14361 * w32proc.c: Likewise.
14362
14363 * w32select.c: Likewise.
14364
14365 * makefile.w32-in (w32proc.o): Depend on character.h.
14366
143672008-02-01 Jason Rumney <jasonr@gnu.org>
14368
14369 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
14370
14371 * w32menu.c (syms_of_w32menu): Likewise.
14372
14373 * w32proc.c (syms_of_ntproc): Likewise.
14374
14375 * w32select.c (syms_of_w32select): Likewise.
14376
14377 * w32term.c (syms_of_w32term): Likewise.
14378
143792008-02-01 Jason Rumney <jasonr@gnu.org>
14380
14381 * w32font.c (w32font_draw): Delete brush after using it.
14382
143832008-02-01 Jason Rumney <jasonr@gnu.org>
14384
14385 * w32font.c (w32font_open): Don't set font_idx.
14386 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
14387 to font settings.
14388 (w32font_draw): Fill background explicitly.
14389
143902008-02-01 Jason Rumney <jasonr@gnu.org>
14391
14392 * w32term.c (w32_initialize): Don't call w32font_initialize.
14393
14394 * w32font.c (w32font_info): Remove subranges.
14395 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
14396 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
14397 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
14398 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
14399 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
14400 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
14401 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
14402 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
14403 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
14404 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
14405 New symbols.
14406 (font_callback_data): New struct.
14407 (w32font_list, w32font_match): Use it.
14408 (w32font_open): Don't populate subranges.
14409 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
14410 (w32font_encode_char): Always return unicode code-point as-is.
14411 (w32font_text_extents): Supply a transformation matrix to
14412 GetGlyphOutline. Never look up by glyph index. Avoid looping
14413 twice. Use unicode version of GetTexExtentPoint32 instead of
14414 glyph index version.
14415 (set_fonts_frame): Remove.
14416 (w32_enumfont_pattern_entity): Add frame parameter, use it to
14417 set frame parameter. Use backward compatible fake foundries.
14418 Save generic family in extra slot under QCfamily. Make width slot
14419 constant. Save QCspacing value. Save list of scripts instead of
14420 binary subranges.
14421 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
14422 (add_font_entity_to_list): Use font_callback_data struct. Filter
14423 unwanted fonts.
14424 (add_one_font_entity_to_list): Use font_callback_data struct.
14425 (w32_registry): Default to iso10646_1.
14426 (fill_in_logfont): Use dpi from extra slot. Don't bother with
14427 string font registries. Don't fill in font name if it is a generic
14428 family name, fill family instead. Use spacing, family and script
14429 extra info to fill pitch, family and charset fields.
14430 (list_all_matching_fonts): Use font_callback_data struct.
14431 (unicode_range_for_char): Remove.
14432 (font_supported_scripts): New function.
14433 (w32font_initialize): Remove.
14434 (syms_of_w32font): Update which symbols are defined.
14435
144362008-02-01 Jason Rumney <jasonr@gnu.org>
14437
14438 * font.c (font_pixel_size): Reverse assq_no_quit args.
14439
14440 * w32term.h (FONT_WIDTH): Report max width, not average.
14441 (FONT_MAX_WIDTH): Remove.
14442 (FONT_AVG_WIDTH): New macro.
14443
14444 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
14445 redefinition of FONT_WIDTH.
14446
14447 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
14448 (w32_cache_char_metrics): Use FONT_WIDTH.
14449
14450 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
14451
144522008-02-01 Jason Rumney <jasonr@gnu.org>
14453
14454 * w32font.c (w32font_open): Make lfHeight negative.
14455
14456 * w32fns.c (x_default_font_parameter): Use new style font name.
14457 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
14458
144592008-02-01 Jason Rumney <jasonr@gnu.org>
14460
14461 * w32font.c (QCsubranges): New symbol.
14462 (w32font_open, w32font_has_char): Get subranges from subproperty
14463 of extra.
14464 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
14465 (syms_of_w32font): Define :subranges symbol.
14466
14467 * font.c (font_put_extra): Expose externally.
14468
14469 * font.h (font_put_extra): Move declaration from font.c.
14470
14471 * font.c (Ffont_get): Use font driver to determine otf capability.
14472 (adjust_anchor): Check if driver defines anchor_point before using.
14473
14474 * w32font.c (w32font_open): Handle size, height and pixel_size better.
14475 (w32font_draw): Use options.
14476 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
14477 Fix detection of truetype fonts.
14478 (registry_to_w32_charset): Handle charsets other than iso8859-1
14479 expressed as lisp symbols.
14480 (w32_registry): Express charset as lisp symbol.
14481 (fill_in_logfont): Reverse pixel and point height logic.
14482 Don't set width here. Set quality to default.
14483
14484 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
14485 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
14486
14487 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
14488 Remove redundant loop and allocation.
14489
14490 * makefile.w32-in (font.o, w32font.o): New objects.
14491 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
14492 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
14493
14494 * xdisp.c (fill_composite_glyph_string): Make the first arg to
14495 STORE_XCHARB a valid l-value.
14496
14497 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
14498 calculations for non-Truetype fonts.
14499 (x_draw_glyph_string): Sync with xterm.c.
14500 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
14501 Remove redundant code.
14502 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
14503
14504 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
14505 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
14506
14507 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
14508 (x_to_w32_charset, w32_to_x_charset): Expose externally.
14509
14510 * w32font.c: New file for w32 font backend.
14511
145122008-02-01 Kenichi Handa <handa@m17n.org>
14513
14514 * term.c: Don't include "buffer.h" twice.
14515
145162008-02-01 Kenichi Handa <handa@m17n.org>
14517
14518 * character.c (Funibyte_string): New function.
14519 (syms_of_character): Defsubr it.
14520
145212008-02-01 Jason Rumney <jasonr@gnu.org>
14522
14523 * w32term.c [USE_FONT_BACKEND]:
14524 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
14525 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
14526 (x_draw_glyph_string, x_draw_glyph_string_foreground)
14527 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
14528 (x_free_frame_resources): Sync with xterm.c.
14529
145302008-02-01 Andreas Schwab <schwab@suse.de>
14531
14532 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
14533 char-table size.
14534
145352008-02-01 Kenichi Handa <handa@m17n.org>
14536
14537 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
14538
145392008-02-01 Kenichi Handa <handa@m17n.org>
14540
14541 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
14542 font_otf_gpos, add font_drive_otf.
14543
14544 * fontset.c (fontset_find_font): Pay attention to font size
14545 specified for a font.
14546 (reorder_font_vector): Check contents of font_def.
14547
14548 * font.c (struct otf_list): Delete it.
14549 (otf_list): Make it a lisp variable.
14550 (otf_open): Use lispy otf_list.
14551 (generate_otf_features): Rename from parse_gsub_gpos_spec.
14552 (check_otf_features): New function.
14553 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
14554 New functions.
14555 (font_drive_otf): New function merging font_otf_gsub and
14556 font_otf_gpos.
14557 (font_open_for_lface): New arg spec. Change argument order.
14558 (font_load_for_face): Adjust for the change of font_open_for_lface.
14559 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
14560 Ffont_otf_gpos.
14561 (syms_of_font): Staticpro otf_list. Delete defsubr of
14562 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
14563
14564 * xfaces.c (set_font_frame_param): Adjust for the change of
14565 font_open_for_lface.
14566
14567 * font.h (font_open_for_lface): Adjust prototype.
14568 (struct font_driver): Delete members otf_gsub and otf_gpos, add
14569 member otf_drive.
14570 (font_otf_gsub, font_otf_gpos): Delete externs.
14571 (font_drive_otf): Extern it.
14572
145732008-02-01 Kenichi Handa <handa@m17n.org>
14574
14575 * font.c (font_at): If the window W is not on a window system,
14576 return Qnil.
14577
14578 * coding.c (produce_chars, encode_coding): Don't call
14579 insert_from_gap if no characters to produce.
14580
145812008-02-01 Kenichi Handa <handa@m17n.org>
14582
14583 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
14584 Fclear_face_cache.
14585
14586 * xfaces.c (face_for_font): Check also face->font==font->font.font.
14587
145882008-02-01 Miles Bader <miles@gnu.org>
14589
14590 * emacs.c (main): Change default value of `enable_font_backend' to 1.
14591 Parse "--disable-font-backend" option.
14592 (standard_args): Add "--disable-font-backend" option.
14593
145942008-02-01 Kenichi Handa <handa@m17n.org>
14595
14596 * fontset.c (fontset_find_font): New function.
14597 (fontset_font): Use fontset_find_font.
14598 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
14599 Register the specified font for all Latin characters.
14600 (new_fontset_from_font): Register the specified font for all Latin
14601 characters.
14602 (dump_fontset): For a realized fontset, include the base fontset
14603 name in the returned vector.
14604
146052008-02-01 Kenichi Handa <handa@m17n.org>
14606
14607 * character.h (CHAR_STRING): Cast C to unsigned on calling
14608 char_string.
14609
14610 * character.c (char_string): Type of arg C changed to unsigned.
14611 Signal an error if C is an invalid character code.
14612
14613 * editfns.c (general_insert_function, Fchar_to_string):
14614 Use CHARACTERP, not INTEGERP.
14615
146162008-02-01 Kenichi Handa <handa@m17n.org>
14617
14618 * character.h (MIN_MULTIBYTE_LEADING_CODE)
14619 (MAX_MULTIBYTE_LEADING_CODE): New macros.
14620
14621 * regex.c (analyse_first): Fix for multibyte characters in "case
14622 charset:" and "case categoryspec:".
14623
146242008-02-01 Andreas Schwab <schwab@suse.de>
14625
14626 * Makefile.in (LIBES): Move standard libraries to the end.
14627
146282008-02-01 Kenichi Handa <handa@m17n.org>
14629
14630 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
14631 nonzero, don't shrink the buffer nextb.
14632
14633 * buffer.h (struct buffer_text): New member inhibit_shrinking.
14634
14635 * coding.c (coding_alloc_by_making_gap): New arg offset.
14636 (alloc_destination): Call coding_alloc_by_making_gap with the arg
14637 offset.
14638 (decode_coding_iso_2022): Update coding->safe_charsets.
14639 (decode_coding_gap): Temporarily set
14640 current_buffer->text->inhibit_shrinking to 1.
14641
146422008-02-01 Kenichi Handa <handa@m17n.org>
14643
14644 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
14645 indexing into elements of s->cmp and s->char2b.
14646
146472008-02-01 Juanma Barranquero <lekktu@gmail.com>
14648
14649 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
14650
146512008-02-01 Kenichi Handa <handa@m17n.org>
14652
14653 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
14654 target_multibyte instead of multibyte.
14655 (re_match_2_internal): Call bcmp_translate with target_multibyte.
14656 (bcmp_translate): Change the argument name from multibyte to
14657 target_multibyte.
14658
146592008-02-01 Kenichi Handa <handa@m17n.org>
14660
14661 These changes are to compile a regexp into a pattern that can be
14662 used both for multibyte and unibyte targets.
14663
14664 * Makefile.in (search.o): Depend on charset.h.
14665
14666 * character.c (multibyte_char_to_unibyte_safe): New function.
14667
14668 * search.c: Include "charset.h".
14669 (compile_pattern_1): Delete argument multibyte. Don't set
14670 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
14671 (compile_pattern): Don't compare cp->buf.target_multibyte.
14672 Compare cp->buf.charset_unibyte.
14673 (compile_pattern): Set cp->buf.target_multibyte.
14674
14675 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
14676
14677 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
14678
14679 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
14680 multibyte. Change callers.
14681 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
14682 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
14683 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
14684 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
14685 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
14686 (regex_compile): Make the compiled pattern usable both for
14687 multibyte and unibyte targets.
14688 (analyse_first): Make the fastmap usable both for multibyte and
14689 unibyte targets.
14690 (TRANSLATE_VIA_MULTIBYTE): Delete.
14691 (re_match_2_internal): Pay attention to the case that the
14692 multibyteness of bufp and target may be different.
14693
146942008-02-01 Kenichi Handa <handa@m17n.org>
14695
14696 * xdisp.c (x_produce_glyphs): When a font is not found, make the
14697 empty box occupy at least one column width.
14698
146992008-02-01 Miles Bader <miles@gnu.org>
14700
14701 * Makefile.in: Remove redundant HAVE_XFT clause.
14702
147032008-02-01 Kenichi Handa <handa@m17n.org>
14704
14705 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
14706
147072008-02-01 Kenichi Handa <handa@m17n.org>
14708
14709 * fontset.c (Finternal_char_font): Fix for the case of POSITION
14710 being nil.
14711
147122008-02-01 Kenichi Handa <handa@m17n.org>
14713
14714 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
14715
147162008-02-01 Kenichi Handa <handa@m17n.org>
14717
14718 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
14719
147202008-02-01 Kenichi Handa <handa@m17n.org>
14721
14722 * search.c (simple_search): Fix previous change.
14723
147242008-02-01 Kenichi Handa <handa@m17n.org>
14725
14726 * xftfont.c (ftfont_font_format): Extern declaration.
14727
14728 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
14729
14730 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
14731 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
14732
14733 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
14734 (ftfont_font_format): Fix previous change.
14735
14736 * font.h (Ffont_xlfd_name): EXFUN it.
14737
14738 * font.c (font_parse_xlfd): Fix the array size of `f'.
14739 (register_font_driver): Use EQ to compare driver->type.
14740
14741 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
14742 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
14743 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
14744
147452008-02-01 Kenichi Handa <handa@m17n.org>
14746
14747 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
14748 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
14749
147502008-02-01 Kenichi Handa <handa@m17n.org>
14751
14752 * xfont.c (xfont_open): Set font->format.
14753
14754 * xftfont.c (xftfont_open): Set font->format.
14755
14756 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
14757 (ftfont_list): Include FC_FONTFORMAT in FcObject.
14758 (ftfont_open): Set font->format.
14759 (ftfont_font_format): New function.
14760
14761 * font.h (struct font): New member format.
14762
14763 * font.c (Qopentype): New variable.
14764 (syms_of_font): Defsym it.
14765 (Fquery_font): Change the format of the last element of the return
14766 value.
14767
147682008-02-01 Kenichi Handa <handa@m17n.org>
14769
14770 * xfns.c (xic_create_xfontset): Try the default fontset name as a
14771 last resort.
14772
147732008-02-01 Kenichi Handa <handa@m17n.org>
14774
14775 * coding.c (detect_coding_charset): Fix detection of multi-byte
14776 charset.
14777
147782008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
14779
14780 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
14781
147822008-02-01 Kenichi Handa <handa@m17n.org>
14783
14784 * xdisp.c (get_next_display_element): Set it->face_id for the
14785 first component of a composition.
14786 (x_produce_glyphs): Check if the font is changed or not for composition.
14787
147882008-02-01 Kenichi Handa <handa@m17n.org>
14789
14790 * fontset.c (Qlatin): New variable.
14791 (syms_of_fontset): Define it as a lisp symbol.
14792 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
14793
147942008-02-01 Kenichi Handa <handa@m17n.org>
14795
14796 * font.c (font_unparse_fcname): Pay attention to the case that
14797 some of font property is a null string.
14798
147992008-02-01 Kenichi Handa <handa@m17n.org>
14800
14801 * term.c: Include "composite.h".
14802 (encode_terminal_code): Output all components of composition.
14803 Check the size of encode_terminal_src.
14804 (produce_glyphs): For composition, call produce_composite_glyph.
14805 (append_composite_glyph, produce_composite_glyph): New functions.
14806
14807 * xdisp.c (x_produce_glyphs): In handling composition, if a font
14808 is not found, get font_info from the current ascii face.
14809
148102008-02-01 Kenichi Handa <handa@m17n.org>
14811
14812 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
14813 buffer-file-name to Qnil before calling insert_from_buffer.
14814
14815 * font.c (font_unparse_fcname): Pay attention to the case that
14816 foundry is a null string.
14817
148182008-02-01 Kenichi Handa <handa@m17n.org>
14819
14820 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
14821
14822 * font.c (Qunicode_sip): New variable.
14823 (syms_of_font): Declare it as a Lisp symbol.
14824
14825 * font.h (Qunicode_sip): Extern it.
14826
148272008-02-01 Kenichi Handa <handa@m17n.org>
14828
14829 * composite.c (get_composition_id): Pay attention to TAB component.
14830
14831 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
14832 TAB. Adjust for the change of s->char2b which always points to
14833 the first element of allocated memory.
14834
14835 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
14836
14837 * xdisp.c (handle_composition_prop): Set it->c to the first
14838 non-TAB component.
14839 (fill_composite_glyph_string): Change argument.
14840 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
14841 (x_produce_glyphs): Fix handling of left/right padding.
14842
148432008-02-01 Kenichi Handa <handa@m17n.org>
14844
14845 * coding.c (detect_coding_system): Fix for handling off
14846 inhibit_iso_escape_detection. Fix for the case that no coding
14847 system is defined for a specific coding category.
14848
148492008-02-01 Kenichi Handa <handa@m17n.org>
14850
14851 * font.c (font_matching_entity): Delete unused local var.
14852
14853 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
14854 opening a font.
14855
14856 * fileio.c (Finsert_file_contents): On recovering a file, assume
14857 Unix-like eol.
14858 (choose_write_coding_system): On auto-saving a file, force
14859 Unix-like eol.
14860
14861 * coding.c (setup_coding_system): Fix setting of
14862 coding->common_flags based on eol_type.
14863 (coding_inherit_eol_type): If PARENT is not nil, be sure to
14864 inherit from it.
14865
148662008-02-01 Kenichi Handa <handa@m17n.org>
14867
14868 * alloc.c (NSTATICS): Increas to 0x600.
14869
148702008-02-01 Kenichi Handa <handa@m17n.org>
14871
14872 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
14873 (ftfont_list): Don't check :name property.
14874 (ftfont_match): New function.
14875 (ftfont_pattern_entity): If the pattern doesn't contain
14876 FC_SPACING, don't assume FC_MONO.
14877
14878 * font.h (struct font_driver): New member `match'.
14879 (font_update_drivers): Adjust prototype.
14880
14881 * font.c (font_parse_fcname, font_parse_name): Don't change :name
14882 property of FONT.
14883 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
14884 them unconditionally.
14885 (font_matching_entity): New function.
14886 (font_open_by_name): Try font_matching_entity if exact match is
14887 not found.
14888 (font_update_drivers): Delete the arg FONT. Return a list of
14889 actually used backends. Don't free faces, font caches here.
14890 Don't store data in frame parameters. Don't call x_set_font.
14891 (Ffont_spec): Store :name property as is.
14892 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
14893 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
14894 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
14895 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
14896 Call font->driver->otf_gsub instead of font_otf_gsub.
14897
14898 * frame.c (x_set_font_backend): Do more works that were done in
14899 font_update_drivers before.
14900
14901 * xfont.c (xfont_match): New function.
14902 (xfont_driver): Set xfont_driver.match to xfont_match.
14903 (xfont_draw): Set font in GC if necessary.
14904
14905 * ftxfont.c (ftxfont_match): New function.
14906 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
14907
14908 * xftfont.c (xftfont_match): New function.
14909 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
14910
149112008-02-01 Kenichi Handa <handa@m17n.org>
14912
14913 * font.h (struct font): New member scalable.
14914 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
14915 (font_otf_gsub): Adjust prototype.
14916
14917 * font.c (font_otf_capability): Fix handling of the default langsys.
14918 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
14919 Check the contents of SPEC.
14920 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
14921 (check_gstring): New function.
14922 (REPLACEMENT_CHARACTER): New macro.
14923 (font_otf_gsub): New arg alternate_subst. Be sure to set all
14924 glyph codes of GSTRING.
14925 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
14926 (font_prepare_composition): Set cmp->glyph_len.
14927 (font_open_entity): Set font->scalable.
14928 (Ffont_get): Handle :otf property.
14929 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
14930 functions.
14931 (Fquery_font): Use font->font.full_name.
14932 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
14933 Sfont_otf_alternates.
14934
14935 * ftfont.c (ftfont_open): Set font->font.full_name and
14936 font->font.name properly. Fix calculation of font->font.height
14937 and font->min_width.
14938
14939 * ftxfont.c (ftxfont_create_gcs): New function.
14940 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
14941 (ftxfont_draw_backgrond): Fix filling region.
14942 (ftxfont_default_fid): New function.
14943 (ftxfont_open): Set xfont->fid to the return value of
14944 ftxfont_default_fid.
14945 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
14946 (ftxfont_done_face): Free only GCs that are created by
14947 ftxfont_create_gcs.
14948 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
14949
14950 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
14951 Clip to src->width, etc (not src->clip_XXX).
14952
14953 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
14954 FontBackend frame parameter.
14955
149562008-02-01 Kenichi Handa <handa@m17n.org>
14957
14958 * font.h (struct font_driver_list): New member `on'.
14959 (Fclear_font_cache): EXFUN it.
14960 (font_update_drivers): Extern it.
14961
14962 * font.c (font_unparse_fcname): Fix typo (swidth->width).
14963 (font_list_entities): Check driver_list->on.
14964 (register_font_driver): Initalize `on' member to 0.
14965 (font_update_drivers): New function.
14966 (Fclear_font_cache): Check driver_list->on.
14967
14968 * frame.h (Qfont_backend): Extern it.
14969 (x_set_font_backend): Extern it.
14970
14971 * frame.c (Qfont_backend): New variable.
14972 (frame_parms): New element for font-backend.
14973 (x_set_font_backend): New function.
14974
14975 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
14976 FontBackend frame parameter.
14977 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
14978 x_set_font_backend.
14979
14980 * xfont.c (xfont_list): Don't try listing by :name property if the
14981 name is not for XLFD.
14982
149832008-02-01 Kenichi Handa <handa@m17n.org>
14984
14985 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
14986 (LGLYPH_SET_TO): New macros.
14987 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
14988 element of G is vector or not.
14989 (font_at): Extern it.
14990
14991 * font.c: Include window.h.
14992 (font_lispy_object): New function.
14993 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
14994 end of valid glyph.
14995 (font_close_object): Fix getting (struct font *).
14996 (font_at): New function.
14997 (Ffont_get): If FONT is a font-object, get entity from it.
14998 (Ffont_make_gstring): Initialize elements of glyphs with nil.
14999 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
15000 range check.
15001 (Ffont_at): New function.
15002 (syms_of_font): Defsubr Sfont_at.
15003
15004 * xdisp.c (it_props): Move the entry for Qauto_composed to just
15005 before the entry for Qcomposition.
15006 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
15007 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
15008 the font in gstring.
15009 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
15010 LGLYPH_FORM (g) to detect the end of valid glyph.
15011 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
15012 we are composing with gstring.
15013
15014 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
15015 Check if adjustment is vector or not.
15016
15017 * Makefile.in (font.o): Make it depends on window.h.
15018
150192008-02-01 Kenichi Handa <handa@m17n.org>
15020
15021 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
15022 adjustment is vector or not.
15023
150242008-02-01 Miles Bader <miles@gnu.org>
15025
15026 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
15027
150282008-02-01 Kenichi Handa <handa@m17n.org>
15029
15030 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
15031 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
15032 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
15033
15034 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
15035 (DEVICE_DELTA): Fix typo.
15036 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
15037 LGLYPH format.
15038
15039 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15040 the change of LGLYPH format.
15041
150422008-02-01 Kenichi Handa <handa@m17n.org>
15043
15044 * ftfont.c (ftfont_list): Fix typo.
15045 (ftfont_build_basic_charsets): Don't include letters with diacritics.
15046
150472008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15048
15049 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
15050
15051 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
15052 xftface_info is non-NULL.
15053
150542008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15055
15056 * ftfont.c (ftfont_list): Move misplaced #endif.
15057
150582008-02-01 Kenichi Handa <handa@m17n.org>
15059
15060 * ftfont.c (ftfont_list): Pay attention to the case that
15061 FC_CAPABILITY is not defined.
15062
150632008-02-01 Kenichi Handa <handa@m17n.org>
15064
15065 * xftfont.c (xftfont_open): Set charset related members to -1.
15066
15067 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
15068 QCname.
15069 (ftfont_open): Set charset related members to -1.
15070
15071 * fontset.c (Votf_script_alist): New variable.
15072 (syms_of_fontset): Initialize it.
15073 (fontset_font): Delete unused variable.
15074
15075 * fontset.h (Votf_script_alist): Extern it.
15076
15077 * font.c (font_find_for_lface): Optimize code.
15078
15079 * font.h (font_close_object, font_merge_old_spec): Extern them.
15080
150812008-02-01 Kenichi Handa <handa@m17n.org>
15082
15083 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
15084 (syms_of_font): Initialize them.
15085 (font_pixel_size): Allow float value in dpi.
15086 (font_prop_validate_type): Delete.
15087 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
15088 Change caller.
15089 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
15090 (font_prop_validate_extra): Delete.
15091 (font_prop_validate_spacing): New function.
15092 (font_property_table): Add elements for all known properties.
15093 (get_font_prop_index): Rename from check_font_prop_name. New
15094 argument FROM. Change caller.
15095 (font_prop_validate): Validate all known properties.
15096 (font_put_extra): Delete argument force. Change caller.
15097 (font_expand_wildcards): Make it static. Fix the way of shrinking
15098 the possible range.
15099 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
15100 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
15101 Change caller.
15102 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
15103 (font_parse_fcname): Delete argument merge. Fix parsing of point
15104 size. Don't validate properties values here. Change caller.
15105 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
15106 (font_open_by_name): Delete unused variable.
15107 (Ffont_spec): Likewise. Validate property values.
15108 (Ffont_match_p): New function.
15109
15110 * font.h (QCscalable): Extern it.
15111 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
15112
15113 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
15114
15115 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
15116 (xfont_list_pattern): New function.
15117 (xfont_list): Use xfont_list_pattern.
15118
151192008-02-01 Kenichi Handa <handa@m17n.org>
15120
15121 * font.h (Flist_fonts): EXFUN it.
15122
151232008-02-01 Jason Rumney <jasonr@gnu.org>
15124
15125 * w32term.c (w32_initialize): Add back smoothing_type and
15126 smoothing_enabled definitions.
15127
151282008-02-01 Kenichi Handa <handa@m17n.org>
15129
15130 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
15131 s->face->font on determining underline position.
15132
151332008-02-01 Kenichi Handa <handa@m17n.org>
15134
15135 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
15136 (font_has_char): Accept font-object too.
15137 (font_find_for_lface): Try at first with a size specified in face.
15138
151392008-02-01 Kenichi Handa <handa@m17n.org>
15140
15141 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
15142 font_open_by_name.
15143
151442008-02-01 Kenichi Handa <handa@m17n.org>
15145
15146 * font.h (QCspacing, QCdpi): Extern them.
15147 (enum font_spacing): New enum.
15148 (FONT_PIXEL_SIZE_QUANTUM): New macro.
15149
15150 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
15151 (QCspacing, QCdpi): New variables.
15152 (syms_of_font): Initialize them.
15153 (font_pixel_size): New function.
15154 (font_put_extra): New function.
15155 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
15156 in FONT_EXTRA.
15157 (font_parse_fcname): Handle enumerated values (e.g. bold).
15158 Fix handling font size. Add QCname property that contains only
15159 unknown properties.
15160 (font_score): Change argument. Change caller. Pay attention to
15161 FONT_PIXEL_SIZE_QUANTUM.
15162 (font_sort_entites, font_list_entities, font_find_for_lface)
15163 (font_open_for_lface, font_open_by_name): Fix handling of font size.
15164 (Ffont_spec): Add QCname property that contains only unknown properties.
15165
15166 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
15167 include weight in listing pattern, instead check weight of each
15168 listed font. Don't include scalable in pattern. Pay attention to
15169 FONT_PIXEL_SIZE_QUANTUM.
15170
151712008-02-01 Kenichi Handa <handa@m17n.org>
15172
15173 * font.c (font_parse_fcname): Fix parsing of point-size.
15174 (font_unparse_fcname): Produce symbolic names for style properties.
15175 (font_list_entities): Handle float size correctly.
15176 (font_open_by_name): Prefer `normal' property values if the name
15177 doesn't specify them.
15178
15179 * fontset.c (Finternal_char_font): Use font_get_name, not
15180 Ffont_xlfd_name.
15181
15182 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
15183 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
15184 pattern. Don't force scalable.
15185
15186 * xftfont.c (xftfont_open): For generating a name, start from
15187 96-byte buffer.
15188
151892008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15190
15191 * frame.h (x_new_fontset2): Fix prototype.
15192
151932008-02-01 Kenichi Handa <handa@m17n.org>
15194
15195 * font.h (struct font_driver): Delete member parse_name.
15196 (font_match_p, font_get_spec, font_parse_fcname)
15197 (font_unparse_fcname): Extern them.
15198 (font_get_name): Adjust prototype.
15199
15200 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
15201 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
15202 (font_expand_wildcards): Fix handling ENCODING field. Avoid
15203 unnecessary checks for weight, slant, and swidth.
15204 (font_parse_fcname): New function.
15205 (font_unparse_fcname): New function.
15206 (font_parse_name): New function.
15207 (font_match_p): New function.
15208 (font_get_name): Change return value to Lisp string.
15209 (font_get_spec): New function.
15210 (Qunspecified, Qignore_defface): Don't extern them.
15211 (font_find_for_lface): Assume that LFACE is fully specified.
15212 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
15213 object, use it for FACE.
15214 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
15215 driver->parse_name.
15216 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
15217
15218 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
15219 prototype.
15220
15221 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
15222 argument F. Don't call Fnew_fontset. Instead, directly call
15223 make_fontset.
15224
15225 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
15226
15227 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
15228 of x_new_fontset2.
15229
15230 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
15231 (Qsans__serif): New variables.
15232 (ftfont_generic_family_list): New variable.
15233 (syms_of_ftfont): Initialize the above variables.
15234 (ftfont_pattern_entity): Delete argument NAME.
15235 (ftfont_list_generic_family): New function.
15236 (ftfont_parse_name): Delete this function.
15237 (ftfont_list): Try generic family only when FcFontList found no font.
15238 (ftfont_list_family): Fix args to FcObjectSetBuild.
15239
15240 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
15241 object in attrs[LFACE_FONT_INDEX].
15242 (set_lface_from_font_name): Cancel all changes for font-backend.
15243 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
15244 function.
15245 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
15246 font object in QCfont attribute.
15247 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
15248 (realize_default_face) [USE_FONT_BACKEND]: Call
15249 set_lface_from_font_and_fontset.
15250
15251 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
15252 "fixed", and signal error here if no suitable font was found.
15253
15254 * xfont.c (xfont_parse_name): Delete this function.
15255
15256 * xftfont.c (xftfont_open): Change coding style of error
15257 handling. Generate fontconfig's fontname pattern.
15258
15259 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
15260 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
15261
15262 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
15263 Both args FONTSET and FONT_OBJECT must be existing ones.
15264
152652008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15266
15267 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
15268
152692008-02-01 Kenichi Handa <handa@m17n.org>
15270
15271 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
15272
15273 * font.h (struct font): Fix typo.
15274
15275 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
15276 XLFD_XXX_INDEX.
15277 (enum xlfd_field_mask): New enum.
15278 (intern_font_field): Changed argument. Change caller. If digits
15279 are followed by non-digits, return a symbol.
15280 (font_expand_wildcards): New function.
15281 (font_parse_xlfd): Fix wildcard handling.
15282 (Ffont_spec): If :name is specified, reflect the info in the other
15283 properties.
15284
15285 * ftfont.c (ftfont_pattern_entity): Fix typo.
15286 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
15287 locale.
15288
152892008-02-01 Kenichi Handa <handa@m17n.org>
15290
15291 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
15292
15293 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
15294 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
15295 registry doesn't specify encoding part.
15296 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
15297 (font_open_by_name): At first try parsing the name.
15298 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
15299 as Lisp symbols.
15300
15301 * fontset.c (reorder_font_vector): Pay attention to the case that
15302 the 3rd element of font_def is nil.
15303 (fontset_font): For the default fontset, append one more fontset
15304 elements for a script-based font specification. Don't add script
15305 attribute on finding a font.
15306 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
15307 font name.
15308 (fontset_ascii_font): If a font can't be opened, return nil.
15309
15310 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
15311 (ftfont_pattern_entity): New function.
15312 (ftfont_get_cache): Assume that freetype_font_cache is already
15313 initialized.
15314 (ftfont_list): Handle the case that a file is specified in font
15315 name. Use ftfont_pattern_entity to generate entities.
15316 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
15317 (syms_of_ftfont): Initialize freetype_font_cache.
15318
15319 * xftfont.c (xftfont_open): Make the font name fontconfig's
15320 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
15321 (xftfont_close): Free font->font.name if not NULL.
15322
15323 * xfont.c (xfont_list): If script is specified for a font, return
15324 null_vector.
15325 (xfont_list_family): Declare argument type.
15326
15327 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
15328 name, set LFACE_FONT (lface) to nil.
15329
15330 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
15331 return Qnil.
15332
153332008-02-01 Kenichi Handa <handa@m17n.org>
15334
15335 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
15336 (standard_args): Add "-enable-font-backend".
15337
153382008-02-01 Kenichi Handa <handa@m17n.org>
15339
15340 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
15341 (struct xftdraw_list, xftdraw_list): Delete them.
15342 (register_xftdraw, check_xftdraw): Delete them.
15343 (xftfont_prepare_face): Don't call register_xftdraw.
15344 (xftfont_done_face): Don't call check_xftdraw.
15345 (xftfont_draw): Get background color only when with_background is
15346 nonzero.
15347
15348 * xfont.c (xfont_encode_char): Fix calculation of char2b.
15349
153502008-02-01 Kenichi Handa <handa@m17n.org>
15351
15352 These changes are for the new font handling codes.
15353
15354 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
15355 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
15356 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
15357 (FONTSRC, FONTOBJ): New variables.
15358 (obj): Add $(FONTOBJ).
15359 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
15360 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
15361 @LIBOTF_LIBS@.
15362 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
15363 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
15364
15365 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
15366
15367 * character.h (Vscript_representative_chars): Extern it.
15368
15369 * character.c (Vscript_representative_chars): New variable.
15370 (syms_of_character): Declare it as a Lisp variable.
15371
15372 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
15373 enable_font_backend is nonzero, accept the composition method
15374 COMPOSITION_WITH_GLYPH_STRING.
15375
15376 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
15377 enumeration COMPOSITION_WITH_GLYPH_STRING.
15378
15379 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
15380 members clip_x, clip_y, clip_width, and clip_height.
15381 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
15382
15383 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
15384 --enable-font-backend. Call syms_of_font.
15385
15386 * fns.c (assoc_no_quit): New function.
15387
15388 * fontset.h (FONT_INFO_FROM_FACE): New macro.
15389 (face_for_font, new_fontset_from_font)
15390 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
15391
15392 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
15393 (fontset_font, fontset_ascii, face_for_char)
15394 (make_fontset_for_ascii_face, Ffont_info)
15395 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
15396 is nonzero, use font-backend mechanism.
15397 (find_font_encoding): Make it non-static.
15398 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
15399 New functions.
15400
15401 * frame.h (struct frame): New members resx and resy.
15402 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
15403 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
15404
15405 * frame.c [USE_FONT_BACKEND]: Include "font.h".
15406 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
15407
15408 * lisp.h (assoc_no_quit): Extern it.
15409
15410 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
15411 Through out the file, use FONT_INFO_FROM_FACE instead of
15412 FONT_INFO_FROM_ID, use get_per_char_metric instead of
15413 rif->per_char_metric.
15414 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
15415 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
15416 (get_glyph_face_and_encoding, fill_composite_glyph_string)
15417 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15418 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
15419 nonzero, use font-backend mechanism.
15420 (get_per_char_metric): New function.
15421
15422 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
15423 (set_lface_from_font_name)
15424 (set_font_frame_param, free_realized_face)
15425 (prepare_face_for_display, clear_face_gcs)
15426 (Finternal_set_font_selection_order, realize_x_face)
15427 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
15428 font-backend mechanism.
15429 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
15430 (load_face_font) [USE_FONT_BACKEND]: Abort.
15431 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
15432 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
15433
15434 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
15435 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
15436 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
15437 nonzero, register all available font drivers. Call
15438 x_default_font_parameter for deciding a font.
15439 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
15440
15441 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
15442 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
15443 (x_set_glyph_string_clipping_exactly)
15444 (x_compute_glyph_string_overhangs)
15445 (x_draw_glyph_string_foreground)
15446 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
15447 (x_free_frame_resources) [USE_FONT_BACKEND]: If
15448 enable_font_backend is nonzero, use font-backend mechanism.
15449 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
15450
154512008-02-01 Kenichi Handa <handa@m17n.org>
15452
15453 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
15454 system_eol_type.
15455 (syms_of_coding): Initialize system_eol_type.
15456
15457 * process.c (Fset_process_coding_system): Inherit system's eol
15458 format if necessary.
15459
154602008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15461
15462 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
15463
154642008-02-01 Kenichi Handa <handa@m17n.org>
15465
15466 * coding.c (decode_eol): Pay attention to buffer relocation in
15467 del_range_2.
15468 (decode_coding): Call decode_eol before restoring undo_list.
15469
154702008-02-01 Kenichi Handa <handa@m17n.org>
15471
15472 * charset.c (Fdefine_charset_internal): Fix setting of
15473 emacs_mule_bytes.
15474
154752008-02-01 Kenichi Handa <handa@m17n.org>
15476
15477 * keyboard.c (read_char): Check if C is a character or not before
15478 looking up Vkeyboard_translate_table.
15479
154802008-02-01 Kenichi Handa <handa@m17n.org>
15481
15482 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
15483 condition to terminate the loop.
15484
154852008-02-01 Kenichi Handa <handa@m17n.org>
15486
15487 * coding.c (produce_composition): Compare charbuf[i] instead of
15488 args[i] against 0.
15489 (Fterminal_coding_system): Use EQ to compare Lisp objects.
15490
154912008-02-01 Kenichi Handa <handa@m17n.org>
15492
15493 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
15494 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
15495 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
15496 detect_coding.
15497 (emacs_mule_char): Handle old style (Emacs 20) component character
15498 of a composition.
15499 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
15500 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
15501 composition rule.
15502 (decode_coding_emacs_mule): Handle invalid bytes correctly.
15503
155042008-02-01 Kenichi Handa <handa@m17n.org>
15505
15506 * coding.c (encode_coding_ccl): Allocate destination dynamically
15507 when necessary.
15508
155092008-02-01 Kenichi Handa <handa@m17n.org>
15510
15511 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
15512 the loop. When quitted, show a proper error message.
15513
155142008-02-01 Kenichi Handa <handa@m17n.org>
15515
15516 * xterm.c (x_set_glyph_string_clipping_exactly): Set
15517 src->clip_head and src->clip_tail temporarily instead of src->hl.
15518
15519 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
15520 character sequence.
15521 (Fccl_execute_on_string): Use ASET, not XSET.
15522
155232008-02-01 Kenichi Handa <handa@m17n.org>
15524
15525 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
15526
155272008-02-01 Kenichi Handa <handa@m17n.org>
15528
15529 * coding.c (decode_coding): Fix the condition of terminating the
15530 decoding loop.
15531
155322008-02-01 Kenichi Handa <handa@m17n.org>
15533
15534 * data.c (Faset): On setting a character bigger than 255 in a
15535 unibyte string, signal an error instead of make the string multibyte.
15536
155372008-02-01 Kenichi Handa <handa@m17n.org>
15538
15539 * charset.c (map_charset_chars): Fix for ascii-compatible charset
15540 made by a mapping table.
15541
155422008-02-01 Kenichi Handa <handa@m17n.org>
15543
15544 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
15545 not.
15546 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
15547 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
15548
15549 * xterm.c (x_draw_composite_glyph_string_foreground): Check
15550 s->face is NULL or not.
15551
155522008-02-01 Kenichi Handa <handa@m17n.org>
15553
15554 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
15555 (x_draw_glyph_string): Fix drawing of right_overhang and
15556 left_overhang around/on cursor.
15557
15558 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
15559
155602008-02-01 Kenichi Handa <handa@m17n.org>
15561
15562 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
15563
155642008-02-01 Kenichi Handa <handa@m17n.org>
15565
15566 * coding.c (Fdefine_coding_system_internal)
15567 (Fdefine_coding_system_alias): Avoid a duplicated element in
15568 Vcoding_system_alist.
15569
155702008-02-01 Kenichi Handa <handa@m17n.org>
15571
15572 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
15573
15574 * coding.c (Qcoding_system_define_form): New variable.
15575 (syms_of_coding): Intern and staticpro it.
15576 (Fcoding_system_p): Check Qcoding_system_define_form.
15577 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
15578
15579 * coding.h (CODING_SYSTEM_P): If ID is not available, call
15580 Fcoding_system_p.
15581 (CHECK_CODING_SYSTEM): If ID is not available, call
15582 Fcheck_coding_system.
15583 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
15584 Try also Fcheck_coding_system.
15585
155862008-02-01 Kenichi Handa <handa@m17n.org>
15587
15588 * coding.c (code_conversion_restore): GCPRO arg.
15589
155902008-02-01 Kenichi Handa <handa@m17n.org>
15591
15592 * character.c (lisp_string_width): Check multibyteness of STRING.
15593
155942008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15595
15596 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
15597 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
15598 (decode_mac_font_name): Use decode_coding_c_string instead of
15599 decode_coding.
15600 (x_load_font): Initialize fontp->fontset to -1. Set
15601 fontp->encoding_type.
15602
156032008-02-01 Kenichi Handa <handa@m17n.org>
15604
15605 * search.c (search_buffer): Give up BM search on case-fold-search
15606 if one of a target character has a case-equivalence of different
15607 byte length even if that target charcter is an ASCII.
15608 (simple_search): Fix calculation of byte length of matched text.
15609 (boyer_moore): Fix handling of case-equivalent multibyte characters.
15610
156112008-02-01 Kenichi Handa <handa@m17n.org>
15612
15613 * coding.c (decode_coding): Fix handling of invalid bytes.
15614
156152008-02-01 Kenichi Handa <handa@m17n.org>
15616
15617 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
15618 Unicode characters.
15619
156202008-02-01 Kenichi Handa <handa@m17n.org>
15621
15622 * coding.c (encode_coding_object): If a pre-write-conversion
15623 function makes a new buffer, kill it.
15624
156252008-02-01 Kenichi Handa <handa@m17n.org>
15626
15627 * coding.c (QCascii_compatible_p): New variable.
15628 (syms_of_coding): Initialize it.
15629 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
15630 calling string_char.
15631 (record_conversion_result): Add `default:' case.
15632 (coding_charset_list): Delete unused variable `coding_type'.
15633 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
15634 property in the plist of the coding system.
15635 (Fcoding_system_put): Check QCascii_compatible_p.
15636
156372008-02-01 Miles Bader <miles@gnu.org>
15638
15639 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
15640 removed calculation of frame `f', as it's now used.
15641
156422008-02-01 Kenichi Handa <handa@m17n.org>
15643
15644 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
15645 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
15646 (UNIDATA): New variable.
15647 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
15648 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
15649 $(RUN_TEMACS) unconditionally.
15650
156512008-02-01 Kenichi Handa <handa@m17n.org>
15652
15653 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
15654 (admindir): New variable.
15655 ($(lispsource)international/charprop.el): New target.
15656
156572008-02-01 Miles Bader <miles@gnu.org>
15658
15659 * character.c (chars-in-region): Remove obsolete function.
15660 (syms_of_character): Remove its initialization.
15661
156622008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
15663
15664 * w32select.c (validate_coding_system)
15665 (setup_windows_coding_system): New functions.
15666 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
15667 setup_windows_coding_system.
15668 (setup_config, Fw32_get_clipboard_data): Use
15669 validate_coding_system.
15670 (Fx_selection_exists): Move call to setup_config to a place
15671 where signals are allowed.
15672
15673 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
15674 (Fcheck_coding_system): Add declarations.
15675
156762008-02-01 Kenichi Handa <handa@m17n.org>
15677
15678 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
15679
156802008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15681
15682 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
15683 string as the second argument for x_new_fontset.
15684
156852008-02-01 Kenichi Handa <handa@m17n.org>
15686
15687 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
15688 (encode_coding_object): Use safe_call instead of call2.
15689
156902008-02-01 Kenichi Handa <handa@m17n.org>
15691
15692 * fontset.c (Fset_fontset_font): Check family element of a given vector.
15693
15694 * Makefile.in (lisp): Include charprop.el.
15695
156962008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15697
15698 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
15699 Not sure if it's unnecessary.
15700
157012008-02-01 Steven Tamm <steventamm@mac.com>
15702
15703 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
15704 some possibly unnecessary fontset checking code that crashed
15705 when creating a new frame.
15706
157072008-02-01 Kenichi Handa <handa@m17n.org>
15708
15709 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
15710 lookup_face.
15711
15712 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
15713
15714 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
15715
157162008-02-01 Kenichi Handa <handa@m17n.org>
15717
15718 * coding.c: Cancel the change done in HEAD on 2008-02-01.
15719 (coding_charset_list): New function.
15720
15721 * coding.h (coding_charset_list): Extern it.
15722
157232008-02-01 Kenichi Handa <handa@m17n.org>
15724
15725 * fontset.c (Fset_fontset_font): Call find_font_encoding with
15726 concatenation of family and registry.
15727
157282008-02-01 Kenichi Handa <handa@m17n.org>
15729
15730 * character.h (BYTE8_STRING): Fix typo.
15731
15732 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
15733 string to multibyte (sync to HEAD).
15734
15735 * casefiddle.c (casify_region): Handle changes in byte-length
15736 using replace_range_2 (sync to HEAD).
15737
157382008-02-01 Andreas Schwab <schwab@suse.de>
15739
15740 * chartab.c (map_char_table): GCPRO table and arg.
15741
157422008-02-01 Kenichi Handa <handa@m17n.org>
15743
15744 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
15745 already at limit.
15746
157472008-02-01 Kenichi Handa <handa@m17n.org>
15748
15749 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
15750 instead of fast_c_string_match_ignore_case.
15751 (find_font_encoding): Change argument to Lisp_Object. Use
15752 fast_string_match_ignore_case instead of
15753 fast_c_string_match_ignore_case. Change caller.
15754
157552008-02-01 Kenichi Handa <handa@m17n.org>
15756
15757 * xdisp.c (get_next_display_element): In unibyte case, decide to
15758 display in octal form by checking a character by
15759 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
15760
15761 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
15762
15763 * character.c (unibyte_has_multibyte_table): New variable.
15764
15765 * character.h (unibyte_has_multibyte_table): Extern it.
15766 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
15767
157682008-02-01 Kenichi Handa <handa@m17n.org>
15769
15770 * coding.c (encode_coding_iso_2022): Fix handling of charset
15771 annotation.
15772
157732008-02-01 Kenichi Handa <handa@m17n.org>
15774
15775 * coding.c (setup_coding_system): If coding_system is nil, use
15776 Qundecided.
15777 (Fterminal_coding_system): Return nil if terminal coding system is
15778 `undecided'.
15779 (syms_of_coding): Define coding-system `undecided' here. Setup
15780 terminal_coding as `undecided'.
15781
157822008-02-01 Kenichi Handa <handa@m17n.org>
15783
15784 * xdisp.c (message_dolog, set_message_1): Call
15785 unibyte_char_to_multibyte with arg type int.
15786
15787 * lread.c (read1): Fix reading of a char-table.
15788
15789 * print.c (print_object): Include sub char-table in circularities
15790 detection.
15791
157922008-02-01 Kenichi Handa <handa@m17n.org>
15793
15794 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
15795 Append the found sequences in car of ARGS instead of prepending.
15796
157972008-02-01 Kenichi Handa <handa@m17n.org>
15798
15799 * fileio.c (report_file_error): Make a unibyte string from
15800 strerror (errorno).
15801 (Fsubstitute_in_file_name): Fix the arg to
15802 unibyte_char_to_multibyte. It is evaluated twice.
15803
158042008-02-01 Kenichi Handa <handa@m17n.org>
15805
15806 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
15807
158082008-02-01 Kenichi Handa <handa@m17n.org>
15809
15810 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
15811 BOM is not found.
15812 (detect_coding, detect_coding_system): Optimization for ISO-2022
15813 when no 8-bit data is found.
15814
158152008-02-01 Jason Rumney <jasonr@gnu.org>
15816
15817 * w32fns.c (x_to_w32_font): Update to use new coding struct.
15818
158192008-02-01 Kenichi Handa <handa@m17n.org>
15820
15821 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
15822 CHARS.
15823
158242008-02-01 Steven Tamm <steventamm@mac.com>
15825
15826 * macterm.c (mac_encode_char): Add charset argument and update
15827 to use encoding_type.
15828 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
15829 switch to pure fontset.
15830 (decode_mac_font_name): Temporarily remove decoding.
15831 (x_font_name_to_mac_font_name): Temporarily remove encoding.
15832 (x_load_font): Temporarily remove encoding.
15833
158342008-02-01 Kenichi Handa <handa@m17n.org>
15835
15836 * xfaces.c (Fface_font): If frame is not on a window system,
15837 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
15838 refer to face->font.
15839 (split_font_name_into_vector, build_font_name_from_vector)
15840 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
15841 when HAVE_WINDOW_SYSTEM is defined.
15842
158432008-02-01 Kenichi Handa <handa@m17n.org>
15844
15845 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
15846 (x_produce_glyphs): Fix setting of members of cmp in case
15847 cmp->glyph_len is zero.
15848
15849 * fontset.c (Fset_fontset_font): Fix docstring.
15850 (Ffontset_info): Make it backward compatible. New arg ALL.
15851
158522008-02-01 Kim F. Storm <storm@cua.dk>
15853
15854 * process.c (read_process_output): Grow decoding_buf when needed;
15855 this could cause a crash in allocate_string and compact_small_strings.
15856
158572008-02-01 Kenichi Handa <handa@m17n.org>
15858
15859 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
15860
158612008-02-01 Kenichi Handa <handa@m17n.org>
15862
15863 * coding.c (setup_coding_system): Set coding->common_flags
15864 correctly for raw-text.
15865 (consume_chars): On encoding unibyte text by raw-text, don't check
15866 multibyte form.
15867 (encode_coding): On encoding by raw-text, never use translation tables.
15868
15869 * fileio.c (e_write): Short cut for the case of no encoding.
15870
158712008-02-01 Kenichi Handa <handa@m17n.org>
15872
15873 * coding.c (detect_coding, detect_coding_system): Delete unused
15874 variables.
15875
158762008-02-01 Kenichi Handa <handa@m17n.org>
15877
15878 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
15879 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
15880
158812008-02-01 Kenichi Handa <handa@m17n.org>
15882
15883 * coding.c (Ffind_coding_systems_region_internal): Include
15884 raw-text and no-conversion in the result.
15885
158862008-02-01 Kenichi Handa <handa@m17n.org>
15887
15888 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
15889 (load_font_get_repertory): Delete unnecessary check of ENCODING of
15890 FONT_DEF.
15891 (font_def_arg, add_arg, from_arg, to_arg): New args.
15892 (set_fontset_font): Change argument.
15893 (Fset_fontset_font): Fix for the case that TARGET is a script
15894 name and charset name.
15895 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
15896
158972008-02-01 Kenichi Handa <handa@m17n.org>
15898
15899 * fontset.c (fontset_font): Rename from fontset_face. Change return
15900 value.
15901 (face_suitable_for_char_p, face_for_char): Adjust for the change
15902 of fontset_font.
15903 (make_fontset_for_ascii_face): Fix setting of the fontset element
15904 for ASCII.
15905 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
15906 to get a font name.
15907 (Ffontset_info): Adjust for the change of fontset_font.
15908
15909 * coding.c (emacs_mule_char): Check invalid code more rigidly.
15910
15911 * character.h (LEADING_CODE_LATIN_1_MIN)
15912 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
15913
159142008-02-01 Kenichi Handa <handa@m17n.org>
15915
15916 * editfns.c (check_translation): New function.
15917 (Ftranslate_region_internal): Handle M:N mapping.
15918
159192008-02-01 Kenichi Handa <handa@m17n.org>
15920
15921 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
15922
159232008-02-01 Kenichi Handa <handa@m17n.org>
15924
15925 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
15926 goto invalid_code.
15927 (decode_coding_iso_2022): Fix handling of invalid designation.
15928
15929 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
15930 after calling code_conversion_save.
15931
159322008-02-01 Kenichi Handa <handa@m17n.org>
15933
15934 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
15935
15936 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
15937
15938 * fontset.c: Include "intervals.h".
15939 (fontset_face): Fix comparing of Lisp_Objects.
15940 (free_face_fontset, new_fontset_from_font_name): Fix
15941 Lisp_Object/int mixup.
15942
15943 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
15944
15945 * coding.c: Add many prototypes for static functions.
15946 (get_translation_table): Allow max_lookup to be NULL.
15947 (decode_coding, Ffind_coding_systems_region_internal)
15948 (Funencodable_char_position, Fcheck_coding_systems_region): Call
15949 get_translation_table with max_lookup NULL.
15950
159512008-02-01 Kenichi Handa <handa@m17n.org>
15952
15953 * coding.c (get_translation_table): Declare it as Lisp_Object.
15954 (LOOKUP_TRANSLATION_TABLE): New macro.
15955 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
15956 instead of CHAR_TABLE_REF.
15957
159582008-02-01 Kenichi Handa <handa@m17n.org>
15959
15960 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
15961 annotation data format.
15962 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
15963 Change arguments FROM and TO to single argument NCHARS. Change caller.
15964 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
15965 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15966 (decode_coding_ccl, decode_coding_charset): Pay attention to
15967 coding->charbuf_used.
15968 (get_translation): New function.
15969 (produce_chars): New arguments translation_table and last_block.
15970 Translate characters here. Return number of carryover chars.
15971 Change caller.
15972 (produce_composition): New argument pos. Change caller.
15973 Adjust for the change of annotation data format.
15974 (produce_charset, produce_annotation): Likewise.
15975 (decode_coding, encode_coding): Don't call translate_chars.
15976 (consume_chars): New arg translation_table. Change caller.
15977 (translate_chars): Delete.
15978 (syms_of_coding): Make translation-table's number of extra slots 2.
15979
159802008-02-01 Kenichi Handa <handa@m17n.org>
15981
15982 * search.c (simple_search): Fix setting this_pos_byte in backward
15983 search.
15984
15985 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
15986 byte sequence.
15987 (detect_coding_ccl): Fix setting of the variable valids.
15988
159892008-02-01 Kenichi Handa <handa@m17n.org>
15990
15991 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
15992
15993 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
15994
15995 * editfns.c (Ftranslate_region_internal): Rename from
15996 Ftranslate_region. Accept a char-table in TABLE.
15997 (syms_of_editfns): Defsubr Stranslate_region_internal.
15998
15999 * xfaces.c (set_lface_from_font_name): If a font is specified for
16000 a frame, generate a fontset from the font.
16001 (build_scalable_font_name): If the scalable font is requested for
16002 a specific size, don't change that size.
16003 (try_font_list): Try a scalable font also in the case that a
16004 pattern string is specified.
16005
160062008-02-01 Kenichi Handa <handa@m17n.org>
16007
16008 * xfaces.c (Fface_font): New optional arg CHARACTER.
16009
160102008-02-01 Kenichi Handa <handa@m17n.org>
16011
16012 * charset.h (CHARSET_OFFSET): New macro.
16013
160142008-02-01 Kenichi Handa <handa@m17n.org>
16015
16016 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
16017
16018 * fontset.c (fontset_face): Handle the case that repertory is a
16019 char-table.
16020 (find_font_encoding): Return nil for unknown encoding.
16021 (Fset_fontset_font): Ignore a font of unknown encoding.
16022
160232008-02-01 Kenichi Handa <handa@m17n.org>
16024
16025 * keymap.c (describe_vector): Handle default value of a char table.
16026
16027 * fontset.c (fontset_face): Handle fallback fonts correctly.
16028 (Ffontset_info): Return infomation about fallback fonts.
16029
160302008-02-01 Kenichi Handa <handa@m17n.org>
16031
16032 * fontset.c (FONTSET_DEFAULT): New macro.
16033 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
16034 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
16035 the case that it is nil.
16036 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
16037 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
16038
16039 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
16040 subset or superset.
16041
160422008-02-01 Kenichi Handa <handa@m17n.org>
16043
16044 * emacs.c (main): Call init_charset after syms_of_XXX.
16045
16046 * charset.c (Vcharset_map_directory): Delete.
16047 (Vcharset_map_path): New variable.
16048 (load_charset_map_from_file): Use Vcharset_map_path instead.
16049 (init_charset): Initialize Vcharset_map_path.
16050 (syms_of_charset): Delete declaration of "charset-map-directory",
16051 add declaration of "charset-map-path".
16052
160532008-02-01 Kenichi Handa <handa@m17n.org>
16054
16055 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
16056 ASCII only string.
16057
16058 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
16059
16060 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
16061 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
16062
160632008-02-01 Kenichi Handa <handa@m17n.org>
16064
16065 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
16066
16067 * coding.c (QCmnemonic, QCdefalut_char)
16068 (QCdecode_translation_table, QCencode_translation_table)
16069 (QCpost_read_conversion, QCpre_write_conversion): New variables.
16070 (get_translation_table): Return a list of translation tables if
16071 necessary.
16072 (decode_coding): Call get_translation_table with ENCODEP 0.
16073 (char_encodable_p): If translation_table is non-nil, always call
16074 translate_char.
16075 (Fdefine_coding_system_internal): Accept list of translation
16076 tables as :encode-translation-table and :decode-translation-table.
16077 (Fcoding_system_put): New function.
16078 (syms_of_coding): Declare new symbols. Defsubr
16079 Scoding_system_put.
16080 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
16081 typically JISX0212.
16082
16083 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
16084 when the charset is superset type.
16085
16086 * character.c (translate_char): Accept list of translation tables.
16087
160882008-02-01 Kenichi Handa <handa@m17n.org>
16089
16090 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
16091 (CODING_ATTR_TRANS_TBL): New macro.
16092
16093 * coding.c (get_translation_table): New function.
16094 (translate_chars): Fix the bug of skipping annotation data.
16095 (decode_coding, encode_coding): Utilize get_translation_table.
16096 (char_encodable_p, Funencodable_char_position): Translate char if
16097 necessary.
16098 (Ffind_coding_systems_region_internal)
16099 (Fcheck_coding_systems_region): Setup translation table for encode
16100 in a coding system attribute vector in advance.
16101 (Fdefine_coding_system_internal): Allow a symbol as translation
16102 table. For shift-jis type coding system, allow 4th charset.
16103
161042008-02-01 Kenichi Handa <handa@m17n.org>
16105
16106 * coding.c (decode_coding_sjis): Check the first byte rigidly.
16107
16108 * xdisp.c (get_next_display_element): Pass -1 as POS to
16109 FACE_FOR_CHAR if displaying a C-string.
16110
161112008-02-01 Kenichi Handa <handa@m17n.org>
16112
16113 * composite.c (get_composition_id): Handle xoff and yoff in a
16114 composition rule.
16115
16116 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
16117 (struct composition): New member lbearing and rbearing.
16118
16119 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
16120 (x_get_glyph_overhangs): Handle a composition glyph.
16121 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
16122
16123 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
16124 composition glyph.
16125
161262008-02-01 Kenichi Handa <handa@m17n.org>
16127
16128 * print.c: Include charset.h.
16129 (Vprint_charset_text_property): New variable.
16130 (Qdefault): Extern it.
16131 (PRINT_STRING_NON_CHARSET_FOUND)
16132 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
16133 (print_check_string_result): New variable.
16134 (print_check_string_charset_prop): New function.
16135 (print_prune_charset_plist): New variable.
16136 (print_prune_string_charset): New function.
16137 (print_object): Call print_prune_string_charset if
16138 Vprint_charset_text_property is not t.
16139 (print_interval): Print nothing if interval->plist is nil.
16140 (syms_of_print): Declare Vprint_charset_text_property as a lisp
16141 variable. Init and staticpro print_prune_charset_plist.
16142
161432008-02-01 Kenichi Handa <handa@m17n.org>
16144
16145 * fontset.c (new_fontset_from_font_name): Use the specified font
16146 for all characters in the new fontset.
16147
16148 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
16149 OBJECT args.
16150
16151 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
16152 OBJECT args for composition too.
16153
16154 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
16155 OBJECT args.
16156
161572008-02-01 Kenichi Handa <handa@m17n.org>
16158
16159 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
16160
16161 * fontset.c (reorder_font_vector): Adjust for the change of
16162 FONT_DEF format.
16163 (fontset_face): New arg id. Change caller.
16164 (face_for_char): New args pos and object.
16165 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
16166 (fs_query_fontset): Check NAME by Fassoc too.
16167 (Fset_fontset_font): Allow non-XLFD font name.
16168 (Ffontset_info): Adjust for the change of FONT_DEF format.
16169
16170 * fontset.h (face_for_char): Adjust prototype.
16171
16172 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
16173 (append_space, extend_face_to_end_of_line)
16174 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16175 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
16176
16177 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
16178 POS and OBJECT args.
16179
16180 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
16181 POS and OBJECT args.
16182
161832008-02-01 Jason Rumney <jasonr@gnu.org>
16184
16185 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
16186 of GlobalAlloc'ed memory.
16187
161882008-02-01 Kenichi Handa <handa@m17n.org>
16189
16190 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
16191
16192 * charset.h (charset_table_used): Delete extern.
16193
16194 * charset.c (charset_table_used): Make it static.
16195 (map_charset_chars): Fix args to c_function with.
16196
16197 * chartab.c (map_sub_char_table_for_charset): Fix args to
16198 c_function with.
16199
16200 * coding.h (enum coding_result_code): Delete
16201 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
16202
16203 * coding.c (Qinsufficient_source, Qinconsistent_eol)
16204 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
16205 (Vlast_code_conversion_error): New variables.
16206 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
16207 (ONE_MORE_BYTE): Record error if any instead of signaling an
16208 error. If non-ASCII multibyte char is found, return the negative
16209 value of the code. All callers changed to check it.
16210 (ONE_MORE_BYTE_NO_CHECK): Likewise.
16211 (record_conversion_result): New function. Change all codes setting
16212 coding->result to call this function.
16213 (detect_coding_utf_8, decode_coding_utf_8)
16214 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
16215 Don't use the local variable incomplete.
16216 (emacs_mule_char): Change the second arg to `const'.
16217 (decode_coding): Fix of flushing out unprocessed data.
16218 (make_conversion_work_buffer): Fix making of a work buffer.
16219 (decode_coding_object): Return coding->dst_object.
16220
16221 * fontset.c (set_fontset_font): Fix args.
16222
16223 * lisp.h (CHARACTERBITS): Define as 22.
16224
16225 * process.c (send_process): Be sure to set coding->src_multibyte.
16226
16227 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
16228
162292008-02-01 Kenichi Handa <handa@m17n.org>
16230
16231 * xdisp.c (handle_auto_composed_prop): Give limit to
16232 Fnext_single_char_property_change.
16233
162342008-02-01 Kenichi Handa <handa@m17n.org>
16235
16236 * composite.c (syms_of_composite): Don't make the composition hash
16237 table weak.
16238
16239 * fontset.c (Fset_fontset_font): Fix docstring.
16240
16241 * lisp.h (detect_coding_system): Adjust prototype.
16242
16243 * fileio.c (kill_workbuf_unwind): Delete this function.
16244 (Finsert_file_contents): Adjust the call of detect_coding_system.
16245 Get conversion_buffer by code_conversion_save. Use the macro
16246 CODING_MAY_REQUIRE_DECODING. After decoding, update
16247 coding_system.
16248
16249 * coding.h (make_conversion_work_buffer): Delete extern.
16250 (code_conversion_save): Extern it.
16251
16252 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
16253 (CODING_GET_INFO): Delete argument eol_type. Change callers.
16254 (decode_coding_utf_8): Don't do eol converion.
16255 (detect_coding_utf_16): Check coding->src_chars, not
16256 coding->src_bytes. Add heuristics for those that have no signature.
16257 (decode_coding_emacs_mule, decode_coding_iso_2022)
16258 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
16259 Don't do eol converion.
16260 (adjust_coding_eol_type): Return a new coding system.
16261 (detect_coding): Don't detect eol. Fix for utf-16 detection.
16262 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
16263 each change.
16264 (decode_coding): Pay attention to undo_list. Do eol conversion for
16265 all types of coding-systems (if necessary).
16266 (Vcode_conversion_work_buf_list): Delete it.
16267 (Vcode_conversion_reused_workbuf): Rename from
16268 Vcode_conversion_reused_work_buf.
16269 (Vcode_conversion_workbuf_name): New variable.
16270 (reused_workbuf_in_use): New variable.
16271 (make_conversion_work_buffer): Delete the arg DEPTH.
16272 (code_conversion_restore): Change argument to cons.
16273 (code_conversion_save): Delete the argument BUFFER. Change callers.
16274 (detect_coding_system): New argument src_chars. Change callers.
16275 Fix for utf-16 detection.
16276 (init_coding_once): Don't use ISO_carriage_return.
16277 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
16278 reused_workbuf_in_use.
16279
162802008-02-01 Kenichi Handa <handa@m17n.org>
16281
16282 * keymap.c (store_in_keymap): Pay attention to the case that idx
16283 is a cons specifying a character range.
16284
162852008-02-01 Kenichi Handa <handa@m17n.org>
16286
16287 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
16288 HANDLED_RECOMPUTE_PROPS.
16289
16290 * coding.c (Fdefine_coding_system_internal): Fix checking of
16291 ascii compatibility.
16292
162932008-02-01 Kenichi Handa <handa@m17n.org>
16294
16295 * charset.c (find_charsets_in_text): Delete unused locale variable.
16296 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
16297
16298 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
16299 Resync charset_list to Vemacs_mule_charset_list.
16300
16301 * keymap.c (store_in_keymap): Pay attention to the case that idx
16302 is a cons specifying a character range.
16303
163042008-02-01 Kenichi Handa <handa@m17n.org>
16305
16306 * composite.c (update_compositions): Bind inhibit-read-only, etc
16307 to t before calling remove-list-of-text-properties.
16308
16309 * print.c (print_object): Always print ASCII chars as is.
16310
163112008-02-01 Kenichi Handa <handa@m17n.org>
16312
16313 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
16314
16315 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
16316 is a char table.
16317
163182008-02-01 Kenichi Handa <handa@m17n.org>
16319
16320 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
16321
163222008-02-01 Kenichi Handa <handa@m17n.org>
16323
16324 * xfaces.c (set_lface_from_font_name): Fix for the case that
16325 FONTNAME is not fontset name.
16326
163272008-02-01 Kenichi Handa <handa@m17n.org>
16328
16329 * fns.c (base64_encode_1): Fix previous change.
16330
163312008-02-01 Kenichi Handa <handa@m17n.org>
16332
16333 * fontset.c (set_fontset_font): New function.
16334 (Fset_fontset_font): If a font is specified for a charset, use
16335 map_charset_chars to store the font spec in a fontset.
16336
163372008-02-01 Kenichi Handa <handa@m17n.org>
16338
16339 * fontset.c (fontset_face): Create a fallback fontset on demand.
16340 (make_fontset): Don't create a fallback fontset here.
16341 (free_face_fontset): Free a fallback fontset (if any) too.
16342 (n_auto_fontsets): Delete this variable.
16343 (auto_fontset_alist): New variable.
16344 (new_fontset_from_font_name): Check auto_fontset_alist.
16345 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
16346 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
16347 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
16348 Defsubr Sfontset_list_all.
16349
163502008-02-01 Kenichi Handa <handa@m17n.org>
16351
16352 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
16353
163542008-02-01 Kenichi Handa <handa@m17n.org>
16355
16356 * fontset.c (Fnew_fontset): Check NAME more rigidly.
16357
163582008-02-01 Kenichi Handa <handa@m17n.org>
16359
16360 * editfns.c (Fgoto_char): Fix docstring.
16361
163622008-02-01 Kenichi Handa <handa@m17n.org>
16363
16364 * insdel.c (insert_from_gap): Adjust intervals correctly.
16365
163662008-02-01 Jason Rumney <jasonr@gnu.org>
16367
16368 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
16369 (pfnGetFontUnicodeRanges): New dynamically loaded function.
16370 (w32_initialize): Try to load it.
16371 (x_get_font_repertory): Use it if available.
16372 (w32_encode_char): Add shortcut for unicode output.
16373
16374 * w32fns.c (w32_load_system_font): Default charset to -1.
16375 (x_to_w32_charset): Match all fonts for unicode.
16376 (w32_to_x_charset): New parameter matching. Don't return partial
16377 or wildcard charsets.
16378 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
16379 (w32_codepage_for_font): Return CP_UNICODE for unicode.
16380 (w32_to_x_font): Match charset to real charset.
16381 (enum_font_cb2): Always list unicode versions.
16382
16383 * makefile.w32-in (temacs): Increase EMHEAP.
16384
163852008-02-01 Jason Rumney <jasonr@gnu.org>
16386
16387 * w32term.c (w32_encode_char): New charset parameter.
16388 font_info.encoding becomes encoding_type.
16389 (x_get_font_repertory): New function. Warning: stub only!
16390 (x_new_font): Return quickly if font already set.
16391 (x_new_fontset): fontsetname parameter is Lisp_Object.
16392 Use new fs_query_fontset. Try new_fontset_from_font_name.
16393 Use fontset_name for return value.
16394
16395 * w32term.h: Declare x_get_font_repertory.
16396
16397 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
16398 place of find_charset_in_text. Use encode_coding_object in place
16399 of encode_coding.
16400 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
16401 decode_coding.
16402
16403 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
16404 of x_new_fontset.
16405 (w32_load_system_font): Initialize charset as unicode.
16406 font_info.encoding becomes encoding_type.
16407 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
16408 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
16409 (syms_of_w32fns): Set get_font_repertory_func.
16410
16411 * w32console.c: Include character.h. Use terminal_encode_buffer
16412 from term.c.
16413 (write_glyphs): Use new version of encode_terminal_code. Use
16414 encode_coding_object in place of encode_coding.
16415
16416 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
16417 encoding becomes encoding_type.
16418
16419 * term.c (terminal_encode_buffer): Make externally visible.
16420
16421 * makefile.w32-in: Add character.h dependancies.
16422 (character.o, chartab.o): New targets.
16423
164242008-02-01 Kenichi Handa <handa@m17n.org>
16425
16426 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
16427 CODING_ID_EOL_TYPE.
16428
164292008-02-01 Andreas Schwab <schwab@suse.de>
16430
16431 * coding.c (produce_chars): Revert last change.
16432
164332008-02-01 Kenichi Handa <handa@m17n.org>
16434
16435 * charset.h (charset_unicode): Extern it.
16436
16437 * charset.c (string_xstring_p): Check by (C >= 0x100).
16438 (find_charsets_in_text): Change format of the arc CHARSETS. New
16439 arg MULTIBYTE.
16440 (Ffind_charset_region, Ffind_charset_string): Adjust for the
16441 change of find_charsets_in_text.
16442 (Fsplit_char): Fix doc. Never return unknown.
16443
16444 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
16445
16446 * coding.c (Fdefine_coding_system_alias): Update
16447 Vcoding_system_list.
16448
16449 * fontset.c (load_font_get_repertory): Pay attention to the case
16450 that ENCODING of a font is specified by a char-table.
16451
16452 * xterm.c (x_get_font_repertory): Handle the case that the
16453 encoding of font is other than Unicode.
16454
164552008-02-01 Kenichi Handa <handa@m17n.org>
16456
16457 * term.c (encode_terminal_code): Don't handle glyph-table. Check
16458 if a character is encodable by the terminal coding system. If
16459 not, produces proper number of `?'s. Update
16460 terminal_encode_buffer and terminal_encode_buf_size if necessary.
16461 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
16462
164632008-02-01 Kenichi Handa <handa@m17n.org>
16464
16465 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
16466 variables.
16467 (encode_terminal_code): Change argument. Encode multiple
16468 characters at once. Store the result of encoding in
16469 terminal_encode_buffer.
16470 (write_glyphs, insert_glyphs): Adjust for the change of
16471 encode_terminal_code.
16472 (term_init): Initialize terminal_encode_buffer and
16473 terminal_encode_buf_size.
16474
16475 * coding.c (consume_chars): If coding->src_object is nil, don't
16476 check annotation.
16477
164782008-02-01 Kenichi Handa <handa@m17n.org>
16479
16480 * character.c (char_string): Use ASCII_CHAR_P instead of
16481 SINGLE_BYTE_CHAR_P.
16482
164832008-02-01 Kenichi Handa <handa@m17n.org>
16484
16485 * xdisp.c (handle_auto_composed_prop): Check if the last
16486 characters of auto-composed region is newly composed with the
16487 following characters.
16488 (handle_composition_prop): Fix checking of point being inside
16489 composition.
16490
164912008-02-01 Kenichi Handa <handa@m17n.org>
16492
16493 * fns.c (concat): Don't change multibyteness of the result by
16494 concatenating an 8-bit character.
16495
16496 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
16497 multibyteness of the result when newelt is an 8-bit character.
16498
164992008-02-01 Dave Love <fx@gnu.org>
16500
16501 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
16502 EMACS_INT.
16503
16504 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
16505
16506 * xfaces.c (face_numeric_value): Declare dim size_t.
16507 (Finternal_lisp_face_equal_p): Remove unused f.
16508
16509 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
16510 (MATRIX_ROW): Remove unused vars.
16511 (draw_glyphs, x_insert_glyphs, fast_find_position)
16512 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
16513 byte/char counts.
16514
16515 * regex.c (regex_compile): Remove unused var.
16516
16517 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16518
16519 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
16520 (Faccessible_keymaps, where_is_internal): Remove unused vars.
16521
16522 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
16523
16524 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
16525
16526 * fileio.c (Fwrite_region): Remove unused var.
16527
16528 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
16529 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
16530
16531 * composite.c (Fremove_list_of_text_properties): Declare.
16532
16533 * coding.c (inhibit_pre_post_conversion): Remove (unused).
16534 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
16535 (coding_inherit_eol_type): Remove unused attrs.
16536 (detect_coding): Cast arg of detect_eol.
16537
16538 * charset.c (syms_of_charset): Remove unused var p.
16539 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
16540 byte/char counts.
16541
16542 * casetab.c (set_case_table): Remove unused var.
16543
16544 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
16545 unused vars.
16546
165472008-02-01 Dave Love <fx@gnu.org>
16548
16549 * xterm.c (x_bitmap_mask): Declare.
16550
165512008-02-01 Dave Love <fx@gnu.org>
16552
16553 * xterm.c (x_term_init): Fix type error.
16554
16555 * lisp.h: Add Funibyte_char_to_multibyte.
16556
16557 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
16558 (Fset_coding_system_priority): Doc fix.
16559
16560 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
16561
16562 * indent.c (check_composition): Make start and end EMACS_INT.
16563
16564 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
16565
16566 * xdisp.c (handle_composition_prop, check_point_in_composition):
16567 Make buffer positions EMACS_INT.
16568
16569 * composite.c (find_composition, run_composition_function)
16570 (update_compositions, Ffind_composition_internal): Make buffer
16571 positions EMACS_INT.
16572
16573 * composite.h (find_composition, update_compositions): Make
16574 position args EMACS_INT.
16575
16576 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
16577
16578 * intervals.c (get_property_and_range):
16579 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
16580
16581 * unexalpha.c: Don't include varargs.h.
16582
165832008-02-01 Dave Love <fx@gnu.org>
16584
16585 * coding.h (ENCODE_UTF_8): New.
16586
16587 * Makefile.in (gtkutil.o): Depend on coding.h.
16588
16589 * coding.c (Fset_coding_system_priority): Doc fix.
16590
165912008-02-01 Kenichi Handa <handa@m17n.org>
16592
16593 * fileio.c (Finsert_file_contents): Call setup_coding_system in
16594 the case of auto saving.
16595
165962008-02-01 Andreas Schwab <schwab@suse.de>
16597
16598 * chartab.c (map_char_table, map_char_table_for_charset): Protect
16599 `range' from GC.
16600
166012008-02-01 Kenichi Handa <handa@m17n.org>
16602
16603 * coding.c (decode_coding_sjis): Check bytes more rigidly.
16604
166052008-02-01 Kenichi Handa <handa@m17n.org>
16606
16607 * fileio.c (choose_write_coding_system): Return a decided coding system.
16608 (Fwrite_region): Set Vlast_coding_system_used to the return value
16609 of choose_write_coding_system.
16610
166112008-02-01 Kenichi Handa <handa@m17n.org>
16612
16613 * charset.c (Fset_charset_priority): Pay attention to duplicated
16614 arguments.
16615
16616 * coding.c (QCcategory): New variable.
16617 (syms_of_coding): Defsym it. Set all elements of
16618 Vcoding_category_table and their symbol values.
16619 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
16620 coding-category-XXX, and coding-category-list.
16621 (Fdefine_coding_system_internal): Add category in the plist.
16622
166232008-02-01 Kenichi Handa <handa@m17n.org>
16624
16625 * callproc.c (Fcall_process): Handle carryover correctly.
16626
16627 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
16628 (raw_text_coding_system): Check NILP (coding_system).
16629 (coding_inherit_eol_type): Check NILP (coding_system) and
16630 NILP (parent).
16631 (consume_chars): Fix for the case of raw-text.
16632
16633 * process.c (read_process_output): Handle carryover correctly.
16634
166352008-02-01 Dave Love <fx@gnu.org>
16636
16637 * regex.c (re_search_2): Fix last change.
16638
166392008-02-01 Kenichi Handa <handa@m17n.org>
16640
16641 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
16642 target_multibyte. Even in a unibyte case, return a converted
16643 multibyte char.
16644 (GET_CHAR_AFTER): New macro.
16645 (PATFETCH): Translate via multibyte char.
16646 (HANDLE_UNIBYTE_RANGE): Delete this macro.
16647 (SETUP_MULTIBYTE_RANGE): New macro.
16648 (regex_compile): Setup compiled code so that its multibyteness
16649 matches that of a target. Fix the handling of "[X-YZ]" using
16650 SETUP_MULTIBYTE_RANGE.
16651 (analyse_first) <charset>: For filling fastmap for all multibyte
16652 characters, don't check by BASE_LEADING_CODE_P.
16653 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
16654 the same as RE_MULTIBYTE_P (bufp) now.
16655 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
16656 (TARGET_CHAR_AND_LENGTH): Delete this macro.
16657 (TRANSLATE_VIA_MULTIBYTE): New macro.
16658 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
16659 It is the same as RE_MULTIBYTE_P (bufp) now.
16660 <exactn>: Translate via multibyte.
16661 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
16662 translate it.
16663 <charset, charset_not>: Fetch a character by
16664 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
16665 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
16666 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
16667 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
16668 by GET_CHAR_AFTER.
16669 (bcmp_translate): Likewise.
16670
16671 * search.c (compile_pattern): Check the member target_multibyte,
16672 not the member multibyte of buf.
16673
16674 * lread.c (read1): While reading a string, set force_singlebyte
16675 and force_multibyte correctly.
16676
16677 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
16678 up of unibyte_to_multibyte_table.
16679
166802008-02-01 Kenichi Handa <handa@m17n.org>
16681
16682 * coding.c (setup_coding_system): If coding has
16683 post-read-conversion or pre-write-conversion, set
16684 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
16685 respectively.
16686 (decode_coding_gap): Run post-read-conversion if any.
16687
16688 * fileio.c (Finsert_file_contents): Even if we read into a
16689 unibyte buffer, check if we must decode the result or not.
16690
166912008-02-01 Kenichi Handa <handa@m17n.org>
16692
16693 * coding.c (make_conversion_work_buffer): Change the work buffer
16694 name to the same one as that of Emacs 21.
16695
166962008-02-01 Kenichi Handa <handa@m17n.org>
16697
16698 * coding.h (make_conversion_work_buffer): Adjust prototype.
16699 (code_conversion_restore): Don't extern it.
16700
16701 * coding.c (detected_mask): Delete unused variable.
16702 (decode_coding_iso_2022): Pay attention to the byte sequence of
16703 CTEXT extended segment, and retain those bytes as is.
16704 (decode_coding_ccl): Delete unused variable `valids'.
16705 (setup_coding_system): Delete unused variable `category'.
16706 (consume_chars): Delete unused variable `category'. Make it work
16707 for non-multibyte case.
16708 (make_conversion_work_buffer): Change argument.
16709 (saved_coding): Delete unused variable.
16710 (code_conversion_restore): Don't check saved_coding->destination.
16711 (code_conversion_save): New function.
16712 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
16713 instead of record_unwind_protect.
16714 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
16715 (detect_coding_system): Delete unused variable `mask'.
16716 (Fdefine_coding_system_internal): Delete unused variable id.
16717
16718 * fileio.c (kill_workbuf_unwind): New function.
16719 (Finsert_file_contents): On replacing, call
16720 make_conversion_work_buffer with correct args, and call
16721 record_unwind_protect with the first arg kill_workbuf_unwind.
16722
16723 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
16724
167252008-02-01 Kenichi Handa <handa@m17n.org>
16726
16727 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
16728 (fontset_add): Fix for the case that TO is less than TO1.
16729 (Ffontset_info): Don't use fallback fontset on checking the
16730 default fontset.
16731 (dump_fontset): New function for debugging.
16732
16733 * coding.c (Fdefine_coding_system_internal): Fix for the case that
16734 coding_type is Qcharset.
16735
167362008-02-01 Kenichi Handa <handa@m17n.org>
16737
16738 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
16739 (map_char_table): Don't inherit the value from the parent on
16740 initializing VAL. Adjust for the above change.
16741
167422008-02-01 Kenichi Handa <handa@m17n.org>
16743
16744 * coding.c (Qsignature, Qendian): Delete these variables.
16745 (syms_of_coding): Don't initialize them.
16746 (CATEGORY_MASK_UTF_16_AUTO): New macro.
16747 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
16748 detect_info->found.
16749 (decode_coding_utf_16): Don't detect BOM here.
16750 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
16751 is NOT utf_16_without_bom.
16752 (setup_coding_system): For a coding system of type utf-16, check
16753 if the attribute :endian is Qbig or not (not nil or not), and set
16754 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
16755 (detect_coding): If coding type is utf-16 and BOM detection is
16756 required, detect it.
16757 (Fdefine_coding_system_internal): For a coding system of type
16758 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
16759
167602008-02-01 Kenichi Handa <handa@m17n.org>
16761
16762 * coding.c (coding_set_source): Fix for the case that the current
16763 buffer is different from coding->src_object.
16764 (decode_coding_object): Don't use the conversion work buffer if
16765 DST_OBJECT is a buffer.
16766
167672008-02-01 Dave Love <fx@gnu.org>
16768
16769 * lread.c (read_emacs_mule_char) [len==2]: Index
16770 emacs_mule_charset correctly.
16771
167722008-02-01 Dave Love <fx@gnu.org>
16773
16774 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
16775 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
16776 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
16777 treated specially.)
16778 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
16779 (detected_mask): Remove Big5 bits.
16780
167812008-02-01 Kenichi Handa <handa@m17n.org>
16782
16783 The following changes are to make the font rescaling facility
16784 compatible with Emacs 21.
16785
16786 * xfaces.c (Vface_font_rescale_alist): Rename from
16787 Vface_resizing_fonts.
16788 (struct font_name): Rename member resizing_ratio to rescale_ratio.
16789 (font_rescale_ratio): Rename from font_resizing_ratio.
16790 (split_font_name): Set font->rescale_ratio.
16791 (better_font_p): Pay attention to font->rescale_ratio.
16792 (build_scalable_font_name): Likewise. Change RESX, and RESY
16793 fields.
16794 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
16795
167962008-02-01 Kenichi Handa <handa@m17n.org>
16797
16798 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
16799 (Qutf_16_le): Remove these variables.
16800 (syms_of_coding): Don't DEFSYM them.
16801 (decode_coding_utf_16): Fix handling of BOM.
16802 (encode_coding_utf_16): Fix handling of BOM.
16803
168042008-02-01 Kenichi Handa <handa@m17n.org>
16805
16806 * fileio.c (Finsert_file_contents): On replacing, before decoding
16807 the file into the work buffer, set point of the work buffer to the end.
16808
168092008-02-01 Dave Love <fx@gnu.org>
16810
16811 * coding.c (Fcheck_coding_systems_region): Fix type errors.
16812
168132008-02-01 Dave Love <fx@gnu.org>
16814
16815 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
16816 and fix C types.
16817
168182008-02-01 Kenichi Handa <handa@m17n.org>
16819
16820 * xdisp.c (SKIP_GLYPHS): New macro.
16821 (set_cursor_from_row): Pay attention to string display properties.
16822
16823 * category.c (copy_category_entry): Fix for the case that RANGE
16824 is an integer.
16825
16826 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
16827
16828 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
16829
168302008-02-01 Kenichi Handa <handa@m17n.org>
16831
16832 * charset.c (Fcharset_id_internal): New function.
16833 (syms_of_charset): Defsubr it.
16834
16835 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
16836 with the last arg charset_list acquired from coding.
16837 (Fdefine_coding_system_internal): For ccl-based coding system, fix
16838 the attribute coding_attr_ccl_valids.
16839
16840 * coding.h (enum define_coding_ccl_arg_index): Set the first
16841 member coding_arg_ccl_decoder to coding_arg_max.
16842
16843 * ccl.h (ccl_driver): Adjust prototype.
16844
16845 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
16846 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 16847 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
16848 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
16849 last arg Qnil.
16850
168512008-02-01 Kenichi Handa <handa@m17n.org>
16852
16853 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
16854 call encode_char.
16855
16856 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
16857
168582008-02-01 Dave Love <fx@gnu.org>
16859
16860 * composite.c (syms_of_composite): Make composition_hash_table weak.
16861
168622008-02-01 Kenichi Handa <handa@m17n.org>
16863
16864 * dispextern.h (check_face_attributes, generate_ascii_font_name)
16865 (font_name_registry): Don't extern them.
16866 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
16867
16868 * fontset.h (Qfontset): Don't extern it.
16869 (new_fontset_from_font_name): Extern it.
16870
16871 * fontset.c: Give 8 extra slots to fontset objects.
16872 (Qfontset_info): New variable.
16873 (syms_of_fontset): Defsym it.
16874 (FONTSET_FALLBACK): New macro.
16875 (fontset_face): Try also the default fontset.
16876 (make_fontset): Realize a fallback fontset from the default fontset.
16877 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
16878 using split_font_name_into_vector and build_font_name_from_vector.
16879 (Fset_fontset_font): Access the elements of font_spec by enum
16880 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
16881 name by using split_font_name_into_vector.
16882 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
16883 generate a proper font name from the fontset name. Update
16884 Vfontset_alias_alist.
16885 (n_auto_fontsets): New variable.
16886 (new_fontset_from_font_name): New function.
16887 (Ffont_info): Store the information about fonts generated from the
16888 default fontset in the first extra slot of the returned char-table.
16889
16890 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
16891 (font_name_registry): Delete function.
16892 (split_font_name_into_vector): New function.
16893 (build_font_name_from_vector): New function.
16894 (font_list): The argument REGISTRY is now a list of registry names.
16895 (choose_face_font): If we are choosing an ASCII font, and ATTRS
16896 specifies an explicit font name, return the name as is. Make a
16897 list of registy names.
16898
16899 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
16900 of x_new_fontset.
16901 (Fx_create_frame): Don't call x_new_fontset here. Just use
16902 x_list_fonts to check the existence of fonts.
16903
16904 * xterm.h (x_new_fontset): Adjust prototype.
16905
16906 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
16907 string. Use new_fontset_from_font_name to create a fontset from a
16908 font name.
16909
169102008-02-01 Kenichi Handa <handa@m17n.org>
16911
16912 * syntax.c (Vfind_word_boundary_function_table): New name for
16913 Vnext_word_boundary_function_table.
16914 (find-word-boundary-function-table): New name for
16915 next-word-boundary-function-table.
16916
169172008-02-01 Dave Love <fx@gnu.org>
16918
16919 * Makefile.in: Fix some dependencies.
16920
16921 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
16922 set it to nil before returning.
16923
16924 * composite.c (update_compositions): Fix type error.
16925
16926 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
16927
169282008-02-01 Kenichi Handa <handa@m17n.org>
16929
16930 * xterm.c (x_new_font): Optimize for the case that the font is
16931 already set for the frame.
16932
169332008-02-01 Kenichi Handa <handa@m17n.org>
16934
16935 * chartab.c (char_table_ascii): Check if the char table contents
16936 is sub-char-table or not.
16937 (char_table_set, char_table_set_range): Fix argument to
16938 char_table_ascii.
16939
16940 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
16941 (detect_coding_utf_8, detect_coding_utf_16)
16942 (detect_coding_emacs_mule, detect_coding_iso_2022)
16943 (detect_coding_sjis, detect_coding_big5)
16944 (detect_coding_ccl, detect_coding_charset): Change argument MASK
16945 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
16946 sequence is valid in this coding system. Change callers.
16947 (MAX_ANNOTATION_LENGTH): New macro.
16948 (ADD_ANNOTATION_DATA): New macro.
16949 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
16950 ADD_ANNOTATION_DATA. Change the format of annotation data.
16951 (ADD_CHARSET_DATA): New macro.
16952 (emacs_mule_char): New argument ID. Change callers.
16953 (decode_coding_emacs_mule, decode_coding_iso_2022)
16954 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
16955 Produce charset annotation data in coding->charbuf.
16956 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
16957 to charset annotation data in coding->charbuf.
16958 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
16959 coding->common_flags if the coding system is iso-2022 based and
16960 uses designation.
16961 (produce_composition): Adjust for the new annotation data format.
16962 (produce_charset): New function.
16963 (produce_annotation): Handle charset annotation.
16964 (handle_composition_annotation, handle_charset_annotation): New
16965 functions.
16966 (consume_chars): Handle charset annotation. Utilize the above two
16967 functions.
16968 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
16969 buffer, get the deleted text as a string and set
16970 coding->src_object to that string.
16971 (detect_coding, detect_coding_system): Use the new struct
16972 coding_detection_info.
16973
16974 * coding.h (struct coding_detection_info): New structure.
16975 (struct coding_system): Adjust prototype of the member `detector'.
16976 (CODING_ANNOTATE_CHARSET_MASK): New macro.
16977
169782008-02-01 Kenichi Handa <handa@m17n.org>
16979
16980 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
16981
169822008-02-01 Dave Love <fx@gnu.org>
16983
16984 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
16985 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
16986 to new local and nullify apropos_accumulate before returning.
16987 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
16988
169892008-02-01 Kenichi Handa <handa@m17n.org>
16990
16991 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
16992 correctly.
e3eea1fc 16993
aac0c6e3
MR
169942008-02-01 Dave Love <fx@gnu.org>
16995
16996 * fns.c (Flanginfo): Call synchronize_system_time_locale.
16997
169982008-02-01 Kenichi Handa <handa@m17n.org>
16999
17000 The following changes are to make character composition happen
17001 automatically on displaying.
17002
17003 * Makefile.in (lisp, shortlisp): Add composite.elc.
17004
17005 * composite.h (Qauto_composed, Vauto_composition_function)
17006 (Qauto_composition_function): Extern them.
17007
17008 * composite.c (Vcomposition_function_table)
17009 (Qcomposition_function_table): Delete variables.
17010 (Qauto_composed, Vauto_composition_function)
17011 (Qauto_composition_function): New variables.
17012 (run_composition_function): Don't call
17013 compose-chars-after-function.
17014 (update_compositions): Clear `auto-composed' text property.
17015 (compose_chars_in_text): Delete this function.
17016 (syms_of_composite): Staticpro Qauto_composed and
17017 Qauto_composition_function. Declare Vauto_composition_function as
17018 a Lisp variable.
17019
17020 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
17021
17022 * xdisp.c (it_props): Add an entry for Qauto_composed.
17023 (handle_auto_composed_prop): New function.
17024
17025 * xselect.c (selection_data_to_lisp_data): Don't call
17026 compose_chars_in_text.
17027
170282008-02-01 Dave Love <fx@gnu.org>
17029
17030 * keyboard.c (read_char): Modify checking around use of
17031 Vkeyboard_translate_table.
17032
17033 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17034 and fix C types.
17035
170362008-02-01 Kenichi Handa <handa@m17n.org>
17037
17038 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
17039 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17040 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
17041 the case that the last byte is '\r' correctly.
17042 (decode_coding): Flush out the unprocessed data correctly.
17043 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
17044
170452008-02-01 Dave Love <fx@gnu.org>
17046
17047 * xterm.c (XTread_socket): Fix changes for defined keysyms.
17048 Add XK_ISO... case.
17049 (xaw_scroll_callback): Revert last change.
17050
170512008-02-01 Kenichi Handa <handa@m17n.org>
17052
17053 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
17054
170552008-02-01 Kenichi Handa <handa@m17n.org>
17056
17057 * xfaces.c (Vface_resizing_fonts): New variable.
17058 (struct font_name): New member `resizing_ratio'.
17059 (font_resizing_ratio): New function.
17060 (split_font_name): Set font->resizing_ratio.
17061 (better_font_p): Pay attention to font->resizing_ratio.
17062 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
17063 RESX, and RESY fields.
17064 (try_alternative_families): Try scalable fonts if
17065 Vscalable_fonts_allowed is not Qt.
17066 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
17067
170682008-02-01 Dave Love <fx@gnu.org>
17069
17070 * xterm.c (xaw_scroll_callback): Cast correctly.
17071
170722008-02-01 Dave Love <fx@gnu.org>
17073
17074 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
17075 (lispy_kana_keys): Comment out.
17076 (make_lispy_event) [XK_kana_A]: Comment out.
17077
17078 * xterm.c (xaw_scroll_callback): Cast call_data.
17079 (XTread_socket): Deal with ASCII keysyms.
17080 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
17081
170822008-02-01 Dave Love <fx@gnu.org>
17083
17084 * xterm.c (Vx_keysym_table): New.
17085 (syms_of_xterm): Initialize it.
17086 (XTread_socket): Use it.
17087 From head: Eliminate incorrect optimization that tried to avoid
17088 decoding the output of X*LookupString.
17089 (x_get_font_repertory): Delete charset declaration.
17090
170912008-02-01 Kenichi Handa <handa@m17n.org>
17092
17093 * coding.c (detect_coding_charset): If only ASCII bytes are found,
17094 return 0.
17095 (Fdefine_coding_system_internal): Setup
17096 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
17097
170982008-02-01 Dave Love <fx@gnu.org>
17099
17100 * coding.c (Fcheck_coding_system): Doc fix.
17101
17102 * editfns.c (Finsert_byte): Return a proper value.
17103
171042008-02-01 Kenichi Handa <handa@m17n.org>
17105
17106 * coding.c (decode_coding): Fix args to translate_chars. Pay
17107 attention to Vstandard_translation_table_for_decode.
17108 (encode_coding): Fix args to translate_chars. Pay attention to
17109 Vstandard_translation_table_for_encode.
17110
17111 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
17112 SINGLE_BYTE_CHAR_P.
17113
17114 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
17115 not by SINGLE_BYTE_CHAR_P.
17116
17117 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
17118 SINGLE_BYTE_CHAR_P.
17119
17120 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
17121 SINGLE_BYTE_CHAR_P.
17122
17123 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
17124 by SINGLE_BYTE_CHAR_P.
17125
17126 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
17127 SINGLE_BYTE_CHAR_P.
17128
171292008-02-01 Dave Love <fx@gnu.org>
17130
17131 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
17132
171332008-02-01 Dave Love <fx@gnu.org>
17134
17135 * fns.c (Flanginfo): Fix typo.
17136
17137 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
17138
171392008-02-01 Kenichi Handa <handa@m17n.org>
17140
17141 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
17142 (detect_coding_emacs_mule, detect_coding_iso_2022)
17143 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
17144 incomplete byte sequence. Don't update *mask when correctly detected.
17145 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
17146 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
17147 (detect_coding, detect_coding_system): Adjust for the changes above.
17148
171492008-02-01 Kenichi Handa <handa@m17n.org>
17150
17151 * character.c (char_string): Rename from
17152 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
17153 (string_char): Rename from string_char.
17154
17155 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
17156 if C is greater than MAX_3_BYTE_CHAR.
17157 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
17158 string_char instead of string_char_with_unification.
17159
171602008-02-01 Dave Love <fx@gnu.org>
17161
17162 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
17163
171642008-02-01 Kenichi Handa <handa@m17n.org>
17165
17166 * keymap.c (push_key_description): Pay attention to force_multibyte.
17167
17168 * regex.c (re_search_2): Fix for the case of unibyte buffer.
17169
171702008-02-01 Dave Love <fx@gnu.org>
17171
17172 * charset.c (define_charset_internal): Rename `supprementary'.
17173
17174 * Makefile.in (lisp, shortlisp): Remove latin-N.
17175
171762008-02-01 Dave Love <fx@gnu.org>
17177
17178 * xfns.c (x_window, x_window): Use use_xim.
17179
17180 * xterm.c (use_xim): Initialize.
17181 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
17182 (x_term_init): Maybe set use_xim.
17183
17184 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
17185
171862008-02-01 Kenichi Handa <handa@m17n.org>
17187
17188 * search.c (search_buffer): Fix case-fold-search of multibyte
17189 characters.
17190 (boyer_moore): Rename the last argument to char_high_bits.
17191
171922008-02-01 Kenichi Handa <handa@m17n.org>
17193
17194 * xdisp.c (display_string): Fix for the case of zero width glyph.
17195
17196 * xfns.c (x_set_font): Change the error message of the case that
17197 x_new_fontset returns Qt.
17198
17199 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
17200 (Finternal_set_lisp_face_attribute): Use signal_error for the
17201 error of invalid fontset.
17202
17203 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
17204 fontset, return Qt.
17205
172062008-02-01 Dave Love <fx@gnu.org>
17207
17208 * unexelf.c (unexec): Make .got handling not SGI-specific.
17209
17210 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
17211
17212 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
17213
17214 * keyboard.c (read_key_sequence): Fix type error.
17215
17216 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
17217 type error.
17218
17219 * fontset.c (fontset_add): Return Lisp_Object.
17220
172212008-02-01 Dave Love <fx@gnu.org>
17222
17223 * charset.h (charset_ordered_list_tick): Declare extern.
17224
172252008-02-01 Kenichi Handa <handa@m17n.org>
17226
17227 The following changes (and some of 2008-02-01 changes of mine) are
17228 for handling syntax, category, and case conversion for unibyte
17229 characters by converting them to multibyte on the fly. With these
17230 changes, we don't have to setup syntax and case tables for unibyte
17231 characters in each language environment.
17232
17233 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
17234 multibyte if necessary.
17235
17236 * bytecode.c (Fbyte_code): Likewise.
17237
17238 * character.h (LEADING_CODE_LATIN_1_MIN)
17239 (LEADING_CODE_LATIN_1_MAX): New macros.
17240 (unibyte_to_multibyte_table): Extern it.
17241 (unibyte_char_to_multibyte): New macro.
17242 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
17243 (CHAR_LEADING_CODE): New macro.
17244 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
17245
17246 * character.c (unibyte_to_multibyte_table): New variable.
17247 (unibyte_char_to_multibyte): Move to character.h and define as macro.
17248 (multibyte_char_to_unibyte): If C is an eight-bit character,
17249 convert it to the corresponding byte value.
17250
17251 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
17252 not 1, signals an error. Update the elements of
17253 unibyte_to_multibyte_table.
17254 (init_charset_once): Initialize unibyte_to_multibyte_table.
17255 (syms_of_charset): Define the charset `iso-8859-1'.
17256
17257 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
17258 as is without converting it to unibyte. In a unibyte buffer,
17259 convert C to multibyte before checking the syntax.
17260
17261 * lisp.h (unibyte_char_to_multibyte): Delete extern.
17262
17263 * minibuf.c (Fminibuffer_complete_word): Use the macro
17264 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
17265
17266 * regex.h (struct re_pattern_buffer): New member target_multibyte.
17267
17268 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
17269 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
17270 that is zero, convert an eight-bit char to multibyte.
17271 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
17272 non-emacs case.
17273 (PATFETCH): Convert an eight-bit char to multibyte.
17274 (HANDLE_UNIBYTE_RANGE): New macro.
17275 (regex_compile): Setup the compiled pattern for multibyte chars
17276 even if the given regex string is unibyte. Use PATFETCH_RAW
17277 instead of PATFETCH in many places. To handle `charset'
17278 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
17279 only for ASCII chars.
17280 (analyse_first) <exactn>: Simplify because the compiled pattern
17281 is multibyte.
17282 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
17283 <charset>: Use CHAR_LEADING_CODE to get leading codes.
17284 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
17285 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
17286 multibyte always 1.
17287 (re_search_2): In emacs, set the locale variable multibyte to 1,
17288 otherwise to 0. New local variable target_multibyte. Check it
17289 to decide the multibyteness of STR1 and STR2. If
17290 target_multibyte is zero, convert unibyte chars to multibyte
17291 before translating and checking fastmap.
17292 (TARGET_CHAR_AND_LENGTH): New macro.
17293 (re_match_2_internal): In emacs, set the locale variable multibyte
17294 to 1, otherwise to 0. New local variable target_multibyte. Check
17295 it to decide the multibyteness of STR1 and STR2. Use
17296 TARGET_CHAR_AND_LENGTH to fetch a character from D.
17297 <charset, charset_not>: If multibyte is nonzero, check fastmap
17298 only for ASCII chars. Call bcmp_translate with
17299 target_multibyte, not with multibyte.
17300 <begline>: Declare the local variable C as `unsigned'.
17301 (bcmp_translate): Change the last arg name to target_multibyte.
17302
17303 * search.c (compile_pattern_1): Don't adjust the multibyteness of
17304 the regexp pattern and the matching target. Set cp->buf.multibyte
17305 to the multibyteness of the regexp pattern. Set
17306 cp->but.target_multibyte to the multibyteness of the matching target.
17307 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
17308 FETCH_STRING_CHAR_ADVANCE.
17309 (Freplace_match): Convert unibyte chars to multibyte.
17310
17311 * syntax.c (char_quoted, back_comment, scan_words)
17312 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
17313 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
17314 unibyte chars to multibyte.
17315 (skip_chars): Delete the arg syntaxp, and move the code for
17316 handling syntaxes to skip_syntaxes. Change callers.
17317 Fix the case that the multibyteness of STRING and the current
17318 buffer doesn't match.
17319 (skip_syntaxes): New function.
17320 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
17321 SINGLE_BYTE_CHAR_P.
17322
173232008-02-01 Kenichi Handa <handa@m17n.org>
17324
17325 * xfaces.c (QCfontset): New variable.
17326 (LFACE_FONTSET): New macro.
17327 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
17328 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
17329 (Finternal_set_lisp_face_attribute)
17330 (Finternal_get_lisp_face_attribute): Handle QCfontset.
17331 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
17332 check also LFACE_FONTSET_INDEX.
17333 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
17334 attrs[LFACE_FONT_INDEX].
17335 (syms_of_xfaces): Intern and staticpro QCfontset.
17336
17337 * dispextern.h (enum lface_attribute_index): New member
17338 LFACE_FONTSET_INDEX.
17339
17340 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
17341
173422008-02-01 Kenichi Handa <handa@m17n.org>
17343
17344 * coding.c (coding_set_destination): Fix coding->destination for
17345 the case converting a region.
17346 (encode_coding_utf_8): Encode eight-bit chars as single byte.
17347 (encode_coding_object): Fix coding->dst_pos and
17348 coding->dst_pos_byte for the case converting a region.
17349
17350 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
17351
17352 * character.h (BYTE8_STRING): New macro.
17353
17354 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
17355
173562008-02-01 Kenichi Handa <handa@m17n.org>
17357
17358 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
17359 characters by octal form.
17360
17361 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
17362
17363 * buffer.h (_fetch_multibyte_char_len): Delete extern.
17364 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
17365 _fetch_multibyte_char_len.
17366 (FETCH_CHAR_AS_MULTIBYTE): New macro.
17367
17368 * casetab.c (set_canon, set_identity, shuffle): Simplify.
17369
17370 * casefiddle.c (casify_object): Simplify. Handle the case that
17371 the case conversion change the byte length.
17372 (casify_region): Likewise.
17373
17374 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
17375
17376 * character.c (_fetch_multibyte_char_len): Delete this variable.
17377 (syms_of_character): Setup Vprintable_chars.
17378
17379 * editfns.c (Fchar_equal): Fix for the unibyte case.
17380 (Finsert_byte): New function.
17381 (syms_of_editfns): Defsubr it.
17382
17383 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
17384 of direct code 0x3ffff.
17385
17386 * search.c (Freplace_match): Fix for the unibyte case.
17387
173882008-02-01 Kenichi Handa <handa@m17n.org>
17389
17390 * lread.c (safe_to_load_p): Fix the logic.
17391
17392 * syntax.c (scan_words): Don't treat characters belonging to
17393 different scripts as constituting a word.
17394
17395 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
17396
17397 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
17398
17399 * emacs.c (main): In the case of --unibyte, instead of aborting on
17400 finding non-empty buffer, make it unibyte.
17401
174022008-02-01 Kenichi Handa <handa@m17n.org>
17403
17404 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
17405 to create a fontset.
17406
174072008-02-01 Dave Love <fx@gnu.org>
17408
17409 * character.c (Funibyte_char_to_multibyte): Doc fix.
17410
17411 * xfns.c [HAVE_STDLIB_H]: Fix last change.
17412
174132008-02-01 Kenichi Handa <handa@m17n.org>
17414
17415 * fontset.c (fontset_add): Make the type `int'.
17416 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
17417
17418 * character.c (unibyte_char_to_multibyte)
17419 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
17420 charset_unibyte, not charset_primary.
17421
17422 * charset.h (charset_unibyte): Extern it instead of charset_primary.
17423
17424 * charset.c (charset_unibyte): Rename from charset_primary.
17425 (Funibyte_charset): Rename from Fprimary_charset.
17426 (Fset_unibyte_charset): Rename from Fset_primary_charset.
17427 (syms_of_charset): Adjust for the above changes.
17428
17429 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
17430 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
17431 it->multibyte_p is zero.
17432
17433 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
17434 Delete extern.
17435
174362008-02-01 Kenichi Handa <handa@m17n.org>
17437
17438 * coding.c (Fdefine_coding_system_internal): Fix category setting
17439 for a coding system of type iso-2022.
17440
174412008-02-01 Kenichi Handa <handa@m17n.org>
17442
17443 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
17444
174452008-02-01 Kenichi Handa <handa@m17n.org>
17446
17447 * syntax.c (Vnext_word_boundary_function_table): New variable.
17448 (next-word-boundary-function-table): Declare it as a Lisp variable
17449 in syms_of_syntax.
17450 (scan_words): Call functions in Vnext_word_boundary_function_table
17451 if any.
17452
17453 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
17454
17455 * fontset.c (fs_load_font): If fontp->charset is not negative,
17456 return fontp without setting its members.
17457
174582008-02-01 Dave Love <fx@gnu.org>
17459
17460 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
17461
17462 * m/sparc.h (HAVE_ALLOCA): Delete.
17463
17464 * s/irix6-5.h: Don't include strings.h.
17465 (bcopy, bzero, bcmp): Don't undef.
17466
17467 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
17468
17469 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
17470 (TIOCSIGSEND): Don't test IRIX6.
17471 (bcopy, bzero, bcmp): Define conditionally.
17472
174732008-02-01 Kenichi Handa <handa@m17n.org>
17474
17475 * buffer.c (Qas, Qmake, Qto): New variables.
17476 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
17477 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
17478
17479 * callproc.c (Fcall_process): Don't call insert_1_both directly if
17480 we are inserting a process output into a multibyte buffer.
17481
17482 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
17483 multibyte_char_to_unibyte.
17484
17485 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
17486 by the primary charset, make it eight-bit char.
17487 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
17488
17489 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
17490 (charset_8_bit__control, charset_8_bit_graphic)
17491 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
17492 (define_charset_internal): New function.
17493 (syms_of_charset): Call define_charset_internal for pre-defined
17494 charsets.
17495
17496 * charset.h (charset_8_bit): Extern it.
17497
17498 * coding.c (make_conversion_work_buffer): Adjust for the change
17499 of Fset_buffer_multibyte.
17500 (encode_coding_raw_text): Increment p0 in the loop.
17501
17502 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
17503
17504 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
17505 for the change of Fset_buffer_multibyte.
17506
17507 * fns.c (Fstring_to_multibyte): New function.
17508 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
17509
175102008-02-01 Dave Love <fx@gnu.org>
17511
17512 * xfns.c (x_put_x_image): Declare args.
17513
17514 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
17515 (try_font_list): Declare an arg.
17516
17517 * xdisp.c (message2_nolog, set_message): Declare an arg.
17518
17519 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
17520
17521 * syntax.c (scan_sexps_forward): Declare an arg.
17522
17523 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
17524 Declare an arg.
17525
17526 * lisp.h (Fnew_fontset): Declare.
17527
17528 * keymap.c (push_key_description): Call CHARACTERP correctly.
17529
17530 * fontset.c (fontset_add): Declare args. Call make_number correctly.
17531 (face_for_char): Delete unused vars.
17532 (Fset_fontset_font): Doc fix. Delete unused vars.
17533
17534 * doc.c (Fsubstitute_command_keys): Delete unused vars.
17535
17536 * composite.c (update_compositions): Declare arg.
17537
17538 * cm.c (calccost, cmgoto): Declare args.
17539
17540 * charset.c: Remove `emacs' conditional. Doc fixes.
17541 (map_char_table_for_charset): Declare.
17542
17543 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
17544
17545 * ccl.c: Remove `emacs' conditional.
17546
175472008-02-01 Kenichi Handa <handa@m17n.org>
17548
17549 The following changes are to allow specifying multiple font
17550 patterns for a character range (specified by script or charset).
17551
17552 * Makefile.in (abbrev.o): Depend on syntax.h.
17553 (xfaces.o): Depend on charset.h.
17554
17555 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
17556 SINGLE_BYTE_CHAR_P.
17557
17558 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
17559
17560 * character.h (Vchar_script_table): Extern it.
17561
17562 * character.c (Vscript_alist): Delete.
17563 (Vchar_script_table, Qchar_script_table): New variable.
17564 (syms_of_character): Declare Vchar_script_table as a lisp variable
17565 and initialize it.
17566
17567 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
17568 have property char-table-extra-slots, make no extra slot.
17569
17570 * dispextern.h (struct face): Delete member `charset'.
17571 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
17572 SINGLE_BYTE_CHAR_P.
17573 (choose_face_font, lookup_non_ascii_face, font_name_registry):
17574 Add prototypes.
17575 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
17576 (generate_ascii_font_name): Rename from generate_ascii_font.
17577
17578 * fontset.h (get_font_repertory_func): New prototype.
17579 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
17580 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
17581
17582 * fontset.c (Qprepend, Qappend): New variables.
17583 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
17584 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
17585 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
17586 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
17587 (fontset_ref_and_range, fontset_add, reorder_font_vector)
17588 (load_font_get_repertory): New functions.
17589 (fontset_set): Delete.
17590 (fontset_face): New arg FACE. Return face ID, not face.
17591 Complete re-write to handle new fontset structure. Change caller.
17592 (free_face_fontset): Use ASET istead of AREF (X) = Y.
17593 (face_for_char): Don't call lookup_face.
17594 (make_fontset_for_ascii_face): New arg FACE.
17595 (fs_load_font): New arg CHARSET_ID. Don't check
17596 Vfont_encoding_alist here.
17597 (find_font_encoding): New function.
17598 (list_fontsets): Use STRINGP, not ! NILP.
17599 (accumulate_script_ranges): New function.
17600 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
17601 re-written to handle new fontset structure.
17602 (Ffontset_font): Return a copy of element.
17603 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
17604 docstring of font-encoding-alist.
17605
17606 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
17607 (Fset_fotset_font): Fix arguments to 5.
17608
17609 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
17610
17611 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
17612 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
17613 (highlight_trailing_whitespace): Adjust for the change of
17614 lookup_named_face.
17615
17616 * xfaces.c: Include charset.h.
17617 (load_face_font): Delete argument C. Change caller.
17618 (generate_ascii_font_name): Rename from generate_ascii_font.
17619 (font_name_registry): New function.
17620 (cache_face): Store ascii faces before non-ascii faces in buckets.
17621 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
17622 Lookup only ascii faces.
17623 (lookup_non_ascii_face): New function.
17624 (lookup_named_face): Delete argument C. Change caller.
17625 (lookup_derived_face): Delete argument C. Change caller.
17626 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
17627 a string, just call font_list with it.
17628 (choose_face_font): Delete arguments FACE and C. New arg
17629 FONT_SPEC. Change caller.
17630 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
17631 Change caller.
17632 (realize_non_ascii_face): New function.
17633 (realize_x_face): Call load_face_font here.
17634 (realize_tty_face): Delete argument C. Change caller.
17635 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
17636 get a face ID.
17637 (dump_realized_face): Don't print charset of FACE.
17638
17639 * xfns.c (x_set_font): Always call x_new_fontset and
17640 store_frame_parameter.
17641 (Fx_create_frame): Call x_new_fontset, not x_new_font.
17642 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
17643
17644 * xterm.h (x_get_font_repertory): Extern it.
17645
17646 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
17647 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
17648 it->multibyte_p is zero.
17649 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
17650 (x_new_fontset): If FONTSETNAME doesn't match any existing
17651 fontsets, create a new one.
17652 (x_get_font_repertory): New function.
17653
176542008-02-01 Kenichi Handa <handa@m17n.org>
17655
17656 * coding.c (Ffind_coding_systems_region_internal): Detect an
17657 ASCII only string correctly.
17658
17659 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
17660 version is 0.
17661
176622008-02-01 Kenichi Handa <handa@m17n.org>
17663
17664 * lread.c: Include "coding.h".
17665 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
17666 (load_each_byte, unread_char): New variables.
17667 (readchar_backlog): Delete.
17668 (readchar): Return a character unless load_each_byte is nonzero.
17669 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
17670 cons. If unread_char is not -1, simply return it.
17671 (unreadchar): Handle the case that readcharfun is
17672 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
17673 (read_multibyte): Delete.
17674 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
17675 (read_emacs_mule_char): New functions.
17676 (Fload): Even if the file doesn't have the extension ".elc", if
17677 safe_to_load_p returns a positive version number, assume that the
17678 file contains bytecompiled code. If the version is less than 22,
17679 load the file while decoding multibyte sequences by emacs-mule.
17680 (readevalloop): Don't use readchar_backlog.
17681 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
17682 (Fread_from_string): Pay attention to the case that STREAM is a cons.
17683 (read_escape): Delete the arg BYTEREP.
17684 (read1): Set load_each_byte to 1 temporarily while handling
17685 #@NUMBER. Don't call read_multibyte.
17686 (read_vector): Call Fread with a cons. If readcharfun is
17687 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
17688 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
17689 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
17690 and Qload_force_doc_strings.
17691
176922008-02-01 Kenichi Handa <handa@m17n.org>
17693
17694 * xdisp.c (face_before_or_after_it_pos): Call
17695 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
17696
176972008-02-01 Kenichi Handa <handa@m17n.org>
17698
17699 * character.h (TRAILING_CODE_P): New macro.
17700 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
17701 (string_char_with_unification): Fix prototype.
17702 (Vscript_alist): Extern it.
17703
17704 * character.c (Vscript_alist): New variable.
17705 (string_char_with_unification, str_as_unibyte)
17706 (string_escape_byte8): Add `const' to local variables.
17707 (syms_of_character): Declare script-alist as a Lisp variable.
17708
17709 * charset.h (Vcharset_ordered_list): Extern it.
17710 (charset_ordered_list_tick): Extern it.
17711 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
17712 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
17713 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
17714 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
17715 (Funify_charset): Adjust for the change of Funify_charset.
17716
17717 * charset.c (charset_ordered_list_tick): New variable.
17718 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
17719 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
17720 deunify intead of unify a charset.
17721 (string_xstring_p): Add `const' to local variables.
17722 (find_charsets_in_text): Add `const' to arguments and local variables.
17723 (encode_char): Adjust for the change of Funify_charset. Fix
17724 detecting of invalid code.
17725 (Fset_charset_priority): Increment charset_ordered_list_tick.
17726 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
17727 and TO_CODE.
17728
17729 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
17730 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
17731 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
17732 (decode_coding_ccl, consume_chars)
17733 (Ffind_coding_systems_region_internal)
17734 (Fcheck_coding_systems_region): Add `const' to local variables.
17735
17736 * print.c (print_object): Use octal form for printing the
17737 contents of a bool vector.
17738
177392008-02-01 Dave Love <fx@gnu.org>
17740
17741 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
17742 <version == 20>: Refuse to load.
17743
177442008-02-01 Dave Love <fx@gnu.org>
17745
17746 * fns.c: Move coding.h.
17747 (Qcodeset, Qdays, Qmonths): New.
17748 (concat): Use CHARACTERP instead of INTEGERP.
17749 (Flocale_codeset): Delete.
17750 (Flanginfo): New function.
17751 (syms_of_fns): Change accordingly.
17752
17753 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
17754
177552008-02-01 Dave Love <fx@gnu.org>
17756
17757 * casetab.c (init_casetab_once, init_casetab_once): Fix
17758 CHAR_TABLE_SET call.
17759
17760 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
17761
17762 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
17763
17764 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
17765 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
17766 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
17767
17768 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
17769
17770 * coding.c (ENCODE_DESIGNATION, decode_eol)
17771 (make_conversion_work_buffer, code_conversion_restore)
17772 (Fdefine_coding_system_internal): Convert Lisp types.
17773 (code_conversion_restore): Use EQ, not ==.
17774 (Fencode_coding_string): Fix code_convert_string call.
17775
17776 * coding.h (code_convert_region): Fix prototype.
17777
17778 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
17779
17780 * fontset.c (fontset_ref, fontset_set, fs_load_font)
17781 (Ffontset_info): Convert Lisp types.
17782
17783 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
17784
17785 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
17786
17787 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
17788
17789 * chartab.c: Include "...h", not <...h> in some cases.
17790
17791 * callproc.c (Fcall_process): Remove unused variables.
17792
177932008-02-01 Dave Love <fx@gnu.org>
17794
17795 * coding.c (Fset_coding_system_priority): Allow null arg list.
17796
177972008-02-01 Dave Love <fx@gnu.org>
17798
17799 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
17800 (Fself_insert_and_exit): Use CHARACTERP.
17801
17802 * callproc.c (Fcall_process): Remove unused vars.
17803
17804 * xterm.c (XTread_socket): Add extra dead keysyms.
17805
17806 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
17807
17808 * dispextern.h: Remove prototypes for redraw_frame,
17809 redraw_garbaged_frames.
17810
17811 * cmds.c (Fself_insert_command): Use CHARACTERP.
17812
17813 * chartab.c (make_sub_char_table): Remove unused var.
17814 (Fset_char_table_default, Fmap_char_table): Doc fix.
17815
17816 * keymap.c (access_keymap): Remove generic char code.
17817 (push_key_description): Use CHARACTERP.
17818
178192008-02-01 Dave Love <fx@gnu.org>
17820
17821 * charset.c: Doc fixes.
17822 (Funify_charset): Extra checking.
17823
178242008-02-01 Dave Love <fx@gnu.org>
17825
17826 * lread.c: Remove some unused variables.
17827 (safe_to_load_p): If safe, return the magic number version byte.
17828 (Fload): Maybe use load-with-code-conversion.
17829
178302008-02-01 Kenichi Handa <handa@m17n.org>
17831
17832 * category.c (Fmodify_category_entry): Don't modify the contents
17833 of category_set for characters out of the range. Avoid
17834 unnecessary modification.
17835
17836 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
17837 Vchar_unify_table. The default value of the table is now nil.
17838
17839 * character.c (syms_of_character): Setup Vchar_width_table for
17840 eight-bit-control and raw-byte chars.
17841
17842 * charset.h (enum define_charset_arg_index): Delete
17843 charset_arg_parents and add charset_arg_subset and
17844 charset_arg_superset.
17845 (enum charset_attr_index): Delete charset_parents and add
17846 charset_subset and charset_superset.
17847 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
17848 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
17849 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
17850 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
17851 (CHARSET_SUPERSET): New macros.
17852 (charset_work): Extern it.
17853 (ENCODE_CHAR): Use charset_work.
17854 (CHAR_CHARSET_P): Adjust for the change of encoder format.
17855 (map_charset_chars): Extern it.
17856
17857 * charset.c (load_charset_map): Set the default value of encoder
17858 and deunifier char-tables to nil.
17859 (map_charset_chars): Change argument. Change callers. Use
17860 map_char_table_for_charset instead of map_char_table.
17861 (Fmap_charset_chars): New optional args from_code and to_code.
17862 (Fdefine_charset_internal): Adjust for the change of
17863 `define-charset' (:parents -> :subset or :superset).
17864 (charset_work): New variable.
17865 (encode_char, syms_of_charset): Adjust for the change of
17866 Fdefine_charset_internal.
17867 (Ffind_charset_string): Setup the vector `charsets' correctly.
17868
17869 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
17870 the previous change.
17871 (char_table_ref_and_range): Adjust for the above change.
17872 (map_sub_char_table_for_charset): New function.
17873 (map_char_table_for_charset): New function.
17874
17875 * keymap.c (describe_vector): Handle a char-table directly here.
17876 (describe_char_table): Delete.
17877
17878 * lisp.h (map_charset_chars): Delete.
17879
178802008-02-01 Dave Love <fx@gnu.org>
17881
17882 * fns.c (count_combining): Comment out (unused).
17883 (Flocale_codeset): New.
17884 (syms_of_fns): Defsubr it.
17885
17886 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
17887 (size_t): Remove.
17888
178892008-02-01 Dave Love <fx@gnu.org>
17890
17891 * Makefile.in (chartab.o): Depend on charset.h.
17892
178932008-02-01 Kenichi Handa <handa@m17n.org>
17894
17895 * character.c (syms_of_character): Set the default value of
17896 Vprintable_chars to Qnil.
17897
178982008-02-01 Dave Love <fx@gnu.org>
17899
17900 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
17901
179022008-02-01 Kenichi Handa <handa@m17n.org>
17903
17904 * charset.c (load_charset_map): Handle the case that from < to
17905 correctly.
17906
17907 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
17908 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
17909 Pay attention to raw-8-bit chars.
17910
179112008-02-01 Kenichi Handa <handa@m17n.org>
17912
17913 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
17914 It is not bytecompiled now.
17915
17916 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
17917 (charset_jisx0208): New variables.
17918 (Fdefine_charset_internal): Setup them if appropriate.
17919 (init_charset_once): Initialize them to -1.
17920
17921 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
17922 (charset_jisx0208): Extern them.
17923
17924 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
17925 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
17926 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
17927 (setup_iso_safe_charsets): Fix arguments to Fassq.
17928 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
17929 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
17930 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
17931 (encode_coding_iso_2022): Change the 1st arg to
17932 ENCODE_ISO_CHARACTER to a variable.
17933
179342008-02-01 Kenichi Handa <handa@m17n.org>
17935
17936 * charset.h (enum define_charset_arg_index): New enums
17937 charset_arg_min_code and charset_arg_max_code.
17938 (struct charset): New member char_index_offset.
17939
17940 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
17941 Take charset->char_index_offset into account.
17942 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
17943 args[charset_arg_max_code]. Setup charset.char_index_offset.
17944 (syms_of_charset): Fix args to Fdefine_charset_internal.
17945
179462008-02-01 Dave Love <fx@gnu.org>
17947
17948 * coding.c (decode_coding_utf_8): Reject overlong sequences.
17949
179502008-02-01 Dave Love <fx@gnu.org>
17951
17952 * coding.c: Doc fixes.
17953 (Fcoding_system_aliases): Fix return value.
17954 (Qmac): Remove (duplicated) definition.
17955
179562008-02-01 Dave Love <fx@gnu.org>
17957
362654a6
JB
17958 * charset.c (Fcharset_priority_list, Fset_charset_priority):
17959 New functions.
aac0c6e3
MR
17960
17961 * character.c (Fstring): Doc fix.
17962
17963 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
17964
362654a6 17965 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
17966 (font-encoding-alist): Doc fix.
17967
179682008-02-01 Dave Love <fx@gnu.org>
17969
17970 * term.c (costs_set): Declare static, non-initialized for pcc.
17971 (encode_terminal_code): Remove unused var.
17972
17973 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
17974 for K&R.
17975
17976 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
17977
17978 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
17979 (suffixes): Move out of make_subsidiaries for K&R.
17980
17981 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
17982
17983 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
17984
179852008-02-01 Dave Love <fx@gnu.org>
17986
17987 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
17988
17989 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
17990
179912008-02-01 Yong Lu <lyongu@asia-infonet.com>
17992
17993 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
17994
17995 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
17996
179972008-02-01 Kenichi Handa <handa@m17n.org>
17998
17999 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
18000 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
18001
180022008-02-01 Kenichi Handa <handa@m17n.org>
18003
18004 * coding.c (decode_coding_charset): Adjust for the change of
18005 Fdefine_coding_system_internal.
18006 (Fdefine_coding_system_internal): For a coding system of
18007 `charset' type, store a list of charset IDs in
18008 `charset_attr_charset_valids' element of coding attributes.
18009
180102008-02-01 Kenichi Handa <handa@m17n.org>
18011
18012 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
18013 (emacs_mule_char): New arg src. Delete arg `composition'. Change
18014 caller. Handle 2-byte and 3-byte charsets correctly.
18015 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
18016 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
18017 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
18018 (DECODE_EMACS_MULE_21_COMPOSITION): Call
18019 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
18020 sequence.
18021 (decode_coding_emacs_mule): Handle composition correctly. Rewind
18022 `src' and `consumed_chars' correctly before calling emacs_mule_char.
18023 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
18024 and alt&rule composition.
18025 (decode_coding_iso_2022): Handle composition correctly.
18026 (init_coding_once): Setup emacs_mule_bytes for private charsets.
18027
18028 * charset.c (Fdefine_charset_internal): Fix bug for the case of
18029 re-defining a charset. If the charset has :emacs-mule-id, setup
18030 emacs_mule_bytes.
18031 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
18032
180332008-02-01 Kenichi Handa <handa@m17n.org>
18034
18035 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
18036 (encode_coding_big5, encode_coding_charset): If coding requires safe
18037 encoding, produce a character specified by
18038 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
18039
180402008-02-01 Dave Love <fx@gnu.org>
18041
18042 * xterm.c (XSetIMValues): Declare.
18043
18044 * process.c: Conditionally include sys/wait.h, pty.h.
18045
18046 * print.c (print_object): Fix print format for 64-bit systems.
18047
18048 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
18049
18050 * buffer.c (emacs_strerror): Declare.
18051
18052 * fontset.c (Fclear_face_cache): Declare.
18053 (accumulate_font_info): Comment-out (unused).
18054 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
18055 variables.
18056
18057 * character.h (string_escape_byte8): Declare.
18058
18059 * charset.c (load_charset_map, load_charset_map_from_file): Remove
18060 unused vars.
18061 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
18062 (Fmap_charset_chars): Doc fix.
18063
18064 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
18065 (Fset_coding_system_priority, Fset_coding_system_priority)
18066 (Fdefine_coding_system_internal): Doc fix.
18067
180682008-02-01 Dave Love <fx@gnu.org>
18069
18070 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
18071
180722008-02-01 Kenichi Handa <handa@m17n.org>
18073
18074 * character.c (string_escape_byte8): Make multibyte string with
18075 correct size.
18076
18077 * charset.c (Fmake_char): Delete unnecessary code.
18078
180792008-02-01 Kenichi Handa <handa@m17n.org>
18080
18081 * xfns.c (x_encode_text): Allocate coding.destination here, and
18082 call encode_coding_object with dst_object Qnil.
18083
18084 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
18085 multibyte form correctly.
18086
18087 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
18088 against Vfont_encoding_alist.
18089
18090 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
18091 handling of charset list.
18092 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
18093 (decode_coding_object): Move point to coding->dst_pos before
18094 calling post-read-conversion function.
18095 (encode_coding_object): Give correct arguments to
18096 pre-write-conversion. Ignore the return value of
18097 pre-write-conversion function. Pay attention to the case that
18098 pre-write-conversion changes the current buffer. If dst_object is
18099 Qt, even if coding->src_bytes is zero, allocate at least one byte
18100 to coding->destination.
18101
18102 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
18103
18104 * charset.c (Fmake_char): Make it more backward compatible.
18105 (Fmap_charset_chars): Fix docstring.
18106
181072008-02-01 Dave Love <fx@gnu.org>
18108
18109 * coding.c: Doc fixes.
18110 (Fdefine_coding_system_alias): Use names, not symbols, in
18111 coding-system-alist.
18112
181132008-02-01 Kenichi Handa <handa@m17n.org>
18114
18115 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
18116 of calling free_realized_face.
18117
181182008-02-01 Yong Lu <lyongu@asia-infonet.com>
18119
18120 * charset.c (read_hex): Don't treat SPC as a comment starter.
18121 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
18122 (Fdecode_char): Fix typo.
18123
181242008-02-01 Kenichi Handa <handa@m17n.org>
18125
18126 * charset.h (struct charset): New member `code_space_mask'.
18127
18128 * coding.c (coding_set_source): Delete the local variable beg_byte.
18129 (encode_coding_charset, Fdefine_coding_system_internal):
18130 Delete the local variable charset.
18131 (Fdefine_coding_system_internal): Setup
18132 attrs[coding_attr_charset_valids] correctly.
18133
18134 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
18135 member to check if CODE is valid or not.
18136 (Fdefine_charset_internal): Initialize `code_space_mask' member.
18137 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
18138 is within the range of charset->min_code and carset->max_code.
18139
181402008-02-01 Dave Love <fx@gnu.org>
18141
18142 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
18143
18144 * dispextern.h (generate_ascii_font): Fix return type.
18145
18146 * xfaces.c (generate_ascii_font): Fix arg declaration.
18147
18148 * coding.c (coding_inherit_eol_type)
18149 (Fset_terminal_coding_system_internal)
18150 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
18151
181522008-02-01 Kenichi Handa <handa@m17n.org>
18153
18154 * coding.c (decode_coding_charset, encode_coding_charset): Handle
18155 multiple charsets correctly.
18156
181572008-02-01 Kenichi Handa <handa@m17n.org>
18158
18159 * search.c (boyer_moore): Fix handling of multibyte character
18160 translation.
18161
18162 * xdisp.c (display_mode_element): When the variable `elt' is
18163 changed, update `this' and `lisp_string'.
18164
181652008-02-01 Kenichi Handa <handa@m17n.org>
18166
18167 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
18168
18169 * callproc.c (Fcall_process): Be sure to give the current buffer
18170 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
18171
18172 * charset.c (struct charset_map_entries): New struct.
18173 (load_charset_map): Rename from parse_charset_map. New args
18174 entries and n_entries. Change caller.
18175 (load_charset_map_from_file): Rename from load_charset_map.
18176 Change caller. New arg control_flag. Call load_charset_map at
18177 the tail.
18178 (load_charset_map_from_vector): New function.
18179 (Fdefine_charset_internal): Setup charset.compact_codes_p.
18180 (encode_char): If the charset is compact, change a character index
18181 to a code point.
18182
18183 * coding.c (coding_alloc_by_making_gap): Check the case that the
18184 source and destination are the same correctly.
18185 (decode_coding_raw_text): Set coding->consumed_char and
18186 coding->consumed to 0.
18187 (produce_chars): If coding->chars_at_source is nonzero, update
18188 coding->consumed_char and coding->consumed before calling
18189 alloc_destination.
18190 (Fdefine_coding_system_alias): Register ALIAS in
18191 Vcoding_system_alist.
18192 (syms_of_coding): Define `no-conversion' coding system at the tail.
18193
18194 * fileio.c (Finsert_file_contents): Set coding_system instead of
18195 val. If the current buffer is multibyte, always call
18196 decode_coding_gap.
18197
18198 * xfaces.c (try_font_list): Give higher priority to fontset's
18199 family than face's family.
18200
182012008-02-01 Kenichi Handa <handa@m17n.org>
18202
18203 * callproc.c (Fcall_process): Be sure to give the current buffer
18204 to decode_coding_c_string.
18205
18206 * xfaces.c (try_font_list): Give a family specified in a fontset
18207 higher priority than a family specified in a face.
18208
182092008-02-01 Kenichi Handa <handa@m17n.org>
18210
18211 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
18212 Fix arguments to insert_from_buffer.
18213
18214 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
18215
182162008-02-01 Kenichi Handa <handa@m17n.org>
18217
18218 * coding.c (produce_chars): Set the variable `multibytep' correctly.
18219 (decode_coding_gap): Set coding->dst_multibyte correctly.
18220
182212008-02-01 Kenichi Handa <handa@m17n.org>
18222
18223 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
18224 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
18225 (encode_coding_utf_16): Substitute coding->default_char for
18226 non-Unicode characters.
18227 (decode_coding): Don't call record_insert here.
18228 (setup_coding_system): Initialize `surrogate' of
18229 coding->spec.utf_16 to 0.
18230 (EMIT_ONE_BYTE): Fix for multibyte case.
18231
18232 * insdel.c (insert_from_gap): Call record_insert.
18233
182342008-02-01 Kenichi Handa <handa@m17n.org>
18235
18236 * casefiddle.c (casify_region): Fix multibyte case.
18237
18238 * character.c (c_string_width): Add return type `int'.
18239 (char_string_with_unification): Delete arg ADVANCED.
18240
18241 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
18242 (CHAR_STRING): Adjust for the change of char_string_with_unification.
18243 (CHAR_STRING_ADVANCE): Make it do-while statement.
18244
18245 * chartab.c (sub_char_table_set_range): Optimize for the case
18246 DEPTH == 3. Add workaround code for a GCC optimization bug.
18247
18248 * charset.c (parse_charset_map): Remove an unused variable.
18249
18250 * coding.c: Delete unused variables.
18251
18252 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
18253 earlier. If inserted is zero and the coding system doesn't
18254 require flushing, don't call decode_coding_gap.
18255
18256 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
18257
182582008-02-01 Kenichi Handa <handa@m17n.org>
18259
18260 The following changes are for using Unicode as an internal
18261 character model, and use UTF-8 format for buffer/string
18262 representation.
18263
18264 * .gdbinit (xchartable): Adjust for the change of char table structure.
18265 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
18266
18267 * Makefile.in (obj): Add character.o and chartab.o.
18268 (lisp, shortlisp): Remove utf-8.elc.
18269 (*.o): For many files, change dependency on charset.h to
18270 character.h, and add dependency on character.h.
18271 (character.o, chartab.o): New targets.
18272
18273 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
18274 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
18275 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
18276 of "charset.h".
18277
18278 * dired.c, filelock.c: Include "character.h".
18279
18280 * alloc.c: Include "character.h" instead of "charset.h".
18281 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
18282 (syms_of_alloc): Remove defsubr for Smake_char_table.
18283
18284 * buffer.c: Include "character.h" instead of "charset.h", don't
18285 include "coding.h".
18286 (Fset_buffer_multibyte): Adjust for UTF-8.
18287
18288 * buffer.h: EXFUN Fbuffer_live_p.
18289
18290 * callproc.c: Include "character.h" instead of "charset.h".
18291 (Fcall_process): Big change for the new code-conversion APIs.
18292
18293 * casetab.c: Include "character.h" instead of "charset.h".
18294 (set_canon, set_identity, shuffle): Adjust for the new
18295 map_char_table spec.
18296 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
18297 accessing the char table structure.
18298
18299 * chartab.c: New file that implements char table.
18300
18301 * category.c: Include "character.h".
18302 (copy_category_entry): New function.
18303 (copy_category_table): Call map_char_table and copy_category_entry.
18304 (Fmake_category_table): Initialize all top-level slots.
18305 (char_category_set): New function.
18306 (modify_lower_category_set): Delete.
18307 (Fmodify_category_entry): Call char_table_ref_and_range.
18308
18309 * category.h (CATEGORY_SET): Just call char_category_set.
18310
18311 * ccl.c: Include "character.h".
18312 (Qccl, Qcclp): New variables.
18313 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
18314 it's less than 256.
18315 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
18316 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
18317 and DST type.
18318 (ccl_driver): Change types of argument, adjust code accordingly.
18319 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
18320 ccl_driver.
18321 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
18322
18323 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
18324 New members src_multibyte, dst_multibyte, consumed, and produced.
18325 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
18326 (CODING_SPEC_CCL_PROGRAM): New macro.
18327 (ccl_driver): Update prototype.
18328 (Qccl, Qcclp, Fccl_program_p): Extern them.
18329 (CHECK_CCL_PROGRAM): New macro.
18330
18331 * character.c, character.h, chartab.c: New files.
18332
18333 * charset.c: Mostly re-written. Move character and multibyte sequence
18334 handling codes to character.c.
18335
18336 * charset.h: Mostly re-written. Move character and multibyte sequence
18337 handling codes to character.h.
18338
18339 * coding.c, coding.h: Mostly re-written.
18340
18341 * composite.c: Include "character.h" instead of "charset.h".
18342 (CHAR_WIDTH): Move to character.h.
18343 (HASH_KEY, HASH_VALUE): Delete.
18344
18345 * composite.h (enum composition_method): Change order of enumeration
18346 symbols.
18347
18348 * data.c: Include "character.h" instead of "charset.h".
18349 (Faref): Call CHAR_TABLE_REF for a char table.
18350 (Faset): Call CHAR_TABLE_SET for a char table.
18351
18352 * dispextern.h (free_realized_face, check_face_attribytes)
18353 (generate_ascii_font): Extern them.
18354 (free_realized_multibyte_face): Delete extern.
18355
18356 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
18357 table structure.
18358
18359 * editfns.c: Include "character.h" instead of "charset.h".
18360 (Fchar_to_string): Always call CHAR_STRING.
18361
18362 * emacs.c (main): Call init_charset_once, init_charset,
18363 syms_of_chartab, and syms_of_character.
18364
18365 * fileio.c: Include "character.h" instead of "charset.h".
18366 (Finsert_file_contents): Big change for the new code-conversion API.
18367 (choose_write_coding_system, Fwrite_region): Likewise.
18368 (build_annotations_2): Delete.
18369 (e_write): Big change for the new code-conversion API.
18370
18371 * fns.c: Include "character.h" instead of "charset.h".
18372 (copy_sub_char_table): Move to chartab.c.
18373 (Fcopy_sequence): Call copy_char_table for a char table.
18374 (concat): Delete codes calling count_multibyte.
18375 (string_char_to_byte, string_byte_to_char): Adjust for the new
18376 multibyte form.
18377 (internal_equal): Adjust for the change of char table structure.
18378 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
18379 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
18380 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
18381 (char_table_translate, optimize_sub_char_table)
18382 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
18383 chartab.c.
18384 (char_table_ref_and_index): Delete.
18385 (HASH_KEY, HASH_VALUE): Move to lisp.h.
18386 (Fmd5): Call preferred_coding_system instead of accessing
18387 Vcoding_category_list. Adjust for the new code-conversion API.
18388 (syms_of_fns): Move defsubr for char table related functions to
18389 chartab.c.
18390
18391 * fontset.c: Mostly re-written.
18392
18393 * fontset.h (struct font_info): Change type of the member encoding_type.
18394 (enum FONT_SPEC_INDEX): New enum.
18395 (fontset_font_pattern, fs_load_font): Update prototype.
18396 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
18397
18398 * indent.c: Include "character.h" instead of "charset.h".
18399 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
18400
18401 * insdel.c: Include "character.h" instead of "charset.h".
18402 (copy_text): Don't refer to Vnonascii_translation_table.
18403 (insert_from_gap): New function.
18404
18405 * keyboard.c: Include "character.h" instead of "charset.h".
18406 (command_loop_1): Never call direct_output_forward_char before
18407 a non-ASCII character.
18408 (read_char): If Vkeyboard_translate_table is a char table, always
18409 translate a character.
18410
18411 * keymap.c: Include "character.h".
18412 (store_in_keymap): Handle the case that IDX is a cons.
18413 (Fdefine_key): Handle the case that KEY is a cons and the car part
18414 is also a cons (range).
18415 (push_key_description): Adjust for the new character code.
18416 (describe_vector): Call describe_char_table for a char table.
18417 (describe_char_table): New function.
18418
18419 * keymap.h (describe_char_table): Extern it.
18420
18421 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
18422 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
18423 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
18424 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
18425 Delete.
18426 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
18427 structure.
18428 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
18429 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
18430 (CHARTAB_SIZE_BITS_3): New macros.
18431 (chartab_size): Extern it.
18432 (struct Lisp_Char_Table): Re-design.
18433 (struct Lisp_Sub_Char_Table): New structure.
18434 (HASH_KEY, HASH_VALUE): Move from fns.c.
18435 (CHARACTERBITS): Define as 22.
18436 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
18437 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
18438 (GC_SUB_CHAR_TABLE_P): New macro.
18439 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
18440 (code_convert_string_norecord): Deleted extern.
18441 (init_character_once, syms_of_character, init_charset)
18442 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
18443
18444 * lread.c: Include "character.h".
18445 (read_multibyte): New arg NBYTES.
18446 (read_escape): Change the meaning of returned *BYTEREP.
18447 (to_multibyte): Delete.
18448 (read1): Adjust the handling of char table and string.
18449
18450 * print.c: Include "character.h" instead of "charset.h".
18451 (print_string): Convert 8-bit raw bytes to octal form by
18452 string_escape_byte8.
18453 (print_object): Adjust for the new multibyte form. Print 8-bit
18454 raw bytes always in octal form. Handle sub char table correctly.
18455
18456 * process.c: Include "character.h" instead of "charset.h".
18457 (read_process_output, send_process): Adjust for the new
18458 code-conversion API.
18459
18460 * puresize.h (BASE_PURESIZE): Increase.
18461
18462 * regex.c: Include "character.h" instead of "charset.h".
18463 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
18464 (regex_compile): Accept a range whose starting and ending
18465 character have different leading bytes.
18466 (analyse_first): Adjust for the above change.
18467
18468 * search.c: Include "character.h" instead of "charset.h".
18469 (search_buffer, boyer_moore): Adjust for the new multibyte form.
18470 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
18471
18472 * syntax.c: Include "character.h" instead of "charset.h".
18473 (syntax_parent_lookup): Delete.
18474 (Fmodify_syntax_entry): Accept a cons as CHAR.
18475 (skip_chars): Adjust for the new multibyte form.
18476 (init_syntax_once): Call char_table_set_range instead of directly
18477 accessing the structure of a char table.
18478
18479 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
18480 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
18481 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
18482 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
18483
18484 * term.c: Include "buffer.h" and "character.h".
18485 (encode_terminal_code, write_glyphs): Adjust for the new
18486 code-conversion API.
18487 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
18488
18489 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
18490
18491 * xdisp.c: Include "character.h".
18492 (get_next_display_element): Adjust for the new multibyte form.
18493 (disp_char_vector): Adjust for the new char table structure.
18494 (decode_mode_spec_coding): Adjust for the new structure of
18495 coding system.
18496 (decode_mode_spec): Adjust for the new code-conversion API.
18497
18498 * xfaces.c: Include "character.h" instead of "charset.h".
18499 (load_face_font): Adjust for the change of choose_face_font and
18500 FS_LOAD_FONT.
18501 (generate_ascii_font): New function.
18502 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
18503 (set_font_frame_param): Adjust for the change of choose_face_font.
18504 (free_realized_face): Make it public.
18505 (free_realized_faces_for_fontset): Rename from
18506 free_realized_multibyte_face. Free also faces realized for ASCII.
18507 (choose_face_font): Change arguments. Adjust for the change of
18508 fontset_font_pattern and FS_LOAD_FONT.
18509
18510 * xfns.c: Include "character.h".
18511 (x_encode_text): Adjust for the new code-conversion API.
18512
18513 * xselect.c: Don't include "charset.h".
18514 (selection_data_to_lisp_data): Adjust for the new code conversion API.
18515
18516 * xterm.c: Include "character.h".
18517 (x_encode_char): New argument CHARSET. Change caller.
18518 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
18519 Call ENCODE_CHAR instead of SPLIT_CHAR.
18520 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
18521 CHAR_WIDTH instead of CHARSET_WIDTH.
18522 (XTread_socket): Adjust for the new code-conversion API.
18523 (x_new_font): Adjust for the change of FS_LOAD_FONT.
18524 (x_load_font): Adjust for the change of struct font.
18525
185262008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
18527
18528 * xfaces.c (face_at_buffer_position): Remove unused vars.
18529
185302008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
18531
18532 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
18533 Fix overflow checking.
18534
185352008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
18536
18537 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
18538 Cancel previous change.
18539
185402008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
18541
18542 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
18543 ccl->eight_bit_control. Fix check for buffer overflow.
18544 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
18545 (ccl_driver): Initialize extra_bytes to 0.
18546
185472008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
18548
18549 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
18550 return it ORed with ctrl_modifier.
18551
185522008-01-29 Miles Bader <miles@gnu.org>
18553
18554 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
18555
185562008-01-28 Jason Rumney <jasonr@gnu.org>
18557
18558 * w32.c (stat): Don't double check for networked drive.
18559
185602008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
18561
18562 * window.c (run_window_configuration_change_hook): New function.
18563 Code extracted from set_window_buffer. Set the selected frame.
18564 (set_window_buffer): Use it.
18565 * window.h (run_window_configuration_change_hook): Declare.
18566 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
18567
18568 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
18569
185702008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
18571
18572 * Makefile.in: Remove references to unused macros.
18573
185742008-01-26 Eli Zaretskii <eliz@gnu.org>
18575
18576 * w32.c (g_b_init_get_sid_sub_authority)
18577 (g_b_init_get_sid_sub_authority_count): New static variables.
18578 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
18579 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
18580 (init_user_info): Use them to retrieve uid and gid.
18581 Use 500/513, the Windows defaults, as Administrator's uid/gid.
18582 (fstat): Use pw_uid and pw_gid from the_passwd structure for
18583 st_uid and st_gid of the file.
18584
185852008-01-26 Jason Rumney <jasonr@gnu.org>
18586
18587 * w32.c (logon_network_drive): New function.
18588 (stat): Use it.
18589
185902008-01-26 Chong Yidong <cyd@stupidchicken.com>
18591
18592 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
18593 invisible text covered with an ellipsis.
18594
185952008-01-25 Richard Stallman <rms@gnu.org>
18596
18597 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
18598 jump back to beginning. Move some other initializations after that.
18599 (Qwindow_text_change_functions, Vwindow_text_change_functions):
18600 New variables.
18601 (syms_of_xdisp): Init them.
18602
18603 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
18604
18605 * buffer.c (reset_buffer_local_variables):
18606 Implement `permanent-local-hook'.
18607 (Qpermanent_local_hook): New variable.
18608 (syms_of_buffer): Init and staticpro it.
18609
186102008-01-25 Michael Albinus <michael.albinus@gmx.de>
18611
18612 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
18613
186142008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
18615
18616 * fns.c (Fclrhash): Return TABLE.
18617
186182008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18619
18620 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
18621 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
18622 is set even without positional changes.
18623 (x_scroll_bar_clear): Set bar->redraw_needed_p.
18624
18625 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
18626
186272008-01-23 Jason Rumney <jasonr@gnu.org>
18628
18629 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
18630
18631 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
18632 the unicode range available in MULE by locale-coding-system.
18633 Improve dbcs lead byte detection. Set event timestamp and modifiers
18634 earlier.
18635
186362008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18637
18638 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
18639 [MAC_OSX] (init_mac_osx_environment): Initialize it.
18640 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
18641 when used on child processes.
18642
186432008-01-21 Michael Albinus <michael.albinus@gmx.de>
18644
18645 * dbusbind.c (Fdbus_method_return_internal): Rename from
18646 Fdbus_method_return.
18647 (Fdbus_unregister_object): Move to dbus.el.
18648 (Fdbus_call_method, Fdbus_method_return_internal)
18649 (Fdbus_send_signal): Improve debug messages.
18650
186512008-01-20 Martin Rudalics <rudalics@gmx.at>
18652
18653 * undo.c (undo_inhibit_record_point): New variable.
18654 (syms_of_undo): Initialize it.
18655 (record_point): Don't record point when undo_inhibit_record_point
18656 is set.
18657
186582008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
18659
18660 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
18661
18662 * xdisp.c (Qauto_hscroll_mode): New var.
18663 (syms_of_xdisp): Initialize it.
18664 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
18665 window's buffer.
18666 (hscroll_windows): Don't check automatic_hscrolling_p here.
18667
18668 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
18669 vscroll if we're setting window-buffer to the value it already has.
18670
186712008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
18672
18673 * m/intel386.h: Remove references to XENIX.
18674
186752008-01-17 Andreas Schwab <schwab@suse.de>
18676
18677 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
18678 instead of HAVE_X86_64_LIB64_DIR.
18679 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
18680
186812008-01-17 Glenn Morris <rgm@gnu.org>
18682
18683 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
18684 to HAVE_X86_64_LIB64_DIR.
18685
186862008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
18687
18688 * s/irix3-3.h:
18689 * s/irix4-0.h:
18690 * s/386-ix.h:
18691 * s/domain.h:
18692 * s/hpux9-x11r4.h:
18693 * s/hpux9shxr4.h: Remove files for systems no longer supported.
18694
18695 * sysdep.c: Remove code containing references to symbols defined
18696 by unsupported systems.
18697
186982008-01-16 Glenn Morris <rgm@gnu.org>
18699
18700 * coding.c (select-safe-coding-system-function): Doc fix.
18701
187022008-01-15 Glenn Morris <rgm@gnu.org>
18703
18704 * config.in: Revert 2008-01-13 change: this is a generated file.
18705
187062008-01-13 Tom Tromey <tromey@redhat.com>
18707
18708 * lisp.h: Fix typo.
18709
187102008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
18711
18712 * m/sequent-ptx.h:
18713 * m/sequent.h:
18714 * s/ptx.h:
18715 * s/ptx4-2.h:
18716 * s/ptx4.h: Remove files for systems no longer supported.
18717
18718 * callproc.c (Fcall_process): Fix previous change.
18719
187202008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
18721
18722 * unexsunos4.c: Remove file, system not supported anymore.
18723
18724 * m/mips.h:
18725 * m/intel386.h:
18726 * callproc.c:
18727 * config.in:
18728 * ecrt0.c:
18729 * emacs.c:
18730 * fileio.c:
18731 * frame.c:
18732 * getpagesize.h:
18733 * keyboard.c:
18734 * lread.c:
18735 * process.c:
18736 * puresize.h:
18737 * sysdep.c:
18738 * systty.h:
18739 * syswait.h:
18740 * unexec.c:
18741 * xdisp.c:
18742 * alloc.c: Remove code containing references to symbols defined by
18743 unsupported systems.
18744
187452008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
18746
18747 * coding.c (detect_coding_mask): Fix previous change.
18748
187492008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
18750
18751 * coding.c (detect_coding_iso2022): New arg
18752 latin_extra_code_state. Allow Latin extra codes only
18753 when *latin_extra_code_state is nonzero.
18754 (detect_coding_mask): If there is a NULL byte, detect the encoding
18755 as UTF-16 or binary. If Latin extra codes exist, detect the
18756 encoding as ISO-2022 only when there's no other proper encoding is
18757 found.
18758
187592008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18760
18761 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
18762 #ifdef MAC_OS.
18763
187642008-01-08 Richard Stallman <rms@gnu.org>
18765
18766 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
18767
187682008-01-06 Nick Roberts <nickrob@snap.net.nz>
18769
18770 * keyboard.c (parse_menu_item): Don't enclose key bindings on
18771 menu bar in parentheses.
18772
187732008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
18774
18775 * m/7300.h:
18776 * m/acorn.h:
18777 * m/alliant-2800.h:
18778 * m/alliant.h:
18779 * m/alliant1.h:
18780 * m/alliant4.h:
18781 * m/altos.h:
18782 * m/amdahl.h:
18783 * m/apollo.h:
18784 * m/att3b.h:
18785 * m/aviion-intel.h:
18786 * m/aviion.h:
18787 * m/celerity.h:
18788 * m/clipper.h:
18789 * m/cnvrgnt.h:
18790 * m/convex.h:
18791 * m/cydra5.h:
18792 * m/delta88k.h:
18793 * m/dpx2.h:
18794 * m/dual.h:
18795 * m/elxsi.h:
18796 * m/f301.h:
18797 * m/gould-np1.h:
18798 * m/gould.h:
18799 * m/i860.h:
18800 * m/ibmps2-aix.h:
18801 * m/ibmrt-aix.h:
18802 * m/ibmrt.h:
18803 * m/irist.h:
18804 * m/is386.h:
18805 * m/isi-ov.h:
18806 * m/mega68.h:
18807 * m/mg1.h:
18808 * m/news-r6.h:
18809 * m/news-risc.h:
18810 * m/news.h:
18811 * m/nh3000.h:
18812 * m/nh4000.h:
18813 * m/ns16000.h:
18814 * m/ns32000.h:
18815 * m/nu.h:
18816 * m/orion.h:
18817 * m/orion105.h:
18818 * m/paragon.h:
18819 * m/pfa50.h:
18820 * m/plexus.h:
18821 * m/pyramid.h:
18822 * m/pyrmips.h:
18823 * m/sh3el.h:
18824 * m/sps7.h:
18825 * m/sr2k.h:
18826 * m/stride.h:
18827 * m/sun1.h:
18828 * m/sun2.h:
18829 * m/sun3-68881.h:
18830 * m/sun3-fpa.h:
18831 * m/sun3-soft.h:
18832 * m/sun3.h:
18833 * m/sun386.h:
18834 * m/symmetry.h:
18835 * m/tad68k.h:
18836 * m/tahoe.h:
18837 * m/targon31.h:
18838 * m/tek4300.h:
18839 * m/tekxd88.h:
18840 * m/tower32.h:
18841 * m/tower32v3.h:
18842 * m/ustation.h:
18843 * m/wicat.h:
18844 * m/xps100.h:
18845 * s/cxux.h:
18846 * s/cxux7.h:
18847 * s/dgux.h:
18848 * s/dgux4.h:
18849 * s/dgux5-4-3.h:
18850 * s/dgux5-4r2.h:
18851 * s/esix.h:
18852 * s/esix5r4.h:
18853 * s/hiuxmpp.h:
18854 * s/hiuxwe2.h:
18855 * s/iris3-5.h:
18856 * s/iris3-6.h:
18857 * s/isc2-2.h:
18858 * s/isc3-0.h:
18859 * s/isc4-0.h:
18860 * s/isc4-1.h:
18861 * s/newsos5.h:
18862 * s/newsos6.h:
18863 * s/osf1.h:
18864 * s/osf5-0.h:
18865 * s/riscix1-1.h:
18866 * s/riscix12.h:
18867 * s/sco4.h:
18868 * s/sco5.h:
18869 * s/sunos4-0.h:
18870 * s/sunos4-1.h:
18871 * s/sunos413.h:
18872 * s/sunos4shr.h:
18873 * s/umax.h:
18874 * s/unipl5-2.h:
18875 * s/xenix.h:
18876 * cxux-crt0.s:
18877 * unexapollo.c:
18878 * unexconvex.c:
18879 * unexenix.c:
18880 * unexsni.c: Remove files for systems no longer supported.
18881
18882 * m/intel386.h: Remove references to unsupported systems.
18883
18884 * w32.c (get_emacs_configuration): Remove reference to i860.
18885
18886 * sysdep.c: Remove dead code.
18887
188882008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
18889
18890 * s/rtu.h:
18891 * m/masscomp.h: Remove files. Platform is obsolete.
18892
188932008-01-04 Michael Albinus <michael.albinus@gmx.de>
18894
18895 * dbusbind.c (Fdbus_method_return): New function.
18896 (xd_read_message): Add the serial number to the event.
18897 (Fdbus_register_method): Activate the function.
18898
188992008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
18900
18901 * keyboard.c (read_key_sequence): Fix typo.
18902
189032008-01-03 Michael Albinus <michael.albinus@gmx.de>
18904
18905 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
18906 (xd_signature, xd_append_arg): Handle element type detection for
18907 empty arrays.
18908 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
18909 SDATA () calls; this must be solved more general.
18910 (Fdbus_register_signal): Use SBYTES instead of strlen.
18911
189122008-01-03 Magnus Henoch <magnus@zemdatav>
18913
18914 * dbusbind.c (xd_append_arg): Use unsigned char instead of
18915 unsigned int for byte values (necessary for big-endian platform).
18916 (Fdbus_call_method): Handle the case of no returned arguments.
18917
189182007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
18919
18920 * dbusbind.c (xd_read_message): Use non-static input_event struct.
18921
189222007-12-31 Magnus Henoch <mange@freemail.hu>
18923
18924 * dbusbind.c (xd_signature): Signature of variant is just "v".
18925
189262007-12-30 Michael Albinus <michael.albinus@gmx.de>
18927
18928 * dbusbind.c: Fix several errors and compiler warnings.
18929 Reported by Tom Tromey <tromey@redhat.com>.
18930 (XD_ERROR, XD_DEBUG_MESSAGE)
18931 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
18932 (xd_append_arg): Part for basic D-Bus types rewritten.
18933 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
18934 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
18935 appropriate.
18936 (xd_read_message): Return Qnil. Don't signal an error; it is not
18937 useful during event reading.
18938 (Fdbus_register_signal): Signal an error if the check for
18939 FUNCTIONP fails.
18940 (Fdbus_register_method): New function. The implementation is not
18941 complete, the call of the function signals an error therefore.
18942 (Fdbus_unregister_object): New function, renamed from
18943 Fdbus_unregister_signal. The initial check signals an error, if
18944 the object is not well formed.
18945
189462007-12-30 Richard Stallman <rms@gnu.org>
18947
18948 * textprop.c (get_char_property_and_overlay):
18949 Signal error if POSITION is out of range in a buffer.
18950
189512007-12-29 Martin Rudalics <rudalics@gmx.at>
18952
18953 * w32fns.c (Fx_create_frame): Make copy of frame parameters
18954 because the original parameters are in pure storage now.
18955
189562007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18957
18958 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
18959
189602007-12-22 Eli Zaretskii <eliz@gnu.org>
18961
18962 * callint.c (syms_of_callint) <command-history>: Add reference to
18963 history-length in the doc string.
18964
189652007-12-17 Jason Rumney <jasonr@gnu.org>
18966
18967 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
18968 before passing as wParam.
18969
189702007-12-22 Michael Albinus <michael.albinus@gmx.de>
18971
18972 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
18973 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
18974 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
18975 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
18976 as number.
18977 (Fdbus_call_method): Fix docstring.
18978
189792007-12-21 Michael Albinus <michael.albinus@gmx.de>
18980
18981 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
18982 New macros.
18983 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
18984 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
18985 Simplify.
18986 (xd_signature): New function.
18987 (xd_append_arg): Compute also signatures. Major rewrite.
18988 (xd_retrieve_arg): Make debug messages friendly.
18989 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
18990 Check for signatures of arguments.
18991
189922007-12-19 Michael Albinus <michael.albinus@gmx.de>
18993
18994 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
18995 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
18996 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
18997 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
18998 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
18999 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
19000 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
19001 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
19002 (xd_retrieve_value): Remove. Functionality included in ...
19003 (xd_append_arg): New function.
19004 (Fdbus_call_method, Fdbus_send_signal): Apply it.
19005
190062007-12-16 Michael Albinus <michael.albinus@gmx.de>
19007
19008 * dbusbind.c (top): Include <stdio.h>.
19009 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
19010 dbus_message_new_method_call and dbus_message_new_signal.
19011 (Fdbus_register_signal): Rename unique_name to uname.
19012 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
19013 non-existing unique name. Fix typos in matching rule. Return an
19014 object which is useful in Fdbus_unregister_signal.
19015 (Fdbus_unregister_signal): Reimplementation, in order to remove
19016 only the corresponding entry.
19017 (Vdbus_registered_functions_table): Change the order of entries.
19018 Apply these changes in xd_read_message and Fdbus_register_signal.
19019
190202007-12-16 Andreas Schwab <schwab@suse.de>
19021
19022 * fileio.c (Finsert_file_contents): Fix overflow check to not
19023 depend on undefined integer overflow.
19024
190252007-12-14 Jason Rumney <jasonr@gnu.org>
19026
19027 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
19028 for characters above 127.
19029
190302007-12-13 Jason Rumney <jasonr@gnu.org>
19031
19032 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
19033 before dereferencing array.
19034 (lookup_vk_code): Remove zero comparison.
19035
190362007-12-14 Michael Albinus <michael.albinus@gmx.de>
19037
19038 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
19039 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
19040 Use `unsigned int' instead of `uint'.
19041 (xd_read_message, Fdbus_register_signal): Split expressions into
19042 multiple lines before operators "&&" and "||", according to the
19043 GNU Coding Standards.
19044
190452007-12-14 Eli Zaretskii <eliz@gnu.org>
19046
19047 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
19048
190492007-12-12 Juri Linkov <juri@jurta.org>
19050
19051 * buffer.c (Frename_buffer): In interactive spec replace
19052 `read-buffer' with `read-string' that uses `buffer-name-history'
19053 as history, and the current buffer's name as default.
19054
190552007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
19056
19057 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
19058 manipulating the backtrace manually.
19059 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
19060 (struct backtrace, backtrace_list): Remove.
19061 (command_loop_1): Remove dead var `no_direct'.
19062
19063 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
19064 preserve non-built-in buffer-local variables.
19065 (Fkill_all_local_variables): Don't re-create&re-set permanent
19066 buffer-local variables.
19067
190682007-12-09 Juri Linkov <juri@jurta.org>
19069
19070 * buffer.c (Frename_buffer): Change interactive spec from "s" to
19071 Lisp code that uses `read-buffer' with current buffer as default.
19072
190732007-12-08 Michael Albinus <michael.albinus@gmx.de>
19074
19075 * dbusbind.c (xd_read_message): Generate an event for every
19076 registered handler. There might be several handlers registered
19077 for the same signal.
19078 (Fdbus_register_signal): Don't overwrite a registration for the
19079 same signal. Add a new registration if handlers are different.
19080 (Vdbus_registered_functions_table): Rework doc string.
19081
190822007-12-07 Michael Albinus <michael.albinus@gmx.de>
19083
19084 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
19085 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
19086 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
19087 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
19088 Unify argument lists.
19089 (xd_read_message, Fdbus_register_signal): Reorder and extend event
19090 arguments and hash table keys. Use unique name for service.
19091 (Fdbus_unregister_signal): Remove checks.
19092 (Vdbus_registered_functions_table): Fix doc string.
19093
190942007-12-05 Magnus Henoch <mange@freemail.hu>
19095
19096 * process.c (make_process): Initialize pty_flag to 0.
19097
190982007-12-05 Jason Rumney <jasonr@gnu.org>
19099
19100 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
19101 specified XBMs.
19102
191032007-12-05 Richard Stallman <rms@gnu.org>
19104
19105 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
19106
191072007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19108
19109 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
19110 New variable.
19111 (mac_try_close_socket) [MAC_OSX]: New function.
19112 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
19113 Update cfsockets_for_select. Replace invalid CFRunLoop source.
19114
19115 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
19116 Use mac_try_close_socket.
19117
191182007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19119
19120 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
19121 reloc_base.
19122 (copy_dysymtab): Compute relocation base here.
19123 (rebase_reloc_address) [__ppc64__]: New function.
19124 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
19125 changed.
19126
191272007-12-05 Jason Rumney <jasonr@gnu.org>
19128
19129 * w32proc.c (sys_spawnve): Quote args with wildcards.
19130
191312007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19132
19133 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
19134 __objc_* sections.
19135 (unrelocate) [_LP64]: Set relocation base to address of data segment.
19136
191372007-12-05 Michael Albinus <michael.albinus@gmx.de>
19138
19139 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
19140 Move check for Vdbus_registered_functions_table to
19141 xd_read_queued_messages.
19142 (xd_read_queued_messages): Protect xd_read_message calls by
19143 internal_condition_case_1.
19144
191452007-12-04 Michael Albinus <michael.albinus@gmx.de>
19146
19147 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
19148 Qdbus_system_bus and Qdbus_session_bus, respectively.
19149 (Vdbus_intern_symbols): Remove.
19150 (Vdbus_registered_functions_table): New hash table.
19151 (XD_SYMBOL_INTERN_SYMBOL): Remove.
19152 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
19153 Rewrite in order to manage registered functions by hash table
19154 Vdbus_registered_functions_table.
19155
191562007-12-03 Jan Djärv <jan.h.d@swipnet.se>
19157
19158 * xterm.c: Update URL to Window Manager Specification in comment.
19159
191602007-12-02 Michael Albinus <michael.albinus@gmx.de>
19161
19162 * config.in (HAVE_DBUS): Add.
19163
19164 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
19165 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
19166 (obj): Add $(DBUS_OBJ).
19167 (LIBES): Add $(DBUS_LIBS).
19168 (dbusbind.o): New target.
19169
19170 * dbusbind.c: New file.
19171
19172 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
19173
19174 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
19175 (Qdbus_event): New Lisp symbol.
19176 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
19177 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 19178 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
19179
19180 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
19181
191822007-12-01 Richard Stallman <rms@gnu.org>
19183
19184 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
19185
191862007-11-30 Jason Rumney <jasonr@gnu.org>
19187
19188 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
19189 (w32con_reset_terminal_modes): Clear screen buffer.
19190 (w32_face_attributes): Don't use color indexes that are out of range.
19191 Only reverse the default colors.
19192
19193 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
19194 WINDOWSNT.
19195
19196 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
19197
191982007-11-29 Jason Rumney <jasonr@gnu.org>
19199
19200 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
19201 (w32_face_attributes): Use Vtty_defined_color_alist to determine
19202 if the terminal colors are initialized.
19203 (unspecified_fg, unspecified_bg): Remove unused declarations.
19204
192052007-11-29 Andreas Schwab <schwab@suse.de>
19206
19207 * keyboard.c (apply_modifiers): Fix typo.
19208
192092007-11-29 Richard Stallman <rms@gnu.org>
19210
19211 * keymap.c (Fcurrent_local_map): Doc fix.
19212
192132007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
19214
19215 * s/gnu-kfreebsd.h: New file.
19216
192172007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
19218
19219 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
19220 Don't cast redundantly.
19221
19222 * keyboard.c (KEY_TO_CHAR): New macro.
19223 (parse_modifiers, apply_modifiers): Accept integer arguments.
19224 (read_key_sequence): Use them to unify the "shift->unshift" mapping
19225 for chars and symbol keys.
19226 After doing such remapping, apply function-key-map again.
19227
192282007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
19229
19230 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
19231 compiled anymore.
19232
192332007-11-26 Andreas Schwab <schwab@suse.de>
19234
19235 * process.c (list_processes_1): Fix indentation level of the
19236 command column.
19237
192382007-11-23 Andreas Schwab <schwab@suse.de>
19239
19240 * editfns.c (Fformat): Handle %c specially since it requires the
19241 argument to be of type int.
19242
192432007-11-23 Markus Triska <markus.triska@gmx.at>
19244
19245 * emacs.c (main): Call init_editfns before init_process, since
19246 init_process sets Vprocess_connection_type depending on OS release.
19247
192482007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
19249
19250 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
19251 (find_symbol_value): Use do_symval_forwarding.
19252
19253 * data.c (set_internal): Set the value in the `cons-cell' (for
19254 Buffer_Local_values) not only for frame-local variables.
19255
192562007-11-22 Andreas Schwab <schwab@suse.de>
19257
19258 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
19259 values to sprintf.
19260 * keymap.c (Fsingle_key_description): Likewise.
19261 * print.c (print_object): Likewise.
19262
192632007-11-22 Jan Djärv <jan.h.d@swipnet.se>
19264
19265 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
19266 file for image is nil.
19267
192682007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
19269
19270 * term.c: Include stdarg.h.
19271 (fatal): Implement using varargs.
19272 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
19273
192742007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
19275
19276 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
19277 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
19278 Update call to buffer_slot_type_mismatch.
19279 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
19280 (buffer_slot_type_mismatch): Update.
19281 * buffer.c (buffer_local_types): Remove.
19282 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
19283 (defvar_per_buffer): Set the type in the buffer_objfwd.
19284
192852007-11-21 Jason Rumney <jasonr@gnu.org>
19286
19287 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
19288 CreateFileMapping returns NULL on failure.
19289
192902007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
19291
19292 * search.c (Fset_match_data): Remove the `evaporate' feature.
19293 (unwind_set_match_data): Don't use the `evaporate' feature.
19294
192952007-11-21 Jason Rumney <jasonr@gnu.org>
19296
19297 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
19298
19299 * w32console.c (w32con_write_glyphs): Remove unused variables.
19300
193012007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
19302
19303 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
19304
19305 * s/darwin.h (MULTI_KBOARD): Remove.
19306
19307 * macfns.c (x_create_tip_frame, Fx_create_frame)
19308 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
19309
193102007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
19311
19312 * buffer.c (Fbuffer_local_value): Remove redundant test.
19313 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
19314 than in `current-buffer' to match the comment.
19315 Do the swap using swap_in_global_binding.
19316
19317 * data.c (store_symval_forwarding, set_internal):
19318 * eval.c (specbind): Remove dead code.
19319
19320 * coding.c (detect_coding, Fupdate_coding_systems_internal):
19321 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
19322 Since we do not want to see internal Lisp_*fwd objects here.
19323
193242007-11-18 Jan Djärv <jan.h.d@swipnet.se>
19325
19326 * sysdep.c (init_system_name): Use getaddrinfo if available.
19327
19328 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
19329 (x_scroll_bar_note_movement): start, end, with, height in struct
19330 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
19331
193322007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
19333
19334 * puresize.h (BASE_PURESIZE): Increase to 1190000.
19335
193362007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
19337
19338 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
19339 This undoes Richard's change of 14-Oct-2002.
19340
19341 * alloc.c (allocate_other_vector):
19342 * lisp.h (allocate_other_vector): Remove.
19343
19344 * window.c (struct save_window_data): Move non-lisp data to the end
19345 and make it `int' rather than Lisp_Object.
19346 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
19347 Done wrap/unwrap integer values.
19348 (Fset_window_configuration, compare_window_configurations):
19349 Update use of fields to their new types.
19350
19351 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
19352 Turn integer fields into `int'. Merge x_window_low and x_window_high.
19353 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
19354 (SET_SCROLL_BAR_X_WINDOW): Remove.
19355 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
19356 Access the new x_window field directly.
19357 * xterm.c (x_scroll_bar_create): Use a pseudovector.
19358 Don't wrap/unwrap integers into Lisp_Objects.
19359 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
19360 (x_scroll_bar_report_motion):
19361 Don't wrap/unwrap integers into Lisp_Objects.
19362 (x_term_init): Use SDATA.
19363 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
19364 (x_scroll_bar_set_handle, x_scroll_bar_remove)
19365 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
19366 (x_scroll_bar_report_motion, x_scroll_bar_clear):
19367 * xfns.c (x_set_background_color):
19368 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
19369 Access the new x_window field directly.
19370
19371 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
19372 (allocate_pseudovector): Make non-static.
19373
19374 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
19375 (allocate_pseudovector): Declare.
19376 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
19377
193782007-11-15 Andreas Schwab <schwab@suse.de>
19379
19380 * editfns.c (Fformat): Correctly format EMACS_INT values.
19381 Also take precision into account when formatting an integer.
19382
19383 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
19384
193852007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
19386
19387 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
19388 (syms_of_keyboard): Defsubr it.
19389
19390 * data.c (swap_in_global_binding): Fix longstanding bug where
19391 store_symval_forwarding was not called with the right second argument,
19392 thus causing objfwd-ing from being dropped.
19393
193942007-11-14 Juanma Barranquero <lekktu@gmail.com>
19395
19396 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
19397 (Fx_display_pixel_height, Fx_display_planes)
19398 (Fx_display_color_cells, Fx_server_max_request_size)
19399 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
19400 (Fx_display_visual_class, Fx_display_save_under):
19401 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
19402 (Fx_display_pixel_height, Fx_display_planes)
19403 (Fx_display_color_cells, Fx_server_max_request_size)
19404 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
19405 (Fx_display_mm_height, Fx_display_mm_width)
19406 (Fx_display_backing_store, Fx_display_visual_class)
19407 (Fw32_select_font, Fx_display_save_under):
19408 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
19409 (Fx_display_pixel_height, Fx_display_planes)
19410 (Fx_display_color_cells, Fx_server_max_request_size)
19411 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
19412 (Fx_display_save_under): Fix typos in docstrings.
19413
194142007-11-14 Juanma Barranquero <lekktu@gmail.com>
19415
19416 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
19417 corresponding to deleted entries; they are an implementation detail.
19418 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
19419 Remove variables.
19420 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
19421 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
19422 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
19423 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
19424 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
19425 (Fw32_define_rgb_color, Fw32_load_color_file)
19426 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
19427 Fix typos in docstrings.
19428 (Fx_server_version): Reflow docstring.
19429 (Fw32_shell_execute): Doc fixes.
19430
194312007-11-13 Juanma Barranquero <lekktu@gmail.com>
19432
19433 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
19434 if w32_parse_hot_key returned nil.
19435
194362007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
19437
19438 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
19439
194402007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 19441
aac0c6e3
MR
19442 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
19443
19444 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
19445
19446 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
19447 Remove W32_SCROLL_BAR_CLICK_EVENT.
19448
19449 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
19450 Add MULTIMEDIA_KEY_EVENT.
19451
19452 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
19453 (lispy_multimedia_keys) [WINDOWSNT]: New array.
19454 (make_lispy_event) [WINDOWSNT]: Use it to translate
19455 MULTIMEDIA_KEY_EVENT.
19456
19457 * w32term.h (WM_APPCOMMAND): Define if not already.
19458 (GET_APPCOMMAND_LPARAM): Likewise.
19459
19460 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
19461 WM_APPCOMMAND.
19462
19463 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
19464 (syms_of_w32fns): Export and initialize it.
19465 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
19466
194672007-11-09 Chong Yidong <cyd@stupidchicken.com>
19468
19469 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
19470 twice.
19471
19472 * xdisp.c (handle_face_prop): Fix last change.
19473
194742007-11-09 Richard Stallman <rms@gnu.org>
19475
19476 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
19477 not just for after-strings and before-strings.
19478 Call face_for_overlay_string and pass the overlay to it.
19479 (handle_display_prop): Determine whether property came from an overlay.
19480 Pass OVERLAY arg to handle_single_display_spec.
19481 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
19482 (load_overlay_strings): Fill in it->string_overlays.
19483 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
19484
19485 * xfaces.c (face_for_overlay_string): Function renamed from
19486 face_at_buffer_position_no_overlays, and add arg OVERLAY.
19487
19488 * dispextern.h (struct it): New elt string_overlays.
19489 New elt from_overlay, also in stack.
19490 Rearrange a few elements.
19491 (face_for_overlay_string): Decl renamed from
19492 face_at_buffer_position_no_overlays, and add argument.
19493
194942007-11-09 Richard Stallman <rms@gnu.org>
19495
19496 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
19497 to get the base face for an overlay string.
19498
19499 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
19500
19501 * xfaces.c (face_at_buffer_position_no_overlays): New function.
19502
19503 * xdisp.c (handle_stop): Move some code out of loop.
19504
195052007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19506
19507 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
19508 Fix conversion from Lisp object to ATSUFontID.
19509
195102007-11-09 Jason Rumney <jasonr@gnu.org>
19511
19512 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
19513
195142007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19515
19516 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
19517 Don't assume regions are aligned to page boundary.
19518 (print_load_command_name): Add LC_UUID if defined.
19519
195202007-11-09 Richard Stallman <rms@gnu.org>
19521
19522 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
19523
195242007-11-07 Jason Rumney <jasonr@gnu.org>
19525
19526 * s/windows95.h: Remove.
19527
195282007-11-06 Jan Djärv <jan.h.d@swipnet.se>
19529
19530 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
19531 abort with a message on unhandled store_type values.
19532
195332007-11-01 Jan Djärv <jan.h.d@swipnet.se>
19534
19535 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
19536 Remove HAVE_X11R5 and HAVE_X11R4.
19537
195382007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
19539
19540 * Makefile.in: Remove references to sunfns.c and sunfns.o.
19541
195422007-11-01 Johan Bockgård <bojohan@gnu.org>
19543
19544 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
19545 Don't set s->stippled_p here, since it has already been set by
19546 x_set_glyph_string_gc from x_draw_glyph_string.
19547
195482007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
19549
19550 * sunfns.c: Remove file.
19551
19552 * m/sun386.h:
19553 * m/sun2.h:
19554 * m/sparc.h: Remove Sun windows code.
19555
195562007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
19557
19558 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
19559 (init_keyboard): Set current_kboard's window-system to nil.
19560 (tty_read_avail_input): Typo.
19561 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
19562
195632007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
19564
19565 * s/usg5-4.h:
19566 * s/usg5-3.h:
19567 * s/ptx.h:
19568 * m/is386.h:
19569 * m/ibmps2-aix.h:
19570 * Makefile.in: Remove all mentions of X10.
19571
19572 * dispnew.c (syms_of_display): Don't mention version 10.
19573
195742007-10-28 Juanma Barranquero <lekktu@gmail.com>
19575
19576 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
19577 ($(BLD)/abbrev.$(O)): Remove.
19578
195792007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
19580
19581 Rewrite abbrev.c in Elisp.
19582 * image.c (Qcount): Don't declare as extern.
19583 (syms_of_image): Initialize and staticpro `Qcount'.
19584 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
19585 * emacs.c (main): Don't call syms_of_abbrev.
19586 * Makefile.in (obj): Remove abbrev.o.
19587 (abbrev.o): Remove.
19588 * abbrev.c: Remove.
19589
195902007-10-26 Martin Rudalics <rudalics@gmx.at>
19591
19592 * window.c (window_min_size_2): Don't count header-line.
19593
195942007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
19595
19596 * frame.h (struct frame): Move all bit fields after the first bit
19597 field to take advantage of the available space. Group all the
19598 chars together to reduce wasted space due to padding.
19599
196002007-10-26 Juanma Barranquero <lekktu@gmail.com>
19601
19602 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
19603
19604 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
19605 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
19606 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
19607 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
19608 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
19609 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
19610 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
19611 (last_marked, mark_object_loop_halt): Make static.
19612
19613 * frame.c (syms_of_frame) <delete-frame-functions>:
19614 Fix typo in docstring.
19615
196162007-10-25 Juanma Barranquero <lekktu@gmail.com>
19617
19618 * w32.c (init_environment): Fix tiny memory leak.
19619 (w32_get_resource): Remove unused variable `ok'.
19620
196212007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
19622
19623 Make `window-system' into a keyboard-local variable (rather than
19624 frame-local as done originally by multi-tty).
19625
19626 * keyboard.h (struct kboard): Add Vwindow_system.
19627 * keyboard.c (init_kboard): Set a default for Vwindow_system.
19628 (mark_kboards): Mark Vwindow_system.
19629
19630 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
19631 (init_display): Don't set the obsolete `window-system' frame-param.
19632
19633 * xterm.c (x_term_init):
19634 * w32term.c (w32_create_terminal):
19635 * term.c (init_tty): Set Vwindow_system.
19636 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
19637 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
19638
19639 * xfns.c (Fx_create_frame, x_create_tip_frame):
19640 * w32fns.c (Fx_create_frame, x_create_tip_frame):
19641 * macfns.c (Fx_create_frame):
19642 Don't set the obsolete `window-system' frame-param.
19643
19644 * frame.h (Qwindow_system): Remove.
19645 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
19646 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
19647
196482007-10-24 Richard Stallman <rms@gnu.org>
19649
19650 * frame.c (x_figure_window_size): For fullscreen case,
19651 set USPosition | PPosition without clobbering rest of window_prompting.
19652
19653 * keyboard.c (Fcurrent_idle_time): Doc fix.
19654
19655 * print.c (Fwith_output_to_temp_buffer): Doc fix.
19656
196572007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
19658
19659 * process.c (unwind_request_sigio): Only define if __ultrix__.
19660
19661 * callproc.c (child_setup): Remove spurious *.
19662
19663 * lisp.h (Fget_text_property): Declare.
19664 (have_menus_p): Declare it here rather than in sys-dep header files.
19665 * macterm.h (have_menus_p):
19666 * msdos.h (have_menus_p):
19667 * xterm.h (have_menus_p): Remove.
19668
19669 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
19670 (Fmake_variable_frame_local): Just check the variable's const-ness
19671 rather than checking nil or t.
19672
196732007-10-22 Jason Rumney <jasonr@gnu.org>
19674
19675 * w32fns.c: Include math.h.
19676 (w32_abort): Declaration moved to nt/config.nt.
19677
19678 * s/ms-w32.h (HAVE_STDLIB_H): Define.
19679 (abort): Redefinition moved to nt/config.nt.
19680
19681 * m/windowsnt.h: Remove.
19682
196832007-10-22 Juanma Barranquero <lekktu@gmail.com>
19684
19685 * emacs.c (Fdump_emacs): Fix typo in message.
19686 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
19687 <installation-directory>: Reflow docstring.
19688
196892007-10-22 Juri Linkov <juri@jurta.org>
19690
19691 * minibuf.c: Allow minibuffer default to be a list of default values.
19692 With empty input use the first element of this list as returned default.
19693 (string_to_object)
19694 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
19695 (read_minibuf): If defalt is cons, set histstring to its car.
19696 (Fread_string): If default_value is cons, set val to its car.
19697 (Fread_buffer): If def is cons, use its car.
19698 (Fcompleting_read): If defalt is cons, set val to its car.
19699
197002007-10-21 Michael Albinus <michael.albinus@gmx.de>
19701
19702 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
19703
197042007-10-20 Juanma Barranquero <lekktu@gmail.com>
19705
19706 * doc.c (Fdocumentation): Check for advice in all cases.
19707
197082007-10-19 Chong Yidong <cyd@stupidchicken.com>
19709
19710 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
19711
197122007-10-19 Richard Stallman <rms@gnu.org>
19713
19714 * doc.c (Fdocumentation): Check for and handle an advised function.
19715
197162007-10-19 Juanma Barranquero <lekktu@gmail.com>
19717
19718 * process.c (Fset_process_filter): Doc fix.
19719
197202007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
19721
19722 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
19723 which caused key-translation-map to applied repeatedly (thus breaking
19724 double-mode).
19725
197262007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
19727
19728 * xselect.c (x_own_selection, x_handle_selection_clear)
19729 (x_clear_frame_selections):
19730 * w32menu.c (list_of_panes, list_of_items):
19731 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
19732 * textprop.c (validate_plist, interval_has_all_properties)
19733 (interval_has_some_properties, interval_has_some_properties_list)
19734 (add_properties, text_property_list):
19735 * process.c (Fget_buffer_process, list_processes_1, status_notify):
19736 * minibuf.c (Fassoc_string):
19737 * macselect.c (x_own_selection, x_clear_frame_selections)
19738 (Fx_disown_selection_internal):
19739 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
19740 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
19741
197422007-10-17 Chong Yidong <cyd@stupidchicken.com>
19743
19744 * process.c: Link to libs for calling res_init() if available.
19745 (Fmake_network_process): Call res_init() before getaddrinfo or
19746 gethostbyname, if possible.
19747
197482007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
19749
19750 * lread.c (read1): Set pvectype for char_tables.
19751
19752 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
19753 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
19754 Add type checks.
19755 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
19756
19757 * alloc.c (free_misc): Use XMISCTYPE.
19758 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
19759
197602007-10-17 Glenn Morris <rgm@gnu.org>
19761
19762 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
19763 (syms_of_minibuf): Add Qcompletion_ignore_case.
19764 * dired.c (Qcompletion_ignore_case): Change to external.
19765 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
19766 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
19767 (Fread_file_name): Use it rather than intern'ing.
19768
19769 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
19770 (Fread_coding_system): Ignore case of user input.
19771
197722007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19773
19774 * xdisp.c (handle_display_prop): Ignore display specs after
19775 replacing one when string text is being replaced.
19776 (handle_single_display_spec): Pretend as if characters with display
19777 property haven't been consumed only when buffer text is being replaced.
19778
197792007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
19780
19781 * xfns.c (Fx_create_frame, Fx_display_list):
19782 * window.c (window_fixed_size_p, enlarge_window)
19783 (shrink_window_lowest_first):
19784 * macterm.c (init_font_name_table):
19785 * macfns.c (Fx_create_frame, Fx_display_list):
19786 * lread.c (close_load_descs):
19787 * keyboard.c (read_char_x_menu_prompt):
19788 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
19789 * coding.c (code_convert_region_unwind): Test the type of an object
19790 rather than just !NILP before extracting data from it.
19791
19792 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
19793
19794 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
19795 (XMISCANY): New macro.
19796 (XMISCTYPE): Use it.
19797 (struct Lisp_Misc_Any): New type.
19798 (union Lisp_Misc): Use it.
19799 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
19800 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
19801 (find_symbol_value, set_internal, default_value, Fset_default)
19802 (Fmake_variable_buffer_local, Fmake_local_variable)
19803 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
19804 (Flocal_variable_if_set_p, Fvariable_binding_locus):
19805 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
19806 * alloc.c (allocate_buffer): Set the size and tag.
19807 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
19808 Use XMISCANY.
19809 (die): Follow the GNU convention for error messages.
19810 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
19811 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
19812 tag any more.
19813 (set_buffer_internal_1):
19814 * frame.c (store_frame_param):
19815 * eval.c (specbind):
19816 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
19817
19818 * doc.c (Fsnarf_documentation): Simplify.
19819
198202007-10-14 Juanma Barranquero <lekktu@gmail.com>
19821
19822 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
19823 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
19824
198252007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
19826
19827 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
19828
198292007-10-14 Juanma Barranquero <lekktu@gmail.com>
19830
19831 * eval.c (do_autoload): Don't save autoloads.
19832
19833 * data.c (Ffset): Save autoload of the function being set.
19834
198352007-10-07 John Paul Wallington <jpw@pobox.com>
19836
19837 * xfns.c (x_create_tip_frame): Set the `display-type' frame
19838 parameter before setting up faces.
19839
198402007-10-13 Eli Zaretskii <eliz@gnu.org>
19841
19842 * ccl.c (Fregister_code_conversion_map):
19843 * keyboard.c (append_tool_bar_item): Reformat last change.
19844
19845 * lisp.h (eabs): Rename from `abs'. All callers changed.
19846
198472007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
19848
19849 * buffer.c (add_overlay_mod_hooklist):
19850 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
19851 * fontset.c (make_fontset):
19852 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
19853 (append_tool_bar_item):
19854 * macmenu.c (grow_menu_items):
19855 * w32menu.c (grow_menu_items):
19856 * xmenu.c (grow_menu_items): Use larger_vector.
19857
198582007-10-13 Eli Zaretskii <eliz@gnu.org>
19859
19860 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
19861 selected frame'' on MSDOS).
19862
198632007-10-12 Martin Rudalics <rudalics@gmx.at>
19864
19865 * frame.c (Qexplicit_name): New variable.
19866 (x_report_frame_params): Report it in parameter alist.
19867 (syms_of_frame): Intern and staticpro it.
19868
198692007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
19870
19871 * macfns.c (x_create_tip_frame): Set terminal for frame.
19872
198732007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
19874
19875 * frame.c (Qenvironment): Remove.
19876 (syms_of_frame) <Qenvironment>: Don't initialize.
19877 (Fdelete_frame): Don't treat the `environment' param specially.
19878 * frame.h (Qenvironment): Don't declare.
19879 * callproc.c (set_initial_environment): Don't set unused frame param.
19880
19881 * frame.c (Fframe_with_environment): Remove.
19882 (syms_of_frame) <Sframe_with_environment>: Don't declare.
19883
19884 * lisp.h (Fframe_with_environment): Don't declare.
19885
198862007-10-10 Juanma Barranquero <lekktu@gmail.com>
19887
19888 * indent.c (indent_tabs_mode, last_known_column)
19889 (last_known_column_modified): Make static.
19890 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
19891
198922007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
19893
19894 * puresize.h (BASE_PURESIZE): Increase to 1170000.
19895
198962007-10-09 Jason Rumney <jasonr@gnu.org>
19897
19898 * w32term.c (x_set_window_size): Disable code that attempts to tell
19899 Lisp code about a size change before it actually happens.
19900
199012007-10-09 Richard Stallman <rms@gnu.org>
19902
19903 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
19904 return HANDLED_RETURN.
19905
199062007-10-08 Martin Rudalics <rudalics@gmx.at>
19907
19908 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
19909 when there's an unread command event.
19910
19911 * frame.c (focus_follows_mouse): Move here from frame.el to allow
19912 window autoselection act appropriately when leaving selected frame.
19913 (syms_of_frame): Initialize focus_follows_mouse.
19914 * frame.h (focus_follows_mouse): Extern it.
19915 * macterm.c (XTread_socket): When focus_follows_mouse is nil
19916 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
19917 * msdos.c (dos_rawgetc): Likewise.
19918 * w32term.c (w32_read_socket): Likewise.
19919 * xterm.c (handle_one_xevent): Likewise.
19920 * xdisp.c (syms_of_xdisp): In doc-string of
19921 mouse-autoselect-window mention focus-follows-mouse.
19922
199232007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19924
19925 * macterm.c (mac_load_query_font): Fix missing return value.
19926 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
19927 Add BLOCK_INPUT.
19928
199292007-10-08 Richard Stallman <rms@gnu.org>
19930
19931 * xdisp.c (get_window_cursor_type): Implement documented behavior
19932 for cursor-in-non-selected-windows = t.
19933
199342007-10-08 Jason Rumney <jasonr@gnu.org>
19935
19936 * w32.c (w32_get_resource): Always close registry keys.
19937
199382007-10-08 Jason Rumney <jasonr@gnu.org>
19939
19940 * makefile.w32-in (LIBS): Add COMCTL32.
19941
19942 * w32fns.c (globals_of_w32fns): Init common controls.
19943
199442007-10-08 Richard Stallman <rms@gnu.org>
19945
19946 * image.c (our_memory_buffer): Rename from omfib_buffer.
19947
199482007-10-08 Richard Stallman <rms@gnu.org>
19949
19950 * buffer.c (Foverlays_at): Doc fix.
19951
199522007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
19953
19954 * fns.c (Fplist_put): Preserve uneven tail data.
19955
199562007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
19957
19958 * termhooks.h (enum event_kind): Remove trailing comma.
19959
19960 * frame.h (enum): Remove trailing comma.
19961
199622007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
19963
19964 * w32proc.c (delete_child): Don't terminate threads of zombies.
19965
199662007-10-08 Martin Rudalics <rudalics@gmx.at>
19967
19968 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
19969
19970 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
19971 last-repeatable-command.
19972 (init_kboard): Initialize Vlast_repeatable_command.
19973 (command_loop_1): Set it to real_this_command unless that was
19974 bound to an input event.
19975 (mark_kboards): Mark it.
19976
199772007-10-08 Richard Stallman <rms@gnu.org>
19978
19979 * eval.c (condition-case): Doc fix.
19980
199812007-10-08 Masatake YAMATO <jet@gyve.org>
19982
19983 * xfaces.c (tty_supports_face_attributes_p): Fix code
19984 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
19985 was copied and not edited.
19986
199872007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
19988
19989 Add new `input-decode-map' keymap and use it for terminal
19990 escape sequences.
19991 * keyboard.h (struct kboard): Add Vinput_decode_map.
19992 Remove Vlocal_key_translation_map.
19993 * keyboard.c (read_key_sequence): Add support for input-decode-map.
19994 (init_kboard): Init input-decode-map.
19995 Replace local-key-translation-map back with key-translation-map.
19996 (syms_of_keyboard): Declare input-decode-map.
19997 Remove local-key-translation-map. Update docstrings.
19998 (mark_kboards): Mark Vinput_decode_map.
19999 Don't mark Vlocal_key_translation_map.
20000 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
20001 Replace local-key-translation-map back with key-translation-map.
20002 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
20003 Bind in input-decode-map rather than function-key-map.
20004
20005 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
20006 This was made redundant by the previous introduction of XSETPVECTYPE.
20007
200082007-10-09 Richard Stallman <rms@gnu.org>
20009
20010 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
20011
200122007-09-29 Richard Stallman <rms@gnu.org>
20013
20014 * eval.c (internal_condition_case_2, internal_condition_case_1)
20015 (internal_condition_case): Reenable abort if x_catching_errors ()
20016 to see if that really happens and why.
20017
200182007-10-06 Andreas Schwab <schwab@suse.de>
20019
20020 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
20021
200222007-10-04 Juanma Barranquero <lekktu@gmail.com>
20023
20024 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
20025
200262007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
20027
20028 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
20029
200302007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
20031
20032 * window.h (struct window):
20033 * window.c (struct save_window_data, struct saved_window):
20034 * termhooks.h (struct terminal):
20035 * process.h (struct Lisp_Process):
20036 * frame.h (struct frame):
20037 * buffer.h (struct buffer):
20038 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
20039 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
20040 The size field of (pseudo)vectors is now unsigned.
20041 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
20042
20043 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
20044 Turn `count' into an integer.
20045
20046 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
20047 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
20048 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
20049 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
20050 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
20051
20052 * alloc.c (allocate_pseudovector): New fun.
20053 (ALLOCATE_PSEUDOVECTOR): New macro.
20054 (allocate_window, allocate_terminal, allocate_frame)
20055 (allocate_process): Use it.
20056 (mark_vectorlike): New function.
20057 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
20058 (mark_terminals): Use it.
20059 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
20060 (Fmake_byte_code): Use XSETPVECTYPE.
20061
20062 * frame.c (Fframe_parameters): Minor simplification.
20063
20064 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
20065
20066 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
20067
20068 * buffer.c (Fget_buffer_create, init_buffer_once):
20069 * lread.c (defsubr):
20070 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
20071
20072 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
20073 defined differently in the m/*.h files.
20074 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
20075 (XSETPVECTYPE): New macro.
20076 (XSETPSEUDOVECTOR): Use it.
20077
20078 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
20079 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
20080
20081 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
20082 * lread.c (defvar_per_buffer):
20083 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
20084
20085 * window.c (candidate_window_p): Only consider as visible frames that
20086 are on the same terminal.
20087
20088 * m/ibms390x.h (MARKBIT): Remove unused macro.
20089
200902007-10-01 Juanma Barranquero <lekktu@gmail.com>
20091
20092 * lread.c (Fload): Fix typo in docstring.
20093
200942007-10-01 Michaël Cadilhac <michael@cadilhac.name>
20095
20096 * floatfns.c (Fexpt): Manually check for overflows, so that a power
20097 of a non-zero value can't yield zero.
20098
200992007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
20100
20101 * term.c (term_clear_mouse_face, term_mouse_highlight)
20102 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
20103
20104 * print.c (safe_debug_print): Use XHASH.
20105
20106 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
20107 Lisp elements such as tags.
20108 (XHASH): New macro.
20109 (EQ): Use it.
20110 (SREF, SSET, STRING_COPYIN): Use SDATA.
20111 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
20112
20113 * alloc.c (mark_terminal): Remove left-over declaration.
20114 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
20115 (allocate_vectorlike): Remove type argument. Adjust callers.
20116 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
20117 Only handle the one remaining MEM_TYPE_VECTORLIKE.
20118
20119 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
20120 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
20121 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
20122 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
20123 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
20124 Use them.
20125
20126 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
20127 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
20128 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
20129
201302007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
20131
20132 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
20133 loaded by default.
20134
201352007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
20136
20137 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
20138 on this tty.
20139 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
20140
20141 * term.c (mouse_face_window): Rename from Qmouse_face_window.
20142 Update all users.
20143 (handle_one_term_event): Use Gpm_DrawPointer.
20144 (Fgpm_mouse_start): Rename from Fterm_open_connection.
20145 Signal errors instead of returning nil. Always return nil.
20146 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
20147 Make it a noop if gpm-mouse was not activated.
20148 (syms_of_term): Update names.
20149
201502007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
20151
20152 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
20153 (init_sys_modes): Check that gpm_tty is the current tty.
20154
20155 * alloc.c (allocate_terminal): Set the vector size to only count the
20156 lisp fields. Initialize those to nil.
20157 (mark_object): Don't treat terminals specially.
20158 (mark_terminal): Remove.
20159 (mark_terminals): Use mark_object instead.
20160
20161 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
20162 the GC to the beginning.
20163
20164 * indent.h:
20165 * indent.c: Use EMACS_INT for ints coming from Elisp data.
20166
20167 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
20168
201692007-09-25 Jason Rumney <jasonr@gnu.org>
20170
20171 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
20172
20173 * w32console.c (create_w32cons_output): Remove.
20174
20175 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
20176
20177 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
20178 (reset_sys_modes): Use reset_terminal_modes_hook.
20179
201802007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
20181
20182 * eval.c (do_autoload): Don't output any message.
20183
201842007-09-24 Juri Linkov <juri@jurta.org>
20185
20186 * emacs.c (standard_args): Change priority of "--no-splash"
20187 from 40 to 3. Add "--no-desktop" with the same priority.
20188
201892007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
20190
20191 * alloc.c (gc_sweep): Check cons cell mark bits word by word
20192 and optimize the case where they are all 1.
20193
201942007-09-23 Johannes Weiner <hannes@saeurebad.de>
20195
20196 * lisp.h (abs): Define if not defined.
20197 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
20198 Don't define `abs', since it's defined in lisp.h.
20199
202002007-09-22 Eli Zaretskii <eliz@gnu.org>
20201
20202 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
20203 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
20204 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
20205 (init_tty): Use DEV_TTY instead of "/dev/tty".
20206 [WINDOWSNT]: No need to protect from NAME arg being null.
20207
202082007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
20209
20210 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
20211 up the tty state.
20212
202132007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
20214
20215 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
20216 (gpm_tty): Change its type.
20217 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
20218 (gpm_tty): Change its type and initialize it.
20219 (Fterm_open_connection): Check the frame is indeed a tty.
20220 Use the new gpm_tty.
20221 (Fterm_close_connection): Use the new gpm_tty.
20222 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
20223 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
20224
202252007-09-21 Juanma Barranquero <lekktu@gmail.com>
20226
20227 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
20228 underline_color, to draw strike-through.
20229
202302007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
20231
20232 * lisp.h (allocate_terminal): Declare.
20233
20234 * window.c (candidate_window_p): Consider frames that are being placed
20235 by the user as somewhere between visible and iconified.
20236 (window_loop): Prefer windows on the current frame.
20237 (Fselect_window): Move the use of select-frame to the beginning so we
20238 can just delegate all the work (it'll call us back anyway).
20239
20240 * frame.c (Qdisplay_environment_variable):
20241 * frame.h (Qdisplay_environment_variable): Delete.
20242
20243 * .gdbinit (xbacktrace): Print the arg's address rather than the value
20244 of the first arg, since that value may be a union.
20245
20246 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
20247 parameter rather than Qdisplay_environment_variable. If all else
20248 fails, look for DISPLAY in initial-environment.
20249
202502007-09-21 Glenn Morris <rgm@gnu.org>
20251
20252 * Makefile.in (emacstool): Remove target.
20253 (lisp, shortlisp): Remove termdev.elc.
20254
202552007-09-21 Markus Triska <markus.triska@gmx.at>
20256
20257 * xterm.c (x_delete_display): Compile session management conditionally.
20258
202592007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
20260
20261 * callproc.c (getenv_internal_1): New function.
20262 (getenv_internal): Use it.
20263 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
20264
20265 * terminal.c (get_terminal): Don't accept ints to represent terminals.
20266 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
20267 (Fset_terminal_parameter): Work with dead terminals as well.
20268 (Fmodify_terminal_parameters): Remove.
20269
20270 * terminal.c (get_terminal): Handle terminals.
20271 Make sure the terminal returned is live.
20272 (create_terminal): Use allocate_terminal.
20273 (mark_terminals): Move to alloc.c.
20274 (delete_terminal): Use terminal->name as liveness status.
20275 NULL out fields after freeing their contents.
20276 Don't deallocate the object.
20277 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
20278 rather than an int.
20279 (Fterminal_live_p): Accept non-integer arguments.
20280 (Fterminal_list): Return terminal objects rather than an ints.
20281
20282 * alloc.c (enum mem_type): New member for `terminal' objects.
20283 (allocate_terminal): New function.
20284 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
20285 Handle terminals.
20286 (mark_terminal): New fun.
20287 (mark_terminals): Move from terminal.c.
20288
20289 * term.c (get_tty_terminal): Don't treat output_initial specially.
20290 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
20291 (delete_tty): Use terminal->name as liveness status.
20292
20293 * termhooks.h (struct terminal): Make it into a pseudovector.
20294 Remove `deleted' replaced by checking `name's nullness.
20295
20296 * print.c (print_object): Handle terminals.
20297
20298 * lisp.h (enum pvec_type): New `terminal' pseudovector.
20299 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
20300
20301 * frame.c (make_terminal_frame):
20302 * keyboard.c (tty_read_avail_input):
20303 * w32term.c (x_delete_terminal):
20304 * xfns.c (Fx_create_frame, x_create_tip_frame):
20305 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
20306
203072007-09-20 Glenn Morris <rgm@gnu.org>
20308
20309 * process.c (Fmake_network_process): Doc fix.
20310
203112007-09-19 Jason Rumney <jasonr@gnu.org>
20312
20313 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
20314
203152007-09-19 Michaël Cadilhac <michael@cadilhac.name>
20316
20317 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
20318 Fix a C warning regarding variable constness.
20319
20320 * xterm.c (handle_one_xevent): Fix a C warning.
20321
203222007-09-18 Jason Rumney <jasonr@gnu.org>
20323
20324 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
20325
203262007-09-17 Jan Djärv <jan.h.d@swipnet.se>
20327
20328 * gtkutil.c (gdpy_def): New variable.
20329 (xg_initialize): Initialize gdpy_def.
20330 (xg_display_close): If no other display exists, set gdpy_def to a
20331 new connection.
20332
203332007-09-16 Jan Djärv <jan.h.d@swipnet.se>
20334
20335 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
20336 when we have no file name for the icon.
20337 (xg_tool_bar_expose_callback): Remove.
20338 (xg_create_tool_bar): Don't connect expose signal to
20339 xg_tool_bar_expose_callback.
20340 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
20341
203422007-09-16 Andreas Schwab <schwab@suse.de>
20343
20344 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
20345 values instead of zapping them.
20346
203472007-09-14 Glenn Morris <rgm@gnu.org>
20348
20349 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
20350 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
20351 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
20352 scope and rename to omfib_buffer for clarity.
20353 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
20354
203552007-09-14 Kenichi Handa <handa@m17n.org>
20356
20357 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
20358
203592007-09-13 Jason Rumney <jasonr@gnu.org>
20360
20361 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
20362
20363 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
20364
20365 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
20366 (mac_term_init): Call here instead, passing rif.
20367
203682007-09-13 Glenn Morris <rgm@gnu.org>
20369
20370 * s/hpux.h: No longer define `static' as nothing.
20371
203722007-09-13 Johan Bockgård <bojohan@gnu.org>
20373
20374 * callint.c (Fcall_interactively): Remove unused var `fun'.
20375
203762007-09-12 Romain Francoise <romain@orebokech.com>
20377
20378 * window.c (prefer_window_split_horizontally, display_buffer):
20379 Revert 2007-09-08 change.
20380
203812007-09-12 Glenn Morris <rgm@gnu.org>
20382
20383 * alloca.c: Remove file.
20384 * Makefile.in (alloca): Do not undef.
20385 (allocaobj, alloca.o): Remove.
20386 (otherobj): Remove allocaobj.
20387 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
20388 * regex.c (C_ALLOCA): Remove all references and code that was only
20389 used when this was defined.
20390 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
20391 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
20392 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
20393
20394 * Makefile.in (SOURCES, unlock, relock): Delete.
20395
20396 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
20397 (menu_grab_callback): All uses changed.
20398
20399 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
20400 (x_reply_selection_request): All uses changed.
20401
204022007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
20403
20404 * lread.c (load_warn_old_style_backquotes): Change message to look
20405 better when it appears in the middle of byte-compiler messages.
20406
204072007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
20408
20409 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
20410
20411 * xterm.c (x_create_terminal): Add comment.
20412
20413 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
20414
204152007-09-10 Richard Stallman <rms@gnu.org>
20416
20417 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
20418
204192007-09-10 Michaël Cadilhac <michael@cadilhac.name>
20420
20421 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
20422 (DEFUN): Document `intspec', use it instead of `prompt'.
20423
20424 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
20425
20426 * data.c (Finteractive_form): If the interactive specification starts
20427 with a `(', use it as a Lisp form.
20428
20429 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
20430 name and file modes.
20431
20432 * callint.c (Fcall_interactively): Comment fixes.
20433
204342007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
20435
20436 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
20437 and compiled functions.
20438
204392007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
20440
20441 * window.c (prefer_window_split_horizontally): New variable.
20442 (display_buffer): Consider splitting window horizontally depending
20443 on prefer_window_split_horizontally.
20444
204452007-09-08 Eli Zaretskii <eliz@gnu.org>
20446
20447 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
20448
204492007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
20450
20451 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
20452
20453 * frame.c (x_set_frame_parameters): Check number is positive before
20454 using XFASTINT.
20455
20456 * window.c (freeze_window_start): Don't presume selected_window holds
20457 a window object.
20458 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
20459
204602007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
20461
20462 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
20463
204642007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
20465
20466 * window.c (Vsplit_window_preferred_function): New var.
20467 (Fdisplay_buffer): Use it.
20468 (syms_of_window): Export, and initialize it.
20469
204702007-09-06 Pixel <pixel@mandriva.com> (tiny change)
20471
20472 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
20473
204742007-09-06 Glenn Morris <rgm@gnu.org>
20475
20476 * gtkutil.c (menu_grab_callback) <cnt>:
20477 * xselect.c (x_reply_selection_request) <cnt>: Move static
20478 variable to file scope.
20479
204802007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
20481
20482 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
20483 consistent values of selected_frame and selected_window.
20484
204852007-09-04 Jason Rumney <jasonr@gnu.org>
20486
20487 * w32console.c (initialize_w32_display): Zero unused hooks.
20488
204892007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
20490
20491 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
20492 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
20493
204942007-09-04 Jason Rumney <jasonr@gnu.org>
20495
20496 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
20497 in w32console.c. Set up input. Remove XXX comments that have been
20498 confirmed as correct.
20499
20500 * s/ms-w32.h (MULTI_KBOARD): Define.
20501
20502 * w32console.c (one_and_only_w32cons): Remove.
20503 (initialize_w32_display): Take terminal argument.
20504
20505 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
20506 initialize_w32_display.
20507 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
20508
20509 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
20510
20511 * keyboard.c (discard_mouse_events): Discard it.
20512 (make_lispy_event): Translate it to a lisp event.
20513 (lispy_wheel_names): Add wheel-left and right events.
20514 (syms_of_keyboard): Enlarge wheel_syms.
20515
20516 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
20517 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
20518
20519 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
20520
20521 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
20522 from WM_MOUSEHWHEEL.
20523 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
20524
20525 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
20526 terminal.
20527
20528 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
20529 keyboard for the terminal.
20530
205312007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
20532
20533 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
20534 (Vresume_tty_hook): Rename from Vresume_tty_functions.
20535 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
20536 and resume-tty-function to resume-tty-hook.
20537 (Fsuspend_tty, Fresume_tty): Use new names.
20538
205392007-09-02 Jan Djärv <jan.h.d@swipnet.se>
20540
20541 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
20542 if it starts with "n:".
20543
205442007-08-31 Jan Djärv <jan.h.d@swipnet.se>
20545
20546 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
20547
205482007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
20549
20550 * frame.h:
20551 * frame.c (Qterm_environment_variable): Remove.
20552 (syms_of_frame): Don't init and staticpro it.
20553
20554 * callproc.c (getenv_internal): Remove special case for $TERM.
20555
20556 * callproc.c (Vinitial_environment): New variable.
20557 (set_initial_environment): Initialize it.
20558 (syms_of_callproc): Declare it.
20559 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
20560 TERM under which a process runs is never related to the TERM in which
20561 Emacs is running.
20562
205632007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
20564
20565 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
20566 * s/darwin.h: ... do it here.
20567
205682007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
20569
20570 * lisp.h (set_initial_environment): Rename from set_global_environment.
20571
20572 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
20573 removed by mistake on the multi-tty branch.
20574
20575 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
20576 (Fmodify_frame_parameters): Return a value.
20577
20578 * image.c (png_load): Comment-out var only used in commented-out code.
20579
20580 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
20581 before passing it to mark_object.
20582
20583 * xfaces.c (internal_resolve_face_name): Return a value.
20584 (internal_resolve_face_name, resolve_face_name_error): Comment out.
20585
20586 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
20587 (x_icon): Comment-out var only used in commented-out code.
20588
205892007-08-29 Romain Francoise <romain@orebokech.com>
20590
20591 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
20592 QUIT hasn't been provided.
20593
205942007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
20595
20596 * callproc.c (child_setup, getenv_internal): Use the
20597 display-environment-variable and term-environment-variable frame params.
20598 (set_initial_environment): Initialise Vprocess_environment.
20599
20600 * config.in: Disable multi-keyboard support on a mac.
20601
20602 * frame.c (Qterm_environment_variable)
20603 (Qdisplay_environment_variable): New variables.
20604 (syms_of_frame): Intern and staticpro them.
20605 (Fmake_terminal_frame): Disable output method test.
20606
20607 * frame.h: Declare them here.
20608
20609 * macfns.c (x_set_mouse_color): Get rif from the frame.
20610 (x_set_tool_bar_lines): Don't use updating_frame.
20611 (mac_window): Add 2 new parameters for consistency with other systems.
20612 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
20613 frame parameters following what is done in X11 and w32. Don't use
20614 FRAME_MAC_DISPLAY_INFO.
20615 (Fx_open_connection, start_hourglass): Remove window-system check.
20616 (x_create_tip_frame): Get the keyboard from the terminal.
20617
20618 * macmenu.c: Reorder includes.
20619 (Fx_popup_menu): Use terminal specific mouse_position_hook.
20620
20621 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
20622 terminal parameter.
20623 (x_clear_frame): Add a frame parameter.
20624 (note_mouse_movement): Get rif from the frame.
20625 (mac_term_init): Initialize the terminal.
20626 (mac_initialize): Make static and move terminal initialization ...
20627 (mac_create_terminal): ... to this new function.
20628
20629 * macterm.h (struct mac_display_info): Add terminal.
20630 (mac_initialize): Delete declaration.
20631
20632 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
20633
20634 * sysdep.c: Comment out text after #endif.
20635
20636 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
20637 is defined. Better initialize ttys in windows. Use terminal
20638 specific mouse_position_hook.
20639
20640 * termhooks.h (union display_info): Add mac_display_info.
20641
20642 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
20643 Set the default minibuffer frame, window_system and the rest of the
20644 frame parameters following what is done in X11.
20645
20646 * w32term.c (w32_initialize): Make static.
20647
20648 * xselect.c (x_handle_selection_clear): Only access
20649 terminal->kboard when MULTI_KBOARD is defined.
20650
20651 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
20652 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
20653
206542007-08-29 Jason Rumney <jasonr@gnu.org>
20655
20656 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
20657 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
20658
20659 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
20660 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
20661
20662 * keyboard.c (restore_kboard_configuration): Only define when
20663 MULTI_KBOARD defined.
20664
20665 * makefile.w32-in: Update dependancies from Makefile.in.
20666 (OBJ1): Add terminal.$(O)
20667
20668 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
20669 Don't define function body.
20670 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
20671
20672 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
20673
20674 * w32.c (request_sigio, unrequest_sigio): Remove.
20675
20676 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
20677 (w32con_clear_frame, w32con_clear_end_of_line)
20678 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
20679 (w32con_delete_glyphs, w32con_set_terminal_window)
20680 (scroll_line, w32_sys_ring_bell): Add frame arg.
20681 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
20682 Add terminal arg.
20683 (PICK_FRAME): Remove.
20684 (w32con_write_glyphs): Use frame specific terminal coding.
20685 (one_and_only_w32cons): New global variable.
20686 (initialize_w32_display): Use it for storing hooks.
20687 (create_w32cons_output): New function.
20688
20689 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
20690 arg a frame.
20691
20692 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
20693 Set window_system.
20694 (x_set_tool_bar_lines): Don't use updating_frame.
20695 (Fx_create_frame): Set terminal and ref count.
20696 (Fx_open_connection): Remove window-system check.
20697
20698 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
20699
20700 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
20701 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
20702 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
20703 Add frame arg.
20704 (x_delete_terminal, w32_create_terminal): New functions.
20705 (w32_term_init): Create a terminal.
20706 (w32_initialize): Move terminal specific initialization to
20707 w32_create_terminal.
20708
20709 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
20710 (w32_clear_rect, w32_clear_area): Use background from frame.
20711 (w32_display_info): Add terminal.
20712 (w32_sys_ring_bell, x_delete_display): Declare here.
20713
20714 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
20715
20716 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
20717
207182007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
20719
20720 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
20721 Fix get_named_tty calls for the controlling tty.
20722
207232007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
20724
194d44e7 20725 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
aac0c6e3
MR
20726
207272007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
20728
20729 * term.c (tty_insert_glyphs): Add missing first parameter.
20730
207312007-08-29 Károly Lőrentey <karoly@lorentey.hu>
20732
20733 * buffer.c (Fbuffer_list, Fbury_buffer):
20734 Take frame->buried_buffer_list into account.
20735
20736 * cm.c (current_tty): New variable, for cmputc().
20737 (cmputc): Use it.
20738 (cmcheckmagic): Add tty parameter, look up terminal streams there.
20739 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
20740 (cmgoto): Add tty parameter. Pass it on to calccost().
20741 Use emacs_tputs() instead of tputs().
20742
20743 * cm.h (emacs_tputs): New macro to set current_tty, and then call
20744 tputs().
20745 (current_tty): New variable, for cmputc().
20746 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
20747
20748 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
20749 (internal_condition_case, internal_condition_case_1)
20750 (internal_condition_case_2): Don't abort when x_catching_errors.
20751
20752 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
20753 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
20754 prevent crashes caused by bogus longjmps in read_char.
20755
20756 * keymap.h (Fset_keymap_parent): Add EXFUN.
20757
20758 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
20759 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
20760 Remove redundant definition.
20761
20762 * macfns.c (x_set_mouse_color, x_make_gc):
20763 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20764
20765 * w32term.c (x_free_frame_resources):
20766 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20767 (w32_initialize): Use the accessor macros for terminal characteristics.
20768
20769 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
20770 Use the accessor macros for terminal characteristics.
20771 * msdos.c (internal_terminal_init): Use the accessor macros for
20772 terminal characteristics.
20773 (ScreenVisualBell, internal_terminal_init):
20774 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20775
20776 * termopts.h (no_redraw_on_reenter): Declare.
20777
20778 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
20779 (mark_terminals, mark_ttys): Declare.
20780 (Fgarbage_collect): Call them.
20781 (mark_object): Mark buried_buffer_list.
20782
20783 * prefix-args.c: Include stdlib.h for exit.
20784
20785 * syssignal.h: Add comment.
20786
20787 * indent.c: Include stdio.h.
20788
20789 * window.h (Vinitial_window_system): Declare.
20790 (Vwindow_system): Delete declaration.
20791
20792 * fontset.c (Finternal_char_font): Use FRAME_RIF.
20793
20794 * image.c (lookup_image): Don't initialize `c' until the xasserts
20795 have been run.
20796
20797 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
20798 FRAME_FOREGROUND_PIXEL.
20799
20800 * print.c (print_preprocess): Don't lose print_depth levels while
20801 iterating.
20802
20803 * widget.c (update_from_various_frame_slots):
20804 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20805
20806 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
20807 frames.
20808 (window_internal_height): Remove bogus make_number call.
20809 (init_window_once): Call make_terminal_frame with two zero parameters.
20810
20811 * fileio.c (Fread_file_name): Update comment.
20812
20813 * callint.c (Fcall_interactively):
20814 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
20815 Make sure it is correctly unwound.
20816
20817 * xsmfns.c (x_session_close): New function.
20818
20819 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
20820 Delete declarations.
20821
20822 * xterm.h: Remove declaration for x_fully_uncatch_errors.
20823 (x_output): Remove background_pixel and foreground_pixel fields.
20824 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
20825 (x_delete_device, x_session_close): Declare.
20826
20827 * lread.c: Include setjmp.h. Update declaration of `read_char'.
20828 (read_filtered_event): Call `read_char' with a local
20829 `wrong_kboard_jmpbuf'.
20830
20831 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
20832 Don't call single_kboard_state. Use FRAME_RIF.
20833
20834 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
20835 systems.
20836
20837 * lisp.h (set_process_environment): Rename to `set_global_environment'.
20838 (Fframe_with_environment, Fset_input_meta_mode)
20839 (Fset_quit_char): EXFUN.
20840 (x_create_device, tty_output, terminal, tty_display_info): Declare.
20841 (init_sys_modes, reset_sys_modes): Update prototypes.
20842 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
20843
20844 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
20845 Vlocal_key_translation_map, and Vkeyboard_translate_table.
20846 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
20847 Delete declarations.
20848 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
20849 (temporarily_switch_to_single_kboard, tty_read_avail_input):
20850 New declarations.
20851
20852 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
20853 already does that during init_display(). Call syms_of_keymap
20854 before syms_of_keyboard. Call `syms_of_terminal'.
20855 Call set_initial_environment, not set_process_environment.
20856 (shut_down_emacs): Call reset_all_sys_modes() instead of
20857 reset_sys_modes().
20858
20859 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
20860 (internal_resolve_face_name, resolve_face_name_error): New functions.
20861 (resolve_face_name): Protect against loops and errors thrown by Fget.
20862 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
20863 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
20864
20865 * scroll.c: Replace CURTTY() with local variables throughout the
20866 file (where applicable).
20867 (calculate_scrolling, calculate_direct_scrolling)
20868 (scrolling_1, scroll_cost): Use the accessor macros for terminal
20869 characteristics.
20870
20871 * keymap.c (Vfunction_key_map): Remove.
20872 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
20873 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
20874 (Vkey_translation_map): Remove.
20875 (syms_of_keymap): Remove DEFVAR for key-translation-map.
20876 (Fdescribe_buffer_bindings)
20877 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
20878 Update for terminal-local key-translation-map.
20879
20880 * Makefile.in (callproc.o): Update dependencies.
20881 (lisp, shortlisp): Add termdev.elc.
20882 (obj): Add terminal.o.
20883 (terminal.o): Add dependencies.
20884 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
20885 (data.o, fns.o): Add termhooks.h dependency.
20886 (SOME_MACHINE_LISP): Add dnd.elc.
20887 (minibuf.o): Fix typo.
20888 Update dependencies.
20889
20890 * data.c (do_symval_forwarding, store_symval_forwarding)
20891 (find_symbol_value): Use the selected frame's keyboard, not
20892 current_kboard.
20893
20894 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
20895 Vwindow_system.
20896
20897 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
20898 Fmenu_bar_open.
20899 (syms_of_xmenu): Update defsubr.
20900 (mouse_position_for_popup, Fx_popup_menu)
20901 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
20902 (set_frame_menubar, free_frame_menubar)
b97439ce 20903 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
20904 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
20905 an X frame.
20906
20907 * xselect.c (x_own_selection): Abort if not an X frame.
20908 (some_frame_on_display): Check if it is an X frame.
20909 (x_handle_selection_clear): Deal with MULTI_KBOARD.
20910
20911 * coding.c: Include frame.h and termhooks.h.
20912 (terminal_coding, keyboard_coding): Delete.
20913 (Fset_terminal_coding_system_internal)
20914 (Fset_keyboard_coding_system_internal)
20915 (Fkeyboard_coding_system)
20916 (Fterminal_coding_system): Add a terminal parameter.
20917 Get terminal_coding from the terminal.
20918 (init_coding_once): Don't call setup_coding_system here.
20919
20920 * dispextern.h (set_scroll_region, turn_off_insert)
20921 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
20922 (tty_clear_end_of_line, tty_setup_colors)
20923 (delete_tty, updating_frame)
20924 (produce_special_glyphs, produce_glyphs, write_glyphs)
20925 (insert_glyphs): Remove.
20926 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
20927 (tty_turn_off_highlight, get_tty_size): Add declaration.
20928 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
20929
20930 * frame.h (enum output_method): Add output_initial.
20931 (struct x_output): Delete.
20932 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
20933 Access foreground_pixel and background_pixel directly from the frame.
20934 (tty_display): Delete.
20935 (struct frame): Add buried_buffer_list, foreground_pixel,
20936 background_pixel and terminal. Delete kboard.
20937 (union output_data): Add tty.
20938 (FRAME_KBOARD): Get the kboard from the terminal.
20939 (FRAME_INITIAL_P): New macro.
20940 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
20941 (Qterm_environment_variable, Qdisplay_environment_variable)
20942 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
20943 New declarations.
20944
20945 * termchar.h (tty_output, tty_display_info): New structures.
20946 (tty_list): Declare.
20947 (FRAME_TTY, CURTTY): New macros.
20948 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
20949 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
20950 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
20951 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
20952
20953 * callproc.c: Include frame.h and termhooks.h, for terminal
20954 parameters.
20955 (add_env): New function.
20956 (child_setup): Use it.
20957 (child_setup, getenv_internal): Handle the new Vprocess_environment.
20958 (getenv_internal): Fix get_terminal_param call.
20959 (Fgetenv_internal, egetenv): Update doc.
20960 (syms_of_callproc): Initialize Vprocess_environment to nil.
20961 Register and initialize them. Remove obsolete defvars. Update doc
20962 strings.
20963 (child_setup): Handle Vlocal_environment_variables.
20964 (getenv_internal): Add terminal parameter.
20965 Handle Vlocal_environment_variables.
20966 (Fgetenv_internal): Add terminal parameter.
20967 (child_setup, getenv_internal, Fgetenv_internal): Store the local
20968 environment in a frame (not terminal) parameter. Update doc strings.
20969 (set_initial_environment): Rename from set_global_environment.
20970 Store Emacs environment in initial frame parameter.
20971
20972 * xdisp.c (redisplay_internal): Update references to
20973 `previous_terminal_frame'.
20974 (display_mode_line, Fformat_mode_line): Replace calls to
20975 `push_frame_kboard' with `push_kboard'.
20976 (get_glyph_string_clip_rects): Add extra parentheses and
20977 braces to prevent compiler warnings.
20978 (calc_pixel_width_or_height): Add xassert to check that the
20979 frame is alive. Don't call `lookup_image' on a termcap frame.
20980 (message2_nolog, message3_nolog, redisplay_internal)
20981 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
20982 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
20983 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
20984 (Fx_display_pixel_width, Fx_display_pixel_height)
20985 (Fx_display_planes, Fx_display_color_cells)
20986 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
20987 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
20988 (Fx_display_backing_store, Fx_display_visual_class)
20989 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
20990 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
20991
20992 * xfns.c (x_set_foreground_color x_set_background_color)
20993 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
20994 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20995 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
20996 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
20997 terminal that is being deleted.
20998 (Fx_create_frame): Use `store_frame_param' to set `window-system'
20999 frame parameter, and make sure it overrides any user-supplied setting.
21000 (Fx_close_connection, Fx_synchronize): Unify argument names with
21001 the rest of the DEFUNs.
21002
21003 * dispnew.c (Fsend_string_to_terminal): Update call to
21004 `get_tty_terminal'.
21005 (Fredraw_frame, Fsend_string_to_terminal)
21006 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
21007 FRAME_TERMCAP_P and FRAME_TTY.
21008 (window_change_signal): Don't believe width/height values that are
21009 impossibly small.
21010 (Vinitial_window_system): Rename from Vwindow_system.
21011 (termscript, Wcm, rif): Delete.
21012
21013 * termhooks.h (struct terminal): New struct containing the
21014 previously global text display hooks and new members NAME,
21015 DELETED and PARAM_ALIST.
21016 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
21017 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
21018 (FRAME_RIF): New macros.
21019 (get_terminal_param, get_device): New declarations.
21020 (termscript): Delete declaration.
21021
21022 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
21023 (XTflash, x_free_frame_resources, x_scroll_bar_create)
21024 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
21025 FRAME_FOREGROUND_PIXEL.
21026 (x_fully_uncatch_errors): Disable definition.
21027 (x_scroll_bar_expose): Fix reference to foreground pixel.
21028 (XTread_socket): Disable loop on all X displays.
21029 (x_delete_terminal): Don't set terminal->deleted and let
21030 delete_terminal delete the frames on the terminal.
21031 (x_delete_display): Doc update to reflect changes in
21032 delete_terminal.
21033 (x_display_info) <terminal>: Move member earlier in the struct.
21034 (deleting_tty): Remove old variable.
21035 (Fsuspend_tty): Call clear_tty_hooks.
21036 (Fresume_tty, init_tty): Call set_tty_hooks.
21037 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
21038 errors on X frames.
21039 (x_catch_errors_unwind): Abort if x_error_message is NULL.
21040 (handle_one_xevent): Initialize `f' to NULL.
21041 (x_delete_terminal, x_create_terminal): New functions.
21042 (XTset_terminal_modes, XTreset_terminal_modes)
21043 (XTread_socket, x_connection_closed, x_term_init)
21044 (x_term_init, x_delete_display): Add terminal parameter.
21045 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
21046 X connections.
21047
21048 * frame.c: Include termchar.h.
21049 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
21050 (Qwindow_system, Qenvironment, Qterm_environment_variable)
21051 (Qdisplay_environment_variable): New vars.
21052 (Fframep): Deal with output_initial.
21053 (Fframe-live-p): Doc fix.
21054 (Fwindow-system): New function.
21055 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
21056 (make_terminal_frame): Don't create frames on a terminal that is
21057 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21058 (store_frame_param): Check for found_for_frame before calling XFRAME.
21059 (Fmake_terminal_frame): Handle NULL tty names correctly.
21060 (syms_of_frame): Enhance doc string of `default-frame-alist'.
21061 (Fdelete_frame): Remove unused variable `count'. Don't allow other
21062 frames to refer to a deleted frame in their 'environment parameter.
21063 (Fframe_with_environment): New function.
21064 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
21065 (get_future_frame_param): New function.
21066 (Fmake_terminal_frame): Use it.
21067 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
21068
21069 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
21070 * sysdep.c (reset_sys_modes): Update for renames.
21071
21072 * keyboard.c (tty_read_avail_input): New function.
21073 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
21074 (syms_of_keyboard): Defsubr them.
21075 (Fset_input_meta_mode, Fset_quit_char): New functions.
21076 (Fset_input_mode): Split to above functions.
21077 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
21078 parameter. Use it in call to `read_char'.
21079 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
21080 Set wrong_kboard_jmpbuf correctly in recursive calls.
21081 Use current_kboard to access Vkeyboard_translate_table.
21082 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
21083 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
21084 Update longjmp invocations. Remember the original current_kboard,
21085 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
21086 changes it. Comment out unnecessary calls to
21087 `record_single_kboard_state' and `any_kboard_state'.
21088 Update recursive calls.
21089 (wrong_kboard_jmpbuf): Remove global variable.
21090 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
21091 Handle deleted interrupted_kboards correctly; that is a legal
21092 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
21093 and read_char calls. Abort if interrupted_kboard died in read_char.
21094 (any_kboard_state, single_kboard_state)
21095 (push_frame_kboard): Remove function.
21096 (pop_kboard): Switch out of single_kboard mode if the kboard has
21097 been deleted. Remove unused variable. Help debugging by not
21098 changing current_kboard unnecessarily. Set current_kboard to the
21099 kboard of the selected frame when the stored kboard object has
21100 been deleted before pop_kboard.
21101 (temporarily_switch_to_single_kboard): Change first parameter to a
21102 frame pointer. Throw an error when caller wants to change kboards
21103 while in single_kboard mode. Don't push_kboard if we weren't in
21104 single kboard state. Don't pop_kboard if we popped into any
21105 kboard state.
21106 (restore_kboard_configuration): Abort if pop_kboard changed the
21107 kboard in single_kboard mode. Call pop_kboard only after setting
21108 up single_kboard mode.
21109 (Frecursive_edit): Switch to single_kboard mode only in nested
21110 command loops.
21111 (cmd_error, command_loop, command_loop_1, timer_check):
21112 Comment out unnecessary call to `any_kboard_state' and
21113 `record_single_kboard_state'.
21114 (delete_kboard): Exit single_kboard mode if we have just deleted
21115 that kboard. Use FRAME_KBOARD.
21116 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
21117 `fatal_error_signal'.
21118 (record_single_kboard_state): Don't push_kboard if we weren't in
21119 single kboard state. Don't pop_kboard if we popped into any
21120 kboard state.
21121 (push_frame_kboard): Rename to push_kboard.
21122 (kbd_buffer_get_event): Use FRAME_TERMINAL.
21123 (read_avail_input): Read input from all terminals.
21124 (mark_kboards): Also mark Vkeyboard_translate_table.
21125 (kbd_buffer_store_event_hold): Simplify condition.
21126 (read_key_sequence): Reinitialize fkey and keytran at each replay.
21127 (Vkeyboard_translate_table): Move to struct kboard.
21128 (init_kboard): Initialize Vkeyboard_translate_table.
21129 (syms_of_keyboard): Use DEFVAR_KBOARD to define
21130 Vkeyboard_translate_table. Update doc strings. Update docs of
21131 local-function-key-map and function-key-map.
21132
21133 * terminal.c: New file.
21134
21135 * term.c: Include errno.h.
21136 (Vring_bell_function, device_list, initial_device)
21137 (next_device_id, ring_bell, update_begin, update_end)
21138 (set_terminal_window, cursor_to, raw_cursor_to)
21139 (clear_to_end, clear_frame, clear_end_of_line)
21140 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
21141 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
21142 (syms_of_term): Move their initialization to terminal.c.
21143 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
21144 (Ftty_display_color_cells)
21145 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
21146 (clear_tty_hooks, set_tty_hooks)
21147 (init_tty, maybe_fatal): New functions.
21148 (Ftty_type): Return nil if terminal is not on a tty instead of
21149 throwing an error. Doc update.
21150 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
21151 Doc update. Initialize new subrs and variables.
21152 (delete_tty): Use terminal->deleted.
21153 (tty_set_terminal_modes): Rename from set_terminal_modes.
21154 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
21155 (set_scroll_region): Rename to `tty_set_scroll_region'.
21156 (turn_on_insert): Rename to `tty_turn_on_insert'.
21157 (turn_off_insert): Rename to `tty_turn_off_insert'.
21158 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
21159 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
21160 (toggle_highligh): Rename to `tty_toggle_highlight'.
21161 (background_highlight): Rename to `tty_background_highlight'.
21162 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
21163 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
21164 (tty_set_scroll_region, tty_background_highlight)
21165 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
21166 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
21167 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
21168 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
21169 Add static modifier.
21170 (tty_reset_terminal_modes, tty_set_terminal_window)
21171 (tty_set_scroll_region, tty_background_highlight)
21172 (tty_highlight_if_desired, tty_cursor_to)
21173 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
21174 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
21175 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
21176 renames.
21177
211782007-08-28 Jan Djärv <jan.h.d@swipnet.se>
21179
21180 * keyboard.c: Qrtl is new.
21181 (parse_tool_bar_item): Handle :rtl keyword.
21182 (syms_of_keyboard): Intern :rtl keyword.
21183
21184 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
21185
21186 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
21187 so no Lisp code is executed.
21188 (file_for_image, find_rtl_image): New functions.
21189 (xg_get_image_for_pixmap): Use file_for_image.
21190 (update_frame_tool_bar): If direction is RTL, use RTL image if
21191 defined. Use Gtk stock images if defined.
21192
211932007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21194
21195 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
21196 for nonexistent or zero-width glyph in composition glyph.
21197
211982007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
21199
21200 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
21201
21202 * xdisp.c (Finvisible_p): New function.
21203 (syms_of_xdisp): defsubr it.
21204
212052007-08-24 Juanma Barranquero <lekktu@gmail.com>
21206
21207 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
21208 Doc fixes.
21209
212102007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21211
21212 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
21213
212142007-08-24 Martin Rudalics <rudalics@gmx.at>
21215
21216 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
21217 whether decoding has modified buffer contents.
21218
212192007-08-24 Jason Rumney <jasonr@gnu.org>
21220
21221 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
21222 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
21223 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
21224 (init_svg_functions) [HAVE_NTGUI]: New function.
21225 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
21226 (svg_load_image): Use them.
21227 (svg_load_image) [HAVE_NTGUI]: Implement background.
21228
212292007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21230
21231 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
21232 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
21233 (LIBX): Remove @RSVG_LIBS@.
21234 (LIBES): Add $(RSVG_LIBS).
21235
21236 * image.c (svg_load_image): Blend with specified background if exists.
21237 Use IMAGE_BACKGROUND. Add Mac OS Support.
21238
21239 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
21240 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
21241 Remove macros.
21242 [MAC_OSX] (socket_callback): Do nothing.
21243 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
21244 ReceiveNextEvent.
21245 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
21246 socket_callback.
21247 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
21248
212492007-08-22 Glenn Morris <rgm@gnu.org>
21250
21251 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
21252
212532007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
21254
21255 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
21256
21257 * image.c: Add support for SVG images. Some additional comments
21258 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
21259 (svg_image_p): New function to test for SVG image.
21260 (svg_load): New function to load SVG image.
21261 (svg_load_image): New function, helper for svg_load.
21262 (Qsvg): New Lisp_object.
21263 (svg_keyword_index): New enum.
21264 (svg_format): New static `image_keyword' struct.
21265 (svg_type): New static `image_type' struct.
21266 (librsvg/rsvg.h): Include it.
21267
212682007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
21269
21270 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
21271
212722007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
21273
21274 * lread.c (Qold_style_backquotes): New var.
21275 (syms_of_lread): Init and staticpro it.
21276 (load_warn_old_style_backquotes): New fun.
21277 (Fload): Use them to warn about old style backquotes.
21278 (end_of_file_error, Fload): Remove unused vars.
21279
21280 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
21281
21282 * lread.c (Vold_style_backquotes): New var.
21283 (syms_of_lread): Init and export it to Elisp.
21284 (read1): Set it when we find an old-style (back)quote.
21285
212862007-08-22 Jason Rumney <jasonr@gnu.org>
21287
21288 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
21289
212902007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
21291
21292 * puresize.h (BASE_PURESIZE): Increase to 1140000.
21293
212942007-08-19 Richard Stallman <rms@gnu.org>
21295
21296 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
21297
212982007-08-19 Andreas Schwab <schwab@suse.de>
21299
21300 * alloc.c (pure): Round PURESIZE up.
21301
213022007-08-17 Jan Djärv <jan.h.d@swipnet.se>
21303
21304 * xterm.c (handle_one_xevent): Remove check that mouse click is in
21305 active frame.
21306
213072007-08-16 Richard Stallman <rms@gnu.org>
21308
21309 * eval.c (Fcommandp): Add parens to clarify.
21310
21311 * minibuf.c (Fall_completions): Use enum for type of table.
21312
21313 * emacs.c (USAGE2): Improve text.
21314
213152007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
21316
21317 * term.c (tty_default_color_capabilities): Declare static
21318 variables in file scope, to avoid HPUX compiler problem.
21319
213202007-08-13 Jan Djärv <jan.h.d@swipnet.se>
21321
21322 * gtkutil.c (update_frame_tool_bar): Use -1 as index
21323 to gtk_toolbar_insert.
21324
213252007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
21326
21327 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
21328
21329 * insdel.c (reset_var_on_error): New fun.
21330 (signal_before_change, signal_after_change):
21331 Use it to reset (after|before)-change-functions to nil in case of error.
21332 Bind inhibit-modification-hooks to t.
21333 Don't bind (after|before)-change-functions to nil while they run.
21334
213352007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21336
21337 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
21338 filling pixmap with stippled background.
21339
213402007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21341
21342 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
21343 Don't use invisible frame as parent window for repositioning.
21344
213452007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
21346
21347 * print.c (new_backquote_output): Rename from old_backquote_output.
21348 (print): Inverse its logic (according to its name) so as to match the
21349 behavior of new_backquote_flag in lread.c.
21350
213512007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21352
21353 * gmalloc.c (posix_memalign): New function.
21354
21355 * macterm.c (frame_highlight, frame_unhighlight): Don't call
21356 ActivateControl/DeactivateControl here.
21357 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
21358 frame-notice-user-settings is non-nil.
21359 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
21360 for kEventParamFMFontStyle.
21361 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
21362 mac_pass_command_to_system and mac_pass_control_to_system here.
21363 (XTread_socket): Call ActivateControl/DeactivateControl here.
21364 (XTread_socket) [TARGET_API_MAC_CARBON]:
21365 Check mac_pass_command_to_system and mac_pass_control_to_system here.
21366 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
21367 for window repositioning.
21368
213692007-08-08 Glenn Morris <rgm@gnu.org>
21370
21371 * Replace `iff' in doc-strings and comments.
21372
213732007-08-07 Chong Yidong <cyd@stupidchicken.com>
21374
21375 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
21376
213772007-08-07 Martin Rudalics <rudalics@gmx.at>
21378
21379 * fileio.c (Finsert_file_contents): Run format-decode and
21380 after_insert_file_functions on entire buffer when REPLACE is
21381 non-nil and inhibit modification_hooks and point_motion_hooks.
21382 For consistency, run after_insert_file_functions iff something
21383 got inserted. Move signal_after_change and update_compositions
21384 after code running after_insert_file_functions. Make sure that
21385 undo_list doesn't record intermediate steps of the decoding process.
21386
213872007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21388
21389 * emacs.c (main)
21390 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
21391 Call malloc_enable_thread on interactive startup.
21392
21393 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
21394 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
21395 [USE_PTHREAD]: Conditionalize with it.
21396 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
21397 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
21398 New functions.
21399
214002007-08-06 Chong Yidong <cyd@stupidchicken.com>
21401
21402 * xdisp.c (redisplay_window): When restoring original buffer
21403 position, make sure it is still valid.
21404
21405 * image.c (png_load): Ignore png-supplied background color.
21406
214072007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21408
21409 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
21410 Use kCFAbsoluteTimeIntervalSince1970.
21411
21412 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
21413 New variable.
21414 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
21415 event loop should be quit.
21416 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
21417 Quit dialog event loop if quit_dialog_event_loop is set.
21418
21419 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
21420 (Selection): New typedef. Use instead of ScrapRef.
21421 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
21422 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
21423 (mac_clear_selection): Rename from clear_scrap.
21424 (get_flavor_type_from_symbol): New argument SEL and subsume function of
21425 scrap_has_target_type. All uses changed.
21426 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
21427 (mac_selection_has_target_p): New functions.
21428 (mac_put_selection_value): Rename from put_scrap_string.
21429 (mac_get_selection_value): Rename from get_scrap_string.
21430 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
21431 (put_scrap_private_timestamp, scrap_has_target_type)
21432 (get_scrap_private_timestamp): Remove functions.
21433 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
21434 (x_own_selection, x_get_local_selection):
21435 Use mac_valid_selection_value_p.
21436 (x_own_selection): Don't use put_scrap_private_timestamp.
21437 Record OWNERSHIP-INFO into Vselection_alist instead.
21438 (x_get_local_selection): Don't check type if request is local.
21439 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
21440 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
21441
214422007-08-04 Jan Djärv <jan.h.d@swipnet.se>
21443
21444 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
21445 add comment explaining why.
21446
214472007-08-03 Richard Stallman <rms@gnu.org>
21448
21449 * fileio.c (Fvisited_file_modtime): Use make_time.
21450
214512007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
21452
21453 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
21454 build.
21455
214562007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
21457
21458 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
21459
214602007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
21461
21462 * puresize.h (BASE_PURESIZE): Increase to 1130000.
21463
214642007-07-30 Richard Stallman <rms@gnu.org>
21465
21466 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
21467
214682007-07-29 Jan Djärv <jan.h.d@swipnet.se>
21469
21470 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
21471
214722007-07-28 Nick Roberts <nickrob@snap.net.nz>
21473
21474 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
21475 remote default-directory.
21476
21477 * buffer.c (mode-line-format): Update doc string.
21478
214792007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21480
21481 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
21482 scroll bar gap.
21483 (x_scroll_bar_create): Set bar->fringe_extended_p.
21484 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
21485 on frame edge. Check fringe background extension. Don't clear
21486 extended fringe background area.
21487
21488 * w32term.h (struct scroll_bar): New member fringe_extended_p.
21489 (w32_fill_area): Enclose multiple statements with do ... while (0).
21490
21491 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
21492 Extend fringe background to scroll bar gap.
21493 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
21494 Set bar->fringe_extended_p.
21495 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
21496 Put leftmost/rightmost scroll bars on frame edge. Check fringe
21497 background extension. Don't clear extended fringe background area.
21498
21499 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
21500 New member fringe_extended_p.
21501
215022007-07-25 Glenn Morris <rgm@gnu.org>
21503
21504 * Relicense all FSF files to GPLv3 or later.
21505
21506 * COPYING: Switch to GPLv3.
21507
215082007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
21509
21510 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
21511
21512 * data.c (Finteractive_form): Check for the presence of an
21513 `interactive-form' symbol property more thoroughly.
21514
21515 * data.c (Finteractive_form): Use an `interactive-form' property if
21516 present, analogous to the function-documentation property.
21517
215182007-07-24 Jason Rumney <jasonr@gnu.org>
21519
21520 * w32fns.c (x_real_positions): Get real position from OS instead of
21521 calculating it.
21522
215232007-07-23 Jason Rumney <jasonr@gnu.org>
21524
21525 * filelock.c (current_lock_owner): Allow for @ sign in username.
21526
215272007-07-22 Nick Roberts <nickrob@snap.net.nz>
21528
21529 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
21530 remote default-directory.
21531
21532 * buffer.c (mode-line-format): Describe above case in doc string.
21533
215342007-07-20 Eli Zaretskii <eliz@gnu.org>
21535
21536 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
21537 Define if not defined.
21538
215392007-07-18 Jason Rumney <jasonr@gnu.org>
21540
21541 * w32proc.c (w32_executable_type): Handle 64 bit executables.
21542
215432007-07-18 Richard Stallman <rms@gnu.org>
21544
21545 * data.c (Fsetq_default): Doc fix.
21546
21547 * eval.c (Fsetq): Doc fix.
21548
215492007-07-18 Juanma Barranquero <lekktu@gmail.com>
21550
21551 * coding.c (Ffind_operation_coding_system):
21552 * eval.c (For, Fand): Doc fixes.
21553 Reported by Johan Bockgård.
21554
215552007-07-18 Jan Djärv <jan.h.d@swipnet.se>
21556
21557 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
21558
21559 * xterm.h: Declare x_ewmh_activate_frame.
21560
21561 * xterm.c (x_ewmh_activate_frame): New function.
21562 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
21563
215642007-07-17 Martin Rudalics <rudalics@gmx.at>
21565
21566 * window.c (Fdisplay_buffer): If largest or LRU window is the
21567 only window, split it even if it is not eligible for splitting.
21568 This restores the original behavior broken by the 2007-07-15
21569 change.
21570
215712007-07-17 Glenn Morris <rgm@gnu.org>
21572
21573 * abbrev.c (abbrev_check_chars): New function.
21574 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
21575 Call abbrev_check_chars to check abbrev characters are word
21576 constituents. Doc fix.
21577
215782007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
21579
21580 * process.c (Fstart_process, Fmake_network_process)
21581 (read_process_output): Fix up last changes.
21582
215832007-07-16 Eli Zaretskii <eliz@gnu.org>
21584
21585 * makefile.w32-in (clean): Don't delete *~.
21586
215872007-07-16 Andreas Schwab <schwab@suse.de>
21588
21589 * window.c (Fdisplay_buffer): Use NILP.
21590 (Fset_window_scroll_bars): Likewise.
21591
215922007-07-15 Martin Rudalics <rudalics@gmx.at>
21593
21594 * window.c (window_min_size_2): New function.
21595 (window_min_size_1, size_window, Fdisplay_buffer)
21596 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
21597 windows without mode- or header-lines when window-min-height is
21598 too small.
21599 (size_window): Reset nodelete_p after testing it, following an
21600 earlier note by Kim F. Storm.
21601 (display_buffer): Do not set split_height_threshold to twice the
21602 value of window_min_height to avoid changing the value of a
21603 customizable variable. Rather explicitly check whether the
21604 height of the window that shall be splitted is at least as large
21605 as split_height_threshold.
21606 (Fwindow_full_width_p): New defun.
21607 (syms_of_window): Defsubr it.
21608
21609 * window.h: Add EXFUN for Fwindow_full_width_p.
21610
216112007-07-14 Jason Rumney <jasonr@gnu.org>
21612
21613 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
21614
216152007-07-14 Richard Stallman <rms@gnu.org>
21616
21617 * eval.c (maybe_call_debugger): New function.
21618 (find_handler_clause): Use maybe_call_debugger.
21619 Call it when the handler says `debug'.
21620 Eliminate DEBUGGER_VALUE_PTR.
21621 (Fsignal): Eliminate debugger_value.
21622 (Qdebug): New variable.
21623 (syms_of_eval): Initialize it.
21624
216252007-07-14 Juanma Barranquero <lekktu@gmail.com>
21626
21627 * eval.c (Fprogn):
21628 * keyboard.c (Ftrack_mouse):
21629 * print.c (Fwith_output_to_temp_buffer):
21630 * window.c (Fsave_window_excursion): Doc fix.
21631
216322007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
21633
21634 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
21635
216362007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
21637
21638 * process.h (struct Lisp_Process): Turn slots infd, outfd,
21639 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
21640 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
21641 read_output_delay, and read_output_skip from Lisp_Objects to ints.
21642 Remove unused encoding_carryover.
21643 * process.c: Adjust all functions accordingly.
21644
216452007-07-12 Richard Stallman <rms@gnu.org>
21646
21647 * term.c: Include unistd.h only if HAVE_UNISTD_H.
21648
216492007-07-11 Jason Rumney <jasonr@gnu.org>
21650
21651 * makefile.w32-in (LIBS): Include OLE32.
21652
21653 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
21654 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
21655
216562007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
21657
21658 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
21659 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
21660 from a Lisp_Object into a bare pointer.
21661 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
21662 Adjust the code correspondingly.
21663
21664 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
21665
21666 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
21667 (term_show_mouse_face): Remove unused var `j'.
21668 (handle_one_term_event): Remove unused vars `i' and `j'.
21669 Don't cast return value of ttyname since it's not necessary.
21670
216712007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
21672
21673 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
21674 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
21675
21676 * fns.c (map_char_table): Use an array of int for `indices' rather than
21677 an array of Lisp_Objects (which are only ever integers anyway).
21678 (Fmap_char_table): Update caller.
21679 * lisp.h: Update prototype.
21680 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
21681 * fontset.c (Ffontset_info):
21682 * casetab.c (set_case_table): Update callers.
21683
21684 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
21685
21686 * keymap.c (struct accessible_keymaps_data)
21687 (struct where_is_internal_data): New structures.
21688 (accessible_keymaps_1, where_is_internal_1): Use them to change
21689 interface to adhere to the one used by map_keymap.
21690 (Faccessible_keymaps, where_is_internal): Use map_keymap.
21691 (accessible_keymaps_char_table, where_is_internal_2): Remove.
21692
21693 * keymap.h (map_keymap_function_t): More informative prototype.
21694
216952007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
21696
21697 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
21698 (looking_at_1): Don't change search_regs and last_thing_searched
21699 if `inhibit-changing-match-data' is non-nil.
21700 (string_match_1, search_buffer, set_search_regs): Likewise.
21701 (syms_of_search): Add Lisp level definition for
21702 `inhibit-changing-match-data' and set it to nil.
21703 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
21704 start and end of the match, instead of using values in search_regs.
21705
217062007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
21707
21708 * minibuf.c (Fcompleting_read): New value `confirm-only'
21709 for `require-match'.
21710
217112007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
21712
21713 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
21714 part of the 2007-06-27 change to syms_of_fileio.
21715
217162007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21717
21718 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
21719 Check WINDOWP before using XWINDOW. Consolidate return statements.
21720
217212007-06-27 Richard Stallman <rms@gnu.org>
21722
21723 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
21724
217252007-06-27 Juanma Barranquero <lekktu@gmail.com>
21726
21727 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
21728
217292007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21730
21731 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
21732 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
21733 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
21734 (_free_internal, memalign): Use them.
21735 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
21736 Initialize to PTHREAD_MUTEX_INITIALIZER.
21737 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
21738 (morecore_nolock): Rename from morecore. All uses changed.
21739 Use only nolock versions of internal allocation functions.
21740 (_malloc_internal_nolock, _realloc_internal_nolock)
21741 (_free_internal_nolock): New functions created from
21742 _malloc_internal, _realloc_internal, and _free_internal.
21743 (_malloc_internal, _realloc_internal, _free_internal): Use them.
21744 Copy hook value to automatic variable before its use.
21745 (memalign): Copy hook value to automatic variable before its use.
21746
217472007-06-26 Kenichi Handa <handa@m17n.org>
21748
21749 * coding.c (Ffind_operation_coding_system): Docstring improved.
21750 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
21751
217522007-06-25 David Kastrup <dak@gnu.org>
21753
21754 * keymap.c (Fcurrent_active_maps): Add `position' argument.
21755 (Fwhere_is_internal): Adjust call to `current-active-maps' to
21756 cater for additional parameter.
21757
21758 * keymap.h: Adjust number of parameters to `current-active-maps'.
21759
21760 * doc.c (Fsubstitute_command_keys): Adjust call of
21761 `current-active-maps'.
21762
217632007-06-25 David Kastrup <dak@gnu.org>
21764
21765 * callint.c (Fcall_interactively): Make the parsing of interactive
21766 specs somewhat more readable.
21767
217682007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21769
21770 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
21771 to scroll bar gap also when bitmap fills fringe. Draw only foreground
21772 if extended background has already been filled.
21773
217742007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21775
21776 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
21777 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
21778
21779 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
21780 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
21781 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
21782 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
21783 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
21784 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
21785 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
21786 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
21787 Run timers during dialog popup.
21788 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
21789
217902007-06-21 Jason Rumney <jasonr@gnu.org>
21791
21792 * image.c (convert_mono_to_color_image): Swap fore and background.
21793
217942007-06-20 Jason Rumney <jasonr@gnu.org>
21795
21796 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
21797 (w32_free_bdf_font): Unmap memory not handle.
21798
217992007-06-20 Sam Steingold <sds@gnu.org>
21800
21801 * gmalloc.c (__morecore): Fix the declaration to comply with the
21802 definition.
21803
218042007-06-20 Juanma Barranquero <lekktu@gmail.com>
21805
21806 * w32term.c (w32_delete_display): Remove leftover declaration.
21807 (w32_define_cursor, w32_initialize): Make static.
21808
21809 * w32.c (_wsa_errlist): Fix typo in error message.
21810 (init_environment): Ignore any environment variable from the
21811 registry having a null value.
21812
218132007-06-20 Glenn Morris <rgm@gnu.org>
21814
21815 * Makefile.in (LIBGIF): Default to -lgif.
21816
218172007-06-17 Jason Rumney <jasonr@gnu.org>
21818
21819 * w32menu.c (add_menu_item): Don't use multibyte string functions on
21820 unicode strings.
21821
218222007-06-16 Juanma Barranquero <lekktu@gmail.com>
21823
21824 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
21825 Fix typo in docstring.
21826
218272007-06-16 Eli Zaretskii <eliz@gnu.org>
21828
21829 * w32menu.c (add_menu_item): Escape `&' characters in menu items
21830 and their keybindings.
21831
218322007-06-15 Chong Yidong <cyd@stupidchicken.com>
21833
21834 * composite.c (update_compositions): Fix last fix.
21835
218362007-06-14 Jason Rumney <jasonr@gnu.org>
21837
21838 * w32.c (get_process_times_fn): New function pointer.
21839 (globals_of_w32): Intialize it if present in kernel32.dll.
21840 (w32_get_internal_run_time): New function.
21841
21842 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
21843
218442007-06-14 Kenichi Handa <handa@etlken.m17n.org>
21845
21846 * composite.c (update_compositions): Check the validness of
21847 compositions.
21848
218492007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21850
21851 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
21852 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
21853
21854 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
21855 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
21856
21857 * macgui.h (USE_MAC_TOOLBAR): New define.
21858
21859 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
21860 Return immediately unless popup is activated.
21861
21862 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
21863 background to scroll bar gap.
21864 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
21865 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
21866 scroll bars on frame edge. Check fringe background extension.
21867 Don't clear extended fringe background area.
21868 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
21869 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
21870 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
21871 [USE_MAC_TOOLBAR]: New macros.
21872 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
21873 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
21874 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
21875 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
21876 [USE_MAC_TOOLBAR]: New functions.
21877 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
21878 manually if previous repositioning has failed.
21879 (mac_handle_keyboard_event): Use precomputed event kind.
21880 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
21881 as tool bar item click. Handle mouse movement over tool bar items.
21882
21883 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
21884 toolbar_win_gravity.
21885 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
21886 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
21887 Add externs.
21888
21889 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
21890 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
21891
218922007-06-14 Chong Yidong <cyd@stupidchicken.com>
21893
21894 * image.c (search_image_cache): Remove unused variable.
21895
218962007-06-13 Chong Yidong <cyd@stupidchicken.com>
21897
21898 * xfns.c, xmenu.c: Link to xaw3d if available.
21899
219002007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21901
21902 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
21903 frame_foreground and frame_background.
21904
21905 * image.c (lookup_image): Save frame foreground and background colors.
21906 (search_image_cache): Check if saved and current frame colors match.
21907
219082007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
21909
21910 * regex.c (regex_compile): Remove the `regnum' counter.
21911 Use bufp->re_nsub instead. Add support for \(?N:RE\).
21912
219132007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
21914
21915 * term.c: Include intervals.h to declare Fget_text_property.
21916
219172007-06-10 Jason Rumney <jasonr@gnu.org>
21918
21919 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
21920
219212007-06-08 Juanma Barranquero <lekktu@gmail.com>
21922
21923 * callint.c (Fcall_interactively):
21924 * editfns.c (Fdelete_and_extract_region):
21925 * fileio.c (Fread_file_name):
21926 * fns.c (Fmapconcat):
21927 * keyboard.c (cmd_error_internal):
21928 * keymap.c (Fkey_description):
21929 * lread.c (openp):
21930 * minibuf.c (read_minibuf):
21931 * search.c (wordify):
21932 * sunfns.c (sel_read):
21933 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
21934 * xfns.c (x_default_scroll_bar_color_parameter):
21935 * xmenu.c (menu_help_callback):
21936 * xselect.c (Fx_get_atom_name):
21937 * xterm.c (x_term_init): Use empty_unibyte_string.
21938
219392007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
21940
21941 * alloc.c (init_strings): Initialize canonical empty strings.
21942 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
21943 canonical empty string when the requested size is 0.
21944
21945 * emacs.c (empty_unibyte_string): Rename from empty_string.
21946 (empty_multibyte_string): New canonical empty string.
21947 (syms_of_emacs): Don't initialize empty_string.
21948
21949 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
21950 string, if appropriate.
21951 (empty_unibyte_string, empty_multibyte_string): New externs.
21952 (empty_string): Remove extern.
21953
21954 * lread.c (syms_of_lread): Use empty_unibyte_string.
21955
219562007-06-07 Jason Rumney <jasonr@gnu.org>
21957
21958 * s/ms-w32.h: Don't define HAVE_TZNAME.
21959
21960 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
21961
219622007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21963
21964 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
21965
21966 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
21967 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
21968
21969 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
21970 Don't call next handler.
21971 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
21972 Remove argument. Install handler to application.
21973 (set_frame_menubar): Don't change deep_p.
21974 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
21975 FRAME_OUTER_TO_INNER_DIFF_Y.
21976 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
21977 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
21978 [HAVE_DIALOGS]: New macros.
21979 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
21980 Use them.
21981 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
21982
21983 * macselect.c [MAC_OSX] (install_service_handler): Rename from
21984 init_service_handler. All callers changed. Return OSStatus value.
21985
21986 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
21987 All callers changed so as not to call SetPortWindowPort.
21988 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
21989 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
21990 mac_draw_string_common.
21991 (mac_draw_image_string_qd): Likewise.
21992 (mac_draw_string_common): Use them. Add INLINE.
21993 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
21994 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
21995 GetGlobalMouse.
21996 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
21997 and FRAME_OUTER_TO_INNER_DIFF_Y.
21998 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
21999 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
22000 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
22001 repositioning window to mac_handle_window_event.
22002 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
22003 saving window location to mac_handle_window_event
22004 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
22005 (install_menu_target_item_handler): Remove argument in extern.
22006 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
22007 Also accept command events.
22008 (do_keystroke): New function created from XTread_socket.
22009 (init_command_handler): Remove functions.
22010 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
22011 and save window location by kEventWindowShowing and kEventWindowHiding
22012 handlers here. Don't call next handler for window state change and
22013 focus events.
22014 (mac_handle_application_event, mac_handle_keyboard_event)
22015 [TARGET_API_MAC_CARBON]: New functions.
22016 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
22017 kEventWindowShowing and kEventWindowHiding events. Move installation
22018 of mouse, font, text input and menu target item handlers to
22019 install_application_handler.
22020 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
22021 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
22022 New function.
22023 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
22024 Register it.
22025 (XTread_socket) [TARGET_API_MAC_CARBON]:
22026 Consolidate SendEventToEventTarget calls.
22027 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
22028 Move application activation handler to mac_handle_application_event.
22029 Move keyboard handler to mac_handle_keyboard_event.
22030 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
22031 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
22032 init_command_handler. Call install_application_handler.
22033
22034 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
22035 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
22036
220372007-06-07 Glenn Morris <rgm@gnu.org>
22038
22039 * emacs.c (main): Use `emacs-copyright' in --version output.
22040
220412007-06-06 Chong Yidong <cyd@stupidchicken.com>
22042
22043 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
22044
220452007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22046
22047 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
22048
22049 * macgui.h: Replace WindowPtr with WindowRef.
22050
22051 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
22052 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
22053 Replace ControlHandle with ControlRef.
22054 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
22055
22056 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
22057 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
22058 Replace ControlHandle with ControlRef.
22059 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
22060 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
22061
22062 * macterm.h (struct scroll_bar): Rename member control_handle_low
22063 and control_handle_high to control_ref_low and control_ref_high.
22064 All uses changed.
22065 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
22066 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
22067 respectively. All uses changed.
22068 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
22069 (install_window_handler, remove_window_handler): Replace WindowPtr
22070 with WindowRef in externs.
22071
220722007-06-05 Juanma Barranquero <lekktu@gmail.com>
22073
22074 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
22075
220762007-06-03 Nick Roberts <nickrob@snap.net.nz>
22077
22078 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
22079
22080 * frame.c (Fmouse_position, Fmouse_pixel_position):
22081 Condition on HAVE_GPM too.
22082
22083 * term.c (term_mouse_highlight): Remove unused variables.
22084 (Fterm_open_connection): Set gpm_zerobased to 1.
22085 (term_mouse_movement, term_mouse_click, handle_one_term_event):
22086 Use zero based co-ordinates.
22087 (handle_one_term_event): Report a drag as mouse movement too.
22088
22089 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
22090
220912007-06-03 Chong Yidong <cyd@stupidchicken.com>
22092
22093 * image.c (search_image_cache): New function. Require background
22094 color match if background color is unspecified in the image spec.
22095 (uncache_image, lookup_image): Use it.
22096
220972007-06-01 Juanma Barranquero <lekktu@gmail.com>
22098
22099 * window.c (Fshrink_window): Reflow docstring.
22100
221012007-06-02 Chong Yidong <cyd@stupidchicken.com>
22102
22103 * Version 22.1 released.
22104
221052007-06-01 Richard Stallman <rms@gnu.org>
22106
22107 * xfns.c (x_encode_text): Add GCPRO.
22108
221092007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22110
22111 * xfns.c (x_set_name_internal): Save encoded name before
22112 x_encode_text in case string data is relocated.
22113
221142007-05-31 Richard Stallman <rms@gnu.org>
22115
22116 * buffer.c (syms_of_buffer): Doc fix.
22117
221182007-05-30 Nick Roberts <nickrob@snap.net.nz>
22119
22120 * sysdep.c (init_sys_modes): Add rather than replace with
22121 O_NONBLOCK.
22122
22123 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
22124 term_mouse_moveto.
22125
22126 * termhooks.h (term_mouse_moveto): New extern.
22127
22128 * term.c (mouse_face_window): Rename...
22129 (Qmouse_face_window): ...to this.
22130 (term_show_mouse_face, term_clear_mouse_face)
22131 (term_mouse_highlight): Use Qmouse_face_window.
22132 (term_mouse_moveto): New function.
22133 (term_mouse_position): Make it work.
22134 (syms_of_term): Uncomment assignment to mouse_position_hook.
22135 Staticpro Qmouse_face_window.
22136
221372007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22138
22139 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
22140 around current_column call.
22141
221422007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
22143
22144 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
22145 * xdisp.c (next_element_from_buffer):
22146 * window.c (delete_window):
22147 * term.c (term_mouse_highlight):
22148 * msdos.c (getdefdir):
22149 * macterm.c (mac_create_bitmap_from_bitmap_data)
22150 (init_font_name_table):
22151 * fns.c (Fsxhash):
22152 * data.c (Fmake_local_variable):
22153 * ccl.c (ccl_driver): Likewise.
22154
221552007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22156
22157 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
22158 Call mac_wakeup_from_rne on window size change.
22159
221602007-05-25 Chong Yidong <cyd@stupidchicken.com>
22161
22162 * image.c (uncache_image): Fix typo.
22163
221642007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
22165
22166 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
22167
221682007-05-22 Richard Stallman <rms@gnu.org>
22169
22170 * xterm.c (x_connection_closed): Remove NO_RETURN.
22171
221722007-05-22 Martin Rudalics <rudalics@gmx.at>
22173
22174 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
22175
221762007-05-21 Chong Yidong <cyd@stupidchicken.com>
22177
22178 * image.c (uncache_image): New function.
22179 (Fimage_refresh): New function.
22180
221812007-05-20 Jan Djärv <jan.h.d@swipnet.se>
22182
22183 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
22184
221852007-05-20 Nick Roberts <nickrob@snap.net.nz>
22186
22187 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
22188 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
22189
221902007-05-20 Nick Roberts <nickrob@snap.net.nz>
22191
22192 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
22193 conditional on [HAVE_GPM_H].
22194
221952007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
22196
22197 * syntax.c (skip_chars): Update syntax-table only after we checked that
22198 the new location is valid.
22199
222002007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22201
22202 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
22203 mac_get_window_bounds.
22204
222052007-05-20 Nick Roberts <nickrob@snap.net.nz>
22206
22207 * Makefile.in (LIBGPM): Allow it to be set from configure.
22208 If set then link Emacs with it.
22209
22210 * config.in: Regenerate.
22211
22212 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
22213 New externs.
22214
22215 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
22216 Include gpm.h.
22217 (handle_one_term_event, term_gpm): New externs.
22218
22219 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
22220 and allow it to be interrupted by SIGIO.
22221
22222 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
22223 (wait_reading_process_output): Wait on gpm_fd too.
22224 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
22225 (add_gpm_wait_descriptor_called_flag): New variable.
22226 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
22227
22228 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
22229 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
22230 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
22231 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
22232 (make_lispy_event): Add case GPM_CLICK_EVENT.
22233 (read_avail_input): Handle mouse input.
22234
22235 * term.c (write_glyphs_with_face): New function.
22236 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
22237 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
22238 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
22239 (mouse_face_face_id, term_gpm, pos_x, pos_y)
22240 (last_mouse_x, last_mouse_y): New variables.
22241 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
22242 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
22243 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
22244 (Fterm_close_connection): New functions.
22245 (term_init): Initialise mouse_face_window.
22246
222472007-05-19 Chong Yidong <cyd@stupidchicken.com>
22248
22249 * xdisp.c (redisplay_window): If first window line is a
22250 continuation line, recompute the new window start instead of
22251 recentering.
22252
222532007-05-18 Glenn Morris <rgm@gnu.org>
22254
22255 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
22256 Suggested by Alfred M. Szmidt <ams@gnu.org>.
22257
222582007-05-17 Glenn Morris <rgm@gnu.org>
22259
22260 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
22261
222622007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22263
22264 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
22265 dead key repeat and up events.
22266
222672007-05-14 Chong Yidong <cyd@stupidchicken.com>
22268
22269 * image.c (pbm_load): Check image size for monochrome pbm.
22270
222712007-05-13 Chong Yidong <cyd@stupidchicken.com>
22272
22273 * xterm.c (XTread_socket): Revert last change.
22274
222752007-05-12 Chong Yidong <cyd@stupidchicken.com>
22276
22277 * image.c (pbm_load): Correctly check image size for greyscale pbm.
22278
22279 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
22280
222812007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
22282
22283 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
22284 mixup (YAILOM).
22285
222862007-05-07 Andreas Schwab <schwab@suse.de>
22287
22288 * keymap.c (Flookup_key): Fix typo in last change.
22289
222902007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
22291
22292 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
22293 mapping for unibyte strings.
22294
222952007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22296
22297 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
22298 (Fx_popup_dialog) [MAC_OSX]: Likewise.
22299
223002007-04-29 Richard Stallman <rms@gnu.org>
22301
22302 * insdel.c (replace_range): For undo, record insertion first.
22303
223042007-04-29 Andreas Schwab <schwab@suse.de>
22305
22306 * lisp.h (VECSIZE): Use OFFSETOF.
22307
223082007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22309
22310 * xdisp.c (try_window_reusing_current_matrix): Fix number of
22311 disabled lines.
22312
223132007-04-28 Richard Stallman <rms@gnu.org>
22314
22315 * lread.c (read_escape): In a string, \s is always space.
22316
223172007-04-27 Jan Djärv <jan.h.d@swipnet.se>
22318
22319 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
22320
22321 * gtkutil.c (xg_update_menubar, create_menus): Create empty
22322 submenu for menu bar items.
22323
22324See ChangeLog.10 for earlier changes.
22325
22326;; Local Variables:
22327;; coding: utf-8
22328;; add-log-time-zone-rule: t
aac0c6e3
MR
22329;; End:
22330
e3eb1dae 22331 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
22332
22333 This file is part of GNU Emacs.
22334
22335 GNU Emacs is free software: you can redistribute it and/or modify
22336 it under the terms of the GNU General Public License as published by
22337 the Free Software Foundation, either version 3 of the License, or
22338 (at your option) any later version.
22339
22340 GNU Emacs is distributed in the hope that it will be useful,
22341 but WITHOUT ANY WARRANTY; without even the implied warranty of
22342 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22343 GNU General Public License for more details.
22344
22345 You should have received a copy of the GNU General Public License
22346 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
22347
22348;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40