* help-at-pt.el (help-at-pt-kbd-string): Reflow docstring.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
3ba010e5
EZ
12009-04-14 Eli Zaretskii <eliz@gnu.org>
2
3 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
4
06f19b91
KH
52009-04-14 Kenichi Handa <handa@m17n.org>
6
7 * font.c (Ffont_info): Fix docstring. Fix the second element of
8 the returned value (bug#2949).
9
2cce8bfc
CY
102009-04-14 Chong Yidong <cyd@stupidchicken.com>
11
12 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
13
d156542d
KH
142009-04-14 Kenichi Handa <handa@m17n.org>
15
16 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
17 encoding charset is ascii_compatible.
18
19 * charset.c (Fdefine_charset_internal): Make charset
20 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
21 code_offset is 0, and covers all ASCII characters.
22
86fa089e
SM
232009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
24
25 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
26 (ns_string_to_pasteboard_internal):
27 * nsmenu.m (process_dialog):
28 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
29 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
30 * lisp.h (Fx_load_color_file): Declare.
31
a8a3728b
KH
322009-04-13 Kenichi Handa <handa@m17n.org>
33
34 * font.c (font_delete_unmatched): Preserve the order of list
35 elements.
36 (font_select_entity): Suppress the code to optimize for the same
37 kind of fonts.
38 (font_load_for_lface): Get a font that supports at least ASCII
39 characters.
40
41 * ftfont.c (Qja, Qko): New variables.
42 (fc_charset_table): Delete uniquifier data for iso8859-1.
43 (ftfont_get_latin1_charset): New function.
44 (get_adstyle_property): New function.
45 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
46 bitmap fonts.
47 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
48 Delete iso-8859-1 range from the charset of fonts whose adstyle is
49 `ko' or `ja'.
50 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
51 (ftfont_get_charset): For iso8859-1, call
52 ftfont_get_latin1_charset.
53 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
54 property.
55 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
56 (syms_of_ftfont): DEFSYM Qja and Qko.
57
483670b5
KH
582009-04-09 Kenichi Handa <handa@m17n.org>
59
12b55765
KH
60 * charset.c (map_charset_chars): For a charset of `superset'
61 method, fix calculation of code range.
62
483670b5
KH
63 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
64 from the list of extra properties.
65 (font_clear_prop): Be sure to delete `:name' font property.
66
57d3b93b
KH
672009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
68
b4b2c2ca
YM
69 * dispnew.c (redraw_overlapping_rows): Fix detection of
70 overlapping for topmost and bottommost rows.
71
57d3b93b
KH
72 * ftfont.c (ftfont_text_extents): Fix calculation of
73 metrics->descent.
74
472c3609
JR
752009-04-06 Jason Rumney <jasonr@gnu.org>
76
77 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
78
ab193662
KH
792009-04-06 Kenichi Handa <handa@m17n.org>
80
81 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
82
83 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
84
0c26f026
KH
852009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
86
87 * ftfont.c (ftfont_open): Fix checking of the return value of
88 FT_Load_Char. Fix setting font->underline_thickness.
89
e173bbce
CY
902009-04-04 Chong Yidong <cyd@stupidchicken.com>
91
92 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
93 (Fterminal_parameters, Fterminal_parameter)
94 (Fset_terminal_parameter): In doc string, refer to terminal
95 objects rather than terminal ids.
96
693a2698
EZ
972009-04-04 Eli Zaretskii <eliz@gnu.org>
98
99 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
100 ret_lim_data. (Bug#2867)
101
d5221487
CY
1022009-04-03 Chong Yidong <cyd@stupidchicken.com>
103
104 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
105 so they don't get wider than the window, matching 2006-01-23
106 change to the partner function in xdisp.c (Bug#2800).
107
223509a3
KH
1082009-04-03 Kenichi Handa <handa@m17n.org>
109
110 * print.c (print_object): Make each lowest sub_char_table start a
111 new line (Bug#2866).
112
74fcd0b1
KH
1132009-04-02 Kenichi Handa <handa@m17n.org>
114
115 * fontset.c (fontset_font): Record no-font when a fontset
116 explicitly tells not to try another font-specs.
117
c542407d
SM
1182009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
119
120 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
121
e3869731
KH
1222009-03-30 Kenichi Handa <handa@m17n.org>
123
d8d2f142
KH
124 * fontset.c (fontset_from_font): Specify only registry in a
125 font-spec for all characters supported by that registry.
126
e3869731
KH
127 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
128 even if HAVE_M17N_FLT is not defined.
129
5da5f805
CY
1302009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
131
132 * ftfont.c: Conditionalize prototyping and use of
133 ftfont_variation_glyphs.
134
ab226c50
SM
1352009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
136
9628fed7
SM
137 * frame.c (delete_frame): Work around compiler bug.
138
139 * editfns.c (general_insert_function): Adjust to insdel.c changes.
140 * insdel.c (prepare_to_modify_buffer, signal_before_change):
141 Some more EMACS_INT.
142 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
143
144 * xdisp.c (dump_glyph): Fix typo.
145
ae19ba7c
SM
146 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
147 (adjust_markers_gap_motion, adjust_markers_for_delete)
148 (adjust_markers_for_insert, adjust_point)
149 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
150 (make_gap, copy_text, count_size_as_multibyte, insert)
151 (insert_and_inherit, insert_before_markers)
152 (insert_before_markers_and_inherit, insert_1)
153 (count_combining_before, count_combining_after, insert_1_both)
154 (insert_from_string, insert_from_string_before_markers)
155 (insert_from_string_1, insert_from_gap, insert_from_buffer)
156 (insert_from_buffer_1, adjust_after_replace)
157 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
158 (replace_range_2, del_range, del_range_1, del_range_byte)
159 (del_range_both, del_range_2, modify_region)
160 (prepare_to_modify_buffer, signal_before_change)
161 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
162 for buffer positions and sizes.
163 * lisp.h: Adjust prototypes accordingly.
164
165 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
166 (non_regular_inserted, non_regular_nbytes, read_non_regular)
167 (Finsert_file_contents): Use EMACS_INT for buffer positions.
168
ab226c50
SM
169 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
170
46dfb8fb
JD
1712009-03-27 Jan Djärv <jan.h.d@swipnet.se>
172
173 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
174 lines and columns so we keep the same pixel height and width.
175
176 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
177 the property _NET_WM_STATE has changed.
46dfb8fb
JD
178 (x_handle_net_wm_state): New function to update frame parameter
179 fullscreen.
180 (x_term_init): Initialize atoms for _NET_WM_STATE.
181
182 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
183
d347e494
SM
1842009-03-27 Kevin Ryde <user42@zip.com.au>
185
186 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
187 Gpm_GetEvent as an error that justifies closing the filedescriptor.
188 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
189 (Fgpm_mouse_stop): Pass that new parameter.
190 * termhooks.h (close_gpm): Adjust prototype.
191
84db11d6
SM
1922009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
193
c95a5008
SM
194 * lisp.h (Fx_focus_frame): Declare.
195
84db11d6
SM
196 * callint.c (Fcall_interactively): For '^' just delegate the work to
197 handle-shift-selection.
198 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
199
0a1958d6
CY
2002009-03-24 Chong Yidong <cyd@stupidchicken.com>
201
0bfdff23
CY
202 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
203
0a1958d6
CY
204 * data.c (Qinteractive_form): New variable.
205 (Finteractive_form): Use it.
206
207 * eval.c (Fcommandp): Use Qinteractive_form.
208
58aec0d6
JR
2092009-03-24 Jason Rumney <jasonr@gnu.org>
210
211 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
212 Calculate total size precisely. Decode environment variables
213 before substituting. (Bug#38)
214
553dd618
KH
2152009-03-24 Kenichi Handa <handa@m17n.org>
216
217 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 218 encoding (Bug#2722).
553dd618 219
c39ea606
JD
2202009-03-23 Jan Djärv <jan.h.d@swipnet.se>
221
222 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
223 that gdpy is set.
224
bc9b2b5e
AM
2252009-03-22 Alan Mackenzie <acm@muc.de>
226
227 * callint.c (Finteractive): Clarify the doc string - even
228 promptless elements need \n separators.
229
9f995a76
JR
2302009-03-22 Jason Rumney <jasonr@gnu.org>
231
232 * w32term.c (syms_of_w32term): Doc fix for
233 x-use-underline-position-properties.
234
22749e9a
EZ
2352009-03-21 Eli Zaretskii <eliz@gnu.org>
236
237 * w32.c (getpwuid): Change argument type to unsigned.
238 (struct w32_id): Change type of `rid' member to unsigned.
239 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
240 argument ID to unsigned. All callers changed.
241 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
242
e00553bf
EZ
2432009-03-20 Eli Zaretskii <eliz@gnu.org>
244
245 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
246 negative, produce a float value.
247
248 * dired.c (make_uid, make_gid): New functions.
249 (Ffile_attributes): Use them to avoid negative UID and GID.
250
f761d6b6
JB
2512009-03-20 Juanma Barranquero <lekktu@gmail.com>
252
253 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
254 (syms_of_keyboard) <command-hook-internal, input-method-function>:
255 Fix typos in docstrings.
256
d507f8d7
KH
2572009-03-19 Kenichi Handa <handa@m17n.org>
258
259 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
260 changed, use font_load_for_lface to get a new font object.
261 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
262
263 * frame.c (x_set_font): Handle the case that ARG is a cons.
264
c68845e0
GM
2652009-03-19 Glenn Morris <rgm@gnu.org>
266
267 * fileio.c (Fsubstitute_in_file_name): Doc fix.
268
bfa49dd1
CY
2692009-03-19 Chong Yidong <cyd@stupidchicken.com>
270
271 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
272
8458d4c1
KH
2732009-03-19 Kenichi Handa <handa@m17n.org>
274
275 * charset.c (load_charset_map_from_file): When a mapfile can't be
276 loaded, signal an error.
277
78e7d1fe
EZ
2782009-03-18 Eli Zaretskii <eliz@gnu.org>
279
280 * dired.c (Ffile_attributes): Make sure UID and GID are always
281 positive, even if the value is too large for a positive EMACS_INT.
282 Doc fix.
283
284 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
285
5da9fdfa
YM
2862009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
287
288 * xmenu.c (xdialog_show): Move Fredisplay call ...
289 (Fx_popup_dialog): ... here.
290
7519c40d
SM
2912009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
292
293 * dired.c (file_name_completion): Disable the first optimization just
294 installed, since it is not implemented correctly.
295
2cd298e2
SM
2962009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
297
298 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 299 only if the entry can affect bestmatch.
2cd298e2
SM
300 Stop the search early, as Ftry_completion already does.
301
48d37adf
CY
3022009-03-17 Chong Yidong <cyd@stupidchicken.com>
303
e10c9c93 304 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 305
9286b16a
CY
3062009-03-15 Chong Yidong <cyd@stupidchicken.com>
307
308 * keyboard.c (parse_menu_item): Don't display remappings as menu
309 equivalent bindings (Bug#788).
310
f7b146dc
JR
3112009-03-15 Jason Rumney <jasonr@gnu.org>
312
313 * w32term.h (WM_EMACS_PAINT): New message.
314 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
315 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
316 before passing to lisp thread. (Bug#950)
317
f761d6b6 3182009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 319
d93f9575
CY
320 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
321 variable as it was never reset.
322 (ns_term_init): Remove initialization of Lisp-settable defaults
323 and ns_expand_space.
324 (-setPanelFromDefaultValues): Remove ns_expand_space.
325 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
326 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
327 i.e. no additional spacing, similar to Carbon port.
328
d93f9575
CY
329 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
330 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 331
305018ec
JD
3322009-03-14 Jan Djärv <jan.h.d@swipnet.se>
333
334 * sound.c (alsa_configure): Remove call to deprecated
335 snd_pcm_sw_params_set_xfer_align.
336
f761d6b6 3372009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
338
339 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
340 after clicking in a detached tool bar.
341 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
342
46e722a9
SM
3432009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
344
348db3dd
SM
345 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
346 int/Lisp_Object mixup).
46e722a9 347
a3d16f39
KH
3482009-03-13 Kenichi Handa <handa@m17n.org>
349
350 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 351 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
352 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
353 (set_fontset_font): Change ARG to a vector. Handle range_list in
354 ARG correctly.
355 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 356 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
357 the above change.
358 (fontset_from_font): Fix previous change.
fe24f56a 359 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
360 entry. If FONTSET is the default fontset, don't set the extra
361 slot of the returning char-table.
362
b066e6b6
JB
3632009-03-12 Juanma Barranquero <lekktu@gmail.com>
364
365 * nsfns.m (Fx_close_connection): Doc fix.
366 (Fns_do_applescript): Reflow docstring.
367 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
368 (Fx_display_pixel_width, Fx_display_pixel_height)
369 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
370 Fix typos in docstrings.
371 (Fns_set_alpha): Fix typos in error messages.
372
d472514e 3732009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 374
d472514e 375 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
376 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
377 were used for such events.
378
d472514e
JB
379 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
380 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 381
d472514e 382 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
383 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
384
fb930676
KH
3852009-03-11 Kenichi Handa <handa@m17n.org>
386
ff85581a
KH
387 * font.h (font_open_by_spec): Extern it.
388
c50b7e98
KH
389 * font.c (font_open_by_spec): New function.
390 (font_open_by_name): Use font_open_by_spec.
391
fb930676
KH
392 * frame.c (x_set_font): When ARG is a font-object, don't alter the
393 fontset of the frame.
394
395 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
396 modify the default font of frames that use this fontset.
397 (num_auto_fontsets): New variable.
398 (fontset_from_font): Use num_auto_fontsets to decide a fontset
399 name. Be sure to set FONTSET_ASCII to the correct font name.
400 (update_auto_fontset_alist): New function.
401
df4e8455
JB
4022009-03-11 Juanma Barranquero <lekktu@gmail.com>
403
404 * makefile.w32-in: Update dependencies.
405
0a375797
AR
4062009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
407
408 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
409
61313fa3
SM
4102009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
411
412 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
413
b55103fb
CY
4142009-03-10 Chong Yidong <cyd@stupidchicken.com>
415
416 * lread.c (Feval_buffer): Doc fix.
417
dde2559c
KH
4182009-03-09 Kenichi Handa <handa@m17n.org>
419
420 * charset.c (Qfile_name_handler_alist): Extern it.
421 (load_charset_map_from_file): Temporarily bind
422 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
423
df4e8455 4242009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 425
47f588bb
GM
426 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
427 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 428
4ddf94bd
AR
4292009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
430
4c9bdfc2
AR
431 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
432 (x_set_window_size): Change back to calculated method of setting
433 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
434 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
435 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
436
fe41ae9e
AR
437 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
438
4c9bdfc2
AR
439 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
440 accelerator in parens under GNUstep.
441
825d0875
KH
4422009-03-06 Kenichi Handa <handa@m17n.org>
443
444 These changes are to detect incorrect composition sequence without
f3b3be74 445 looking ahead the source. (Bug#2370)
825d0875
KH
446
447 * coding.h: Include "composite.h".
448 (enum compisition_state): New enum.
449 (struct compisition_status): New struct.
450 (struct iso_2022_spec): New member cmp_status.
451 (struct emacs_mule_spec): New struct.
452 (struct coding_system): New members ctext_extended_segment_len and
453 embedded_utf_8. Change the union member
454 spec.emacs_mule_full_support to spec.emacs_mule.
455
456 * coding.c (CODING_ISO_CMP_STATUS): New macro.
457 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 458 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
459 (ADD_COMPOSITION_DATA): New arg nbytes.
460 (emacs_mule_char): New arg cmp_status.
461 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
462 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
463 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
464 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
465 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
466 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
467 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
468 (EMACS_MULE_COMPOSITION_END): New macro.
469 (emacs_mule_finish_composition): New function.
470 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
471 (decode_coding_emacs_mule): Avoid long looking ahead while
472 handling composition.
473 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
474 (ENCODE_COMPOSITION_RULE): New macro.
475 (finish_composition): New function.
476 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
477 (DECODE_COMPOSITION_START): New implementation.
478 (DECODE_COMPOSITION_END): Likewise.
479 (STORE_COMPOSITION_RULE): New macro.
480 (decode_coding_iso_2022): Avoid long looking ahead while handling
481 composition, CTEXT extended segment, and embedded UTF-8.
482 (setup_coding_system): For a coding of type iso-2022, reset
483 CODING_ISO_EXTSEGMENT_LEN (coding) and
484 CODING_ISO_EMBEDDED_UTF_8 (coding).
485 (get_translation): Delete arguments last_block, from_nchars,
486 to_nchars. Callers changed.
487 (produce_chars): Don't modify charbuf. Adjusted for the change of
488 get_translation.
98a326f7 489 (produce_composition): Adjust for the new annotation sequence.
825d0875 490 (handle_composition_annotation): Likewise.
98a326f7 491 (consume_chars): Adjust for the change of get_translation.
825d0875 492
ccbc4452
AR
4932009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
494
4ddf94bd 495 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 496
988a7ddb
KH
4972009-03-05 Kenichi Handa <handa@m17n.org>
498
499 * font.c (font_select_entity): New function.
500 (font_find_for_lface): Use font_select_entity to select a font.
501
502 * fontset.c (fontset_find_font): If a font found without
a8a3728b 503 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
504 font with C restriction.
505
98a326f7 5062009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 507
be1bce46 508 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 509
10ea2b82
JR
5102009-03-04 Jason Rumney <jasonr@gnu.org>
511
2c93b248 512 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 513 characters that have already been read. (Bug#2569)
2c93b248 514
10ea2b82
JR
515 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
516 Log an error message if check_image_size failed.
517 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 518 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 519
71a0c011
EZ
5202009-03-02 Eli Zaretskii <eliz@gnu.org>
521
522 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
523 when decoding process output.
524
2f63bba8
RS
5252009-03-01 Richard M Stallman <rms@gnu.org>
526
527 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
528
529 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
530
0a9564cb
EZ
5312009-02-28 Eli Zaretskii <eliz@gnu.org>
532
533 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
534 (decode_coding_emacs_mule, decode_coding_iso_2022)
535 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
536 (decode_coding_raw_text, decode_coding_charset)
537 (setup_coding_system, decode_eol, decode_coding, consume_chars):
538 Honor inhibit-eol-conversion. (Bug #2186)
539
449148b3
JR
5402009-02-28 Jason Rumney <jasonr@gnu.org>
541
542 * coding.c (detect_coding_charset): If not checking latin extra,
543 fail on characters between 0x80 and 0xA0. (Bug#2354)
544
a4aee864
EZ
5452009-02-28 Eli Zaretskii <eliz@gnu.org>
546
547 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 548 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 549
d88bee5a
GM
5502009-02-27 Glenn Morris <rgm@gnu.org>
551
552 * callint.c (Finteractive): Doc fix.
553
a808f22d
KH
5542009-02-27 Kenichi Handa <handa@m17n.org>
555
556 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
557
caf8d60c
CY
5582009-02-27 Chong Yidong <cyd@stupidchicken.com>
559
560 * font.c (font_style_to_value): Set value for unknown symbols to
561 100 instead of 255.
b61137ea
CY
562 (weight_table, slant_table, width_table): Treat "unspecified" as
563 the default value.
caf8d60c 564
1a0de25c
JB
5652009-02-26 Juanma Barranquero <lekktu@gmail.com>
566
567 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
568
8fc45744
JB
5692009-02-25 Juanma Barranquero <lekktu@gmail.com>
570
107bd7d1
JB
571 * lread.c (Fload): Stop checking Vloads_in_progress and signal
572 error as soon as a recursive load is detected.
8fc45744 573
f097e223
AR
5742009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
575
576 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
577 before caching.
578
8810a12f
KH
5792009-02-24 Kenichi Handa <handa@m17n.org>
580
581 * fontset.c (fontset_find_font): Fix the condition for checking
582 unavailable font.
583
2c7d1565
GM
5842009-02-24 Glenn Morris <rgm@gnu.org>
585
586 * xfaces.c (Finternal_set_font_selection_order): Remove leading
587 whitespace that confuses documentation.
588
a20878b6
MB
5892009-02-23 Miles Bader <miles@gnu.org>
590
591 * process.c (Flist_system_processes, Fprocess_attributes)
592 (syms_of_process): Rename `system-process-attributes' to
593 `process-attributes'.
594
b3b58c01
AS
5952009-02-22 Andreas Schwab <schwab@linux-m68k.org>
596
1b3b981b
AS
597 * coding.h (struct coding_system): Make safe_charsets a pointer to
598 unsigned char.
599 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
600 being 255.
601 (SAFE_CHARSET_P): Likewise.
602 (setup_iso_safe_charsets): Properly setup safe_charsets.
603 (Fdefine_coding_system_internal): Likewise.
604 (setup_coding_system): Likewise. Remove unneeded casts.
605 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
606 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
607 unneeded casts.
608
b3b58c01
AS
609 * insdel.c (del_range_2): Don't modify gap contents when called
610 from decode_coding_object. (Bug#1809)
611
0b6f228c
CY
6122009-02-21 Chong Yidong <cyd@stupidchicken.com>
613
614 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
615 Qfont_object.
616 (Ftype_of): Recognize font objects.
617
618 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
619
620 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
621 moved to data.c.
622
52f8870b
AR
6232009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
624
625 * nsterm.m (x_make_frame_invisible): Unset async_visible,
626 async_iconified. Based on a patch by Christian Lynbech
627 <christian.lynbech@tieto.com>.
628 (EmacsView-windowDidMiniaturize:): Unset async_visible.
629
7087d5e9
GM
6302009-02-20 Glenn Morris <rgm@gnu.org>
631
632 * syntax.c (Fskip_chars_forward): Fix doc typo.
633
41d2ceef
CY
6342009-02-20 Chong Yidong <cyd@stupidchicken.com>
635
636 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
637
1a3b7ca6
CY
6382009-02-19 Chong Yidong <cyd@stupidchicken.com>
639
640 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
641
73cce38d
KH
6422009-02-19 Kenichi Handa <handa@m17n.org>
643
644 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 645 Don't overflow coding->carryover. (Bug#2370)
73cce38d 646
a51092ee
DN
6472009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
648
649 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
650
c423ecca
KH
6512009-02-18 Kenichi Handa <handa@m17n.org>
652
653 * font.c (font_check_otf_features): Fix handling of `nil' element.
654 (Ffont_spec): Describe :lang and :otf in the docstring.
655
4c1958f4
AS
6562009-02-16 Andreas Schwab <schwab@suse.de>
657
658 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
659 string.
660
5704f39a
KH
6612009-02-16 Kenichi Handa <handa@m17n.org>
662
663 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 664 (Bug#1723)
5704f39a 665
8f0085aa
CY
6662009-02-14 Chong Yidong <cyd@stupidchicken.com>
667
a057d86a 668 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
669
670 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
671 (handle_line_prefix): Suppress wrapping of wrap prefixes.
672
aff01dd9
EZ
6732009-02-14 Eli Zaretskii <eliz@gnu.org>
674
675 * msdos.c (MAX_SCREEN_BUF): New macro.
676 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
677 Encode the entire run of glyphs sharing the same face, instead of
678 doing that one glyph at a time (fixes a bug with displaying
679 double-size characters).
680
ba301db3
AR
6812009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
682
683 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
684
685 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
686 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 687 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
688
689 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 690 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 691
51d861de
SM
6922009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
693
694 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
695 invisible areas.
696
7fed8996
JR
6972009-02-12 Jason Rumney <jasonr@gnu.org>
698
631ea4fb
JR
699 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
700 (add_font_entity_to_list): Call check_face_name even when family
701 is unspecified.
702
cb4a3e42
JR
703 * w32term.c (x_display_pixel_height, x_display_pixel_width):
704 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 705 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 706
7fed8996 707 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 708 raster fonts. (Bug#2219)
7fed8996 709
895416e3
KH
7102009-02-12 Kenichi Handa <handa@m17n.org>
711
712 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
713 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
714 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 715 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
716 (find_automatic_composition): While looking forward and backward,
717 check static composition. Fix where to stop looking forward.
718 (composition_adjust_point): Fix checking of static composition.
719 (Fcomposition_get_gstring): Pay attention to
1dacf998 720 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
721
722 * lisp.h (fast_looking_at): Extern it.
723
724 * search.c (fast_looking_at): New function.
725
51d861de 726 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
727 <struct glyph>.u.cmp.to.
728 (append_composite_glyph): Likewise.
729
51d861de 730 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
731 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
732 composition.
51d861de 733 (append_composite_glyph): Adjust for the change of
895416e3
KH
734 <strcut glyph>.u.cmp.to.
735
8510724d
JB
7362009-02-11 Juanma Barranquero <lekktu@gmail.com>
737
738 * casetab.c (init_casetab_once):
739 * coding.c (ALLOC_CONVERSION_WORK_AREA):
740 * font.c (font_update_lface):
741 * fontset.c (Fnew_fontset):
742 * ftfont.c (ftfont_drive_otf):
743 * xfont.c (xfont_open):
744 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
745
294fa707
SM
7462009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
747
748 * fileio.c (Fwrite_region): !NILP -> CONSP.
749
b5bfebec
AS
7502009-02-10 Andreas Schwab <schwab@suse.de>
751
752 * process.c (send_process): Properly relocate pointer into data
adab88bd 753 when using encoded data. (Bug#2272)
b5bfebec 754
cb84a2be
KH
7552009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
756
757 * coding.c (detect_coding_charset): Fix previous change.
758
89e09428
JR
7592009-02-08 Jason Rumney <jasonr@gnu.org>
760
761 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 762 disappeared while hourglass was displayed. (Bug #2193)
89e09428 763
4470a277
AS
7642009-02-07 Andreas Schwab <schwab@suse.de>
765
766 * unexelf.c (unexec): Fix error message.
767
3175b12a
AR
7682009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
769
770 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 771 when modal window is active. (Bug #2152)
3175b12a
AR
772 (applicationShouldTerminate:): Remove now-unneeded while loop
773 around NSRunAlertPanel.
774
775 * nsmenu.m (popupSession): New file-global variable.
776 (pop_down_menu): End the popupSession before closing dialog.
777 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
778 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
779 don't query NSApp for events (just sleep instead).
780
8434d0b8
EZ
7812009-02-07 Eli Zaretskii <eliz@gnu.org>
782
51d861de
SM
783 * coding.c (syms_of_coding) <translation-table-for-input>:
784 Modify doc string to discourage use for character code unification.
8434d0b8 785
aa82edfd
CY
7862009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
787
788 * atimer.c (run_timers): Update pending_atimers.
789
2d283c7c
CY
7902009-02-06 Chong Yidong <cyd@stupidchicken.com>
791
eb306cab
CY
792 * image.c (svg_load_image): Fix last change.
793
2d283c7c
CY
794 * xfns.c (Fx_create_frame): Signal an error if no font is
795 found (Bug#2147).
796
4d8e170e
JB
7972009-02-05 Juanma Barranquero <lekktu@gmail.com>
798
799 * character.c (syms_of_character) <script-representative-chars>:
800 Fix typo in docstring.
801
c96169a0
AR
8022009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
803
804 * nsmenu.m (pop_down_menu): New function.
805 (ns_popup_dialog): Call it on unwind.
806 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
807 call timer_check() (Bug#2154).
808 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
809 handling_signal is set.
810 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
811
812 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G
813
814 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
815
816 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
817
51d861de
SM
818 * keyboard.c (poll_for_input_1, handle_async_input):
819 Set handling_signal under HAVE_NS.
c96169a0 820
aacd8ba1
GM
8212009-02-04 Glenn Morris <rgm@gnu.org>
822
823 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
824
4cb75c4b
KH
8252009-02-04 Kenichi Handa <handa@m17n.org>
826
827 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
828
829 * charset.c (Fchar_charset): New optional arg restriction.
830
831 * coding.h (coding_system_charset_list): Extern it.
832
833 * coding.c (coding_system_charset_list): New function.
834
835 * composite.c: Include coding.h and termhooks.h.
836 (composition_gstring_p): Fix for the terminal case.
837 (composition_gstring_width): Likewise.
838 (fill_gstring_body): Likewise.
839 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
840 the frame.
841 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
842 is within a composition.
867d4bb3 843 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
844
845 * term.c (encode_terminal_code): Fix handling of composition.
846 (produce_composite_glyph): For static composition, get pixel_width
847 from struct composition.
848
826ba17e
AS
8492009-02-02 Andreas Schwab <schwab@suse.de>
850
851 * unexelf.c (unexec): Handle unaligned bss offset.
852
8ad093db
AR
8532009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
854
855 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
856 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 857
8ad093db
AR
858 * keyboard.c (handle_interrupt): Don't call
859 quit_throw_to_read_char() under NS.
d0a76a6e 860
8ad093db
AR
861 * blockinput.h: Remove NS-specific code.
862
4d18a7a2
DN
8632009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
864
db878925
DN
865 * dispnew.c (window_change_signal): Don't try to get the size of a
866 suspended tty frame.
867 * term.c (Fresume_tty): Resize if the size has changed while the
868 tty was suspended.
869
4d18a7a2
DN
870 * alloc.c (mark_stack): Properly conditionalize previous change.
871
8984df7c
JB
8722009-01-30 Juanma Barranquero <lekktu@gmail.com>
873
874 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
875 * w32term.c (w32_read_socket) [SYNC_INPUT]:
876 Remove; this code is not used on Windows.
877
75f4f1ac
EZ
8782009-01-30 Eli Zaretskii <eliz@gnu.org>
879
880 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
881 EOLs that also has stray ^M characters.
882
07a1e794
JB
8832009-01-30 Juanma Barranquero <lekktu@gmail.com>
884
885 * atimer.c (run_timers, alarm_signal_handler):
886 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
887 * w32inevt.c (w32_console_read_socket):
888 * w32term.c (w32_read_socket):
889 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
890
a8b11cc9
CY
8912009-01-30 Chong Yidong <cyd@stupidchicken.com>
892
893 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
894 Initialize it as a relative filename pattern.
895 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
896 (Fcall_process_region): Simplify temp file creation using
897 temporary-file-directory.
898
c279587b
EZ
8992009-01-29 Eli Zaretskii <eliz@gnu.org>
900
901 * msdos.c: Rename pending_signals to msdos_pending_signals.
902 (sig_suspender, sigprocmask): Adjust.
903
a8fe3242
CY
9042009-01-29 Chong Yidong <cyd@stupidchicken.com>
905
906 * keyboard.c (pending_signals): New var.
907 (poll_for_input, input_available_signal, init_keyboard): Set it.
908 (process_pending_signals): New function.
909
910 * lisp.h (QUIT): Check pending_signals instead of
911 interrupt_input_pending. Use process_pending_signals.
912
51d861de 913 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 914
51d861de 915 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
916
917 * sysdep.c (emacs_write): Use process_pending_signals.
918
919 * xterm.c (XTread_socket): Update pending_signals.
920
921 * w32term.c (w32_read_socket): Update pending_signals.
922
923 * w32inevt.c (w32_console_read_socket): Update pending_signals.
924
6570a1c4
KH
9252009-01-29 Kenichi Handa <handa@m17n.org>
926
927 * xftfont.c (xftfont_has_char): New function.
928 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
929
d72a4afa
AR
9302009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
931
932 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
933 under GNUstep.
934 (ns_query_color): New declaration.
935
936 * nsterm.m (ns_confirm_quit): New variable.
937 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
938 (EmacsApp-applicationShouldTerminate:): Use it.
939 (EmacsPrefsController): Let user set it.
940 (ns_query_color): New function.
941 (ns_defined_color): Use it.
942 (ns_initialize): Drop.
943 (ns_term_init): Add two lines from ns_initialize(), and set
944 input_interrupt_mode to nil.
945
946 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 947 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 948
9fe78804
KH
9492009-01-28 Kenichi Handa <handa@m17n.org>
950
951 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
952 (fontset_get_font_group): Remember that no font-group is specified
953 for C.
9fe78804 954
fa57de36
CY
9552009-01-27 Chong Yidong <cyd@stupidchicken.com>
956
930600e9
CY
957 * fns.c (concat): Check for string overflow (bug#1787).
958
fa57de36
CY
959 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
960 Quadruple undo limits (bug#1501).
961
7179ce7b
KH
9622009-01-27 Kenichi Handa <handa@m17n.org>
963
964 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
965 directly use GT_Get_Char_index.
966
967 * xftfont.c (struct xftfont_info): New member `index'.
968
969 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 970 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 971
5be8fcc0
CY
9722009-01-26 Kenichi Handa <handa@m17n.org>
973
974 * fontset.c (fontset_find_font): Fix handling of non-cons return
975 value of fontset_get_font_group.
976 (fontset_font): Revert last change.
977
19ae3e61
JR
9782009-01-26 Jason Rumney <jasonr@gnu.org>
979
980 * w32font.c (w32font_list_internal): Return quickly if registry is
981 unknown. Simplify final return.
982 (add_font_entity_to_list): Break complex logic down into more
983 manageable chunks. Move unknown registry check to
984 w32font_list_internal.
985
8612b71a
AR
9862009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
987
988 Changes to remove Feval calls from GUI under NS.
989
d8038940
JB
990 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
991 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
992 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
993
994 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
995 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
996 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
997 instead of NON_ASCII_KEYSTROKE_EVENT.
998 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
999 (EmacsApp-applicationShouldTerminate:): Query user.
1000 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
1001 instead of Feval.
1002
1003 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
1004
1005 * keyboard.c (kbd_buffer_get_event): Check for it.
1006 (keys_of_keyboard): Define lispy keys for
1007 ns-put/unput-working-text.
1008
1009 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
1010 versions.
1011 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
1012
6288ae55
CY
10132009-01-25 Chong Yidong <cyd@stupidchicken.com>
1014
1015 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 1016 setting current_buffer directly. (Bug#2044)
6288ae55 1017
289e7f8f
CY
10182009-01-24 Chong Yidong <cyd@stupidchicken.com>
1019
5ce87308 1020 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 1021 any work. (Bug#1952, bug#1990).
5ce87308 1022
64cc3cf6 1023 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 1024
b3243e6f
AR
10252009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1026
1027 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
1028 (ns_no_defaults): New declaration.
1029 (main): Use it.
e0d2e69a 1030
d900b2af 1031 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 1032
d900b2af 1033 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 1034
d900b2af
AR
1035 * nsterm.m (ns_no_defaults): New variable.
1036 (ns_initialize): Don't read defaults when ns_no_defaults.
1037 (EmacsView-readSelectionFromPasteboard:)
1038 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 1039 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
1040 (ns_dumpglyphs_stretch): New function.
1041 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 1042 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 1043
e0d2e69a
AR
1044 * nsimage.m (setPixmapData:): Set to ignore image DPI.
1045
3ac71f5d
CY
10462009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
1047
1048 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
1049 call for Sparc64.
1050
3fe53a83
AR
10512009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1052
1053 * nsfns.m:
1054 * nsgui.h:
1055 * nsmenu.m:
1056 * nsselect.m:
1057 * nsterm.h:
1058 * nsterm.m: Remove '23' comments that indicated code added during
1059 update from emacs-20 -> emacs-23.
1060
10f87c6f 10612009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
1062
1063 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 1064 ns_alternate_modifier. (Bug#1217)
a3b53a85 1065
c7cef62d
AR
1066 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
1067 Display all shortcuts, including those w/o super modifier.
1068
575fb8bd
AR
1069 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
1070
918b848b
CY
10712009-01-22 Chong Yidong <cyd@stupidchicken.com>
1072
1073 * fileio.c (Vwrite_region_post_annotation_function)
1074 (Vwrite_region_annotation_buffers): New vars.
1075 (build_annotations_unwind): Just reset
1076 Vwrite_region_annotation_buffers.
1077 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
1078 Call write-region-post-annotation-function.
1079 (build_annotations): Add to Vwrite_region_annotation_buffers if
1080 buffer changes.
1081
a39e2539
AR
10822009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1083
1084 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
1085 Tiger.
51d861de
SM
1086 * nsfns.m (ns_do_applescript):
1087 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 1088
35ed44db
AR
10892009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
1090
1091 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
1092
cbe0b5bf
AR
10932009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1094
1095 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 1096
6049d3a0
AR
1097 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
1098
1099 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
1100 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
1101 handle Ctrl-tab. (Bug#1841)
1102 (ns_get_color): Use unsigned long long for scanned hex string value.
1103 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 1104 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
6049d3a0 1105 (EmacsPrefsController-setPanelFromDefaultValues) New function.
3a88a825 1106 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 1107 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 1108 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 1109 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 1110
d3810c21 1111 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 1112 DPI. (Bug#1316)
d3810c21
AR
1113 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
1114 values in onTiger section.
4c7077c3 1115
e301e634
CY
11162009-01-19 Chong Yidong <cyd@stupidchicken.com>
1117
7f82490b
CY
1118 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
1119 Check return value of font_spec_from_name.
64cc3cf6 1120 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
1121
1122 * font.c (font_spec_from_name): Return Qnil if font name could not
1123 be parsed.
1124 (font_parse_name): Treat a `?' character as part of an XLFD.
1125
e301e634
CY
1126 * fns.c (Fsubstring): Doc fix.
1127
1c0db158
KH
11282009-01-19 Kenichi Handa <handa@m17n.org>
1129
51d861de 1130 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
1131 (ftfont_list): Likewise.
1132
acf20901
JB
11332009-01-18 Juanma Barranquero <lekktu@gmail.com>
1134
fff4e459
JB
1135 * dbusbind.c (Fdbus_register_signal):
1136 * process.c (conv_sockaddr_to_lisp):
1137 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
1138
acf20901
JB
1139 * callproc.c (Fgetenv_internal): Doc fix.
1140
e7abcdfb
CY
11412009-01-16 Chong Yidong <cyd@stupidchicken.com>
1142
1143 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
1144 it is not even used.
1145
b60861e6
GM
11462009-01-16 Glenn Morris <rgm@gnu.org>
1147
1148 * font.c (Ffont_variation_glyphs): Silence compiler.
1149
8db52afe
JB
11502009-01-15 Juanma Barranquero <lekktu@gmail.com>
1151
1152 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
1153 Reported by David Robinow <drobinow@gmail.com>.
1154
4cddb209
KH
11552009-01-15 Kenichi Handa <handa@m17n.org>
1156
51d861de 1157 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 1158
f247f67b
JR
11592009-01-14 Jason Rumney <jasonr@gnu.org>
1160
1161 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 1162 never a fontset. (Bug#1562)
f247f67b 1163
f56a4450
KH
11642009-01-14 Kenichi Handa <handa@m17n.org>
1165
1166 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 1167 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 1168
4e99855e
CY
11692009-01-13 Chong Yidong <cyd@stupidchicken.com>
1170
1171 * font.c (font_clear_prop): If clearing the family, clear the font
1172 width index too.
1173
fff4e459 1174 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 1175
24f01470
JB
11762009-01-12 Juanma Barranquero <lekktu@gmail.com>
1177
1178 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
1179 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
1180 functions, use sizeof.
1181
a41240a3
MR
11822009-01-12 Martin Rudalics <rudalics@gmx.at>
1183
1184 * keyboard.c (read_char): Fix case where last_nonmenu_event
1185 returned a bad value with submenus. (Bug#447)
1186
944636b8
CY
11872009-01-12 Chong Yidong <cyd@stupidchicken.com>
1188
1189 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
1190 family, clear the font width index too.
1191
0dad7c6f
JR
11922009-01-11 Jason Rumney <jasonr@gnu.org>
1193
1194 * keyboard.c (cmd_error_internal): Exit when errors occur before
1195 frame creation and not in daemon mode. (Bug#1836)
1196
7c2363af
CY
11972009-01-10 Chong Yidong <cyd@stupidchicken.com>
1198
1199 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
1200 of a display vector, backtrack.
1201 (try_window_reusing_current_matrix): Check glyph type before
1202 referencing charpos member.
1203
97b1b294
EZ
12042009-01-10 Eli Zaretskii <eliz@gnu.org>
1205
1206 Fix Bug #876:
1207
1208 * coding.c (inhibit_null_byte_detection): New variable.
1209 (detect_coding, detect_coding_system): Don't pay attention to null
1210 bytes if inhibit_null_byte_detection is non-zero.
51d861de 1211 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
1212 <inhibit-iso-escape-detection>: Doc fix.
1213
4624b6e3
JR
12142009-01-09 Jason Rumney <jasonr@gnu.org>
1215
1216 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 1217 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
1218 Only report Unicode Plane 2 fonts as unicode-sip.
1219
323b840c
CY
12202009-01-09 Chong Yidong <cyd@stupidchicken.com>
1221
51d861de
SM
1222 * xfaces.c (Fx_font_family_list): Delete function.
1223 Move compatibility version to faces.el.
323b840c 1224
51d861de 1225 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 1226
eba7400d
MR
12272009-01-09 Martin Rudalics <rudalics@gmx.at>
1228
1229 * frame.c (x_set_frame_parameters): Remember requested value for
1230 fullscreen before it's reset by the parameter handler.
1231
4b09796d
GM
12322009-01-09 Glenn Morris <rgm@gnu.org>
1233
1234 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 1235 (last_command_event): ... and update all users.
4b09796d
GM
1236 (last_input_char): For clarity, rename to...
1237 (last_input_event): ... and update all users.
1238 (last-command-char, last-input-char): Move to subr.el as aliases.
1239 * cmds.c, commands.h: Update for last_command_char rename.
1240
14ccea62
CY
12412009-01-08 Chong Yidong <cyd@stupidchicken.com>
1242
51d861de 1243 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 1244
5f004711
JR
12452009-01-08 Jason Rumney <jasonr@gnu.org>
1246
1247 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
1248 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
1249 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
1250 Don't declare.
fff4e459 1251 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
1252 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
1253
b71f6f73
KH
12542009-01-07 Kenichi Handa <handa@m17n.org>
1255
50b06221 1256 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 1257 remember the coding system used for decoding in
50b06221
KH
1258 coding_system (Bug#1039).
1259
b71f6f73 1260 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 1261 breaking the loop. (Bug#870)
b71f6f73
KH
1262 (decode_coding_utf_16, decode_coding_emacs_mule)
1263 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
1264 (decode_coding_charset): Likewise.
1265
56f668f7
MR
12662009-01-05 Martin Rudalics <rudalics@gmx.at>
1267
1268 * frame.c (x_set_frame_parameters): Make sure height (width) get
1269 applied when fullwidth (fullheight) is set. (Bug#1522)
1270
5da9424d
JB
12712009-01-04 Juanma Barranquero <lekktu@gmail.com>
1272
1273 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
1274 (utc_base): Declare as ULONGLONG, not long double.
1275 (convert_time_raw): Delete.
1276 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
1277 (initialize_utc_base): New function.
1278 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
1279 (convert_from_time_t): Use initialize_utc_base; compute result with
1280 64-bit arithmetic.
1281 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
1282
c4605e09
EZ
12832009-01-03 Eli Zaretskii <eliz@gnu.org>
1284
9acef61c 1285 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
1286 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
1287 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
1288 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
1289 [!subprocesses]: Define.
1290 (syms_of_process) [!subprocesses]: Intern and staticpro them.
1291 (Flist_system_processes, Fsystem_process_attributes)
1292 [!subprocesses]: Call list_system_processes and
1293 system_process_attributes instead of returning Qnil.
1294
9acef61c
JB
1295 * dosfns.c (system_process_attributes, list_system_processes):
1296 New functions.
c4605e09
EZ
1297
1298 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
1299
1300 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
1301 Don't use the default (no-op) implementation.
1302
8b7d0a16
JR
13032009-01-03 Jason Rumney <jasonr@gnu.org>
1304
a6d46bc1
JR
1305 * keyboard.c (parse_modifiers_uncached): Wheel events are
1306 clicks (bug#687).
1307
8b7d0a16
JR
1308 * w32term.c (x_query_colors, x_query_color): New functions.
1309
1310 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
1311 (svg_load_image): Cast returned pointers from dynamically loaded
1312 functions. Eliminate W32 specific code.
1313
bfe11752
DN
13142009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
1315
89e2438a
DN
1316 * nsfns.m (x_set_foreground_color, x_set_background_color)
1317 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
1318 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
1319 x_ prefix instead of ns_. Update references.
1320 (syms_of_nsfns): Add a FIXME comment.
1321
1322 * nsterm.m (x_set_cursor_type): New prototype.
1323 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
1324
bfe11752
DN
1325 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
1326 for Solaris instead of incorrectly providing Qutime and Qcutime.
1327
031da700
EZ
13282009-01-02 Eli Zaretskii <eliz@gnu.org>
1329
1330 * w32.c (process_times): Compute sum of utime and stime.
1331 (system_process_attributes): Add Qtime to the alist.
1332
1333 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
1334 and add them to the alist.
1335
1336 * process.c (top level) <Qtime, Qctime>: New variables.
1337 (syms_of_process): staticpro them.
1338 (Fsystem_process_attributes): Add their documentation to the doc
1339 string.
1340
1341 * process.h: Declare Qtime and Qctime.
1342
df23bf08
JR
13432009-01-02 Jason Rumney <jasonr@gnu.org>
1344
9acef61c 1345 * image.c (Qgobject): New symbol.
df23bf08
JR
1346 (syms_of_image): Initialize it.
1347 (init_svg_functions): Load some functions from gobject library.
1348
5bbdf7aa
DN
13492009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
1350
1351 * frame.c (make_terminal_frame): Remove redundant code and useless
1352 block.
1353
63136da6
AS
13542009-01-01 Andreas Schwab <schwab@suse.de>
1355
1356 * process.c (conv_sockaddr_to_lisp): Add workaround for
1357 getsockname bug on BSD.
1358
9ef69046
CY
13592009-01-01 Chong Yidong <cyd@stupidchicken.com>
1360
d6fafbe0
CY
1361 * xfns.c (x_create_tip_frame): Set border width of the X window.
1362
51d861de 1363 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 1364
f9c34147
JR
13652009-01-01 Jason Rumney <jasonr@gnu.org>
1366
9acef61c 1367 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
1368 Don't block input, as per earlier xterm.c changes.
1369
f5497e45
AR
13702008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
1371
1372 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
1373 (ns_appkit_version_int): New function.
1374 (x-server-version): Use ns_appkit_version_int and follow 21+
1375 convention of returning 3 integers.
1376
c19cab20
KH
13772008-12-30 Kenichi Handa <handa@m17n.org>
1378
1379 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
1380 (CHAR_SURROGATE_PAIR_P): New macro.
1381
1382 * font.h (struct font_driver): New member get_variation_glyphs.
1383
9acef61c 1384 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
1385 (Ffont_variation_glyphs): New function.
1386 (syms_of_font): Defsubr it.
1387
1388 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
1389 ftfont_variation_glyphs.
1390 (setup_otf_gstring): New function.
1391 (ftfont_drive_otf): Use it.
1392 (ftfont_shape_by_flt): Handle variation selector.
1393 (ftfont_variation_glyphs): New function.
1394
28cd591f
MR
13952008-12-30 Martin Rudalics <rudalics@gmx.at>
1396
1397 * frame.c (Vemacs_iconified): Remove.
1398
7f714baf
JR
13992008-12-30 Jason Rumney <jasonr@gnu.org>
1400
1401 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 1402 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 1403
9d2d22ab
CY
14042008-12-30 Chong Yidong <cyd@stupidchicken.com>
1405
1406 * indent.c (Fvertical_motion): Don't advance iterator if we have
1407 reseated to the desired position.
1408
1409 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
1410 checking for pos match.
1411
545312c2
KH
14122008-12-30 Kenichi Handa <handa@m17n.org>
1413
1ede3eb6
KH
1414 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
1415 just get the low 8-bit of the code.
1416
545312c2
KH
1417 * font.c (font_intern_prop): Validate str as multibyte.
1418
bd7bbf29
DN
14192008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
1420
31e0750e
DN
1421 * dispextern.h (struct face): Move lface and hash from the middle
1422 of bitfields.
1423
bd7bbf29
DN
1424 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
1425
b5672e7c
DN
14262008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
1427
1428 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
1429 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
1430 instead of intervals.h.
1431
d704470f
AS
14322008-12-26 Andreas Schwab <schwab@suse.de>
1433
1434 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
1435 cons.
1436
54b33868
MR
14372008-12-26 Martin Rudalics <rudalics@gmx.at>
1438
1439 * textprop.c (Qminibuffer_prompt): New variable.
1440 (syms_of_textprop): Initialize it.
1441 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
1442 in minibuffer-prompt face. (Bug#1662)
1443
40b615d6
JR
14442008-12-25 Jason Rumney <jasonr@gnu.org>
1445
1446 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
1447
baae5c2d
JR
14482008-12-24 Jason Rumney <jasonr@gnu.org>
1449
1450 * ralloc.c (r_alloc_reset_variable): New function.
1451
1452 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 1453 record of what points where. (Bug#716)
baae5c2d 1454
a9051c88
DN
14552008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
1456
1457 * minibuf.c (read_minibuf): Follow the non-interactive case when
1458 running as a daemon, before detaching.
1459
8b146312
AS
14602008-12-22 Andreas Schwab <schwab@suse.de>
1461
1462 * buffer.c (init_buffer): Use realloc instead of xrealloc.
1463 * gtkutil.c (free_widget_value): Use xfree instead of free.
1464
56f2de10
MR
14652008-12-22 Martin Rudalics <rudalics@gmx.at>
1466
1467 * frame.c (delete_frame): New function derived from
1468 Fdelete_frame to handle Qnoelisp value for FORCE argument.
1469 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
1470 (Fdelete_frame): Call delete_frame. Remove line from doc-string
1471 saying that FORCE non-nil doesn't run `delete-frame-functions'.
1472 * frame.h: Extern delete_frame.
1473 * window.c (window_loop):
1474 * terminal.c (delete_terminal):
1475 * xterm.c (x_connection_closed):
1476 * xfns.c (Fx_hide_tip):
9acef61c 1477 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 1478
1fc200d6
JR
14792008-12-21 Jason Rumney <jasonr@gnu.org>
1480
1481 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
1482 when character maps to .notdef character.
1483
5e252df2
SM
14842008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
1485
1486 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
1487
99b72cc4
JR
14882008-12-20 Jason Rumney <jasonr@gnu.org>
1489
1490 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 1491 a graphical frame on Windows. (Bug#1325)
99b72cc4 1492
acc49a52
JD
14932008-12-20 Jan Djärv <jan.h.d@swipnet.se>
1494
1495 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
1496
6ea15123
CY
14972008-12-20 Chong Yidong <cyd@stupidchicken.com>
1498
1499 * minibuf.c (Fread_buffer): Doc fix.
1500
b2dab6c8
JR
15012008-12-20 Jason Rumney <jasonr@gnu.org>
1502
54ea0c87 1503 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 1504 server name in UNC paths. (Bug#719)
54ea0c87 1505
b2dab6c8 1506 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 1507 charbuf. (Bug#1035)
b2dab6c8 1508
6d1921be
DN
15092008-12-19 Daniel Engeler <engeler@gmail.com>
1510
1511 * sysdep.c (serial_configure): Fix typo.
1512
53934c98
DN
15132008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
1514
1515 * sysdep.c: Include alloca.h.
f4f634e8
DN
1516 (system_process_attributes): Add implementation for Solaris.
1517
1518 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 1519
06e111a6
DN
15202008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
1521
1522 Reorganize implementation of Flist_system_processes and
1523 Fsystem_process_attributes. No functional changes.
1524 * process.c: Don't #include pwd.h, grp.h and limits.h.
1525 (Flist_system_processes): Just call list_system_processes.
1526 (Fsystem_process_attributes): Just call system_process_attributes.
1527 (procfs_list_system_processes, time_from_jiffies)
1528 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
1529 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
1530
1531 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
1532 (list_system_processes): Rename from
1533 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
1534 Provide a do nothing implementation.
1535 (system_process_attributes): Rename from
1536 procfs_list_system_processes.
1537 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 1538 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
1539
1540 * w32.c (list_system_processes): Rename from
1541 w32_list_system_processes.
1542 (system_process_attributes): Rename from
1543 w32_system_process_attributes.
1544
1545 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
1546
1547 * process.h (w32_list_system_processes)
1548 (w32_system_process_attributes): Remove.
1549 (list_system_processes, system_process_attributes): New
1550 prototypes.
1551
6a705b23
KH
15522008-12-19 Kenichi Handa <handa@m17n.org>
1553
1554 * xfont.c (xfont_decode_coding_xlfd): New function.
1555 (xfont_encode_coding_xlfd): New function.
1556 (xfont_list_pattern): Decode XLFD by iso-8859-1.
1557 (xfont_list): Decode and encode XLFD by iso-8859-1.
1558 (xfont_match): Likewise.
1559 (xfont_list_family): Likewise.
1560 (xfont_open): Likewise.
1561
d66c0241 1562 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
1563 names are utf-8.
1564
d66c0241 1565 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
1566 names are utf-8.
1567
5a130941
JD
15682008-12-18 Jan Djärv <jan.h.d@swipnet.se>
1569
1570 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
1571 changed.
bfd20325
JD
1572 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
1573 clicked on a detached tool bar button.
5a130941 1574
fd95644b
DN
15752008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
1576
1577 * emacs.c (main): Print and error and exit when no data is read
1578 from the pipe.
1579
e6eee6ae
JR
15802008-12-17 Jason Rumney <jasonr@gnu.org>
1581
1582 * w32font.c (w32font_has_char): Always return -1.
1583
a35dd56b
KH
15842008-12-16 Kenichi Handa <handa@m17n.org>
1585
1586 * font.c (font_open_entity): Fix previous change.
1587
0e3635c2
DN
15882008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
1589
1590 * process.c: Include <limits.h>.
1591
d4835507 15922008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
1593
1594 * font.c (font_update_drivers): Fix mistake in reconstructing the
1595 driver list.
1596
15972008-12-16 Chong Yidong <cyd@stupidchicken.com>
1598
1599 * font.c (font_clear_cache): Fix format of font cache data.
1600
e2cbc401
CY
16012008-12-15 Chong Yidong <cyd@stupidchicken.com>
1602
1603 * xftfont.c (xftfont_open): Free Xft font pattern if
1604 XftFontOpenPattern fails.
1605
1606 * xterm.c (x_free_frame_resources): Remove extraneous call to
1607 free_frame_faces.
1608
b131d535
CY
16092008-12-13 Chong Yidong <cyd@stupidchicken.com>
1610
1611 * xterm.c (x_delete_display): Move xim_close_dpy call to
1612 x_delete_terminal.
1613 (x_delete_terminal): Call xim_close_dpy.
1614
e6df5336
JR
16152008-12-13 Jason Rumney <jasonr@gnu.org>
1616
1617 * w32font.c (intern_font_name): New function.
1618 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
1619 (w32font_open_internal, Fx_select_font): Decode font name.
1620 (fill_in_logfont, list_all_matching_fonts): Encode font name.
1621
1622 * w32font.h (intern_font_name): Declare new function.
1623
1624 * w32uniscribe.c (add_opentype_font_name_to_list):
1625 Use intern_font_name.
1626
20d68145
CY
16272008-12-13 Chong Yidong <cyd@stupidchicken.com>
1628
9f2554de
CY
1629 * frame.c (Fdelete_frame): Call free_font_driver_list.
1630
3d9bec9a
CY
1631 * font.c (free_font_driver_list): Implement missing function.
1632
20d68145
CY
1633 * w32term.c (w32_term_init): Don't initialize the image cache
1634 here; it will be done in init_frame_faces.
1635
1636 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
1637 (struct x_display_info): Remove unused member null_pixel. New
1638 member xim_callback_data.
1639
1640 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
1641 (xim_initialize): Save pointer to callback function data.
1642 (xim_close_dpy): Free callback function data. Call XCloseIM,
1643 reverting 2008-11-04 change by David Smith.
1644 (x_term_init): Don't initialize the image cache here; it will be
1645 done in init_frame_faces. Remove ancient "null_pixel" cruft.
1646 (x_delete_display): Free x_dnd_atoms member.
1647
96f9306b
KH
16482008-12-13 Kenichi Handa <handa@m17n.org>
1649
6dec9044
JB
1650 * font.c (font_rescale_ratio): Moved from xfaces.c.
1651 Argument type changed. Handle a font-spec too.
96f9306b 1652 (font_score): Check Vface_font_rescale_alist.
6dec9044 1653 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
1654
1655 * xfaces.c (font_rescale_ratio): Moved to font.c.
1656
8d5b4964
CY
16572008-12-13 Chong Yidong <cyd@stupidchicken.com>
1658
1659 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
1660
e6df5336
JR
16612008-12-12 Jason Rumney <jasonr@gnu.org>
1662
1663 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
1664 Vwindow_system_version to the real w32 major version.
1665
97c6058a
DN
16662008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
1667
1668 * term.c (init_tty): Move setting the terminal name before the
1669 potential user: maybe_fatal.
1670
ec4e88d7
CY
16712008-12-11 Chong Yidong <cyd@stupidchicken.com>
1672
d4835507
JB
1673 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
1674 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 1675
b4233ec9
JR
16762008-12-11 Jason Rumney <jasonr@gnu.org>
1677
8ec71e23 1678 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 1679 SYMBOL_CHARSET. (Bug#547)
8ec71e23 1680
b4233ec9 1681 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 1682 size for surrogates. (Bug#1096, bug#872)
b4233ec9 1683
011a0143
JB
16842008-12-11 Juanma Barranquero <lekktu@gmail.com>
1685
1686 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
1687
3c309f34
JB
16882008-12-11 Juanma Barranquero <lekktu@gmail.com>
1689
1690 * process.c (Fsystem_process_attributes, syms_of_process):
1691 Fix typo in name of Ssystem_process_attributes.
1692 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
1693
fedc6ab5
JB
16942008-12-11 Juanma Barranquero <lekktu@gmail.com>
1695
1696 * syntax.c (Fmodify_syntax_entry): Doc fix.
1697
ba3de0e8
JB
16982008-12-10 Juanma Barranquero <lekktu@gmail.com>
1699
1700 * font.c (Ffont_spec): Move usage to end of docstring.
1701
174f1c74
JR
17022008-12-10 Jason Rumney <jasonr@gnu.org>
1703
1704 * w32font.c (Qcham): New symbol.
1705 (font_supported_scripts): Add cham, and comments for other new
1706 scripts in bitfield from OpenType spec.
9d32f818
JR
1707 (add_font_entity_to_list): Limit unicode-sip fonts to those that
1708 contain characters beyond the bmp.
174f1c74 1709
7b649478
KH
17102008-12-10 Kenichi Handa <handa@m17n.org>
1711
1712 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 1713 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
1714 Qunicode_sip.
1715
2133e2d1
JB
17162008-12-10 Juanma Barranquero <lekktu@gmail.com>
1717
1718 * coding.c (QCdefault_char): Rename from QCdefalut_char.
1719 (Fcoding_system_put): Use QCdefault_char.
1720 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
1721
9af886ee
CY
17222008-12-09 Chong Yidong <cyd@stupidchicken.com>
1723
74d819eb
CY
1724 * xftfont.c (syms_of_xftfont): Fix typo.
1725
4ccfa1c0 1726 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 1727
7c19d3ae
DN
17282008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
1729
1730 * emacs.c (main): Close daemon_pipe on exec.
1731
567826bb
CY
17322008-12-08 Chong Yidong <cyd@stupidchicken.com>
1733
1734 * termchar.h (struct tty): New members termcap_term_buffer and
1735 termcap_strings_buffer.
1736
1737 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 1738 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
1739 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
1740 All callers changed.
1741 (init_tty): Store termcap data and string buffers in new struct
1742 tty members termcap_term_buffer and termcap_strings_buffer.
1743 (delete_tty): Free them.
4ccfa1c0 1744 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 1745
aa96c42b
SZ
17462008-12-07 Seiji Zenitani <zenitani@mac.com>
1747
1748 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 1749 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 1750
b7e1d896
CY
17512008-12-06 Chong Yidong <cyd@stupidchicken.com>
1752
1753 * coding.c (make_conversion_work_buffer): Disable buffer
1754 modification hooks in the work buffer.
1755
b5ec91a5
EZ
17562008-12-05 Eli Zaretskii <eliz@gnu.org>
1757
1758 * process.c (procfs_system_process_attributes): If `nread' has a
1759 negative value, assign zero to it.
1760
a5d2a52b
CY
17612008-12-05 Chong Yidong <cyd@stupidchicken.com>
1762
68c5540b 1763 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 1764
7bf1bb21
KH
17652008-12-05 Kenichi Handa <handa@m17n.org>
1766
1767 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
1768 second character is a combining character.
1769
2fdc7d00
EZ
17702008-12-05 Eli Zaretskii <eliz@gnu.org>
1771
1772 * process.c (procfs_system_process_attributes): Don't use cmd,
1773 cmdsize, and q without initializing them first.
1774
bf6bfba8
JR
17752008-12-04 Jason Rumney <jasonr@gnu.org>
1776
1777 * w32font.c (w32font_draw): Initialize orig_clip before getting
1778 it, and delete it when finished.
1779
a3b1a468
DN
17802008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
1781
1782 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
1783 case when running as a daemon before detaching.
1784
8b8be8eb
JB
17852008-12-03 Juanma Barranquero <lekktu@gmail.com>
1786
805f2638 1787 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 1788
b1bde622
KH
17892008-12-03 Kenichi Handa <handa@m17n.org>
1790
e500c47d
KH
1791 * font.c (font_at): Set `multibyte' at first.
1792
ca516334
KH
1793 * coding.c (decode_coding_charset): Check type of an element of
1794 vector VALIDS.
7bf1bb21 1795 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 1796
4ccfa1c0 1797 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
1798 (font_for_char): Likewise.
1799
1e5ecd37
CY
18002008-12-03 Chong Yidong <cyd@stupidchicken.com>
1801
d5b01609 1802 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
1803 (font_update_lface): Handle fonts with corrupted size specs,
1804 i.e. non-int and non-float.
d5b01609 1805
11e3a6e4 1806 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 1807 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 1808 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 1809
ab06788b
CY
1810 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
1811
1e5ecd37 1812 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 1813 underline_minimum_offset for underline position.
1e5ecd37 1814
63c125ab
DN
18152008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
1816
1817 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
1818
1819 * character.c (c_string_width): Specify the type for LEN.
1820
3a8406e1
KH
18212008-12-03 Kenichi Handa <handa@m17n.org>
1822
4ccfa1c0 1823 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 1824 (decode_coding_utf_8): Likewise.
4ccfa1c0 1825 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 1826 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 1827
651df7d9
CY
18282008-12-02 Chong Yidong <cyd@stupidchicken.com>
1829
1830 * keyboard.c (make_lispy_position): Only use PT if the selected
1831 window is current.
1832
1f625c6c
AS
18332008-12-02 Andreas Schwab <schwab@suse.de>
1834
f7741ce9
AS
1835 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
1836
1f625c6c
AS
1837 * doprnt.c (doprnt1): Fix size of charbuf.
1838
92bc2678
CY
18392008-12-02 Chong Yidong <cyd@stupidchicken.com>
1840
1841 * keyboard.c (timer_check): Revert last change.
1842
93b9e8cc
JB
18432008-12-02 Juanma Barranquero <lekktu@gmail.com>
1844
1845 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
1846
fd7a37d5
JB
18472008-12-01 Juanma Barranquero <lekktu@gmail.com>
1848
1849 * makefile.w32-in: Update dependencies.
1850 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
1851
c115043b
AS
18522008-12-01 Andreas Schwab <schwab@suse.de>
1853
1854 * font.c (register_font_driver): Use xmalloc.
1855 (font_put_frame_data): Likewise.
1856
f5668d2a
CY
18572008-12-01 Chong Yidong <cyd@stupidchicken.com>
1858
860d96be
CY
1859 * xfaces.c (realize_x_face): Make abort condition clearer.
1860
f5668d2a
CY
1861 * gtkutil.c (update_frame_tool_bar): Initialize variable.
1862
379c17e7
CY
18632008-11-30 Chong Yidong <cyd@stupidchicken.com>
1864
1865 * keyboard.c (timer_check): After a timer runs, ensure that the
1866 selected window's buffer is current.
1867
35f36d65
JB
18682008-11-30 Juanma Barranquero <lekktu@gmail.com>
1869
f952c61c
JB
1870 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
1871 It was accidentally restored by the Unicode merge.
1872
35f36d65
JB
1873 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
1874
b23077df
JB
18752008-11-29 Juanma Barranquero <lekktu@gmail.com>
1876
1877 * w32proc.c: Include "coding.h".
1878 (Fw32_short_file_name): Encode filename passed to Windows API.
1879 (Fw32_long_file_name): Encode filename passed to Windows API and
1880 decode back the result. (Bug#1433)
1881
b8ebe9dd
KH
18822008-11-29 Kenichi Handa <handa@m17n.org>
1883
8cc53f96
KH
1884 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
1885 not before accessing it.
1886
b8ebe9dd
KH
1887 * charset.c (Fdefine_charset_internal): After calculating
1888 min_char, max_char, and fastmap, copy the charset structure again.
1889 (encode_char): Fix the previous change.
1890
59bc82c0
SZ
18912008-11-28 Seiji Zenitani <zenitani@mac.com>
1892
1893 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
1894
1895 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
1896
1897 * nsterm.m (x_set_frame_alpha): New function.
1898
32247e3d
EZ
18992008-11-27 Eli Zaretskii <eliz@gnu.org>
1900
1901 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
1902
b003e5ff
JB
19032008-11-27 Juanma Barranquero <lekktu@gmail.com>
1904
1905 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
1906 pointer to check_face_name.
1907
708550f5
KH
19082008-11-27 Kenichi Handa <handa@m17n.org>
1909
1910 * category.h (SET_CATEGORY_SET): Call set_category_set.
1911 (set_category_set): Extern it.
1912
1913 * category.c (hash_get_category_set): New function.
1914 (Fmodify_category_entry): Adjusted for the change of
1915 char_table_ref_and_range. Call hash_get_category_set to get a
1916 category set to store in the table.
1917
1918 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
1919 Funify_charset.
1920
2ae37cf0 1921 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
1922 (DECODE_CHAR): Check if the decoder vector is ready.
1923 (ENCODE_CHAR): Check if the encoder char-table is ready.
1924 (maybe_unify_char): Extern it.
1925
1926 * charset.c (Vchar_unified_charset_table): Delete it.
1927 (inhibit_load_charset_map): New variable.
1928 (temp_charset_work): New variable.
1929 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
1930 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
1931 New macros.
1932 (load_charset_map): Meaning of control_flag changed. If
1933 inhibit_load_charset_map is nonzero, setup a table in
1934 temp_charset_work.
1935 (load_charset): New argument control_flag.
1936 (map_charset_for_dump): New function.
1937 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
1938 map_charset_for_dump.
1939 (Fdefine_charset_internal): If the charset method is MAP, load
1940 mapping tables by calling load_charset.
1941 (Funify_charset): Don't load a mapping table but directly set
1942 Vchar_unify_table.
1943 (maybe_unify_char): New function.
1944 (decode_char): Don't handle the deleted method MAP_DEFERRED.
1945 Handle the case of inhibit_load_charset_map being nonzero.
1946 (encode_char): Don't handle the deleted method MAP_DEFERRED.
1947 Handle the case of inhibit_load_charset_map being nonzero.
1948 (Fclear_charset_maps): Just free temp_charset_work.
1949 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
1950 variable.
1951
1952 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
1953 change of char_table_ref_and_range.
1954 (char_table_ref_and_range): Change the meaning of argument FROM
1955 and TO. Now the caller must provide initial values for *FROM
1956 and *TO.
1957
1958 * fontset.c (fontset_add): Adjusted for the change of
1959 char_table_ref_and_range.
1960 (fontset_get_font_group): Likewise.
1961 (Ffontset_info): Likewise.
1962
1963 * keymap.c (describe_vector): Adjusted for the change of
1964 char_table_ref_and_range. For char-table, put boundary between
1965 non-ASCII and 8-bit characters.
1966
1967 * print.c (print_object): For bool-vector, delete unnecessary
1968 check of ASCII_BYTE_P.
1969
9196133b
JR
19702008-11-26 Jason Rumney <jasonr@gnu.org>
1971
1972 * w32font.c (w32font_open_internal): Don't include external
9acef61c 1973 leading in font height. (Bug#879)
9196133b 1974
9f688acf
GM
19752008-11-26 Glenn Morris <rgm@gnu.org>
1976
1977 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
1978 redefinition with ifdef. (Bug#1383)
1979
90d19aff
AR
19802008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1981
1982 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
1983
4ccfa1c0 19842008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
1985
1986 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
1987 New EmacsView methods.
1988 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
1989 Fixes bug #1048,1357,1414.
1990
19912008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1992
1993 Fix bug #1362.
1994 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
1995 is not an indexed color.
1996 * nsterm.m (free_indexed_color): Add argument checking.
1997 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
1998
e7d5ecb3
CY
19992008-11-24 Chong Yidong <cyd@stupidchicken.com>
2000
2001 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
2002 Document confirm-after-completion value for
2003 minibuffer-completion-confirm.
2004
c285743c
JR
20052008-11-24 Jason Rumney <jasonr@gnu.org>
2006
2007 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
2008 warning.
2009
b0857706
JR
20102008-11-23 Jason Rumney <jasonr@gnu.org>
2011
2012 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
2013 restored before returning.
2014
2015 * w32font.c (check_face_name): New function.
2016 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 2017 fonts. (Bug#642)
b0857706 2018
ee50ff07
MR
20192008-11-22 Martin Rudalics <rudalics@gmx.at>
2020
2021 * buffer.c (Fswitch_to_buffer): Reword and mention new option
2022 confirm-nonexistent-file-or-buffer in doc-string.
2023
b8ff72fa
SM
20242008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
2025
2026 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
2027 Fix copy/paste typo. Add checks.
2028
cee53ed4
KH
20292008-11-21 Kenichi Handa <handa@m17n.org>
2030
2031 * coding.c (detect_coding_iso_2022): Reject invalid composition
2032 sequence.
2033 (DECODE_COMPOSITION_START): If the current source is the last
2034 block, and the current composition doesn't end, regard this
2035 sequence as invalid.
2036 (decode_coding_iso_2022): Handle invalid composition sequence.
2037
f6ef1e65
MR
20382008-11-20 Martin Rudalics <rudalics@gmx.at>
2039
2040 * window.c (coordinates_in_window): Don't return
2041 ON_VERTICAL_BORDER for the rightmost position of a mode/header
2042 line when the window is not the rightmost one. (Bug#1372)
2043
e08b1705
MR
20442008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
2045
2046 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
2047
ad98e89f
EZ
20482008-11-15 Eli Zaretskii <eliz@gnu.org>
2049
2050 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
2051 and bright_bg if noninteractive is non-zero.
2052
fb098a4b
CY
20532008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2054
2055 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
2056 x_draw_glyph_string_background.
2057
2058 * w32term.c (x_draw_glyph_string): Likewise.
2059
ce952b6e
CY
20602008-11-15 Chong Yidong <cyd@stupidchicken.com>
2061
2062 * xterm.c (x_draw_glyph_string): Stop drawing the background of
2063 the next glyph string once past the overhang width.
2064
2065 * nsterm.m (ns_draw_glyph_string): Likewise.
2066
2067 * w32term.c (x_draw_glyph_string): Likewise.
2068
26ea7079
CY
20692008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
2070
2071 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
2072 double file close.
2073
1c33c906
MR
20742008-11-14 Martin Rudalics <rudalics@gmx.at>
2075
2076 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
2077 dedicated status of window before attempting to display another
2078 buffer in it.
2079
8fc29035
JB
20802008-11-14 Juanma Barranquero <lekktu@gmail.com>
2081
2082 * msdos.c (Fmsdos_long_file_names):
2083 (syms_of_msdos) <dos-unsupported-char-glyph>:
2084 * dosfns.c (Fint86): Fix typos in docstrings.
2085
55fb4286
EZ
20862008-11-14 Eli Zaretskii <eliz@gnu.org>
2087
2088 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
2089
3fda0315
KY
20902008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
2091
2092 * puresize.h (BASE_PURESIZE): Increase to 1260000.
2093
7e849c17
CY
20942008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
2095
2096 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
2097
2098 * frame.h: Negative alpha means "don't touch".
2099
2100 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
2101
2102 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
2103
b9fd67bd
DN
21042008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
2105
2106 * hftctl.c:
2107 * chpdef.h:
2108 * acldef.h: Remove files used only for systems no longer supported.
2109
2110 * Makefile.in: Fix .o alphabetical ordering.
2111 (hftctl.o): Remove dependency, file removed.
2112 (keymap.o, print.o): Depend on charset.h.
2113
d5998e03
KH
21142008-11-10 Kenichi Handa <handa@m17n.org>
2115
2ae37cf0 2116 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 2117
be70e183
CY
21182008-11-08 Chong Yidong <cyd@stupidchicken.com>
2119
2120 * dired.c (file_name_completion): If completion_ignore_case is
2121 enabled, ignore case when checking completion-regexp-list.
2122
7cf94eac
EZ
21232008-11-08 Eli Zaretskii <eliz@gnu.org>
2124
2125 * vm-limit.c (get_lim_data): Fix last change.
2126
ee107a89
KH
21272008-11-08 Kenichi Handa <handa@m17n.org>
2128
2129 * character.c (Fget_byte): New function.
2130 (syms_of_character): Defsubr Fget_byte.
2131
5fd15622
CY
21322008-11-07 Chong Yidong <cyd@stupidchicken.com>
2133
2134 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
2135 cursor position is valid after scrolling.
2136
13d62fad
JB
21372008-11-06 Juanma Barranquero <lekktu@gmail.com>
2138
2139 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
2140
a1dd2936
GM
21412008-11-06 Glenn Morris <rgm@gnu.org>
2142
2143 * xterm.c (handle_one_xevent): Don't let popup menus cause
2144 mouse-autoselect-window related window switching. (Bug#1261)
2145
860cd236
CY
21462008-11-04 David Smith <davidsmith@acm.org> (tiny change)
2147
2148 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
2149
653a3150
AS
21502008-11-04 Andreas Schwab <schwab@suse.de>
2151
2152 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
2153
870f5cac
CY
21542008-11-03 Chong Yidong <cyd@stupidchicken.com>
2155
2156 * xfns.c (Fx_wm_set_size_hint): New function.
2157
1e02f3cb
MR
21582008-11-03 Martin Rudalics <rudalics@gmx.at>
2159
2160 * textprop.c (Fprevious_single_char_property_change): Return 0
2161 when there's no change in a string. (Bug#1301)
2162
e630dfc6
MR
21632008-11-02 Martin Rudalics <rudalics@gmx.at>
2164
2165 * frame.c (do_switch_frame): New argument NORECORD passed to
2166 Fselect_window.
2167 (Fselect_frame): New argument NORECORD passed to
2168 do_switch_frame.
2169 (Fset_frame_selected_window): New argument NORECORD passed to
2170 Fselect_frame.
2171 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
2172 in call of do_switch_frame.
2173 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
2174 Handle NORECORD argument in call of Fselect_frame.
2175 * lisp.h (do_switch_frame, Fselect_frame)
2176 (Fset_frame_selected_window): Adjust declarations.
2177 * window.c (select_frame_norecord): New function.
2178 (run_window_configuration_change_hook): Use it and call
2179 Fselect_frame with NORECORD set.
2180 (Fselect_window): Pass NORECORD to Fselect_frame.
2181 (Fset_window_configuration): Handle NORECORD argument in call of
2182 do_switch_frame.
2183 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
2184 Fset_frame_selected_window.
2185 * keyboard.c (command_loop_1): Handle NORECORD in call of
2186 Fselect_frame (currently ifdefd).
2187
9020b223
GM
21882008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
2189
2190 * emacs.c (USAGE2): Untabify.
2191
793ffee8
SM
21922008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
2193
2194 * composite.c (fill_gstring_header): Fix copy/paste typo.
2195
ab6d1131
MR
21962008-10-31 Martin Rudalics <rudalics@gmx.at>
2197
2198 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
2199 (Fother_window): Rename argument and rewrite doc-string.
2200 (select_window_norecord): Fix return value. (Bug#1276)
2201
601a9cf1
JB
22022008-10-30 Juanma Barranquero <lekktu@gmail.com>
2203
2204 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
2205 new frames overriding foreground for tooltips. Based on similar patch
2206 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
2207
813b0652
CY
22082008-10-29 Chong Yidong <cyd@stupidchicken.com>
2209
2210 * emacs.c (Fdaemon_initialized): Initialize nfd.
2211
4414f58f
MR
22122008-10-29 Martin Rudalics <rudalics@gmx.at>
2213
2214 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
2215 (Fwindow_text_height): Clarify doc-strings.
2216 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
2217 doc-string of window-scroll-functions.
2218
ecdcaa09
RS
22192008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
2220
2221 * category.c (syms_of_category): Fix typo in docstring.
2222
23fe745a
JB
22232008-10-28 Juanma Barranquero <lekktu@gmail.com>
2224
2225 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
2226 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
2227 Fix typos in docstrings.
2228
ff808935
DN
22292008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
2230
2231 * emacs.c (daemon_pipe): Make non-static.
2232 (IS_DAEMON): Move definition ...
2233 * lisp.h (IS_DAEMON): ... here.
2234 (daemon_pipe): Declare.
2235 (is_daemon): Remove.
2236 * dispnew.c (init_display): Use IS_DAEMON.
2237
fc012771
SM
22382008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2239
2240 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
2241 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
2242
2243 * emacs.c (is_daemon): Remove.
2244 (main): Don't set is_daemon.
2245 (IS_DAEMON): New macro.
2246 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 2247 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
2248 parent exits.
2249 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
2250
d8bdbe6f
CY
22512008-10-27 Chong Yidong <cyd@stupidchicken.com>
2252
d1a072bf
CY
2253 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
2254 over-sized glyph, draw it with the default glyph width.
2255
e2e325aa
CY
2256 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
2257 glyph, draw it with the default glyph width.
2258
2259 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
2260 glyph, draw it with the default glyph width.
2261
d8bdbe6f
CY
2262 * xdisp.c (try_scrolling): When computing the distance from the
2263 scroll margin to PT, try moving some distance past the window
2264 bottom before giving up.
2265
7bfac547
MR
22662008-10-27 Martin Rudalics <rudalics@gmx.at>
2267
2268 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
2269 (Fset_window_buffer): Explain in doc-string that a window can be
2270 "strongly" dedicated to its buffer.
2271
4ff029f6
DN
22722008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
2273
2274 * emacs.c (daemon_name): New variable.
2275 (main): Deal with --daemon=SERVER_NAME.
2276 (Fdaemonp): Return a name if one was passed to --daemon.
2277
5790ef40
DN
22782008-10-26 Romain Francoise <romain@orebokech.com>
2279
f9bd0df9 2280 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
2281 (main): Create a pipe before forking, make the parent exit only after
2282 the child has closed its end of the pipe. Move closing the
2283 descriptors ...
2284 (Fdaemon_initialized): ... here. New function.
2285
f5385255
SM
22862008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
2287
4d632321
SM
2288 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
2289 the previous unoptimized table.
2290
f5385255
SM
2291 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
2292 the distinction between non-nil and non-t value of `dedicated'.
2293
6c56a0f3
CY
22942008-10-25 Chong Yidong <cyd@stupidchicken.com>
2295
2296 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 2297 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 2298
fec89261
MR
22992008-10-25 Martin Rudalics <rudalics@gmx.at>
2300
2301 * window.c (Fget_buffer_window, Fdelete_windows_on)
2302 (Freplace_buffer_in_windows): Make buffer argument optional and
2303 rename to buffer_or_name.
2304
34fcddd0
CY
23052008-10-24 Chong Yidong <cyd@stupidchicken.com>
2306
f5385255
SM
2307 * xdisp.c (handle_single_display_spec, handle_display_prop):
2308 Undo 2005-05-16 change.
34fcddd0
CY
2309 (handle_stop): Pop iterator if it's loaded with an empty string.
2310 (get_overlay_strings_1): Don't save iterator if it's loaded with
2311 an empty string (bug#1201).
2312
064766f2
KH
23132008-10-24 Kenichi Handa <handa@m17n.org>
2314
2315 * ftfont.c (ftfont_otf_features): Fix previous change.
2316 (ftfont_otf_capability): Check FeatureList.FeatureCount before
2317 calling ftfont_otf_features.
2318
f9bd0df9 23192008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
2320
2321 * font.c (font_match_p): Fix for the case that a vector of
2322 characters is in script-representative-chars.
2323
1dae9197
MA
23242008-10-24 Michael Albinus <michael.albinus@gmx.de>
2325
2326 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 2327 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
2328 (xd_read_queued_messages): Catch Qdbus_error from the macros.
2329 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
2330 macro. (Bug#1186).
2331
f9bd0df9 23322008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
2333
2334 * s/sol2-10.h: New file.
2335
878a4584
JB
23362008-10-23 Juanma Barranquero <lekktu@gmail.com>
2337
2338 * xdisp.c (fill_glyph_string): Fix typo in source (though the
2339 poor beast has survived 9+ years and the jump from xterm.c!).
2340
cd265ca6
MR
23412008-10-23 Martin Rudalics <rudalics@gmx.at>
2342
2343 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
2344 Reword doc-string.
f5385255 2345 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 2346
472a4dc9
JB
23472008-10-23 Juanma Barranquero <lekktu@gmail.com>
2348
2349 * character.c (syms_of_character) <script-representative-chars>:
2350 <unicode-category-table>: Doc fixes.
2351
159bd5a2
NF
23522008-10-23 Noah Friedman <friedman@splode.com>
2353
2354 * coding.c (make_conversion_work_buffer): Check that
2355 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
2356 Fget_buffer_create.
2357
49f9c344
KH
23582008-10-23 Kenichi Handa <handa@m17n.org>
2359
2360 * font.c (font_add_log): Check the values of extra properties.
2361
12bb3111
MR
23622008-10-22 Martin Rudalics <rudalics@gmx.at>
2363
2364 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
2365 Reword doc-string.
2366 (Fset_window_parameter): Use NILP.
2367 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 2368 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 2369
bbeb4e99
JB
23702008-10-22 Juanma Barranquero <lekktu@gmail.com>
2371
2372 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
2373
23742008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
2375
2376 * nsfns.m (ns_appkit_version): New function.
2377 (x-server-version): Use it.
2378 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
2379 (x-server-vendor): Don't check_ns().
2380
2381 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
2382
a9b555d3
JB
23832008-10-22 Juanma Barranquero <lekktu@gmail.com>
2384
2385 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
2386 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
2387
4626499f
KH
23882008-10-22 Kenichi Handa <handa@m17n.org>
2389
e3681952
KH
2390 * syntax.c (scan_words): Call word_boundary_p instead of comparing
2391 scripts.
2392
4626499f
KH
2393 * category.c (word_boundary_p): Check scripts instead of charset.
2394 Handle nil value in word-separating-categories and
2395 word-combining-categories.
2396 (syms_of_category): Fix docstrings of word-separating-categories
2397 and word-combining-categories.
2398
1560f91a
EZ
23992008-10-21 Eli Zaretskii <eliz@gnu.org>
2400
2401 * coding.c (Fencode_coding_region, Fdecode_coding_region)
2402 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
2403
f4668441
MR
24042008-10-21 Martin Rudalics <rudalics@gmx.at>
2405
2406 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
2407 Rename arg "buffer" to "buffer_or_name".
2408 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
2409 it optional.
2410 (no_switch_window): Remove since the return value is not used.
a9b555d3 2411 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
2412 Consider window as dedicated when Fwindow_dedicated_p returns a
2413 non-nil value.
2414 * lisp.h: Remove prototype for no_switch_window.
2415
fd75ddb2
JD
24162008-10-21 Jan Djärv <jan.h.d@swipnet.se>
2417
2418 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 2419 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 2420
07295713
KH
24212008-10-21 Kenichi Handa <handa@m17n.org>
2422
2423 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
2424 check Vlatin_extra_code_table.
2425
712adc82
EZ
24262008-10-20 Eli Zaretskii <eliz@gnu.org>
2427
2428 * fileio.c (Fset_file_modes): Doc fix.
2429
f549eb0b
MA
24302008-10-19 Michael Albinus <michael.albinus@gmx.de>
2431
2432 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
2433 in arrays.
2434
aac0c6e3
MR
24352008-10-19 Martin Rudalics <rudalics@gmx.at>
2436
2437 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
2438 Mention kill-buffer in doc-string.
2439 (Fset_window_buffer): Reinsert tem check removed in last commit.
2440 (Fenlarge_window, Fshrink_window): Have argument names and
2441 doc-string follow Elisp manual more closely.
2442
24432008-10-18 Eli Zaretskii <eliz@gnu.org>
2444
2445 * fileio.c (Fset_file_modes): Doc fix.
2446
24472008-10-18 Martin Rudalics <rudalics@gmx.at>
2448
2449 * window.c (Fwindow_width, Fset_window_start)
2450 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
2451 (Fdelete_windows_on, Freplace_buffer_in_windows):
2452 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
2453 (Fwindow_dedicated_p): Make window argument optional.
2454 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
2455 (Fset_window_buffer): Respect any non-nil dedicated value for
2456 window. Rename "buffer" argument to "buffer_or_name".
2457
24582008-10-18 Ulrich Mueller <ulm@gentoo.org>
2459
2460 * m/sh3.h: New file, machine description for SuperH.
2461
24622008-10-17 Martin Rudalics <rudalics@gmx.at>
2463
2464 * window.c (Fsplit_window): Rename arg horflag to horizontal.
2465
24662008-10-17 Kenichi Handa <handa@m17n.org>
2467
2468 * ftfont.c (ftfont_otf_features): Fix indexing
2469 gsub_gpos->FeatureList.Feature. Check the validity of indices.
2470
24712008-10-16 Magnus Henoch <mange@freemail.hu>
2472
2473 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
2474 (Fdbus_call_method_asynchronously): Ditto.
2475 This change makes C-h f display the argument list.
2476
24772008-10-16 Chong Yidong <cyd@stupidchicken.com>
2478
2479 * fileio.c (Fexpand_file_name): Doc fix.
2480
2481 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
2482 of :foreground and :background equivalent to unspecified (20.x
2483 compatibility).
2484
24852008-10-15 Eli Zaretskii <eliz@gnu.org>
2486
2487 * buffer.c (syms_of_buffer): Doc fix.
2488
24892008-10-14 Kenichi Handa <handa@m17n.org>
2490
2491 * font.c (font_clear_prop): When clearing font width, clear the
2492 average width field too.
2493
24942008-10-12 Andreas Schwab <schwab@suse.de>
2495
2496 * ftfont.c (ftfont_shape_by_flt): Make static.
2497 * ftfont.h (ftfont_shape_by_flt): Don't declare.
2498
2499 * font.c: Don't include <m17n-flt.h>.
2500
25012008-10-10 Eli Zaretskii <eliz@gnu.org>
2502
2503 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
2504
25052008-10-09 Eli Zaretskii <eliz@gnu.org>
2506
2507 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
2508 away code.
2509
25102008-10-09 Chong Yidong <cyd@stupidchicken.com>
2511
2512 * dispnew.c (update_text_area): Avoid looping due to large glyph
2513 overhangs (bug#1070).
2514
25152008-10-09 Kenichi Handa <handa@m17n.org>
2516
2517 * fontset.c (face_for_char): If face->fontset is negative, just
2518 return ascii_face.
2519
f5385255
SM
2520 * font.c (font_delete_unmatched): Fix previous change.
2521 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
2522
25232008-10-09 Martin Rudalics <rudalics@gmx.at>
2524
2525 * frame.c (Fraise_frame): On text-only terminals select frame in
2526 order to make it visible. (Bug#1061)
2527
25282008-10-08 Chong Yidong <cyd@stupidchicken.com>
2529
2530 * fontset.c (fontset_find_font): Check frame validity.
2531
25322008-10-07 Chong Yidong <cyd@stupidchicken.com>
2533
a9b555d3 2534 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
2535 (xg_display_close): Allow Emacs to close all displays (bug#985).
2536
25372008-10-06 Andreas Schwab <schwab@suse.de>
2538
f5385255 2539 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
2540
25412008-10-06 Chong Yidong <cyd@stupidchicken.com>
2542
f5385255 2543 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 2544
a9b555d3 2545 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
2546
2547 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
2548 during initialization.
2549
25502008-10-04 Eli Zaretskii <eliz@gnu.org>
2551
2552 * xdisp.c (redisplay_internal): If frame switched, redisplay the
2553 whole thing on MSDOS frames as well as on a TTY.
2554
2555 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
2556 well as for TTY.
2557 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
2558 well as on a TTY.
2559
2560 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
2561 as well as for TTY.
2562
2563 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
2564
2565 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
2566 MSDOS frames as well.
2567
25682008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2569
2570 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
2571 correct arguments.
2572 * menu.c (find_and_return_menu_selection) Add cast.
2573
25742008-10-03 Glenn Morris <rgm@gnu.org>
2575
2576 * emacs.c (USAGE1): Add --daemon.
2577
25782008-10-02 Eli Zaretskii <eliz@gnu.org>
2579
2580 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
2581 100, so it's in percents as advertised.
2582
25832008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2584
2585 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
2586 (ns_output.current_cursor, ns_output.desired_cursor)
2587 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
2588 (FRAME_NEW_CURSOR_COLOR): Remove.
2589
2590 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 2591 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
2592 enumeration (HOLLOW_BOX_CURSOR, etc.).
2593
2594 * nsterm.m (ns_frame_rehighlight): Remove commented code.
2595 (draw_window_cursor): Simplify code.
f5385255
SM
2596 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
2597 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 2598 updates manually.
a9b555d3
JB
2599 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
2600 Use core Emacs cursor types.
aac0c6e3 2601
b8ff72fa 2602 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
2603
26042008-10-02 Martin Rudalics <rudalics@gmx.at>
2605
2606 * process.c (Faccept_process_output): Fix doc-string.
2607
26082008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
2609
2610 * gmalloc.c (__sbrk): Also define for uClibc.
2611
2612 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
2613 for uClibc.
2614
26152008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2616
2617 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
2618 styles.
2619 (nsfont_open): Reenable the cache.
2620
26212008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2622
2623 * font.c (font_matching_entity): Reflect ATTRS in font selection.
2624 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
2625
26262008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
2627
2628 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
2629 a suspended terminal.
2630
26312008-09-30 Michael Albinus <michael.albinus@gmx.de>
2632
2633 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
2634
26352008-09-30 Eli Zaretskii <eliz@gnu.org>
2636
2637 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
2638
26392008-09-30 Chong Yidong <cyd@stupidchicken.com>
2640
2641 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
2642 in a continued line coincides with a line beginning.
2643
26442008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2645
2646 * nsfont.m (nsfont_trait_distance): Fix bug.
2647 (nsfont_list): Return a list rather than a vector (syncs with Handa
2648 changes of 2008-05-14).
2649 (nsfont_open): Improve logging.
2650
26512008-09-29 Andreas Schwab <schwab@suse.de>
2652
2653 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2654
26552008-09-28 Martin Rudalics <rudalics@gmx.at>
2656
2657 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
2658 name as char-resolve-modifiers.
2659 Reported by: Markus Triska <markus.triska@gmx.at>
2660
26612008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
2662
2663 * dispnew.c (init_display): Return earlier when running as a daemon.
2664
26652008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2666
2667 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
2668
26692008-09-27 Eli Zaretskii <eliz@gnu.org>
2670
2671 * composite.c (Fcomposition_get_gstring)
2672 (Fcompose_region_internal, Fcompose_string_internal)
2673 (Ffind_composition_internal): Doc fix.
2674 (syms_of_composite) <compose-chars-after-function>: Doc fix.
2675 (syms_of_composite) <auto-composition-function>: Doc fix.
2676 (syms_of_composite) <composition-function-table>: Doc fix.
2677
26782008-09-25 Chong Yidong <cyd@stupidchicken.com>
2679
2680 * search.c (wordify): New argument for lax word-ends.
2681 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
2682
26832008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
2684
2685 * lisp.h (is_daemon): Declare.
2686 * dispnew.c (init_display): Do not try to initialize the terminal
2687 when running as a daemon.
2688
26892008-09-22 Chong Yidong <cyd@stupidchicken.com>
2690
2691 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
2692 x_display_pixel_height.
2693
26942008-09-22 Martin Rudalics <rudalics@gmx.at>
2695
2696 * undo.c (record_point): Don't call Fundo_boundary for first
2697 change. (Bug#731)
2698
26992008-09-22 Juanma Barranquero <lekktu@gmail.com>
2700
2701 * emacs.c (Fdaemonp): Doc fix.
2702
27032008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
2704
2705 * emacs.c (main): Place #ifdef in the proper place.
2706
27072008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
2708
2709 * emacs.c (standard_args): Add --daemon.
2710 (main): Disconnect from the terminal when --daemon is passed.
2711 (is_daemon): New variable.
2712 (Fdaemonp): New function.
2713 (syms_of_emacs): Defsubr it.
2714
27152008-09-20 Chong Yidong <cyd@stupidchicken.com>
2716
2717 * xdisp.c (get_next_display_element): Handle string display
2718 correctly when checking for the end of a box run.
2719
27202008-09-20 Glenn Morris <rgm@gnu.org>
2721
2722 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
2723 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
2724 (Frename_file): Avoid copying to trash if a rename involves
2725 a delete. (Bug#964).
2726
27272008-09-20 Eli Zaretskii <eliz@gnu.org>
2728
2729 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
2730 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
2731 frames as well as termcap frames.
2732 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
2733 get_named_tty.
2734
27352008-09-19 Eli Zaretskii <eliz@gnu.org>
2736
2737 * process.c (procfs_system_process_attributes): Fix cmdline in
2738 case /proc/PID/cmdline is empty.
2739
2740 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
2741 x_display_pixel_height.
2742
27432008-09-19 Juanma Barranquero <lekktu@gmail.com>
2744
2745 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
2746
2747 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
2748 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
2749
27502008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
2751
2752 * dispextern.h (struct it): Move line_wrap away from the middle of
2753 bitfields. Move voffset in struct iterator_stack_entry after the
2754 bitfields. Move tab_width near after another short.
2755
27562008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
2757
2758 * frame.h (struct frame): Move alpha from the middle of bitfields.
2759
2760 * window.h (struct window): Move frozen_window_start_p after the
2761 rest of the bitfields to reduce padding.
2762
27632008-09-18 Chong Yidong <cyd@stupidchicken.com>
2764
2765 * xterm.h (x_display_info): Remove `height' and `width' members.
2766
2767 * nsterm.h (ns_display_info): Remove `height' and `width' members.
2768
2769 * w32term.h (w32_display_info): Remove `height', `width',
2770 `height_in', and `width_in' members.
2771
b8ff72fa
SM
2772 * xterm.c (x_display_pixel_height, x_display_pixel_width):
2773 New functions.
aac0c6e3
MR
2774 (x_calc_absolute_position): Use them.
2775 (x_term_init): Omit removed `height' and `width' members.
2776
b8ff72fa
SM
2777 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2778 New functions.
aac0c6e3
MR
2779 (w32_read_socket, x_calc_absolute_position): Use them.
2780 (w32_initialize_display_info, w32_term_init): Omit removed members
2781 of w32_display_info.
2782
b8ff72fa
SM
2783 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
2784 New functions.
2785 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 2786
b8ff72fa
SM
2787 * xterm.c (x_display_pixel_height, x_display_pixel_width):
2788 New functions.
aac0c6e3
MR
2789 (x_calc_absolute_position): Use them.
2790 (x_term_init): Omit removed `height' and `width' members.
2791
2792 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
2793 (compute_tip_xy):
2794 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
2795 * xmenu.c (menu_position_func): Use x_display_pixel_height and
2796 x_display_pixel_width.
2797
27982008-09-18 Kenichi Handa <handa@m17n.org>
2799
2800 * composite.c (fill_gstring_header): Don't check FROM and TO here.
2801 (composition_compute_stop_pos): Fix handling of static composition.
2802 (Fcomposition_get_gstring): Check FROM and TO at first.
2803
28042008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
2805
46e722a9 2806 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
2807 mixup (YAILOM).
2808
28092008-09-17 Chong Yidong <cyd@stupidchicken.com>
2810
2811 * indent.c (Fvertical_motion): Use position reported by iterator
2812 instead of PT for determining screen motion (bug#943).
2813
28142008-09-17 Romain Francoise <romain@orebokech.com>
2815
2816 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
2817
28182008-09-17 Kenichi Handa <handa@m17n.org>
2819
2820 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
2821
2822 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
2823 if necessary.
2824
28252008-09-16 Kenichi Handa <handa@m17n.org>
2826
2827 * coding.c (make_conversion_work_buffer): Avoid calling
2828 Fget_buffer_create if it is not necessary.
2829
28302008-09-15 Martin Rudalics <rudalics@gmx.at>
2831
2832 * window.c (Fselect_window): Don't update window_select_count and
2833 use_time when norecord is not nil.
2834
28352008-09-14 Kenichi Handa <handa@m17n.org>
2836
2837 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
2838 specpdl_ptr.
2839
28402008-09-12 Kenichi Handa <handa@m17n.org>
2841
2842 * indent.c (scan_for_column): Don't handle automatic composition
2843 if the current buffer is not associated with a window.
2844
2845 * composite.c (composition_reseat_it): If the current buffer is
2846 not associated with a window, ignore the automatic composition.
2847 (find_automatic_composition): Likewise.
2848
28492008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2850
2851 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
2852 (Fgpm_mouse_stop): Use it.
2853 * termhooks.h (close_gpm): Declare.
2854 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
2855 connection if Gpm_GetEvent fails.
2856
2857 * window.c (set_window_buffer): Always preserve current-buffer.
2858
28592008-09-12 Glenn Morris <rgm@gnu.org>
2860
2861 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
2862
28632008-09-11 Glenn Morris <rgm@gnu.org>
2864
2865 * charset.c (charset-map-path): Doc fix.
2866
28672008-09-10 Kenichi Handa <handa@m17n.org>
2868
2869 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
2870
2871 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
2872 compose a grapheme cluster with the preceding base glyph.
2873
2874 * composite.c (composition_compute_stop_pos): Fix previous change.
2875 Reset cmp_it->id to -1 at first.
2876
28772008-09-10 Glenn Morris <rgm@gnu.org>
2878
2879 * Makefile.in (character.o, chartab.o): Fix config.h typo.
2880
28812008-09-09 Chong Yidong <cyd@stupidchicken.com>
2882
2883 * keyboard.c (read_key_sequence): Reapply translation maps when
2884 switching keyboards.
2885
28862008-09-09 Kenichi Handa <handa@m17n.org>
2887
2888 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
2889 characters.
2890
2891 * composite.c (FORWARD_CHAR): Fix calculation
2892 of (POSITION).pos_byte.
2893 (composition_compute_stop_pos): Limit the search of composition to
2894 at most 500 characters ahead. If we reach the limit or find a
2895 newline, set cmp_it->ch to -2 and return 0.
2896 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
2897
28982008-09-08 Kenichi Handa <handa@m17n.org>
2899
2900 * indent.c (Fvertical_motion): Be sure to set
2901 it_overshoot_expected if it.cmp_it.id is non-negative.
2902
29032008-09-07 Andreas Schwab <schwab@suse.de>
2904
2905 * callproc.c (Fcall_process): Don't hold references to string data
2906 across garbage collection. Move initialisation of new_argv down
2907 to avoid compiler bug.
2908
29092008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
2910
2911 * process.c (Fsystem_process_attributes): Doc fix.
2912
29132008-09-07 Chong Yidong <cyd@stupidchicken.com>
2914
2915 * callproc.c (Fcall_process): Canonicalize current directory name.
2916
2917 * xdisp.c (move_it_to): When moving by vpos, ensure that the
2918 iterator advances to the next line if the current line ends in a
2919 continued tab.
2920
29212008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
2922
2923 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
2924 member to point to cmp_from.
2925
2926 * xdisp.c: Doc fix for references to gidx data member.
2927
29282008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
2929
2930 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
2931
29322008-09-07 Kenichi Handa <handa@m17n.org>
2933
2934 * composite.c (FORWARD_CHAR): Check STOP after
2935 incrementing (POSITION).pos.
2936
29372008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
2938
2939 * process.c (Fsystem_process_attributes): Doc fix.
2940
29412008-09-06 Chong Yidong <cyd@stupidchicken.com>
2942
2943 * keyboard.c (Ftop_level): Doc fix.
2944
29452008-09-06 Eli Zaretskii <eliz@gnu.org>
2946
2947 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
2948 minibuffer, don't let lower part of menu invade the echo area.
2949
2950 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
2951 "char *q" to access menu text and advance through it. Revert the
2952 change that displayed ">" instead of ASCII character 0x10.
2953
29542008-09-05 Eli Zaretskii <eliz@gnu.org>
2955
2956 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
2957 toggle boxes and radio buttons on MS-DOS as well.
2958
29592008-09-05 Kenichi Handa <handa@m17n.org>
2960
2961 * composite.c (autocmp_chars): Check lookback count.
2962 (composition_compute_stop_pos): Set cmp_it->lookback.
2963 (composition_reseat_it): Check lookback count.
2964 (struct position_record): New struct.
2965 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
2966 (find_automatic_composition): New function.
2967 (composition_adjust_point): Use find_automatic_composition.
2968
2969 * dispextern.h (struct composition_it): New member lookback.
2970
29712008-09-02 Chong Yidong <cyd@stupidchicken.com>
2972
2973 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
2974 if moving by a single line.
2975
29762008-09-02 Andreas Schwab <schwab@suse.de>
2977
2978 * xterm.c (x_delete_display): Fix merge error.
2979
2980 * fileio.c (Fexpand_file_name): Remove unused variables.
2981
29822008-09-02 Eli Zaretskii <eliz@gnu.org>
2983
2984 * fileio.c (Fexpand_file_name): Copy argument `name' into local
2985 storage on all platforms, not just on DOS_NT.
2986
29872008-09-02 Jason Rumney <jasonr@gnu.org>
2988
b8ff72fa
SM
2989 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
2990 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
2991
29922008-09-01 Chong Yidong <cyd@stupidchicken.com>
2993
2994 * xfaces.c (Finternal_set_alternative_font_family_alist)
2995 (Finternal_set_alternative_font_registry_alist): Properly copy
2996 entire alist structure.
2997
29982008-09-01 Kenichi Handa <handa@m17n.org>
2999
d66c0241 3000 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 3001 representative chars of the script is a vector.
d66c0241
JB
3002 (ftfont_list): Handle the case where the representative chars of
3003 the script is a vector.
aac0c6e3
MR
3004
3005 * character.c (syms_of_character): Docstring of
3006 script-representative-chars fixed.
3007
30082008-08-31 Eli Zaretskii <eliz@gnu.org>
3009
3010 * msdos.c (BUILD_CHAR_GLYPH): New macro.
3011 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
3012 the menu. Allocate larger buffer for `text', to account for
3013 possible ^C characters.
3014
30152008-08-31 Martin Rudalics <rudalics@gmx.at>
3016
3017 * xdisp.c (prepare_menu_bars): Don't call
3018 Vwindow_size_change_functions with arg Qt.
3019
30202008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
3021
3022 * font.h (font_range):
3023 * fileio.c (report_file_error):
46e722a9
SM
3024 * composite.c (composition_update_it): Yet another int/Lisp_Object
3025 mixup (YAILOM).
aac0c6e3
MR
3026
30272008-08-30 Glenn Morris <rgm@gnu.org>
3028
3029 * data.c (Fmake_variable_frame_local): Doc fix.
3030
3031 * frame.c (Fmodify_frame_parameters): Doc fix.
3032
30332008-08-30 Eli Zaretskii <eliz@gnu.org>
3034
3035 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
3036 needed by GetTokenInformation.
3037 (w32_system_process_attributes): Check return values of all system
3038 APIs.
3039
3040 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
3041 only when the state changes.
3042 (IT_update_begin, IT_update_end): Add termscript trace.
3043
3044 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
3045 clipboard is unavailable. Set dst to NULL if it doesn't point to
3046 malloc'ed data.
3047 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
3048 passing random values to xfree.
3049
3050 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 3051 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
3052
30532008-08-29 Jason Rumney <jasonr@gnu.org>
3054
3055 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
3056
30572008-08-29 Eli Zaretskii <eliz@gnu.org>
3058
3059 * composite.c (fill_gstring_body): Avoid compiler warnings.
3060
3061 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
3062 LGLYPH_SET_CODE to avoid compiler warnings.
3063
2ae37cf0 3064 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
3065
3066 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
3067
3068 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
3069 LGLYPH_SET_CODE.
3070
30712008-08-29 Kenichi Handa <handa@m17n.org>
3072
3073 * fileio.c (report_file_error): Don't downcase the first character
3074 of errstring if it is still unibyte.
3075
30762008-08-29 Kenichi Handa <handa@m17n.org>
3077
3078 These changes are to re-implement the automatic composition so
3079 that it doesn't use text properties.
3080
3081 * Makefile.in (ftfont.o): Depend on composite.h.
3082 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
3083
3084 * character.h (Vunicode_category_table): Extern it.
3085
3086 * character.c (Vunicode_category_table): New variable.
3087 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
3088
3089 * chartab.c (optimize_sub_char_table): Perform more greedy
3090 optimization.
3091
b8ff72fa
SM
3092 * composite.h (enum composition_method):
3093 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
3094 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
3095 (Vcomposition_function_table): Extern it.
3096 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
3097 (composition_gstring_put_cache, composition_gstring_from_id)
3098 (composition_gstring_p, composition_gstring_width)
3099 (composition_compute_stop_pos, composition_reseat_it)
3100 (composition_update_it, composition_adjust_point): Extern them.
3101 (Fcomposition_get_gstring): EXFUN it.
3102
d66c0241 3103 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
3104 (Vcomposition_function_table)
3105 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
3106 (gstring_hash_table, gstring_work, gstring_work_headers):
3107 New variables.
aac0c6e3
MR
3108 (gstring_lookup_cache, composition_gstring_put_cache)
3109 (composition_gstring_from_id, composition_gstring_p)
3110 (composition_gstring_width, fill_gstring_header)
3111 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
3112 (composition_reseat_it, composition_update_it)
b8ff72fa 3113 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
3114 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
3115 and gstring_work_headers. DEFVAR_LISP composition-function-table.
3116 Defsubr compostion_get_gstring.
3117
3118 * dispextern.h (struct glyph): New union u.cmp. Delete the member
3119 cmp_id.
3120 (struct glyph_string): Delete the member gidx. New members
3121 cmp_id, cmp_from, and cmp_to.
3122 (enum it_method): Delete GET_FROM_COMPOSITION.
3123 (struct composition_it): New struct.
3124 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
3125 Delete c, len, cmp_id, cmp_len in u.comp.
3126
3127 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 3128 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 3129 (enum lglyph_indices): Likewise.
b8ff72fa 3130 (font_range): Adjust extern.
aac0c6e3
MR
3131 (font_fill_lglyph_metrics): Extern it.
3132
3133 * font.c (QCf): New variable.
3134 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
3135 (font_prepare_composition): Delete this function.
3136 (font_range): Type and arguments changed.
3137 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
3138 (font_fill_lglyph_metrics): New function.
b8ff72fa 3139 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 3140 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
3141 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
3142 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
3143
3144 * fontset.h (font_for_char): Extern it.
3145
3146 * fontset.c (font_for_char): New function.
3147
3148 * ftfont.c: Include composite.h.
3149 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 3150 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
3151
3152 * indent.c: Include composite.h and dispextern.h.
3153 (check_composition): Delete this function.
3154 (scan_for_column): Handle composition by
3155 composition_compute_stop_pos, composition_reseat_it, and
3156 composition_update_it.
3157 (compute_motion): Likewise.
3158 (Fvertical_motion): Fix checking of composition.
3159
3160 * keyboard.c (adjust_point_for_property): Check composition by
3161 composition_adjust_point.
3162
b8ff72fa 3163 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
3164 struct glyph_string.
3165
b8ff72fa
SM
3166 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
3167 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
3168 struct glyph.
3169 (produce_composite_glyph): Likewise.
3170
b8ff72fa
SM
3171 * w32term.c (x_draw_composite_glyph_string_foreground):
3172 Adjust for the change of struct glyph_string.
aac0c6e3
MR
3173 (x_draw_glyph_string): Likewise.
3174
3175 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
3176 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
3177
3178 * xdisp.c: Include font.h.
3179 (it_props): Delete the entry for Qauto_composed.
3180 (init_iterator): Initialize it->cmp_it.id to -1.
3181 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 3182 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
3183 (handle_auto_composed_prop): Delete it.
3184 (handle_composition_prop): Handle only static composition.
3185 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
3186 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 3187 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
3188 (pop_it): Likewise.
3189 (get_next_element): Delete next_element_from_composition.
3190 (CHAR_COMPOSED_P): New macro.
3191 (get_next_display_element): For automatic composition, get a face
3192 from the font in the glyph-string.
3193 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 3194 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
3195 (next_element_from_string): Check if the character at the current
3196 position is composed by CHAR_COMPOSED_P.
3197 (next_element_from_buffer): Likewise.
d66c0241
JB
3198 (next_element_from_composition): Adjust for the change of struct it.
3199 Update it->cmp_it.
b8ff72fa
SM
3200 (dump_glyph): Adjust for the change of struct glyph.
3201 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
3202 it and struct glyph. Don't handle automatic composition here.
3203 (fill_gstring_glyph_string): New function.
3204 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 3205 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
3206 (BUILD_GSTRING_GLYPH_STRING): New macro.
3207 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
3208 automatic composition.
b8ff72fa 3209 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 3210 struct glyph.
b8ff72fa 3211 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 3212
b8ff72fa 3213 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
3214 the change of struct glyph_string.
3215 (x_draw_glyph_string): Likewise.
3216
32172008-08-29 Glenn Morris <rgm@gnu.org>
3218
3219 * buffer.c (word-wrap): Doc fix.
3220 * xdisp.c (truncate-partial-width-windows): Doc fix.
3221 Increase default to 50.
3222
32232008-08-29 Chong Yidong <cyd@stupidchicken.com>
3224
3225 * xdisp.c (update_tool_bar_unwind): New function.
3226 (update_tool_bar): Temporarily set selected frame before building
3227 tool-bar items.
3228
32292008-08-28 Michael Albinus <michael.albinus@gmx.de>
3230
3231 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
3232 snprintf, respectively.
3233 (xd_append_arg): Convert strings with Fstring_make_unibyte.
3234
32352008-08-28 Chong Yidong <cyd@stupidchicken.com>
3236
3237 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
3238 LDFLAGS to GNUstep CC invocation.
3239
32402008-08-27 Chong Yidong <cyd@stupidchicken.com>
3241
3242 * indent.c (Fvertical_motion): Revert last change. Handle the
3243 general case where we are moving forward, and PT spans multiple
3244 screen lines.
3245
3246 * eval.c (find_handler_clause): Temporarily increase
3247 max-lisp-eval-depth while printing the backtrace buffer, to
3248 guarantee that help-mode code can run.
3249
32502008-08-27 Eli Zaretskii <eliz@gnu.org>
3251
3252 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
3253 colors under -rv.
3254 (IT_set_frame_parameters): Don't swap foreground and background
3255 colors if `(reverse . t)' is present in the frame properties.
3256 (internal_terminal_init): Call init_frame_faces only for the
3257 initial frame.
3258
32592008-08-27 Andreas Schwab <schwab@suse.de>
3260
3261 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
3262
32632008-08-27 Andreas Schwab <schwab@suse.de>
3264
3265 * search.c (search_buffer): Set char_base to zero only at the end.
3266
32672008-08-27 Kenichi Handa <handa@m17n.org>
3268
b8ff72fa 3269 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
3270
32712008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
3272
3273 * xterm.c (x_term_init): Temporarily hide the partially
3274 initialized terminal while calling vendor-specific-keysyms.
3275
32762008-08-26 Eli Zaretskii <eliz@gnu.org>
3277
3278 * msdos.c (internal_terminal_init): Most initializations done only
3279 once, especially initial_screen_colors[] and termscript open.
3280
32812008-08-26 Chong Yidong <cyd@stupidchicken.com>
3282
3283 * eval.c (Fcondition_case): Doc fix.
3284
3285 * widgetprv.h (EmacsFramePart): Change font member to the new font
3286 struct.
3287
3288 * widget.c: Include character.h and font.h for XSETFONT.
3289 (setup_frame_gcs): Compute X font id from font struct, just once.
3290
32912008-08-26 Eli Zaretskii <eliz@gnu.org>
3292
3293 * term.c (get_named_tty): Fix last change.
3294
32952008-08-26 Chong Yidong <cyd@stupidchicken.com>
3296
3297 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 3298 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
3299
33002008-08-25 Eli Zaretskii <eliz@gnu.org>
3301
3302 * frame.c (do_switch_frame): Mark previously displayed frame as
3303 obscured for FRAME_MSDOS_P frames as well.
3304
33052008-08-24 Eli Zaretskii <eliz@gnu.org>
3306
3307 * frame.c (make_terminal_frame): Initialize f->terminal,
3308 f->terminal->reference_count, and scroll bars on MS-DOS as well.
3309 Set the top frame to newly created frame.
3310 (Fmake_terminal_frame): Reuse the_only_display_info.
3311
3312 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
3313 estimating available memory.
3314
b97439ce 33152008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
3316
3317 * nsterm.m (ns_draw_window_cursor): Don't call
3318 NSDisableScreenUpdates and NSEnableScreenUpdates on
3319 non-NS_IMPL_COCOA systems.
3320
33212008-08-23 Andreas Schwab <schwab@suse.de>
3322
3323 * process.c (procfs_system_process_attributes): Fix use of
3324 uninitialized variables.
3325
33262008-08-23 Eli Zaretskii <eliz@gnu.org>
3327
3328 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
3329
3330 * dispnew.c (init_display): Remove MS-DOS specific conditions for
3331 calling tty-set-up-initial-frame-faces.
3332
b8ff72fa
SM
3333 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
3334 Allow MSDOS frames along with X frames.
aac0c6e3
MR
3335
3336 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
3337 addition to output_termcap.
3338
3339 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
3340
3341 * termchar.h (FRAME_TTY): Support output_msdos_raw.
3342 (struct tty_display_info) [MSDOS]: Add fields related to mouse
3343 highlight.
3344
3345 * process.c [!subprocesses]: Define QCname.
3346 (syms_of_process): Intern and staticpro it.
3347
3348 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
3349 Adjust for changes in encoding/decoding routines.
3350 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
3351 encode_coding and decode_coding.
3352
b8ff72fa 3353 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
3354
3355 * dosfns.c: Include frame.h before termhooks.h.
3356 (dos_cleanup): Use CURTTY ()->termscript instead of a global
3357 variable termscript.
3358
3359 * s/msdos.h (USER_FULL_NAME): Define.
3360 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
3361
3362 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
3363 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
3364 pw->pw_gecos.
3365
3366 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
3367 SELECTED_FRAME as additional (1st) argument.
3368 (tty_read_avail_input): Handle output_msdos_raw in
3369 addition to output_termcap.
3370
3371 * msdos.c: Include frame.h before termhooks.h.
3372 (mouse_on, mouse_off, mouse_moveto, mouse_init)
3373 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
3374 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
3375 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
3376 (IT_set_terminal_modes, IT_reset_terminal_modes)
3377 (IT_set_frame_parameters): Use tty->termscript instead of a global
3378 variable termscript.
3379 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
3380 global variable terminal_coding. Don't refer to
3381 Vnonascii_translation_table.
3382 (internal_terminal_init): Set Vwindow_system in current_kboard.
3383 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
3384 Announce date and time of session start, if termscript is open.
3385 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
3386 term.c:init_tty). Open termscript only of not already open.
3387 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
3388 here instead of dos_ttraw. Don't initialize display if this is an
3389 initial tty. Don't set FRAME_FONT.
3390 (Vwindow_system_version): Bump to 23.
3391 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
3392 is available, set up mouse_position_hook.
3393 (dos_ttraw, IT_set_terminal_modes): If called with initial
3394 terminal, do nothing.
3395 (IT_set_frame_parameters): Handle the Qtty_type frame
3396 parameter by calling internal_terminal_init.
3397 (dos_set_window_size, show_mouse_face)
3398 (clear_mouse_face, IT_note_mode_line_highlight)
3399 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
3400 (dos_rawgetc): Use tty_display_info instead of x_display_info.
3401 (initialize_msdos_display): New function.
3402 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
3403 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
3404 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
3405 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 3406 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
3407 (request_sigio, unrequest_sigio): Don't define, now defined on
3408 sysdep.c.
3409 (IT_write_glyphs): Rewrite to use encode_terminal_code.
3410
3411 * term.c [MSDOS]: Include msdos.h.
3412 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
3413 conditional to DOS_NT. Allow only one call to this function in a
3414 session. Don't allocate a new struct tty_display_info; instead,
3415 reuse the_only_display_info. Call get_tty_size to get screen
3416 dimensions. Call init_baud_rate to set bad_rate.
3417 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
3418 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 3419 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
3420 (get_tty_terminal, get_named_tty, Ftty_type)
3421 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
3422 output_termcap.
b8ff72fa
SM
3423 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
3424 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 3425 only when subprocesses are supported.
aac0c6e3
MR
3426
3427 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
3428 f->output_data.x.
3429 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
3430 terminal devices.
3431
5582fbc7 3432 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
3433 x_output.
3434 (FRAME_FONT): Use output_data.tty.
3435 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
3436 (struct x_display_info): Rename from display_info. Update all users in
3437 msdos.c.
aac0c6e3 3438 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 3439 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
3440 (dos_ttraw): Update prototype.
3441
3442 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
3443 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
3444
34452008-08-23 Jason Rumney <jasonr@gnu.org>
3446
3447 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
3448 (fn_TIFFSetDirectory): New library function used.
3449 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
3450 (tiff_load): Use :index to select among multiple images. Set count
3451 property when multiple images exist.
3452 (gif_format): Use :index, not :image.
3453
34542008-08-23 Chong Yidong <cyd@stupidchicken.com>
3455
3456 * xdisp.c (try_scrolling): Check INT_MAX instead of
3457 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
3458 to obtain INT_MAX.
3459
34602008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
3461
3462 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
3463
34642008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
3465
3466 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
3467 GNUstep library location.
3468
34692008-08-21 Chong Yidong <cyd@stupidchicken.com>
3470
3471 * xfaces.c (x_update_menu_appearance): Check validity of menu font
3472 before using it.
3473
3474 * puresize.h (BASE_PURESIZE): Increase to 1250000.
3475
34762008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3477
3478 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
3479 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
3480 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
3481 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
3482 (EmacsApp-cursor_blink_handler): Remove declaration.
3483 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
3484 match 01 Feb 2008 changes in xterm.c.
3485 (ns_read_socket): Add cast to avoid warning.
3486 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
3487 GNUstep.
3488
34892008-08-20 Chong Yidong <cyd@stupidchicken.com>
3490
3491 * xselect.c (x_get_foreign_selection): Return nil if desired
3492 selection could not be obtained, instead of signalling an error.
3493
34942008-08-20 David Reitter <david.reitter@gmail.com>
3495
3496 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
3497 * nsterm.m: Remove ns-specific code for cursor blinking.
3498 (ns_draw_window_cursor): Clear cursor properly rather than
3499 redrawing the area. Respect width of bar cursors.
3500 These changes enable the use of generic blink-cursor-mode and
3501 generic cursor types in NS and support smooth cursor movements (do
3502 not blink off after command).
3503 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
3504 Nextstep, too.
3505
35062008-08-19 Kenichi Handa <handa@m17n.org>
3507
3508 * font.c (Vfont_log_deferred): New variable.
3509 (font_add_log): Check Vfont_log_deferred.
3510 (font_deferred_log): New function.
3511
3512 * font.h (font_deferred_log): Extern it.
3513
3514 * fontset.c (reorder_font_vector): Use encoding charset of fonts
3515 for sorting.
3516 (face_for_char): Use deferred log.
3517
35182008-08-18 Kenichi Handa <handa@m17n.org>
3519
3520 * fontset.c (face_for_char): Add font log.
3521
3522 * font.c (font_add_log): Add the font properties :script, :lang,
3523 and :otf in the log.
3524
35252008-08-17 Chong Yidong <cyd@stupidchicken.com>
3526
3527 * xdisp.c: Remove dead code.
3528 (handle_invisible_prop, next_overlay_string): Defer call to
3529 setup_for_ellipsis.
3530 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
3531
35322008-08-15 Chong Yidong <cyd@stupidchicken.com>
3533
3534 * xfaces.c (lookup_derived_face): Properly handle possible zero
3535 return value of get_lface_attributes.
3536 (merge_faces): Don't tell lookup_derived_face to signal an error
3537 if face is not found.
3538
3539 * dired.c (Fdirectory_files): Doc fix.
3540
3541 * process.c (make_process): Initialize kill_without_query struct
3542 member.
3543
35442008-08-15 Eli Zaretskii <eliz@gnu.org>
3545
3546 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
3547 Alternative calculation of totphys for Visual Studio 6.
3548
3549 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
3550
3551 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
3552 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
3553 All users changed.
3554 (stat): Only root directory passed to GetDriveType. Allow RAM
3555 disk as well as local fixed disk when w32-get-true-file-attributes
3556 is set to `local'.
3557 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
3558 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
3559 (w32_cached_id, w32_add_to_cache): New functions.
3560 (get_name_and_id): Look account names in the cache before calling
3561 lookup_account_sid.
3562 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
3563 New initialization flags.
3564 (globals_of_w32): Initialize them to zero.
3565 (w32_system_process_attributes): Use w32_cached_id and
3566 w32_add_to_cache.
3567
35682008-08-14 Lawrence Mitchell <wence@gmx.li>
3569
3570 * lread.c (Fread_char, Fread_char_exclusive): If no character
3571 event is read before timeout is reached, return nil, rather than
3572 converting to a number.
3573
35742008-08-14 Chong Yidong <cyd@stupidchicken.com>
3575
3576 * fns.c (use_dialog_box): Doc fix.
3577
3578 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
3579 on OS X.
3580
35812008-08-13 Chong Yidong <cyd@stupidchicken.com>
3582
3583 * frame.c (Qns_parse_geometry): New var.
3584 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
3585
35862008-08-11 Chong Yidong <cyd@stupidchicken.com>
3587
3588 * xdisp.c (x_produce_glyphs): Handle the case when font has no
3589 space character in calculating tabs.
3590
35912008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
3592
3593 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
3594
35952008-08-10 Glenn Morris <rgm@gnu.org>
3596
3597 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
3598 silence gcc "limited range of data type" warnings in some
3599 make_fixnum_or_float calls.
3600
36012008-08-09 Eli Zaretskii <eliz@gnu.org>
3602
3603 * w32.c (w32_system_process_attributes): If the process does not
3604 exist, return nil.
3605
3606 * w32.c: Include thelp32.h, psapi.h and coding.h.
3607 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
3608 declarations.
3609 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
3610 (Process32Next_Proc): New typedefs.
3611 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
3612 (g_b_init_process32_next, g_b_init_open_thread_token)
3613 (g_b_init_impersonate_self, g_b_init_revert_to_self)
3614 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
3615 (g_b_init_get_process_working_set_size)
3616 (g_b_init_global_memory_status_ex): New static variables.
3617 (globals_of_w32): Initialize them.
3618 (create_toolhelp32_snapshot, process32_first, process32_next)
3619 (open_thread_token, impersonate_self, revert_to_self)
3620 (get_process_memory_info, get_process_working_set_size)
3621 (global_memory_status, global_memory_status_ex): New wrapper
3622 functions.
3623 (w32_list_system_processes, w32_system_process_attributes)
3624 (enable_privilege, restore_privilege, ltime, process_times):
3625 New functions.
3626 (convert_time_raw): New function.
3627 (convert_time): Remove conversion of FILETIME into time in 100
3628 nsec units, call convert_time_raw instead.
3629
3630 * process.h (w32_list_system_processes, w32_system_process_attributes):
3631 Add prototypes.
3632 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
3633 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
3634 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
3635 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
3636
3637 * process.c (Fsystem_process_attributes): Doc fix.
3638
36392008-08-08 Chong Yidong <cyd@stupidchicken.com>
3640
3641 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
3642 a continued multi-char glyph; if so, advance to the actual glyph.
3643
36442008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
3645
3646 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
3647
3648 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
3649 (.m.o): Use it.
3650 * config.in: Regenerate.
3651
36522008-08-07 Chong Yidong <cyd@stupidchicken.com>
3653
3654 * xdisp.c (redisplay_window): Revert last change.
3655 (try_window): Check bottom scroll margin too.
3656
36572008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3658
3659 * config.in: Regenerate.
3660
3661 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
3662 -list-load-path-shadows'.
3663 (nsgui.h): Reduce number of things depending on it.
3664
36652008-08-06 Chong Yidong <cyd@stupidchicken.com>
3666
3667 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
3668 instead of window-end which does the wrong thing at eob.
3669 (try_cursor_movement): Minor optimization.
3670 (redisplay_window): If scroll margin is defined, don't assume
3671 window doesn't need scrolling.
3672
36732008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3674
3675 * config.in: Regenerate.
3676
3677 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
3678 (mostlyclean): Don't delete *.d under NS.
3679
3680 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
3681
36822008-08-06 Kenichi Handa <handa@m17n.org>
3683
3684 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
3685
36862008-08-06 Andreas Schwab <schwab@suse.de>
3687
3688 * config.in: Regenerate.
3689
36902008-08-05 Chong Yidong <cyd@stupidchicken.com>
3691
3692 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
3693 forcing a window start.
3694
3695 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
3696 (auto_save_1): Update modtime when auto-save-list-file-name is on.
3697
36982008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3699
3700 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
3701 argument.
3702
37032008-08-05 Juanma Barranquero <lekktu@gmail.com>
3704
3705 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
3706 <scroll-down-aggressively, before-change-functions>:
3707 <after-change-functions>: Reflow docstrings.
3708
37092008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3710 Ken Raeburn <raeburn@gnu.org>
3711
3712 Dock menu customization, based on a patch by Ken Raeburn, plus some
3713 other fixes.
3714 * nsmenu.m (dockMenu): New variable.
3715 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
3716
3717 * nsterm.h (dockMenu): Declare.
3718
3719 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
3720 (ns_term_init): Initialize dockMenu.
3721 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
3722 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
3723 left.
3724
3725 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
3726
37272008-08-04 Chong Yidong <cyd@stupidchicken.com>
3728
3729 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
3730
3731 * config.in: Regenerate.
3732
37332008-08-04 Seiji Zenitani <zenitani@mac.com>
3734
3735 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
3736
37372008-08-04 Chong Yidong <cyd@stupidchicken.com>
3738
3739 * nsterm.h (find_and_call_menu_selection): Fix prototype.
3740
37412008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3742
3743 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
3744
3745 * keyboard.h: Comment an #endif.
3746
3747 * lisp.h (have_menus_p): Adjust comment.
3748
3749 * menu.c (find_and_return_menu_selection): Fix comparison with
3750 client_data.
3751
3752 * nsmenu.m (popup_activated_flag): New variable.
3753 (popup_activated): New function.
3754 (menu-or-popup-active-p): New exported lisp definition.
3755 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
3756 when popup done.
3757 (ns_popup_dialog): Set popup_activated_flag.
3758
3759 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
3760 version for GNUstep (handled by conditional typedef in nsterm.m).
3761 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
3762 in rgb.txt).
3763
3764 * process.c (init_process): Use DARWIN_OS, not DARWIN.
3765
3766 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
3767
3768 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
3769
3770 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
3771 shortcircuit if popup_activated like GTK and X toolkit.
3772
3773 * m/inter386.h: Change DARWIN to DARWIN_OS.
3774
3775 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
3776 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
3777 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
3778 comment on NO_SOCK_SIGIO.
3779
37802008-08-03 Chong Yidong <cyd@stupidchicken.com>
3781
3782 * nsterm.m (windowDidResize): Remove stopModal call.
3783
37842008-08-03 Andreas Schwab <schwab@suse.de>
3785
3786 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
3787 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
3788
37892008-08-02 Chong Yidong <cyd@stupidchicken.com>
3790
3791 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
3792 Don't use uninitialized pointer variable when using getrlimit.
3793
37942008-08-02 Jason Rumney <jasonr@gnu.org>
3795
3796 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
3797
37982008-08-02 Eli Zaretskii <eliz@gnu.org>
3799
3800 * alloc.c (NSTATICS): Bump to 0x640.
3801
3802 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
3803
3804 * lisp.h: Add prototype for directory_files_internal.
3805
3806 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
3807 New functions.
3808 (syms_of_process): Defsubr them. Add initializations for various
3809 Q* symbols used in procfs_system_process_attributes.
3810 (procfs_list_system_processes, procfs_system_process_attributes)
3811 [HAVE_PROCFS]: New functions.
3812 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
3813 (procfs_get_total_memory): New functions.
3814
38152008-08-01 Juanma Barranquero <lekktu@gmail.com>
3816
3817 * xfaces.c (Fx_load_color_file): Fix previous change;
3818 it is #ifdef WINDOWSNT, not WINDOWS_NT.
3819
38202008-08-01 Michael Albinus <michael.albinus@gmx.de>
3821
3822 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
3823
38242008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3825
3826 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
3827
38282008-08-01 Chong Yidong <cyd@stupidchicken.com>
3829
3830 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
3831
3832 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
3833 define NSApplicationDelegateReplySuccess.
3834 (EmacsView -converstationIdentifier): Use long instead of
3835 NSInteger for GNUstep, since it doesn't have NSInteger.
3836
3837 * xmenu.c: Revert last change.
3838
3839 * keyboard.h: Fix last change.
3840
38412008-08-01 Juanma Barranquero <lekktu@gmail.com>
3842
3843 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
3844 on Windows.
3845
38462008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3847
3848 Warning clearing and clean-up in NS port.
3849 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
3850 Add prototypes.
3851 * nsgui.h (FACE_DEFAULT): Remove, unused.
3852 (XGCValues): Change colors to unsigned long.
3853 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
3854 nsterm.m.
3855 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
3856 (ns_list_fonts): Remove, unused.
3857 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
3858 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
3859 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
3860 (nsfont_draw): Compare face colors to 0, not nil.
3861 * nsmenu.m (struct widget_value): Drop unneeded declaration.
3862 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
3863 (-addSubmenuWithTitle:): Use NSMenuItem class.
3864 (ns_popup_menu): Use NO, not NULL, for enabled setting.
3865 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
3866 (ns_clip_to_row): Make gc arg a BOOL.
3867 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
3868 ns_clip_to_row() call.
3869 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
3870 used). Cast FRAME_FONT assignments.
3871 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
3872 (ns_string_to_lispmod): Change arg to const char.
3873 (ns_term_init): Use NSMenuItem class.
3874 (EmacsApp -openFile:): Move to different section of file.
3875 (EmacsApp -application:openFiles:): Don't return a value, call
3876 -replyToOpenOrPrint:.
3877 (EmacsView -keyDown:): Fix up cast.
3878 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
3879 (EmacsView -menuDown:): Cast tag in call to
3880 find_and_call_menu_selection().
3881 (ns_list_fonts): Remove, unused.
3882 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
3883 (ns_fontname_to_xlfd): Make static.
3884 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
3885 Remove prototypes (now in keyboard.h).
3886 (next_menubar_widget_id): Remove, unused.
3887 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
3888 Remove prototypes (now in keyboard.h).
3889 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
3890
38912008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
3892
3893 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
3894 (floatfns.o): Depend on syssignal.h.
3895 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
3896
3897 * systty.h: Fix previous change that removed BSD_TERMIOS.
3898 Add comments to #ifdefs.
3899
39002008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3901
3902 * w32fns.c (w32-load-color-file): Remove.
3903 (x-open-connection): Use renamed Fx_load_color_file.
3904 * xfaces.c (x-load-color-file): Add.
3905 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
3906 Emacs.clr.
3907 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
3908
39092008-07-31 Michael Albinus <michael.albinus@gmx.de>
3910
3911 * dbusbind.c (Fdbus_call_method_asynchronously)
3912 (Fdbus_method_error_internal): New defuns.
3913 (xd_read_message): Handle also reply messages.
3914 (Vdbus_registered_functions_table): Extend docstring.
3915
39162008-07-31 Juanma Barranquero <lekktu@gmail.com>
3917
3918 * keyboard.c (gobble_input): Fix previous change.
3919
39202008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
3921
3922 * bitmaps/README:
3923 * xfns.c:
3924 * termcap.c:
3925 * term.c:
3926 * syswait.h:
3927 * systty.h:
3928 * systime.h:
3929 * syssignal.h:
3930 * sysdep.c:
3931 * process.h:
3932 * process.c:
3933 * print.c:
3934 * ndir.h:
3935 * lread.c:
3936 * keyboard.c:
3937 * getpagesize.h:
3938 * floatfns.c:
3939 * fileio.c:
3940 * emacs.c:
3941 * doc.c:
3942 * dispnew.c:
3943 * dired.c:
3944 * data.c:
3945 * callproc.c:
3946 * buffer.c:
3947 * README:
3948 * Makefile.in:
3949 * s/template.h:
3950 * s/msdos.h:
3951 * m/vax.h: Remove VMS support.
3952 * s/vms.h:
3953 * vlimit.h:
3954 * uaf.h:
3955 * temacs.opt:
3956 * param.h:
3957 * ioctl.h: Remove file.
3958
39592008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
3960
3961 * s/ms-w32.h (MULTI_KBOARD): Remove.
3962 * xterm.c:
3963 * xselect.c:
3964 * xfns.c:
3965 * window.c:
3966 * w32term.c:
3967 * w32fns.c:
3968 * terminal.c:
3969 * termhooks.h:
3970 * term.c:
3971 * sysdep.c:
3972 * keyboard.h:
3973 * keyboard.c:
3974 * frame.h:
3975 * frame.c:
3976 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
3977 * config.in: Regenerate.
3978
39792008-07-30 Jason Rumney <jasonr@gnu.org>
3980
3981 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
3982
3983 * w32font.c (w32font_encode_char): Leave as unicode if in range.
3984 (w32font_open_internal): Get unicode version of textmetrics.
3985 Don't enable or disable glyph indices here.
3986 (w32font_open): Disable use of glyph indices.
3987
3988 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
3989
39902008-07-30 Chong Yidong <cyd@stupidchicken.com>
3991
3992 * minibuf.c (Vread_buffer_function): Doc fix.
3993
39942008-07-30 John Paul Wallington <jpw@pobox.com>
3995
3996 * minibuf.c (read_buffer_completion_ignore_case): New var.
3997 (Fread_buffer): Use it.
3998
39992008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
4000
4001 * systty.h (sensemode): Remove empty #if. Remove reference to
4002 BSD_TERMIOS, unused.
4003
4004 * sysdep.c: Remove reference to DGUX.
4005 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
4006
4007 * config.in: Regenerate.
4008
40092008-07-30 Jason Rumney <jasonr@gnu.org>
4010
4011 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
4012
40132008-07-29 Jason Rumney <jasonr@gnu.org>
4014
4015 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
4016 is populated.
4017 (uniscribe_encode_char): Always use uniscribe.
4018 Avoid using context if cache is populated.
4019
40202008-07-29 Jan Djärv <jan.h.d@swipnet.se>
4021
4022 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
4023 open menu.
4024
4025 * gtkutil.c (menu_nav_ended): Remove.
4026 (create_menus): Remove signal connect for menu_nav_ended.
4027
40282008-07-28 Chong Yidong <cyd@stupidchicken.com>
4029
4030 * xdisp.c (redisplay_window): Check return value of
4031 compute_window_start_on_continuation_line before forcing a window
4032 start.
4033
40342008-07-28 Jason Rumney <jasonr@gnu.org>
4035
4036 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
4037
4038 * w32term.c (w32_enable_unicode_output, cleartype_active):
4039 Remove obsolete display options.
4040 (x_draw_glyph_string_background): Don't use old cleartype_active
4041 workaround.
4042 (w32_initialize): Remove cleartype_active initialization.
4043 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
4044
40452008-07-28 Andreas Schwab <schwab@suse.de>
4046
4047 * lisp.h (init_weak_hash_tables, syms_of_font)
4048 (xd_read_queued_messages, syms_of_dbusbind): Declare.
4049 (remove_hash_entry): Don't declare.
4050 * eval.c (maybe_call_debugger): Make static and move before use.
4051 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
4052 * xdisp.c: Include "gtkutil.h" if USE_GTK.
4053 * xterm.h (x_set_frame_alpha): Declare.
4054
40552008-07-28 Jan Djärv <jan.h.d@swipnet.se>
4056
4057 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
4058 (create_menus): Connect selection-done to menu_nav_ended.
4059
40602008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4061
4062 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
4063 Set Vx_resource_name to a fallback. Replace read of 'buffered'
4064 parameter with read of 'alpha' one.
4065 (Qns_frame_parameter): Remove.
5582fbc7 4066 * nsselect.m (selection-coding-system)
aac0c6e3
MR
4067 (next-selection-coding-system, Vselection_coding_system)
4068 (Vnext_selection_coding_system): Drop.
4069
40702008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4071
4072 * nsfns.m (do-applescript, do_applescript): Rename to
4073 ns-do-applescript, ns_do_applescript, and move within file.
4074
40752008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4076
4077 Remove support for Mac Carbon.
4078 * mactoolbox.c:
4079 * macterm.h:
4080 * macterm.c:
4081 * macselect.c:
4082 * macmenu.c:
4083 * macgui.h:
4084 * macfns.c:
4085 * mac.c: Remove file.
4086 * s/darwin.h:
4087 * m/intel386.h:
4088 * xfaces.c:
4089 * xdisp.c:
4090 * window.c:
4091 * tparam.c:
4092 * termhooks.h:
4093 * termcap.c:
4094 * term.c:
4095 * syssignal.h:
4096 * sysselect.h:
4097 * sysdep.c:
4098 * process.c:
4099 * lread.c:
4100 * lisp.h:
4101 * keyboard.c:
4102 * image.c:
4103 * fringe.c:
4104 * frame.h:
4105 * frame.c:
4106 * fontset.c:
4107 * font.h:
4108 * font.c:
4109 * fns.c:
4110 * fileio.c:
4111 * emacs.c:
4112 * dispnew.c:
4113 * dispextern.h:
4114 * config.in:
4115 * atimer.c:
2ae37cf0 4116 * Makefile.in: Remove code for Carbon.
aac0c6e3 4117
f0131492 41182008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
4119
4120 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
4121
41222008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4123
4124 * macterm.h (kCGBitmapByteOrder32Host): New define for
4125 non-universal SDKs.
4126
4127 * image.c (mac_create_cg_image_from_image, image_load_image_io)
4128 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
4129
4130 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
4131 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
4132
41332008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
4134
4135 * w32inevt.c: Include dispextern.h.
4136
41372008-07-26 Andreas Schwab <schwab@suse.de>
4138
4139 * print.c (print_object): Fix off-by-one in last change.
4140
41412008-07-25 Juanma Barranquero <lekktu@gmail.com>
4142
4143 * term.c (syms_of_term): Don't initialize default_orig_pair,
4144 default_set_foreground and default_set_background on Windows.
4145
41462008-07-25 Jason Rumney <jasonr@gnu.org>
4147
4148 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
4149 ScriptItemize. Clean up return value checking. Remove unused
4150 variables.
4151 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
4152 shaping engine.
4153
4154 * w32font.c (w32font_has_char): Handle the case where we can't
4155 determine the script for a character.
4156
41572008-07-25 Chong Yidong <cyd@stupidchicken.com>
4158
4159 * term.c (syms_of_term): Initialize default_orig_pair,
4160 default_set_foreground, and default_set_background.
4161
4162 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
4163 clash (bug#86).
4164 (getloadavg): Callers changed.
4165
4166 * image.c (svg_load_image): Fix last change.
4167 (svg_load_image): Use rsvg_handle_get_dimensions to check that
4168 image size is valid. Use g_object_unref instead of deprecated
4169 rsvg_handle_free to free rsvg handle.
4170 (x_from_xcolors): Don't initialize pixmap (silence compiler).
4171
41722008-07-25 Jason Rumney <jasonr@gnu.org>
4173
4174 * w32font.c (w32font_encode_char): Encode characters outside BMP as
4175 surrogates before looking up glyph index.
4176 (w32font_text_extents): Encode as surrogates if falling back to
4177 functions that need UTF-16 wide chars.
4178
4179 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
4180 BMP as surrogates before looking up glyph index.
4181
41822008-07-25 Chong Yidong <cyd@stupidchicken.com>
4183
4184 * image.c (svg_load_image): Check for failure in return value of
4185 rsvg_handle_get_pixbuf. Free rsvg handle when done.
4186
41872008-07-25 Jason Rumney <jasonr@gnu.org>
4188
4189 * w32font.c (Fx_select_font): Reverse sense of second arg.
4190
41912008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
4192
4193 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
4194 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
4195
4196 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
4197 (PURESIZE): Use it.
4198
41992008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
4200
4201 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
4202 * m/alpha.h (TEXT_END):
4203 * m/ibmrs6000.h (TEXT_END):
4204 * m/macppc.h (TEXT_END):
4205 * s/darwin.h (TEXT_END):
4206 * s/msdos.h (TEXT_END): Remove, unused.
4207 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
4208 * s/cygwin.h: Remove comment.
4209
4210 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
4211 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
4212 * m/intel386.h (DOT_GLOBAL_START):
4213 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
4214 (USG): Remove, file not used on USG platforms.
4215
4216 * Makefile.in (HAVE_X11): Remove empty #else.
4217
42182008-07-24 Andreas Schwab <schwab@suse.de>
4219
4220 * fileio.c (Finsert_file_contents): Properly adjust undo list
4221 after format conversion.
4222
42232008-07-24 Jan Djärv <jan.h.d@swipnet.se>
4224
4225 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
4226 (menu_nav_ended): Remove.
4227 (create_menus): Remove signal connect for menu_nav_ended.
4228 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
4229 create_menus.
4230 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
4231
42322008-07-23 Jason Rumney <jasonr@gnu.org>
4233
4234 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
4235 with opened font.
4236 (w32font_open): Set font type to gdi.
4237
4238 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
4239
42402008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
4241
4242 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
4243 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
4244 defines it.
4245 * unexec.c (ADDR_CORRECT): Define unconditionally.
4246
4247 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
4248
4249 * unexec.c: Remove code depending on !COFF and USG, the file is
4250 not used for such systems.
4251
4252 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
4253 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
4254 (LD_SWITCH_SYSTEM_1): Remove, update users.
4255
4256 * s/darwin.h (DATA_END):
4257 * m/intel386.h (DATA_END):
4258 * m/ibmrs6000.h (DATA_END):
4259 * m/alpha.h (DATA_END): Remove, unused.
4260
4261 * config.in: Regenerate.
4262 * s/ms-w32.h (subprocesses): Define unconditionally.
4263 * s/template.h (subprocesses): Update comment.
4264 * s/vms.h (subprocesses):
4265 * s/usg5-4.h (subprocesses):
4266 * s/hpux10-20.h (subprocesses):
4267 * s/gnu-linux.h (subprocesses):
4268 * s/cygwin.h (subprocesses):
4269 * s/bsd-common.h (subprocesses):
4270 * s/aix4-2.h (subprocesses):
4271 * s/darwin.h (subprocesses): Do not define, defined by default now.
4272
4273 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
4274 Remove all references.
4275 (temacs): Add GNUstep specific ld flags.
4276
4277 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
4278 similarly to what X does.
4279
42802008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4281
4282 * nsfns.m (x-list-fonts): Remove.
4283 (syms_of_nsfns): Drop the x-list-fonts declaration.
4284 * nsterm.m: Get rid of remaining "//" comments.
4285
42862008-07-22 Chong Yidong <cyd@stupidchicken.com>
4287
4288 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
4289
4290 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
4291 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
4292 (Fns_own_selection_internal, Fx_disown_selection_internal)
4293 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
4294
4295 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
4296 ... */' style of docstrings. Doc fixes.
4297
42982008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
4299
4300 * terminfo.c (UP, BC, PC): Undo previous change.
4301
4302 * nsfns.m: Rename ns prefixed functions/variables to the
4303 corresponding x versions. Update references.
4304
43052008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
4306
4307 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
4308
43092008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
4310
4311 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
4312 Remove forwarding functions.
4313 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
4314 non-static.
4315 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
4316 non-static.
4317 (ns_frame_parm_handlers): Use the new names.
4318 (syms_of_nsfns): Move to the end of file.
4319
4320 * nsterm.m (syms_of_nsterm): Move to the end of file.
4321
4322 * dispnew.c (init_display): Remove code for X10.
4323
43242008-07-22 Jason Rumney <jasonr@gnu.org>
4325
4326 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
4327 bare drive.
4328
43292008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4330
4331 * nsterm.m (syms_of_nsterm): Remove debugging println.
4332
43332008-07-22 David Reitter <david.reitter@gmail.com>
4334
4335 * nsfns.m (do_applescript, F_do_applescript): NS version of the
4336 Carbon implementation of the same functionality: execute arbitrary
4337 AppleScript code.
4338
43392008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4340
4341 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
4342 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
4343 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
4344 (Fx_display_mm_height, Fx_display_mm_width)
4345 (Fx_display_backing_store, Fx_display_visual_class)
4346 (Fx_display_save_under, Fx_open_connection)
4347 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
4348 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
4349 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
4350 (Fx_display_pixel_width, Fx_display_pixel_height)
4351 (Fx_display_usable_bounds, Fx_display_planes)
4352 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
4353 ... */' style of docstrings.
4354
43552008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
4356
4357 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
4358 on this platform.
4359 (mips):
4360 * m/iris4d.h (mips): Do not define.
4361 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
4362
4363 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
4364
4365 * image.c:
4366 * nsfns.m:
4367 * nsselect.m:
4368 * nsterm.h:
4369 * nsterm.m: Rename ns prefixed functions/variables to the
4370 corresponding x versions. Update references.
4371
4372 * m/ibms390x.h (NO_REMAP): Do not undefine.
4373
4374 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
4375
43762008-07-21 Chong Yidong <cyd@stupidchicken.com>
4377
4378 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
4379 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
4380 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
4381 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
4382 (Fns_display_mm_height, Fns_display_mm_width)
4383 (Fns_display_backing_store, Fns_display_visual_class)
4384 (Fns_display_save_under, Fns_open_connection)
4385 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
4386 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
4387 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
4388 (Fns_display_pixel_width, Fns_display_pixel_height)
4389 (Fns_display_usable_bounds, Fx_display_planes)
4390 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
4391
43922008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
4393
4394 * print.c (print_object): Check print_depth before searching for
4395 circularities.
4396
43972008-07-21 Michael Albinus <michael.albinus@gmx.de>
4398
4399 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
4400 only sprintf.
4401
44022008-07-21 Kenichi Handa <handa@m17n.org>
4403
4404 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
4405
44062008-07-20 Andreas Schwab <schwab@suse.de>
4407
4408 * syntax.c (find_start_pos, find_start_value)
4409 (find_start_value_byte, find_start_begv, find_defun_start)
4410 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
4411
44122008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
4413
4414 * s/sol2-3.h: Insert contents of s/sol2.h.
4415 (LD_SWITCH_SYSTEM): Remove redundant definition.
4416 * s/sol2.h: Remove, unused.
4417
44182008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4419
4420 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
4421
44222008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4423
4424 * Makefile.in (ns_appdir): Fix typo in find command.
4425
44262008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
4427
4428 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
4429
4430 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
4431 added not supported anymore.
4432
4433 * s/usg5-4-2.h (LIBS_SYSTEM):
4434 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
4435
4436 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
4437 * s/lynxos.h (GETPGRP_NO_ARG):
4438 * s/hpux10-20.h (NO_SIOCTL_H):
4439 * s/gnu.h (GETPGRP_NO_ARG):
4440 * s/gnu-linux.h (NO_SIOCTL_H):
4441 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
4442 * s/cygwin.h (GETPGRP_NO_ARG):
4443 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
4444 (C_DEBUG_SWITCH): Remove duplicate definition.
4445
4446 * m/ibms390.h: Remove boilerplate comments.
4447
4448 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
4449
4450 * process.c (HAVE_SERIAL): Consolidate ifdefs.
4451 (wait_reading_process_output): Remove code for SunOS, platform not
4452 supported anymore. Use SOLARIS2 instead of sun.
4453
44542008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4455
4456 * font.c (font_open_by_name): Under NS, default lface height to zero.
4457 (font_open_for_lface): Under NS, set size based on frame fontsize.
4458 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
4459 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
4460
44612008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4462
4463 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
4464 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
4465 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
4466 YES/NO.
4467 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
4468 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
4469 * Makefile.in (clean): Clear out build destination dir.
4470
44712008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4472
4473 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
4474 xterm, xselect.
4475 * lisp.h: Remove declaration of hash_remove.
4476 * nsgui.h: Remove redefinitions of hash_remove.
4477 * fns.c (hash_remove): Rename to hash_remove_from_table.
4478
44792008-07-19 Seiji Zenitani <zenitani@mac.com>
4480
4481 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
4482 strdup() the family UTF8String before modifying it.
4483
44842008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4485
4486 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
4487 NS_FACE_BACKGROUND with 0 instead of nil.
4488 * nsfont.m (nsfont_draw): Same.
4489
44902008-07-19 Chong Yidong <cyd@stupidchicken.com>
4491
4492 * nsfns.m (ns_set_background_color): Fix crash.
4493
44942008-07-18 Chong Yidong <cyd@stupidchicken.com>
4495
4496 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
4497
44982008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
4499
4500 * puresize.h (BASE_PURESIZE): Increase to 1240000.
4501
45022008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4503
4504 * gtkutil.c: Include <config.h> instead of "config.h".
4505
4506 * lisp.h (Foverlay_buffer): Add EXFUN.
4507
4508 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
4509 child process to complete child_setup. Undo 2005-09-21 change.
4510
4511 * s/darwin.h: Mention setsid after vfork.
4512
45132008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4514
4515 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
4516 Depend on macgui.h.
4517
4518 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
4519 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
4520
4521 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
4522 and f19.
4523 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
4524
4525 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
4526 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
4527 Remove enumerators.
4528
4529 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
4530 Check if FACE_FROM_ID returns NULL.
4531
45322008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
4533
4534 * w32inevt.c (change_frame_size): Remove extern declaration.
4535 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
4536 change_frame_size.
4537
45382008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
4539
4540 * getloadavg.c: Revert last change (2008-07-15).
4541
45422008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
4543
4544 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
4545 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
4546 from configure.
4547
45482008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
4549
4550 * s/sol2.h:
4551 * s/sol2-4.h: Reorganize conditionals.
4552
4553 * ecrt0.c: Remove code depending on m68000, not used anymore.
4554
4555 * fns.c (hash_remove): Make static.
4556 * lisp.h (hash_remove): Don't prototype.
4557
4558 * m/ibmrs6000.h:
4559 * m/ibms390x.h:
4560 * m/macppc.h: Remove boilerplate comments.
4561
4562 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
4563 Solaris, which does not need them.
4564
4565 * m/vax.h: Remove comments about unsupported systems.
4566
4567 * s/darwin.h: Reorganize ifdefs.
4568
45692008-07-17 Andreas Schwab <schwab@suse.de>
4570
4571 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
4572
45732008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
4574
4575 Use SDATA. Follow coding convention of placing operators at
4576 beginning of next line rather than end of previous line, and placing
4577 spaces around infix operators.
4578
4579 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
4580 in case it was defined already.
4581 USE @GNUSTEP_MAKEFILES@ rather than envvars.
4582 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
4583 ns_default.
4584 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
4585 Lisp_Objects.
4586 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
4587 (ns_defined_color, ns_color_to_lisp): Declare.
4588 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
4589 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
4590 it's accepted even with USE_LISP_UNION_TYPE.
4591 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
4592 (update_frame_tool_bar): Remove apparently obsolete tests for
4593 non-integerness of f->tool_bar_lines.
4594 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
4595 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
4596 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
4597 (nsfont_open): Don't confuse NULL for Qnil.
4598 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
4599 * menu.h (find_and_call_menu_selection):
4600 * menu.c (find_and_call_menu_selection): Use just int for vector size.
4601 (find_and_return_menu_selection): Always return something.
4602 * frame.h: Include dispextern.h for Display_Info.
4603 (display_x_get_resource): Declare.
4604
46052008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
4606
4607 * syntax.c: Remove stdio.h include accidentally introduced in
4608 Emacs.app commit.
4609 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
4610 NS_IMPL_COCOA.
4611 * keyboard.c (handle_async_input, input_available_signal): Remove
4612 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
4613
46142008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
4615
4616 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
4617 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
4618 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
4619 Use SDATA.
4620
4621 * keymap.c: Remove all NS-specific code.
4622 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
4623 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
4624 where_is_preferred_modifier, return a different value depending on how
4625 preferred is the binding.
4626 (where_is_internal): Adjust accordingly.
4627 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
4628 Adjust to new preferred_sequence_p.
4629 (syms_of_keymap): Declare `where-is-preferred-modifier'.
4630 * keyboard.c (parse_solitary_modifier): Not static any more.
4631 * keyboard.h (parse_solitary_modifier): Declare.
4632
46332008-07-16 Andreas Schwab <schwab@suse.de>
4634
4635 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
4636 of easymenu.
4637
46382008-07-16 Chong Yidong <cyd@stupidchicken.com>
4639
4640 * xdisp.c (move_it_in_display_line): Account for word wrap, so
4641 that we don't move off the line.
4642
46432008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
4644
4645 * keyboard.c (Qsuper): Remove.
4646 (parse_menu_item): Don't call where_is_internal specially for NS.
4647
46482008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
4649
4650 * s/gnu-linux.h: Remove boilerplate comments.
4651
4652 * m/alpha.h (__ELF__): Consolidate conditions.
4653
4654 * m/m68k.h (linux): Use GNU_LINUX instead.
4655 Remove boilerplate comments.
4656
4657 * m/intel386.h: Undo refactoring from previous change.
4658 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
4659 too, remove dead code.
4660 (linux): Use GNU_LINUX instead.
4661
46622008-07-16 Jason Rumney <jasonr@gnu.org>
4663
4664 * w32gui.h: Repeat 26 June changes lost by last change.
4665
46662008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
4667
4668 * systty.h: Remove code for Aix on 386, unsupported platform.
4669
4670 * s/ms-w32.h: Remove boilerplate comments.
4671 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
4672
4673 * s/gnu-linux.h (TERM): Remove support.
4674 (HAVE_SYSVIPC): Remove, unused.
4675 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
4676 for this system.
4677
4678 * process.c: Remove support for IRIS, unused.
4679 Remove support for TERM, not relevant anymore.
4680
4681 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
4682 used with the definition.
4683
4684 * s/aix4-2.h (static): Do not undef.
4685
4686 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
4687 only used on Aix.
4688 (HAVE_SYSVIPC): Remove, unused.
4689
4690 * m/hp800.h (CANNOT_DUMP): Do not undef.
4691
4692 * m/alpha.h: Fix comment.
4693
4694 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
4695 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
4696 used by this configuration.
4697 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
4698 * unexec.c: Remove code depending on HPUX and
4699 USG_SHARED_LIBRARIES, not used with this file. Remove code
4700 depending on IRIS, unused. Remove if 0-ed code.
4701
4702 * s/template.h: Remove comments about static.
4703
4704 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
4705 Remove if 0-ed code.
4706 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
4707 were the same as the default.
4708 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
4709 Remove boilerplate comments.
4710 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
4711 (HAVE_SYSVIPC): Remove, unused.
4712 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
4713
4714 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
4715 Remove boilerplate comments.
4716 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
4717 Remove boilerplate comments.
4718 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
4719 Remove boilerplate comments.
4720 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
4721
4722 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
4723 USG systems which do not use DATA_SEG_BITS.
4724 Refactor code. Remove boilerplate comments.
4725
4726 * m/ibms390.h:
4727 * m/m68k.h:
4728 * s/bsd-common.h:
4729 * s/cygwin.h:
4730 * s/darwin.h:
4731 * s/freebsd.h:
4732 * s/gnu.h:
4733 * s/msdos.h: Remove boilerplate comments.
4734
4735 * m/iris4d.h: Remove boilerplate comments and code for systems that
4736 do not use this file.
4737 (IRIS_4D): Remove, unused.
4738
4739 * m/mips.h: Remove boilerplate comments and code for systems that
4740 do not use this file.
4741 (SIGN_EXTEND_CHAR):
4742 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
4743 * unexmips.c: Remove file, unused.
4744
4745 * editfns.c (Fuser_full_name): Replace the only use of
4746 USER_FULL_NAME with its value.
4747 * config.in: Regenerate.
4748
47492008-07-16 David Reitter <david.reitter@gmail.com>
4750
4751 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
4752 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
4753
47542008-07-16 Glenn Morris <rgm@gnu.org>
4755
4756 * emacs.c (system-type): Doc fix.
4757
47582008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
4759
4760 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
4761 If the cache doesn't work, let's fix it, rather than work around it.
4762
47632008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4764
4765 * Makefile.in: Correct additions for nsfont.o in last commit.
4766 * nsfont.m: New file (forgot last commit).
4767
47682008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4769
4770 * callproc.c (set_initial_environment): Initialize
4771 Vprocess_environment under CANNOT_DUMP (fixes crash when
4772 batch-compiling for bootstrap).
4773
47742008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4775 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4776
4777 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
4778 fix crash due to different init order.
4779
47802008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4781
4782 Changes and additions for NeXTstep windowing system (Cocoa and
4783 GNUstep) support.
4784
4785 * Makefile.in:
4786 * config.in: Support defines and build commands for NS port.
4787 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
4788 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
4789 * dispextern.h: Include nsgui.h and add needed typedefs under NS
4790 windowing.
4791 (struct face): Add synth_ital field.
4792 * dispnew.c: Include nsterm.h when compiling under NS windowing.
4793 (init_display): Initialize Vinitial_window_system to "ns" when so
4794 compiled.
4795 * emacs.c: Include GSConfig.h when compiling under GNUstep.
4796 (display_arg): Use under NS.
4797 (main): Under NS, allocate autorelease pool and handle command line
4798 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
4799 (standard_args): Add NS-specific args.
4800 (shut_down_emacs): Shut down NS terminal if compiled under NS.
4801 * font.c (DEFAULT_ENCODING): New variable.
4802 (font_find_for_lface): Use it.
4803 (syms_of_font): Load syms_of_nsfont under NS.
4804 * font.h: Declare nsfont_driver when compiled under NS.
4805 * fontset.c: When compiling under NS, include nsterm.h.
4806 (fontset_from_font): Autoconstruct fontset under NS.
4807 * frame.c (various): Under NS, include nsterm.h, add Qns window system
4808 symbol, document and use it.
4809 (do_switch_frame): When for_deletion under Cocoa, add
4810 Fraise_frame(Qnil).
4811 (x_set_frame_parameters): Ensure font attribute changes are picked up.
4812 (x_get_arg): Allow "yes" and "no" as boolean values.
4813 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
4814 Qright under Cocoa.
4815 (focus-follows-mouse): Default to 0 under NS.
4816 * frame.h (enum output_method): Add output_ns.
4817 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
4818 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
4819 (FRAME_WINDOW_P): NS-specific definition.
4820 * fringe.c (max_used_fringe_bitmap): Make public.
4821 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
4822 (getloadavg): Use NeXT code under descendant OS's.
4823 * image.c (includes and header section, x_create_bitmap_from_data)
4824 (x_create_bitmap_from_file, free_bitmap_record, image_background)
4825 (image_background_transparent, x_clear_image_1)
4826 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
4827 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
4828 (x_to_xcolors, x_from_xcolors, x_disable_image)
4829 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
4830 other GUIs, including XPM support using code originally written for
4831 Carbon GUI.
4832 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
4833 using NS API.
4834 (image_ascent): Use font metrics macros instead of direct struct field
4835 access.
4836 * keyboard.c (includes): Add nsterm.h when compiling under NS.
4837 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
4838 Also, handle NS as GTK for menu bar purposes.
4839 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
4840 toolkit where they differ.
4841 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
4842 use cachelist, still needed under NS.
4843 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
4844 (struct widget_value): Define it here for menu.c.
4845 * keymap.c (includes): Include modifier internals.
4846 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
4847 NS.
4848 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
4849 support for preferring sequences using certain modifiers, specified by
4850 the FIRSTONLY argument.
4851 * lisp.h (hash_remove): Rename to avoid name clash when compiling
4852 under NS GNUstep implementation.
4853 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
4854 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
4855 * menu.c: Include nsterm.h under NS.
4856 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
4857 (free_menubar_widget_tree_value, update_submenu_strings)
4858 (find_and_call_menu_selection): Treat NS as X and NT.
4859 (find_and_return_menu_selection): New function, used for popup menus.
4860 * nsgui.h:
4861 * nsterm.h:
4862 * nsfns.m:
4863 * nsimage.m:
4864 * nsmenu.m:
4865 * nsselect.m:
4866 * nsterm.m: New files.
4867 * process.c (wait_reading_process_output): Under NS, call ns_select()
4868 instead of plain select().
4869 * syntax.c (char_quoted): Under NS, avoid a crash when called near
4870 beginning of buffer.
4871 * sysselect.h (init_process): Rename when compiling under Cocoa to
4872 avoid name conflict.
4873 * termhooks.h (display_info): Add ns_display_info to union.
4874 * terminal.c (Fterminal_live_p): Add ns to terminal types.
4875 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
4876 COCOA environment.
4877 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
4878 unexec() signature. (Note, this will dump, but the resulting file
4879 crashes; unexosx is used instead; keeping around for reference and
4880 possible aid in getting dump working under GNUstep.)
4881 * w32gui.h (button_type, widget_value): Remove definitions (now in
4882 keyboard.h).
4883 * window.c: Include nsterm.h when compiling under NS.
4884 * xdisp.c (includes): Include nsterm.h when compiling under NS.
4885 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
4886 other GUI windowing systems.
4887 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
4888 GTK.
4889 (x_consider_frame_title): Under NS, set icon type and frame
4890 modified-state indicator; use ns_set_name_as_filename() when using
4891 formatted title.
4892 (update_window_cursor): Make public when compiling under NS.
4893 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
4894 (hourglass_atimer, Vhourglass_delay
4895 * xfaces.c (header section, init_frame_faces, clear_font_table)
4896 (defined_color, unload_color, x_face_list_fonts)
4897 (prepare_face_for_display): Add NS support parallel to other GUIs.
4898 Emulate GCs like other non-X GUIs.
4899 (split_font_name): Don't lowercase font name under NS.
4900 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
4901 under NS.
4902 * s/darwin.h: Add support for compilation under NS.
4903
49042008-07-15 Jason Rumney <jasonr@gnu.org>
4905
4906 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
4907 (w32_show_hourglass): Rename from show_hourglass.
4908 (w32_hide_hourglass): Rename from hide_hourglass.
4909 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
4910 (Vhourglass_delay): Declare extern.
4911 (hourglass_started): Remove.
4912
4913 * xdisp.c (Vhourglass_delay): Remove static.
4914 (hourglass_started, start_hourglass, cancel_hourglass):
4915 Don't include these versions on WINDOWSNT.
4916
49172008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4918
4919 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
4920 variables (formerly in xfns.c).
4921 (show_hourglass, hide_hourglass): New prototypes (same).
4922 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
4923 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
4924 in xfns.c).
4925 (syms_of_xdisp): Declare/initialize display-hourglass,
4926 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
4927 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
4928 formerly in xfns.c.
4929 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
4930 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
4931 (start_hourglass, cancel_hourglass): Remove.
4932 (show_hourglass, hide_hourglass): Remove prototypes and static
4933 modifiers.
4934 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
4935 hourglass_atimer, hourglass_shown_p declaration/initialization.
4936 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
4937 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
4938 (start_hourglass, cancel_hourglass): Remove.
4939 (show_hourglass, hide_hourglass): Remove prototypes and static
4940 modifiers.
4941 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
4942 hourglass_atimer, hourglass_shown_p declaration/initialization.
4943 * w32fns.c (display_hourglass_p, Vhourglass_delay)
4944 (DEFAULT_HOURGLASS_DELAY): Remove.
4945 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
4946 hourglass_shown_p declaration/initialization.
4947
49482008-07-14 Jason Rumney <jasonr@gnu.org>
4949
4950 * w32fns.c (w32_get_arg): Remove wrapper function.
4951 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
4952 directly.
4953 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
4954
49552008-07-14 Kenichi Handa <handa@m17n.org>
4956
4957 * xfont.c (xfont_open): Add workaround for X's bug.
4958
49592008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4960
4961 * fontset.c: Include <stdio.h> unconditionally.
4962
49632008-07-13 Michael Albinus <michael.albinus@gmx.de>
4964
4965 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
4966 for filtering.
4967
49682008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
4969
4970 * s/vms.h: Use __GNUC__ instead of _GNUC_.
4971
4972 * m/macppc.h:
4973 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
4974
4975 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
4976 (SPECIAL_EMACS_INT):
4977 * m/ia64.h (SPECIAL_EMACS_INT):
4978 * m/amdx86-64.h (SPECIAL_EMACS_INT):
4979 * s/gnu.h (NLIST_STRUCT):
4980 * s/aix4-2.h (X11R5_INHIBIT_I18N):
4981 * s/gnu-linux.h (LINUX):
4982 * s/msdos.h (HAVE_FACES):
4983 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
4984
4985 * systty.h:
4986 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
4987 anymore.
4988
49892008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
4990
4991 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
4992 always defined as int.
4993
4994 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
4995 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
4996 * s/gnu-linux.h (HAVE_WAIT_HEADER):
4997 * s/freebsd.h (HAVE_WAIT_HEADER):
4998 * s/bsd-common.h (HAVE_UNION_WAIT):
4999 * s/aix4-2.h (HAVE_WAIT_HEADER):
5000 * m/mips.h (HAVE_UNION_WAIT):
5001 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
5002 (COFF, static): Do not define, they are undefined later in the file.
5003
5004 * process.c (update_status): Don't use a union.
5005 (status_convert):
5006 (sigchld_handler): Use int instead of WAITTYPE.
5007
50082008-07-12 Chong Yidong <cyd@stupidchicken.com>
5009
5010 * indent.c (Fvertical_motion): Restore hscroll before moving to
5011 goal column.
5012
50132008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
5014
5015 * lisp.h: Remove left over code.
5016
50172008-07-11 Andreas Schwab <schwab@suse.de>
5018
5019 * lisp.h: Fix logic in last change.
5020
5021 * menu.h: New file.
5022 * menu.c: Include it.
5023 * xmenu.c: Likewise.
5024 * Makefile.in: Update dependencies.
5025
50262008-07-11 Kenichi Handa <handa@m17n.org>
5027
5028 * fontset.c (fontset_from_font): Cancel the previous change.
5029
50302008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
5031
5032 * lisp.h:
5033 * w32heap.c:
5034 * emacs.c:
5035 * alloc.c: Replace all references of NO_UNION_TYPE with
5036 USE_LISP_UNION_TYPE.
5037
5038 * m/xtensa.h (NO_UNION_TYPE):
5039 * m/vax.h (NO_UNION_TYPE):
5040 * m/template.h (NO_UNION_TYPE):
5041 * m/sparc.h (NO_UNION_TYPE):
5042 * m/mips.h (NO_UNION_TYPE):
5043 * m/macppc.h (NO_UNION_TYPE):
5044 * m/m68k.h (NO_UNION_TYPE):
5045 * m/iris4d.h (NO_UNION_TYPE):
5046 * m/intel386.h (NO_UNION_TYPE):
5047 * m/ibms390x.h (NO_UNION_TYPE):
5048 * m/ibms390.h (NO_UNION_TYPE):
5049 * m/ibmrs6000.h (NO_UNION_TYPE):
5050 * m/ia64.h (NO_UNION_TYPE):
5051 * m/hp800.h (NO_UNION_TYPE):
5052 * m/arm.h (NO_UNION_TYPE):
5053 * m/amdx86-64.h (NO_UNION_TYPE):
5054 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
5055 defining it the same.
5056
50572008-07-10 Chong Yidong <cyd@stupidchicken.com>
5058
5059 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
5060
50612008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
5062
5063 * fileio.c:
5064 * sysdep.c
5065 * systty.h:
5066 * m/ibmrs6000.h:
5067 * m/iris4d.h:
5068 * s/aix4-2.h:
5069 * s/freebsd.h:
5070 * s/gnu-linux.h:
5071 * s/hpux10-20.h:
5072 * s/hpux11.h:
5073 * s/netbsd.h:
5074 * s/sol2-3.h:
5075 * s/sol2-4.h:
5076 * s/sol2.h:
5077 * s/usg5-4.h:
5078 * s/vms.h: Remove references to unused variables.
5079
50802008-07-10 Andreas Schwab <schwab@suse.de>
5081
5082 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
5083 pattern before matching the generic family.
5084
50852008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
5086
5087 * unexec.c:
5088 * s/vms.h:
5089 * s/usg5-4-2.h:
5090 * s/sol2-5.h:
5091 * s/freebsd.h:
5092 * s/darwin.h: Remove dead code.
5093
5094 * m/template.h:
5095 * m/sparc.h:
5096 * m/mips.h:
5097 * m/m68k.h:
5098 * m/iris4d.h:
5099 * m/intel386.h:
5100 * m/ibms390x.h:
5101 * m/ibms390.h:
5102 * m/ia64.h:
5103 * m/hp800.h:
5104 * m/arm.h:
5105 * m/amdx86-64.h: Remove dead code and references to unused
5106 and compiler defined symbols.
5107
5108 * unexmips.c:
5109 * unexelf.c: Remove references to desupported systems.
5110
5111 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
5112
5113 * m/powermac.h: Remove boilerplate comments.
5114 (NO_REMAP): Remove unused definition.
5115
5116 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
5117 define them.
5118
51192008-07-10 Kenichi Handa <handa@m17n.org>
5120
5121 * xfont.c (xfont_open): Log the reason of failure.
5122
51232008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
5124
5125 * fontset.c (fontset_get_font_group):
5126 * font.c (font_check_otf): Specify argument types.
5127
51282008-07-09 Kenichi Handa <handa@m17n.org>
5129
5130 * coding.c (detect_coding_utf_8): Set detect_info->found only when
5131 non-ASCII char is found.
5132
5133 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
5134 (reorder_font_vector): Change the arg preferred_family to font.
5135 Prefer the spec matching with font.
5136 (fontset_get_font_group): New function.
5137 (fontset_find_font): Change the format of an element of a realized
5138 fontset. Use fontset_get_font_group.
5139 (fontset_font): Try the current fontset, the default fontset, the
5140 fallbacks of the current fontset, and the fallbacks of the default
5141 fontset in this order.
5142 (face_for_char): Delete the shortcut to use the current font.
5143 (fontset_from_font): Don't set fonts for Latin in the fontset.
5144
5145 * font.h (font_make_object, font_match_p): Adjust prototypes.
5146
5147 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
5148
5149 * font.c (font_make_object): New arg entity and pixelsize.
5150 (font_check_otf_features, font_check_otf): New functions.
5151 (font_match_p): Check :lang, :script, and :otf properties.
5152
5153 * xfont.c (xfont_open): Adjust it for the change of
5154 font_make_object.
5155 (xfont_text_extents): Fix initial setting of metrics.
5156
5157 * ftfont.c (struct ftfont_info): New member index, delete member
5158 fc_charset_idx. Make the member order compatible with struct
5159 xftfont_info.
5160 (fc_charset_table): Change charset names to registry names.
5161 (ftfont_pattern_entity): Delete the args registry and
5162 fc_charset_idx. Change the value of :font-entity property
5163 to (FONTNAME . INDEX). Always set :registry property to
5164 `iso10646-1'.
5165 (struct ftfont_cache_data): New struct.
5166 (ftfont_lookup_cache): New arg for_face.
5167 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
5168 (ftfont_driver): Set the member otf_capability.
5169 (ftfont_get_charset): Adjust it for the change of
5170 fc_charset_table.
5171 (OTF_TAG_SYM): New macro.
5172 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
5173 for the change of fc_charset_table.
5174 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
5175 ftfont_pattern_entity. Add FC_INDEX to objset.
5176 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
5177 and ftfont_pattern_entity.
5178 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
5179 font_make_object, struct ftfont_info.
5180 (ftfont_has_char): Use ftfont_get_fc_charset.
5181 (ftfont_otf_features, ftfont_otf_capability): New functions.
5182 (ftfont_shape): Use ftfont_get_otf.
5183 (ftfont_text_extents): Fix initial setting of metrics.
5184
5185 * xftfont.c (struct xftfont_info): New member ft_size. Make the
5186 member order compatible with struct ftfont_info.
5187 (xftfont_open): Add FC_CHARSET to the pattern. Set
5188 xftfont_info->ft_size. Don't unlock the face. Check BDF
5189 properties if appropriate.
5190 (xftfont_close): Unlock the face.
5191 (xftfont_anchor_point, xftfont_shape): Deleted.
5192 (syms_of_xftfont): Don't set members anchor_point and shape of
5193 xftfont_driver.
5194
5195 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
5196 font_make_object.
5197
5198 * w32font.c (w32font_open): Adjust it for the change of
5199 font_make_object.
5200 (w32font_open_internal): Don't set properties of font_object here.
5201
52022008-07-08 Chong Yidong <cyd@stupidchicken.com>
5203
5204 * macfns.c (x_create_tip_frame):
5205 * w32fns.c (x_create_tip_frame):
5206 * xfns.c (x_create_tip_frame): Pass parameter argument to
5207 face-set-after-frame-default.
5208
5209 * xfaces.c (Finternal_merge_in_global_face): Save merged
5210 attributes for the default face back into the face vector.
5211
52122008-07-08 Andreas Schwab <schwab@suse.de>
5213
5214 * fontset.h: Declare fontset_from_font. Don't declare
5215 new_fontset_from_font and fontset_from_font_name.
5216 * xterm.c: Include "fontset.h".
5217 * Makefile.in (xterm.o): Update dependencies.
5218
52192008-07-08 Glenn Morris <rgm@gnu.org>
5220
5221 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
5222 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
5223
52242008-07-07 Chong Yidong <cyd@stupidchicken.com>
5225
5226 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
5227 (x_set_frame_parameters): Don't bind it.
5228
52292008-07-07 Juanma Barranquero <lekktu@gmail.com>
5230
5231 * w32fns.c (map_w32_filename): Declare extern.
5232
52332008-07-07 Jason Rumney <jasonr@gnu.org>
5234
5235 * w32term.c (WS_EX_LAYERED): Define if not already.
5236
52372008-07-06 Chong Yidong <cyd@stupidchicken.com>
5238
5239 * xfaces.c (set_font_frame_param): Don't try to set the font
5240 parameter if it is still unspecified in the lface.
5241
52422008-07-05 Chong Yidong <cyd@stupidchicken.com>
5243
5244 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
5245 face if it didn't already exist.
5246
5247 * xdisp.c (try_window_id): Give up if word-wrapping is on.
5248
52492008-07-05 Andreas Schwab <schwab@suse.de>
5250
5251 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
5252
52532008-07-05 Chong Yidong <cyd@stupidchicken.com>
5254
5255 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
5256 word-wrapping.
5257 (IT_DISPLAYING_WHITESPACE): New macro.
5258 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
5259 when word-wrapping. Simplify word-wrapping logic. Use correct
5260 pixel positions when saving copies of the iterator.
5261 (display_line): Use proper wrap point if the last character on a
5262 line was preceded by whitespace.
5263
52642008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
5265
5266 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
5267
52682008-07-04 Kenichi Handa <handa@m17n.org>
5269
5270 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
5271
5272 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
5273
52742008-07-02 Jason Rumney <jasonr@gnu.org>
5275
5276 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 5277 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
5278
5279 * xdisp.c (next_element_from_display_vector): Move assignment out
5280 of if statement.
5281
52822008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
5283
5284 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
5285
5286 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
5287 (syms_of_fileio): Initialize and export them.
5288 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
5289
5290 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
5291 (Fsystem_move_file_to_trash): New function.
5292 (syms_of_w32fns): Export it to lisp.
5293
52942008-07-01 Jason Rumney <jasonr@gnu.org>
5295
5296 * w32font.c (w32font_text_extents): Don't count overhang as part
5297 of width.
5298
52992008-06-30 Miles Bader <miles@gnu.org>
5300
5301 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
5302 Add `avoid_cursor_p' field.
5303
5304 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
5305 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
5306 (append_glyph, append_composite_glyph, produce_image_glyph)
5307 (append_stretch_glyph): Initialize avoid_cursor_p.
5308 (get_it_property): Rename from `get_line_height_property'.
5309 (x_produce_glyphs): Use get_it_property.
5310 (handle_line_prefix, push_display_prop): New functions.
5311 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
5312 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
5313 New variables.
5314 (syms_of_xdisp): Initialize them.
5315
53162008-06-30 Kenichi Handa <handa@m17n.org>
5317
5318 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
5319 XftDefaultSubstitute (they are called in XftFontMatch).
5320 (xftfont_open): Fix args to ftfont_font_format.
5321
5322 * ftfont.c (fc_charset_table): New member lang.
5323 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 5324 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
5325 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
5326 (ftfont_open): Fix args to ftfont_font_format.
5327 (ftfont_font_format): New arg filename.
5328
53292008-06-30 Chong Yidong <cyd@stupidchicken.com>
5330
5331 * xfaces.c (Finternal_merge_in_global_face): If default face was
5332 modified, realize it again. Update the font face attribute.
5333
53342008-06-29 Jason Rumney <jasonr@gnu.org>
5335
5336 * w32term.c (x_set_frame_alpha): Fix logic.
5337
53382008-06-29 Kenichi Handa <handa@m17n.org>
5339
5340 * fontset.c (Finternal_char_font): Return font-object instead of
5341 font-name.
5342
5343 * composite.c (get_composition_id): Fix the width calculation for TAB.
5344
53452008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
5346
5347 * indent.c (Fvertical_motion): Properly handle float column arg.
5348
53492008-06-28 Jason Rumney <jasonr@gnu.org>
5350
5351 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
5352 (pfnSetLayeredWindowAttributes): New function pointer.
5353 (w32_initialize): Initialize it when supported.
5354 (x_set_frame_alpha): New function.
5355
5356 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
5357 (w32_frame_parm_handlers): Set alpha handler.
5358
5359 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
5360
53612008-06-27 Jason Rumney <jasonr@gnu.org>
5362
5363 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
5364 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
5365 (w32_to_x_charset, x_to_w32_charset)
5366 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
5367 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
5368 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
5369 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
5370 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
5371 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
5372 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
5373 (Qw32_charset_unicode): Remove.
5374 (syms_of_w32fns): Update for above changes.
5375
5376 * w32font.c (w32_to_x_charset, x_to_w32_charset)
5377 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
5378 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
5379 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
5380 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
5381 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
5382 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
5383 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
5384 (syms_of_w32font): Update for above changes.
5385
53862008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
5387
5388 * s/usg5-4.h: Fix previous change: keep the correct branch of a
5389 removed #if.
5390 (USG_SHARED_LIBRARIES): Remove duplicate definition.
5391
53922008-06-26 Juanma Barranquero <lekktu@gmail.com>
5393 Eli Zaretskii <eliz@gnu.org>
5394
5395 * makefile.w32-in (LOCAL_FLAGS):
5396 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
5397
5398 * sysdep.c (_spawnlp, _getpid):
5399 Declare with explicit _cdecl instead of _CRTAPI1.
5400
5401 * editfns.c (Fget_internal_run_time):
5402 Check for WINDOWSNT with #ifdef, not #if.
5403
54042008-06-26 Jason Rumney <jasonr@gnu.org>
5405
5406 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
5407
5408 * w32term.c (x_draw_glyph_string_foreground)
5409 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
5410 Use FONT_HANDLE macro.
5411 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
5412
5413 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
5414 (uniscribe_encode_char): Use FONT_HANDLE macro.
5415
5416 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
5417 (w32font_text_extents): Use precast w32_font.
5418 (w32font_close): Free cached metrics.
5419 (w32font_open_internal): Allocate space for name on stack.
5420
54212008-06-26 Chong Yidong <cyd@stupidchicken.com>
5422
5423 * xdisp.c (extend_face_to_end_of_line): Fix last change.
5424
54252008-06-26 Jason Rumney <jasonr@gnu.org>
5426
5427 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
5428 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
5429
54302008-06-26 Juanma Barranquero <lekktu@gmail.com>
5431
5432 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
5433
54342008-06-26 Jason Rumney <jasonr@gnu.org>
5435
5436 * w32bdf.c, w32bdf.h: Remove obsolete files.
5437
5438 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
5439
5440 * w32gui.h: Don't include w32bdf.h.
5441 (XCharStruct, enum w32_char_font_type, W32FontStruct):
5442 Remove obsolete font support.
5443
5444 * w32font.h (struct w32font_info): Remove compat_w32_font.
5445 Add hfont member.
5446 (FONT_COMPAT): Remove obsolete macro.
5447
5448 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
5449 (w32font_encode_char, w32font_text_extents): Use new hfont member.
5450 (w32font_open_internal): Remove compat code. Set new hfont member.
5451 (Fx_select_font): Use new hfont member.
5452
5453 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
5454 (uniscribe_encode_char): Use new hfont member.
5455
5456 * w32term.c (x_draw_glyph_string_foreground)
5457 (x_draw_composite_glyph_string_foreground): Use new hfont member.
5458 (x_draw_glyph_string): Use metrics in w32font_info.
5459
54602008-06-26 Kenichi Handa <handa@m17n.org>
5461
5462 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
5463
54642008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
5465
5466 * unexnext.c:
5467 * m/ews4800.h:
5468 * m/hp9000s300.h:
5469 * m/ibm370aix.h:
5470 * m/mips-siemens.h:
5471 * m/ncr386.h:
5472 * m/next.h:
5473 * m/pmax.h:
5474 * m/powerpcle.h:
5475 * m/tandem-s2.h:
5476 * s/386bsd.h:
5477 * s/bsd386.h:
5478 * s/bsd4-1.h:
5479 * s/bsd4-2.h:
5480 * s/bsdos2-1.h:
5481 * s/bsdos2.h:
5482 * s/bsdos3.h:
5483 * s/bsdos4.h:
5484 * s/nextstep.h:
5485 * s/ultrix4-3.h:
5486 * s/usg5-0.h:
5487 * s/usg5-2-2.h:
5488 * s/usg5-2.h:
5489 * s/usg5-4-3.h:
5490 * s/ux4800.h:
5491 * s/uxpds.h:
5492 * s/uxpv.h: Remove support for obsolete systems.
5493 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 5494 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
5495 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
5496 Remove, insert contents in s/aix4-2.h.
5497 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
5498 * s/bsd4-3.h: Rename to ...
5499 * s/bsd-common.h: ... this.
5500 * data.c:
5501 * doc.c:
5502 * ecrt0.c:
5503 * emacs.c:
5504 * fileio.c:
5505 * floatfns.c:
5506 * keyboard.c:
5507 * mem-limits.h:
5508 * print.c:
5509 * process.c:
5510 * sysdep.c:
5511 * syssignal.h:
5512 * systty.h:
5513 * syswait.h:
5514 * term.c:
5515 * unexec.c:
5516 * unexelf.c:
5517 * unexhp9k800.c:
5518 * m/hp800.h:
5519 * m/ibmrs6000.h:
5520 * m/mips.h:
5521 * m/vax.h:
5522 * s/darwin.h:
5523 * s/freebsd.h:
5524 * s/gnu.h:
5525 * s/ms-w32.h:
5526 * s/msdos.h:
5527 * s/netbsd.h:
5528 * s/template.h: Remove references to obsolete variables.
5529
5530 * Makefile.in: Add dependencies for all unexec files.
5531 (admindir): Remove unused variable.
5532 (UNEXEC_SRC): Remove references.
5533
55342008-06-25 Chong Yidong <cyd@stupidchicken.com>
5535
5536 * xfns.c (x_default_font_parameter): If Xft is available, first
5537 try Monospace-12 for the default font.
5538
55392008-06-25 Jason Rumney <jasonr@gnu.org>
5540
5541 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
5542
55432008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
5544
5545 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
5546
5547 * buffer.c (syms_of_buffer): Remove default-word-wrap.
5548
55492008-06-25 Juanma Barranquero <lekktu@gmail.com>
5550
5551 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
5552 <scroll-conservatively>: Fix typo in docstring.
5553
5554 * xselect.c (Fx_send_client_event): Doc fix.
5555
55562008-06-25 Kenichi Handa <handa@m17n.org>
5557
5558 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
5559
5560 * font.c (font_parse_fcname): Remove unused variables.
5561 (font_sort_entites): Delete the arg SPEC. Caller changed.
5562 Fix for the case of ! best_only.
5563 (font_delete_unmatched): Check DPI and AVGWIDTH too.
5564
5565 * lisp.h (Fstring_to_unibyte): EXFUN it.
5566
5567 * character.h (str_to_unibyte): Extern it.
5568
5569 * character.c (str_to_unibyte): New function.
5570
5571 * fns.c (Fstring_to_unibyte): New function.
5572 (syms_of_fns): Defsubr it.
5573
55742008-06-24 Kenichi Handa <handa@m17n.org>
5575
5576 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
5577 DPI too.
5578 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
5579
55802008-06-24 Andreas Schwab <schwab@suse.de>
5581
5582 * Makefile.in (${lispsource}loaddefs.el): Rename from
5583 ../lisp/loaddefs.el.
5584 (bootstrap-clean): Do what distclean does but don't remove
5585 Makefile.
5586 (distclean): Depend on bootstrap-clean and remove Makefile.
5587
55882008-06-24 Chong Yidong <cyd@stupidchicken.com>
5589
5590 * buffer.h (struct buffer): New member word_wrap.
5591
5592 * buffer.c (syms_of_buffer): New variables default-word-wrap and
5593 word-wrap.
5594 (init_buffer_once): Initialize them.
5595
5596 * dispextern.h (struct it): Replace bool truncate_lines_p with a
5597 line_wrap enum possessing three possible values.
5598
5599 * termopts.h: Replace truncate_partial_width_windows with
5600 Vtruncate_partial_width_windows.
5601
5602 * dispnew.c (direct_output_for_insert): Avoid direct output when
5603 inserting a space with word wrap on.
5604
5605 * indent.c (compute_motion): Obey integer values of
5606 truncate-partial-width-windows.
5607
5608 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
5609 replacing truncate_partial_width_windows.
5610 (init_iterator): If Vtruncate_partial_width_windows is an integer,
5611 truncate only if the window width is below that integer.
5612 (start_display, resize_mini_window, produce_stretch_glyph)
5613 (display_string, move_it_in_display_line_to): Use line_wrap.
5614 (back_to_previous_visible_line_start, reseat_1): Reset
5615 string_from_display_prop_p.
5616 (display_line): Extend default face to end of line when wrapping.
5617
56182008-06-24 Kim F. Storm <storm@cua.dk>
5619
5620 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
5621 to wrap continued lines at word boundaries.
5622
56232008-06-24 Jason Rumney <jasonr@gnu.org>
5624
5625 * font.c (Ffont_face_attributes): Multiply pixel size before point
5626 conversion to avoid multiplying rounding error.
5627
56282008-06-23 Jason Rumney <jasonr@gnu.org>
5629
5630 * w32term.c (x_draw_glyph_string_background)
5631 (x_draw_glyph_string): Remove old bdf font code.
5632
5633 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
5634
56352008-06-22 Kenichi Handa <handa@m17n.org>
5636
5637 * font.c (font_find_for_lface): Try the adstyle specified in
5638 the property of LFACE_FONT of LFACE (if any).
5639
56402008-06-21 Seiji Zenitani <zenitani@mac.com>
5641 Ryo Yoshitake <ryo@shiftmode.net>
5642
5643 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
5644
56452008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
5646
5647 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
5648 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
5649 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
5650 (witness-emacs): Remove.
5651 (lisp, shortlisp): Move loaddefs.el earlier.
5652 (mostlyclean): Forget about witness-emacs.
5653
56542008-06-22 Glenn Morris <rgm@gnu.org>
5655
5656 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
5657 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
5658
56592008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
5660
5661 * Makefile.in (PRECOMP): Remove.
5662 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
5663 (witness-emacs): Run `compile-first'.
5664 (.el.elc): Use the new compile-onefile target.
5665
56662008-06-21 Kenichi Handa <handa@m17n.org>
5667
5668 * xftfont.c (xftfont_open): Handle QCembolden only when
5669 FC_EMBOLDEN is defined.
5670
56712008-06-21 Andreas Schwab <schwab@suse.de>
5672
5673 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
5674 (.el.elc): Likewise.
5675
56762008-06-21 Miles Bader <miles@gnu.org>
5677
5678 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
5679 build dir, not the lisp source dir.
5680
56812008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
5682
5683 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
5684 (bootstrapclean): Remove.
5685 (.el.elc): New rule.
5686 (PRECOMP): New var.
5687 (../lisp/subdirs.el): Remove.
5688 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
5689 (witness-emacs): New target.
5690 (mostlyclean): Remove witness-emacs as well.
5691 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
5692 Add witness-emacs dependency.
5693
56942008-06-20 Chong Yidong <cyd@stupidchicken.com>
5695
5696 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
5697 defined by the font.
5698
56992008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
5700
5701 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
5702 (bootstrap-clean): New target that keeps TAGS around.
5703 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
5704 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
5705
57062008-06-20 Jason Rumney <jasonr@gnu.org>
5707
5708 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
5709 Remove obsolete font code.
5710
5711 * w32font.c (font_matches_spec): Use csb bitfield from font signature
5712 to determine language support.
5713
57142008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
5715
5716 * sysdep.c (cfsetspeed): New fun extracted from the code.
5717 (cfmakeraw): Move before first use.
5718
57192008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
5720
5721 * sysdep.c (cfmakeraw): Provide fallback implementation.
5722 (serial_configure): Provide fallback implementation of cfsetspeed.
5723
57242008-06-20 Kenichi Handa <handa@m17n.org>
5725
5726 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
5727 the pattern.
5728
5729 * fontset.c (fontset_from_font): Copy font_spec before changing
5730 the elements.
5731
5732 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
5733
57342008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
5735
5736 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
5737 for explicit `font' parameters.
5738
5739 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
5740
57412008-06-19 Kenichi Handa <handa@m17n.org>
5742
5743 * frame.c: Include <ctype.h>.
5744 (x_set_font_backend): Allow spacing characters in the X resource
5745 for FontBackend.
5746
57472008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
5748
5749 * w32fns.c, xfns.c (Qfont_param): New var.
5750 (syms_of_w32fns): Initialize it.
5751 (x_default_font_parameter): Record explicit `font' into
5752 `font-parameter'.
5753
57542008-06-18 Kenichi Handa <handa@m17n.org>
5755
5756 * font.c (font_parse_xlfd): Fix previous change.
5757 (font_parse_fcname): Don't use :fc-unknown-spec.
5758 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
5759 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
5760 (font_add_log): Prepend the driver name to the resulting fonts.
5761
5762 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
5763 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
5764 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
5765
5766 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
5767 (QCembolden): New variables.
5768 (syms_of_xftfont): DEFSYM them.
5769 (xftfont_open): Call XftFontMatch. Don't trust the result of
5770 XftTextExtents8 if the pixel_size is less than 5.
5771
57722008-06-18 Andreas Schwab <schwab@suse.de>
5773
5774 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
5775 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
5776
57772008-06-18 Jason Rumney <jasonr@gnu.org>
5778
5779 * w32font.c (w32font_list, w32font_match): Add logging.
5780
5781 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
5782
57832008-06-17 Chong Yidong <cyd@stupidchicken.com>
5784
5785 * font.c (font_parse_fcname): Store divider characters for
5786 unknown-spec list. For known key symbols, intern using correct
5787 symbol name.
5788
57892008-06-17 Kenichi Handa <handa@m17n.org>
5790
5791 * xfaces.c (realize_default_face): If the frame is not on window
5792 system, set the fontset of face to nil.
5793
57942008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
5795
5796 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
5797
57982008-06-16 Juanma Barranquero <lekktu@gmail.com>
5799
5800 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
5801 (build_font_name_from_vector): Delete externs.
5802
5803 * xfaces.c (struct font_name): Don't declare.
5804
58052008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
5806
5807 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
5808
58092008-06-16 Chong Yidong <cyd@stupidchicken.com>
5810
5811 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
5812
58132008-06-16 Juanma Barranquero <lekktu@gmail.com>
5814
5815 * font.c (Ffont_spec): Fix usage in docstring.
5816 (Ffont_face_attributes): Doc fix.
5817
58182008-06-16 Andreas Schwab <schwab@suse.de>
5819
5820 * font.c (Ffont_face_attributes): Fix definition.
5821
58222008-06-16 Jason Rumney <jasonr@gnu.org>
5823
5824 * font.h (font_style_symbolic_from_value): Remove.
5825
5826 * font.c (font_style_symbolic_from_value): Remove.
5827 (font_style_symbolic): Revert to pre 2008-06-13 version.
5828
5829 * w32font.c (w32_to_fc_weight): New function.
5830 (w32font_full_name, logfont_to_fcname): Use it.
5831
58322008-06-16 Kenichi Handa <handa@m17n.org>
5833
5834 * font.c (font_check_object): Delete it.
5835 (font_clear_cache): Check if a font-object is alive.
5836 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
5837 font-object to nil.
5838 (font_close_object): Don't check FONT_CLOSE_OBJECT.
5839 (font_at): Don't call font_check_object.
5840 (Ffont_get): Return a symbol for :weight, :slant, and :width.
5841
58422008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
5843
5844 * puresize.h (BASE_PURESIZE): Increase to 1230000.
5845
58462008-06-16 Chong Yidong <cyd@stupidchicken.com>
5847
5848 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
5849
58502008-06-15 Chong Yidong <cyd@stupidchicken.com>
5851
5852 * font.c (font_parse_fcname): Only one decimal point.
5853 (font_unparse_fcname): Handle data in family and foundry indices
5854 as symbols, not strings.
5855 (font_unparse_gtkname, Ffont_face_attributes): New functions.
5856
5857 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
5858
5859 * font.h (font_unparse_gtkname): Add prototype.
5860
58612008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
5862
5863 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
5864
58652008-06-15 Andreas Schwab <schwab@suse.de>
5866
5867 * font.c (font_update_drivers): Fix crash when no drivers match.
5868
58692008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
5870
5871 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
5872 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
5873
58742008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
5875
5876 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
5877
58782008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
5879
5880 * process.c (Fserial_process_configure, Fprocess_send_eof):
5881 Use EQ to compare Lisp_Objects.
5882
58832008-06-13 Jason Rumney <jasonr@gnu.org>
5884
5885 * w32fns.c (Fw32_select_font): Remove old font API function.
5886
5887 * w32font.c (logfont_to_fcname): New function.
5888 (Fx_select_font): New font dialog function compatible with
5889 GTK/fontconfig version.
5890
5891 * font.c (font_style_symbolic_from_value): New function.
5892 (font_style_symbolic): Use it.
5893
5894 * font.h (font_style_symbolic_from_value): Declare new function.
5895
58962008-06-13 Juanma Barranquero <lekktu@gmail.com>
5897
5898 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
5899 <font-width-table>: Fix typos in docstrings.
5900
59012008-06-13 Daniel Engeler <engeler@gmail.com>
5902
5903 These changes add serial port access.
5904 * process.c: Add HAVE_SERIAL.
5905 (Fdelete_process, Fprocess_status, Fset_process_buffer)
5906 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
5907 (list_processes_1, select_wrapper, Fstop_process)
5908 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
5909 (status_notify): Modify to handle serial processes.
5910 [HAVE_SERIAL] (Fserial_process_configure)
5911 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
5912 New functions.
5913 * process.h (struct Lisp_Process): Add `type'.
5914 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
5915 New functions.
5916 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
5917 serial ports.
5918 (serial_open, serial_configure) New functions.
5919 * w32.h: Add FILE_SERIAL.
5920 (struct _child_process): Add ovl_read, ovl_write.
5921
59222008-06-13 Kenichi Handa <handa@m17n.org>
5923
5924 * dispextern.h (enum lface_attribute_index): New member
5925 LFACE_FOUNDRY_INDEX.
5926
5927 * font.c (font_score): Delete arg alternate_families. Check only
5928 weight, slant, width, and size. Ignore the difference of alias
5929 style symbols.
5930 (font_sort_entites): Adjust for the above change. Reflect the
5931 order of font-driver to scores.
5932 (font_list_entities): Don't check alternate_familes here.
5933 (font_clear_prop): Handle foundry.
5934 (font_update_lface): Don't parse "foundry-family" form here.
5935 Handle FONT_FOUNDRY_INDEX.
5936 (font_find_for_lface): Likewise. Handle alternate families here.
5937 If registry is nil, try iso8859-1 and ascii-0.
5938 (font_open_for_lface): Pay attention to size in ENTITY.
5939 (font_open_by_name): Simplify by calling font_load_for_lface.
5940 (free_font_driver_list): Delete it.
5941 (font_update_drivers): Preserve the order of backends.
5942 (syms_of_font): Setting of sort_shift_bits adjusted for the change
5943 of font_score and font_sort_entites.
5944 (font_update_sort_order): Likewise.
5945
5946 * xfaces.c (LFACE_FOUNDRY): New macro.
5947 (check_lface_attrs): Check foundry.
5948 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
5949 (merge_face_vectors): Check foundry.
5950 (merge_face_ref): Likewise.
5951 (Finternal_set_lisp_face_attribute): Likewise.
5952 (x_update_menu_appearance): Likewise.
5953 (Finternal_get_lisp_face_attribute): Likewise.
5954 (lface_hash): Likewise.
5955 (lface_same_font_attributes_p): Likewise.
5956 (x_supports_face_attributes_p): Likewise.
5957 (tty_supports_face_attributes_p): Likewise.
5958 (Finternal_set_alternative_font_family_alist): Intern strings.
5959 (Finternal_set_alternative_font_registry_alist): Downcase strings.
5960 (realize_default_face): Set LFACE_FOUNDRY (lface).
5961
5962 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
5963 font-driver at first.
5964
5965 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
5966
59672008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5968
5969 * lread.c (Fload): Use xfree, not free on saved_doc_string.
5970
59712008-06-12 Jim Meyering <meyering@redhat.com>
5972
5973 Make unexec_free handle NULL the same way free does.
5974 * unexmacosx.c (unexec_free): Ignore a NULL argument.
5975
59762008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
5977
5978 * character.h (CHAR_TO_BYTE_SAFE): New macro.
5979 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
5980 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
5981 (WEAK_ALIAS): Simplify.
5982 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
5983 when searching a unibyte buffer.
5984
59852008-06-12 Chong Yidong <cyd@stupidchicken.com>
5986
5987 * xfns.c (Fx_select_font): Rename from x-font-dialog.
5988
59892008-06-12 Juanma Barranquero <lekktu@gmail.com>
5990
5991 * w32font.c: Include ctype.h.
5992
59932008-06-11 Jason Rumney <jasonr@gnu.org>
5994
5995 * w32font.c (w32font_encode_char): Detect missing glyphs that are
5996 misreported as space.
5997 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
5998 as aliases for registry iso10646-1.
5999
60002008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
6001
6002 * buffer.c (clone_per_buffer_values): Skip `name'.
6003
60042008-06-11 Chong Yidong <cyd@stupidchicken.com>
6005
6006 * font.c (font_parse_fcname): Fix last change; accept decimal
6007 points in font size.
6008
60092008-06-10 Jason Rumney <jasonr@gnu.org>
6010
6011 * w32uniscribe.c (add_opentype_font_name_to_list):
6012 Skip non unicode fonts.
6013
60142008-06-10 Chong Yidong <cyd@stupidchicken.com>
6015
6016 * xfns.c (Fx_font_dialog): New function.
6017
6018 * gtkutil.c (xg_dialog_response_cb): Rename from
6019 xg_file_response_callback.
6020 (pop_down_dialog): Rename from pop_down_file_dialog.
6021 (xg_get_file_name): Callers changed.
6022 (xg_get_font_name): New function.
6023
6024 * gtkutil.h (xg_get_font_name): Insert prototype.
6025
60262008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
6027
6028 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
6029 x_underline_minimum_display_offset.
6030 (syms_of_xdisp): Declare it here rather than in xterm.c.
6031 * dispextern.h (underline_minimum_offset): Declare it.
6032 * w32term.c (x_draw_glyph_string): Use it.
6033 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
6034 (syms_of_xterm): Don't declare it any more.
6035 (x_draw_glyph_string): Adjust to the new name.
6036
60372008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
6038
6039 * xterm.c (x_underline_minimum_display_offset): New var.
6040 (x_draw_glyph_string): Use it.
6041 (syms_of_xterm): Declare it.
6042
60432008-06-10 Chong Yidong <cyd@stupidchicken.com>
6044
6045 * font.c (font_parse_fcname): Accept GTK-style font names too.
6046
60472008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
6048
6049 * dired.c (file_name_completion): Don't return t if the match is exact
6050 but with different capitalization.
6051 * minibuf.c (Ftry_completion): Simplify.
6052
6053 * window.c (Vwindow_point_insertion_type): New var.
6054 (set_window_buffer): Use it.
6055 (syms_of_window): Init and export it to Lisp.
6056
60572008-06-10 Kenichi Handa <handa@m17n.org>
6058
6059 * font.h (font_intern_prop): Prototype adjusted.
6060
6061 * font.c (font_intern_prop): New arg force_symbol.
6062 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
6063 Adjust for the change of font_intern_prop.
6064
6065 * ftfont.c (ftfont_pattern_entity):
6066 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
6067 (w32_registry):
6068 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
6069 the change of font_intern_prop.
6070
60712008-06-09 Juanma Barranquero <lekktu@gmail.com>
6072
6073 * w32menu.c (digest_single_submenu): Declare extern.
6074
60752008-06-09 Jason Rumney <jasonr@gnu.org>
6076
6077 * w32term.c (x_make_frame_visible): Use alternate restore flags.
6078
6079 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
6080 (parse_single_submenu): Remove.
6081 (digest_single_submenu): Remove.
6082 (syms_of_w32menu): Don't initialise variables that have moved
6083 to menu.c.
6084 (set_frame_menubar): Sync with version in xmenu.c.
6085 (w32_menu_show): Sync with xmenu_show in xmenu.c.
6086
6087 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
6088 Make static again.
6089
60902008-06-09 Jason Rumney <jasonr@gnu.org>
6091
6092 Changes to w32 files related to the move of common menu code
6093 to menu.c on 2008-06-08 by Chong Yidong.
6094
6095 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
6096 defs to w32gui.h.
6097 (single_keymap_panes, push_menu_item, push_menu_pane):
6098 Make globally visible.
6099
6100 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
6101 (local_free, malloc_widget_value, free_widget_value)
6102 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
6103 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
6104 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
6105 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
6106 (menu_items, menu_items_allocated, menu_items_used)
6107 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
6108 (init_menu_items, finish_menu_items, discard_menu_items)
6109 (grow_menu_items, push_submenu_start, push_submenu_end)
6110 (push_left_right_boundary, push_menu_pane, push_menu_item)
6111 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
6112 (free_menubar_widget_tree_value, parse_single_submenu)
6113 (update_submenu_strings): Remove functions.
6114 (xmalloc_widget_value): Remove and declare extern.
6115
6116 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
6117 (OBJ1): Build it.
6118
6119 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
6120 (local_heap, local_alloc, local_free, malloc_widget_value)
6121 (free_widget_value): Define here.
6122
61232008-06-09 Kenichi Handa <handa@m17n.org>
6124
6125 * font.h (Qascii_0): Extern it.
6126
6127 * font.c (Qascii_0): New variable.
6128 (syms_of_font): DEFSYM it.
6129 (font_open_by_name): If the registry "iso8859-1" fails, try also
6130 "ascii-0".
6131
6132 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
6133
61342008-06-08 Kenichi Handa <handa@m17n.org>
6135
6136 * .gdbinit (xfont): New command.
6137
61382008-06-08 Andreas Schwab <schwab@suse.de>
6139
6140 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
6141 * Makefile.in (menu.o): Update dependencies.
6142
6143 * Makefile.in (obj): Always add menu.o.
6144 * emacs.c (main): Always call syms_of_menu.
6145 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
6146
61472008-06-08 Chong Yidong <cyd@stupidchicken.com>
6148
6149 * Makefile.in: Compile menu.c.
6150
6151 * lisp.h: Declare syms_of_menu.
6152
6153 * emacs.c (main): Call syms_of_menu.
6154
6155 * keyboard.h: Relocate platform-independent menu definitions from
6156 xmenu.c.
6157
6158 * menu.c: New file. Relocate platform-independent menu
6159 definitions from xmenu.c. Suggested by Adrian Robert.
6160
6161 * xmenu.c: Remove platform-independent menu definitions.
6162 (menu_items menu_items_inuse, menu_items_allocated)
6163 (menu_items_used, menu_items_n_panes)
6164 (menu_items_submenu_depth): Move to keyboard.h.
6165 (init_menu_items, finish_menu_items, unuse_menu_items)
6166 (discard_menu_items, restore_menu_items, save_menu_items)
6167 (grow_menu_items, push_submenu_start, push_submenu_end)
6168 (push_left_right_boundary, push_menu_pane, push_menu_item)
6169 (keymap_panes, single_keymap_panes, single_menu_item)
6170 (list_of_panes, list_of_items, find_and_call_menu_selection)
6171 (xmalloc_widget_value, free_menubar_widget_value_tree)
6172 (parse_single_submenu, digest_single_submenu)
6173 (update_submenu_strings): Move to menu.c.
6174
61752008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
6176
6177 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
6178
61792008-06-06 Miles Bader <miles@gnu.org>
6180
6181 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
6182 face, not frame default.
6183
61842008-06-05 Martin Rudalics <rudalics@gmx.at>
6185
6186 * window.c (pop_up_windows, pop_up_frames)
6187 (display_buffer_reuse_frames, Vpop_up_frame_function)
6188 (Vdisplay_buffer_function, Veven_window_heights)
6189 (Vspecial_display_buffer_names, Vspecial_display_regexps)
6190 (Vspecial_display_function, Vsame_window_buffer_names)
6191 (Vsame_window_regexps, split_height_threshold)
6192 (Vsplit_window_preferred_function): Move those vars to window.el.
6193 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
6194 (Fdisplay_buffer): Move those functions to window.el.
6195 (syms_of_window): Remove corresponding declarations.
6196 (display_buffer): New function.
6197 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
6198 * dispnew.c (Flast_nonminibuf_frame): New function.
6199 * buffer.c (Fpop_to_buffer): Move to window.el.
6200
62012008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
6202
6203 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
6204
62052008-06-05 Kenichi Handa <handa@m17n.org>
6206
6207 * coding.c (detect_coding): Fix previous change.
6208 (detect_coding_system): Likewise.
6209
62102008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
6211
6212 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
6213
6214 * keymap.c (Vminibuffer_local_filename_must_match_map):
6215 Rename from Vminibuffer_local_must_match_filename_map.
6216 (syms_of_keymap):
6217 * minibuf.c (Fcompleting_read): Adjust accordingly.
6218 * commands.h: Rename declaration as well.
6219
62202008-06-05 Kenichi Handa <handa@m17n.org>
6221
6222 * font.c (Ffont_spec): Don't use font_parse_family_registry for
6223 family name.
6224 (Ffont_put): Likewise.
6225
6226 * fontset.c (fontset_find_font): Call font_open_for_lface with the
6227 current font-spec.
6228
6229 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
6230 is unspecified.
6231
6232 * xfaces.c (realize_x_face): If the font-related face attributes
6233 are the same as those of default face, realize a new fontset from
6234 default->fontset.
6235 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
6236
62372008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
6238
6239 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
6240 (move_it_in_display_line): New wrapper.
6241
6242 * window.c (window_scroll_pixel_based_preserve_x)
6243 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
6244 (window_scroll_pixel_based, window_scroll_line_based):
6245 Use them to preserve column positions.
6246 (syms_of_window): Initialize them.
6247
6248 * indent.c (Fvertical_motion): Extend first arg to allow passing an
6249 (HPOS . VPOS) pair.
6250
6251 * dispextern.h (move_it_in_display_line): Declare.
6252
62532008-06-05 Juanma Barranquero <lekktu@gmail.com>
6254
6255 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
6256 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
6257 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
6258
62592008-06-04 Juanma Barranquero <lekktu@gmail.com>
6260
6261 * window.c (Fset_window_parameter): Doc fix.
6262 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
6263
62642008-06-04 Joakim Verona <joakim@verona.se>
6265
6266 * window.h (struct window): Add new member window_parameters.
6267
6268 * window.c (Fwindow_parameters, Fwindow_parameter)
6269 (Fset_window_parameter): New defuns.
6270 (syms_of_window): Defsubr the new defuns.
6271 (make_window): Initialize window_parameters to nil.
6272
62732008-06-04 John Paul Wallington <jpw@pobox.com>
6274
6275 * eval.c (Fdefmacro): Doc fix.
6276
62772008-06-04 Kenichi Handa <handa@m17n.org>
6278
6279 * coding.c (detect_coding): Fix handling of coding->head_ascii.
6280 Be sure to call setup_coding_system when we find a proper coding system.
6281 (detect_coding_system): Fix handling of coding->head_ascii.
6282
62832008-06-03 Andreas Schwab <schwab@suse.de>
6284
6285 * font.c (font_prop_validate_spacing): Fix last change.
6286
62872008-06-03 Kenichi Handa <handa@m17n.org>
6288
6289 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
6290 (font_parse_fcname): Fix handling of unknown key.
6291
6292 * xfont.c (xfont_list): Try an alias.
6293
6294 * charset.c (char_charset): Return NULL if the arg charset_list is
6295 specified and C doesn't belong to any of them.
6296
62972008-06-02 Chip Coldwell <coldwell@redhat.com>
6298
6299 * font.c (font_pixel_size): Don't take cdr of an integer.
6300
63012008-06-02 Jim Meyering <meyering@redhat.com>
6302
6303 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
6304 * alloc.c (xfree): Return right away for a NULL arg.
6305 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
6306 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
6307 * mac.c (create_apple_event_from_event_ref): Likewise.
6308 (create_apple_event_from_drag_ref, cfstring_create_normalized):
6309 Likewise.
6310 * doprnt.c (doprnt1): Likewise.
6311 * frame.c (frame): Likewise.
6312 * keyboard.c (wipe_kboard): Likewise.
6313 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
6314 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
6315 * term.c (tty_default_color_capabilities, maybe_fatal)
6316 (delete_tty): Likewise.
6317 * w16select.c (string): Likewise.
6318 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
6319 * w32bdf.c (w32_free_bdf_font): Likewise.
6320 * w32fns.c (w32_unload_font): Likewise.
6321 * w32font.c (w32font_close): Likewise.
6322 * window.c (size_window): Likewise.
6323 * xselect.c (receive_incremental_selection): Likewise.
6324 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
6325 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
6326 * w32.c (stat): Likewise.
6327
6328 Remove useless if-before-free tests.
6329 * editfns.c (Fset_time_zone_rule): Likewise.
6330 * lread.c (nosuffix): Likewise.
6331 * ralloc.c (get_bloc): Likewise.
6332 * regex.c (reg_free): Likewise.
6333 * xftfont.c (xftfont_open, xftfont_close): Likewise.
6334 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
6335 * xsmfns.c (smc_save_yourself_CB): Likewise.
6336
63372008-06-02 Kenichi Handa <handa@m17n.org>
6338
6339 * font.c (font_find_for_lface): Handle float font size.
6340 (font_open_for_lface): Likewise.
6341
6342 * xfaces.c (x_supports_face_attributes_p): Check face->font before
6343 comparing the properties.
6344
63452008-06-01 Jason Rumney <jasonr@gnu.org>
6346
6347 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
6348 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
6349 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
6350 Don't add empty script list.
6351 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
6352
63532008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
6354
6355 * Makefile.in (dot, dotdot): Remove, update users.
6356 ".." has been used elsewhere in the file for a long time.
6357 (LIBXT_STATIC): Remove conditional based on unused variable.
6358
63592008-06-01 Miles Bader <miles@gnu.org>
6360
6361 * xfaces.c (Vface_remapping_alist): New variable.
6362 (syms_of_xfaces): Initialize it.
6363 (enum named_merge_point_kind): New type.
6364 (struct named_merge_point): Add `named_merge_point_kind' field.
6365 (push_named_merge_point): Make cycle detection respect different
6366 named-merge-point kinds.
6367 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
6368 Remove face-name alias resolution.
6369 (lface_from_face_name): New definition using
6370 `lface_from_face_name_no_resolve'.
6371 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
6372 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
6373 (get_lface_attributes): New definition that layers face-remapping on
6374 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
6375 (lookup_basic_face): New function.
6376 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
6377 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
6378 `get_lface_attributes'.
6379 (face_at_buffer_position): Use `lookup_basic_face' to lookup
6380 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
6381 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
6382
6383 * xdisp.c (init_iterator): Pass base_face_id through
6384 `lookup_basic_face' when we actually use it as a face-id.
6385 (handle_single_display_prop): Use `lookup_basic_face' to lookup
6386 DEFAULT_FACE_ID.
6387
6388 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
6389 lookup the initial face-id.
6390
6391 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
6392
63932008-06-01 Juanma Barranquero <lekktu@gmail.com>
6394
6395 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
6396 (Fremove_text_properties): Fix typos in docstrings.
6397
63982008-05-31 Kenichi Handa <handa@m17n.org>
6399
6400 * font.c (font_list_entities): Fix the car part of data to be
6401 stored in the cache.
6402
6403 * ftfont.c (ftfont_font_format): Don't use strcasestr.
6404
64052008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
6406
6407 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
6408 Add a `test' argument so another predicate than `equal' can be used.
6409 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
6410 (map_char_table): Remove unused vars `c' and `i'.
6411 * lisp.h (Foptimize_char_table): Adjust declaration.
6412 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
6413
64142008-05-30 Kenichi Handa <handa@m17n.org>
6415
6416 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
6417 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
6418 defined.
6419
64202008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
6421
6422 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
6423 (Fmake_variable_frame_local): Disallow mixing buffer-local and
6424 frame-local settings for the same variable.
6425
64262008-05-30 Kenichi Handa <handa@m17n.org>
6427
6428 * fontset.c (Ffont_info): Move to font.c.
6429 (syms_of_fontset): Delete defsubr of Sfont_info.
6430
6431 * font.c (font_style_to_value, font_score): Delete casting of the
6432 args to xstcasecmp.
6433 (register_font_driver): Increment num_font_drivers only when
6434 registering the driver globally.
6435 (Ffont_info): Move from fontset.c. Handle a font object too.
6436 (syms_of_font): Defsubr Sfont_info.
6437
64382008-05-29 Kenichi Handa <handa@m17n.org>
6439
6440 * coding.h (enum define_coding_utf8_arg_index): New enum.
6441 (enum coding_attr_index): Change coding_attr_utf_16_bom to
6442 coding_attr_utf_bom.
6443 (enum utf_bom_type): Rename from utf_16_bom_type.
6444 (struct utf_16_spec): Adjust for the above change.
6445 (struct coding_system): Add utf_8_bom in `spec' union.
6446
6447 * coding.c (CODING_UTF_8_BOM): New macro.
6448 (enum coding_category): Delete coding_category_utf_8, add
6449 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
6450 coding_category_utf_8_sig.
6451 (CATEGORY_MASK_UTF_8): Delete it.
6452 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
6453 (CATEGORY_MASK_UTF_8_SIG): New macros.
6454 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
6455 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
6456 CATEGORY_MASK_UTF_8_SIG.
6457 (CATEGORY_MASK_UTF_8): New macro.
6458 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
6459 (detect_coding_utf_8): Check BOM.
6460 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
6461 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
6462 (encode_coding_utf_16): Likewise.
6463 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
6464 (detect_coding, detect_coding_system): Handle utf-8-auto.
6465 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
6466 (syms_of_coding): Fix setting up of Vcoding_category_table.
6467
64682008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
6469
6470 * process.c (Faccept_process_output): If `millisec' is non-nil,
6471 `seconds' default to 0.
6472 (wait_reading_process_output): Also return non-nil if we read output
6473 from a non-running process.
6474
64752008-05-29 Jason Rumney <jasonr@gnu.org>
6476
6477 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
6478 `raster' specified.
6479 (add_font_entity_to_list): Allow non-opentype truetype fonts back
6480 in the uniscribe backend, but disallow any font that has no
6481 unicode subrange support.
6482
64832008-05-29 Juanma Barranquero <lekktu@gmail.com>
6484
6485 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
6486 Fix typos in docstrings.
6487
64882008-05-29 Kenichi Handa <handa@m17n.org>
6489
6490 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
6491 (Fx_family_fonts): Set frame correctly.
6492
64932008-05-28 Jason Rumney <jasonr@gnu.org>
6494
6495 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
6496
64972008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
6498
6499 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
6500 calling build_annotations.
6501
65022008-05-28 Juanma Barranquero <lekktu@gmail.com>
6503
6504 * coding.c (Fdecode_coding_region, Fencode_coding_region)
6505 (Fencode_coding_string):
6506 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
6507 <latin-extra-code-table>: Fix typos in docstrings.
6508 (syms_of_coding) <coding-system-alist>: Doc fix.
6509 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
6510
65112008-05-28 Kenichi Handa <handa@m17n.org>
6512
6513 * fontset.c (Ffont_info): Don't call font_close_object.
6514
6515 * font.c (font_parse_family_registry): Use Ffont_put to validate
6516 foundry and family.
6517 (font_delete_unmatched): Don't check spacing.
6518 (font_list_entities): Add spacing to the spec to list fonts.
6519
6520 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
6521 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
6522
6523 * coding.c (encode_coding_raw_text): Fix previous change.
6524 (encode_coding_object): When the dst_object is a buffer and is
6525 different from src_object, move gap to PT.
6526
65272008-05-27 Chong Yidong <cyd@stupidchicken.com>
6528
6529 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
6530
65312008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
6532
6533 * coding.c (encode_coding_raw_text): Set coding->produced_char for
6534 all branches. Compute it differently.
6535
6536 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
6537
65382008-05-27 Juanma Barranquero <lekktu@gmail.com>
6539
6540 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
6541 into "else if () ... else ...".
6542
65432008-05-27 Jason Rumney <jasonr@gnu.org>
6544
6545 * w32font.c (w32font_open_internal): Determine if glyph indices
6546 are likely to work here.
6547
65482008-05-27 Chong Yidong <cyd@stupidchicken.com>
6549
6550 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
6551 draw overlap glyphs with appropriate highlighting.
6552
65532008-05-27 Kenichi Handa <handa@m17n.org>
6554
6555 * xfont.c (xfont_open): Fix calculation of font->average_width.
6556
65572008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
6558
6559 * casefiddle.c (casify_object): Try to guess better whether the
6560 argument is a byte or a char.
6561
65622008-05-26 Andreas Schwab <schwab@suse.de>
6563
6564 * xselect.c (x_reply_selection_request): Properly handle format == 32.
6565 Always send multiples of format size.
6566
6567 * xterm.c (x_set_frame_alpha): Fix type mismatch.
6568
65692008-05-26 Jason Rumney <jasonr@gnu.org>
6570
6571 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
6572 (compute_metrics): Don't set failure if we just cleared the cache.
6573 (w32_weight_table): Remove unused variable.
6574 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
6575 backwards compatibility.
6576
65772008-05-25 Kenichi Handa <handa@m17n.org>
6578
6579 * w32term.c (x_draw_glyph_string):
6580 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
6581
6582 * xfaces.c: Delete unused function prototypes.
6583 (xstrlwr, font_frame): Delete them.
6584 (clear_face_cache): Delete unused variable.
6585
6586 * xftfont.c (xftfont_open): Delete unused variable.
6587 If underline_thickness is not 1, adjust underline_position.
6588
6589 * ftxfont.c (ftxfont_open): Delete unused variable.
6590
6591 * fontset.c (face_for_char): Optimize for the case of no charset
6592 property.
6593
6594 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
6595 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
6596 (otf_open, font_otf_capability, generate_otf_features)
6597 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
6598 Comment out by surrounding "#if 0" and "#endif" for the moment.
6599 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
6600 (syms_of_font): Codes for accessing above commented out.
6601
66022008-05-24 Eli Zaretskii <eliz@gnu.org>
6603
6604 * w32proc.c: Include dispextern.h.
6605
6606 * w32.c: Include dispextern.h.
6607
66082008-05-23 Juanma Barranquero <lekktu@gmail.com>
6609
6610 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
6611 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
6612 Fix typos in docstrings.
6613
66142008-05-23 Jason Rumney <jasonr@gnu.org>
6615
6616 * xsmfns.c: Remove includes that are already included by config.h.
6617
66182008-05-23 Kenichi Handa <handa@m17n.org>
6619
6620 * charset.c (Qemacs, charset_emacs): New variables.
6621 (char_charset): Fix for non-Unicode characters.
6622 (syms_of_charset): Define charset_emacs.
6623
6624 * w32term.c (x_draw_glyph_string): Be sure to update
6625 s->underline_thickness and s->underline_position. Be sure to draw
6626 underline within the current line area.
6627
6628 * xterm.c (x_draw_glyph_string): Be sure to update
6629 s->underline_thickness and s->underline_position. Be sure to draw
6630 underline within the current line area.
6631
6632 * fontset.c: Delete unused variables and add casting for char *
6633 throughout the file.
6634 (fontset_font): Try the fallback fonts of the current fontset
6635 before consulting the default fontset.
6636
6637 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
6638
6639 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
6640
66412008-05-22 Jason Rumney <jasonr@gnu.org>
6642
6643 * font.c: Don't include strings.h.
6644
6645 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
6646
6647 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
6648 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
6649 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
6650 to call xstrcasecmp.
6651
6652 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
6653
6654 * fontset.c (fs_query_fontset): Use xstrcasecmp.
6655
6656 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
6657
6658 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
6659
66602008-05-22 Kenichi Handa <handa@m17n.org>
6661
6662 * puresize.h (BASE_PURESIZE): Increase to 1220000.
6663
6664 * font.c (font_prop_validate_style): Adjust for the format
6665 change of font_style_table.
6666
6667 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
6668 two args.
6669
6670 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
6671 two args.
6672
66732008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
6674
6675 * minibuf.c (keys_of_minibuf): Delete.
6676 * lisp.h (keys_of_minibuf): Delete.
6677 * emacs.c (main): Don't call keys_of_minibuf.
6678
66792008-05-22 Kenichi Handa <handa@m17n.org>
6680
6681 * ftfont.c (ftfont_resolve_generic_family): Rename from
6682 ftfont_list_generic_family. Return a single family for each
6683 generic family.
6684 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
6685 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
6686 Call font_add_log.
6687 (ftfont_match): Call font_add_log.
6688
6689 * font.h (Ffont_xlfd_name): EXFUN adjusted.
6690 (FONT_DEBUG): Define it.
6691 (font_add_log): Extern it.
6692 (font_assert): Rename from xassert.
6693
6694 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
6695 (xfont_list_family): Call font_add_log.
6696 (xfont_match): Likewise.
6697 (memq_no_quit): Delete.
6698
6699 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
6700 call of Ffont_xlfd_name.
6701
6702 * xfaces.c (struct table_entry, slant_table, weight_table)
6703 (swidth_table): Move to font.c.
6704
6705 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
6706 xassert are changed to font_assert. Delete many unused variables.
6707 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
6708 New variables.
6709 (struct table_entry): Move from xfaces.c and modified.
6710 (weight_table, slant_table, width_table): Move from xfaces.c and
6711 contents adjusted for the change of struct table_entry.
6712 (font_style_to_value, font_style_symbolic): Adjust for the
6713 format change of font_style_table.
6714 (font_parse_family_registry): Don't overwrite existing foundry and
6715 family of font_spec.
6716 (font_score): Fix calculation of diff for sizes.
6717 (font_sort_entites): Call font_add_log.
6718 (font_delete_unmatched): Return a newly created list.
6719 (font_list_entities): Fix previous change. Call font_add_log.
6720 (font_matching_entity, font_open_entity, font_close_entity):
6721 Call font_add_log.
6722 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
6723 (Finternal_set_font_style_table): Delete.
6724 (BUILD_STYLE_TABLE): New macro.
6725 (build_style_table): New function.
6726 (Vfont_log, font_log_env_checked): New variables.
6727 (font_add_log): New function.
6728 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
6729 Declare Lisp variables "font-weight-table", "font-slant-table",
6730 "font-width-table", and "font-log". Initialize font_style_table.
6731
67322008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
6733
6734 * xterm.c (x_set_frame_alpha): Move declarations before statements.
6735
67362008-05-21 Seiji Zenitani <zenitani@mac.com>
6737 Ryo Yoshitake <ryo@shiftmode.net>
6738
6739 * frame.c (Qalpha): Add a new frame parameter `alpha'.
6740 (Vframe_alpha_lower_limit): New variable.
6741 (x_set_alpha): New function.
6742
6743 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
6744
6745 * xfns.c (x-create-frame, Qalpha):
6746 Initialize the frame parameter `alpha'.
6747 * xterm.c (OPAQUE, OPACITY): New.
6748 (x_set_frame_alpha): New function.
6749 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
6750
6751 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
6752 * w32fns.c (w32_frame_parm_handlers): Likewise.
6753
67542008-05-20 Jason Rumney <jasonr@gnu.org>
6755
6756 * w32font.c (add_font_entity_to_list): Don't add non-opentype
6757 truetype fonts to opentype list.
6758
67592008-05-20 Juanma Barranquero <lekktu@gmail.com>
6760
6761 * fontset.c (Ffontset_info): Doc fix.
6762 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
6763 <ignore-relative-composition>: Fix typos in docstrings.
6764
6765 * font.c (syms-of-font) <font-encoding-alist>:
6766 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
6767 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
6768 (Ffont_otf_alternates): Doc fixes.
6769
67702008-05-20 Kenichi Handa <handa@m17n.org>
6771
6772 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
6773 font.h through out the file.
6774 (FONT_DRIVERS): Rename from FONTOBJ.
6775 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
6776 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
6777
6778 * emacs.c (main): Call syms_of_font unconditionally.
6779
6780 * font.h (find_font_encoding): Extern it.
6781
6782 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
6783 fontset.c.
6784 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
6785 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
6786 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
6787 only when HAVE_WINDOW_SYSTEM is defined.
6788 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
6789 when HAVE_WINDOW_SYSTEM is defined.
6790
6791 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
6792 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
6793
6794 * xfaces.c: Include font.h unconditionally.
6795 (merge_face_ref, merge_face_vectors)
6796 (Finternal_set_lisp_face_attribute): Cancel the previous change.
6797
67982008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
6799
6800 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
6801 indirect_variable.
6802 * eval.c (lisp_indirect_variable): New fun.
6803 (Fuser_variable_p): Use it.
6804
68052008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
6806
6807 * lisp.h (indirect_variable):
6808 * data.c (indirect_variable, let_shadows_buffer_binding_p):
6809 Use Lisp_Symbol pointers rather than Lisp_Object.
6810 Adjust callers.
6811 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
6812 To this end, change calling-convention.
6813
6814 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
6815 if some non-hidden buffers are selected by string&pred.
6816
68172008-05-19 Chong Yidong <cyd@stupidchicken.com>
6818
6819 * process.c (wait_reading_process_output): Always check status
6820 when in batch mode.
6821
68222008-05-19 Kenichi Handa <handa@m17n.org>
6823
6824 * font.c (font_list_entities): Fix handling of cache.
6825 (font_matching_entity): Likewise.
6826
6827 * ftfont.c (cs_iso8859_1): Delete.
6828 (ft_face_cache): New variable.
6829 (struct ftfont_info): New member fc_charset_idx.
6830 (ftfont_build_basic_charsets): Delete.
6831 (fc_charset_table): New variable.
6832 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
6833 . FC_CHARSET_IDX) as :font-entity property in the font entity.
6834 Callers changed.
6835 (ftfont_lookup_cache, ftfont_get_charset): New functions.
6836 (ftfont_spec_pattern): New argument fc_charset_idx.
6837 Check registry more rigidly. Change callers.
6838 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
6839 change of :font-entity property of the font.
6840
6841 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
6842 property of the font.
6843
68442008-05-18 Juanma Barranquero <lekktu@gmail.com>
6845
6846 * coding.c (Fcoding_system_p): Rename argument to match docstring.
6847 (Funencodable_char_position, Fcheck_coding_systems_region)
6848 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
6849 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
6850 (Ffind_operation_coding_system, Fset_coding_system_priority)
6851 (Fcoding_system_eol_type): Doc fixes.
6852
68532008-05-17 Glenn Morris <rgm@gnu.org>
6854
6855 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
6856
68572008-05-16 Eli Zaretskii <eliz@gnu.org>
6858
6859 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
6860 and st_gid.
6861
6862 * frame.c (Fdelete_frame): Don't call font_update_drivers if
6863 HAVE_WINDOW_SYSTEM is not defined.
6864
6865 * xfaces.c (merge_face_ref, merge_face_vectors)
6866 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
6867 HAVE_WINDOW_SYSTEM is defined.
6868 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
6869
68702008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
6871
6872 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
6873
68742008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6875
6876 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
6877
68782008-05-15 Kenichi Handa <handa@m17n.org>
6879
6880 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
6881 preference.
6882
68832008-05-15 Glenn Morris <rgm@gnu.org>
6884
6885 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
6886
68872008-05-15 Chong Yidong <cyd@stupidchicken.com>
6888
6889 * fns.c (init_fns): Don't initialize weak_hash_tables here.
6890 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
6891
6892 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
6893
68942008-05-15 Kenichi Handa <handa@m17n.org>
6895
6896 * ftfont.c (ftfont_list): Downcase family name to check generic
6897 families.
6898
6899 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
6900 font-spec for QCfont value.
6901
6902 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
6903 buffer. Check the return value of it.
6904
69052008-05-14 Jason Rumney <jasonr@gnu.org>
6906
6907 * w32term.c (w32_get_glyph_overhangs): Remove.
6908 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
6909
69102008-05-14 Kenichi Handa <handa@m17n.org>
6911
6912 * font.c (font_prop_validate): Make nil a valid value.
6913 (font_clear_cache): Check if the cached vector of entities is nil
6914 or not.
6915
69162008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6917
6918 * emacs.c (main_thread): Conditionalize on
6919 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
6920 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
6921
6922 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
6923 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
6924 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
6925
69262008-05-14 Kenichi Handa <handa@m17n.org>
6927
6928 * coding.c (detect_coding_iso_2022): Ignore a coding category that
6929 has no corresponding coding system.
6930
69312008-05-14 Jason Rumney <jasonr@gnu.org>
6932
6933 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
6934
6935 * w32font.h (w32font_open_internal): Update declaration.
6936
6937 * w32font.c (w32font_open_internal): Change last argument from
6938 w32font_info struct to font object. Fill in font object from
6939 font_entity. Get Outline metrics if possible. Use them to
6940 calculate underline position and thickness. Use xlfd name as name
6941 property. Don't set codepage.
6942 (w32font_open): Pass font_object to w32font_open_internal. Don't
6943 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
6944 (w32font_draw): Use s->font.
6945 (clear_cached_metrics): Don't clear non-existent blocks.
6946
6947 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
6948 font was not found.
6949 (x_draw_glyph_string): Use underline position and thickness from font.
6950
6951 * w32uniscribe.c (uniscribe_open): Pass font_object to
6952 w32font_open_internal.
6953
69542008-05-14 Kenichi Handa <handa@m17n.org>
6955
6956 These changes are to delete all legacy font-handling codes, and
6957 make Emacs use only font-backends.
6958
6959 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
6960 (frame.o, image.o, print.o): Depend on $(FONTSRC).
6961
6962 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
6963
6964 * charset.h (Vcharset_non_preferred_head)
6965 (Vcurrent_iso639_language): Extern them.
6966
6967 * charset.c (Vcharset_non_preferred_head): New variable.
6968 (Vcurrent_iso639_language): New variable.
6969 (syms_of_charset): Declare it as a Lisp variable.
6970 (char_charset): Don't check non preferred charsets. As a last
6971 resort, return charset_unicode.
6972 (Fset_charset_priority): Update Vcharset_non_preferred_head.
6973
6974 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
6975 conditionals. Don't check enable_font_backend. Delete all codes
6976 used only when USE_FONT_BACKEND is not defined.
6977
6978 * dispextern.h (struct glyph_string): Change type of `font' to
6979 `struct font *'.
6980 (struct glyph_string): New member underline_position and
6981 underline_thickness.
6982 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
6983 (struct face): Change type of `font' to `struct font *'. Remove
6984 members `font_name', `font_info_id'.
6985 (per_char_metric, encode_char): Delete externs.
6986 (calc_pixel_width_or_height): Adjust the prototype.
6987
6988 * emacs.c (enable_font_backend): Delete extern.
6989 (main): Don't set enable_font_backend. Don't check the command
6990 line argument "-disable-font-backend".
6991
6992 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
6993 (enum font_property_index): New members FONT_DPI_INDEX,
6994 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
6995 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
6996 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
6997 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
6998 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
6999 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
7000 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
7001 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
7002 (struct font_spec, struct font_entity): New structs.
7003 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
7004 (struct font): Many members from old "struct font_info" moved to
7005 here. Members font and entity deleted.
7006 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
7007 the new font-related objects.
7008 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
7009 (CHECK_FONT_GET_OBJECT): Likewise.
7010 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
7011 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
7012 (struct font_driver): New members case_sensitive anc check. Type
7013 of the member list and open changed.
7014 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
7015 (font_symbolic_width, font_find_object, font_get_spec)
7016 (font_set_lface_from_name): Delete extern.
7017 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
7018
7019 * font.c: Include <strings.h>.
7020 (enable_font_backend): Delete it.
7021 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
7022 (CHECK_VALIDATE_FONT_SPEC): Delete it.
7023 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
7024 (null_string): Delete it.
7025 (null_vector): Make it static.
7026 (font_family_alist): Delete it.
7027 (Qnormal): Extern it.
7028 (QCextra, QClanguage): Delete it.
7029 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
7030 (font_make_spec, font_make_entity, font_make_object)
7031 (font_intern_prop): Renamed from intern_downcase. Don't downcase
7032 the string. Callers changed.
7033 (font_pixel_size): Adjusted for the format change of font-related
7034 objects.
7035 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
7036 (font_style_to_value, font_style_symbolic): New function.
7037 (build_font_family_alist): Delete it.
7038 (font_registry_charsets): Use Fassoc_string instead of
7039 assq_no_quit.
7040 (font_prop_validate_symbol): Don't return null_string.
7041 (font_prop_validate_style): Adjusted for the change of
7042 style-related values in a font vector.
7043 (font_property_table): Delete entries for QClanguage and
7044 QCantialias, add entries for QCavgwidth.
7045 (get_font_prop_index): Delete the 2nd argument FROM.
7046 (font_prop_validate): Arguments changed.
7047 (font_put_extra): Adjusted for the change of font-related objects.
7048 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
7049 (font_parse_fcname, font_unparse_fcname)
7050 (font_prepare_composition): Likewise.
7051 (font_parse_family_registry): Renamed from font_merge_old_spec.
7052 (otf_open): Delete the 1st arg entity.
7053 (font_otf_capability): Adjusted for the above change.
7054 (font_score): New arg alternate_families. Adjusted for the change
7055 of font-related objects.
7056 (font_sort_entites): New arg best_only.
7057 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
7058 Delete them.
7059 (font_match_p): Check alternate families.
7060 (font_find_object): Delete it.
7061 (font_check_object): New function.
7062 (font_clear_cache): Adjusted for the change of font-related objects.
7063 (font_delete_unmatched): New arg.
7064 (font_list_entities): Call font_driver->list with a spec that
7065 doesn't specify style-related properties.
7066 (font_matching_entity): Arguments changed. Caller changed.
7067 (font_open_entity): Adjusted for the change of font-related objects.
7068 (font_close_object, font_has_char, font_encode_char)
7069 (font_get_name, font_get_spec): Likewise.
7070 (font_spec_from_name, font_clear_prop, font_update_lface):
7071 New functions.
7072 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
7073 (font_prepare_for_face, font_done_for_face, font_open_by_name)
7074 (font_at): Adjusted for the change of font-related objects.
7075 (font_range): New function.
7076 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
7077 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
7078 (Fcopy_font_spec, Fmerge_font_spec): New function.
7079 (Ffont_family_list): Renamed from list-families.
7080 (Finternal_set_font_style_table): Arguments changed.
7081 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
7082 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
7083 change of font-related objects.
7084 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
7085
7086 * fontset.h (struct font_info): Delete it. Most members go to
7087 struct font.
7088 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
7089 (enum FONT_SPEC_INDEX): Delete it.
7090 (font_info, list_fonts_func, load_font_func, query_font_func)
7091 (set_frame_fontset_func, find_ccl_program_func)
7092 (get_font_repertory_func, new_fontset_from_font_name): Delete
7093 externs.
7094 (fontset_from_font_name): Extern it.
7095 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
7096 (FONT_INFO_FROM_FACE): Deleted.
7097 (face_for_font): Adjust prototype.
7098
7099 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
7100 conditionals. Don't check enable_font_backend. Delete all codes
7101 used only when USE_FONT_BACKEND is not defined.
7102 (get_font_info_func, list_font_func, load_font_func)
7103 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
7104 (get_font_repertory_func): Delete them.
7105 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
7106 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
7107 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
7108 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
7109 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
7110 (fontset_compare_rfontdef): New function.
7111 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
7112 rfont-defs by qsort. Adjusted for the change of font-group vector.
7113 (load_font_get_repertory): Deleted.
7114 (fontset_find_font): Use new macros to ref/set elements of
7115 font-def and rfont-def.
7116 (fontset_font): Fix the timing of remembering that no font for C.
7117 (free_face_fontset): Do nothing if the face has no fontset.
7118 (face_suitable_for_char_p): Use new macros to ref/set elements of
7119 rfont-def.
7120 (face_for_char): Likewise. Call face_for_char with font_object.
7121 (fs_load_font): Delete. Delete #pragma surrounding it.
7122 (fs_query_fontset): Use strcasecmp instead of strcmp.
7123 (generate_ascii_font_name): Adjusted for the format change of
7124 font-spec.
7125 (Fset_fontset_font): Likewise. Use new macros to set elements of
7126 font-def.
7127 (Fnew_fontset): Use font_unparse_xlfd to generate
7128 FONTSET_ASCII (fontset).
7129 (new_fontset_from_font_name): Deleted.
7130 (fontset_from_font): Renamed from new_fontset_from_font. Check if
7131 a fontset is already created for the font. FIx updating of
7132 Vfontset_alias_alist.
7133 (fontset_ascii_font): Deleted.
7134 (Ffont_info): Adjusted for the format change of font-spec.
7135 (Finternal_char_font): Likewise.
7136 (Ffontset_info): Likewise.
7137 (syms_of_fontset): Don't check load_font_func.
7138
7139 * fns.c (internal_equal): Handle PREV_FONT.
7140
7141 * frame.h: Delete USE_FONT_BACKEND conditional.
7142
7143 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
7144 conditionals. Don't check enable_font_backend. Delete all codes
7145 used only when USE_FONT_BACKEND is not defined.
7146 (x_set_font): Call x_new_font, not x_new_fontset2.
7147 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
7148 already set for the frame.
7149
7150 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
7151 a font-entity by font_make_entity. Use font_intern_prop instead
7152 of intern_downcase. Use FONT_SET_STYLE to set a style-related
7153 font property. If a font is scalable, set avgwidth property to 0.
7154 Set font-entity property by font_put_extra.
7155 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
7156 (ffont_driver): Adjusted for the change of struct font_driver.
7157 (ftfont_spec_pattern): New function.
7158 (ftfont_list): Return a list, not vector.
7159 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
7160 (ftfont_list_family): Don't downcase names.
7161 (ftfont_free_entity): Deleted.
7162 (ftfont_open): Return a font-object. Adjusted for the change of
7163 struct font. Get underline_thickness and underline_position from
7164 font property. Don't update dpyinfo->smallest_font_height and
7165 dpyinfo->smallest_char_width.
7166 (ftfont_close): Don't free `struct font'.
7167 (ftfont_has_char): Adjusted for the format change of font-entity.
7168 (ftfont_encode_char, ftfont_text_extents): Likewise.
7169
7170 * ftxfont.c (ftxfont_list): Return a list, not vector.
7171 (ftxfont_open): Return a font-object. Adjusted for the change of
7172 struct font. Get underline_thickness and underline_position from
7173 font property. Don't update dpyinfo->smallest_font_height and
7174 dpyinfo->smallest_char_width.
7175 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
7176 (ftxfont_draw): Adjusted for the change of struct font.
7177
7178 * image.c (image_ascent): Don't include "charset.h". Include
7179 "character.h" and "font.h".
7180
7181 * lisp.h (enum pvec_type): New member PREV_FONT.
7182 (Fassoc_string): EXFUN it.
7183
7184 * print.c: Include font.h.
7185 (print_object): Handle font-related objects.
7186
7187 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
7188 conditionals. Don't check enable_font_backend. Delete all codes
7189 used only when USE_FONT_BACKEND is not defined.
7190 (handle_auto_composed_prop): Do nothing if it->f is not on a
7191 window system. Check how many following characters can be
7192 displayed by the same font.
7193 (calc_pixel_width_or_height): Type of the 4th arg is changed to
7194 'struct font *'.
7195 (get_char_face_and_encoding): Assign the whole encoding task to
7196 the `encode-char' method of a font driver.
7197 (fill_composite_glyph_string): Adjusted for the change of `struct
7198 face' and `struct glyph_string'.
7199 (fill_glyph_string): Likewise.
7200 (get_per_char_metric): Arguments changed.
7201 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
7202 and `struct glyph_string'.
7203 (produce_stretch_glyph, calc_line_height_property)
7204 (x_produce_glyphs): Likewise.
7205
7206 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
7207 conditionals. Don't check enable_font_backend. Delete all codes
7208 used only when USE_FONT_BACKEND is not defined. Use
7209 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
7210 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
7211 (Qp): Extern them.
7212 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
7213 Deleted.
7214 (struct font_name): Deleted.
7215 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
7216 (compare_fonts_by_sort_order): New function.
7217 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
7218 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
7219 Deleted.
7220 (Fx_family_fonts): Use font_list_entities, and sort fonts by
7221 compare_fonts_by_sort_order.
7222 (Fx_font_family_list): Call Ffont_family_list.
7223 (face_numeric_value, face_numeric_weight, face_numeric_slant)
7224 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
7225 (face_symbolic_slant, face_symbolic_swidth)
7226 (split_font_name_into_vector, build_font_name_from_vector)
7227 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
7228 (font_rescale_ratio, split_font_name, build_font_name)
7229 (free_font_names, sort_fonts, x_face_list_fonts)
7230 (face_font_available_p, sorted_font_list, cmp_font_names)
7231 (font_list_1, concat_font_list, font_list, remove_duplicates):
7232 Deleted.
7233 (Fx_list_fonts): Use Ffont_list.
7234 (LFACE_AVGWIDTH): Deleted.
7235 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
7236 by FONTP.
7237 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
7238 (set_lface_from_font_name): Delete it.
7239 (set_lface_from_font): Renamed from
7240 set_lface_from_font_and_fontset. Caller changed. Don't set
7241 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
7242 for face.
7243 (merge_face_vectors): Copy font-spec if necessary.
7244 Clear properties of the font-spec if necessary.
7245 (merge_face_ref): Clear properties of the font-spec if necessary.
7246 (Finternal_set_lisp_face_attribute): Likewise.
7247 (set_font_frame_param): Use font_load_for_lface to load a
7248 font-object, and call Fmodify_frame_parameters with it.
7249 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
7250 font name by Ffont_xlfd_name.
7251 (Finternal_lisp_face_attribute_values): Don't check QCweight,
7252 QCslant, and QCwidth.
7253 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
7254 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
7255 Compare fonts by EQ.
7256 (lookup_non_ascii_face): Deleted.
7257 (face_for_font): The 2nd argument changed.
7258 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
7259 Check atomic font properties by case insensitive.
7260 (realize_non_ascii_face): Set face->overstrike correctly.
7261 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
7262 (dump_realized_face): Get font name from
7263 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
7264
7265 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
7266 conditionals. Don't check enable_font_backend. Delete all codes
7267 used only when USE_FONT_BACKEND is not defined.
7268 (xic_create_xfontset): Original code deleted and renamed from
7269 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
7270 (x_make_gc): Don't set GCFont in GCs.
7271 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
7272 opened by "fixed".
7273 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
7274 find_ccl_program_func, query_font_func, set_frame_fontset_func,
7275 get_font_repertory_func.
7276
7277 * xfont.c: Include <stdlib.h> and "ccl.h".
7278 (struct xfont_info): New structure.
7279 (xfont_query_font): Deleted.
7280 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
7281 moved from xterm.c.
7282 (xfont_driver): Adjusted for the change of struct font_driver.
7283 (compare_font_names): New function.
7284 (xfont_list_pattern): Sort font names case insensitively. Make
7285 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
7286 (xfont_list): Return a list, not vector.
7287 (xfont_match): If the font doesn't have QCname property, generate
7288 a name from the other font properties.
7289 (xfont_open): Return a font-object. Adjusted for the change of
7290 struct font. Get underline_thickness and underline_position from
7291 font property. Don't update dpyinfo->smallest_font_height and
7292 dpyinfo->smallest_char_width.
7293 (xfont_close): Don't free struct font.
7294 (xfont_prepare_face): Adjusted for the change of struct font.
7295 (xfont_done_face): Deleted.
7296 (xfont_has_char): Adjusted for the change of struct font.
7297 (xfont_encode_char, xfont_draw): Likewise.
7298 (xfont_check): New function.
7299
7300 * xftfont.c (xftfont_list): Adjusted for the change of `list'
7301 callback function.
7302 (xftfont_match): Adjusted for the format change of font-entity.
7303 (xftfont_open): Adjusted for the format change of font-entity and
7304 font-object. Adjusted for the change of struct font. Return a
7305 font-object. Don't update dpyinfo->smallest_font_height and
7306 dpyinfo->smallest_char_width.
7307 (xftfont_close): Block input while calling XftFontClose.
7308 (xftfont_prepare_face): Don't block input while calling
7309 xftfont_get_colors. Adjusted for the change of struct font.
7310 (xftfont_shape): Return value of error case fixed.
7311
7312 * xrdb.c (x_load_resources): Don't setup a fontset resource.
7313
7314 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
7315 conditionals.
7316 (FONT_WIDTH): Return (f)->max_width.
7317 (struct x_display_info): Delete member `font'.
7318 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
7319 (x_find_ccl_program, x_get_font_repertory): Delete externs.
7320 (struct x_output): Change type of `font' to `struct font *'.
7321
7322 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
7323 conditionals. Don't check enable_font_backend. Delete all codes
7324 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
7325 (x_per_char_metric, x_encode_char): Deleted.
7326 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
7327 (x_compute_glyph_string_overhangs): Adjusted for the change of
7328 `struct face'.
7329 (x_draw_glyph_string_foreground)
7330 (x_draw_composite_glyph_string_foreground): Likewise.
7331 (x_draw_glyph_string): Likewise. Use font->underline_position and
7332 font->underline_thickness.
7333 (x_new_font): Renamed from x_new_fontset2.
7334 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
7335 (x_check_font): Call `check' method of a font driver.
7336 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
7337 (x_query_font, x_get_font_repertory): Deleted.
7338 (x_find_ccl_program): Renamed and moved to xfont.c.
7339 (x_redisplay_interface): Adjusted for the change of `struct
7340 redisplay_interface'.
7341
7342 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
7343 conditionals. Don't check enable_font_backend. Delete all codes
7344 used only when USE_FONT_BACKEND is not defined. Surround non-used
7345 code by "#ifdef OLD_FONT" and "endif".
7346 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
7347
7348 * w32font.h (struct w32font_info): New member.
7349 (FONT_COMPAT): New macro.
7350 (w32font_open_internal): Prototype adjusted.
7351
7352 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
7353 OLD_FONT" and "endif".
7354
7355 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
7356 conditionals. Don't check enable_font_backend. Delete all codes
7357 used only when USE_FONT_BACKEND is not defined.
7358 (w32font_open): Return a font-object. Make a font-object by
7359 font_make_object. Adjusted for the change of struct w32font_info.
7360 (w32font_close): Don't free struct font. Adjusted for the change
7361 of struct w32font_info.
7362 (w32font_encode_char, w32font_text_extents, w32font_draw):
7363 Adjusted for the change of struct w32font_info.
7364 (w32font_draw): Likewise.
7365 (w32font_list_internal): Return a list, not vector.
7366 (w32font_open_internal): Change the 4th arg to font-object.
7367 Adjusted for the change of struct w32font_info and font-object format.
7368 (add_font_name_to_list): Don't downcase names.
7369 (w32_enumfont_pattern_entity): Make a font-entity by
7370 font_make_entity. Adjusted for the format change of font-entity.
7371 Use FONT_SET_STYLE to set a style-related font property. If a
7372 font is scalable, set avgwidth property to 0. Set font-entity
7373 property by font_put_extra.
7374 (font_matches_spec): Adjusted for the format change of font-entity.
7375 (w32_weight_table, w32_decode_weight): New variables.
7376 (w32_encode_weight): New function.
7377 (fill_in_logfont): Adjusted for the format change of font-spec.
7378 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
7379 weight value.
7380 (w32font_driver): Adjusted for the change of struct font_driver.
7381
7382 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
7383 conditionals. Don't check enable_font_backend. Surround non-used
7384 code by "#ifdef OLD_FONT" and "endif".
7385 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
7386 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
7387
7388 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
7389 conditionals. Don't check enable_font_backend. Delete all codes
7390 used only when USE_FONT_BACKEND is not defined. Surround non-used
7391 code by "#ifdef OLD_FONT" and "endif".
7392
7393 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
7394 (uniscribe_open): Return value changed to font-object.
7395 Adjusted for the format change of font-object.
7396 (uniscribe_otf_capability): Adjusted for the change of struct font.
7397 (add_opentype_font_name_to_list): Don't downcase names.
7398 (uniscribe_font_driver): Adjusted for the change of struct
7399 font_driver.
7400
74012008-05-13 Chong Yidong <cyd@stupidchicken.com>
7402
7403 * dispnew.c (update_frame_1): Check if tty output is still valid
7404 before flushing it.
7405
74062008-05-13 Jan Djärv <jan.h.d@swipnet.se>
7407
7408 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
7409 to Gtk+ menus.
7410
74112008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7412
7413 * dired.c (file_name_completion): Tweak the code so as to always do it
7414 in a single pass. Tighten the scope of some variables.
7415
7416 * dired.c (Qdefault_directory): New var.
7417 (file_name_completion): Use it instead of Fexpand_file_name.
7418 (syms_of_dired): Initialize it.
7419
74202008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
7421
7422 * fileio.c (double_dollars): Remove dead code.
7423
74242008-05-10 Eli Zaretskii <eliz@gnu.org>
7425
7426 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
7427 Mention w32-get-true-file-attributes in doc string.
7428
7429 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
7430
74312008-05-09 Glenn Morris <rgm@gnu.org>
7432
7433 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
7434 2008-04-23.
7435
74362008-05-09 Eli Zaretskii <eliz@gnu.org>
7437
7438 Support for reporting owner and group of each file on MS-Windows:
7439 * dired.c (stat_uname, stat_gname): New functions, with special
7440 implementation for w32.
7441 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
7442
7443 * w32.c: Rename the_passwd_* to dflt_passwd_*.
7444 (dflt_group_name): New static variable.
7445 (dflt_group): Rename from the_group.
7446 (init_user_info): Init dflt_group fields. Get user's group name
7447 from LookupAccountSid.
7448 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
7449 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
7450 New initialization states.
7451 (globals_of_w32): Initialize them to zero. Initialize the default
7452 group name to "None".
7453 (GetFileSecurity_Name): New global var, the name of the function
7454 to call for GetFileSecurity.
7455 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
7456 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
7457 (get_file_security, get_security_descriptor_owner)
7458 (get_security_descriptor_group, is_valid_sid)
7459 (get_file_security_desc, get_rid, get_name_and_id)
7460 (get_file_owner_and_group): New functions.
7461 (stat): Use get_file_security_desc and get_file_owner_and_group to
7462 report the owner and primary group of each file. Don't ignore the
7463 high 32 bits of file's size, now that st_size is 64-bit wide.
7464 Fix test when to get true file attributes.
7465 (init_user_info): Use get_rid instead of equivalent inline code.
7466 (fstat): Don't ignore the high 32 bits of file's size.
7467
74682008-05-09 Chong Yidong <cyd@stupidchicken.com>
7469
7470 * image.c (png_load): Use correct bit-depth for setting background
7471 color.
7472
74732008-05-08 Eli Zaretskii <eliz@gnu.org>
7474
7475 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
7476 epa-hook.elc.
7477
74782008-05-08 Juanma Barranquero <lekktu@gmail.com>
7479
7480 * font.c (Ffont_match_p): Don't use `iff' in docstring.
7481
74822008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
7483
7484 * macfns.c (Fx_create_frame): Make a copy of frame parameters
7485 because the original parameters are in pure storage now.
7486 (mac_window): Remove unused params. Update callers.
7487
74882008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
7489
7490 * lread.c (substitute_object_recurse): Use lower-level primitives.
7491 Don't signal errors when traversing sub-char-tables.
7492 Don't loop over all the possible characters when traversing char-tables.
7493
7494 * print.c (print_preprocess): Add sub-char-tables to the print-table,
7495 just like we do in print.c.
7496
74972008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
7498
7499 * minibuf.c (Ftry_completion): Remove code left over from when we used
7500 scmp instead of Fcompare_strings.
7501
75022008-05-04 Juanma Barranquero <lekktu@gmail.com>
7503
7504 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
7505
75062008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7507
7508 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
7509 Create bitmap context in native byte order.
7510
7511 * macterm.c (XDrawLine)
7512 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
7513 context in native byte order.
7514
75152008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7516
7517 * config.in: Regenerate.
7518
7519 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
7520 New definitions for Image I/O support.
7521 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
7522 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
7523 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
7524 (mac_data_provider_release_data, image_load_image_io)
7525 [USE_MAC_IMAGE_IO]: New functions.
7526 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
7527 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
7528 (init_image_func_pointer) [MAC_OSX]: Remove function.
7529 (image_load_quartz2d) [MAC_OSX]: Check availability of
7530 CGImageCreateWithPNGDataProvider at compile time.
7531 Use lowercase `false' for boolean constant.
7532 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
7533 Use image_load_image_io.
7534 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
7535 Don't check MyCGImageCreateWithPNGDataProvider.
7536 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
7537 Don't call init_image_func_pointer.
7538
7539 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
7540
7541 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
7542 Make variable non-static.
7543 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
7544 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
7545
7546 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
7547 (RED_FROM_ULONG): Mask off higher bits.
7548 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
7549
7550 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
7551 Include AvailabilityMacros.h.
7552 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
7553 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
7554
75552008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
7556
7557 * chartab.c (Fset_char_table_range): If range is t, really set all
7558 chars to that value.
7559
75602008-05-03 Eli Zaretskii <eliz@gnu.org>
7561
7562 * dired.c (Ffile_attributes): Don't allow the device number become
7563 negative.
7564
75652008-05-02 Daiki Ueno <ueno@unixuser.org>
7566
7567 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
7568
75692008-05-02 Juri Linkov <juri@jurta.org>
7570
7571 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
7572 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
7573 DEFAULT argument as a list of default values in docstrings.
7574
75752008-05-01 Chong Yidong <cyd@stupidchicken.com>
7576
7577 * puresize.h (BASE_PURESIZE): Increase to 1210000.
7578
75792008-05-01 Martin Rudalics <rudalics@gmx.at>
7580
7581 * dispnew.c (change_frame_size_1): Preserve small windows when
7582 shrinking frames by calling set_window_height|width with third
7583 arg 2.
7584
7585 * window.h (struct window): Replace field too_small_ok by field
7586 resize_proportionally.
7587
7588 * window.c (make_window): Initialize resize_proportionally.
7589 (enlarge_window): Temporarily set resize_proportionally to make
7590 sure that shrink_windows does scale the window proportionally.
7591 (shrink_windows): When window has resize_proportionally set try
7592 to shrink it proportionally by stealing from other windows.
7593 (struct saved_window, Fset_window_configuration)
7594 (compare_window_configurations): Handle resize_proportionally.
7595 (WINDOW_TOTAL_SIZE): New macro.
7596 (window_min_size, shrink_windows, size_window): Use it.
7597 (check_min_window_sizes): Remove. Invalid values of
7598 window-min-height|width are handled by window_min_size_2 now.
7599 (size_window, Fsplit_window, enlarge_window)
7600 (adjust_window_trailing_edge, grow_mini_window): Don't call
7601 check_min_window_sizes.
7602 (window_min_size_2, window_min_size_1, window_min_size):
7603 New argument safe_p for retrieving "safe" minimum sizes.
7604 (Fdisplay_buffer, Fsplit_window, enlarge_window)
7605 (adjust_window_trailing_edge, grow_mini_window):
7606 Adjust arguments of window_min_size... functions.
7607 (shrink_windows): Argument min_size removed. New argument
7608 safe_p allows shrinking windows to their safe minimum sizes.
7609 Calculate minimum size and decide whether a window shall be
7610 deleted for each window individually.
7611 (size_window): When nodelete_p equals 2, tell shrink_windows to
7612 delete windows only if their new minimum size is no more safe.
7613 (shrink_window_lowest_first): Call window_min_size_1 to make
7614 sure to preserve modeline of bottom-most window when resizing
7615 the minibuffer.
7616 (Fset_window_configuration, Fcurrent_window_configuration)
7617 (compare_window_configurations): Do not handle
7618 window-min-height|width any more.
7619 (syms_of_window): Clarify window-min-height|width doc-strings.
7620
76212008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
7622
7623 * dired.c (file_name_completion): Fix up the encoding/decoding issue
7624 some more. Copy some of the code from Ftry_completions.
7625 Remove special case code that dates back to initial revision when the
7626 slash was only added when necessary and that can't trigger nowadays.
7627
76282008-04-27 Kenichi Handa <handa@m17n.org>
7629
7630 * font.c (font_prop_validate): Signal `error' instead of `font'.
7631
76322008-04-29 Jason Rumney <jasonr@gnu.org>
7633
7634 * w32fns.c (Fw32_battery_status): New defun.
7635 (syms_of_w32fns): Defsubr it.
7636
76372008-04-28 Andreas Schwab <schwab@suse.de>
7638
7639 * dired.c (file_name_completion): Fix another mixing of encoded
7640 and decoded names.
7641
76422008-04-28 Juanma Barranquero <lekktu@gmail.com>
7643
7644 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
7645
76462008-04-27 Juanma Barranquero <lekktu@gmail.com>
7647
7648 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
7649
76502008-04-27 Andreas Schwab <schwab@suse.de>
7651
7652 * dired.c (file_name_completion): Fix inappropriate mixing of
7653 encoded and decoded names.
7654
7655 * xterm.c (XTread_socket): Fix use of uninitialized variable.
7656
7657 * puresize.h (BASE_PURESIZE): Increase to 1200000.
7658
76592008-04-26 Eli Zaretskii <eliz@gnu.org>
7660
7661 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
7662 2008-03-31, it's not needed anymore with `struct stat' definition
7663 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
7664 for the same reasons.
7665
76662008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
7667
7668 * m/sparc.h: Additional redefinitions for GNU/Linux.
7669
76702008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7671
7672 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
7673 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
7674 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
7675 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
7676 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
7677 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
7678 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
7679 Likewise.
7680
7681 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
7682 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
7683 (mac_ax_number_of_characters): Add externs.
7684 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
7685 [USE_MAC_TSM]: Likewise.
7686 (mac_handle_text_input_event) [MAC_OSX]:
7687 Handle kEventTextInputOffsetToPos for no active input area case.
7688 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
7689 (mac_handle_document_access_event)
7690 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
7691 (install_application_handler) [MAC_OSX]: Register handlers for
7692 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
7693 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
7694 Register mac_handle_document_access_event.
7695
7696 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
7697 Make functions non-static.
7698
76992008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
7700
7701 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
7702 (read_file_name_completion_ignore_case, insert_default_directory)
7703 (Qdefault_directory): Move to minibuffer.el.
7704 (Fread_file_name): Call the new `read-file-name' instead.
7705
77062008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7707
7708 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
7709 Make function non-static.
7710 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
7711 Remove function.
7712 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
7713 Move to mactoolbox.c.
7714 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
7715
7716 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
7717 (mac_rect_make): New macro.
7718
7719 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
7720 instead of float.
7721 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
7722 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
7723 (XSetBackground) [USE_CG_DRAWING]: Likewise.
7724 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
7725 CGRectMake.
7726 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
7727 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
7728 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
7729 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
7730 instead of WindowRef in argument type.
7731 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
7732 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
7733 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
7734 instead of DISPLAY. All uses changed.
7735 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
7736 (x_calc_absolute_position): Simplify so as not to use
7737 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
7738
7739 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
7740 instead of WindowRef in argument type.
7741 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
7742 [TARGET_API_MAC_CARBON]: Remove externs.
7743 (create_apple_event, mac_event_parameters_to_lisp)
7744 [TARGET_API_MAC_CARBON]: Add externs.
7745
7746 * mactoolbox.c (Vmac_ts_script_language_on_focus)
7747 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
7748 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
7749 is clicked.
7750 (x_activate_menubar): Remove extern for saved_menu_event_location.
7751 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
7752 Move from mac.c.
7753
77542008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7755
7756 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
7757 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
7758
77592008-04-23 Jason Rumney <jasonr@gnu.org>
7760
7761 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
7762 attributes only for local files.
7763
7764 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
7765 default to Qlocal.
7766
77672008-04-22 Juri Linkov <juri@jurta.org>
7768
7769 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
7770 read-buffer-to-switch instead of using the letter "B".
7771
77722008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
7773
7774 * fileio.c (Qdefault_directory): New variable.
7775 (Fread_file_name): Use it to pass `dir' to the completion functions.
7776
77772008-04-20 Chong Yidong <cyd@stupidchicken.com>
7778
7779 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
7780
77812008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
7782
7783 * keyboard.c (Vpre_help_message): Remove.
7784 (show_help_echo): Remove default C code.
7785
7786 * dired.c (directory_files_internal, file_name_completion):
7787 Only call ENCODE_FILE if the string is indeed decoded.
7788
77892008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
7790
7791 * Makefile.in (TOOLKIT_DEFINES): Remove.
7792 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
7793
77942008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7795
7796 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
7797 (mactoolbox.o): New target.
7798
7799 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
7800 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
7801
7802 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
7803 Use mac_set_frame_window_background instead of XSetWindowBackground.
7804 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
7805 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
7806 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
7807 instead of SetWindowTitleWithCFString.
7808 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
7809 Move function to mactoolbox.c.
7810 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
7811 Use mac_set_window_modified instead of SetWindowModified.
7812 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
7813 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
7814 (Fx_focus_frame): Use mac_front_non_floating_window instead of
7815 FrontNonFloatingWindow. Use mac_activate_window instead of
7816 ActivateWindow. Use mac_active_non_floating_window instead of
7817 ActiveNonFloatingWindow.
7818 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
7819 Use mac_show_hourglass and mac_hide_hourglass.
7820 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
7821 instead of GetGlobalMouse.
7822 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
7823 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
7824 Use mac_bring_window_to_front instead of BringToFront.
7825 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
7826 mactoolbox.c.
7827 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
7828 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
7829 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
7830 mactoolbox.c.
7831
7832 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
7833 (XtPointer): Move typedef from macmenu.c.
7834 (enum button_type): Move enum from macmenu.c.
7835 (widget_value): Move typedef from macmenu.c.
7836 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
7837 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
7838 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
7839 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
7840 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
7841 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
7842 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
7843 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
7844 (Selection): Move typedef from macselect.c.
7845 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
7846 macterm.c.
7847 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
7848 (mac_is_window_collapsed, mac_bring_window_to_front)
7849 (mac_send_window_behind, mac_hide_window, mac_show_window)
7850 (mac_collapse_window, mac_front_non_floating_window)
7851 (mac_active_non_floating_window, mac_activate_window)
7852 (mac_move_window_structure, mac_move_window, mac_size_window)
7853 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
7854
7855 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
7856 (enum mac_menu_kind): Move enum to mactoolbox.c.
7857 (min_menu_id): Move variable to mactoolbox.c.
7858 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
7859 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
7860 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
7861 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
7862 [TARGET_API_MAC_CARBON]: Likewise.
7863 (XtPointer): Move typedef to macgui.h.
7864 (enum button_type): Move enum to macgui.h.
7865 (widget_value): Move typedef to macgui.h.
7866 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
7867 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
7868 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
7869 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
7870 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
7871 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
7872 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
7873 (popup_activated_flag): Make variable non-static.
7874 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
7875 (add_menu_item, fill_menu, dispose_menus):
7876 Move functions to mactoolbox.c.
7877 (restore_show_help_function, menu_target_item_handler)
7878 (install_menu_target_item_handler, mac_handle_dialog_event)
7879 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
7880 [TARGET_API_MAC_CARBON]: Likewise.
7881 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
7882 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
7883 (find_and_call_menu_selection, name_is_separator): Make function
7884 non-static.
7885 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
7886 to mactoolbox.c.
7887 (set_frame_menubar): Don't call install_menu_quit_handler.
7888 (menu_item_selection): New variable.
7889 (mac_menu_show): Use create_and_show_popup_menu.
7890 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
7891 selection but set variable menu_item_selection. All uses changed.
7892 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
7893 Call install_menu_quit_handler. Move to mactoolbox.c.
7894
7895 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
7896 (Selection): Move typedef to macgui.h.
7897 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
7898 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
7899 Make variables non-static.
7900 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
7901 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
7902 Make functions non-static.
7903 (Vmac_service_selection) [MAC_OSX]: Likewise.
7904 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
7905 (mac_valid_selection_target_p, mac_clear_selection)
7906 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
7907 (mac_put_selection_value, mac_selection_has_target_p)
7908 (mac_get_selection_value, mac_get_selection_target_list)
7909 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
7910 Move functions to mactoolbox.c.
7911 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
7912 Likewise.
7913 (copy_scrap_flavor_data, mac_handle_service_event)
7914 (install_service_handler) [MAC_OSX]: Likewise.
7915 (syms_of_macselect) <Vmac_dnd_known_types>:
7916 Use mac_dnd_default_known_types.
7917
7918 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
7919 Move to mactoolbox.c.
7920 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
7921 (Fx_selection_owner_p): Add EXFUN.
7922 (install_window_handler, remove_window_handler, XSetWindowBackground):
7923 Remove externs.
7924 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
7925 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
7926 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
7927 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
7928 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
7929 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
7930 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
7931 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
7932 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
7933 (create_and_show_popup_menu, mac_get_selection_from_symbol)
7934 (mac_valid_selection_target_p, mac_clear_selection)
7935 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
7936 (mac_put_selection_value, mac_selection_has_target_p)
7937 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
7938 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
7939 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
7940 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
7941 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
7942 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
7943 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
7944 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
7945 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
7946
7947 * mactoolbox.c: New file.
7948
79492008-04-18 Jason Rumney <jasonr@gnu.org>
7950
7951 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
7952
79532008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
7954
7955 * character.c (Fmultibyte_char_to_unibyte):
7956 Return latin1 chars unchanged.
7957
7958 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
7959 relocated if it points to `name'.
7960
79612008-04-17 Kenichi Handa <handa@m17n.org>
7962
7963 * data.c (Faset): Allow setting a multibyte character in an
7964 ASCII-only unibyte string.
7965
7966 * lisp.h (STRING_SET_MULTIBYTE): New macro.
7967
79682008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
7969
7970 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
7971 done in config.h.
7972
79732008-04-16 Juanma Barranquero <lekktu@gmail.com>
7974
7975 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
7976 (Fchar_direction): Add usage in the docstring.
7977
79782008-04-15 Chong Yidong <cyd@stupidchicken.com>
7979
7980 * keyboard.c (read_key_sequence): Remove always-true checks.
7981
79822008-04-14 Jason Rumney <jasonr@gnu.org>
7983
7984 * w32font.c (w32font_open_internal): Set max_bounds.descent in
7985 compatibility struct, for better underline positioning.
7986
79872008-04-13 David Hansen <david.hansen@gmx.net>
7988
7989 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
7990 string.
7991
79922008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
7993
7994 * m/hp800.h (XUINT, XSET): Remove.
7995
79962008-04-12 Juanma Barranquero <lekktu@gmail.com>
7997
7998 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
7999 previous change.
8000
80012008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
8002
8003 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
8004 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
8005
80062008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
8007
8008 * keymap.h (map_keymap_canonical): Declare.
8009 * xmenu.c (single_keymap_panes): Use it.
8010
80112008-04-11 Glenn Morris <rgm@gnu.org>
8012
8013 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
8014 set the target's value to that of the alias.
8015
80162008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
8017
8018 * term.c (set_tty_color_mode): Left over typo.
8019
80202008-04-10 Michael Albinus <michael.albinus@gmx.de>
8021
8022 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
8023 only after check for file name handler functions. Signal, when
8024 native functionality is not supported.
8025 (syms_of_fileio): Declare it unconditionally.
8026
80272008-04-10 Jason Rumney <jasonr@gnu.org>
8028
8029 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
8030 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
8031
8032 * w32.c (logon_network_drive): Also logon to remote drives that
8033 are mapped to drive letters.
8034
80352008-04-10 Glenn Morris <rgm@gnu.org>
8036
8037 * xdisp.c (truncate-partial-width-windows): Doc fix.
8038
80392008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
8040
8041 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
8042 Move functions to minibuffer.el.
8043 (syms_of_fileio): Don't declare them.
8044
80452008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8046
8047 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
8048 (syms_of_minibuf): Remove its initialization.
8049
8050 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
8051
80522008-04-09 Juanma Barranquero <lekktu@gmail.com>
8053
8054 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
8055
80562008-04-09 Jason Rumney <jasonr@gnu.org>
8057
8058 * makefile.w32-in (distclean): Delete makefile too.
8059 (maintainer-clean): New target.
8060
8061 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
8062
8063 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
8064 for new font backend and composite cases.
8065
80662008-04-09 Jan Djärv <jan.h.d@swipnet.se>
8067
8068 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
8069 Most of the code moved to run_timers.
8070 (do_pending_atimers): Call run_timers.
8071 (run_timers): New function.
8072
8073 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
8074 run atimers.
8075
8076 * process.c (wait_reading_process_output): The same as above.
8077
80782008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8079
8080 * minibuf.c (last_exact_completion): Remove variable.
8081 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
8082 (complete_and_exit_1, complete_and_exit_2)
8083 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
8084 (Fdisplay_completion_list, display_completion_list_1)
8085 (Fminibuffer_completion_help, Fself_insert_and_exit)
8086 (Fexit_minibuffer, Fminibuffer_message): Move functions to
8087 minibuffer.el.
8088 (syms_of_minibuf): Remove corresponding initializations.
8089
8090 * keyboard.c (Qdeactivate_mark): New var.
8091 (command_loop_1): Use it to call `deactivate-mark'.
8092 (syms_of_keyboard): Initialize it.
8093
8094 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
8095 to another frame.
8096 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
8097 Don't call set_tty_color_mode.
8098 (store_frame_param): Reset previous_frame rather than call
8099 set_tty_color_mode.
8100 * term.c (set_tty_color_mode): Rewrite.
8101 * dispextern.h (set_tty_color_mode): New type.
8102 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
8103
81042008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
8105
8106 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
8107 for generic chars, which do not exist any more in emacs-unicode.
8108
81092008-04-08 Michael Albinus <michael.albinus@gmx.de>
8110
8111 * coding.c (detect_coding_emacs_mule)
8112 (Ffind_operation_coding_system): Fix typo.
8113
81142008-04-08 Jason Rumney <jasonr@gnu.org>
8115
8116 * w32uniscribe.c (SNAME): Extract only symbol name.
8117
8118 * w32font.h (struct w32_metric_cache): New struct.
8119 (w32font_info): Use it.
8120 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
8121 (CACHE_BLOCKSIZE): New constants.
8122
8123 * w32font.c (Qja, Qko, Qzh): New symbols.
8124 (syms_of_w32font): Initialise them.
8125 (font_matches_spec): Use them to filter by language.
8126 (recompute_cached_metrics): Remove function.
8127 (compute_metrics, clear_cached_metrics): New functions.
8128 (w32font_encode_char): Use them to manage metric cache.
8129 (w32font_text_extents): Cache metrics for all glyphs on demand.
8130 Delay converting glyph indices to WORD until needed.
8131 (w32font_open_internal): Initialize metric cache to empty.
8132 (registry_to_w32_charset): Charset should always be a symbol.
8133 (fill_in_logfont, list_all_matching_fonts): Family should
8134 always be a symbol.
8135
81362008-04-06 Jason Rumney <jasonr@gnu.org>
8137
8138 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
8139 Give up if glyph indices not supported. Use uniscribe obtained
8140 ABC widths for individual metrics. Map glyph clusters back to
8141 characters using fClusterStart flag. Return number of glyphs
8142 produced, not chars processed.
8143 (uniscribe_shape): Map char at FROM to current glyph.
8144
81452008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8146
8147 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
8148 Use SetMenuItemHierarchicalMenu.
8149
81502008-04-05 Jason Rumney <jasonr@gnu.org>
8151
8152 * image.c (pbm_load): Allow color values up to 65535.
8153 Throw an error if max_color_idx is outside the supported range.
8154 Report an error when image size is invalid.
8155 Read two bytes at a time when raw images have max_color_idx above 255.
8156
81572008-04-05 Eli Zaretskii <eliz@gnu.org>
8158
8159 * w32.c (readdir): If FindFirstFile/FindNextFile return in
8160 cFileName a file name that includes `?' characters, use the 8+3
8161 alias in cAlternateFileName instead.
8162
81632008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
8164
8165 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
8166 append "CCL: Quitted" when the CCL program is quitted.
8167 (setup_ccl_program): Initialize ccl->quit_silently to zero.
8168
8169 * ccl.h (struct ccl_program): New member quit_silently.
8170
81712008-04-05 Chong Yidong <cyd@stupidchicken.com>
8172
8173 * search.c (compile_pattern_1): Treat non-nil and non-string of
8174 search-spaces-regexp as nil.
8175
8176 * minibuf.c (Fassoc_string): Tweak docstring.
8177
81782008-04-05 Eli Zaretskii <eliz@gnu.org>
8179
8180 * dired.c (Ffile_attributes): Support inode numbers wider than 32
8181 bits. Remove ugly WINDOWSNT-specific kludge introduced on
8182 2008-03-14 to force inode be positive.
8183
8184 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
8185 _S_* ones, since we now use our own sys/stat.h.
8186 (stat, fstat): Don't mangle the inode number.
8187 (init_user_info): Don't restrict UID and GID to 0-60000 range.
8188
81892008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
8190
8191 * frame.h (struct frame): Give one more bit to `visible' since we use
8192 values larger than 1 to indicate obscured frames on ttys.
8193
8194 * keymap.c (Qkeymap_canonicalize): New var.
8195 (Fmap_keymap_internal): New fun.
8196 (describe_map): Use keymap-canonicalize.
8197
8198 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
8199 (Fundo_boundary): Set them.
8200 (syms_of_undo): Initialize them.
8201 (record_point): Use them instead of last_point_position*.
8202 (last_undo_buffer): Change type.
8203
82042008-04-04 Jason Rumney <jasonr@gnu.org>
8205
8206 * w32font.c (w32font_text_extents): Use font's ascent and descent.
8207 (recompute_cached_metrics): Don't set ascent and descent per char.
8208
8209 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
8210 (uniscribe_check_otf): Add GC protection before consing.
8211 Rearrange loop for counting features.
8212
82132008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
8214
8215 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
8216 buffer with byte-size of source buffer.
8217
82182008-04-03 Chong Yidong <cyd@stupidchicken.com>
8219
8220 * callint.c (Fcall_interactively): Handle temporary region even
8221 when shift-select-mode is off.
8222
82232008-04-03 Jason Rumney <jasonr@gnu.org>
8224
8225 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
8226
82272008-04-03 Kenichi Handa <handa@m17n.org>
8228
8229 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
8230 (CATEGORY_MASK_UTF_16): Likewise.
8231 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
8232 binary file.
8233 (detect_coding): Add null-byte detection for a binary file.
8234 (detect_coding_system): Likewise.
8235
82362008-04-03 Jason Rumney <jasonr@gnu.org>
8237
8238 * w32uniscribe.c: New file.
8239
8240 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
8241
8242 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
8243
8244 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
8245 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
8246 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
8247 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
8248 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
8249 (Qphonetic): New symbols.
8250 (syms_of_w32font): Initialize them.
8251 (font_supported_scripts): Use them.
8252 (w32font_list_family): List all charsets.
8253 (w32font_text_extents, recompute_cached_metrics): Fix metric
8254 calculations.
8255 (w32_enumfont_pattern_entity): Make full_type a DWORD.
8256 Give opentype fonts their own format.
8257 (font_matches_spec): New arguments backend and logfont.
8258 Handle :otf spec for uniscribe backend.
8259 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
8260 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
8261
8262 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
8263 font backend.
8264 (globals_of_w32fns): Initialize uniscribe font backend.
8265
8266 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
8267 dependencies.
8268 (w32uniscribe.$(O)): New file to build.
8269 (FONT_OBJ): Include w32uniscribe.$(O).
8270 (LIBS): Add uniscribe libraries.
8271
8272 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
8273
82742008-04-02 Chong Yidong <cyd@stupidchicken.com>
8275
8276 * callint.c (Vshift_select_mode): New var.
8277 (Finteractive): Document new ^ spec.
8278 (Fcall_interactively): Call handle-shift-selection if the ^ spec
8279 is present.
8280
8281 * keyboard.c (Vthis_command_keys_shift_translated): New var.
8282 (command_loop_1): Avoid running the direct display versions of
8283 forward-char and backward-char if shift-selection may occur.
8284 (read_key_sequence): Set Vthis_command_keys_shift_translated if
8285 shift-translation takes place.
8286
8287 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
8288 avoid clobbering by define-minor-mode.
8289
8290 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
8291 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
8292
8293 * syntax.c (Fforward_word): Add ^ interactive spec.
8294
8295 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
8296 (Fscroll_right): Add ^ interactive spec.
8297
82982008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
8299
8300 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
8301
8302 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
8303
8304 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
8305
83062008-03-31 Juri Linkov <juri@jurta.org>
8307
8308 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
8309
83102008-03-30 Jan Djärv <jan.h.d@swipnet.se>
8311
8312 * gtkutil.c (xg_set_geometry): Fix indentation.
8313 (xg_resize_outer_widget): Remove.
8314 (x_wm_size_hint_off): Fix indentation.
8315 (xg_frame_set_char_size): Call flush_and_sync after
8316 gtk_window_resize.
8317 (x_wm_set_size_hint): Pass NULL as geometry window to
8318 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
8319 Add menu bar and tool bar height to base height.
8320 (xg_update_frame_menubar, free_frame_menubar)
8321 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
8322 (update_frame_tool_bar, free_frame_tool_bar):
8323 Change xg_resize_outer_widget to xg_frame_set_char_size.
8324
83252008-03-30 Michael Albinus <michael.albinus@gmx.de>
8326
8327 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
8328 (Fdbus_call_method): New parameter TIMEOUT.
8329 (dbus-send-signal): Optimize UNGCPRO call.
8330
83312008-03-29 Juri Linkov <juri@jurta.org>
8332
8333 * window.c (Fdisplay_buffer): Move call to
8334 Vsplit_window_preferred_function out of conditions that check
8335 if window is eligible for vertical splitting.
8336 When Vsplit_window_preferred_function is non-nil, call it and use
8337 its non-nil return value as window. Otherwise, continue doing
8338 vertical splitting using Fsplit_window with arg horflag=nil.
8339 (syms_of_window) <Vsplit_window_preferred_function>: Change the
8340 default value from `split-window' to nil.
8341
83422008-03-29 Juri Linkov <juri@jurta.org>
8343
8344 * callint.c (Fcall_interactively): Revert 2008-03-16 change
8345 for interactive code letters 'b' and 'B'.
8346
83472008-03-29 Eli Zaretskii <eliz@gnu.org>
8348
8349 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
8350 multibyte string.
8351
83522008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
8353
8354 * keyboard.c (pending_funcalls): New var.
8355 (timer_check): Run it.
8356 (syms_of_keyboard): Initialize it.
8357 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
8358 (Vdelete_terminal_functions): New vars.
8359 (syms_of_terminal): Initialize them.
8360 (Fdelete_terminal): Run delete-terminal-functions.
8361 * xdisp.c (safe_eval): Rewrite.
8362 (safe_call2): New fun.
8363 * frame.c (Qdelete_frame_functions): New var.
8364 (syms_of_frame): Initialize it.
8365 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
8366 * lisp.h (safe_call2, pending_funcalls): Declare.
8367
83682008-03-28 Andreas Schwab <schwab@suse.de>
8369
8370 * indent.c (Fmove_to_column): Move declaration before statements.
8371
83722008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
8373
8374 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
8375 (struct frame): Use bit fields for boolean vars.
8376
8377 * process.c (server_accept_connection): Simplify naming.
8378 (emacs_get_tty_pgrp): Use SDATA.
8379
8380 * coding.c (decode_coding_object): Fix last change.
8381
83822008-03-27 Jason Rumney <jasonr@gnu.org>
8383
8384 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
8385
83862008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
8387
8388 * charset.c (Fdefine_charset_internal): Change the way of
8389 registering charsets in Vcharset_order_list.
8390 (syms_of_charset): Make the charset `eight-bit' supplementary.
8391
83922008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
8393
8394 * regex.c (EXTEND_BUFFER): Change order of pointer addition
8395 operations, to avoid having the difference between pointers
8396 overflow.
8397
83982008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
8399
8400 * indent.c (check_display_width): New fun.
8401 (scan_for_column): Use it.
8402
8403 * data.c (syms_of_data): Mark most-positive-fixnum and
8404 most-negative-fixnum as constants.
8405
8406 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
8407
8408 * indent.c (scan_for_column): Extract from current_column_1.
8409 Merge with the same code from Fmove_to_column.
8410 (current_column_1, Fmove_to_column): Use it.
8411
84122008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
8413
8414 * keymap.c (map_keymap_internal): New fun.
8415 (map_keymap): Use it.
8416 (Fmap_keymap_internal): New fun.
8417 (Fmap_keymap): Remove left-out test from before make_save_value.
8418
8419 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
8420
8421 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
8422 Use XCAR/XCDR.
8423
8424 * process.h (struct Lisp_Process): Remove filter_multibyte.
8425 * process.c (QCfilter_multibyte): Remove.
8426 (setup_process_coding_systems): Don't use filter_multibyte.
8427 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
8428 (read_process_output): Don't adjust multibyteness to filter_multibyte.
8429 (Fset_process_filter_multibyte): Change the coding-system to
8430 approximate the previous behavior.
8431 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
8432 coding-system.
8433
8434 * coding.c (decode_coding_object): When not decoding into a buffer,
8435 obey the coding system's preference of (uni|multi)byte.
8436
84372008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
8438
8439 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
8440 every char is changed and has a different byte-length.
8441 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
8442 Fix int -> EMACS_INT.
8443
84442008-03-23 David Hansen <david.hansen@gmx.net>
8445
8446 * dbusbind.c (xd_read_message): Remove extra copying of message
8447 strings. Check for NULL `interface' or `member'.
8448
84492008-03-22 Eli Zaretskii <eliz@gnu.org>
8450
8451 * w32.c (readdir): If FindFirstFile/FindNextFile return in
8452 cFileName a file name that includes `?' characters, use the 8+3
8453 alias in cAlternateFileName instead.
8454
84552008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
8456
8457 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
8458
84592008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
8460
8461 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
8462 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
8463 work on current_buffer only instead (that was already the case
8464 for some of the code anyway).
8465 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
8466 (temp_set_point, temp_set_point_both): Use EMACS_INT.
8467 (SET_PT, SET_PT_BOTH): Adjust.
8468 * intervals.h (set_point, temp_set_point, set_point_both)
8469 (temp_set_point_both): Remove redundant declarations.
8470
84712008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
8472
8473 * fileio.c (Finsert_file_contents):
8474 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
8475 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
8476 when buffer != current_buffer anyway.
8477
84782008-03-20 Andreas Schwab <schwab@suse.de>
8479
8480 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
8481 as default.
8482
84832008-03-19 Jason Rumney <jasonr@gnu.org>
8484
8485 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
8486 (syms_of_w32fns): Initialize them.
8487 (HOURGLASS_ID): New constant.
8488 (x_window_to_frame): Don't check hourglass_window.
8489 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
8490 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
8491 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
8492 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
8493 Only change the cursor if hourglass is not active.
8494 (Fx_create_frame): Initialize frame's current_cursor.
8495 (hourglass_atimer): Remove.
8496 (hourglass_started): New function.
8497 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
8498 (show_hourglass): Adapt to w32, changing argument to frame.
8499
8500 * w32term.h (struct w32_output): Remove hourglass_window.
8501 Add current_cursor.
8502
8503 * eval.c (call_debugger, Fsignal):
8504 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
8505 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
8506 (Fexecute_extended_command, cancel_hourglass_unwind):
8507 * minibuf.c (read_minibuf):
8508 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
8509
85102008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
8511
8512 * window.c (run_funs): New fun.
8513 (run_window_configuration_change_hook): Use it to run the buffer-local
8514 and the global part of the hook.
8515
8516 * xdisp.c (format_mode_line_unwind_data): Add window argument.
8517 (unwind_format_mode_line): Restore selected window.
8518 (x_consider_frame_title, Fformat_mode_line): Set selected window.
8519
85202008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8521
8522 * editfns.c (Fchar_equal): Check they are valid characters.
8523
8524 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
8525
85262008-03-17 Andreas Schwab <schwab@suse.de>
8527
8528 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
8529 against a charset.
8530
8531 * lisp.h (Fbuffer_list): Declare.
8532
85332008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 8534
aac0c6e3
MR
8535 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
8536 handlebox_widget is != 0.
8537
85382008-03-16 Juri Linkov <juri@jurta.org>
8539
8540 * callint.c (Fcall_interactively): For interactive code letters
8541 'b' and 'B' put the buffer list into the list of default "future"
8542 values of the minibuffer.
8543
85442008-03-16 Andreas Schwab <schwab@suse.de>
8545
8546 * keyboard.c (read_key_sequence): Fix downcasing of letters with
8547 modifiers.
8548
8549 * regex.c (re_match_2_internal): Correct matching of a charset
8550 against latin-1 characters.
8551
85522008-03-16 Kenichi Handa <handa@m17n.org>
8553
8554 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
8555 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
8556 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
8557 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
8558 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
8559 CHAR_STRING_ADVANCE.
8560 (produce_chars): Fix for the case that the source and the
8561 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
8562 instead of CHAR_STRING_ADVANCE.
8563 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
8564 STRING_CHAR_ADVANCE.
8565
85662008-03-15 Andreas Schwab <schwab@suse.de>
8567
8568 * regex.c (re_match_2_internal): Correct matching of eight bit
8569 characters in unibyte strings.
8570
85712008-03-15 Martin Rudalics <rudalics@gmx.at>
8572
8573 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
8574 at end of range when it coincides with the end of the buffer.
8575
85762008-03-14 Eli Zaretskii <eliz@gnu.org>
8577
8578 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
8579
8580 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
8581
85822008-03-14 Jason Rumney <jasonr@gnu.org>
8583
8584 * editfns.c (initial_tz): New variable.
8585 (syms_of_editfns): Initialize it.
8586 (Fset_time_zone_rule): Set it when first called.
8587 Use it when TZSTRING is nil.
8588
8589 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
8590 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
8591 (monitor_from_point_fn, get_monitor_info_fn): New globals.
8592 (globals_of_w32fns): Initialize them.
8593 (compute_tip_xy): Use them to position tooltips.
8594
85952008-03-14 Glenn Morris <rgm@gnu.org>
8596
8597 * emacs.c (main): Revert previous change.
8598 (standard_args): Revert -internal-script back to -scriptload,
8599 and remove the long-option form.
8600
86012008-03-13 Glenn Morris <rgm@gnu.org>
8602
8603 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
8604 Remove option -enable-font-backend.
8605
86062008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
8607
8608 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
8609
86102008-03-11 Jan Djärv <jan.h.d@swipnet.se>
8611
8612 * xterm.c (x_connection_closed): For GTK: If this is the last
8613 terminal just exit without closing the display.
8614
86152008-03-11 Jason Rumney <jasonr@gnu.org>
8616
8617 * w32font.c (w32font_full_name): Use floor to round.
8618
f0131492 86192008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
8620
8621 * sound.c (alsa_configure): Declare vol at beginning of block.
8622
8623 * fontset.c (Ffontset_info): Remove extra semicolon.
8624
86252008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
8626
8627 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
8628 size of resulting string.
8629
86302008-03-10 Jason Rumney <jasonr@gnu.org>
8631
8632 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
8633
86342008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8635
8636 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
8637 Don't pretend as if characters with display property haven't been
8638 consumed for string-replacing-string case.
8639
86402008-03-08 Kim F. Storm <storm@cua.dk>
8641
8642 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
8643 (get_next_display_element, next_element_from_string)
8644 (next_element_from_ellipsis, next_element_from_buffer): Use it.
8645
86462008-03-08 Andreas Schwab <schwab@suse.de>
8647
8648 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
8649
86502008-03-06 Jason Rumney <jasonr@gnu.org>
8651
8652 * w32font.c (w32_registry): Take font_type argument. Use ANSI
8653 when charset not specified. Only translate ANSI to unicode when
8654 font_type is truetype.
8655 (w32font_coverage_ok): New function.
8656 (add_font_entity_to_list): Use it to filter unsuitable fonts.
8657
86582008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
8659
8660 * lread.c (Fread_char): Resolve modifiers.
8661 (Fread_char_exclusive): Likewise.
8662
8663 * character.c (char_resolve_modifier_mask): New function.
8664 (char_string): Use char_resolve_modifier_mask.
8665 (Fchar_resolve_modifiers): New function.
8666 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
8667 function.
8668
86692008-03-04 Jason Rumney <jasonr@gnu.org>
8670
8671 * makefile.w32-in: Always include w32font.c in the build.
8672 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
8673
86742008-03-04 Andreas Schwab <schwab@suse.de>
8675
8676 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
8677 (versionclean): Likewise.
8678
86792008-03-04 Juanma Barranquero <lekktu@gmail.com>
8680
8681 * .cvsignore: Add oo.
8682
86832008-03-03 Andreas Schwab <schwab@suse.de>
8684
8685 * coding.c (decode_coding_object): Inhibit gap shrinking while
8686 decoding in place.
8687
86882008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
8689
8690 * w32term.c: Remove unused include "gnu.h".
8691 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
8692
8693 * gnu.h: Rename to ...
8694 * emacs-icon.h: ... this.
8695 * xterm.c: Use emacs-icon.h instead of gnu.h.
8696 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
8697
86982008-03-03 Juanma Barranquero <lekktu@gmail.com>
8699
8700 * w32font.c: Include math.h.
8701
87022008-03-03 Jason Rumney <jasonr@gnu.org>
8703
8704 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
8705 Compute options separately.
8706 (w32font_open_internal): Set glyph_idx before caching metrics.
8707
8708 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
8709 Define if system headers don't.
8710 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
8711 (w32font_encode_char): Don't declare here.
8712
8713 * w32font.c (Quniscribe, QCformat): New symbols.
8714 (syms_of_w32font): Define them.
8715 (w32font_has_char): Indicate uncertainty.
8716 (w32font_encode_char): Encode as glyph point. Make static.
8717 (recompute_cached_metrics): New function.
8718 (w32font_open_internal): Use it. Set font to use glyph points
8719 initially. Set format based on type of font.
8720 (w32font_text_extents, w32font_draw): Optionally use glyph points.
8721 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
8722 on it. Set format based on information available here.
8723 (add_font_entity_to_list): Identify backend based on opentype_only.
8724
87252008-03-02 Andreas Schwab <schwab@suse.de>
8726
8727 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
8728
8729 * coding.c (decode_coding_big5, produce_chars):
8730 Fix typos in last change.
8731
87322008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
8733
8734 * gnu.h: New icon.
8735
87362008-03-02 Kenichi Handa <handa@m17n.org>
8737
8738 * coding.c (decode_coding_utf_8): When eol-type of CODING is
8739 `dos', don't decode '\r' if that is the last in the source.
8740 (decode_coding_utf_16, decode_coding_emacs_mule)
8741 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
8742 (decode_coding_raw_text, decode_coding_charset): Likewise.
8743 (produce_chars): Don't decode EOL here. Use EMACS_INT.
8744
87452008-03-01 Jason Rumney <jasonr@gnu.org>
8746
8747 * w32font.c (w32font_full_name): Report point size for scalable fonts.
8748
87492008-03-01 Kim F. Storm <storm@cua.dk>
8750
8751 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
8752
87532008-03-01 Jason Rumney <jasonr@gnu.org>
8754
8755 * w32font.c (w32font_full_name): New function.
8756 (w32font_open_internal): Use it.
8757
87582008-03-01 Kim F. Storm <storm@cua.dk>
8759
8760 * dispnew.c (line_draw_cost): Fix invalid glyph check.
8761
87622008-03-01 Jason Rumney <jasonr@gnu.org>
8763
8764 * font.c (font_unparse_fcname): Increase len when style is a symbol.
8765
87662008-03-01 Jan Djärv <jan.h.d@swipnet.se>
8767
8768 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
8769 xg_frame_resized when the event is for the edit widget.
8770
8771 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
8772
8773 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
8774 set_char_size.
8775 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
8776 operations on widgets here. Just set frame size if needed.
8777 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
8778 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
8779 (x_wm_set_size_hint): Set size hints on the edit widget only, not
8780 the whole frame.
8781 (xg_create_tool_bar): Move attachment of the tool bar to
8782 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
8783 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
8784
87852008-03-01 Jason Rumney <jasonr@gnu.org>
8786
8787 * w32fns.c (w32_msg_pump): Disable debug code.
8788
87892008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8790
8791 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
8792
87932008-02-29 Chong Yidong <cyd@stupidchicken.com>
8794
8795 * xdisp.c (next_overlay_string): Don't set
8796 overlay_strings_at_end_processed_p if we're currently reading from
8797 a display string.
8798
87992008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
8800
8801 * xdisp.c (get_overlay_strings_1): Fix typo.
8802
88032008-02-29 Chong Yidong <cyd@stupidchicken.com>
8804
8805 * xdisp.c (get_overlay_strings_1): Add missing argument type.
8806
88072008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
8808
8809 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
8810
8811 * xdisp.c (display_mode_element): Cancel the previous change.
8812 (decode_mode_spec): Likewise.
8813 (handle_auto_composed_prop): Don't make composition if it->string
8814 is a string.
8815
88162008-02-27 Kim F. Storm <storm@cua.dk>
8817
8818 * lisp.h (GLYPH): Change type from int to struct with separate char
8819 and face_id members.
8820 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
8821 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
8822 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
8823 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
8824 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
8825 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
8826 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
8827 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
8828 handle new Lisp glyph code encoding, either an integer or a cons.
8829
8830 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
8831 (GLYPH_ALIAS): Delete.
8832 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
8833 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
8834 (GLYPH_FROM_CHAR): Replace macro by ...
8835 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
8836
8837 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
8838 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
8839 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
8840 (GLYPH_INVALID_P): New macro.
8841 (spec_glyph_lookup_face): Update prototype.
8842
8843 * dispnew.c (line_draw_cost): Adapt to new glyph type.
8844 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
8845 new glyph code encoding.
8846 (spec_glyph_lookup_face): No return value; update passed glyph instead.
8847 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
8848
8849 * xdisp.c (get_next_display_element, next_element_from_display_vector):
8850 Adapt to new glyph type and new glyph code encoding.
8851
8852 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
8853
8854 * indent.c (current_column, current_column_1, Fmove_to_column)
8855 (compute_motion): Adapt to new glyph code encoding.
8856
8857 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
8858
88592008-02-27 Chong Yidong <cyd@stupidchicken.com>
8860
8861 * process.c (wait_reading_process_output): Check for window
8862 changes caused by timers.
8863 Suggested by Johan Bockgård.
8864
88652008-02-27 Glenn Morris <rgm@gnu.org>
8866
8867 * emacs.c (USAGE1): Add `--disable-font-backend'.
8868
88692008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
8870
8871 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
8872 is made to the buffer.
8873
88742008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
8875
8876 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
8877 (face_at_string_position):
8878 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
8879 (face_at_string_position):
8880 * xdisp.c (display_string, next_overlay_change):
8881 * buffer.h (overlays_at):
8882 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
8883 Update callers.
8884
88852008-02-26 Chong Yidong <cyd@stupidchicken.com>
8886
8887 * editfns.c (Fformat): Doc fix.
8888
88892008-02-26 Juanma Barranquero <lekktu@gmail.com>
8890
8891 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
8892 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
8893 (Ffont_otf_alternates, Fquery_font): Doc fixes.
8894
88952008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
8896
8897 * buffer.c (Fbuffer_swap_text): New function.
8898 (syms_of_buffer): Defsubr it.
8899
89002008-02-25 Chong Yidong <cyd@stupidchicken.com>
8901
8902 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
8903
89042008-02-25 Jason Rumney <jasonr@gnu.org>
8905
8906 * w32font.c (w32font_draw): Draw one character at a time when padding.
8907
89082008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
8909
8910 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
8911 Handle a nil arg. Use run_window_configuration_change_hook.
8912 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
8913 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
8914 Use run_window_configuration_change_hook.
8915
89162008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
8917
8918 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
8919 1-pixel width.
8920
89212008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
8922
8923 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
8924 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
8925 if the glyph in the font is zero pixel with.
8926
8927 * dispextern.h (struct glyph_string): New member padding_p.
8928
8929 * w32font.c (w32font_draw): Pay attention to s->padding_p.
8930
8931 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
8932
8933 * xfont.c (xfont_draw): Pay attention to s->padding_p.
8934
8935 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
8936
8937 * font.c: If the font driver doesn't have `shape' function, return Qnil.
8938
89392008-02-25 Jason Rumney <jasonr@gnu.org>
8940
8941 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
8942
89432008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
8944
8945 Allow fine-grained image-cache flushing.
8946 * dispextern.h (struct image): Add `dependencies' field.
8947 (clear_image_caches): Change arg to Lisp_Object.
8948 * image.c (make_image): Initialize `dependencies' field.
8949 (clear_image_cache): Change arg to allow fine-grained flushing.
8950 Perform the flush even if image-cache-eviction-delay is nil.
8951 (clear_image_caches): Change arg to Lisp_Object.
8952 (Fclear_image_cache): Expand meaning of the argument.
8953 (mark_image): Mark `dependencies' field.
8954 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
8955 (lface_hash): Use XHASH rather than XFASTINT.
8956 (face_at_buffer_position): Fix int -> EMACS_INT position.
8957 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
8958 (select_frame_for_redisplay): Remove code duplication.
8959 (redisplay_internal): Adapt arg to call to clear_image_caches.
8960
89612008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
8962
8963 * s/vms4-0.h:
8964 * s/vms4-2.h:
8965 * s/vms4-4.h:
8966 * s/vms5-5.h: Remove, unused.
8967
8968 * s/irix5-2.h:
8969 * s/irix6-0.h:
8970 * s/riscos5.h:
8971 * s/mach-bsd4-3.h:
8972 * m/mips4.h: Remove files for obsolete systems.
8973
8974 * Makefile.in:
8975 * filelock.c:
8976 * unexmips.c:
8977 * m/hp9000s300.h:
8978 * m/iris4d.h:
8979 * s/aix3-1.h:
8980 * s/hpux.h:
8981 * s/msdos.h:
8982 * s/usg5-0.h:
8983 * s/usg5-2-2.h:
8984 * s/usg5-2.h:
8985 * s/usg5-3.h: Remove references to obsolete variables.
8986
8987 * s/irix5-0.h: Remove, move all the contents ...
8988 * s/irix6-5.h: ... here. Simplify.
8989 * config.in: Regenerate.
8990
89912008-02-24 Jason Rumney <jasonr@gnu.org>
8992
8993 * w32term.c (x_draw_glyph_string_background): Clear the background
8994 manually when cleartype is in use.
8995 (x_draw_glyph_string_foreground): Draw text transparently when
8996 cleartype is in use.
8997
8998 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
8999 a font into it unless we have to.
9000
90012008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9002
9003 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
9004 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 9005
aac0c6e3
MR
90062008-02-18 Jason Rumney <jasonr@gnu.org>
9007
9008 * w32fns.c (Fw32_shell_execute): Encode parameters.
9009
90102008-02-09 Eli Zaretskii <eliz@gnu.org>
9011
9012 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
9013
90142008-02-05 Juanma Barranquero <lekktu@gmail.com>
9015
9016 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
9017
90182008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
9019
9020 * xterm.c (x_set_offset): Don't change the gravity if
9021 CHANGE_GRAVITY is -1.
9022
90232008-02-23 Chong Yidong <cyd@stupidchicken.com>
9024
9025 * fileio.c (auto_save_error_occurred): New var.
9026 (auto_save_error): Set it.
9027 (Fdo_auto_save): Don't overwrite the error message if an auto-save
9028 error occurred.
9029
90302008-02-23 Eli Zaretskii <eliz@gnu.org>
9031
9032 * w32.c (globals_of_w32): Add initializations for
9033 g_b_init_get_sid_sub_authority and
9034 g_b_init_get_sid_sub_authority_count.
9035
90362008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
9037
9038 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
9039 (font_parse_xlfd): Use them for sanity check.
9040 (Finternal_set_font_style_table): Make sure the table is bijective.
9041
9042 Consolidate the image_cache to the terminal struct.
9043 * termhooks.h (P_): Remove redundant def.
9044 (struct terminal): New field `image_cache'.
9045 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
9046 of FRAME_X_IMAGE_CACHE.
9047 * xterm.h (struct x_display_info): Remove image_cache field.
9048 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
9049 * w32term.h (struct w32_display_info): Remove image_cache field.
9050 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
9051 * macterm.h (struct mac_display_info): Remove image_cache field.
9052 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
9053 * xterm.c (x_term_init):
9054 * w32term.c (w32_term_init):
9055 * macterm.c (mac_term_init): Set the image_cache in the terminal.
9056 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
9057 Remove declarations.
9058 (clear_image_caches, mark_image_cache): New declarations.
9059 * xfaces.c (clear_face_cache):
9060 * xdisp.c (redisplay_internal): Use clear_image_caches.
9061 * image.c (clear_image_cache): Don't check that a frame is on
9062 a window-system before checking if it shares the same cache.
9063 (clear_image_caches): New function.
9064 (Fclear_image_cache): Use it.
9065 (mark_image): Move from allo.c.
9066 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
9067 * alloc.c (mark_image, mark_image_cache): Move to image.c.
9068 (mark_object): Don't call mark_image_cache for frames.
9069 (mark_terminals): Call mark_image_cache.
9070
9071 * lisp.h (Fdelete_terminal): Declare.
9072
9073 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
9074 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
9075 wrong_type_argument.
9076
90772008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
9078
9079 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
9080 malayalam.el, and tamil.el. Add sinhala.el.
9081
90822008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
9083
9084 * xterm.c (x_connection_closed): Consolidate identical tests.
9085 (x_delete_terminal): Don't crash if called via x_connection_closed.
9086
90872008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
9088
9089 * xdisp.c (decode_mode_spec): New arg string.
9090 (display_mode_element): Adjust for the above change.
9091
90922008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9093
9094 * callint.c (Fcall_interactively): Use AREF.
9095
90962008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
9097
9098 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
9099
91002008-02-18 Jan Djärv <jan.h.d@swipnet.se>
9101
9102 * xfns.c (Fx_show_tip): Set string to " " if empty.
9103
91042008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
9105
9106 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
9107 with Qt.
9108
91092008-02-17 Kenichi Handa <handa@m17n.org>
9110
9111 * ftfont.c (ftfont_shape): Return Lispy number.
9112
9113 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
9114 for GCs.
9115 (Finternal_set_font_selection_order): Call font_update_sort_order
9116 only when enable_font_backend is set.
9117 (realize_x_face): Set face->font_info to that of default face only
9118 when enable_font_backend is set.
9119
9120 * xdisp.c (handle_composition_prop): Set it->c to the fist
9121 character of the composed region.
9122 (fill_composite_glyph_string): Set base_face->font_info to
9123 s->font_info. Get a face for ascii from base_face->ascii_face.
9124 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
9125 with a face already decided.
9126 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
9127 non-negative.
9128 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
9129 call font_prepare_composition unconditionally.
9130
9131 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
9132
9133 * xterm.h (struct x_display_info): New member font.
9134
9135 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
9136 (x_set_mouse_face_gc, x_new_font): Likewise.
9137 (x_term_init): Setup display_info->font.
9138 (x_delete_terminal): Free display_info->font.
9139
9140 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
9141
9142 * ftxfont.c (ftxfont_default_fid): Delete it.
9143 (ftxfont_open): Set xfont->fid to 0.
9144 (ftxfont_end_for_frame): Clear data specific to the frame and the
9145 font-driver.
9146
9147 * xftfont.c (xftfont_default_fid): Delete it.
9148 (xftfont_open): Set xfont->fid to 0.
9149
9150 * fontset.c (FONTSET_OBJLIST): New macro.
9151 (fontset_find_font): Update font-object list of the fontset.
9152 (free_realized_fontset): New function.
9153 (free_face_fontset): Call free_realized_fontset.
9154 (Ffont_info): Call font_close_object only when enable_font_backend
9155 is set.
9156
9157 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
9158 [HAVE_NTGUI]: Include w32term.h.
9159 [MAC_OS]: Include macterm.ch.
9160 (font_otf_ValueRecord): Use make_number.
9161 (font_finish_cache): Fix handling of reference count.
9162 (font_clear_cache): Update num_fonts.
9163 (font_open_entity): Update smallest_char_width and
9164 smallest_font_height of the frame.
9165 (font_close_object): Update num_fonts.
9166 (Fclear_font_cache): Fix finding the target cache data.
9167
91682008-02-16 Glenn Morris <rgm@gnu.org>
9169
9170 * fontset.c (Finternal_char_font): Fix compilation warning.
9171
91722008-02-16 Eli Zaretskii <eliz@gnu.org>
9173
9174 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
9175 instead of char arrays. Enlarge the size of array passed to
9176 get_token_information.
9177
9178 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
9179 warnings.
9180
91812008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
9182
9183 * .gdbinit: Don't set `args', it breaks gdb --args.
9184
91852008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
9186
9187 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
9188 within a narrowed buffer.
9189
91902008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
9191
9192 * coding.c (decode_coding_object, encode_coding_object):
9193 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
9194
91952008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
9196
9197 * coding.c (coding_set_destination): Use BEG_BYTE rather than
9198 hardcoding 1.
9199 (detect_coding_system):
9200 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
9201 (string_char_to_byte, string_byte_to_char, insert_from_gap):
9202 * insdel.c (insert_from_gap):
9203 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
9204 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
9205 (string_to_multibyte):
9206 * character.c (chars_in_text, multibyte_chars_in_text):
9207 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
9208
9209 * character.h (FETCH_STRING_CHAR_ADVANCE)
9210 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
9211 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
9212 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
9213
9214 * casefiddle.c (casify_region): Only call after-change and composition
9215 functions on the part of the region that was changed.
9216
9217 * keyboard.c (read_avail_input):
9218 * frame.c (Fdelete_frame): Call Fdelete_terminal.
9219
92202008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
9221
9222 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
9223 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
9224
92252008-02-11 Juanma Barranquero <lekktu@gmail.com>
9226
9227 * w32menu.c (push_submenu_start, push_submenu_end)
9228 (push_left_right_boundary, push_menu_pane, push_menu_item):
9229 * keyboard.c (read_key_sequence): Don't pass args with side effects
9230 to AREF, it fails when compiling with -DENABLE_CHECKING.
9231
92322008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
9233
9234 * Makefile.in (${lispsource}international/charprop.el):
9235 Delete this target.
9236
9237 * search.c (boyer_moore): Fix incorrect synching of the trunk and
9238 emacs-unicode-2.
9239
92402008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
9241
9242 * terminal.c (Fdelete_terminal): Clean up the `force' path.
9243
92442008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
9245
9246 * frame.c (Qnoelisp): New symbol.
9247 (syms_of_frame): Initialize it.
9248 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
9249 harmless Elisp code, from a strong `force' from x_connection_closed.
9250 * frame.h (Qnoelisp): Declare.
9251 * xterm.c (x_connection_closed): Pass `noelisp'.
9252
9253 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
9254 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
9255 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
9256 rather than `int' for the type of `type'.
9257
92582008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
9259
9260 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
9261
9262 * Makefile.in (GNUC): Remove support for gcc-1.x.
9263
92642008-02-10 Richard Stallman <rms@gnu.org>
9265
9266 * lisp.h (ASET): Use AREF, not ASLOT.
9267
92682008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
9269
9270 * lisp.h (ASET): Check bounds.
9271
92722008-02-10 Glenn Morris <rgm@gnu.org>
9273
9274 * buffer.c (mode-name): Doc fix.
9275
92762008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
9277
9278 * Makefile.in:
9279 * emacs.c:
9280 * gmalloc.c:
9281 * keyboard.c:
9282 * lisp.h:
9283 * m/ibm370aix.h:
9284 * process.c:
9285 * regex.c:
9286 * s/hpux.h:
9287 * sysdep.c:
9288 * sysselect.h:
9289 * systty.h:
9290 * unexec.c:
9291 * w32term.c:
9292 * xsmfns.c:
9293 * xterm.c: Remove code that deals with obsolete variables.
9294
9295 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
9296
9297 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
9298 nothing else needs it anymore.
9299
93002008-02-09 Eli Zaretskii <eliz@gnu.org>
9301
9302 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
9303 instead of unibyte_char_to_multibyte.
9304
93052008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
9306
9307 * s/gnu-linux.h: Remove commented out code.
9308
9309 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
9310
9311 * Makefile.in: Update what RMS says about using autoconf.
9312 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
9313 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
9314 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
9315 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
9316
93172008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
9318
9319 * keymap.c (Fkey_description): Move side effect outside of macro call.
9320
9321 * xfaces.c (Finternal_make_lisp_face):
9322 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
9323
9324 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
9325 (syms_of_fontset): Use ASET.
9326
9327 * fns.c (concat): Move side effect outside of macro call.
9328 (hash_clear): Use ASET.
9329
93302008-02-08 Richard Stallman <rms@gnu.org>
9331
9332 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
9333 If FORCE, and frame has a surrogate minibuffer for another frame,
9334 delete the other frame first.
9335
93362008-02-07 Timo Savola <timo.savola@iki.fi>
9337
9338 * xterm.c (x_detect_focus_change): Handle embed client message.
9339 (handle_one_xevent): Ditto.
9340 (handle_one_xevent): If embedded and we get a button press/release,
9341 request focus.
9342 (xembed_set_info, xembed_send_message): New functions.
9343 (x_make_frame_visible): Call xembed_set_info if embedded.
9344 (x_make_frame_invisible): Call xembed_set_info if embedded.
9345 (x_term_init): Initialize Xatom_XEMBED.
9346 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
9347 (x_iconify_frame): Ditto.
9348
9349 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
9350 (enum xembed_info, enum xembed_message, enum xembed_focus)
9351 (enum xembed_modifier, enum xembed_accelerator): New.
9352 (xembed_set_info, xembed_send_message): Declare.
9353 (FRAME_X_EMBEDDED_P): New.
9354
9355 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
9356 gtk_plug_new.
9357
9358 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
9359 window ID of a frame.
9360 (x_window): Reparent frame if embedded.
9361 (Fx_create_frame): Don't set border width if embedded.
9362
9363 * emacs.c (USAGE3): Add --parent-id.
9364 (standard_args): Ditto.
9365
93662008-02-07 Jan Djärv <jan.h.d@swipnet.se>
9367
9368 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
9369
93702008-02-07 Jim Meyering <meyering@redhat.com>
9371
9372 Use "do...while (0)", not "if (1)...else" in macro definitions.
9373 The latter provokes a warning from gcc about the empty else, when
9374 followed by ";". Also, without that trailing semicolon, it would
9375 silently swallow up any following statement.
9376 * syntax.h (SETUP_SYNTAX_TABLE)
9377 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
9378 * buffer.h (DECODE_POSITION): Likewise.
9379 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
9380 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
9381 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
9382 (FETCH_CHAR_ADVANCE): Likewise.
9383 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
9384
93852008-02-07 Jim Meyering <meyering@redhat.com>
9386
9387 * lread.c [lint]: Don't include <sys/inode.h>.
9388
93892008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
9390
9391 * xselect.c (x_handle_dnd_message):
9392 * xmenu.c (digest_single_submenu, xmenu_show):
9393 * xdisp.c (with_echo_area_buffer_unwind_data)
9394 (format_mode_line_unwind_data, unwind_format_mode_line)
9395 (display_menu_bar):
9396 * eval.c (Ffetch_bytecode):
9397 * doc.c (store_function_docstring):
9398 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
9399 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
9400 * buffer.c (add_overlay_mod_hooklist): Use ASET.
9401
94022008-02-07 Kenichi Handa <handa@m17n.org>
9403
9404 * ftxfont.c (ftxfont_open): Don't set
9405 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
9406
9407 * ftfont.c (ftfont_open): Fix previous change.
9408
94092008-02-06 Jason Rumney <jasonr@gnu.org>
9410
9411 * w32font.c (w32font_text_extents): Fill in lbearing metric.
9412 Use cached metrics for ASCII characters.
9413 (w32font_open_internal): Don't set font's owning_frame.
9414 Cache metrics for ASCII characters.
9415
9416 * w32font.h (struct w32font_info): Add ascii_metrics.
9417 Remove owning_frame.
9418
94192008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
9420
9421 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
9422 to negative value.
9423
9424 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
9425
9426 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
9427
9428 * charset.c (syms_of_charset): Set QCtest and Qeq.
9429
94302008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
9431
9432 * process.c (Fstart_process):
9433 * callproc.c (Fcall_process): Handle the case where
9434 Funhandled_file_name_directory returns nil.
9435
9436 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
9437 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
9438 * font.c (check_gstring): Use them and AREF to access the vector before
9439 we know it's really a gstring.
9440 (Ffont_shape_text): Fix typo.
46e722a9 9441 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
9442
9443 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
9444 Declare.
9445
9446 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
9447
94482008-02-05 Jason Rumney <jasonr@gnu.org>
9449
9450 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
9451 Set smallest_font_height and smallest_char_width in display info.
9452
94532008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
9454
9455 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
9456
94572008-02-05 Miles Bader <miles@gnu.org>
9458
9459 * xfaces.c (get_lface_attributes, merge_named_face)
9460 (lookup_named_face, lookup_derived_face, realize_named_face):
9461 Revert 2008-02-01 change by cyd@stupidchicken.com.
9462
94632008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
9464
9465 * fontset.c (Ffontset_info): Handle the case of inhibitting the
9466 fallback fonts.
9467 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
9468
94692008-02-04 Jason Rumney <jasonr@gnu.org>
9470
9471 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
9472 set full_name.
9473 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
9474
94752008-02-03 Jason Rumney <jasonr@gnu.org>
9476
9477 * makefile.w32-in (OBJ1): Include font.o here.
9478 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
9479
94802008-02-02 Jason Rumney <jasonr@gnu.org>
9481
9482 * makefile.w32-in (temacs): Bump EMHEAP to 21.
9483
94842008-02-01 Jason Rumney <jasonr@gnu.org>
9485
9486 * s/cygwin.h: Define VIRT_ADDR_VARIES.
9487
9488 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
9489
94902008-02-01 Andreas Schwab <schwab@suse.de>
9491
9492 * Makefile.in (shortlisp, lisp): Update for rename of
9493 ../lisp/language/myanmar.el.
9494
94952008-02-01 Chong Yidong <cyd@stupidchicken.com>
9496
9497 * xfaces.c (get_lface_attributes): Delete function.
9498 (merge_named_face, lookup_named_face, lookup_derived_face)
9499 (realize_named_face): Call lface_from_face_name directly, and use
9500 the fact that merge_face_vectors does not alter its FROM argument.
9501
95022008-02-01 Jason Rumney <jasonr@gnu.org>
9503
9504 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
9505 input in the default locale. Handle non-Unicode multibyte input.
9506
95072008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9508
9509 * fontset.c (reorder_font_vector): Exclude nil elements from the
9510 font group. Don't try multiple fonts.
9511 (fontset_font): Adjust for the above change.
9512 (Finternal_char_font): Return nil if the found font doesn't
9513 contain the character ch.
9514
9515 * Makefile.in (lisp, shortlisp): Add cham.el.
9516
95172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9518
9519 * font.h (FONTP): Make it return 1 also for a font-object.
9520
9521 * .gdbinit (xfontset): New function.
9522
9523 * font.c (font_find_for_lface): Check if the character C is
9524 supported or not only for the first font.
9525
9526 * fontset.c (reorder_font_vector): Fix typo.
9527 (fontset_find_font): Don't add a font-spec specifying a script.
9528 Use 0 (not Qt) for the indication of empty font-group. Change the
9529 format of RFONT-DEF. Return Qt if no font in the font-group
9530 support the character.
9531 (fontset_font): Adjust for the above change. If no font was
9532 found the character, remember that.
9533 (face_for_char): Adjust for the change of RFONT-DEF.
9534 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
9535 no font for the target.
9536 (Finternal_char_font): Adjust for the change of RFONT-DEF.
9537
95382008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9539
9540 * font.c (font_load_for_face): Handle the case that the font in
9541 face->lface is a string.
9542
95432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9544
9545 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
9546
95472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9548
9549 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
9550 Fix previous change. If the frame is not on a window system,
9551 signal an error.
9552
95532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9554
9555 * coding.c (decode_coding_object, encode_coding_object): Adjust
9556 marker positions after conversion.
9557
9558 * lisp.h (struct Lisp_Marker): New member need_adjustment.
9559
95602008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9561
9562 * font.c (font_find_for_lface): Fix the handling of the return
9563 value of font_has_char.
9564 (Ffont_shape_text): Fix previous change.
9565
9566 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
9567 (fontset_ref_and_range): Delete it.
9568 (fontset_find_font): Call char_table_ref_and_range instead of
9569 FONTSET_REF_AND_RANGE.
9570 (make_fontset): Don't setup font groups of Latin here.
9571 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
9572 (new_fontset_from_font): Make the specified font the default for
9573 all Latin characters.
9574
95752008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9576
9577 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
9578 is on a window system before accessing the fontset of the frame.
9579
95802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9581
9582 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
9583
9584 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
9585 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
9586
9587 * font.c (Ffont_shape_text): If the font driver doesn't have a
9588 shaper function, make zero-width glyphs to have at least one-pixel
9589 width. Fix setting of `to' field of glyphs.
9590
95912008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9592
9593 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
9594 glyphs.
9595
9596 * font.h (struct font_driver): Improve docstring of member `shape'.
9597
95982008-02-01 Kenichi Handa <handa@m17n.org>
9599
9600 * composite.c (syms_of_composite): Fix docstring of
9601 auto-composition-function.
9602
9603 * font.h (LGLYPH_SIZE): New macro.
9604
9605 * font.c (Ffont_fill_gstring): Stop filling when a character not
9606 supported by the font is found.
9607 (Ffont_shape_text): When a shape callback function returns nil,
9608 try at most two more times with larger gstring.
9609 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
9610
9611 * xdisp.c (handle_auto_composed_prop): Change the argument to
9612 auto-composition-function.
9613
9614 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
9615 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
9616 Lispy glyph and store it in the lgstring.
9617
9618 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
9619
9620 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
9621
96222008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9623
9624 * font.c (Ffont_shape_text): Avoid unnecessary composition.
9625
9626 * fontset.c (Vfont_encoding_charset_alist): New variable.
9627 (syms_of_fontset): DEFVAR it.
9628 (reorder_font_vector, fontset_find_font): Optimize for the case of
9629 no need of reordering.
9630 (face_for_char): Map the charset property by
9631 Vfont_encoding_charset_alist.
9632
96332008-02-01 Jason Rumney <jasonr@gnu.org>
9634
9635 * w32font.c (logfonts_match): Don't check adstyle here.
9636 (font_matches_spec): Check here against physical font instead.
9637 (add_font_entity_to_list): Avoid some substitutions.
9638
9639 * font.c (font_parse_fcname): Default weight and slant to normal.
9640 (font_score): Prefer normal fonts if weight or slant unspecified.
9641 (font_score) [WINDOWSNT]: Scale weight difference down to closer
9642 match freetype scores.
9643
96442008-02-01 Jason Rumney <jasonr@gnu.org>
9645
9646 * w32font.c (w32font_text_extents): Don't use the frame stored in the
9647 font, as it may have been deleted.
9648 (w32_enumfont_pattern_entity): Map generic family to adstyle using
9649 most common hyphenless variation.
9650 (logfonts_match): Check generic family.
9651 (font_matches_spec): Don't check generic family here.
9652 (fill_in_logfont): Set generic family based on adstyle.
9653
9654 * w32font.h (w32font_get_cache): Update declaration.
9655
96562008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9657
9658 * ftfont.c (ftfont_get_cache): Adjust the argument type.
9659
9660 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
9661 If none of the new drivers are available, call font_update_drivers
9662 with the old drivers.
9663
9664 * w32font.c (w32font_get_cache): Adjust the argument type.
9665
9666 * xfont.c (xfont_get_cache): Adjust the argument type.
9667
9668 * font.h (struct font_driver): Change argument type of get_cache.
9669
9670 * xftfont.c (xftfont_start_for_frame): Delete prototype.
9671
9672 * font.c (Ffont_get): Fix arguments to Fassoc.
9673 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
9674 (font_clear_cache): New function.
9675 (font_list_entities, font_matching_entity): Use font_get_cache.
9676 (font_update_drivers): Call font_clear_cache when finishing a driver.
9677
9678 * fontset.c (fontset_find_font): Fix previous change.
9679
96802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9681
9682 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
9683 dpyinfo->font_table.
9684 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
9685 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
9686
9687 * font.c (font_at): Handle the case that the arg C is negative.
9688 Handle the unibyte case.
9689 (Ffont_at): Call font_at with the arg C -1.
9690
9691 * xdisp.c (handle_auto_composed_prop): Don't get a character at
9692 the position here, and call font_at with the arg C -1.
9693 Don't check the range of the existing composition at the point.
9694
96952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9696
9697 * fontset.c (fontset_add): New args charset_id and family.
9698 Change caller.
9699 (load_font_get_repertory, fontset_find_font): Assume that
9700 font_spec is always a font-spec object.
9701 (Fset_fontset_font): Always store a font-spec object in a fontset.
9702
9703 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
9704 instead of get_property_and_range.
9705
97062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9707
9708 * xftfont.c (struct xftfont_info): Delete the member ft_face.
9709 (xftfont_open): Don't keep locking face.
9710 (xftfont_close): Don't unlock face.
9711 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
9712
9713 * fontset.c (fontset_find_font): Don't prefer a font of
9714 supplementary charset.
9715
97162008-02-01 Kenichi Handa <handa@m17n.org>
9717
9718 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
9719 script, langsys_tag to langsys, new member script.
9720 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 9721 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
9722 listing to the script specified in that property. Fix arg to
9723 OTF_check_features.
9724
97252008-02-01 Jason Rumney <jasonr@gnu.org>
9726
9727 * w32font.h: New file.
9728
9729 * w32font.c: Include it.
9730 (struct w32font_info): Add owning_frame field. Move to w32font.h.
9731 (w32font_open): Set owning_frame.
9732 (w32font_text_extents): Use owning_frame.
9733 (struct font_callback_data): Add opentype_only field.
9734 (add_font_entity_to_list): Use it to filter fonts.
9735 Don't check against full name.
9736 (w32font_list_internal): New function.
9737 (w32font_list): Use it.
9738 (w32font_match_internal): New function.
9739 (w32font_match): Use it.
9740 (w32font_open_internal): New function.
9741 (w32font_open): Use it.
9742 (w32font_get_cache, w32font_close, w32font_has_char)
9743 (w32font_encode_char, w32font_text_extents, w32font_draw):
9744 Make non-static.
9745
9746 * makefile.w32-in (w32font.o): Depend on w32font.h.
9747
97482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9749
9750 * charset.c (Fdefine_charset_internal): Record a supplementary
9751 charset at the tail of Vcharset_order_list.
9752
9753 * font.c (Ffont_shape_text): Fix the return value.
9754
9755 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
9756
9757 * xdisp.c (handle_auto_composed_prop): Fix previous change.
9758
97592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9760
9761 * ftfont.c (struct OpenTypeSpec): New struct.
9762 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
9763 (ftfont_get_open_type_spec): New function.
9764 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
9765
9766 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
9767
97682008-02-01 Jason Rumney <jasonr@gnu.org>
9769
9770 * w32font.c (add_font_entity_to_list): Compare only the beginning
9771 of full name.
9772
97732008-02-01 Kenichi Handa <handa@m17n.org>
9774
9775 * xdisp.c (handle_auto_composed_prop): Simplify the code.
9776 Never return HANDLED_RECOMPUTE_PROPS.
9777
97782008-02-01 Kenichi Handa <handa@m17n.org>
9779
9780 * font.c (font_gstring_produce): Delete it.
9781
9782 * composite.h (COMPOSITION_METHOD):
9783 Handle COMPOSITION_WITH_GLYPH_STRING.
9784
97852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9786
9787 * xfont.c (Qx): Delete.
9788 (syms_of_xfont): Don't initialize Qx.
9789
9790 * composite.h (enum composition_method):
9791 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
9792
97932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9794
9795 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
9796 (choose_face_font): Accept new form of font-spec.
9797
9798 * frame.h (font_driver_list): Declare it unconditionally.
9799 (struct frame): Define members font_driver_list and font_data_list
9800 unconditionally.
9801
9802 * fontset.c: Include "font.h" unconditionally.
9803 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
9804 (Fset_fontset_font): Accept a font-spec object.
9805
9806 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
9807 PIXEL_SIZE part a wild card.
9808
9809 * dispextern.h (struct glyph_string): Define members clip and
9810 num_clips unconditionally.
9811 (struct face): Define members font_info and extra unconditionally.
9812
9813 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
9814 ftfont_info only when HAVE_LIBOTF is defined.
9815
98162008-02-01 Andreas Schwab <schwab@suse.de>
9817
9818 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
9819 and end.
9820
98212008-02-01 Jason Rumney <jasonr@gnu.org>
9822
9823 * w32font.c (w32font_driver): Add new fields.
9824
98252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9826
9827 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
9828 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
9829 (LIBES): Add @M17N_FLT_CFLAGS@.
9830
9831 * composite.c (compose_text): Don't treat the new style
9832 composition specially.
9833
9834 * emacs.c (main): Call syms_of_font unconditionally.
9835
9836 * font.h (FONT_ENTITY_NOT_LOADABLE)
9837 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
9838 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
9839 (struct font_driver): New member shape.
9840 (font_registry_charsets): Extern it.
9841 (font_find_for_lface, font_prepare_composition): Adjust prototype.
9842 (font_otf_capability, font_drive_otf): Delete their externs.
9843
9844 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
9845 (font_charset_alist, font_registry_charsets): Move from xfont.c
9846 and rename.
9847 (font_prop_validate_otf): New function.
9848 (font_property_table): Register it for QCotf.
9849 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
9850 (font_drive_otf): Delete.
9851 (font_prepare_composition): New arg F. Adjust for the change of
9852 lispy gstring.
9853 (font_find_for_lface): New arg C.
9854 (font_load_for_face): Adjust for the change of font_find_for_lface.
9855 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
9856 lispy gstring.
9857 (Ffont_shape_text): New function.
9858 (Fopen_font): If the font size is not given, use 12-pixel.
9859 (Ffont_at): New arg STRING.
9860 (syms_of_font): Initalize font_charset_alist.
9861 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
9862 conditionally.
9863
9864 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
9865 fonts of the same font-spec. Change the format of RFONT-DEF.
9866 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
9867 Adjust for the change of RFONT-DEF.
9868 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
9869
9870 * ftfont.h: New file.
9871
9872 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
9873 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
9874 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
9875 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
9876 font_otf_capability and font_drive_otf, set ftfont_shape.
9877 (ftfont_list): Adjust for the change of :otf property value.
9878 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
9879 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
9880 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
9881 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
9882 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
9883 (otf_gstring, gstring, m17n_flt_initialized): New variables.
9884
9885 * w32term.c (x_draw_composite_glyph_string_foreground):
9886 Adjust for the change of lispy gstring.
9887
9888 * xdisp.c (handle_composition_prop): Adjust for the change of
9889 lispy gstring. Call a function for auto-composition with the
9890 third arg it->window.
9891 (fill_composite_glyph_string): Adjust for the change of lispy string.
9892 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
9893
9894 * xfaces.c (set_font_frame_param): Adjust for the change of
9895 font_find_for_lface.
9896
9897 * xfont.c (x_font_charset_alist): Move to font.c and rename.
9898 (xfont_registry_charsets): Likewise. Change caller.
9899 (syms_of_xfont): Don't handle x_font_charset_alist.
9900
9901 * xftfont.c: Include "ftfont.h".
9902 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
9903 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
9904 (xftfont_close) [HAVE_LIBOTF]: Close otf.
9905 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
9906 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
9907 Set xftfont_driver.shape to xftfont_shape.
9908
9909 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
9910 the change of lispy gstring.
9911
99122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9913
9914 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
9915
99162008-02-01 Jason Rumney <jasonr@gnu.org>
9917
9918 * w32font.c (w32font_draw): Fill background manually.
9919
99202008-02-01 Jason Rumney <jasonr@gnu.org>
9921
9922 * font.c (Qfontp): Remove unused symbol.
9923 (QCantialias): New symbol.
9924 (syms_of_font): Define it.
9925 (font_property_table): Set a validator for QCantialias.
9926
9927 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
9928 Define if not already.
9929 (QCfamily): Share with xfaces.c.
9930 (Qstandard, Qsubpixel, Qnatural): New symbols.
9931 (syms_of_w32font): Define them. Don't define QCfamily here.
9932 (w32_antialias_type, lispy_antialias_type): New functions.
9933 (w32_enumfont_pattern_entity): New arg requested_font.
9934 Set antialias parameter if non-default was requested.
9935 (fill_in_logfont): Fill in lfQuality if :antialias specified.
9936
99372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9938
9939 * lread.c (read1): Undo the previous change.
9940
99412008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
9942
9943 * frame.c (Fdelete_frame): Call font_update_drivers only when
9944 USE_FONT_BACKEND is defined.
9945
99462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9947
9948 * font.h (struct font_bitmap): New member bits_per_pixel.
9949 (struct font_driver): New members start_for_frame and end_for_frame.
9950 (struct font_data_list): New struct.
9951 (font_put_frame_data, font_get_frame_data): Extern them.
9952
9953 * frame.h (struct frame): New member font_data_list.
9954
9955 * font.c (font_update_drivers): Call driver->start_for_frame and
9956 driver->end_for_frame at proper timings.
9957 (font_put_frame_data, font_get_frame_data): New functions.
9958 (Ffont_spec): Add usage in the docstring.
9959
9960 * frame.c (make_frame): Initialize f->font_data_list to NULL.
9961 (Fdelete_frame): Call font_update_drivers.
9962
9963 * xftfont.c (struct xftface_info): Delete the member xft_draw.
9964 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
9965 (xftfont_get_xft_draw): New function.
9966 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
9967 (xftfont_end_for_frame): New function.
9968 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
9969
9970 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
9971 Change argument. Cache GCs in the per-frame data.
9972 (struct ftxfont_frame_data): New struct.
9973 (ftxfont_draw_bitmap): New arg gc_fore and flush.
9974 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
9975 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
9976 (ftxfont_end_for_frame): New function.
9977 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
9978
9979 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
9980
99812008-02-01 Kenichi Handa <handa@m17n.org>
9982
9983 * xselect.c (Vselection_coding_system)
9984 (Vnext_selection_coding_system): Delete them.
9985 (syms_of_xselect): Don't declare selection-coding-system and
9986 next-selection-coding-system. They are declared in select.el.
9987
99882008-02-01 Jason Rumney <jasonr@gnu.org>
9989
9990 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
9991
9992 * w32fns.c: Include imm.h.
9993 (get_composition_string_fn, get_ime_context_fn): New optional
9994 system functions.
9995 (globals_of_w32fns): Load them from imm32.dll.
9996 (ignore_ime_char): New flag.
9997 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
9998 WM_IME_ENDCOMPOSITION messages.
9999
10000 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
10001 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
10002
100032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10004
10005 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
10006 (READCHAR_REPORT_MULTIBYTE): New macro.
10007 (readchar): New 2nd arg MULTIBYTE.
10008 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
10009 Make symbol's name multibyte according to the multibyteness of the
10010 source.
10011
100122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10013
10014 * xfaces.c (face_for_overlay_string): Call lookup_face with
10015 correct arguments (fix of synching with the trunk).
10016
100172008-02-01 Kenichi Handa <handa@m17n.org>
10018
10019 * font.c (font_prop_validate_symbol, font_prop_validate_style)
10020 (font_prop_validate_non_neg, font_prop_validate_spacing):
10021 Delete argument prop_index.
10022 (font_property_table): Change arguments to validater. Change Callers.
10023 (font_lispy_object): Delete.
10024 (font_at): Use font_find_object instead fo font_lispy_object.
10025
100262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10027
10028 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
10029 and file names.
10030
100312008-02-01 Jason Rumney <jasonr@gnu.org>
10032
10033 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
10034 (font_matches_spec): Remove debug output.
10035 (add_font_entity_to_list): Avoid using substituted fonts.
10036
100372008-02-01 Jason Rumney <jasonr@gnu.org>
10038
10039 * doc.c (Fsnarf_documentation):
10040 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
10041
100422008-02-01 Miles Bader <miles@gnu.org>
10043
10044 * dispextern.h (struct glyph_row): Only define "clip" field if
10045 HAVE_WINDOW_SYSTEM is defined.
10046
100472008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
10048
10049 Fix up multi-tty merge.
10050
10051 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
10052 and indentation.
10053
10054 * xfaces.c (free_realized_face, clear_face_gcs):
10055 Include font_done_for_face in the input_blocked section, just in case.
10056
10057 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
10058 (get_char_face_and_encoding): Undo last change and remove the *other*
10059 duplicate definition (i.e. keep the one that's better scoped and that
10060 includes code for the font-backend).
10061
10062 * terminal.c (create_terminal): Default keyboard_coding to
10063 `no-conversion' and terminal_coding to `undecided'.
10064
10065 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
10066
10067 * fontset.c (free_realized_fontsets): Check that the table entry does
10068 contain a fontset before trying to compare it to `base'.
10069
10070 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
10071 syms_of_charset, and syms_of_coding earlier because init_window_once
10072 now needs Vcoding_system_hash_table to be setup.
10073
10074 * coding.h (default_buffer_file_coding): Remove.
10075
10076 * coding.c (default_buffer_file_coding): Remove.
10077 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
10078 than ->symbol, and use the terminal-local coding system.
10079 (syms_of_coding): Don't setup the coding-systems that are not
10080 terminal-local.
10081 (Fdefine_coding_system_internal): Use XCAR/XCDR.
10082
10083 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
10084 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
10085
10086 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
10087 in chartab.c and were re-added here by mistake.
10088 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
10089
10090 * doc.c (Fsnarf_documentation):
10091 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
10092 src to etc.
10093
10094 * ChangeLog.10: Add mistakenly removed entry.
10095
100962008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
10097
10098 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
10099
101002008-02-01 Miles Bader <miles@gnu.org>
10101
10102 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
10103 Add extra args to FACE_FOR_CHAR.
10104
101052008-02-01 Kenichi Handa <handa@m17n.org>
10106
10107 * keymap.c (where_is_internal_1): If key is a cons, store the copy
10108 in sequence.
10109
10110 * chartab.c (map_sub_char_table, map_char_table): If the range
10111 contains just one character, call the function with that character
10112 even if the depth is not 3.
10113
101142008-02-01 Jason Rumney <jasonr@gnu.org>
10115
10116 * w32font.c (w32font_text_extents): Calculate metrics for the
10117 whole string.
10118
101192008-02-01 Jason Rumney <jasonr@gnu.org>
10120
10121 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
10122
101232008-02-01 Jason Rumney <jasonr@gnu.org>
10124
10125 * w32term.c (x_set_glyph_string_clipping): Use
10126 get_glyph_string_clip_rects.
10127 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
10128 Adjust for the change of struct glyph_string.
10129
10130 * w32font.c (w32font_draw): Do clipping here.
10131
101322008-02-01 Kenichi Handa <handa@m17n.org>
10133
10134 * xftfont.c (xftfont_draw): Adjust for the change of struct
10135 glyph_string.
10136
10137 * xterm.c (x_set_glyph_string_clipping): Use
10138 get_glyph_string_clip_rects.
10139 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
10140 Adjust for the change of struct glyph_string.
10141
10142 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
10143 the resulting clip(s}.
10144 (expose_overlaps): Add arg r. Change callers. Set it to
10145 row->clip temporarily.
10146 (expose_window): Redraw rows overlapping the exposed area.
10147
10148 * dispextern.h (struct glyph_row): New member clip.
10149 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
10150 clip_height, new member clip, and num_clips.
10151
101522008-02-01 Kenichi Handa <handa@m17n.org>
10153
10154 * data.c (Fchar_or_string_p): Fix docstring.
10155
101562008-02-01 Kenichi Handa <handa@m17n.org>
10157
10158 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
10159 create a temporary XftDraw object.
10160
101612008-02-01 Kenichi Handa <handa@m17n.org>
10162
10163 * font.c (Ffontp): Fix docstring.
10164
10165 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
10166 strong evidence of ISO-2022.
10167
101682008-02-01 Kenichi Handa <handa@m17n.org>
10169
10170 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
10171 SYNTAX_ENTRY_FOLLOW_PARENT.
10172
101732008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
10174
10175 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
10176 its type.
10177 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
10178 Update to the new type of weak_hash_tables and next_weak.
10179
10180 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
10181 a plain C pointer to Lisp_Hash_Table.
10182
10183 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
10184 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
10185 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
10186 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
10187 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
10188 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
10189 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
10190 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
10191 (GC_EQ): Remove since they've been identical to their non-GC_
10192 alter-egos ever since the markbit was eradicated.
10193
10194 * alloc.c:
10195 * buffer.c:
10196 * buffer.h:
10197 * data.c:
10198 * fileio.c:
10199 * filelock.c:
10200 * fns.c:
10201 * frame.h:
10202 * lisp.h:
10203 * macterm.c:
10204 * print.c:
10205 * process.c:
10206 * w32fns.c:
10207 * w32menu.c:
10208 * w32term.c:
10209 * xfns.c:
10210 * xmenu.c:
10211 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
10212
102132008-02-01 Kenichi Handa <handa@m17n.org>
10214
10215 * chartab.c (map_sub_char_table): Make it work for the top-level
10216 char-table. Fix handling of parent char-table.
10217 (map_char_table): Adjust for the above change.
10218
102192008-02-01 Jason Rumney <jasonr@gnu.org>
10220
10221 * w32font.c (Qgdi): Rename from Qw32.
10222
102232008-02-01 Jason Rumney <jasonr@gnu.org>
10224
10225 * w32bdf.c (get_quoted_string): Make function static.
10226
102272008-02-01 Kenichi Handa <handa@m17n.org>
10228
10229 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
10230 bigger ascent and descent than those of the font, use them as
10231 font's ascent and descent.
10232
102332008-02-01 Kenichi Handa <handa@m17n.org>
10234
10235 * Makefile.in (${lispsource}international/charprop.el): Move this
10236 target within "#ifdef HAVE_UNIDATA" and "#endif".
10237
102382008-02-01 Kenichi Handa <handa@m17n.org>
10239
10240 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
10241 (shortlisp): Add ../lisp/language/tai-viet.el.
10242
102432008-02-01 Ulrich Mueller <ulm@gentoo.org>
10244
10245 * Makefile.in (${lispsource}international/charprop.el): Depend on
10246 temacs${EXEEXT}.
10247
102482008-02-01 Jason Rumney <jasonr@gnu.org>
10249
10250 * w32font.c (w32font_close): Delete the GDI font object.
10251
10252 * w32menu.c: Include character.h.
10253
10254 * w32proc.c: Likewise.
10255
10256 * w32select.c: Likewise.
10257
10258 * makefile.w32-in (w32proc.o): Depend on character.h.
10259
102602008-02-01 Jason Rumney <jasonr@gnu.org>
10261
10262 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
10263
10264 * w32menu.c (syms_of_w32menu): Likewise.
10265
10266 * w32proc.c (syms_of_ntproc): Likewise.
10267
10268 * w32select.c (syms_of_w32select): Likewise.
10269
10270 * w32term.c (syms_of_w32term): Likewise.
10271
102722008-02-01 Jason Rumney <jasonr@gnu.org>
10273
10274 * w32font.c (w32font_draw): Delete brush after using it.
10275
102762008-02-01 Jason Rumney <jasonr@gnu.org>
10277
10278 * w32font.c (w32font_open): Don't set font_idx.
10279 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
10280 to font settings.
10281 (w32font_draw): Fill background explicitly.
10282
102832008-02-01 Jason Rumney <jasonr@gnu.org>
10284
10285 * w32term.c (w32_initialize): Don't call w32font_initialize.
10286
10287 * w32font.c (w32font_info): Remove subranges.
10288 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
10289 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
10290 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
10291 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
10292 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
10293 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
10294 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
10295 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
10296 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
10297 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
10298 New symbols.
10299 (font_callback_data): New struct.
10300 (w32font_list, w32font_match): Use it.
10301 (w32font_open): Don't populate subranges.
10302 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
10303 (w32font_encode_char): Always return unicode code-point as-is.
10304 (w32font_text_extents): Supply a transformation matrix to
10305 GetGlyphOutline. Never look up by glyph index. Avoid looping
10306 twice. Use unicode version of GetTexExtentPoint32 instead of
10307 glyph index version.
10308 (set_fonts_frame): Remove.
10309 (w32_enumfont_pattern_entity): Add frame parameter, use it to
10310 set frame parameter. Use backward compatible fake foundries.
10311 Save generic family in extra slot under QCfamily. Make width slot
10312 constant. Save QCspacing value. Save list of scripts instead of
10313 binary subranges.
10314 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
10315 (add_font_entity_to_list): Use font_callback_data struct. Filter
10316 unwanted fonts.
10317 (add_one_font_entity_to_list): Use font_callback_data struct.
10318 (w32_registry): Default to iso10646_1.
10319 (fill_in_logfont): Use dpi from extra slot. Don't bother with
10320 string font registries. Don't fill in font name if it is a generic
10321 family name, fill family instead. Use spacing, family and script
10322 extra info to fill pitch, family and charset fields.
10323 (list_all_matching_fonts): Use font_callback_data struct.
10324 (unicode_range_for_char): Remove.
10325 (font_supported_scripts): New function.
10326 (w32font_initialize): Remove.
10327 (syms_of_w32font): Update which symbols are defined.
10328
103292008-02-01 Jason Rumney <jasonr@gnu.org>
10330
10331 * font.c (font_pixel_size): Reverse assq_no_quit args.
10332
10333 * w32term.h (FONT_WIDTH): Report max width, not average.
10334 (FONT_MAX_WIDTH): Remove.
10335 (FONT_AVG_WIDTH): New macro.
10336
10337 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
10338 redefinition of FONT_WIDTH.
10339
10340 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
10341 (w32_cache_char_metrics): Use FONT_WIDTH.
10342
10343 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
10344
103452008-02-01 Jason Rumney <jasonr@gnu.org>
10346
10347 * w32font.c (w32font_open): Make lfHeight negative.
10348
10349 * w32fns.c (x_default_font_parameter): Use new style font name.
10350 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
10351
103522008-02-01 Jason Rumney <jasonr@gnu.org>
10353
10354 * w32font.c (QCsubranges): New symbol.
10355 (w32font_open, w32font_has_char): Get subranges from subproperty
10356 of extra.
10357 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
10358 (syms_of_w32font): Define :subranges symbol.
10359
10360 * font.c (font_put_extra): Expose externally.
10361
10362 * font.h (font_put_extra): Move declaration from font.c.
10363
10364 * font.c (Ffont_get): Use font driver to determine otf capability.
10365 (adjust_anchor): Check if driver defines anchor_point before using.
10366
10367 * w32font.c (w32font_open): Handle size, height and pixel_size better.
10368 (w32font_draw): Use options.
10369 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
10370 Fix detection of truetype fonts.
10371 (registry_to_w32_charset): Handle charsets other than iso8859-1
10372 expressed as lisp symbols.
10373 (w32_registry): Express charset as lisp symbol.
10374 (fill_in_logfont): Reverse pixel and point height logic.
10375 Don't set width here. Set quality to default.
10376
10377 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
10378 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
10379
10380 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
10381 Remove redundant loop and allocation.
10382
10383 * makefile.w32-in (font.o, w32font.o): New objects.
10384 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
10385 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
10386
10387 * xdisp.c (fill_composite_glyph_string): Make the first arg to
10388 STORE_XCHARB a valid l-value.
10389
10390 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
10391 calculations for non-Truetype fonts.
10392 (x_draw_glyph_string): Sync with xterm.c.
10393 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
10394 Remove redundant code.
10395 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
10396
10397 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
10398 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
10399
10400 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
10401 (x_to_w32_charset, w32_to_x_charset): Expose externally.
10402
10403 * w32font.c: New file for w32 font backend.
10404
104052008-02-01 Kenichi Handa <handa@m17n.org>
10406
10407 * term.c: Don't include "buffer.h" twice.
10408
104092008-02-01 Kenichi Handa <handa@m17n.org>
10410
10411 * character.c (Funibyte_string): New function.
10412 (syms_of_character): Defsubr it.
10413
104142008-02-01 Jason Rumney <jasonr@gnu.org>
10415
10416 * w32term.c [USE_FONT_BACKEND]:
10417 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
10418 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
10419 (x_draw_glyph_string, x_draw_glyph_string_foreground)
10420 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
10421 (x_free_frame_resources): Sync with xterm.c.
10422
104232008-02-01 Andreas Schwab <schwab@suse.de>
10424
10425 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
10426 char-table size.
10427
104282008-02-01 Kenichi Handa <handa@m17n.org>
10429
10430 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
10431
104322008-02-01 Kenichi Handa <handa@m17n.org>
10433
10434 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
10435 font_otf_gpos, add font_drive_otf.
10436
10437 * fontset.c (fontset_find_font): Pay attention to font size
10438 specified for a font.
10439 (reorder_font_vector): Check contents of font_def.
10440
10441 * font.c (struct otf_list): Delete it.
10442 (otf_list): Make it a lisp variable.
10443 (otf_open): Use lispy otf_list.
10444 (generate_otf_features): Rename from parse_gsub_gpos_spec.
10445 (check_otf_features): New function.
10446 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
10447 New functions.
10448 (font_drive_otf): New function merging font_otf_gsub and
10449 font_otf_gpos.
10450 (font_open_for_lface): New arg spec. Change argument order.
10451 (font_load_for_face): Adjust for the change of font_open_for_lface.
10452 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
10453 Ffont_otf_gpos.
10454 (syms_of_font): Staticpro otf_list. Delete defsubr of
10455 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
10456
10457 * xfaces.c (set_font_frame_param): Adjust for the change of
10458 font_open_for_lface.
10459
10460 * font.h (font_open_for_lface): Adjust prototype.
10461 (struct font_driver): Delete members otf_gsub and otf_gpos, add
10462 member otf_drive.
10463 (font_otf_gsub, font_otf_gpos): Delete externs.
10464 (font_drive_otf): Extern it.
10465
104662008-02-01 Kenichi Handa <handa@m17n.org>
10467
10468 * font.c (font_at): If the window W is not on a window system,
10469 return Qnil.
10470
10471 * coding.c (produce_chars, encode_coding): Don't call
10472 insert_from_gap if no characters to produce.
10473
104742008-02-01 Kenichi Handa <handa@m17n.org>
10475
10476 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
10477 Fclear_face_cache.
10478
10479 * xfaces.c (face_for_font): Check also face->font==font->font.font.
10480
104812008-02-01 Miles Bader <miles@gnu.org>
10482
10483 * emacs.c (main): Change default value of `enable_font_backend' to 1.
10484 Parse "--disable-font-backend" option.
10485 (standard_args): Add "--disable-font-backend" option.
10486
104872008-02-01 Kenichi Handa <handa@m17n.org>
10488
10489 * fontset.c (fontset_find_font): New function.
10490 (fontset_font): Use fontset_find_font.
10491 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
10492 Register the specified font for all Latin characters.
10493 (new_fontset_from_font): Register the specified font for all Latin
10494 characters.
10495 (dump_fontset): For a realized fontset, include the base fontset
10496 name in the returned vector.
10497
104982008-02-01 Kenichi Handa <handa@m17n.org>
10499
10500 * character.h (CHAR_STRING): Cast C to unsigned on calling
10501 char_string.
10502
10503 * character.c (char_string): Type of arg C changed to unsigned.
10504 Signal an error if C is an invalid character code.
10505
10506 * editfns.c (general_insert_function, Fchar_to_string):
10507 Use CHARACTERP, not INTEGERP.
10508
105092008-02-01 Kenichi Handa <handa@m17n.org>
10510
10511 * character.h (MIN_MULTIBYTE_LEADING_CODE)
10512 (MAX_MULTIBYTE_LEADING_CODE): New macros.
10513
10514 * regex.c (analyse_first): Fix for multibyte characters in "case
10515 charset:" and "case categoryspec:".
10516
105172008-02-01 Andreas Schwab <schwab@suse.de>
10518
10519 * Makefile.in (LIBES): Move standard libraries to the end.
10520
105212008-02-01 Kenichi Handa <handa@m17n.org>
10522
10523 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
10524 nonzero, don't shrink the buffer nextb.
10525
10526 * buffer.h (struct buffer_text): New member inhibit_shrinking.
10527
10528 * coding.c (coding_alloc_by_making_gap): New arg offset.
10529 (alloc_destination): Call coding_alloc_by_making_gap with the arg
10530 offset.
10531 (decode_coding_iso_2022): Update coding->safe_charsets.
10532 (decode_coding_gap): Temporarily set
10533 current_buffer->text->inhibit_shrinking to 1.
10534
105352008-02-01 Kenichi Handa <handa@m17n.org>
10536
10537 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
10538 indexing into elements of s->cmp and s->char2b.
10539
105402008-02-01 Juanma Barranquero <lekktu@gmail.com>
10541
10542 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
10543
105442008-02-01 Kenichi Handa <handa@m17n.org>
10545
10546 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
10547 target_multibyte instead of multibyte.
10548 (re_match_2_internal): Call bcmp_translate with target_multibyte.
10549 (bcmp_translate): Change the argument name from multibyte to
10550 target_multibyte.
10551
105522008-02-01 Kenichi Handa <handa@m17n.org>
10553
10554 These changes are to compile a regexp into a pattern that can be
10555 used both for multibyte and unibyte targets.
10556
10557 * Makefile.in (search.o): Depend on charset.h.
10558
10559 * character.c (multibyte_char_to_unibyte_safe): New function.
10560
10561 * search.c: Include "charset.h".
10562 (compile_pattern_1): Delete argument multibyte. Don't set
10563 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
10564 (compile_pattern): Don't compare cp->buf.target_multibyte.
10565 Compare cp->buf.charset_unibyte.
10566 (compile_pattern): Set cp->buf.target_multibyte.
10567
10568 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
10569
10570 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
10571
10572 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
10573 multibyte. Change callers.
10574 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
10575 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
10576 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
10577 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
10578 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
10579 (regex_compile): Make the compiled pattern usable both for
10580 multibyte and unibyte targets.
10581 (analyse_first): Make the fastmap usable both for multibyte and
10582 unibyte targets.
10583 (TRANSLATE_VIA_MULTIBYTE): Delete.
10584 (re_match_2_internal): Pay attention to the case that the
10585 multibyteness of bufp and target may be different.
10586
105872008-02-01 Kenichi Handa <handa@m17n.org>
10588
10589 * xdisp.c (x_produce_glyphs): When a font is not found, make the
10590 empty box occupy at least one column width.
10591
105922008-02-01 Miles Bader <miles@gnu.org>
10593
10594 * Makefile.in: Remove redundant HAVE_XFT clause.
10595
105962008-02-01 Kenichi Handa <handa@m17n.org>
10597
10598 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
10599
106002008-02-01 Kenichi Handa <handa@m17n.org>
10601
10602 * fontset.c (Finternal_char_font): Fix for the case of POSITION
10603 being nil.
10604
106052008-02-01 Kenichi Handa <handa@m17n.org>
10606
10607 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
10608
106092008-02-01 Kenichi Handa <handa@m17n.org>
10610
10611 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
10612
106132008-02-01 Kenichi Handa <handa@m17n.org>
10614
10615 * search.c (simple_search): Fix previous change.
10616
106172008-02-01 Kenichi Handa <handa@m17n.org>
10618
10619 * xftfont.c (ftfont_font_format): Extern declaration.
10620
10621 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
10622
10623 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
10624 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
10625
10626 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
10627 (ftfont_font_format): Fix previous change.
10628
10629 * font.h (Ffont_xlfd_name): EXFUN it.
10630
10631 * font.c (font_parse_xlfd): Fix the array size of `f'.
10632 (register_font_driver): Use EQ to compare driver->type.
10633
10634 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
10635 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
10636 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
10637
106382008-02-01 Kenichi Handa <handa@m17n.org>
10639
10640 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
10641 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
10642
106432008-02-01 Kenichi Handa <handa@m17n.org>
10644
10645 * xfont.c (xfont_open): Set font->format.
10646
10647 * xftfont.c (xftfont_open): Set font->format.
10648
10649 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
10650 (ftfont_list): Include FC_FONTFORMAT in FcObject.
10651 (ftfont_open): Set font->format.
10652 (ftfont_font_format): New function.
10653
10654 * font.h (struct font): New member format.
10655
10656 * font.c (Qopentype): New variable.
10657 (syms_of_font): Defsym it.
10658 (Fquery_font): Change the format of the last element of the return
10659 value.
10660
106612008-02-01 Kenichi Handa <handa@m17n.org>
10662
10663 * xfns.c (xic_create_xfontset): Try the default fontset name as a
10664 last resort.
10665
106662008-02-01 Kenichi Handa <handa@m17n.org>
10667
10668 * coding.c (detect_coding_charset): Fix detection of multi-byte
10669 charset.
10670
106712008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
10672
10673 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
10674
106752008-02-01 Kenichi Handa <handa@m17n.org>
10676
10677 * xdisp.c (get_next_display_element): Set it->face_id for the
10678 first component of a composition.
10679 (x_produce_glyphs): Check if the font is changed or not for composition.
10680
106812008-02-01 Kenichi Handa <handa@m17n.org>
10682
10683 * fontset.c (Qlatin): New variable.
10684 (syms_of_fontset): Define it as a lisp symbol.
10685 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
10686
106872008-02-01 Kenichi Handa <handa@m17n.org>
10688
10689 * font.c (font_unparse_fcname): Pay attention to the case that
10690 some of font property is a null string.
10691
106922008-02-01 Kenichi Handa <handa@m17n.org>
10693
10694 * term.c: Include "composite.h".
10695 (encode_terminal_code): Output all components of composition.
10696 Check the size of encode_terminal_src.
10697 (produce_glyphs): For composition, call produce_composite_glyph.
10698 (append_composite_glyph, produce_composite_glyph): New functions.
10699
10700 * xdisp.c (x_produce_glyphs): In handling composition, if a font
10701 is not found, get font_info from the current ascii face.
10702
107032008-02-01 Kenichi Handa <handa@m17n.org>
10704
10705 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
10706 buffer-file-name to Qnil before calling insert_from_buffer.
10707
10708 * font.c (font_unparse_fcname): Pay attention to the case that
10709 foundry is a null string.
10710
107112008-02-01 Kenichi Handa <handa@m17n.org>
10712
10713 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
10714
10715 * font.c (Qunicode_sip): New variable.
10716 (syms_of_font): Declare it as a Lisp symbol.
10717
10718 * font.h (Qunicode_sip): Extern it.
10719
107202008-02-01 Kenichi Handa <handa@m17n.org>
10721
10722 * composite.c (get_composition_id): Pay attention to TAB component.
10723
10724 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
10725 TAB. Adjust for the change of s->char2b which always points to
10726 the first element of allocated memory.
10727
10728 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
10729
10730 * xdisp.c (handle_composition_prop): Set it->c to the first
10731 non-TAB component.
10732 (fill_composite_glyph_string): Change argument.
10733 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
10734 (x_produce_glyphs): Fix handling of left/right padding.
10735
107362008-02-01 Kenichi Handa <handa@m17n.org>
10737
10738 * coding.c (detect_coding_system): Fix for handling off
10739 inhibit_iso_escape_detection. Fix for the case that no coding
10740 system is defined for a specific coding category.
10741
107422008-02-01 Kenichi Handa <handa@m17n.org>
10743
10744 * font.c (font_matching_entity): Delete unused local var.
10745
10746 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
10747 opening a font.
10748
10749 * fileio.c (Finsert_file_contents): On recovering a file, assume
10750 Unix-like eol.
10751 (choose_write_coding_system): On auto-saving a file, force
10752 Unix-like eol.
10753
10754 * coding.c (setup_coding_system): Fix setting of
10755 coding->common_flags based on eol_type.
10756 (coding_inherit_eol_type): If PARENT is not nil, be sure to
10757 inherit from it.
10758
107592008-02-01 Kenichi Handa <handa@m17n.org>
10760
10761 * alloc.c (NSTATICS): Increas to 0x600.
10762
107632008-02-01 Kenichi Handa <handa@m17n.org>
10764
10765 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
10766 (ftfont_list): Don't check :name property.
10767 (ftfont_match): New function.
10768 (ftfont_pattern_entity): If the pattern doesn't contain
10769 FC_SPACING, don't assume FC_MONO.
10770
10771 * font.h (struct font_driver): New member `match'.
10772 (font_update_drivers): Adjust prototype.
10773
10774 * font.c (font_parse_fcname, font_parse_name): Don't change :name
10775 property of FONT.
10776 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
10777 them unconditionally.
10778 (font_matching_entity): New function.
10779 (font_open_by_name): Try font_matching_entity if exact match is
10780 not found.
10781 (font_update_drivers): Delete the arg FONT. Return a list of
10782 actually used backends. Don't free faces, font caches here.
10783 Don't store data in frame parameters. Don't call x_set_font.
10784 (Ffont_spec): Store :name property as is.
10785 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
10786 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
10787 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
10788 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
10789 Call font->driver->otf_gsub instead of font_otf_gsub.
10790
10791 * frame.c (x_set_font_backend): Do more works that were done in
10792 font_update_drivers before.
10793
10794 * xfont.c (xfont_match): New function.
10795 (xfont_driver): Set xfont_driver.match to xfont_match.
10796 (xfont_draw): Set font in GC if necessary.
10797
10798 * ftxfont.c (ftxfont_match): New function.
10799 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
10800
10801 * xftfont.c (xftfont_match): New function.
10802 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
10803
108042008-02-01 Kenichi Handa <handa@m17n.org>
10805
10806 * font.h (struct font): New member scalable.
10807 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
10808 (font_otf_gsub): Adjust prototype.
10809
10810 * font.c (font_otf_capability): Fix handling of the default langsys.
10811 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
10812 Check the contents of SPEC.
10813 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
10814 (check_gstring): New function.
10815 (REPLACEMENT_CHARACTER): New macro.
10816 (font_otf_gsub): New arg alternate_subst. Be sure to set all
10817 glyph codes of GSTRING.
10818 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
10819 (font_prepare_composition): Set cmp->glyph_len.
10820 (font_open_entity): Set font->scalable.
10821 (Ffont_get): Handle :otf property.
10822 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
10823 functions.
10824 (Fquery_font): Use font->font.full_name.
10825 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
10826 Sfont_otf_alternates.
10827
10828 * ftfont.c (ftfont_open): Set font->font.full_name and
10829 font->font.name properly. Fix calculation of font->font.height
10830 and font->min_width.
10831
10832 * ftxfont.c (ftxfont_create_gcs): New function.
10833 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
10834 (ftxfont_draw_backgrond): Fix filling region.
10835 (ftxfont_default_fid): New function.
10836 (ftxfont_open): Set xfont->fid to the return value of
10837 ftxfont_default_fid.
10838 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
10839 (ftxfont_done_face): Free only GCs that are created by
10840 ftxfont_create_gcs.
10841 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
10842
10843 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
10844 Clip to src->width, etc (not src->clip_XXX).
10845
10846 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
10847 FontBackend frame parameter.
10848
108492008-02-01 Kenichi Handa <handa@m17n.org>
10850
10851 * font.h (struct font_driver_list): New member `on'.
10852 (Fclear_font_cache): EXFUN it.
10853 (font_update_drivers): Extern it.
10854
10855 * font.c (font_unparse_fcname): Fix typo (swidth->width).
10856 (font_list_entities): Check driver_list->on.
10857 (register_font_driver): Initalize `on' member to 0.
10858 (font_update_drivers): New function.
10859 (Fclear_font_cache): Check driver_list->on.
10860
10861 * frame.h (Qfont_backend): Extern it.
10862 (x_set_font_backend): Extern it.
10863
10864 * frame.c (Qfont_backend): New variable.
10865 (frame_parms): New element for font-backend.
10866 (x_set_font_backend): New function.
10867
10868 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
10869 FontBackend frame parameter.
10870 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
10871 x_set_font_backend.
10872
10873 * xfont.c (xfont_list): Don't try listing by :name property if the
10874 name is not for XLFD.
10875
108762008-02-01 Kenichi Handa <handa@m17n.org>
10877
10878 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
10879 (LGLYPH_SET_TO): New macros.
10880 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
10881 element of G is vector or not.
10882 (font_at): Extern it.
10883
10884 * font.c: Include window.h.
10885 (font_lispy_object): New function.
10886 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
10887 end of valid glyph.
10888 (font_close_object): Fix getting (struct font *).
10889 (font_at): New function.
10890 (Ffont_get): If FONT is a font-object, get entity from it.
10891 (Ffont_make_gstring): Initialize elements of glyphs with nil.
10892 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
10893 range check.
10894 (Ffont_at): New function.
10895 (syms_of_font): Defsubr Sfont_at.
10896
10897 * xdisp.c (it_props): Move the entry for Qauto_composed to just
10898 before the entry for Qcomposition.
10899 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
10900 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
10901 the font in gstring.
10902 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
10903 LGLYPH_FORM (g) to detect the end of valid glyph.
10904 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
10905 we are composing with gstring.
10906
10907 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
10908 Check if adjustment is vector or not.
10909
10910 * Makefile.in (font.o): Make it depends on window.h.
10911
109122008-02-01 Kenichi Handa <handa@m17n.org>
10913
10914 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
10915 adjustment is vector or not.
10916
109172008-02-01 Miles Bader <miles@gnu.org>
10918
10919 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
10920
109212008-02-01 Kenichi Handa <handa@m17n.org>
10922
10923 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
10924 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
10925 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
10926
10927 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
10928 (DEVICE_DELTA): Fix typo.
10929 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
10930 LGLYPH format.
10931
10932 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
10933 the change of LGLYPH format.
10934
109352008-02-01 Kenichi Handa <handa@m17n.org>
10936
10937 * ftfont.c (ftfont_list): Fix typo.
10938 (ftfont_build_basic_charsets): Don't include letters with diacritics.
10939
109402008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10941
10942 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
10943
10944 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
10945 xftface_info is non-NULL.
10946
109472008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10948
10949 * ftfont.c (ftfont_list): Move misplaced #endif.
10950
109512008-02-01 Kenichi Handa <handa@m17n.org>
10952
10953 * ftfont.c (ftfont_list): Pay attention to the case that
10954 FC_CAPABILITY is not defined.
10955
109562008-02-01 Kenichi Handa <handa@m17n.org>
10957
10958 * xftfont.c (xftfont_open): Set charset related members to -1.
10959
10960 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
10961 QCname.
10962 (ftfont_open): Set charset related members to -1.
10963
10964 * fontset.c (Votf_script_alist): New variable.
10965 (syms_of_fontset): Initialize it.
10966 (fontset_font): Delete unused variable.
10967
10968 * fontset.h (Votf_script_alist): Extern it.
10969
10970 * font.c (font_find_for_lface): Optimize code.
10971
10972 * font.h (font_close_object, font_merge_old_spec): Extern them.
10973
109742008-02-01 Kenichi Handa <handa@m17n.org>
10975
10976 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
10977 (syms_of_font): Initialize them.
10978 (font_pixel_size): Allow float value in dpi.
10979 (font_prop_validate_type): Delete.
10980 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
10981 Change caller.
10982 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
10983 (font_prop_validate_extra): Delete.
10984 (font_prop_validate_spacing): New function.
10985 (font_property_table): Add elements for all known properties.
10986 (get_font_prop_index): Rename from check_font_prop_name. New
10987 argument FROM. Change caller.
10988 (font_prop_validate): Validate all known properties.
10989 (font_put_extra): Delete argument force. Change caller.
10990 (font_expand_wildcards): Make it static. Fix the way of shrinking
10991 the possible range.
10992 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
10993 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
10994 Change caller.
10995 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
10996 (font_parse_fcname): Delete argument merge. Fix parsing of point
10997 size. Don't validate properties values here. Change caller.
10998 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
10999 (font_open_by_name): Delete unused variable.
11000 (Ffont_spec): Likewise. Validate property values.
11001 (Ffont_match_p): New function.
11002
11003 * font.h (QCscalable): Extern it.
11004 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
11005
11006 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
11007
11008 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
11009 (xfont_list_pattern): New function.
11010 (xfont_list): Use xfont_list_pattern.
11011
110122008-02-01 Kenichi Handa <handa@m17n.org>
11013
11014 * font.h (Flist_fonts): EXFUN it.
11015
110162008-02-01 Jason Rumney <jasonr@gnu.org>
11017
11018 * w32term.c (w32_initialize): Add back smoothing_type and
11019 smoothing_enabled definitions.
11020
110212008-02-01 Kenichi Handa <handa@m17n.org>
11022
11023 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
11024 s->face->font on determining underline position.
11025
110262008-02-01 Kenichi Handa <handa@m17n.org>
11027
11028 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
11029 (font_has_char): Accept font-object too.
11030 (font_find_for_lface): Try at first with a size specified in face.
11031
110322008-02-01 Kenichi Handa <handa@m17n.org>
11033
11034 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
11035 font_open_by_name.
11036
110372008-02-01 Kenichi Handa <handa@m17n.org>
11038
11039 * font.h (QCspacing, QCdpi): Extern them.
11040 (enum font_spacing): New enum.
11041 (FONT_PIXEL_SIZE_QUANTUM): New macro.
11042
11043 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
11044 (QCspacing, QCdpi): New variables.
11045 (syms_of_font): Initialize them.
11046 (font_pixel_size): New function.
11047 (font_put_extra): New function.
11048 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
11049 in FONT_EXTRA.
11050 (font_parse_fcname): Handle enumerated values (e.g. bold).
11051 Fix handling font size. Add QCname property that contains only
11052 unknown properties.
11053 (font_score): Change argument. Change caller. Pay attention to
11054 FONT_PIXEL_SIZE_QUANTUM.
11055 (font_sort_entites, font_list_entities, font_find_for_lface)
11056 (font_open_for_lface, font_open_by_name): Fix handling of font size.
11057 (Ffont_spec): Add QCname property that contains only unknown properties.
11058
11059 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
11060 include weight in listing pattern, instead check weight of each
11061 listed font. Don't include scalable in pattern. Pay attention to
11062 FONT_PIXEL_SIZE_QUANTUM.
11063
110642008-02-01 Kenichi Handa <handa@m17n.org>
11065
11066 * font.c (font_parse_fcname): Fix parsing of point-size.
11067 (font_unparse_fcname): Produce symbolic names for style properties.
11068 (font_list_entities): Handle float size correctly.
11069 (font_open_by_name): Prefer `normal' property values if the name
11070 doesn't specify them.
11071
11072 * fontset.c (Finternal_char_font): Use font_get_name, not
11073 Ffont_xlfd_name.
11074
11075 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
11076 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
11077 pattern. Don't force scalable.
11078
11079 * xftfont.c (xftfont_open): For generating a name, start from
11080 96-byte buffer.
11081
110822008-02-01 Jan Djärv <jan.h.d@swipnet.se>
11083
11084 * frame.h (x_new_fontset2): Fix prototype.
11085
110862008-02-01 Kenichi Handa <handa@m17n.org>
11087
11088 * font.h (struct font_driver): Delete member parse_name.
11089 (font_match_p, font_get_spec, font_parse_fcname)
11090 (font_unparse_fcname): Extern them.
11091 (font_get_name): Adjust prototype.
11092
11093 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
11094 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
11095 (font_expand_wildcards): Fix handling ENCODING field. Avoid
11096 unnecessary checks for weight, slant, and swidth.
11097 (font_parse_fcname): New function.
11098 (font_unparse_fcname): New function.
11099 (font_parse_name): New function.
11100 (font_match_p): New function.
11101 (font_get_name): Change return value to Lisp string.
11102 (font_get_spec): New function.
11103 (Qunspecified, Qignore_defface): Don't extern them.
11104 (font_find_for_lface): Assume that LFACE is fully specified.
11105 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
11106 object, use it for FACE.
11107 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
11108 driver->parse_name.
11109 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
11110
11111 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
11112 prototype.
11113
11114 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
11115 argument F. Don't call Fnew_fontset. Instead, directly call
11116 make_fontset.
11117
11118 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
11119
11120 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
11121 of x_new_fontset2.
11122
11123 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
11124 (Qsans__serif): New variables.
11125 (ftfont_generic_family_list): New variable.
11126 (syms_of_ftfont): Initialize the above variables.
11127 (ftfont_pattern_entity): Delete argument NAME.
11128 (ftfont_list_generic_family): New function.
11129 (ftfont_parse_name): Delete this function.
11130 (ftfont_list): Try generic family only when FcFontList found no font.
11131 (ftfont_list_family): Fix args to FcObjectSetBuild.
11132
11133 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
11134 object in attrs[LFACE_FONT_INDEX].
11135 (set_lface_from_font_name): Cancel all changes for font-backend.
11136 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
11137 function.
11138 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
11139 font object in QCfont attribute.
11140 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
11141 (realize_default_face) [USE_FONT_BACKEND]: Call
11142 set_lface_from_font_and_fontset.
11143
11144 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
11145 "fixed", and signal error here if no suitable font was found.
11146
11147 * xfont.c (xfont_parse_name): Delete this function.
11148
11149 * xftfont.c (xftfont_open): Change coding style of error
11150 handling. Generate fontconfig's fontname pattern.
11151
11152 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
11153 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
11154
11155 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
11156 Both args FONTSET and FONT_OBJECT must be existing ones.
11157
111582008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11159
11160 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
11161
111622008-02-01 Kenichi Handa <handa@m17n.org>
11163
11164 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
11165
11166 * font.h (struct font): Fix typo.
11167
11168 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
11169 XLFD_XXX_INDEX.
11170 (enum xlfd_field_mask): New enum.
11171 (intern_font_field): Changed argument. Change caller. If digits
11172 are followed by non-digits, return a symbol.
11173 (font_expand_wildcards): New function.
11174 (font_parse_xlfd): Fix wildcard handling.
11175 (Ffont_spec): If :name is specified, reflect the info in the other
11176 properties.
11177
11178 * ftfont.c (ftfont_pattern_entity): Fix typo.
11179 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
11180 locale.
11181
111822008-02-01 Kenichi Handa <handa@m17n.org>
11183
11184 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
11185
11186 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
11187 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
11188 registry doesn't specify encoding part.
11189 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
11190 (font_open_by_name): At first try parsing the name.
11191 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
11192 as Lisp symbols.
11193
11194 * fontset.c (reorder_font_vector): Pay attention to the case that
11195 the 3rd element of font_def is nil.
11196 (fontset_font): For the default fontset, append one more fontset
11197 elements for a script-based font specification. Don't add script
11198 attribute on finding a font.
11199 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
11200 font name.
11201 (fontset_ascii_font): If a font can't be opened, return nil.
11202
11203 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
11204 (ftfont_pattern_entity): New function.
11205 (ftfont_get_cache): Assume that freetype_font_cache is already
11206 initialized.
11207 (ftfont_list): Handle the case that a file is specified in font
11208 name. Use ftfont_pattern_entity to generate entities.
11209 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
11210 (syms_of_ftfont): Initialize freetype_font_cache.
11211
11212 * xftfont.c (xftfont_open): Make the font name fontconfig's
11213 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
11214 (xftfont_close): Free font->font.name if not NULL.
11215
11216 * xfont.c (xfont_list): If script is specified for a font, return
11217 null_vector.
11218 (xfont_list_family): Declare argument type.
11219
11220 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
11221 name, set LFACE_FONT (lface) to nil.
11222
11223 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
11224 return Qnil.
11225
112262008-02-01 Kenichi Handa <handa@m17n.org>
11227
11228 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
11229 (standard_args): Add "-enable-font-backend".
11230
112312008-02-01 Kenichi Handa <handa@m17n.org>
11232
11233 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
11234 (struct xftdraw_list, xftdraw_list): Delete them.
11235 (register_xftdraw, check_xftdraw): Delete them.
11236 (xftfont_prepare_face): Don't call register_xftdraw.
11237 (xftfont_done_face): Don't call check_xftdraw.
11238 (xftfont_draw): Get background color only when with_background is
11239 nonzero.
11240
11241 * xfont.c (xfont_encode_char): Fix calculation of char2b.
11242
112432008-02-01 Kenichi Handa <handa@m17n.org>
11244
11245 These changes are for the new font handling codes.
11246
11247 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
11248 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
11249 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
11250 (FONTSRC, FONTOBJ): New variables.
11251 (obj): Add $(FONTOBJ).
11252 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
11253 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
11254 @LIBOTF_LIBS@.
11255 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
11256 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
11257
11258 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
11259
11260 * character.h (Vscript_representative_chars): Extern it.
11261
11262 * character.c (Vscript_representative_chars): New variable.
11263 (syms_of_character): Declare it as a Lisp variable.
11264
11265 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
11266 enable_font_backend is nonzero, accept the composition method
11267 COMPOSITION_WITH_GLYPH_STRING.
11268
11269 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
11270 enumeration COMPOSITION_WITH_GLYPH_STRING.
11271
11272 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
11273 members clip_x, clip_y, clip_width, and clip_height.
11274 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
11275
11276 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
11277 --enable-font-backend. Call syms_of_font.
11278
11279 * fns.c (assoc_no_quit): New function.
11280
11281 * fontset.h (FONT_INFO_FROM_FACE): New macro.
11282 (face_for_font, new_fontset_from_font)
11283 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
11284
11285 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
11286 (fontset_font, fontset_ascii, face_for_char)
11287 (make_fontset_for_ascii_face, Ffont_info)
11288 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
11289 is nonzero, use font-backend mechanism.
11290 (find_font_encoding): Make it non-static.
11291 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
11292 New functions.
11293
11294 * frame.h (struct frame): New members resx and resy.
11295 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
11296 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
11297
11298 * frame.c [USE_FONT_BACKEND]: Include "font.h".
11299 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
11300
11301 * lisp.h (assoc_no_quit): Extern it.
11302
11303 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
11304 Through out the file, use FONT_INFO_FROM_FACE instead of
11305 FONT_INFO_FROM_ID, use get_per_char_metric instead of
11306 rif->per_char_metric.
11307 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
11308 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
11309 (get_glyph_face_and_encoding, fill_composite_glyph_string)
11310 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
11311 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
11312 nonzero, use font-backend mechanism.
11313 (get_per_char_metric): New function.
11314
11315 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
11316 (set_lface_from_font_name)
11317 (set_font_frame_param, free_realized_face)
11318 (prepare_face_for_display, clear_face_gcs)
11319 (Finternal_set_font_selection_order, realize_x_face)
11320 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
11321 font-backend mechanism.
11322 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
11323 (load_face_font) [USE_FONT_BACKEND]: Abort.
11324 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
11325 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
11326
11327 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
11328 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
11329 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
11330 nonzero, register all available font drivers. Call
11331 x_default_font_parameter for deciding a font.
11332 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
11333
11334 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
11335 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
11336 (x_set_glyph_string_clipping_exactly)
11337 (x_compute_glyph_string_overhangs)
11338 (x_draw_glyph_string_foreground)
11339 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
11340 (x_free_frame_resources) [USE_FONT_BACKEND]: If
11341 enable_font_backend is nonzero, use font-backend mechanism.
11342 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
11343
113442008-02-01 Kenichi Handa <handa@m17n.org>
11345
11346 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
11347 system_eol_type.
11348 (syms_of_coding): Initialize system_eol_type.
11349
11350 * process.c (Fset_process_coding_system): Inherit system's eol
11351 format if necessary.
11352
113532008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11354
11355 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
11356
113572008-02-01 Kenichi Handa <handa@m17n.org>
11358
11359 * coding.c (decode_eol): Pay attention to buffer relocation in
11360 del_range_2.
11361 (decode_coding): Call decode_eol before restoring undo_list.
11362
113632008-02-01 Kenichi Handa <handa@m17n.org>
11364
11365 * charset.c (Fdefine_charset_internal): Fix setting of
11366 emacs_mule_bytes.
11367
113682008-02-01 Kenichi Handa <handa@m17n.org>
11369
11370 * keyboard.c (read_char): Check if C is a character or not before
11371 looking up Vkeyboard_translate_table.
11372
113732008-02-01 Kenichi Handa <handa@m17n.org>
11374
11375 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
11376 condition to terminate the loop.
11377
113782008-02-01 Kenichi Handa <handa@m17n.org>
11379
11380 * coding.c (produce_composition): Compare charbuf[i] instead of
11381 args[i] against 0.
11382 (Fterminal_coding_system): Use EQ to compare Lisp objects.
11383
113842008-02-01 Kenichi Handa <handa@m17n.org>
11385
11386 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
11387 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
11388 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
11389 detect_coding.
11390 (emacs_mule_char): Handle old style (Emacs 20) component character
11391 of a composition.
11392 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
11393 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
11394 composition rule.
11395 (decode_coding_emacs_mule): Handle invalid bytes correctly.
11396
113972008-02-01 Kenichi Handa <handa@m17n.org>
11398
11399 * coding.c (encode_coding_ccl): Allocate destination dynamically
11400 when necessary.
11401
114022008-02-01 Kenichi Handa <handa@m17n.org>
11403
11404 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
11405 the loop. When quitted, show a proper error message.
11406
114072008-02-01 Kenichi Handa <handa@m17n.org>
11408
11409 * xterm.c (x_set_glyph_string_clipping_exactly): Set
11410 src->clip_head and src->clip_tail temporarily instead of src->hl.
11411
11412 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
11413 character sequence.
11414 (Fccl_execute_on_string): Use ASET, not XSET.
11415
114162008-02-01 Kenichi Handa <handa@m17n.org>
11417
11418 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
11419
114202008-02-01 Kenichi Handa <handa@m17n.org>
11421
11422 * coding.c (decode_coding): Fix the condition of terminating the
11423 decoding loop.
11424
114252008-02-01 Kenichi Handa <handa@m17n.org>
11426
11427 * data.c (Faset): On setting a character bigger than 255 in a
11428 unibyte string, signal an error instead of make the string multibyte.
11429
114302008-02-01 Kenichi Handa <handa@m17n.org>
11431
11432 * charset.c (map_charset_chars): Fix for ascii-compatible charset
11433 made by a mapping table.
11434
114352008-02-01 Kenichi Handa <handa@m17n.org>
11436
11437 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
11438 not.
11439 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
11440 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
11441
11442 * xterm.c (x_draw_composite_glyph_string_foreground): Check
11443 s->face is NULL or not.
11444
114452008-02-01 Kenichi Handa <handa@m17n.org>
11446
11447 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
11448 (x_draw_glyph_string): Fix drawing of right_overhang and
11449 left_overhang around/on cursor.
11450
11451 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
11452
114532008-02-01 Kenichi Handa <handa@m17n.org>
11454
11455 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
11456
114572008-02-01 Kenichi Handa <handa@m17n.org>
11458
11459 * coding.c (Fdefine_coding_system_internal)
11460 (Fdefine_coding_system_alias): Avoid a duplicated element in
11461 Vcoding_system_alist.
11462
114632008-02-01 Kenichi Handa <handa@m17n.org>
11464
11465 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
11466
11467 * coding.c (Qcoding_system_define_form): New variable.
11468 (syms_of_coding): Intern and staticpro it.
11469 (Fcoding_system_p): Check Qcoding_system_define_form.
11470 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
11471
11472 * coding.h (CODING_SYSTEM_P): If ID is not available, call
11473 Fcoding_system_p.
11474 (CHECK_CODING_SYSTEM): If ID is not available, call
11475 Fcheck_coding_system.
11476 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
11477 Try also Fcheck_coding_system.
11478
114792008-02-01 Kenichi Handa <handa@m17n.org>
11480
11481 * coding.c (code_conversion_restore): GCPRO arg.
11482
114832008-02-01 Kenichi Handa <handa@m17n.org>
11484
11485 * character.c (lisp_string_width): Check multibyteness of STRING.
11486
114872008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11488
11489 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
11490 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
11491 (decode_mac_font_name): Use decode_coding_c_string instead of
11492 decode_coding.
11493 (x_load_font): Initialize fontp->fontset to -1. Set
11494 fontp->encoding_type.
11495
114962008-02-01 Kenichi Handa <handa@m17n.org>
11497
11498 * search.c (search_buffer): Give up BM search on case-fold-search
11499 if one of a target character has a case-equivalence of different
11500 byte length even if that target charcter is an ASCII.
11501 (simple_search): Fix calculation of byte length of matched text.
11502 (boyer_moore): Fix handling of case-equivalent multibyte characters.
11503
115042008-02-01 Kenichi Handa <handa@m17n.org>
11505
11506 * coding.c (decode_coding): Fix handling of invalid bytes.
11507
115082008-02-01 Kenichi Handa <handa@m17n.org>
11509
11510 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
11511 Unicode characters.
11512
115132008-02-01 Kenichi Handa <handa@m17n.org>
11514
11515 * coding.c (encode_coding_object): If a pre-write-conversion
11516 function makes a new buffer, kill it.
11517
115182008-02-01 Kenichi Handa <handa@m17n.org>
11519
11520 * coding.c (QCascii_compatible_p): New variable.
11521 (syms_of_coding): Initialize it.
11522 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
11523 calling string_char.
11524 (record_conversion_result): Add `default:' case.
11525 (coding_charset_list): Delete unused variable `coding_type'.
11526 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
11527 property in the plist of the coding system.
11528 (Fcoding_system_put): Check QCascii_compatible_p.
11529
115302008-02-01 Miles Bader <miles@gnu.org>
11531
11532 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
11533 removed calculation of frame `f', as it's now used.
11534
115352008-02-01 Kenichi Handa <handa@m17n.org>
11536
11537 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
11538 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
11539 (UNIDATA): New variable.
11540 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
11541 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
11542 $(RUN_TEMACS) unconditionally.
11543
115442008-02-01 Kenichi Handa <handa@m17n.org>
11545
11546 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
11547 (admindir): New variable.
11548 ($(lispsource)international/charprop.el): New target.
11549
115502008-02-01 Miles Bader <miles@gnu.org>
11551
11552 * character.c (chars-in-region): Remove obsolete function.
11553 (syms_of_character): Remove its initialization.
11554
115552008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
11556
11557 * w32select.c (validate_coding_system)
11558 (setup_windows_coding_system): New functions.
11559 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
11560 setup_windows_coding_system.
11561 (setup_config, Fw32_get_clipboard_data): Use
11562 validate_coding_system.
11563 (Fx_selection_exists): Move call to setup_config to a place
11564 where signals are allowed.
11565
11566 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
11567 (Fcheck_coding_system): Add declarations.
11568
115692008-02-01 Kenichi Handa <handa@m17n.org>
11570
11571 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
11572
115732008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11574
11575 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
11576 string as the second argument for x_new_fontset.
11577
115782008-02-01 Kenichi Handa <handa@m17n.org>
11579
11580 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
11581 (encode_coding_object): Use safe_call instead of call2.
11582
115832008-02-01 Kenichi Handa <handa@m17n.org>
11584
11585 * fontset.c (Fset_fontset_font): Check family element of a given vector.
11586
11587 * Makefile.in (lisp): Include charprop.el.
11588
115892008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11590
11591 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
11592 Not sure if it's unnecessary.
11593
115942008-02-01 Steven Tamm <steventamm@mac.com>
11595
11596 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
11597 some possibly unnecessary fontset checking code that crashed
11598 when creating a new frame.
11599
116002008-02-01 Kenichi Handa <handa@m17n.org>
11601
11602 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
11603 lookup_face.
11604
11605 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
11606
11607 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
11608
116092008-02-01 Kenichi Handa <handa@m17n.org>
11610
11611 * coding.c: Cancel the change done in HEAD on 2008-02-01.
11612 (coding_charset_list): New function.
11613
11614 * coding.h (coding_charset_list): Extern it.
11615
116162008-02-01 Kenichi Handa <handa@m17n.org>
11617
11618 * fontset.c (Fset_fontset_font): Call find_font_encoding with
11619 concatenation of family and registry.
11620
116212008-02-01 Kenichi Handa <handa@m17n.org>
11622
11623 * character.h (BYTE8_STRING): Fix typo.
11624
11625 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
11626 string to multibyte (sync to HEAD).
11627
11628 * casefiddle.c (casify_region): Handle changes in byte-length
11629 using replace_range_2 (sync to HEAD).
11630
116312008-02-01 Andreas Schwab <schwab@suse.de>
11632
11633 * chartab.c (map_char_table): GCPRO table and arg.
11634
116352008-02-01 Kenichi Handa <handa@m17n.org>
11636
11637 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
11638 already at limit.
11639
116402008-02-01 Kenichi Handa <handa@m17n.org>
11641
11642 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
11643 instead of fast_c_string_match_ignore_case.
11644 (find_font_encoding): Change argument to Lisp_Object. Use
11645 fast_string_match_ignore_case instead of
11646 fast_c_string_match_ignore_case. Change caller.
11647
116482008-02-01 Kenichi Handa <handa@m17n.org>
11649
11650 * xdisp.c (get_next_display_element): In unibyte case, decide to
11651 display in octal form by checking a character by
11652 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
11653
11654 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
11655
11656 * character.c (unibyte_has_multibyte_table): New variable.
11657
11658 * character.h (unibyte_has_multibyte_table): Extern it.
11659 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
11660
116612008-02-01 Kenichi Handa <handa@m17n.org>
11662
11663 * coding.c (encode_coding_iso_2022): Fix handling of charset
11664 annotation.
11665
116662008-02-01 Kenichi Handa <handa@m17n.org>
11667
11668 * coding.c (setup_coding_system): If coding_system is nil, use
11669 Qundecided.
11670 (Fterminal_coding_system): Return nil if terminal coding system is
11671 `undecided'.
11672 (syms_of_coding): Define coding-system `undecided' here. Setup
11673 terminal_coding as `undecided'.
11674
116752008-02-01 Kenichi Handa <handa@m17n.org>
11676
11677 * xdisp.c (message_dolog, set_message_1): Call
11678 unibyte_char_to_multibyte with arg type int.
11679
11680 * lread.c (read1): Fix reading of a char-table.
11681
11682 * print.c (print_object): Include sub char-table in circularities
11683 detection.
11684
116852008-02-01 Kenichi Handa <handa@m17n.org>
11686
11687 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
11688 Append the found sequences in car of ARGS instead of prepending.
11689
116902008-02-01 Kenichi Handa <handa@m17n.org>
11691
11692 * fileio.c (report_file_error): Make a unibyte string from
11693 strerror (errorno).
11694 (Fsubstitute_in_file_name): Fix the arg to
11695 unibyte_char_to_multibyte. It is evaluated twice.
11696
116972008-02-01 Kenichi Handa <handa@m17n.org>
11698
11699 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
11700
117012008-02-01 Kenichi Handa <handa@m17n.org>
11702
11703 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
11704 BOM is not found.
11705 (detect_coding, detect_coding_system): Optimization for ISO-2022
11706 when no 8-bit data is found.
11707
117082008-02-01 Jason Rumney <jasonr@gnu.org>
11709
11710 * w32fns.c (x_to_w32_font): Update to use new coding struct.
11711
117122008-02-01 Kenichi Handa <handa@m17n.org>
11713
11714 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
11715 CHARS.
11716
117172008-02-01 Steven Tamm <steventamm@mac.com>
11718
11719 * macterm.c (mac_encode_char): Add charset argument and update
11720 to use encoding_type.
11721 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
11722 switch to pure fontset.
11723 (decode_mac_font_name): Temporarily remove decoding.
11724 (x_font_name_to_mac_font_name): Temporarily remove encoding.
11725 (x_load_font): Temporarily remove encoding.
11726
117272008-02-01 Kenichi Handa <handa@m17n.org>
11728
11729 * xfaces.c (Fface_font): If frame is not on a window system,
11730 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
11731 refer to face->font.
11732 (split_font_name_into_vector, build_font_name_from_vector)
11733 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
11734 when HAVE_WINDOW_SYSTEM is defined.
11735
117362008-02-01 Kenichi Handa <handa@m17n.org>
11737
11738 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
11739 (x_produce_glyphs): Fix setting of members of cmp in case
11740 cmp->glyph_len is zero.
11741
11742 * fontset.c (Fset_fontset_font): Fix docstring.
11743 (Ffontset_info): Make it backward compatible. New arg ALL.
11744
117452008-02-01 Kim F. Storm <storm@cua.dk>
11746
11747 * process.c (read_process_output): Grow decoding_buf when needed;
11748 this could cause a crash in allocate_string and compact_small_strings.
11749
117502008-02-01 Kenichi Handa <handa@m17n.org>
11751
11752 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
11753
117542008-02-01 Kenichi Handa <handa@m17n.org>
11755
11756 * coding.c (setup_coding_system): Set coding->common_flags
11757 correctly for raw-text.
11758 (consume_chars): On encoding unibyte text by raw-text, don't check
11759 multibyte form.
11760 (encode_coding): On encoding by raw-text, never use translation tables.
11761
11762 * fileio.c (e_write): Short cut for the case of no encoding.
11763
117642008-02-01 Kenichi Handa <handa@m17n.org>
11765
11766 * coding.c (detect_coding, detect_coding_system): Delete unused
11767 variables.
11768
117692008-02-01 Kenichi Handa <handa@m17n.org>
11770
11771 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
11772 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
11773
117742008-02-01 Kenichi Handa <handa@m17n.org>
11775
11776 * coding.c (Ffind_coding_systems_region_internal): Include
11777 raw-text and no-conversion in the result.
11778
117792008-02-01 Kenichi Handa <handa@m17n.org>
11780
11781 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
11782 (load_font_get_repertory): Delete unnecessary check of ENCODING of
11783 FONT_DEF.
11784 (font_def_arg, add_arg, from_arg, to_arg): New args.
11785 (set_fontset_font): Change argument.
11786 (Fset_fontset_font): Fix for the case that TARGET is a script
11787 name and charset name.
11788 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
11789
117902008-02-01 Kenichi Handa <handa@m17n.org>
11791
11792 * fontset.c (fontset_font): Rename from fontset_face. Change return
11793 value.
11794 (face_suitable_for_char_p, face_for_char): Adjust for the change
11795 of fontset_font.
11796 (make_fontset_for_ascii_face): Fix setting of the fontset element
11797 for ASCII.
11798 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
11799 to get a font name.
11800 (Ffontset_info): Adjust for the change of fontset_font.
11801
11802 * coding.c (emacs_mule_char): Check invalid code more rigidly.
11803
11804 * character.h (LEADING_CODE_LATIN_1_MIN)
11805 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
11806
118072008-02-01 Kenichi Handa <handa@m17n.org>
11808
11809 * editfns.c (check_translation): New function.
11810 (Ftranslate_region_internal): Handle M:N mapping.
11811
118122008-02-01 Kenichi Handa <handa@m17n.org>
11813
11814 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
11815
118162008-02-01 Kenichi Handa <handa@m17n.org>
11817
11818 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
11819 goto invalid_code.
11820 (decode_coding_iso_2022): Fix handling of invalid designation.
11821
11822 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
11823 after calling code_conversion_save.
11824
118252008-02-01 Kenichi Handa <handa@m17n.org>
11826
11827 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
11828
11829 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
11830
11831 * fontset.c: Include "intervals.h".
11832 (fontset_face): Fix comparing of Lisp_Objects.
11833 (free_face_fontset, new_fontset_from_font_name): Fix
11834 Lisp_Object/int mixup.
11835
11836 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
11837
11838 * coding.c: Add many prototypes for static functions.
11839 (get_translation_table): Allow max_lookup to be NULL.
11840 (decode_coding, Ffind_coding_systems_region_internal)
11841 (Funencodable_char_position, Fcheck_coding_systems_region): Call
11842 get_translation_table with max_lookup NULL.
11843
118442008-02-01 Kenichi Handa <handa@m17n.org>
11845
11846 * coding.c (get_translation_table): Declare it as Lisp_Object.
11847 (LOOKUP_TRANSLATION_TABLE): New macro.
11848 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
11849 instead of CHAR_TABLE_REF.
11850
118512008-02-01 Kenichi Handa <handa@m17n.org>
11852
11853 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
11854 annotation data format.
11855 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
11856 Change arguments FROM and TO to single argument NCHARS. Change caller.
11857 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
11858 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11859 (decode_coding_ccl, decode_coding_charset): Pay attention to
11860 coding->charbuf_used.
11861 (get_translation): New function.
11862 (produce_chars): New arguments translation_table and last_block.
11863 Translate characters here. Return number of carryover chars.
11864 Change caller.
11865 (produce_composition): New argument pos. Change caller.
11866 Adjust for the change of annotation data format.
11867 (produce_charset, produce_annotation): Likewise.
11868 (decode_coding, encode_coding): Don't call translate_chars.
11869 (consume_chars): New arg translation_table. Change caller.
11870 (translate_chars): Delete.
11871 (syms_of_coding): Make translation-table's number of extra slots 2.
11872
118732008-02-01 Kenichi Handa <handa@m17n.org>
11874
11875 * search.c (simple_search): Fix setting this_pos_byte in backward
11876 search.
11877
11878 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
11879 byte sequence.
11880 (detect_coding_ccl): Fix setting of the variable valids.
11881
118822008-02-01 Kenichi Handa <handa@m17n.org>
11883
11884 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
11885
11886 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
11887
11888 * editfns.c (Ftranslate_region_internal): Rename from
11889 Ftranslate_region. Accept a char-table in TABLE.
11890 (syms_of_editfns): Defsubr Stranslate_region_internal.
11891
11892 * xfaces.c (set_lface_from_font_name): If a font is specified for
11893 a frame, generate a fontset from the font.
11894 (build_scalable_font_name): If the scalable font is requested for
11895 a specific size, don't change that size.
11896 (try_font_list): Try a scalable font also in the case that a
11897 pattern string is specified.
11898
118992008-02-01 Kenichi Handa <handa@m17n.org>
11900
11901 * xfaces.c (Fface_font): New optional arg CHARACTER.
11902
119032008-02-01 Kenichi Handa <handa@m17n.org>
11904
11905 * charset.h (CHARSET_OFFSET): New macro.
11906
119072008-02-01 Kenichi Handa <handa@m17n.org>
11908
11909 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
11910
11911 * fontset.c (fontset_face): Handle the case that repertory is a
11912 char-table.
11913 (find_font_encoding): Return nil for unknown encoding.
11914 (Fset_fontset_font): Ignore a font of unknown encoding.
11915
119162008-02-01 Kenichi Handa <handa@m17n.org>
11917
11918 * keymap.c (describe_vector): Handle default value of a char table.
11919
11920 * fontset.c (fontset_face): Handle fallback fonts correctly.
11921 (Ffontset_info): Return infomation about fallback fonts.
11922
119232008-02-01 Kenichi Handa <handa@m17n.org>
11924
11925 * fontset.c (FONTSET_DEFAULT): New macro.
11926 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
11927 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
11928 the case that it is nil.
11929 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
11930 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
11931
11932 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
11933 subset or superset.
11934
119352008-02-01 Kenichi Handa <handa@m17n.org>
11936
11937 * emacs.c (main): Call init_charset after syms_of_XXX.
11938
11939 * charset.c (Vcharset_map_directory): Delete.
11940 (Vcharset_map_path): New variable.
11941 (load_charset_map_from_file): Use Vcharset_map_path instead.
11942 (init_charset): Initialize Vcharset_map_path.
11943 (syms_of_charset): Delete declaration of "charset-map-directory",
11944 add declaration of "charset-map-path".
11945
119462008-02-01 Kenichi Handa <handa@m17n.org>
11947
11948 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
11949 ASCII only string.
11950
11951 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
11952
11953 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
11954 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
11955
119562008-02-01 Kenichi Handa <handa@m17n.org>
11957
11958 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
11959
11960 * coding.c (QCmnemonic, QCdefalut_char)
11961 (QCdecode_translation_table, QCencode_translation_table)
11962 (QCpost_read_conversion, QCpre_write_conversion): New variables.
11963 (get_translation_table): Return a list of translation tables if
11964 necessary.
11965 (decode_coding): Call get_translation_table with ENCODEP 0.
11966 (char_encodable_p): If translation_table is non-nil, always call
11967 translate_char.
11968 (Fdefine_coding_system_internal): Accept list of translation
11969 tables as :encode-translation-table and :decode-translation-table.
11970 (Fcoding_system_put): New function.
11971 (syms_of_coding): Declare new symbols. Defsubr
11972 Scoding_system_put.
11973 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
11974 typically JISX0212.
11975
11976 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
11977 when the charset is superset type.
11978
11979 * character.c (translate_char): Accept list of translation tables.
11980
119812008-02-01 Kenichi Handa <handa@m17n.org>
11982
11983 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
11984 (CODING_ATTR_TRANS_TBL): New macro.
11985
11986 * coding.c (get_translation_table): New function.
11987 (translate_chars): Fix the bug of skipping annotation data.
11988 (decode_coding, encode_coding): Utilize get_translation_table.
11989 (char_encodable_p, Funencodable_char_position): Translate char if
11990 necessary.
11991 (Ffind_coding_systems_region_internal)
11992 (Fcheck_coding_systems_region): Setup translation table for encode
11993 in a coding system attribute vector in advance.
11994 (Fdefine_coding_system_internal): Allow a symbol as translation
11995 table. For shift-jis type coding system, allow 4th charset.
11996
119972008-02-01 Kenichi Handa <handa@m17n.org>
11998
11999 * coding.c (decode_coding_sjis): Check the first byte rigidly.
12000
12001 * xdisp.c (get_next_display_element): Pass -1 as POS to
12002 FACE_FOR_CHAR if displaying a C-string.
12003
120042008-02-01 Kenichi Handa <handa@m17n.org>
12005
12006 * composite.c (get_composition_id): Handle xoff and yoff in a
12007 composition rule.
12008
12009 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
12010 (struct composition): New member lbearing and rbearing.
12011
12012 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
12013 (x_get_glyph_overhangs): Handle a composition glyph.
12014 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
12015
12016 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
12017 composition glyph.
12018
120192008-02-01 Kenichi Handa <handa@m17n.org>
12020
12021 * print.c: Include charset.h.
12022 (Vprint_charset_text_property): New variable.
12023 (Qdefault): Extern it.
12024 (PRINT_STRING_NON_CHARSET_FOUND)
12025 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
12026 (print_check_string_result): New variable.
12027 (print_check_string_charset_prop): New function.
12028 (print_prune_charset_plist): New variable.
12029 (print_prune_string_charset): New function.
12030 (print_object): Call print_prune_string_charset if
12031 Vprint_charset_text_property is not t.
12032 (print_interval): Print nothing if interval->plist is nil.
12033 (syms_of_print): Declare Vprint_charset_text_property as a lisp
12034 variable. Init and staticpro print_prune_charset_plist.
12035
120362008-02-01 Kenichi Handa <handa@m17n.org>
12037
12038 * fontset.c (new_fontset_from_font_name): Use the specified font
12039 for all characters in the new fontset.
12040
12041 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
12042 OBJECT args.
12043
12044 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
12045 OBJECT args for composition too.
12046
12047 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
12048 OBJECT args.
12049
120502008-02-01 Kenichi Handa <handa@m17n.org>
12051
12052 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
12053
12054 * fontset.c (reorder_font_vector): Adjust for the change of
12055 FONT_DEF format.
12056 (fontset_face): New arg id. Change caller.
12057 (face_for_char): New args pos and object.
12058 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
12059 (fs_query_fontset): Check NAME by Fassoc too.
12060 (Fset_fontset_font): Allow non-XLFD font name.
12061 (Ffontset_info): Adjust for the change of FONT_DEF format.
12062
12063 * fontset.h (face_for_char): Adjust prototype.
12064
12065 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
12066 (append_space, extend_face_to_end_of_line)
12067 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
12068 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
12069
12070 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
12071 POS and OBJECT args.
12072
12073 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
12074 POS and OBJECT args.
12075
120762008-02-01 Jason Rumney <jasonr@gnu.org>
12077
12078 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
12079 of GlobalAlloc'ed memory.
12080
120812008-02-01 Kenichi Handa <handa@m17n.org>
12082
12083 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
12084
12085 * charset.h (charset_table_used): Delete extern.
12086
12087 * charset.c (charset_table_used): Make it static.
12088 (map_charset_chars): Fix args to c_function with.
12089
12090 * chartab.c (map_sub_char_table_for_charset): Fix args to
12091 c_function with.
12092
12093 * coding.h (enum coding_result_code): Delete
12094 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
12095
12096 * coding.c (Qinsufficient_source, Qinconsistent_eol)
12097 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
12098 (Vlast_code_conversion_error): New variables.
12099 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
12100 (ONE_MORE_BYTE): Record error if any instead of signaling an
12101 error. If non-ASCII multibyte char is found, return the negative
12102 value of the code. All callers changed to check it.
12103 (ONE_MORE_BYTE_NO_CHECK): Likewise.
12104 (record_conversion_result): New function. Change all codes setting
12105 coding->result to call this function.
12106 (detect_coding_utf_8, decode_coding_utf_8)
12107 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
12108 Don't use the local variable incomplete.
12109 (emacs_mule_char): Change the second arg to `const'.
12110 (decode_coding): Fix of flushing out unprocessed data.
12111 (make_conversion_work_buffer): Fix making of a work buffer.
12112 (decode_coding_object): Return coding->dst_object.
12113
12114 * fontset.c (set_fontset_font): Fix args.
12115
12116 * lisp.h (CHARACTERBITS): Define as 22.
12117
12118 * process.c (send_process): Be sure to set coding->src_multibyte.
12119
12120 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
12121
121222008-02-01 Kenichi Handa <handa@m17n.org>
12123
12124 * xdisp.c (handle_auto_composed_prop): Give limit to
12125 Fnext_single_char_property_change.
12126
121272008-02-01 Kenichi Handa <handa@m17n.org>
12128
12129 * composite.c (syms_of_composite): Don't make the composition hash
12130 table weak.
12131
12132 * fontset.c (Fset_fontset_font): Fix docstring.
12133
12134 * lisp.h (detect_coding_system): Adjust prototype.
12135
12136 * fileio.c (kill_workbuf_unwind): Delete this function.
12137 (Finsert_file_contents): Adjust the call of detect_coding_system.
12138 Get conversion_buffer by code_conversion_save. Use the macro
12139 CODING_MAY_REQUIRE_DECODING. After decoding, update
12140 coding_system.
12141
12142 * coding.h (make_conversion_work_buffer): Delete extern.
12143 (code_conversion_save): Extern it.
12144
12145 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
12146 (CODING_GET_INFO): Delete argument eol_type. Change callers.
12147 (decode_coding_utf_8): Don't do eol converion.
12148 (detect_coding_utf_16): Check coding->src_chars, not
12149 coding->src_bytes. Add heuristics for those that have no signature.
12150 (decode_coding_emacs_mule, decode_coding_iso_2022)
12151 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
12152 Don't do eol converion.
12153 (adjust_coding_eol_type): Return a new coding system.
12154 (detect_coding): Don't detect eol. Fix for utf-16 detection.
12155 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
12156 each change.
12157 (decode_coding): Pay attention to undo_list. Do eol conversion for
12158 all types of coding-systems (if necessary).
12159 (Vcode_conversion_work_buf_list): Delete it.
12160 (Vcode_conversion_reused_workbuf): Rename from
12161 Vcode_conversion_reused_work_buf.
12162 (Vcode_conversion_workbuf_name): New variable.
12163 (reused_workbuf_in_use): New variable.
12164 (make_conversion_work_buffer): Delete the arg DEPTH.
12165 (code_conversion_restore): Change argument to cons.
12166 (code_conversion_save): Delete the argument BUFFER. Change callers.
12167 (detect_coding_system): New argument src_chars. Change callers.
12168 Fix for utf-16 detection.
12169 (init_coding_once): Don't use ISO_carriage_return.
12170 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
12171 reused_workbuf_in_use.
12172
121732008-02-01 Kenichi Handa <handa@m17n.org>
12174
12175 * keymap.c (store_in_keymap): Pay attention to the case that idx
12176 is a cons specifying a character range.
12177
121782008-02-01 Kenichi Handa <handa@m17n.org>
12179
12180 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
12181 HANDLED_RECOMPUTE_PROPS.
12182
12183 * coding.c (Fdefine_coding_system_internal): Fix checking of
12184 ascii compatibility.
12185
121862008-02-01 Kenichi Handa <handa@m17n.org>
12187
12188 * charset.c (find_charsets_in_text): Delete unused locale variable.
12189 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
12190
12191 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
12192 Resync charset_list to Vemacs_mule_charset_list.
12193
12194 * keymap.c (store_in_keymap): Pay attention to the case that idx
12195 is a cons specifying a character range.
12196
121972008-02-01 Kenichi Handa <handa@m17n.org>
12198
12199 * composite.c (update_compositions): Bind inhibit-read-only, etc
12200 to t before calling remove-list-of-text-properties.
12201
12202 * print.c (print_object): Always print ASCII chars as is.
12203
122042008-02-01 Kenichi Handa <handa@m17n.org>
12205
12206 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
12207
12208 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
12209 is a char table.
12210
122112008-02-01 Kenichi Handa <handa@m17n.org>
12212
12213 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
12214
122152008-02-01 Kenichi Handa <handa@m17n.org>
12216
12217 * xfaces.c (set_lface_from_font_name): Fix for the case that
12218 FONTNAME is not fontset name.
12219
122202008-02-01 Kenichi Handa <handa@m17n.org>
12221
12222 * fns.c (base64_encode_1): Fix previous change.
12223
122242008-02-01 Kenichi Handa <handa@m17n.org>
12225
12226 * fontset.c (set_fontset_font): New function.
12227 (Fset_fontset_font): If a font is specified for a charset, use
12228 map_charset_chars to store the font spec in a fontset.
12229
122302008-02-01 Kenichi Handa <handa@m17n.org>
12231
12232 * fontset.c (fontset_face): Create a fallback fontset on demand.
12233 (make_fontset): Don't create a fallback fontset here.
12234 (free_face_fontset): Free a fallback fontset (if any) too.
12235 (n_auto_fontsets): Delete this variable.
12236 (auto_fontset_alist): New variable.
12237 (new_fontset_from_font_name): Check auto_fontset_alist.
12238 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
12239 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
12240 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
12241 Defsubr Sfontset_list_all.
12242
122432008-02-01 Kenichi Handa <handa@m17n.org>
12244
12245 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
12246
122472008-02-01 Kenichi Handa <handa@m17n.org>
12248
12249 * fontset.c (Fnew_fontset): Check NAME more rigidly.
12250
122512008-02-01 Kenichi Handa <handa@m17n.org>
12252
12253 * editfns.c (Fgoto_char): Fix docstring.
12254
122552008-02-01 Kenichi Handa <handa@m17n.org>
12256
12257 * insdel.c (insert_from_gap): Adjust intervals correctly.
12258
122592008-02-01 Jason Rumney <jasonr@gnu.org>
12260
12261 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
12262 (pfnGetFontUnicodeRanges): New dynamically loaded function.
12263 (w32_initialize): Try to load it.
12264 (x_get_font_repertory): Use it if available.
12265 (w32_encode_char): Add shortcut for unicode output.
12266
12267 * w32fns.c (w32_load_system_font): Default charset to -1.
12268 (x_to_w32_charset): Match all fonts for unicode.
12269 (w32_to_x_charset): New parameter matching. Don't return partial
12270 or wildcard charsets.
12271 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
12272 (w32_codepage_for_font): Return CP_UNICODE for unicode.
12273 (w32_to_x_font): Match charset to real charset.
12274 (enum_font_cb2): Always list unicode versions.
12275
12276 * makefile.w32-in (temacs): Increase EMHEAP.
12277
122782008-02-01 Jason Rumney <jasonr@gnu.org>
12279
12280 * w32term.c (w32_encode_char): New charset parameter.
12281 font_info.encoding becomes encoding_type.
12282 (x_get_font_repertory): New function. Warning: stub only!
12283 (x_new_font): Return quickly if font already set.
12284 (x_new_fontset): fontsetname parameter is Lisp_Object.
12285 Use new fs_query_fontset. Try new_fontset_from_font_name.
12286 Use fontset_name for return value.
12287
12288 * w32term.h: Declare x_get_font_repertory.
12289
12290 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
12291 place of find_charset_in_text. Use encode_coding_object in place
12292 of encode_coding.
12293 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
12294 decode_coding.
12295
12296 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
12297 of x_new_fontset.
12298 (w32_load_system_font): Initialize charset as unicode.
12299 font_info.encoding becomes encoding_type.
12300 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
12301 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
12302 (syms_of_w32fns): Set get_font_repertory_func.
12303
12304 * w32console.c: Include character.h. Use terminal_encode_buffer
12305 from term.c.
12306 (write_glyphs): Use new version of encode_terminal_code. Use
12307 encode_coding_object in place of encode_coding.
12308
12309 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
12310 encoding becomes encoding_type.
12311
12312 * term.c (terminal_encode_buffer): Make externally visible.
12313
12314 * makefile.w32-in: Add character.h dependancies.
12315 (character.o, chartab.o): New targets.
12316
123172008-02-01 Kenichi Handa <handa@m17n.org>
12318
12319 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
12320 CODING_ID_EOL_TYPE.
12321
123222008-02-01 Andreas Schwab <schwab@suse.de>
12323
12324 * coding.c (produce_chars): Revert last change.
12325
123262008-02-01 Kenichi Handa <handa@m17n.org>
12327
12328 * charset.h (charset_unicode): Extern it.
12329
12330 * charset.c (string_xstring_p): Check by (C >= 0x100).
12331 (find_charsets_in_text): Change format of the arc CHARSETS. New
12332 arg MULTIBYTE.
12333 (Ffind_charset_region, Ffind_charset_string): Adjust for the
12334 change of find_charsets_in_text.
12335 (Fsplit_char): Fix doc. Never return unknown.
12336
12337 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
12338
12339 * coding.c (Fdefine_coding_system_alias): Update
12340 Vcoding_system_list.
12341
12342 * fontset.c (load_font_get_repertory): Pay attention to the case
12343 that ENCODING of a font is specified by a char-table.
12344
12345 * xterm.c (x_get_font_repertory): Handle the case that the
12346 encoding of font is other than Unicode.
12347
123482008-02-01 Kenichi Handa <handa@m17n.org>
12349
12350 * term.c (encode_terminal_code): Don't handle glyph-table. Check
12351 if a character is encodable by the terminal coding system. If
12352 not, produces proper number of `?'s. Update
12353 terminal_encode_buffer and terminal_encode_buf_size if necessary.
12354 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
12355
123562008-02-01 Kenichi Handa <handa@m17n.org>
12357
12358 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
12359 variables.
12360 (encode_terminal_code): Change argument. Encode multiple
12361 characters at once. Store the result of encoding in
12362 terminal_encode_buffer.
12363 (write_glyphs, insert_glyphs): Adjust for the change of
12364 encode_terminal_code.
12365 (term_init): Initialize terminal_encode_buffer and
12366 terminal_encode_buf_size.
12367
12368 * coding.c (consume_chars): If coding->src_object is nil, don't
12369 check annotation.
12370
123712008-02-01 Kenichi Handa <handa@m17n.org>
12372
12373 * character.c (char_string): Use ASCII_CHAR_P instead of
12374 SINGLE_BYTE_CHAR_P.
12375
123762008-02-01 Kenichi Handa <handa@m17n.org>
12377
12378 * xdisp.c (handle_auto_composed_prop): Check if the last
12379 characters of auto-composed region is newly composed with the
12380 following characters.
12381 (handle_composition_prop): Fix checking of point being inside
12382 composition.
12383
123842008-02-01 Kenichi Handa <handa@m17n.org>
12385
12386 * fns.c (concat): Don't change multibyteness of the result by
12387 concatenating an 8-bit character.
12388
12389 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
12390 multibyteness of the result when newelt is an 8-bit character.
12391
123922008-02-01 Dave Love <fx@gnu.org>
12393
12394 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
12395 EMACS_INT.
12396
12397 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
12398
12399 * xfaces.c (face_numeric_value): Declare dim size_t.
12400 (Finternal_lisp_face_equal_p): Remove unused f.
12401
12402 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
12403 (MATRIX_ROW): Remove unused vars.
12404 (draw_glyphs, x_insert_glyphs, fast_find_position)
12405 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
12406 byte/char counts.
12407
12408 * regex.c (regex_compile): Remove unused var.
12409
12410 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
12411
12412 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12413 (Faccessible_keymaps, where_is_internal): Remove unused vars.
12414
12415 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
12416
12417 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
12418
12419 * fileio.c (Fwrite_region): Remove unused var.
12420
12421 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
12422 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
12423
12424 * composite.c (Fremove_list_of_text_properties): Declare.
12425
12426 * coding.c (inhibit_pre_post_conversion): Remove (unused).
12427 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
12428 (coding_inherit_eol_type): Remove unused attrs.
12429 (detect_coding): Cast arg of detect_eol.
12430
12431 * charset.c (syms_of_charset): Remove unused var p.
12432 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
12433 byte/char counts.
12434
12435 * casetab.c (set_case_table): Remove unused var.
12436
12437 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
12438 unused vars.
12439
124402008-02-01 Dave Love <fx@gnu.org>
12441
12442 * xterm.c (x_bitmap_mask): Declare.
12443
124442008-02-01 Dave Love <fx@gnu.org>
12445
12446 * xterm.c (x_term_init): Fix type error.
12447
12448 * lisp.h: Add Funibyte_char_to_multibyte.
12449
12450 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
12451 (Fset_coding_system_priority): Doc fix.
12452
12453 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
12454
12455 * indent.c (check_composition): Make start and end EMACS_INT.
12456
12457 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
12458
12459 * xdisp.c (handle_composition_prop, check_point_in_composition):
12460 Make buffer positions EMACS_INT.
12461
12462 * composite.c (find_composition, run_composition_function)
12463 (update_compositions, Ffind_composition_internal): Make buffer
12464 positions EMACS_INT.
12465
12466 * composite.h (find_composition, update_compositions): Make
12467 position args EMACS_INT.
12468
12469 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
12470
12471 * intervals.c (get_property_and_range):
12472 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
12473
12474 * unexalpha.c: Don't include varargs.h.
12475
124762008-02-01 Dave Love <fx@gnu.org>
12477
12478 * coding.h (ENCODE_UTF_8): New.
12479
12480 * Makefile.in (gtkutil.o): Depend on coding.h.
12481
12482 * coding.c (Fset_coding_system_priority): Doc fix.
12483
124842008-02-01 Kenichi Handa <handa@m17n.org>
12485
12486 * fileio.c (Finsert_file_contents): Call setup_coding_system in
12487 the case of auto saving.
12488
124892008-02-01 Andreas Schwab <schwab@suse.de>
12490
12491 * chartab.c (map_char_table, map_char_table_for_charset): Protect
12492 `range' from GC.
12493
124942008-02-01 Kenichi Handa <handa@m17n.org>
12495
12496 * coding.c (decode_coding_sjis): Check bytes more rigidly.
12497
124982008-02-01 Kenichi Handa <handa@m17n.org>
12499
12500 * fileio.c (choose_write_coding_system): Return a decided coding system.
12501 (Fwrite_region): Set Vlast_coding_system_used to the return value
12502 of choose_write_coding_system.
12503
125042008-02-01 Kenichi Handa <handa@m17n.org>
12505
12506 * charset.c (Fset_charset_priority): Pay attention to duplicated
12507 arguments.
12508
12509 * coding.c (QCcategory): New variable.
12510 (syms_of_coding): Defsym it. Set all elements of
12511 Vcoding_category_table and their symbol values.
12512 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
12513 coding-category-XXX, and coding-category-list.
12514 (Fdefine_coding_system_internal): Add category in the plist.
12515
125162008-02-01 Kenichi Handa <handa@m17n.org>
12517
12518 * callproc.c (Fcall_process): Handle carryover correctly.
12519
12520 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
12521 (raw_text_coding_system): Check NILP (coding_system).
12522 (coding_inherit_eol_type): Check NILP (coding_system) and
12523 NILP (parent).
12524 (consume_chars): Fix for the case of raw-text.
12525
12526 * process.c (read_process_output): Handle carryover correctly.
12527
125282008-02-01 Dave Love <fx@gnu.org>
12529
12530 * regex.c (re_search_2): Fix last change.
12531
125322008-02-01 Kenichi Handa <handa@m17n.org>
12533
12534 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
12535 target_multibyte. Even in a unibyte case, return a converted
12536 multibyte char.
12537 (GET_CHAR_AFTER): New macro.
12538 (PATFETCH): Translate via multibyte char.
12539 (HANDLE_UNIBYTE_RANGE): Delete this macro.
12540 (SETUP_MULTIBYTE_RANGE): New macro.
12541 (regex_compile): Setup compiled code so that its multibyteness
12542 matches that of a target. Fix the handling of "[X-YZ]" using
12543 SETUP_MULTIBYTE_RANGE.
12544 (analyse_first) <charset>: For filling fastmap for all multibyte
12545 characters, don't check by BASE_LEADING_CODE_P.
12546 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
12547 the same as RE_MULTIBYTE_P (bufp) now.
12548 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
12549 (TARGET_CHAR_AND_LENGTH): Delete this macro.
12550 (TRANSLATE_VIA_MULTIBYTE): New macro.
12551 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
12552 It is the same as RE_MULTIBYTE_P (bufp) now.
12553 <exactn>: Translate via multibyte.
12554 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
12555 translate it.
12556 <charset, charset_not>: Fetch a character by
12557 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
12558 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
12559 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
12560 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
12561 by GET_CHAR_AFTER.
12562 (bcmp_translate): Likewise.
12563
12564 * search.c (compile_pattern): Check the member target_multibyte,
12565 not the member multibyte of buf.
12566
12567 * lread.c (read1): While reading a string, set force_singlebyte
12568 and force_multibyte correctly.
12569
12570 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
12571 up of unibyte_to_multibyte_table.
12572
125732008-02-01 Kenichi Handa <handa@m17n.org>
12574
12575 * coding.c (setup_coding_system): If coding has
12576 post-read-conversion or pre-write-conversion, set
12577 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
12578 respectively.
12579 (decode_coding_gap): Run post-read-conversion if any.
12580
12581 * fileio.c (Finsert_file_contents): Even if we read into a
12582 unibyte buffer, check if we must decode the result or not.
12583
125842008-02-01 Kenichi Handa <handa@m17n.org>
12585
12586 * coding.c (make_conversion_work_buffer): Change the work buffer
12587 name to the same one as that of Emacs 21.
12588
125892008-02-01 Kenichi Handa <handa@m17n.org>
12590
12591 * coding.h (make_conversion_work_buffer): Adjust prototype.
12592 (code_conversion_restore): Don't extern it.
12593
12594 * coding.c (detected_mask): Delete unused variable.
12595 (decode_coding_iso_2022): Pay attention to the byte sequence of
12596 CTEXT extended segment, and retain those bytes as is.
12597 (decode_coding_ccl): Delete unused variable `valids'.
12598 (setup_coding_system): Delete unused variable `category'.
12599 (consume_chars): Delete unused variable `category'. Make it work
12600 for non-multibyte case.
12601 (make_conversion_work_buffer): Change argument.
12602 (saved_coding): Delete unused variable.
12603 (code_conversion_restore): Don't check saved_coding->destination.
12604 (code_conversion_save): New function.
12605 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
12606 instead of record_unwind_protect.
12607 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
12608 (detect_coding_system): Delete unused variable `mask'.
12609 (Fdefine_coding_system_internal): Delete unused variable id.
12610
12611 * fileio.c (kill_workbuf_unwind): New function.
12612 (Finsert_file_contents): On replacing, call
12613 make_conversion_work_buffer with correct args, and call
12614 record_unwind_protect with the first arg kill_workbuf_unwind.
12615
12616 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
12617
126182008-02-01 Kenichi Handa <handa@m17n.org>
12619
12620 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
12621 (fontset_add): Fix for the case that TO is less than TO1.
12622 (Ffontset_info): Don't use fallback fontset on checking the
12623 default fontset.
12624 (dump_fontset): New function for debugging.
12625
12626 * coding.c (Fdefine_coding_system_internal): Fix for the case that
12627 coding_type is Qcharset.
12628
126292008-02-01 Kenichi Handa <handa@m17n.org>
12630
12631 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
12632 (map_char_table): Don't inherit the value from the parent on
12633 initializing VAL. Adjust for the above change.
12634
126352008-02-01 Kenichi Handa <handa@m17n.org>
12636
12637 * coding.c (Qsignature, Qendian): Delete these variables.
12638 (syms_of_coding): Don't initialize them.
12639 (CATEGORY_MASK_UTF_16_AUTO): New macro.
12640 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
12641 detect_info->found.
12642 (decode_coding_utf_16): Don't detect BOM here.
12643 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
12644 is NOT utf_16_without_bom.
12645 (setup_coding_system): For a coding system of type utf-16, check
12646 if the attribute :endian is Qbig or not (not nil or not), and set
12647 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
12648 (detect_coding): If coding type is utf-16 and BOM detection is
12649 required, detect it.
12650 (Fdefine_coding_system_internal): For a coding system of type
12651 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
12652
126532008-02-01 Kenichi Handa <handa@m17n.org>
12654
12655 * coding.c (coding_set_source): Fix for the case that the current
12656 buffer is different from coding->src_object.
12657 (decode_coding_object): Don't use the conversion work buffer if
12658 DST_OBJECT is a buffer.
12659
126602008-02-01 Dave Love <fx@gnu.org>
12661
12662 * lread.c (read_emacs_mule_char) [len==2]: Index
12663 emacs_mule_charset correctly.
12664
126652008-02-01 Dave Love <fx@gnu.org>
12666
12667 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
12668 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
12669 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
12670 treated specially.)
12671 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
12672 (detected_mask): Remove Big5 bits.
12673
126742008-02-01 Kenichi Handa <handa@m17n.org>
12675
12676 The following changes are to make the font rescaling facility
12677 compatible with Emacs 21.
12678
12679 * xfaces.c (Vface_font_rescale_alist): Rename from
12680 Vface_resizing_fonts.
12681 (struct font_name): Rename member resizing_ratio to rescale_ratio.
12682 (font_rescale_ratio): Rename from font_resizing_ratio.
12683 (split_font_name): Set font->rescale_ratio.
12684 (better_font_p): Pay attention to font->rescale_ratio.
12685 (build_scalable_font_name): Likewise. Change RESX, and RESY
12686 fields.
12687 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12688
126892008-02-01 Kenichi Handa <handa@m17n.org>
12690
12691 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
12692 (Qutf_16_le): Remove these variables.
12693 (syms_of_coding): Don't DEFSYM them.
12694 (decode_coding_utf_16): Fix handling of BOM.
12695 (encode_coding_utf_16): Fix handling of BOM.
12696
126972008-02-01 Kenichi Handa <handa@m17n.org>
12698
12699 * fileio.c (Finsert_file_contents): On replacing, before decoding
12700 the file into the work buffer, set point of the work buffer to the end.
12701
127022008-02-01 Dave Love <fx@gnu.org>
12703
12704 * coding.c (Fcheck_coding_systems_region): Fix type errors.
12705
127062008-02-01 Dave Love <fx@gnu.org>
12707
12708 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12709 and fix C types.
12710
127112008-02-01 Kenichi Handa <handa@m17n.org>
12712
12713 * xdisp.c (SKIP_GLYPHS): New macro.
12714 (set_cursor_from_row): Pay attention to string display properties.
12715
12716 * category.c (copy_category_entry): Fix for the case that RANGE
12717 is an integer.
12718
12719 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
12720
12721 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
12722
127232008-02-01 Kenichi Handa <handa@m17n.org>
12724
12725 * charset.c (Fcharset_id_internal): New function.
12726 (syms_of_charset): Defsubr it.
12727
12728 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
12729 with the last arg charset_list acquired from coding.
12730 (Fdefine_coding_system_internal): For ccl-based coding system, fix
12731 the attribute coding_attr_ccl_valids.
12732
12733 * coding.h (enum define_coding_ccl_arg_index): Set the first
12734 member coding_arg_ccl_decoder to coding_arg_max.
12735
12736 * ccl.h (ccl_driver): Adjust prototype.
12737
12738 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
12739 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 12740 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
12741 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
12742 last arg Qnil.
12743
127442008-02-01 Kenichi Handa <handa@m17n.org>
12745
12746 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
12747 call encode_char.
12748
12749 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
12750
127512008-02-01 Dave Love <fx@gnu.org>
12752
12753 * composite.c (syms_of_composite): Make composition_hash_table weak.
12754
127552008-02-01 Kenichi Handa <handa@m17n.org>
12756
12757 * dispextern.h (check_face_attributes, generate_ascii_font_name)
12758 (font_name_registry): Don't extern them.
12759 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
12760
12761 * fontset.h (Qfontset): Don't extern it.
12762 (new_fontset_from_font_name): Extern it.
12763
12764 * fontset.c: Give 8 extra slots to fontset objects.
12765 (Qfontset_info): New variable.
12766 (syms_of_fontset): Defsym it.
12767 (FONTSET_FALLBACK): New macro.
12768 (fontset_face): Try also the default fontset.
12769 (make_fontset): Realize a fallback fontset from the default fontset.
12770 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
12771 using split_font_name_into_vector and build_font_name_from_vector.
12772 (Fset_fontset_font): Access the elements of font_spec by enum
12773 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
12774 name by using split_font_name_into_vector.
12775 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
12776 generate a proper font name from the fontset name. Update
12777 Vfontset_alias_alist.
12778 (n_auto_fontsets): New variable.
12779 (new_fontset_from_font_name): New function.
12780 (Ffont_info): Store the information about fonts generated from the
12781 default fontset in the first extra slot of the returned char-table.
12782
12783 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
12784 (font_name_registry): Delete function.
12785 (split_font_name_into_vector): New function.
12786 (build_font_name_from_vector): New function.
12787 (font_list): The argument REGISTRY is now a list of registry names.
12788 (choose_face_font): If we are choosing an ASCII font, and ATTRS
12789 specifies an explicit font name, return the name as is. Make a
12790 list of registy names.
12791
12792 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
12793 of x_new_fontset.
12794 (Fx_create_frame): Don't call x_new_fontset here. Just use
12795 x_list_fonts to check the existence of fonts.
12796
12797 * xterm.h (x_new_fontset): Adjust prototype.
12798
12799 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
12800 string. Use new_fontset_from_font_name to create a fontset from a
12801 font name.
12802
128032008-02-01 Kenichi Handa <handa@m17n.org>
12804
12805 * syntax.c (Vfind_word_boundary_function_table): New name for
12806 Vnext_word_boundary_function_table.
12807 (find-word-boundary-function-table): New name for
12808 next-word-boundary-function-table.
12809
128102008-02-01 Dave Love <fx@gnu.org>
12811
12812 * Makefile.in: Fix some dependencies.
12813
12814 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
12815 set it to nil before returning.
12816
12817 * composite.c (update_compositions): Fix type error.
12818
12819 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
12820
128212008-02-01 Kenichi Handa <handa@m17n.org>
12822
12823 * xterm.c (x_new_font): Optimize for the case that the font is
12824 already set for the frame.
12825
128262008-02-01 Kenichi Handa <handa@m17n.org>
12827
12828 * chartab.c (char_table_ascii): Check if the char table contents
12829 is sub-char-table or not.
12830 (char_table_set, char_table_set_range): Fix argument to
12831 char_table_ascii.
12832
12833 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
12834 (detect_coding_utf_8, detect_coding_utf_16)
12835 (detect_coding_emacs_mule, detect_coding_iso_2022)
12836 (detect_coding_sjis, detect_coding_big5)
12837 (detect_coding_ccl, detect_coding_charset): Change argument MASK
12838 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
12839 sequence is valid in this coding system. Change callers.
12840 (MAX_ANNOTATION_LENGTH): New macro.
12841 (ADD_ANNOTATION_DATA): New macro.
12842 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
12843 ADD_ANNOTATION_DATA. Change the format of annotation data.
12844 (ADD_CHARSET_DATA): New macro.
12845 (emacs_mule_char): New argument ID. Change callers.
12846 (decode_coding_emacs_mule, decode_coding_iso_2022)
12847 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
12848 Produce charset annotation data in coding->charbuf.
12849 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
12850 to charset annotation data in coding->charbuf.
12851 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
12852 coding->common_flags if the coding system is iso-2022 based and
12853 uses designation.
12854 (produce_composition): Adjust for the new annotation data format.
12855 (produce_charset): New function.
12856 (produce_annotation): Handle charset annotation.
12857 (handle_composition_annotation, handle_charset_annotation): New
12858 functions.
12859 (consume_chars): Handle charset annotation. Utilize the above two
12860 functions.
12861 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
12862 buffer, get the deleted text as a string and set
12863 coding->src_object to that string.
12864 (detect_coding, detect_coding_system): Use the new struct
12865 coding_detection_info.
12866
12867 * coding.h (struct coding_detection_info): New structure.
12868 (struct coding_system): Adjust prototype of the member `detector'.
12869 (CODING_ANNOTATE_CHARSET_MASK): New macro.
12870
128712008-02-01 Kenichi Handa <handa@m17n.org>
12872
12873 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
12874
128752008-02-01 Dave Love <fx@gnu.org>
12876
12877 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
12878 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
12879 to new local and nullify apropos_accumulate before returning.
12880 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
12881
128822008-02-01 Kenichi Handa <handa@m17n.org>
12883
12884 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
12885 correctly.
e3eea1fc 12886
aac0c6e3
MR
128872008-02-01 Dave Love <fx@gnu.org>
12888
12889 * fns.c (Flanginfo): Call synchronize_system_time_locale.
12890
128912008-02-01 Kenichi Handa <handa@m17n.org>
12892
12893 The following changes are to make character composition happen
12894 automatically on displaying.
12895
12896 * Makefile.in (lisp, shortlisp): Add composite.elc.
12897
12898 * composite.h (Qauto_composed, Vauto_composition_function)
12899 (Qauto_composition_function): Extern them.
12900
12901 * composite.c (Vcomposition_function_table)
12902 (Qcomposition_function_table): Delete variables.
12903 (Qauto_composed, Vauto_composition_function)
12904 (Qauto_composition_function): New variables.
12905 (run_composition_function): Don't call
12906 compose-chars-after-function.
12907 (update_compositions): Clear `auto-composed' text property.
12908 (compose_chars_in_text): Delete this function.
12909 (syms_of_composite): Staticpro Qauto_composed and
12910 Qauto_composition_function. Declare Vauto_composition_function as
12911 a Lisp variable.
12912
12913 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
12914
12915 * xdisp.c (it_props): Add an entry for Qauto_composed.
12916 (handle_auto_composed_prop): New function.
12917
12918 * xselect.c (selection_data_to_lisp_data): Don't call
12919 compose_chars_in_text.
12920
129212008-02-01 Dave Love <fx@gnu.org>
12922
12923 * keyboard.c (read_char): Modify checking around use of
12924 Vkeyboard_translate_table.
12925
12926 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12927 and fix C types.
12928
129292008-02-01 Kenichi Handa <handa@m17n.org>
12930
12931 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
12932 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
12933 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
12934 the case that the last byte is '\r' correctly.
12935 (decode_coding): Flush out the unprocessed data correctly.
12936 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
12937
129382008-02-01 Dave Love <fx@gnu.org>
12939
12940 * xterm.c (XTread_socket): Fix changes for defined keysyms.
12941 Add XK_ISO... case.
12942 (xaw_scroll_callback): Revert last change.
12943
129442008-02-01 Kenichi Handa <handa@m17n.org>
12945
12946 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
12947
129482008-02-01 Kenichi Handa <handa@m17n.org>
12949
12950 * xfaces.c (Vface_resizing_fonts): New variable.
12951 (struct font_name): New member `resizing_ratio'.
12952 (font_resizing_ratio): New function.
12953 (split_font_name): Set font->resizing_ratio.
12954 (better_font_p): Pay attention to font->resizing_ratio.
12955 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
12956 RESX, and RESY fields.
12957 (try_alternative_families): Try scalable fonts if
12958 Vscalable_fonts_allowed is not Qt.
12959 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
12960
129612008-02-01 Dave Love <fx@gnu.org>
12962
12963 * xterm.c (xaw_scroll_callback): Cast correctly.
12964
129652008-02-01 Dave Love <fx@gnu.org>
12966
12967 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
12968 (lispy_kana_keys): Comment out.
12969 (make_lispy_event) [XK_kana_A]: Comment out.
12970
12971 * xterm.c (xaw_scroll_callback): Cast call_data.
12972 (XTread_socket): Deal with ASCII keysyms.
12973 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
12974
129752008-02-01 Dave Love <fx@gnu.org>
12976
12977 * xterm.c (Vx_keysym_table): New.
12978 (syms_of_xterm): Initialize it.
12979 (XTread_socket): Use it.
12980 From head: Eliminate incorrect optimization that tried to avoid
12981 decoding the output of X*LookupString.
12982 (x_get_font_repertory): Delete charset declaration.
12983
129842008-02-01 Kenichi Handa <handa@m17n.org>
12985
12986 * coding.c (detect_coding_charset): If only ASCII bytes are found,
12987 return 0.
12988 (Fdefine_coding_system_internal): Setup
12989 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
12990
129912008-02-01 Dave Love <fx@gnu.org>
12992
12993 * coding.c (Fcheck_coding_system): Doc fix.
12994
12995 * editfns.c (Finsert_byte): Return a proper value.
12996
129972008-02-01 Kenichi Handa <handa@m17n.org>
12998
12999 * coding.c (decode_coding): Fix args to translate_chars. Pay
13000 attention to Vstandard_translation_table_for_decode.
13001 (encode_coding): Fix args to translate_chars. Pay attention to
13002 Vstandard_translation_table_for_encode.
13003
13004 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
13005 SINGLE_BYTE_CHAR_P.
13006
13007 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
13008 not by SINGLE_BYTE_CHAR_P.
13009
13010 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
13011 SINGLE_BYTE_CHAR_P.
13012
13013 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
13014 SINGLE_BYTE_CHAR_P.
13015
13016 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
13017 by SINGLE_BYTE_CHAR_P.
13018
13019 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
13020 SINGLE_BYTE_CHAR_P.
13021
130222008-02-01 Dave Love <fx@gnu.org>
13023
13024 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
13025
130262008-02-01 Dave Love <fx@gnu.org>
13027
13028 * fns.c (Flanginfo): Fix typo.
13029
13030 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
13031
130322008-02-01 Kenichi Handa <handa@m17n.org>
13033
13034 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
13035 (detect_coding_emacs_mule, detect_coding_iso_2022)
13036 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
13037 incomplete byte sequence. Don't update *mask when correctly detected.
13038 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
13039 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
13040 (detect_coding, detect_coding_system): Adjust for the changes above.
13041
130422008-02-01 Kenichi Handa <handa@m17n.org>
13043
13044 * character.c (char_string): Rename from
13045 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
13046 (string_char): Rename from string_char.
13047
13048 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
13049 if C is greater than MAX_3_BYTE_CHAR.
13050 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
13051 string_char instead of string_char_with_unification.
13052
130532008-02-01 Dave Love <fx@gnu.org>
13054
13055 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
13056
130572008-02-01 Kenichi Handa <handa@m17n.org>
13058
13059 * keymap.c (push_key_description): Pay attention to force_multibyte.
13060
13061 * regex.c (re_search_2): Fix for the case of unibyte buffer.
13062
130632008-02-01 Dave Love <fx@gnu.org>
13064
13065 * charset.c (define_charset_internal): Rename `supprementary'.
13066
13067 * Makefile.in (lisp, shortlisp): Remove latin-N.
13068
130692008-02-01 Dave Love <fx@gnu.org>
13070
13071 * xfns.c (x_window, x_window): Use use_xim.
13072
13073 * xterm.c (use_xim): Initialize.
13074 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
13075 (x_term_init): Maybe set use_xim.
13076
13077 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
13078
130792008-02-01 Kenichi Handa <handa@m17n.org>
13080
13081 * search.c (search_buffer): Fix case-fold-search of multibyte
13082 characters.
13083 (boyer_moore): Rename the last argument to char_high_bits.
13084
130852008-02-01 Kenichi Handa <handa@m17n.org>
13086
13087 * xdisp.c (display_string): Fix for the case of zero width glyph.
13088
13089 * xfns.c (x_set_font): Change the error message of the case that
13090 x_new_fontset returns Qt.
13091
13092 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
13093 (Finternal_set_lisp_face_attribute): Use signal_error for the
13094 error of invalid fontset.
13095
13096 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
13097 fontset, return Qt.
13098
130992008-02-01 Dave Love <fx@gnu.org>
13100
13101 * unexelf.c (unexec): Make .got handling not SGI-specific.
13102
13103 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
13104
13105 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
13106
13107 * keyboard.c (read_key_sequence): Fix type error.
13108
13109 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
13110 type error.
13111
13112 * fontset.c (fontset_add): Return Lisp_Object.
13113
131142008-02-01 Dave Love <fx@gnu.org>
13115
13116 * charset.h (charset_ordered_list_tick): Declare extern.
13117
131182008-02-01 Kenichi Handa <handa@m17n.org>
13119
13120 The following changes (and some of 2008-02-01 changes of mine) are
13121 for handling syntax, category, and case conversion for unibyte
13122 characters by converting them to multibyte on the fly. With these
13123 changes, we don't have to setup syntax and case tables for unibyte
13124 characters in each language environment.
13125
13126 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
13127 multibyte if necessary.
13128
13129 * bytecode.c (Fbyte_code): Likewise.
13130
13131 * character.h (LEADING_CODE_LATIN_1_MIN)
13132 (LEADING_CODE_LATIN_1_MAX): New macros.
13133 (unibyte_to_multibyte_table): Extern it.
13134 (unibyte_char_to_multibyte): New macro.
13135 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
13136 (CHAR_LEADING_CODE): New macro.
13137 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
13138
13139 * character.c (unibyte_to_multibyte_table): New variable.
13140 (unibyte_char_to_multibyte): Move to character.h and define as macro.
13141 (multibyte_char_to_unibyte): If C is an eight-bit character,
13142 convert it to the corresponding byte value.
13143
13144 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
13145 not 1, signals an error. Update the elements of
13146 unibyte_to_multibyte_table.
13147 (init_charset_once): Initialize unibyte_to_multibyte_table.
13148 (syms_of_charset): Define the charset `iso-8859-1'.
13149
13150 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
13151 as is without converting it to unibyte. In a unibyte buffer,
13152 convert C to multibyte before checking the syntax.
13153
13154 * lisp.h (unibyte_char_to_multibyte): Delete extern.
13155
13156 * minibuf.c (Fminibuffer_complete_word): Use the macro
13157 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
13158
13159 * regex.h (struct re_pattern_buffer): New member target_multibyte.
13160
13161 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
13162 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
13163 that is zero, convert an eight-bit char to multibyte.
13164 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
13165 non-emacs case.
13166 (PATFETCH): Convert an eight-bit char to multibyte.
13167 (HANDLE_UNIBYTE_RANGE): New macro.
13168 (regex_compile): Setup the compiled pattern for multibyte chars
13169 even if the given regex string is unibyte. Use PATFETCH_RAW
13170 instead of PATFETCH in many places. To handle `charset'
13171 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
13172 only for ASCII chars.
13173 (analyse_first) <exactn>: Simplify because the compiled pattern
13174 is multibyte.
13175 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
13176 <charset>: Use CHAR_LEADING_CODE to get leading codes.
13177 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
13178 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
13179 multibyte always 1.
13180 (re_search_2): In emacs, set the locale variable multibyte to 1,
13181 otherwise to 0. New local variable target_multibyte. Check it
13182 to decide the multibyteness of STR1 and STR2. If
13183 target_multibyte is zero, convert unibyte chars to multibyte
13184 before translating and checking fastmap.
13185 (TARGET_CHAR_AND_LENGTH): New macro.
13186 (re_match_2_internal): In emacs, set the locale variable multibyte
13187 to 1, otherwise to 0. New local variable target_multibyte. Check
13188 it to decide the multibyteness of STR1 and STR2. Use
13189 TARGET_CHAR_AND_LENGTH to fetch a character from D.
13190 <charset, charset_not>: If multibyte is nonzero, check fastmap
13191 only for ASCII chars. Call bcmp_translate with
13192 target_multibyte, not with multibyte.
13193 <begline>: Declare the local variable C as `unsigned'.
13194 (bcmp_translate): Change the last arg name to target_multibyte.
13195
13196 * search.c (compile_pattern_1): Don't adjust the multibyteness of
13197 the regexp pattern and the matching target. Set cp->buf.multibyte
13198 to the multibyteness of the regexp pattern. Set
13199 cp->but.target_multibyte to the multibyteness of the matching target.
13200 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
13201 FETCH_STRING_CHAR_ADVANCE.
13202 (Freplace_match): Convert unibyte chars to multibyte.
13203
13204 * syntax.c (char_quoted, back_comment, scan_words)
13205 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
13206 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
13207 unibyte chars to multibyte.
13208 (skip_chars): Delete the arg syntaxp, and move the code for
13209 handling syntaxes to skip_syntaxes. Change callers.
13210 Fix the case that the multibyteness of STRING and the current
13211 buffer doesn't match.
13212 (skip_syntaxes): New function.
13213 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
13214 SINGLE_BYTE_CHAR_P.
13215
132162008-02-01 Kenichi Handa <handa@m17n.org>
13217
13218 * xfaces.c (QCfontset): New variable.
13219 (LFACE_FONTSET): New macro.
13220 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
13221 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
13222 (Finternal_set_lisp_face_attribute)
13223 (Finternal_get_lisp_face_attribute): Handle QCfontset.
13224 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
13225 check also LFACE_FONTSET_INDEX.
13226 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
13227 attrs[LFACE_FONT_INDEX].
13228 (syms_of_xfaces): Intern and staticpro QCfontset.
13229
13230 * dispextern.h (enum lface_attribute_index): New member
13231 LFACE_FONTSET_INDEX.
13232
13233 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
13234
132352008-02-01 Kenichi Handa <handa@m17n.org>
13236
13237 * coding.c (coding_set_destination): Fix coding->destination for
13238 the case converting a region.
13239 (encode_coding_utf_8): Encode eight-bit chars as single byte.
13240 (encode_coding_object): Fix coding->dst_pos and
13241 coding->dst_pos_byte for the case converting a region.
13242
13243 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
13244
13245 * character.h (BYTE8_STRING): New macro.
13246
13247 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
13248
132492008-02-01 Kenichi Handa <handa@m17n.org>
13250
13251 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
13252 characters by octal form.
13253
13254 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
13255
13256 * buffer.h (_fetch_multibyte_char_len): Delete extern.
13257 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
13258 _fetch_multibyte_char_len.
13259 (FETCH_CHAR_AS_MULTIBYTE): New macro.
13260
13261 * casetab.c (set_canon, set_identity, shuffle): Simplify.
13262
13263 * casefiddle.c (casify_object): Simplify. Handle the case that
13264 the case conversion change the byte length.
13265 (casify_region): Likewise.
13266
13267 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
13268
13269 * character.c (_fetch_multibyte_char_len): Delete this variable.
13270 (syms_of_character): Setup Vprintable_chars.
13271
13272 * editfns.c (Fchar_equal): Fix for the unibyte case.
13273 (Finsert_byte): New function.
13274 (syms_of_editfns): Defsubr it.
13275
13276 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
13277 of direct code 0x3ffff.
13278
13279 * search.c (Freplace_match): Fix for the unibyte case.
13280
132812008-02-01 Kenichi Handa <handa@m17n.org>
13282
13283 * lread.c (safe_to_load_p): Fix the logic.
13284
13285 * syntax.c (scan_words): Don't treat characters belonging to
13286 different scripts as constituting a word.
13287
13288 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13289
13290 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
13291
13292 * emacs.c (main): In the case of --unibyte, instead of aborting on
13293 finding non-empty buffer, make it unibyte.
13294
132952008-02-01 Kenichi Handa <handa@m17n.org>
13296
13297 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
13298 to create a fontset.
13299
133002008-02-01 Dave Love <fx@gnu.org>
13301
13302 * character.c (Funibyte_char_to_multibyte): Doc fix.
13303
13304 * xfns.c [HAVE_STDLIB_H]: Fix last change.
13305
133062008-02-01 Kenichi Handa <handa@m17n.org>
13307
13308 * fontset.c (fontset_add): Make the type `int'.
13309 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
13310
13311 * character.c (unibyte_char_to_multibyte)
13312 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
13313 charset_unibyte, not charset_primary.
13314
13315 * charset.h (charset_unibyte): Extern it instead of charset_primary.
13316
13317 * charset.c (charset_unibyte): Rename from charset_primary.
13318 (Funibyte_charset): Rename from Fprimary_charset.
13319 (Fset_unibyte_charset): Rename from Fset_primary_charset.
13320 (syms_of_charset): Adjust for the above changes.
13321
13322 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
13323 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
13324 it->multibyte_p is zero.
13325
13326 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
13327 Delete extern.
13328
133292008-02-01 Kenichi Handa <handa@m17n.org>
13330
13331 * coding.c (Fdefine_coding_system_internal): Fix category setting
13332 for a coding system of type iso-2022.
13333
133342008-02-01 Kenichi Handa <handa@m17n.org>
13335
13336 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
13337
133382008-02-01 Kenichi Handa <handa@m17n.org>
13339
13340 * syntax.c (Vnext_word_boundary_function_table): New variable.
13341 (next-word-boundary-function-table): Declare it as a Lisp variable
13342 in syms_of_syntax.
13343 (scan_words): Call functions in Vnext_word_boundary_function_table
13344 if any.
13345
13346 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
13347
13348 * fontset.c (fs_load_font): If fontp->charset is not negative,
13349 return fontp without setting its members.
13350
133512008-02-01 Dave Love <fx@gnu.org>
13352
13353 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
13354
13355 * m/sparc.h (HAVE_ALLOCA): Delete.
13356
13357 * s/irix6-5.h: Don't include strings.h.
13358 (bcopy, bzero, bcmp): Don't undef.
13359
13360 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
13361
13362 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
13363 (TIOCSIGSEND): Don't test IRIX6.
13364 (bcopy, bzero, bcmp): Define conditionally.
13365
133662008-02-01 Kenichi Handa <handa@m17n.org>
13367
13368 * buffer.c (Qas, Qmake, Qto): New variables.
13369 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
13370 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
13371
13372 * callproc.c (Fcall_process): Don't call insert_1_both directly if
13373 we are inserting a process output into a multibyte buffer.
13374
13375 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
13376 multibyte_char_to_unibyte.
13377
13378 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
13379 by the primary charset, make it eight-bit char.
13380 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
13381
13382 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
13383 (charset_8_bit__control, charset_8_bit_graphic)
13384 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
13385 (define_charset_internal): New function.
13386 (syms_of_charset): Call define_charset_internal for pre-defined
13387 charsets.
13388
13389 * charset.h (charset_8_bit): Extern it.
13390
13391 * coding.c (make_conversion_work_buffer): Adjust for the change
13392 of Fset_buffer_multibyte.
13393 (encode_coding_raw_text): Increment p0 in the loop.
13394
13395 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
13396
13397 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
13398 for the change of Fset_buffer_multibyte.
13399
13400 * fns.c (Fstring_to_multibyte): New function.
13401 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
13402
134032008-02-01 Dave Love <fx@gnu.org>
13404
13405 * xfns.c (x_put_x_image): Declare args.
13406
13407 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
13408 (try_font_list): Declare an arg.
13409
13410 * xdisp.c (message2_nolog, set_message): Declare an arg.
13411
13412 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
13413
13414 * syntax.c (scan_sexps_forward): Declare an arg.
13415
13416 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
13417 Declare an arg.
13418
13419 * lisp.h (Fnew_fontset): Declare.
13420
13421 * keymap.c (push_key_description): Call CHARACTERP correctly.
13422
13423 * fontset.c (fontset_add): Declare args. Call make_number correctly.
13424 (face_for_char): Delete unused vars.
13425 (Fset_fontset_font): Doc fix. Delete unused vars.
13426
13427 * doc.c (Fsubstitute_command_keys): Delete unused vars.
13428
13429 * composite.c (update_compositions): Declare arg.
13430
13431 * cm.c (calccost, cmgoto): Declare args.
13432
13433 * charset.c: Remove `emacs' conditional. Doc fixes.
13434 (map_char_table_for_charset): Declare.
13435
13436 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
13437
13438 * ccl.c: Remove `emacs' conditional.
13439
134402008-02-01 Kenichi Handa <handa@m17n.org>
13441
13442 The following changes are to allow specifying multiple font
13443 patterns for a character range (specified by script or charset).
13444
13445 * Makefile.in (abbrev.o): Depend on syntax.h.
13446 (xfaces.o): Depend on charset.h.
13447
13448 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
13449 SINGLE_BYTE_CHAR_P.
13450
13451 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
13452
13453 * character.h (Vchar_script_table): Extern it.
13454
13455 * character.c (Vscript_alist): Delete.
13456 (Vchar_script_table, Qchar_script_table): New variable.
13457 (syms_of_character): Declare Vchar_script_table as a lisp variable
13458 and initialize it.
13459
13460 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
13461 have property char-table-extra-slots, make no extra slot.
13462
13463 * dispextern.h (struct face): Delete member `charset'.
13464 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
13465 SINGLE_BYTE_CHAR_P.
13466 (choose_face_font, lookup_non_ascii_face, font_name_registry):
13467 Add prototypes.
13468 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
13469 (generate_ascii_font_name): Rename from generate_ascii_font.
13470
13471 * fontset.h (get_font_repertory_func): New prototype.
13472 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
13473 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
13474
13475 * fontset.c (Qprepend, Qappend): New variables.
13476 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
13477 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
13478 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
13479 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
13480 (fontset_ref_and_range, fontset_add, reorder_font_vector)
13481 (load_font_get_repertory): New functions.
13482 (fontset_set): Delete.
13483 (fontset_face): New arg FACE. Return face ID, not face.
13484 Complete re-write to handle new fontset structure. Change caller.
13485 (free_face_fontset): Use ASET istead of AREF (X) = Y.
13486 (face_for_char): Don't call lookup_face.
13487 (make_fontset_for_ascii_face): New arg FACE.
13488 (fs_load_font): New arg CHARSET_ID. Don't check
13489 Vfont_encoding_alist here.
13490 (find_font_encoding): New function.
13491 (list_fontsets): Use STRINGP, not ! NILP.
13492 (accumulate_script_ranges): New function.
13493 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
13494 re-written to handle new fontset structure.
13495 (Ffontset_font): Return a copy of element.
13496 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
13497 docstring of font-encoding-alist.
13498
13499 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
13500 (Fset_fotset_font): Fix arguments to 5.
13501
13502 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
13503
13504 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
13505 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13506 (highlight_trailing_whitespace): Adjust for the change of
13507 lookup_named_face.
13508
13509 * xfaces.c: Include charset.h.
13510 (load_face_font): Delete argument C. Change caller.
13511 (generate_ascii_font_name): Rename from generate_ascii_font.
13512 (font_name_registry): New function.
13513 (cache_face): Store ascii faces before non-ascii faces in buckets.
13514 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
13515 Lookup only ascii faces.
13516 (lookup_non_ascii_face): New function.
13517 (lookup_named_face): Delete argument C. Change caller.
13518 (lookup_derived_face): Delete argument C. Change caller.
13519 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
13520 a string, just call font_list with it.
13521 (choose_face_font): Delete arguments FACE and C. New arg
13522 FONT_SPEC. Change caller.
13523 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
13524 Change caller.
13525 (realize_non_ascii_face): New function.
13526 (realize_x_face): Call load_face_font here.
13527 (realize_tty_face): Delete argument C. Change caller.
13528 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
13529 get a face ID.
13530 (dump_realized_face): Don't print charset of FACE.
13531
13532 * xfns.c (x_set_font): Always call x_new_fontset and
13533 store_frame_parameter.
13534 (Fx_create_frame): Call x_new_fontset, not x_new_font.
13535 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
13536
13537 * xterm.h (x_get_font_repertory): Extern it.
13538
13539 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
13540 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
13541 it->multibyte_p is zero.
13542 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13543 (x_new_fontset): If FONTSETNAME doesn't match any existing
13544 fontsets, create a new one.
13545 (x_get_font_repertory): New function.
13546
135472008-02-01 Kenichi Handa <handa@m17n.org>
13548
13549 * coding.c (Ffind_coding_systems_region_internal): Detect an
13550 ASCII only string correctly.
13551
13552 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
13553 version is 0.
13554
135552008-02-01 Kenichi Handa <handa@m17n.org>
13556
13557 * lread.c: Include "coding.h".
13558 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
13559 (load_each_byte, unread_char): New variables.
13560 (readchar_backlog): Delete.
13561 (readchar): Return a character unless load_each_byte is nonzero.
13562 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
13563 cons. If unread_char is not -1, simply return it.
13564 (unreadchar): Handle the case that readcharfun is
13565 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
13566 (read_multibyte): Delete.
13567 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
13568 (read_emacs_mule_char): New functions.
13569 (Fload): Even if the file doesn't have the extension ".elc", if
13570 safe_to_load_p returns a positive version number, assume that the
13571 file contains bytecompiled code. If the version is less than 22,
13572 load the file while decoding multibyte sequences by emacs-mule.
13573 (readevalloop): Don't use readchar_backlog.
13574 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
13575 (Fread_from_string): Pay attention to the case that STREAM is a cons.
13576 (read_escape): Delete the arg BYTEREP.
13577 (read1): Set load_each_byte to 1 temporarily while handling
13578 #@NUMBER. Don't call read_multibyte.
13579 (read_vector): Call Fread with a cons. If readcharfun is
13580 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
13581 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
13582 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
13583 and Qload_force_doc_strings.
13584
135852008-02-01 Kenichi Handa <handa@m17n.org>
13586
13587 * xdisp.c (face_before_or_after_it_pos): Call
13588 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
13589
135902008-02-01 Kenichi Handa <handa@m17n.org>
13591
13592 * character.h (TRAILING_CODE_P): New macro.
13593 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
13594 (string_char_with_unification): Fix prototype.
13595 (Vscript_alist): Extern it.
13596
13597 * character.c (Vscript_alist): New variable.
13598 (string_char_with_unification, str_as_unibyte)
13599 (string_escape_byte8): Add `const' to local variables.
13600 (syms_of_character): Declare script-alist as a Lisp variable.
13601
13602 * charset.h (Vcharset_ordered_list): Extern it.
13603 (charset_ordered_list_tick): Extern it.
13604 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
13605 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
13606 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
13607 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
13608 (Funify_charset): Adjust for the change of Funify_charset.
13609
13610 * charset.c (charset_ordered_list_tick): New variable.
13611 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
13612 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
13613 deunify intead of unify a charset.
13614 (string_xstring_p): Add `const' to local variables.
13615 (find_charsets_in_text): Add `const' to arguments and local variables.
13616 (encode_char): Adjust for the change of Funify_charset. Fix
13617 detecting of invalid code.
13618 (Fset_charset_priority): Increment charset_ordered_list_tick.
13619 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
13620 and TO_CODE.
13621
13622 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
13623 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
13624 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
13625 (decode_coding_ccl, consume_chars)
13626 (Ffind_coding_systems_region_internal)
13627 (Fcheck_coding_systems_region): Add `const' to local variables.
13628
13629 * print.c (print_object): Use octal form for printing the
13630 contents of a bool vector.
13631
136322008-02-01 Dave Love <fx@gnu.org>
13633
13634 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
13635 <version == 20>: Refuse to load.
13636
136372008-02-01 Dave Love <fx@gnu.org>
13638
13639 * fns.c: Move coding.h.
13640 (Qcodeset, Qdays, Qmonths): New.
13641 (concat): Use CHARACTERP instead of INTEGERP.
13642 (Flocale_codeset): Delete.
13643 (Flanginfo): New function.
13644 (syms_of_fns): Change accordingly.
13645
13646 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
13647
136482008-02-01 Dave Love <fx@gnu.org>
13649
13650 * casetab.c (init_casetab_once, init_casetab_once): Fix
13651 CHAR_TABLE_SET call.
13652
13653 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
13654
13655 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
13656
13657 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
13658 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
13659 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
13660
13661 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
13662
13663 * coding.c (ENCODE_DESIGNATION, decode_eol)
13664 (make_conversion_work_buffer, code_conversion_restore)
13665 (Fdefine_coding_system_internal): Convert Lisp types.
13666 (code_conversion_restore): Use EQ, not ==.
13667 (Fencode_coding_string): Fix code_convert_string call.
13668
13669 * coding.h (code_convert_region): Fix prototype.
13670
13671 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
13672
13673 * fontset.c (fontset_ref, fontset_set, fs_load_font)
13674 (Ffontset_info): Convert Lisp types.
13675
13676 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
13677
13678 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
13679
13680 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
13681
13682 * chartab.c: Include "...h", not <...h> in some cases.
13683
13684 * callproc.c (Fcall_process): Remove unused variables.
13685
136862008-02-01 Dave Love <fx@gnu.org>
13687
13688 * coding.c (Fset_coding_system_priority): Allow null arg list.
13689
136902008-02-01 Dave Love <fx@gnu.org>
13691
13692 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
13693 (Fself_insert_and_exit): Use CHARACTERP.
13694
13695 * callproc.c (Fcall_process): Remove unused vars.
13696
13697 * xterm.c (XTread_socket): Add extra dead keysyms.
13698
13699 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
13700
13701 * dispextern.h: Remove prototypes for redraw_frame,
13702 redraw_garbaged_frames.
13703
13704 * cmds.c (Fself_insert_command): Use CHARACTERP.
13705
13706 * chartab.c (make_sub_char_table): Remove unused var.
13707 (Fset_char_table_default, Fmap_char_table): Doc fix.
13708
13709 * keymap.c (access_keymap): Remove generic char code.
13710 (push_key_description): Use CHARACTERP.
13711
137122008-02-01 Dave Love <fx@gnu.org>
13713
13714 * charset.c: Doc fixes.
13715 (Funify_charset): Extra checking.
13716
137172008-02-01 Dave Love <fx@gnu.org>
13718
13719 * lread.c: Remove some unused variables.
13720 (safe_to_load_p): If safe, return the magic number version byte.
13721 (Fload): Maybe use load-with-code-conversion.
13722
137232008-02-01 Kenichi Handa <handa@m17n.org>
13724
13725 * category.c (Fmodify_category_entry): Don't modify the contents
13726 of category_set for characters out of the range. Avoid
13727 unnecessary modification.
13728
13729 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
13730 Vchar_unify_table. The default value of the table is now nil.
13731
13732 * character.c (syms_of_character): Setup Vchar_width_table for
13733 eight-bit-control and raw-byte chars.
13734
13735 * charset.h (enum define_charset_arg_index): Delete
13736 charset_arg_parents and add charset_arg_subset and
13737 charset_arg_superset.
13738 (enum charset_attr_index): Delete charset_parents and add
13739 charset_subset and charset_superset.
13740 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
13741 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
13742 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
13743 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
13744 (CHARSET_SUPERSET): New macros.
13745 (charset_work): Extern it.
13746 (ENCODE_CHAR): Use charset_work.
13747 (CHAR_CHARSET_P): Adjust for the change of encoder format.
13748 (map_charset_chars): Extern it.
13749
13750 * charset.c (load_charset_map): Set the default value of encoder
13751 and deunifier char-tables to nil.
13752 (map_charset_chars): Change argument. Change callers. Use
13753 map_char_table_for_charset instead of map_char_table.
13754 (Fmap_charset_chars): New optional args from_code and to_code.
13755 (Fdefine_charset_internal): Adjust for the change of
13756 `define-charset' (:parents -> :subset or :superset).
13757 (charset_work): New variable.
13758 (encode_char, syms_of_charset): Adjust for the change of
13759 Fdefine_charset_internal.
13760 (Ffind_charset_string): Setup the vector `charsets' correctly.
13761
13762 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
13763 the previous change.
13764 (char_table_ref_and_range): Adjust for the above change.
13765 (map_sub_char_table_for_charset): New function.
13766 (map_char_table_for_charset): New function.
13767
13768 * keymap.c (describe_vector): Handle a char-table directly here.
13769 (describe_char_table): Delete.
13770
13771 * lisp.h (map_charset_chars): Delete.
13772
137732008-02-01 Dave Love <fx@gnu.org>
13774
13775 * fns.c (count_combining): Comment out (unused).
13776 (Flocale_codeset): New.
13777 (syms_of_fns): Defsubr it.
13778
13779 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
13780 (size_t): Remove.
13781
137822008-02-01 Dave Love <fx@gnu.org>
13783
13784 * Makefile.in (chartab.o): Depend on charset.h.
13785
137862008-02-01 Kenichi Handa <handa@m17n.org>
13787
13788 * character.c (syms_of_character): Set the default value of
13789 Vprintable_chars to Qnil.
13790
137912008-02-01 Dave Love <fx@gnu.org>
13792
13793 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
13794
137952008-02-01 Kenichi Handa <handa@m17n.org>
13796
13797 * charset.c (load_charset_map): Handle the case that from < to
13798 correctly.
13799
13800 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
13801 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
13802 Pay attention to raw-8-bit chars.
13803
138042008-02-01 Kenichi Handa <handa@m17n.org>
13805
13806 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
13807 It is not bytecompiled now.
13808
13809 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
13810 (charset_jisx0208): New variables.
13811 (Fdefine_charset_internal): Setup them if appropriate.
13812 (init_charset_once): Initialize them to -1.
13813
13814 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
13815 (charset_jisx0208): Extern them.
13816
13817 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
13818 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
13819 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
13820 (setup_iso_safe_charsets): Fix arguments to Fassq.
13821 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
13822 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
13823 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
13824 (encode_coding_iso_2022): Change the 1st arg to
13825 ENCODE_ISO_CHARACTER to a variable.
13826
138272008-02-01 Kenichi Handa <handa@m17n.org>
13828
13829 * charset.h (enum define_charset_arg_index): New enums
13830 charset_arg_min_code and charset_arg_max_code.
13831 (struct charset): New member char_index_offset.
13832
13833 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
13834 Take charset->char_index_offset into account.
13835 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
13836 args[charset_arg_max_code]. Setup charset.char_index_offset.
13837 (syms_of_charset): Fix args to Fdefine_charset_internal.
13838
138392008-02-01 Dave Love <fx@gnu.org>
13840
13841 * coding.c (decode_coding_utf_8): Reject overlong sequences.
13842
138432008-02-01 Dave Love <fx@gnu.org>
13844
13845 * coding.c: Doc fixes.
13846 (Fcoding_system_aliases): Fix return value.
13847 (Qmac): Remove (duplicated) definition.
13848
138492008-02-01 Dave Love <fx@gnu.org>
13850
13851 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
13852 functions.
13853
13854 * character.c (Fstring): Doc fix.
13855
13856 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
13857
13858 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
13859 ids.
13860 (font-encoding-alist): Doc fix.
13861
138622008-02-01 Dave Love <fx@gnu.org>
13863
13864 * term.c (costs_set): Declare static, non-initialized for pcc.
13865 (encode_terminal_code): Remove unused var.
13866
13867 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
13868 for K&R.
13869
13870 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
13871
13872 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
13873 (suffixes): Move out of make_subsidiaries for K&R.
13874
13875 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
13876
13877 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
13878
138792008-02-01 Dave Love <fx@gnu.org>
13880
13881 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
13882
13883 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
13884
138852008-02-01 Yong Lu <lyongu@asia-infonet.com>
13886
13887 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
13888
13889 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
13890
138912008-02-01 Kenichi Handa <handa@m17n.org>
13892
13893 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
13894 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
13895
138962008-02-01 Kenichi Handa <handa@m17n.org>
13897
13898 * coding.c (decode_coding_charset): Adjust for the change of
13899 Fdefine_coding_system_internal.
13900 (Fdefine_coding_system_internal): For a coding system of
13901 `charset' type, store a list of charset IDs in
13902 `charset_attr_charset_valids' element of coding attributes.
13903
139042008-02-01 Kenichi Handa <handa@m17n.org>
13905
13906 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
13907 (emacs_mule_char): New arg src. Delete arg `composition'. Change
13908 caller. Handle 2-byte and 3-byte charsets correctly.
13909 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
13910 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
13911 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
13912 (DECODE_EMACS_MULE_21_COMPOSITION): Call
13913 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
13914 sequence.
13915 (decode_coding_emacs_mule): Handle composition correctly. Rewind
13916 `src' and `consumed_chars' correctly before calling emacs_mule_char.
13917 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
13918 and alt&rule composition.
13919 (decode_coding_iso_2022): Handle composition correctly.
13920 (init_coding_once): Setup emacs_mule_bytes for private charsets.
13921
13922 * charset.c (Fdefine_charset_internal): Fix bug for the case of
13923 re-defining a charset. If the charset has :emacs-mule-id, setup
13924 emacs_mule_bytes.
13925 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
13926
139272008-02-01 Kenichi Handa <handa@m17n.org>
13928
13929 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
13930 (encode_coding_big5, encode_coding_charset): If coding requires safe
13931 encoding, produce a character specified by
13932 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
13933
139342008-02-01 Dave Love <fx@gnu.org>
13935
13936 * xterm.c (XSetIMValues): Declare.
13937
13938 * process.c: Conditionally include sys/wait.h, pty.h.
13939
13940 * print.c (print_object): Fix print format for 64-bit systems.
13941
13942 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
13943
13944 * buffer.c (emacs_strerror): Declare.
13945
13946 * fontset.c (Fclear_face_cache): Declare.
13947 (accumulate_font_info): Comment-out (unused).
13948 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
13949 variables.
13950
13951 * character.h (string_escape_byte8): Declare.
13952
13953 * charset.c (load_charset_map, load_charset_map_from_file): Remove
13954 unused vars.
13955 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
13956 (Fmap_charset_chars): Doc fix.
13957
13958 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
13959 (Fset_coding_system_priority, Fset_coding_system_priority)
13960 (Fdefine_coding_system_internal): Doc fix.
13961
139622008-02-01 Dave Love <fx@gnu.org>
13963
13964 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
13965
139662008-02-01 Kenichi Handa <handa@m17n.org>
13967
13968 * character.c (string_escape_byte8): Make multibyte string with
13969 correct size.
13970
13971 * charset.c (Fmake_char): Delete unnecessary code.
13972
139732008-02-01 Kenichi Handa <handa@m17n.org>
13974
13975 * xfns.c (x_encode_text): Allocate coding.destination here, and
13976 call encode_coding_object with dst_object Qnil.
13977
13978 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
13979 multibyte form correctly.
13980
13981 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
13982 against Vfont_encoding_alist.
13983
13984 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
13985 handling of charset list.
13986 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
13987 (decode_coding_object): Move point to coding->dst_pos before
13988 calling post-read-conversion function.
13989 (encode_coding_object): Give correct arguments to
13990 pre-write-conversion. Ignore the return value of
13991 pre-write-conversion function. Pay attention to the case that
13992 pre-write-conversion changes the current buffer. If dst_object is
13993 Qt, even if coding->src_bytes is zero, allocate at least one byte
13994 to coding->destination.
13995
13996 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
13997
13998 * charset.c (Fmake_char): Make it more backward compatible.
13999 (Fmap_charset_chars): Fix docstring.
14000
140012008-02-01 Dave Love <fx@gnu.org>
14002
14003 * coding.c: Doc fixes.
14004 (Fdefine_coding_system_alias): Use names, not symbols, in
14005 coding-system-alist.
14006
140072008-02-01 Kenichi Handa <handa@m17n.org>
14008
14009 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
14010 of calling free_realized_face.
14011
140122008-02-01 Yong Lu <lyongu@asia-infonet.com>
14013
14014 * charset.c (read_hex): Don't treat SPC as a comment starter.
14015 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
14016 (Fdecode_char): Fix typo.
14017
140182008-02-01 Kenichi Handa <handa@m17n.org>
14019
14020 * charset.h (struct charset): New member `code_space_mask'.
14021
14022 * coding.c (coding_set_source): Delete the local variable beg_byte.
14023 (encode_coding_charset, Fdefine_coding_system_internal):
14024 Delete the local variable charset.
14025 (Fdefine_coding_system_internal): Setup
14026 attrs[coding_attr_charset_valids] correctly.
14027
14028 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
14029 member to check if CODE is valid or not.
14030 (Fdefine_charset_internal): Initialize `code_space_mask' member.
14031 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
14032 is within the range of charset->min_code and carset->max_code.
14033
140342008-02-01 Dave Love <fx@gnu.org>
14035
14036 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
14037
14038 * dispextern.h (generate_ascii_font): Fix return type.
14039
14040 * xfaces.c (generate_ascii_font): Fix arg declaration.
14041
14042 * coding.c (coding_inherit_eol_type)
14043 (Fset_terminal_coding_system_internal)
14044 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
14045
140462008-02-01 Kenichi Handa <handa@m17n.org>
14047
14048 * coding.c (decode_coding_charset, encode_coding_charset): Handle
14049 multiple charsets correctly.
14050
140512008-02-01 Kenichi Handa <handa@m17n.org>
14052
14053 * search.c (boyer_moore): Fix handling of multibyte character
14054 translation.
14055
14056 * xdisp.c (display_mode_element): When the variable `elt' is
14057 changed, update `this' and `lisp_string'.
14058
140592008-02-01 Kenichi Handa <handa@m17n.org>
14060
14061 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
14062
14063 * callproc.c (Fcall_process): Be sure to give the current buffer
14064 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
14065
14066 * charset.c (struct charset_map_entries): New struct.
14067 (load_charset_map): Rename from parse_charset_map. New args
14068 entries and n_entries. Change caller.
14069 (load_charset_map_from_file): Rename from load_charset_map.
14070 Change caller. New arg control_flag. Call load_charset_map at
14071 the tail.
14072 (load_charset_map_from_vector): New function.
14073 (Fdefine_charset_internal): Setup charset.compact_codes_p.
14074 (encode_char): If the charset is compact, change a character index
14075 to a code point.
14076
14077 * coding.c (coding_alloc_by_making_gap): Check the case that the
14078 source and destination are the same correctly.
14079 (decode_coding_raw_text): Set coding->consumed_char and
14080 coding->consumed to 0.
14081 (produce_chars): If coding->chars_at_source is nonzero, update
14082 coding->consumed_char and coding->consumed before calling
14083 alloc_destination.
14084 (Fdefine_coding_system_alias): Register ALIAS in
14085 Vcoding_system_alist.
14086 (syms_of_coding): Define `no-conversion' coding system at the tail.
14087
14088 * fileio.c (Finsert_file_contents): Set coding_system instead of
14089 val. If the current buffer is multibyte, always call
14090 decode_coding_gap.
14091
14092 * xfaces.c (try_font_list): Give higher priority to fontset's
14093 family than face's family.
14094
140952008-02-01 Kenichi Handa <handa@m17n.org>
14096
14097 * callproc.c (Fcall_process): Be sure to give the current buffer
14098 to decode_coding_c_string.
14099
14100 * xfaces.c (try_font_list): Give a family specified in a fontset
14101 higher priority than a family specified in a face.
14102
141032008-02-01 Kenichi Handa <handa@m17n.org>
14104
14105 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
14106 Fix arguments to insert_from_buffer.
14107
14108 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
14109
141102008-02-01 Kenichi Handa <handa@m17n.org>
14111
14112 * coding.c (produce_chars): Set the variable `multibytep' correctly.
14113 (decode_coding_gap): Set coding->dst_multibyte correctly.
14114
141152008-02-01 Kenichi Handa <handa@m17n.org>
14116
14117 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
14118 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
14119 (encode_coding_utf_16): Substitute coding->default_char for
14120 non-Unicode characters.
14121 (decode_coding): Don't call record_insert here.
14122 (setup_coding_system): Initialize `surrogate' of
14123 coding->spec.utf_16 to 0.
14124 (EMIT_ONE_BYTE): Fix for multibyte case.
14125
14126 * insdel.c (insert_from_gap): Call record_insert.
14127
141282008-02-01 Kenichi Handa <handa@m17n.org>
14129
14130 * casefiddle.c (casify_region): Fix multibyte case.
14131
14132 * character.c (c_string_width): Add return type `int'.
14133 (char_string_with_unification): Delete arg ADVANCED.
14134
14135 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
14136 (CHAR_STRING): Adjust for the change of char_string_with_unification.
14137 (CHAR_STRING_ADVANCE): Make it do-while statement.
14138
14139 * chartab.c (sub_char_table_set_range): Optimize for the case
14140 DEPTH == 3. Add workaround code for a GCC optimization bug.
14141
14142 * charset.c (parse_charset_map): Remove an unused variable.
14143
14144 * coding.c: Delete unused variables.
14145
14146 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
14147 earlier. If inserted is zero and the coding system doesn't
14148 require flushing, don't call decode_coding_gap.
14149
14150 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
14151
141522008-02-01 Kenichi Handa <handa@m17n.org>
14153
14154 The following changes are for using Unicode as an internal
14155 character model, and use UTF-8 format for buffer/string
14156 representation.
14157
14158 * .gdbinit (xchartable): Adjust for the change of char table structure.
14159 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
14160
14161 * Makefile.in (obj): Add character.o and chartab.o.
14162 (lisp, shortlisp): Remove utf-8.elc.
14163 (*.o): For many files, change dependency on charset.h to
14164 character.h, and add dependency on character.h.
14165 (character.o, chartab.o): New targets.
14166
14167 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
14168 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
14169 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
14170 of "charset.h".
14171
14172 * dired.c, filelock.c: Include "character.h".
14173
14174 * alloc.c: Include "character.h" instead of "charset.h".
14175 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
14176 (syms_of_alloc): Remove defsubr for Smake_char_table.
14177
14178 * buffer.c: Include "character.h" instead of "charset.h", don't
14179 include "coding.h".
14180 (Fset_buffer_multibyte): Adjust for UTF-8.
14181
14182 * buffer.h: EXFUN Fbuffer_live_p.
14183
14184 * callproc.c: Include "character.h" instead of "charset.h".
14185 (Fcall_process): Big change for the new code-conversion APIs.
14186
14187 * casetab.c: Include "character.h" instead of "charset.h".
14188 (set_canon, set_identity, shuffle): Adjust for the new
14189 map_char_table spec.
14190 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
14191 accessing the char table structure.
14192
14193 * chartab.c: New file that implements char table.
14194
14195 * category.c: Include "character.h".
14196 (copy_category_entry): New function.
14197 (copy_category_table): Call map_char_table and copy_category_entry.
14198 (Fmake_category_table): Initialize all top-level slots.
14199 (char_category_set): New function.
14200 (modify_lower_category_set): Delete.
14201 (Fmodify_category_entry): Call char_table_ref_and_range.
14202
14203 * category.h (CATEGORY_SET): Just call char_category_set.
14204
14205 * ccl.c: Include "character.h".
14206 (Qccl, Qcclp): New variables.
14207 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
14208 it's less than 256.
14209 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
14210 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
14211 and DST type.
14212 (ccl_driver): Change types of argument, adjust code accordingly.
14213 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
14214 ccl_driver.
14215 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
14216
14217 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
14218 New members src_multibyte, dst_multibyte, consumed, and produced.
14219 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
14220 (CODING_SPEC_CCL_PROGRAM): New macro.
14221 (ccl_driver): Update prototype.
14222 (Qccl, Qcclp, Fccl_program_p): Extern them.
14223 (CHECK_CCL_PROGRAM): New macro.
14224
14225 * character.c, character.h, chartab.c: New files.
14226
14227 * charset.c: Mostly re-written. Move character and multibyte sequence
14228 handling codes to character.c.
14229
14230 * charset.h: Mostly re-written. Move character and multibyte sequence
14231 handling codes to character.h.
14232
14233 * coding.c, coding.h: Mostly re-written.
14234
14235 * composite.c: Include "character.h" instead of "charset.h".
14236 (CHAR_WIDTH): Move to character.h.
14237 (HASH_KEY, HASH_VALUE): Delete.
14238
14239 * composite.h (enum composition_method): Change order of enumeration
14240 symbols.
14241
14242 * data.c: Include "character.h" instead of "charset.h".
14243 (Faref): Call CHAR_TABLE_REF for a char table.
14244 (Faset): Call CHAR_TABLE_SET for a char table.
14245
14246 * dispextern.h (free_realized_face, check_face_attribytes)
14247 (generate_ascii_font): Extern them.
14248 (free_realized_multibyte_face): Delete extern.
14249
14250 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
14251 table structure.
14252
14253 * editfns.c: Include "character.h" instead of "charset.h".
14254 (Fchar_to_string): Always call CHAR_STRING.
14255
14256 * emacs.c (main): Call init_charset_once, init_charset,
14257 syms_of_chartab, and syms_of_character.
14258
14259 * fileio.c: Include "character.h" instead of "charset.h".
14260 (Finsert_file_contents): Big change for the new code-conversion API.
14261 (choose_write_coding_system, Fwrite_region): Likewise.
14262 (build_annotations_2): Delete.
14263 (e_write): Big change for the new code-conversion API.
14264
14265 * fns.c: Include "character.h" instead of "charset.h".
14266 (copy_sub_char_table): Move to chartab.c.
14267 (Fcopy_sequence): Call copy_char_table for a char table.
14268 (concat): Delete codes calling count_multibyte.
14269 (string_char_to_byte, string_byte_to_char): Adjust for the new
14270 multibyte form.
14271 (internal_equal): Adjust for the change of char table structure.
14272 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
14273 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
14274 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
14275 (char_table_translate, optimize_sub_char_table)
14276 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
14277 chartab.c.
14278 (char_table_ref_and_index): Delete.
14279 (HASH_KEY, HASH_VALUE): Move to lisp.h.
14280 (Fmd5): Call preferred_coding_system instead of accessing
14281 Vcoding_category_list. Adjust for the new code-conversion API.
14282 (syms_of_fns): Move defsubr for char table related functions to
14283 chartab.c.
14284
14285 * fontset.c: Mostly re-written.
14286
14287 * fontset.h (struct font_info): Change type of the member encoding_type.
14288 (enum FONT_SPEC_INDEX): New enum.
14289 (fontset_font_pattern, fs_load_font): Update prototype.
14290 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
14291
14292 * indent.c: Include "character.h" instead of "charset.h".
14293 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
14294
14295 * insdel.c: Include "character.h" instead of "charset.h".
14296 (copy_text): Don't refer to Vnonascii_translation_table.
14297 (insert_from_gap): New function.
14298
14299 * keyboard.c: Include "character.h" instead of "charset.h".
14300 (command_loop_1): Never call direct_output_forward_char before
14301 a non-ASCII character.
14302 (read_char): If Vkeyboard_translate_table is a char table, always
14303 translate a character.
14304
14305 * keymap.c: Include "character.h".
14306 (store_in_keymap): Handle the case that IDX is a cons.
14307 (Fdefine_key): Handle the case that KEY is a cons and the car part
14308 is also a cons (range).
14309 (push_key_description): Adjust for the new character code.
14310 (describe_vector): Call describe_char_table for a char table.
14311 (describe_char_table): New function.
14312
14313 * keymap.h (describe_char_table): Extern it.
14314
14315 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
14316 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
14317 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
14318 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
14319 Delete.
14320 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
14321 structure.
14322 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
14323 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
14324 (CHARTAB_SIZE_BITS_3): New macros.
14325 (chartab_size): Extern it.
14326 (struct Lisp_Char_Table): Re-design.
14327 (struct Lisp_Sub_Char_Table): New structure.
14328 (HASH_KEY, HASH_VALUE): Move from fns.c.
14329 (CHARACTERBITS): Define as 22.
14330 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
14331 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
14332 (GC_SUB_CHAR_TABLE_P): New macro.
14333 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
14334 (code_convert_string_norecord): Deleted extern.
14335 (init_character_once, syms_of_character, init_charset)
14336 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
14337
14338 * lread.c: Include "character.h".
14339 (read_multibyte): New arg NBYTES.
14340 (read_escape): Change the meaning of returned *BYTEREP.
14341 (to_multibyte): Delete.
14342 (read1): Adjust the handling of char table and string.
14343
14344 * print.c: Include "character.h" instead of "charset.h".
14345 (print_string): Convert 8-bit raw bytes to octal form by
14346 string_escape_byte8.
14347 (print_object): Adjust for the new multibyte form. Print 8-bit
14348 raw bytes always in octal form. Handle sub char table correctly.
14349
14350 * process.c: Include "character.h" instead of "charset.h".
14351 (read_process_output, send_process): Adjust for the new
14352 code-conversion API.
14353
14354 * puresize.h (BASE_PURESIZE): Increase.
14355
14356 * regex.c: Include "character.h" instead of "charset.h".
14357 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
14358 (regex_compile): Accept a range whose starting and ending
14359 character have different leading bytes.
14360 (analyse_first): Adjust for the above change.
14361
14362 * search.c: Include "character.h" instead of "charset.h".
14363 (search_buffer, boyer_moore): Adjust for the new multibyte form.
14364 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
14365
14366 * syntax.c: Include "character.h" instead of "charset.h".
14367 (syntax_parent_lookup): Delete.
14368 (Fmodify_syntax_entry): Accept a cons as CHAR.
14369 (skip_chars): Adjust for the new multibyte form.
14370 (init_syntax_once): Call char_table_set_range instead of directly
14371 accessing the structure of a char table.
14372
14373 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
14374 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
14375 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
14376 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
14377
14378 * term.c: Include "buffer.h" and "character.h".
14379 (encode_terminal_code, write_glyphs): Adjust for the new
14380 code-conversion API.
14381 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
14382
14383 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
14384
14385 * xdisp.c: Include "character.h".
14386 (get_next_display_element): Adjust for the new multibyte form.
14387 (disp_char_vector): Adjust for the new char table structure.
14388 (decode_mode_spec_coding): Adjust for the new structure of
14389 coding system.
14390 (decode_mode_spec): Adjust for the new code-conversion API.
14391
14392 * xfaces.c: Include "character.h" instead of "charset.h".
14393 (load_face_font): Adjust for the change of choose_face_font and
14394 FS_LOAD_FONT.
14395 (generate_ascii_font): New function.
14396 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
14397 (set_font_frame_param): Adjust for the change of choose_face_font.
14398 (free_realized_face): Make it public.
14399 (free_realized_faces_for_fontset): Rename from
14400 free_realized_multibyte_face. Free also faces realized for ASCII.
14401 (choose_face_font): Change arguments. Adjust for the change of
14402 fontset_font_pattern and FS_LOAD_FONT.
14403
14404 * xfns.c: Include "character.h".
14405 (x_encode_text): Adjust for the new code-conversion API.
14406
14407 * xselect.c: Don't include "charset.h".
14408 (selection_data_to_lisp_data): Adjust for the new code conversion API.
14409
14410 * xterm.c: Include "character.h".
14411 (x_encode_char): New argument CHARSET. Change caller.
14412 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
14413 Call ENCODE_CHAR instead of SPLIT_CHAR.
14414 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
14415 CHAR_WIDTH instead of CHARSET_WIDTH.
14416 (XTread_socket): Adjust for the new code-conversion API.
14417 (x_new_font): Adjust for the change of FS_LOAD_FONT.
14418 (x_load_font): Adjust for the change of struct font.
14419
144202008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14421
14422 * xfaces.c (face_at_buffer_position): Remove unused vars.
14423
144242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14425
14426 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
14427 Fix overflow checking.
14428
144292008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14430
14431 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
14432 Cancel previous change.
14433
144342008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
14435
14436 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
14437 ccl->eight_bit_control. Fix check for buffer overflow.
14438 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
14439 (ccl_driver): Initialize extra_bytes to 0.
14440
144412008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
14442
14443 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
14444 return it ORed with ctrl_modifier.
14445
144462008-01-29 Miles Bader <miles@gnu.org>
14447
14448 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
14449
144502008-01-28 Jason Rumney <jasonr@gnu.org>
14451
14452 * w32.c (stat): Don't double check for networked drive.
14453
144542008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
14455
14456 * window.c (run_window_configuration_change_hook): New function.
14457 Code extracted from set_window_buffer. Set the selected frame.
14458 (set_window_buffer): Use it.
14459 * window.h (run_window_configuration_change_hook): Declare.
14460 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
14461
14462 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
14463
144642008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
14465
14466 * Makefile.in: Remove references to unused macros.
14467
144682008-01-26 Eli Zaretskii <eliz@gnu.org>
14469
14470 * w32.c (g_b_init_get_sid_sub_authority)
14471 (g_b_init_get_sid_sub_authority_count): New static variables.
14472 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
14473 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
14474 (init_user_info): Use them to retrieve uid and gid.
14475 Use 500/513, the Windows defaults, as Administrator's uid/gid.
14476 (fstat): Use pw_uid and pw_gid from the_passwd structure for
14477 st_uid and st_gid of the file.
14478
144792008-01-26 Jason Rumney <jasonr@gnu.org>
14480
14481 * w32.c (logon_network_drive): New function.
14482 (stat): Use it.
14483
144842008-01-26 Chong Yidong <cyd@stupidchicken.com>
14485
14486 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
14487 invisible text covered with an ellipsis.
14488
144892008-01-25 Richard Stallman <rms@gnu.org>
14490
14491 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
14492 jump back to beginning. Move some other initializations after that.
14493 (Qwindow_text_change_functions, Vwindow_text_change_functions):
14494 New variables.
14495 (syms_of_xdisp): Init them.
14496
14497 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
14498
14499 * buffer.c (reset_buffer_local_variables):
14500 Implement `permanent-local-hook'.
14501 (Qpermanent_local_hook): New variable.
14502 (syms_of_buffer): Init and staticpro it.
14503
145042008-01-25 Michael Albinus <michael.albinus@gmx.de>
14505
14506 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
14507
145082008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
14509
14510 * fns.c (Fclrhash): Return TABLE.
14511
145122008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14513
14514 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
14515 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
14516 is set even without positional changes.
14517 (x_scroll_bar_clear): Set bar->redraw_needed_p.
14518
14519 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
14520
145212008-01-23 Jason Rumney <jasonr@gnu.org>
14522
14523 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
14524
14525 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
14526 the unicode range available in MULE by locale-coding-system.
14527 Improve dbcs lead byte detection. Set event timestamp and modifiers
14528 earlier.
14529
145302008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14531
14532 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
14533 [MAC_OSX] (init_mac_osx_environment): Initialize it.
14534 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
14535 when used on child processes.
14536
145372008-01-21 Michael Albinus <michael.albinus@gmx.de>
14538
14539 * dbusbind.c (Fdbus_method_return_internal): Rename from
14540 Fdbus_method_return.
14541 (Fdbus_unregister_object): Move to dbus.el.
14542 (Fdbus_call_method, Fdbus_method_return_internal)
14543 (Fdbus_send_signal): Improve debug messages.
14544
145452008-01-20 Martin Rudalics <rudalics@gmx.at>
14546
14547 * undo.c (undo_inhibit_record_point): New variable.
14548 (syms_of_undo): Initialize it.
14549 (record_point): Don't record point when undo_inhibit_record_point
14550 is set.
14551
145522008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
14553
14554 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
14555
14556 * xdisp.c (Qauto_hscroll_mode): New var.
14557 (syms_of_xdisp): Initialize it.
14558 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
14559 window's buffer.
14560 (hscroll_windows): Don't check automatic_hscrolling_p here.
14561
14562 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
14563 vscroll if we're setting window-buffer to the value it already has.
14564
145652008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
14566
14567 * m/intel386.h: Remove references to XENIX.
14568
145692008-01-17 Andreas Schwab <schwab@suse.de>
14570
14571 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
14572 instead of HAVE_X86_64_LIB64_DIR.
14573 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
14574
145752008-01-17 Glenn Morris <rgm@gnu.org>
14576
14577 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
14578 to HAVE_X86_64_LIB64_DIR.
14579
145802008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
14581
14582 * s/irix3-3.h:
14583 * s/irix4-0.h:
14584 * s/386-ix.h:
14585 * s/domain.h:
14586 * s/hpux9-x11r4.h:
14587 * s/hpux9shxr4.h: Remove files for systems no longer supported.
14588
14589 * sysdep.c: Remove code containing references to symbols defined
14590 by unsupported systems.
14591
145922008-01-16 Glenn Morris <rgm@gnu.org>
14593
14594 * coding.c (select-safe-coding-system-function): Doc fix.
14595
145962008-01-15 Glenn Morris <rgm@gnu.org>
14597
14598 * config.in: Revert 2008-01-13 change: this is a generated file.
14599
146002008-01-13 Tom Tromey <tromey@redhat.com>
14601
14602 * lisp.h: Fix typo.
14603
146042008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
14605
14606 * m/sequent-ptx.h:
14607 * m/sequent.h:
14608 * s/ptx.h:
14609 * s/ptx4-2.h:
14610 * s/ptx4.h: Remove files for systems no longer supported.
14611
14612 * callproc.c (Fcall_process): Fix previous change.
14613
146142008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
14615
14616 * unexsunos4.c: Remove file, system not supported anymore.
14617
14618 * m/mips.h:
14619 * m/intel386.h:
14620 * callproc.c:
14621 * config.in:
14622 * ecrt0.c:
14623 * emacs.c:
14624 * fileio.c:
14625 * frame.c:
14626 * getpagesize.h:
14627 * keyboard.c:
14628 * lread.c:
14629 * process.c:
14630 * puresize.h:
14631 * sysdep.c:
14632 * systty.h:
14633 * syswait.h:
14634 * unexec.c:
14635 * xdisp.c:
14636 * alloc.c: Remove code containing references to symbols defined by
14637 unsupported systems.
14638
146392008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
14640
14641 * coding.c (detect_coding_mask): Fix previous change.
14642
146432008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
14644
14645 * coding.c (detect_coding_iso2022): New arg
14646 latin_extra_code_state. Allow Latin extra codes only
14647 when *latin_extra_code_state is nonzero.
14648 (detect_coding_mask): If there is a NULL byte, detect the encoding
14649 as UTF-16 or binary. If Latin extra codes exist, detect the
14650 encoding as ISO-2022 only when there's no other proper encoding is
14651 found.
14652
146532008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14654
14655 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
14656 #ifdef MAC_OS.
14657
146582008-01-08 Richard Stallman <rms@gnu.org>
14659
14660 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
14661
146622008-01-06 Nick Roberts <nickrob@snap.net.nz>
14663
14664 * keyboard.c (parse_menu_item): Don't enclose key bindings on
14665 menu bar in parentheses.
14666
146672008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
14668
14669 * m/7300.h:
14670 * m/acorn.h:
14671 * m/alliant-2800.h:
14672 * m/alliant.h:
14673 * m/alliant1.h:
14674 * m/alliant4.h:
14675 * m/altos.h:
14676 * m/amdahl.h:
14677 * m/apollo.h:
14678 * m/att3b.h:
14679 * m/aviion-intel.h:
14680 * m/aviion.h:
14681 * m/celerity.h:
14682 * m/clipper.h:
14683 * m/cnvrgnt.h:
14684 * m/convex.h:
14685 * m/cydra5.h:
14686 * m/delta88k.h:
14687 * m/dpx2.h:
14688 * m/dual.h:
14689 * m/elxsi.h:
14690 * m/f301.h:
14691 * m/gould-np1.h:
14692 * m/gould.h:
14693 * m/i860.h:
14694 * m/ibmps2-aix.h:
14695 * m/ibmrt-aix.h:
14696 * m/ibmrt.h:
14697 * m/irist.h:
14698 * m/is386.h:
14699 * m/isi-ov.h:
14700 * m/mega68.h:
14701 * m/mg1.h:
14702 * m/news-r6.h:
14703 * m/news-risc.h:
14704 * m/news.h:
14705 * m/nh3000.h:
14706 * m/nh4000.h:
14707 * m/ns16000.h:
14708 * m/ns32000.h:
14709 * m/nu.h:
14710 * m/orion.h:
14711 * m/orion105.h:
14712 * m/paragon.h:
14713 * m/pfa50.h:
14714 * m/plexus.h:
14715 * m/pyramid.h:
14716 * m/pyrmips.h:
14717 * m/sh3el.h:
14718 * m/sps7.h:
14719 * m/sr2k.h:
14720 * m/stride.h:
14721 * m/sun1.h:
14722 * m/sun2.h:
14723 * m/sun3-68881.h:
14724 * m/sun3-fpa.h:
14725 * m/sun3-soft.h:
14726 * m/sun3.h:
14727 * m/sun386.h:
14728 * m/symmetry.h:
14729 * m/tad68k.h:
14730 * m/tahoe.h:
14731 * m/targon31.h:
14732 * m/tek4300.h:
14733 * m/tekxd88.h:
14734 * m/tower32.h:
14735 * m/tower32v3.h:
14736 * m/ustation.h:
14737 * m/wicat.h:
14738 * m/xps100.h:
14739 * s/cxux.h:
14740 * s/cxux7.h:
14741 * s/dgux.h:
14742 * s/dgux4.h:
14743 * s/dgux5-4-3.h:
14744 * s/dgux5-4r2.h:
14745 * s/esix.h:
14746 * s/esix5r4.h:
14747 * s/hiuxmpp.h:
14748 * s/hiuxwe2.h:
14749 * s/iris3-5.h:
14750 * s/iris3-6.h:
14751 * s/isc2-2.h:
14752 * s/isc3-0.h:
14753 * s/isc4-0.h:
14754 * s/isc4-1.h:
14755 * s/newsos5.h:
14756 * s/newsos6.h:
14757 * s/osf1.h:
14758 * s/osf5-0.h:
14759 * s/riscix1-1.h:
14760 * s/riscix12.h:
14761 * s/sco4.h:
14762 * s/sco5.h:
14763 * s/sunos4-0.h:
14764 * s/sunos4-1.h:
14765 * s/sunos413.h:
14766 * s/sunos4shr.h:
14767 * s/umax.h:
14768 * s/unipl5-2.h:
14769 * s/xenix.h:
14770 * cxux-crt0.s:
14771 * unexapollo.c:
14772 * unexconvex.c:
14773 * unexenix.c:
14774 * unexsni.c: Remove files for systems no longer supported.
14775
14776 * m/intel386.h: Remove references to unsupported systems.
14777
14778 * w32.c (get_emacs_configuration): Remove reference to i860.
14779
14780 * sysdep.c: Remove dead code.
14781
147822008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
14783
14784 * s/rtu.h:
14785 * m/masscomp.h: Remove files. Platform is obsolete.
14786
147872008-01-04 Michael Albinus <michael.albinus@gmx.de>
14788
14789 * dbusbind.c (Fdbus_method_return): New function.
14790 (xd_read_message): Add the serial number to the event.
14791 (Fdbus_register_method): Activate the function.
14792
147932008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
14794
14795 * keyboard.c (read_key_sequence): Fix typo.
14796
147972008-01-03 Michael Albinus <michael.albinus@gmx.de>
14798
14799 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
14800 (xd_signature, xd_append_arg): Handle element type detection for
14801 empty arrays.
14802 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
14803 SDATA () calls; this must be solved more general.
14804 (Fdbus_register_signal): Use SBYTES instead of strlen.
14805
148062008-01-03 Magnus Henoch <magnus@zemdatav>
14807
14808 * dbusbind.c (xd_append_arg): Use unsigned char instead of
14809 unsigned int for byte values (necessary for big-endian platform).
14810 (Fdbus_call_method): Handle the case of no returned arguments.
14811
148122007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
14813
14814 * dbusbind.c (xd_read_message): Use non-static input_event struct.
14815
148162007-12-31 Magnus Henoch <mange@freemail.hu>
14817
14818 * dbusbind.c (xd_signature): Signature of variant is just "v".
14819
148202007-12-30 Michael Albinus <michael.albinus@gmx.de>
14821
14822 * dbusbind.c: Fix several errors and compiler warnings.
14823 Reported by Tom Tromey <tromey@redhat.com>.
14824 (XD_ERROR, XD_DEBUG_MESSAGE)
14825 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
14826 (xd_append_arg): Part for basic D-Bus types rewritten.
14827 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
14828 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
14829 appropriate.
14830 (xd_read_message): Return Qnil. Don't signal an error; it is not
14831 useful during event reading.
14832 (Fdbus_register_signal): Signal an error if the check for
14833 FUNCTIONP fails.
14834 (Fdbus_register_method): New function. The implementation is not
14835 complete, the call of the function signals an error therefore.
14836 (Fdbus_unregister_object): New function, renamed from
14837 Fdbus_unregister_signal. The initial check signals an error, if
14838 the object is not well formed.
14839
148402007-12-30 Richard Stallman <rms@gnu.org>
14841
14842 * textprop.c (get_char_property_and_overlay):
14843 Signal error if POSITION is out of range in a buffer.
14844
148452007-12-29 Martin Rudalics <rudalics@gmx.at>
14846
14847 * w32fns.c (Fx_create_frame): Make copy of frame parameters
14848 because the original parameters are in pure storage now.
14849
148502007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14851
14852 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
14853
148542007-12-22 Eli Zaretskii <eliz@gnu.org>
14855
14856 * callint.c (syms_of_callint) <command-history>: Add reference to
14857 history-length in the doc string.
14858
148592007-12-17 Jason Rumney <jasonr@gnu.org>
14860
14861 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
14862 before passing as wParam.
14863
148642007-12-22 Michael Albinus <michael.albinus@gmx.de>
14865
14866 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
14867 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
14868 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
14869 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
14870 as number.
14871 (Fdbus_call_method): Fix docstring.
14872
148732007-12-21 Michael Albinus <michael.albinus@gmx.de>
14874
14875 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
14876 New macros.
14877 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
14878 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
14879 Simplify.
14880 (xd_signature): New function.
14881 (xd_append_arg): Compute also signatures. Major rewrite.
14882 (xd_retrieve_arg): Make debug messages friendly.
14883 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
14884 Check for signatures of arguments.
14885
148862007-12-19 Michael Albinus <michael.albinus@gmx.de>
14887
14888 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
14889 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
14890 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
14891 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
14892 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
14893 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
14894 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
14895 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
14896 (xd_retrieve_value): Remove. Functionality included in ...
14897 (xd_append_arg): New function.
14898 (Fdbus_call_method, Fdbus_send_signal): Apply it.
14899
149002007-12-16 Michael Albinus <michael.albinus@gmx.de>
14901
14902 * dbusbind.c (top): Include <stdio.h>.
14903 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
14904 dbus_message_new_method_call and dbus_message_new_signal.
14905 (Fdbus_register_signal): Rename unique_name to uname.
14906 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
14907 non-existing unique name. Fix typos in matching rule. Return an
14908 object which is useful in Fdbus_unregister_signal.
14909 (Fdbus_unregister_signal): Reimplementation, in order to remove
14910 only the corresponding entry.
14911 (Vdbus_registered_functions_table): Change the order of entries.
14912 Apply these changes in xd_read_message and Fdbus_register_signal.
14913
149142007-12-16 Andreas Schwab <schwab@suse.de>
14915
14916 * fileio.c (Finsert_file_contents): Fix overflow check to not
14917 depend on undefined integer overflow.
14918
149192007-12-14 Jason Rumney <jasonr@gnu.org>
14920
14921 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
14922 for characters above 127.
14923
149242007-12-13 Jason Rumney <jasonr@gnu.org>
14925
14926 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
14927 before dereferencing array.
14928 (lookup_vk_code): Remove zero comparison.
14929
149302007-12-14 Michael Albinus <michael.albinus@gmx.de>
14931
14932 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
14933 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
14934 Use `unsigned int' instead of `uint'.
14935 (xd_read_message, Fdbus_register_signal): Split expressions into
14936 multiple lines before operators "&&" and "||", according to the
14937 GNU Coding Standards.
14938
149392007-12-14 Eli Zaretskii <eliz@gnu.org>
14940
14941 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
14942
149432007-12-12 Juri Linkov <juri@jurta.org>
14944
14945 * buffer.c (Frename_buffer): In interactive spec replace
14946 `read-buffer' with `read-string' that uses `buffer-name-history'
14947 as history, and the current buffer's name as default.
14948
149492007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
14950
14951 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
14952 manipulating the backtrace manually.
14953 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
14954 (struct backtrace, backtrace_list): Remove.
14955 (command_loop_1): Remove dead var `no_direct'.
14956
14957 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
14958 preserve non-built-in buffer-local variables.
14959 (Fkill_all_local_variables): Don't re-create&re-set permanent
14960 buffer-local variables.
14961
149622007-12-09 Juri Linkov <juri@jurta.org>
14963
14964 * buffer.c (Frename_buffer): Change interactive spec from "s" to
14965 Lisp code that uses `read-buffer' with current buffer as default.
14966
149672007-12-08 Michael Albinus <michael.albinus@gmx.de>
14968
14969 * dbusbind.c (xd_read_message): Generate an event for every
14970 registered handler. There might be several handlers registered
14971 for the same signal.
14972 (Fdbus_register_signal): Don't overwrite a registration for the
14973 same signal. Add a new registration if handlers are different.
14974 (Vdbus_registered_functions_table): Rework doc string.
14975
149762007-12-07 Michael Albinus <michael.albinus@gmx.de>
14977
14978 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
14979 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
14980 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
14981 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
14982 Unify argument lists.
14983 (xd_read_message, Fdbus_register_signal): Reorder and extend event
14984 arguments and hash table keys. Use unique name for service.
14985 (Fdbus_unregister_signal): Remove checks.
14986 (Vdbus_registered_functions_table): Fix doc string.
14987
149882007-12-05 Magnus Henoch <mange@freemail.hu>
14989
14990 * process.c (make_process): Initialize pty_flag to 0.
14991
149922007-12-05 Jason Rumney <jasonr@gnu.org>
14993
14994 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
14995 specified XBMs.
14996
149972007-12-05 Richard Stallman <rms@gnu.org>
14998
14999 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
15000
150012007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15002
15003 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
15004 New variable.
15005 (mac_try_close_socket) [MAC_OSX]: New function.
15006 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
15007 Update cfsockets_for_select. Replace invalid CFRunLoop source.
15008
15009 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
15010 Use mac_try_close_socket.
15011
150122007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15013
15014 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
15015 reloc_base.
15016 (copy_dysymtab): Compute relocation base here.
15017 (rebase_reloc_address) [__ppc64__]: New function.
15018 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
15019 changed.
15020
150212007-12-05 Jason Rumney <jasonr@gnu.org>
15022
15023 * w32proc.c (sys_spawnve): Quote args with wildcards.
15024
150252007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15026
15027 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
15028 __objc_* sections.
15029 (unrelocate) [_LP64]: Set relocation base to address of data segment.
15030
150312007-12-05 Michael Albinus <michael.albinus@gmx.de>
15032
15033 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
15034 Move check for Vdbus_registered_functions_table to
15035 xd_read_queued_messages.
15036 (xd_read_queued_messages): Protect xd_read_message calls by
15037 internal_condition_case_1.
15038
150392007-12-04 Michael Albinus <michael.albinus@gmx.de>
15040
15041 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
15042 Qdbus_system_bus and Qdbus_session_bus, respectively.
15043 (Vdbus_intern_symbols): Remove.
15044 (Vdbus_registered_functions_table): New hash table.
15045 (XD_SYMBOL_INTERN_SYMBOL): Remove.
15046 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
15047 Rewrite in order to manage registered functions by hash table
15048 Vdbus_registered_functions_table.
15049
150502007-12-03 Jan Djärv <jan.h.d@swipnet.se>
15051
15052 * xterm.c: Update URL to Window Manager Specification in comment.
15053
150542007-12-02 Michael Albinus <michael.albinus@gmx.de>
15055
15056 * config.in (HAVE_DBUS): Add.
15057
15058 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
15059 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
15060 (obj): Add $(DBUS_OBJ).
15061 (LIBES): Add $(DBUS_LIBS).
15062 (dbusbind.o): New target.
15063
15064 * dbusbind.c: New file.
15065
15066 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
15067
15068 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
15069 (Qdbus_event): New Lisp symbol.
15070 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
15071 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 15072 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
15073
15074 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
15075
150762007-12-01 Richard Stallman <rms@gnu.org>
15077
15078 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
15079
150802007-11-30 Jason Rumney <jasonr@gnu.org>
15081
15082 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
15083 (w32con_reset_terminal_modes): Clear screen buffer.
15084 (w32_face_attributes): Don't use color indexes that are out of range.
15085 Only reverse the default colors.
15086
15087 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
15088 WINDOWSNT.
15089
15090 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
15091
150922007-11-29 Jason Rumney <jasonr@gnu.org>
15093
15094 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
15095 (w32_face_attributes): Use Vtty_defined_color_alist to determine
15096 if the terminal colors are initialized.
15097 (unspecified_fg, unspecified_bg): Remove unused declarations.
15098
150992007-11-29 Andreas Schwab <schwab@suse.de>
15100
15101 * keyboard.c (apply_modifiers): Fix typo.
15102
151032007-11-29 Richard Stallman <rms@gnu.org>
15104
15105 * keymap.c (Fcurrent_local_map): Doc fix.
15106
151072007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
15108
15109 * s/gnu-kfreebsd.h: New file.
15110
151112007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
15112
15113 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
15114 Don't cast redundantly.
15115
15116 * keyboard.c (KEY_TO_CHAR): New macro.
15117 (parse_modifiers, apply_modifiers): Accept integer arguments.
15118 (read_key_sequence): Use them to unify the "shift->unshift" mapping
15119 for chars and symbol keys.
15120 After doing such remapping, apply function-key-map again.
15121
151222007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
15123
15124 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
15125 compiled anymore.
15126
151272007-11-26 Andreas Schwab <schwab@suse.de>
15128
15129 * process.c (list_processes_1): Fix indentation level of the
15130 command column.
15131
151322007-11-23 Andreas Schwab <schwab@suse.de>
15133
15134 * editfns.c (Fformat): Handle %c specially since it requires the
15135 argument to be of type int.
15136
151372007-11-23 Markus Triska <markus.triska@gmx.at>
15138
15139 * emacs.c (main): Call init_editfns before init_process, since
15140 init_process sets Vprocess_connection_type depending on OS release.
15141
151422007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
15143
15144 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
15145 (find_symbol_value): Use do_symval_forwarding.
15146
15147 * data.c (set_internal): Set the value in the `cons-cell' (for
15148 Buffer_Local_values) not only for frame-local variables.
15149
151502007-11-22 Andreas Schwab <schwab@suse.de>
15151
15152 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
15153 values to sprintf.
15154 * keymap.c (Fsingle_key_description): Likewise.
15155 * print.c (print_object): Likewise.
15156
151572007-11-22 Jan Djärv <jan.h.d@swipnet.se>
15158
15159 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
15160 file for image is nil.
15161
151622007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
15163
15164 * term.c: Include stdarg.h.
15165 (fatal): Implement using varargs.
15166 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
15167
151682007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
15169
15170 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
15171 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
15172 Update call to buffer_slot_type_mismatch.
15173 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
15174 (buffer_slot_type_mismatch): Update.
15175 * buffer.c (buffer_local_types): Remove.
15176 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
15177 (defvar_per_buffer): Set the type in the buffer_objfwd.
15178
151792007-11-21 Jason Rumney <jasonr@gnu.org>
15180
15181 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
15182 CreateFileMapping returns NULL on failure.
15183
151842007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
15185
15186 * search.c (Fset_match_data): Remove the `evaporate' feature.
15187 (unwind_set_match_data): Don't use the `evaporate' feature.
15188
151892007-11-21 Jason Rumney <jasonr@gnu.org>
15190
15191 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
15192
15193 * w32console.c (w32con_write_glyphs): Remove unused variables.
15194
151952007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
15196
15197 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
15198
15199 * s/darwin.h (MULTI_KBOARD): Remove.
15200
15201 * macfns.c (x_create_tip_frame, Fx_create_frame)
15202 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
15203
152042007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
15205
15206 * buffer.c (Fbuffer_local_value): Remove redundant test.
15207 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
15208 than in `current-buffer' to match the comment.
15209 Do the swap using swap_in_global_binding.
15210
15211 * data.c (store_symval_forwarding, set_internal):
15212 * eval.c (specbind): Remove dead code.
15213
15214 * coding.c (detect_coding, Fupdate_coding_systems_internal):
15215 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
15216 Since we do not want to see internal Lisp_*fwd objects here.
15217
152182007-11-18 Jan Djärv <jan.h.d@swipnet.se>
15219
15220 * sysdep.c (init_system_name): Use getaddrinfo if available.
15221
15222 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
15223 (x_scroll_bar_note_movement): start, end, with, height in struct
15224 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
15225
152262007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
15227
15228 * puresize.h (BASE_PURESIZE): Increase to 1190000.
15229
152302007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
15231
15232 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
15233 This undoes Richard's change of 14-Oct-2002.
15234
15235 * alloc.c (allocate_other_vector):
15236 * lisp.h (allocate_other_vector): Remove.
15237
15238 * window.c (struct save_window_data): Move non-lisp data to the end
15239 and make it `int' rather than Lisp_Object.
15240 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
15241 Done wrap/unwrap integer values.
15242 (Fset_window_configuration, compare_window_configurations):
15243 Update use of fields to their new types.
15244
15245 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
15246 Turn integer fields into `int'. Merge x_window_low and x_window_high.
15247 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
15248 (SET_SCROLL_BAR_X_WINDOW): Remove.
15249 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
15250 Access the new x_window field directly.
15251 * xterm.c (x_scroll_bar_create): Use a pseudovector.
15252 Don't wrap/unwrap integers into Lisp_Objects.
15253 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
15254 (x_scroll_bar_report_motion):
15255 Don't wrap/unwrap integers into Lisp_Objects.
15256 (x_term_init): Use SDATA.
15257 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
15258 (x_scroll_bar_set_handle, x_scroll_bar_remove)
15259 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
15260 (x_scroll_bar_report_motion, x_scroll_bar_clear):
15261 * xfns.c (x_set_background_color):
15262 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
15263 Access the new x_window field directly.
15264
15265 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
15266 (allocate_pseudovector): Make non-static.
15267
15268 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
15269 (allocate_pseudovector): Declare.
15270 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
15271
152722007-11-15 Andreas Schwab <schwab@suse.de>
15273
15274 * editfns.c (Fformat): Correctly format EMACS_INT values.
15275 Also take precision into account when formatting an integer.
15276
15277 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
15278
152792007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
15280
15281 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
15282 (syms_of_keyboard): Defsubr it.
15283
15284 * data.c (swap_in_global_binding): Fix longstanding bug where
15285 store_symval_forwarding was not called with the right second argument,
15286 thus causing objfwd-ing from being dropped.
15287
152882007-11-14 Juanma Barranquero <lekktu@gmail.com>
15289
15290 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
15291 (Fx_display_pixel_height, Fx_display_planes)
15292 (Fx_display_color_cells, Fx_server_max_request_size)
15293 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
15294 (Fx_display_visual_class, Fx_display_save_under):
15295 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
15296 (Fx_display_pixel_height, Fx_display_planes)
15297 (Fx_display_color_cells, Fx_server_max_request_size)
15298 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
15299 (Fx_display_mm_height, Fx_display_mm_width)
15300 (Fx_display_backing_store, Fx_display_visual_class)
15301 (Fw32_select_font, Fx_display_save_under):
15302 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
15303 (Fx_display_pixel_height, Fx_display_planes)
15304 (Fx_display_color_cells, Fx_server_max_request_size)
15305 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
15306 (Fx_display_save_under): Fix typos in docstrings.
15307
153082007-11-14 Juanma Barranquero <lekktu@gmail.com>
15309
15310 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
15311 corresponding to deleted entries; they are an implementation detail.
15312 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
15313 Remove variables.
15314 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
15315 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
15316 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
15317 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
15318 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
15319 (Fw32_define_rgb_color, Fw32_load_color_file)
15320 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
15321 Fix typos in docstrings.
15322 (Fx_server_version): Reflow docstring.
15323 (Fw32_shell_execute): Doc fixes.
15324
153252007-11-13 Juanma Barranquero <lekktu@gmail.com>
15326
15327 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
15328 if w32_parse_hot_key returned nil.
15329
153302007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
15331
15332 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
15333
153342007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 15335
aac0c6e3
MR
15336 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
15337
15338 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
15339
15340 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
15341 Remove W32_SCROLL_BAR_CLICK_EVENT.
15342
15343 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
15344 Add MULTIMEDIA_KEY_EVENT.
15345
15346 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
15347 (lispy_multimedia_keys) [WINDOWSNT]: New array.
15348 (make_lispy_event) [WINDOWSNT]: Use it to translate
15349 MULTIMEDIA_KEY_EVENT.
15350
15351 * w32term.h (WM_APPCOMMAND): Define if not already.
15352 (GET_APPCOMMAND_LPARAM): Likewise.
15353
15354 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
15355 WM_APPCOMMAND.
15356
15357 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
15358 (syms_of_w32fns): Export and initialize it.
15359 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
15360
153612007-11-09 Chong Yidong <cyd@stupidchicken.com>
15362
15363 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
15364 twice.
15365
15366 * xdisp.c (handle_face_prop): Fix last change.
15367
153682007-11-09 Richard Stallman <rms@gnu.org>
15369
15370 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
15371 not just for after-strings and before-strings.
15372 Call face_for_overlay_string and pass the overlay to it.
15373 (handle_display_prop): Determine whether property came from an overlay.
15374 Pass OVERLAY arg to handle_single_display_spec.
15375 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
15376 (load_overlay_strings): Fill in it->string_overlays.
15377 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
15378
15379 * xfaces.c (face_for_overlay_string): Function renamed from
15380 face_at_buffer_position_no_overlays, and add arg OVERLAY.
15381
15382 * dispextern.h (struct it): New elt string_overlays.
15383 New elt from_overlay, also in stack.
15384 Rearrange a few elements.
15385 (face_for_overlay_string): Decl renamed from
15386 face_at_buffer_position_no_overlays, and add argument.
15387
153882007-11-09 Richard Stallman <rms@gnu.org>
15389
15390 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
15391 to get the base face for an overlay string.
15392
15393 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
15394
15395 * xfaces.c (face_at_buffer_position_no_overlays): New function.
15396
15397 * xdisp.c (handle_stop): Move some code out of loop.
15398
153992007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15400
15401 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
15402 Fix conversion from Lisp object to ATSUFontID.
15403
154042007-11-09 Jason Rumney <jasonr@gnu.org>
15405
15406 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
15407
154082007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15409
15410 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
15411 Don't assume regions are aligned to page boundary.
15412 (print_load_command_name): Add LC_UUID if defined.
15413
154142007-11-09 Richard Stallman <rms@gnu.org>
15415
15416 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
15417
154182007-11-07 Jason Rumney <jasonr@gnu.org>
15419
15420 * s/windows95.h: Remove.
15421
154222007-11-06 Jan Djärv <jan.h.d@swipnet.se>
15423
15424 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
15425 abort with a message on unhandled store_type values.
15426
154272007-11-01 Jan Djärv <jan.h.d@swipnet.se>
15428
15429 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
15430 Remove HAVE_X11R5 and HAVE_X11R4.
15431
154322007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
15433
15434 * Makefile.in: Remove references to sunfns.c and sunfns.o.
15435
154362007-11-01 Johan Bockgård <bojohan@gnu.org>
15437
15438 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
15439 Don't set s->stippled_p here, since it has already been set by
15440 x_set_glyph_string_gc from x_draw_glyph_string.
15441
154422007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
15443
15444 * sunfns.c: Remove file.
15445
15446 * m/sun386.h:
15447 * m/sun2.h:
15448 * m/sparc.h: Remove Sun windows code.
15449
154502007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
15451
15452 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
15453 (init_keyboard): Set current_kboard's window-system to nil.
15454 (tty_read_avail_input): Typo.
15455 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
15456
154572007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
15458
15459 * s/usg5-4.h:
15460 * s/usg5-3.h:
15461 * s/ptx.h:
15462 * m/is386.h:
15463 * m/ibmps2-aix.h:
15464 * Makefile.in: Remove all mentions of X10.
15465
15466 * dispnew.c (syms_of_display): Don't mention version 10.
15467
154682007-10-28 Juanma Barranquero <lekktu@gmail.com>
15469
15470 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
15471 ($(BLD)/abbrev.$(O)): Remove.
15472
154732007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
15474
15475 Rewrite abbrev.c in Elisp.
15476 * image.c (Qcount): Don't declare as extern.
15477 (syms_of_image): Initialize and staticpro `Qcount'.
15478 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
15479 * emacs.c (main): Don't call syms_of_abbrev.
15480 * Makefile.in (obj): Remove abbrev.o.
15481 (abbrev.o): Remove.
15482 * abbrev.c: Remove.
15483
154842007-10-26 Martin Rudalics <rudalics@gmx.at>
15485
15486 * window.c (window_min_size_2): Don't count header-line.
15487
154882007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
15489
15490 * frame.h (struct frame): Move all bit fields after the first bit
15491 field to take advantage of the available space. Group all the
15492 chars together to reduce wasted space due to padding.
15493
154942007-10-26 Juanma Barranquero <lekktu@gmail.com>
15495
15496 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
15497
15498 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
15499 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
15500 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
15501 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
15502 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
15503 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
15504 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
15505 (last_marked, mark_object_loop_halt): Make static.
15506
15507 * frame.c (syms_of_frame) <delete-frame-functions>:
15508 Fix typo in docstring.
15509
155102007-10-25 Juanma Barranquero <lekktu@gmail.com>
15511
15512 * w32.c (init_environment): Fix tiny memory leak.
15513 (w32_get_resource): Remove unused variable `ok'.
15514
155152007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
15516
15517 Make `window-system' into a keyboard-local variable (rather than
15518 frame-local as done originally by multi-tty).
15519
15520 * keyboard.h (struct kboard): Add Vwindow_system.
15521 * keyboard.c (init_kboard): Set a default for Vwindow_system.
15522 (mark_kboards): Mark Vwindow_system.
15523
15524 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
15525 (init_display): Don't set the obsolete `window-system' frame-param.
15526
15527 * xterm.c (x_term_init):
15528 * w32term.c (w32_create_terminal):
15529 * term.c (init_tty): Set Vwindow_system.
15530 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
15531 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
15532
15533 * xfns.c (Fx_create_frame, x_create_tip_frame):
15534 * w32fns.c (Fx_create_frame, x_create_tip_frame):
15535 * macfns.c (Fx_create_frame):
15536 Don't set the obsolete `window-system' frame-param.
15537
15538 * frame.h (Qwindow_system): Remove.
15539 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
15540 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
15541
155422007-10-24 Richard Stallman <rms@gnu.org>
15543
15544 * frame.c (x_figure_window_size): For fullscreen case,
15545 set USPosition | PPosition without clobbering rest of window_prompting.
15546
15547 * keyboard.c (Fcurrent_idle_time): Doc fix.
15548
15549 * print.c (Fwith_output_to_temp_buffer): Doc fix.
15550
155512007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
15552
15553 * process.c (unwind_request_sigio): Only define if __ultrix__.
15554
15555 * callproc.c (child_setup): Remove spurious *.
15556
15557 * lisp.h (Fget_text_property): Declare.
15558 (have_menus_p): Declare it here rather than in sys-dep header files.
15559 * macterm.h (have_menus_p):
15560 * msdos.h (have_menus_p):
15561 * xterm.h (have_menus_p): Remove.
15562
15563 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
15564 (Fmake_variable_frame_local): Just check the variable's const-ness
15565 rather than checking nil or t.
15566
155672007-10-22 Jason Rumney <jasonr@gnu.org>
15568
15569 * w32fns.c: Include math.h.
15570 (w32_abort): Declaration moved to nt/config.nt.
15571
15572 * s/ms-w32.h (HAVE_STDLIB_H): Define.
15573 (abort): Redefinition moved to nt/config.nt.
15574
15575 * m/windowsnt.h: Remove.
15576
155772007-10-22 Juanma Barranquero <lekktu@gmail.com>
15578
15579 * emacs.c (Fdump_emacs): Fix typo in message.
15580 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
15581 <installation-directory>: Reflow docstring.
15582
155832007-10-22 Juri Linkov <juri@jurta.org>
15584
15585 * minibuf.c: Allow minibuffer default to be a list of default values.
15586 With empty input use the first element of this list as returned default.
15587 (string_to_object)
15588 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
15589 (read_minibuf): If defalt is cons, set histstring to its car.
15590 (Fread_string): If default_value is cons, set val to its car.
15591 (Fread_buffer): If def is cons, use its car.
15592 (Fcompleting_read): If defalt is cons, set val to its car.
15593
155942007-10-21 Michael Albinus <michael.albinus@gmx.de>
15595
15596 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
15597
155982007-10-20 Juanma Barranquero <lekktu@gmail.com>
15599
15600 * doc.c (Fdocumentation): Check for advice in all cases.
15601
156022007-10-19 Chong Yidong <cyd@stupidchicken.com>
15603
15604 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
15605
156062007-10-19 Richard Stallman <rms@gnu.org>
15607
15608 * doc.c (Fdocumentation): Check for and handle an advised function.
15609
156102007-10-19 Juanma Barranquero <lekktu@gmail.com>
15611
15612 * process.c (Fset_process_filter): Doc fix.
15613
156142007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
15615
15616 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
15617 which caused key-translation-map to applied repeatedly (thus breaking
15618 double-mode).
15619
156202007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
15621
15622 * xselect.c (x_own_selection, x_handle_selection_clear)
15623 (x_clear_frame_selections):
15624 * w32menu.c (list_of_panes, list_of_items):
15625 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
15626 * textprop.c (validate_plist, interval_has_all_properties)
15627 (interval_has_some_properties, interval_has_some_properties_list)
15628 (add_properties, text_property_list):
15629 * process.c (Fget_buffer_process, list_processes_1, status_notify):
15630 * minibuf.c (Fassoc_string):
15631 * macselect.c (x_own_selection, x_clear_frame_selections)
15632 (Fx_disown_selection_internal):
15633 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
15634 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
15635
156362007-10-17 Chong Yidong <cyd@stupidchicken.com>
15637
15638 * process.c: Link to libs for calling res_init() if available.
15639 (Fmake_network_process): Call res_init() before getaddrinfo or
15640 gethostbyname, if possible.
15641
156422007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
15643
15644 * lread.c (read1): Set pvectype for char_tables.
15645
15646 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
15647 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
15648 Add type checks.
15649 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
15650
15651 * alloc.c (free_misc): Use XMISCTYPE.
15652 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
15653
156542007-10-17 Glenn Morris <rgm@gnu.org>
15655
15656 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
15657 (syms_of_minibuf): Add Qcompletion_ignore_case.
15658 * dired.c (Qcompletion_ignore_case): Change to external.
15659 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
15660 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
15661 (Fread_file_name): Use it rather than intern'ing.
15662
15663 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
15664 (Fread_coding_system): Ignore case of user input.
15665
156662007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15667
15668 * xdisp.c (handle_display_prop): Ignore display specs after
15669 replacing one when string text is being replaced.
15670 (handle_single_display_spec): Pretend as if characters with display
15671 property haven't been consumed only when buffer text is being replaced.
15672
156732007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
15674
15675 * xfns.c (Fx_create_frame, Fx_display_list):
15676 * window.c (window_fixed_size_p, enlarge_window)
15677 (shrink_window_lowest_first):
15678 * macterm.c (init_font_name_table):
15679 * macfns.c (Fx_create_frame, Fx_display_list):
15680 * lread.c (close_load_descs):
15681 * keyboard.c (read_char_x_menu_prompt):
15682 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
15683 * coding.c (code_convert_region_unwind): Test the type of an object
15684 rather than just !NILP before extracting data from it.
15685
15686 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
15687
15688 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
15689 (XMISCANY): New macro.
15690 (XMISCTYPE): Use it.
15691 (struct Lisp_Misc_Any): New type.
15692 (union Lisp_Misc): Use it.
15693 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
15694 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
15695 (find_symbol_value, set_internal, default_value, Fset_default)
15696 (Fmake_variable_buffer_local, Fmake_local_variable)
15697 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
15698 (Flocal_variable_if_set_p, Fvariable_binding_locus):
15699 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
15700 * alloc.c (allocate_buffer): Set the size and tag.
15701 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
15702 Use XMISCANY.
15703 (die): Follow the GNU convention for error messages.
15704 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
15705 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
15706 tag any more.
15707 (set_buffer_internal_1):
15708 * frame.c (store_frame_param):
15709 * eval.c (specbind):
15710 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
15711
15712 * doc.c (Fsnarf_documentation): Simplify.
15713
157142007-10-14 Juanma Barranquero <lekktu@gmail.com>
15715
15716 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
15717 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
15718
157192007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
15720
15721 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
15722
157232007-10-14 Juanma Barranquero <lekktu@gmail.com>
15724
15725 * eval.c (do_autoload): Don't save autoloads.
15726
15727 * data.c (Ffset): Save autoload of the function being set.
15728
157292007-10-07 John Paul Wallington <jpw@pobox.com>
15730
15731 * xfns.c (x_create_tip_frame): Set the `display-type' frame
15732 parameter before setting up faces.
15733
157342007-10-13 Eli Zaretskii <eliz@gnu.org>
15735
15736 * ccl.c (Fregister_code_conversion_map):
15737 * keyboard.c (append_tool_bar_item): Reformat last change.
15738
15739 * lisp.h (eabs): Rename from `abs'. All callers changed.
15740
157412007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
15742
15743 * buffer.c (add_overlay_mod_hooklist):
15744 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
15745 * fontset.c (make_fontset):
15746 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
15747 (append_tool_bar_item):
15748 * macmenu.c (grow_menu_items):
15749 * w32menu.c (grow_menu_items):
15750 * xmenu.c (grow_menu_items): Use larger_vector.
15751
157522007-10-13 Eli Zaretskii <eliz@gnu.org>
15753
15754 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
15755 selected frame'' on MSDOS).
15756
157572007-10-12 Martin Rudalics <rudalics@gmx.at>
15758
15759 * frame.c (Qexplicit_name): New variable.
15760 (x_report_frame_params): Report it in parameter alist.
15761 (syms_of_frame): Intern and staticpro it.
15762
157632007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
15764
15765 * macfns.c (x_create_tip_frame): Set terminal for frame.
15766
157672007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
15768
15769 * frame.c (Qenvironment): Remove.
15770 (syms_of_frame) <Qenvironment>: Don't initialize.
15771 (Fdelete_frame): Don't treat the `environment' param specially.
15772 * frame.h (Qenvironment): Don't declare.
15773 * callproc.c (set_initial_environment): Don't set unused frame param.
15774
15775 * frame.c (Fframe_with_environment): Remove.
15776 (syms_of_frame) <Sframe_with_environment>: Don't declare.
15777
15778 * lisp.h (Fframe_with_environment): Don't declare.
15779
157802007-10-10 Juanma Barranquero <lekktu@gmail.com>
15781
15782 * indent.c (indent_tabs_mode, last_known_column)
15783 (last_known_column_modified): Make static.
15784 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
15785
157862007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
15787
15788 * puresize.h (BASE_PURESIZE): Increase to 1170000.
15789
157902007-10-09 Jason Rumney <jasonr@gnu.org>
15791
15792 * w32term.c (x_set_window_size): Disable code that attempts to tell
15793 Lisp code about a size change before it actually happens.
15794
157952007-10-09 Richard Stallman <rms@gnu.org>
15796
15797 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
15798 return HANDLED_RETURN.
15799
158002007-10-08 Martin Rudalics <rudalics@gmx.at>
15801
15802 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
15803 when there's an unread command event.
15804
15805 * frame.c (focus_follows_mouse): Move here from frame.el to allow
15806 window autoselection act appropriately when leaving selected frame.
15807 (syms_of_frame): Initialize focus_follows_mouse.
15808 * frame.h (focus_follows_mouse): Extern it.
15809 * macterm.c (XTread_socket): When focus_follows_mouse is nil
15810 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
15811 * msdos.c (dos_rawgetc): Likewise.
15812 * w32term.c (w32_read_socket): Likewise.
15813 * xterm.c (handle_one_xevent): Likewise.
15814 * xdisp.c (syms_of_xdisp): In doc-string of
15815 mouse-autoselect-window mention focus-follows-mouse.
15816
158172007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15818
15819 * macterm.c (mac_load_query_font): Fix missing return value.
15820 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
15821 Add BLOCK_INPUT.
15822
158232007-10-08 Richard Stallman <rms@gnu.org>
15824
15825 * xdisp.c (get_window_cursor_type): Implement documented behavior
15826 for cursor-in-non-selected-windows = t.
15827
158282007-10-08 Jason Rumney <jasonr@gnu.org>
15829
15830 * w32.c (w32_get_resource): Always close registry keys.
15831
158322007-10-08 Jason Rumney <jasonr@gnu.org>
15833
15834 * makefile.w32-in (LIBS): Add COMCTL32.
15835
15836 * w32fns.c (globals_of_w32fns): Init common controls.
15837
158382007-10-08 Richard Stallman <rms@gnu.org>
15839
15840 * image.c (our_memory_buffer): Rename from omfib_buffer.
15841
158422007-10-08 Richard Stallman <rms@gnu.org>
15843
15844 * buffer.c (Foverlays_at): Doc fix.
15845
158462007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
15847
15848 * fns.c (Fplist_put): Preserve uneven tail data.
15849
158502007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
15851
15852 * termhooks.h (enum event_kind): Remove trailing comma.
15853
15854 * frame.h (enum): Remove trailing comma.
15855
158562007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
15857
15858 * w32proc.c (delete_child): Don't terminate threads of zombies.
15859
158602007-10-08 Martin Rudalics <rudalics@gmx.at>
15861
15862 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
15863
15864 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
15865 last-repeatable-command.
15866 (init_kboard): Initialize Vlast_repeatable_command.
15867 (command_loop_1): Set it to real_this_command unless that was
15868 bound to an input event.
15869 (mark_kboards): Mark it.
15870
158712007-10-08 Richard Stallman <rms@gnu.org>
15872
15873 * eval.c (condition-case): Doc fix.
15874
158752007-10-08 Masatake YAMATO <jet@gyve.org>
15876
15877 * xfaces.c (tty_supports_face_attributes_p): Fix code
15878 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
15879 was copied and not edited.
15880
158812007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
15882
15883 Add new `input-decode-map' keymap and use it for terminal
15884 escape sequences.
15885 * keyboard.h (struct kboard): Add Vinput_decode_map.
15886 Remove Vlocal_key_translation_map.
15887 * keyboard.c (read_key_sequence): Add support for input-decode-map.
15888 (init_kboard): Init input-decode-map.
15889 Replace local-key-translation-map back with key-translation-map.
15890 (syms_of_keyboard): Declare input-decode-map.
15891 Remove local-key-translation-map. Update docstrings.
15892 (mark_kboards): Mark Vinput_decode_map.
15893 Don't mark Vlocal_key_translation_map.
15894 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
15895 Replace local-key-translation-map back with key-translation-map.
15896 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
15897 Bind in input-decode-map rather than function-key-map.
15898
15899 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
15900 This was made redundant by the previous introduction of XSETPVECTYPE.
15901
159022007-10-09 Richard Stallman <rms@gnu.org>
15903
15904 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
15905
159062007-09-29 Richard Stallman <rms@gnu.org>
15907
15908 * eval.c (internal_condition_case_2, internal_condition_case_1)
15909 (internal_condition_case): Reenable abort if x_catching_errors ()
15910 to see if that really happens and why.
15911
159122007-10-06 Andreas Schwab <schwab@suse.de>
15913
15914 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
15915
159162007-10-04 Juanma Barranquero <lekktu@gmail.com>
15917
15918 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
15919
159202007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
15921
15922 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
15923
159242007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
15925
15926 * window.h (struct window):
15927 * window.c (struct save_window_data, struct saved_window):
15928 * termhooks.h (struct terminal):
15929 * process.h (struct Lisp_Process):
15930 * frame.h (struct frame):
15931 * buffer.h (struct buffer):
15932 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
15933 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
15934 The size field of (pseudo)vectors is now unsigned.
15935 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
15936
15937 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
15938 Turn `count' into an integer.
15939
15940 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
15941 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
15942 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
15943 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
15944 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
15945
15946 * alloc.c (allocate_pseudovector): New fun.
15947 (ALLOCATE_PSEUDOVECTOR): New macro.
15948 (allocate_window, allocate_terminal, allocate_frame)
15949 (allocate_process): Use it.
15950 (mark_vectorlike): New function.
15951 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
15952 (mark_terminals): Use it.
15953 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
15954 (Fmake_byte_code): Use XSETPVECTYPE.
15955
15956 * frame.c (Fframe_parameters): Minor simplification.
15957
15958 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
15959
15960 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
15961
15962 * buffer.c (Fget_buffer_create, init_buffer_once):
15963 * lread.c (defsubr):
15964 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
15965
15966 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
15967 defined differently in the m/*.h files.
15968 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
15969 (XSETPVECTYPE): New macro.
15970 (XSETPSEUDOVECTOR): Use it.
15971
15972 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
15973 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
15974
15975 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
15976 * lread.c (defvar_per_buffer):
15977 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
15978
15979 * window.c (candidate_window_p): Only consider as visible frames that
15980 are on the same terminal.
15981
15982 * m/ibms390x.h (MARKBIT): Remove unused macro.
15983
159842007-10-01 Juanma Barranquero <lekktu@gmail.com>
15985
15986 * lread.c (Fload): Fix typo in docstring.
15987
159882007-10-01 Michaël Cadilhac <michael@cadilhac.name>
15989
15990 * floatfns.c (Fexpt): Manually check for overflows, so that a power
15991 of a non-zero value can't yield zero.
15992
159932007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
15994
15995 * term.c (term_clear_mouse_face, term_mouse_highlight)
15996 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
15997
15998 * print.c (safe_debug_print): Use XHASH.
15999
16000 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
16001 Lisp elements such as tags.
16002 (XHASH): New macro.
16003 (EQ): Use it.
16004 (SREF, SSET, STRING_COPYIN): Use SDATA.
16005 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
16006
16007 * alloc.c (mark_terminal): Remove left-over declaration.
16008 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
16009 (allocate_vectorlike): Remove type argument. Adjust callers.
16010 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
16011 Only handle the one remaining MEM_TYPE_VECTORLIKE.
16012
16013 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
16014 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
16015 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
16016 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
16017 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
16018 Use them.
16019
16020 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
16021 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
16022 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
16023
160242007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
16025
16026 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
16027 loaded by default.
16028
160292007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
16030
16031 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
16032 on this tty.
16033 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
16034
16035 * term.c (mouse_face_window): Rename from Qmouse_face_window.
16036 Update all users.
16037 (handle_one_term_event): Use Gpm_DrawPointer.
16038 (Fgpm_mouse_start): Rename from Fterm_open_connection.
16039 Signal errors instead of returning nil. Always return nil.
16040 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
16041 Make it a noop if gpm-mouse was not activated.
16042 (syms_of_term): Update names.
16043
160442007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
16045
16046 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
16047 (init_sys_modes): Check that gpm_tty is the current tty.
16048
16049 * alloc.c (allocate_terminal): Set the vector size to only count the
16050 lisp fields. Initialize those to nil.
16051 (mark_object): Don't treat terminals specially.
16052 (mark_terminal): Remove.
16053 (mark_terminals): Use mark_object instead.
16054
16055 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
16056 the GC to the beginning.
16057
16058 * indent.h:
16059 * indent.c: Use EMACS_INT for ints coming from Elisp data.
16060
16061 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
16062
160632007-09-25 Jason Rumney <jasonr@gnu.org>
16064
16065 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
16066
16067 * w32console.c (create_w32cons_output): Remove.
16068
16069 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
16070
16071 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
16072 (reset_sys_modes): Use reset_terminal_modes_hook.
16073
160742007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
16075
16076 * eval.c (do_autoload): Don't output any message.
16077
160782007-09-24 Juri Linkov <juri@jurta.org>
16079
16080 * emacs.c (standard_args): Change priority of "--no-splash"
16081 from 40 to 3. Add "--no-desktop" with the same priority.
16082
160832007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
16084
16085 * alloc.c (gc_sweep): Check cons cell mark bits word by word
16086 and optimize the case where they are all 1.
16087
160882007-09-23 Johannes Weiner <hannes@saeurebad.de>
16089
16090 * lisp.h (abs): Define if not defined.
16091 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
16092 Don't define `abs', since it's defined in lisp.h.
16093
160942007-09-22 Eli Zaretskii <eliz@gnu.org>
16095
16096 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
16097 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
16098 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
16099 (init_tty): Use DEV_TTY instead of "/dev/tty".
16100 [WINDOWSNT]: No need to protect from NAME arg being null.
16101
161022007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
16103
16104 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
16105 up the tty state.
16106
161072007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
16108
16109 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
16110 (gpm_tty): Change its type.
16111 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
16112 (gpm_tty): Change its type and initialize it.
16113 (Fterm_open_connection): Check the frame is indeed a tty.
16114 Use the new gpm_tty.
16115 (Fterm_close_connection): Use the new gpm_tty.
16116 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
16117 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
16118
161192007-09-21 Juanma Barranquero <lekktu@gmail.com>
16120
16121 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
16122 underline_color, to draw strike-through.
16123
161242007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
16125
16126 * lisp.h (allocate_terminal): Declare.
16127
16128 * window.c (candidate_window_p): Consider frames that are being placed
16129 by the user as somewhere between visible and iconified.
16130 (window_loop): Prefer windows on the current frame.
16131 (Fselect_window): Move the use of select-frame to the beginning so we
16132 can just delegate all the work (it'll call us back anyway).
16133
16134 * frame.c (Qdisplay_environment_variable):
16135 * frame.h (Qdisplay_environment_variable): Delete.
16136
16137 * .gdbinit (xbacktrace): Print the arg's address rather than the value
16138 of the first arg, since that value may be a union.
16139
16140 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
16141 parameter rather than Qdisplay_environment_variable. If all else
16142 fails, look for DISPLAY in initial-environment.
16143
161442007-09-21 Glenn Morris <rgm@gnu.org>
16145
16146 * Makefile.in (emacstool): Remove target.
16147 (lisp, shortlisp): Remove termdev.elc.
16148
161492007-09-21 Markus Triska <markus.triska@gmx.at>
16150
16151 * xterm.c (x_delete_display): Compile session management conditionally.
16152
161532007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
16154
16155 * callproc.c (getenv_internal_1): New function.
16156 (getenv_internal): Use it.
16157 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
16158
16159 * terminal.c (get_terminal): Don't accept ints to represent terminals.
16160 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
16161 (Fset_terminal_parameter): Work with dead terminals as well.
16162 (Fmodify_terminal_parameters): Remove.
16163
16164 * terminal.c (get_terminal): Handle terminals.
16165 Make sure the terminal returned is live.
16166 (create_terminal): Use allocate_terminal.
16167 (mark_terminals): Move to alloc.c.
16168 (delete_terminal): Use terminal->name as liveness status.
16169 NULL out fields after freeing their contents.
16170 Don't deallocate the object.
16171 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
16172 rather than an int.
16173 (Fterminal_live_p): Accept non-integer arguments.
16174 (Fterminal_list): Return terminal objects rather than an ints.
16175
16176 * alloc.c (enum mem_type): New member for `terminal' objects.
16177 (allocate_terminal): New function.
16178 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
16179 Handle terminals.
16180 (mark_terminal): New fun.
16181 (mark_terminals): Move from terminal.c.
16182
16183 * term.c (get_tty_terminal): Don't treat output_initial specially.
16184 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
16185 (delete_tty): Use terminal->name as liveness status.
16186
16187 * termhooks.h (struct terminal): Make it into a pseudovector.
16188 Remove `deleted' replaced by checking `name's nullness.
16189
16190 * print.c (print_object): Handle terminals.
16191
16192 * lisp.h (enum pvec_type): New `terminal' pseudovector.
16193 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
16194
16195 * frame.c (make_terminal_frame):
16196 * keyboard.c (tty_read_avail_input):
16197 * w32term.c (x_delete_terminal):
16198 * xfns.c (Fx_create_frame, x_create_tip_frame):
16199 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
16200
162012007-09-20 Glenn Morris <rgm@gnu.org>
16202
16203 * process.c (Fmake_network_process): Doc fix.
16204
162052007-09-19 Jason Rumney <jasonr@gnu.org>
16206
16207 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
16208
162092007-09-19 Michaël Cadilhac <michael@cadilhac.name>
16210
16211 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
16212 Fix a C warning regarding variable constness.
16213
16214 * xterm.c (handle_one_xevent): Fix a C warning.
16215
162162007-09-18 Jason Rumney <jasonr@gnu.org>
16217
16218 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
16219
162202007-09-17 Jan Djärv <jan.h.d@swipnet.se>
16221
16222 * gtkutil.c (gdpy_def): New variable.
16223 (xg_initialize): Initialize gdpy_def.
16224 (xg_display_close): If no other display exists, set gdpy_def to a
16225 new connection.
16226
162272007-09-16 Jan Djärv <jan.h.d@swipnet.se>
16228
16229 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
16230 when we have no file name for the icon.
16231 (xg_tool_bar_expose_callback): Remove.
16232 (xg_create_tool_bar): Don't connect expose signal to
16233 xg_tool_bar_expose_callback.
16234 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
16235
162362007-09-16 Andreas Schwab <schwab@suse.de>
16237
16238 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
16239 values instead of zapping them.
16240
162412007-09-14 Glenn Morris <rgm@gnu.org>
16242
16243 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
16244 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
16245 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
16246 scope and rename to omfib_buffer for clarity.
16247 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
16248
162492007-09-14 Kenichi Handa <handa@m17n.org>
16250
16251 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
16252
162532007-09-13 Jason Rumney <jasonr@gnu.org>
16254
16255 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
16256
16257 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
16258
16259 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
16260 (mac_term_init): Call here instead, passing rif.
16261
162622007-09-13 Glenn Morris <rgm@gnu.org>
16263
16264 * s/hpux.h: No longer define `static' as nothing.
16265
162662007-09-13 Johan Bockgård <bojohan@gnu.org>
16267
16268 * callint.c (Fcall_interactively): Remove unused var `fun'.
16269
162702007-09-12 Romain Francoise <romain@orebokech.com>
16271
16272 * window.c (prefer_window_split_horizontally, display_buffer):
16273 Revert 2007-09-08 change.
16274
162752007-09-12 Glenn Morris <rgm@gnu.org>
16276
16277 * alloca.c: Remove file.
16278 * Makefile.in (alloca): Do not undef.
16279 (allocaobj, alloca.o): Remove.
16280 (otherobj): Remove allocaobj.
16281 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
16282 * regex.c (C_ALLOCA): Remove all references and code that was only
16283 used when this was defined.
16284 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
16285 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
16286 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
16287
16288 * Makefile.in (SOURCES, unlock, relock): Delete.
16289
16290 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
16291 (menu_grab_callback): All uses changed.
16292
16293 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
16294 (x_reply_selection_request): All uses changed.
16295
162962007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
16297
16298 * lread.c (load_warn_old_style_backquotes): Change message to look
16299 better when it appears in the middle of byte-compiler messages.
16300
163012007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
16302
16303 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
16304
16305 * xterm.c (x_create_terminal): Add comment.
16306
16307 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
16308
163092007-09-10 Richard Stallman <rms@gnu.org>
16310
16311 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
16312
163132007-09-10 Michaël Cadilhac <michael@cadilhac.name>
16314
16315 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
16316 (DEFUN): Document `intspec', use it instead of `prompt'.
16317
16318 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
16319
16320 * data.c (Finteractive_form): If the interactive specification starts
16321 with a `(', use it as a Lisp form.
16322
16323 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
16324 name and file modes.
16325
16326 * callint.c (Fcall_interactively): Comment fixes.
16327
163282007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
16329
16330 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
16331 and compiled functions.
16332
163332007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
16334
16335 * window.c (prefer_window_split_horizontally): New variable.
16336 (display_buffer): Consider splitting window horizontally depending
16337 on prefer_window_split_horizontally.
16338
163392007-09-08 Eli Zaretskii <eliz@gnu.org>
16340
16341 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
16342
163432007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
16344
16345 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
16346
16347 * frame.c (x_set_frame_parameters): Check number is positive before
16348 using XFASTINT.
16349
16350 * window.c (freeze_window_start): Don't presume selected_window holds
16351 a window object.
16352 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
16353
163542007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
16355
16356 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
16357
163582007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
16359
16360 * window.c (Vsplit_window_preferred_function): New var.
16361 (Fdisplay_buffer): Use it.
16362 (syms_of_window): Export, and initialize it.
16363
163642007-09-06 Pixel <pixel@mandriva.com> (tiny change)
16365
16366 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
16367
163682007-09-06 Glenn Morris <rgm@gnu.org>
16369
16370 * gtkutil.c (menu_grab_callback) <cnt>:
16371 * xselect.c (x_reply_selection_request) <cnt>: Move static
16372 variable to file scope.
16373
163742007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
16375
16376 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
16377 consistent values of selected_frame and selected_window.
16378
163792007-09-04 Jason Rumney <jasonr@gnu.org>
16380
16381 * w32console.c (initialize_w32_display): Zero unused hooks.
16382
163832007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
16384
16385 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
16386 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
16387
163882007-09-04 Jason Rumney <jasonr@gnu.org>
16389
16390 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
16391 in w32console.c. Set up input. Remove XXX comments that have been
16392 confirmed as correct.
16393
16394 * s/ms-w32.h (MULTI_KBOARD): Define.
16395
16396 * w32console.c (one_and_only_w32cons): Remove.
16397 (initialize_w32_display): Take terminal argument.
16398
16399 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
16400 initialize_w32_display.
16401 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
16402
16403 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
16404
16405 * keyboard.c (discard_mouse_events): Discard it.
16406 (make_lispy_event): Translate it to a lisp event.
16407 (lispy_wheel_names): Add wheel-left and right events.
16408 (syms_of_keyboard): Enlarge wheel_syms.
16409
16410 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
16411 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
16412
16413 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
16414
16415 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
16416 from WM_MOUSEHWHEEL.
16417 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
16418
16419 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
16420 terminal.
16421
16422 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
16423 keyboard for the terminal.
16424
164252007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
16426
16427 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
16428 (Vresume_tty_hook): Rename from Vresume_tty_functions.
16429 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
16430 and resume-tty-function to resume-tty-hook.
16431 (Fsuspend_tty, Fresume_tty): Use new names.
16432
164332007-09-02 Jan Djärv <jan.h.d@swipnet.se>
16434
16435 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
16436 if it starts with "n:".
16437
164382007-08-31 Jan Djärv <jan.h.d@swipnet.se>
16439
16440 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
16441
164422007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
16443
16444 * frame.h:
16445 * frame.c (Qterm_environment_variable): Remove.
16446 (syms_of_frame): Don't init and staticpro it.
16447
16448 * callproc.c (getenv_internal): Remove special case for $TERM.
16449
16450 * callproc.c (Vinitial_environment): New variable.
16451 (set_initial_environment): Initialize it.
16452 (syms_of_callproc): Declare it.
16453 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
16454 TERM under which a process runs is never related to the TERM in which
16455 Emacs is running.
16456
164572007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
16458
16459 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
16460 * s/darwin.h: ... do it here.
16461
164622007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
16463
16464 * lisp.h (set_initial_environment): Rename from set_global_environment.
16465
16466 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
16467 removed by mistake on the multi-tty branch.
16468
16469 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
16470 (Fmodify_frame_parameters): Return a value.
16471
16472 * image.c (png_load): Comment-out var only used in commented-out code.
16473
16474 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
16475 before passing it to mark_object.
16476
16477 * xfaces.c (internal_resolve_face_name): Return a value.
16478 (internal_resolve_face_name, resolve_face_name_error): Comment out.
16479
16480 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
16481 (x_icon): Comment-out var only used in commented-out code.
16482
164832007-08-29 Romain Francoise <romain@orebokech.com>
16484
16485 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
16486 QUIT hasn't been provided.
16487
164882007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
16489
16490 * callproc.c (child_setup, getenv_internal): Use the
16491 display-environment-variable and term-environment-variable frame params.
16492 (set_initial_environment): Initialise Vprocess_environment.
16493
16494 * config.in: Disable multi-keyboard support on a mac.
16495
16496 * frame.c (Qterm_environment_variable)
16497 (Qdisplay_environment_variable): New variables.
16498 (syms_of_frame): Intern and staticpro them.
16499 (Fmake_terminal_frame): Disable output method test.
16500
16501 * frame.h: Declare them here.
16502
16503 * macfns.c (x_set_mouse_color): Get rif from the frame.
16504 (x_set_tool_bar_lines): Don't use updating_frame.
16505 (mac_window): Add 2 new parameters for consistency with other systems.
16506 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
16507 frame parameters following what is done in X11 and w32. Don't use
16508 FRAME_MAC_DISPLAY_INFO.
16509 (Fx_open_connection, start_hourglass): Remove window-system check.
16510 (x_create_tip_frame): Get the keyboard from the terminal.
16511
16512 * macmenu.c: Reorder includes.
16513 (Fx_popup_menu): Use terminal specific mouse_position_hook.
16514
16515 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
16516 terminal parameter.
16517 (x_clear_frame): Add a frame parameter.
16518 (note_mouse_movement): Get rif from the frame.
16519 (mac_term_init): Initialize the terminal.
16520 (mac_initialize): Make static and move terminal initialization ...
16521 (mac_create_terminal): ... to this new function.
16522
16523 * macterm.h (struct mac_display_info): Add terminal.
16524 (mac_initialize): Delete declaration.
16525
16526 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
16527
16528 * sysdep.c: Comment out text after #endif.
16529
16530 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
16531 is defined. Better initialize ttys in windows. Use terminal
16532 specific mouse_position_hook.
16533
16534 * termhooks.h (union display_info): Add mac_display_info.
16535
16536 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
16537 Set the default minibuffer frame, window_system and the rest of the
16538 frame parameters following what is done in X11.
16539
16540 * w32term.c (w32_initialize): Make static.
16541
16542 * xselect.c (x_handle_selection_clear): Only access
16543 terminal->kboard when MULTI_KBOARD is defined.
16544
16545 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
16546 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
16547
165482007-08-29 Jason Rumney <jasonr@gnu.org>
16549
16550 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
16551 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
16552
16553 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
16554 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
16555
16556 * keyboard.c (restore_kboard_configuration): Only define when
16557 MULTI_KBOARD defined.
16558
16559 * makefile.w32-in: Update dependancies from Makefile.in.
16560 (OBJ1): Add terminal.$(O)
16561
16562 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
16563 Don't define function body.
16564 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
16565
16566 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
16567
16568 * w32.c (request_sigio, unrequest_sigio): Remove.
16569
16570 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
16571 (w32con_clear_frame, w32con_clear_end_of_line)
16572 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
16573 (w32con_delete_glyphs, w32con_set_terminal_window)
16574 (scroll_line, w32_sys_ring_bell): Add frame arg.
16575 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
16576 Add terminal arg.
16577 (PICK_FRAME): Remove.
16578 (w32con_write_glyphs): Use frame specific terminal coding.
16579 (one_and_only_w32cons): New global variable.
16580 (initialize_w32_display): Use it for storing hooks.
16581 (create_w32cons_output): New function.
16582
16583 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
16584 arg a frame.
16585
16586 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
16587 Set window_system.
16588 (x_set_tool_bar_lines): Don't use updating_frame.
16589 (Fx_create_frame): Set terminal and ref count.
16590 (Fx_open_connection): Remove window-system check.
16591
16592 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
16593
16594 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
16595 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
16596 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
16597 Add frame arg.
16598 (x_delete_terminal, w32_create_terminal): New functions.
16599 (w32_term_init): Create a terminal.
16600 (w32_initialize): Move terminal specific initialization to
16601 w32_create_terminal.
16602
16603 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
16604 (w32_clear_rect, w32_clear_area): Use background from frame.
16605 (w32_display_info): Add terminal.
16606 (w32_sys_ring_bell, x_delete_display): Declare here.
16607
16608 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
16609
16610 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
16611
166122007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
16613
16614 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
16615 Fix get_named_tty calls for the controlling tty.
16616
166172007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
16618
16619 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
16620
166212007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
16622
16623 * term.c (tty_insert_glyphs): Add missing first parameter.
16624
166252007-08-29 Károly Lőrentey <karoly@lorentey.hu>
16626
16627 * buffer.c (Fbuffer_list, Fbury_buffer):
16628 Take frame->buried_buffer_list into account.
16629
16630 * cm.c (current_tty): New variable, for cmputc().
16631 (cmputc): Use it.
16632 (cmcheckmagic): Add tty parameter, look up terminal streams there.
16633 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
16634 (cmgoto): Add tty parameter. Pass it on to calccost().
16635 Use emacs_tputs() instead of tputs().
16636
16637 * cm.h (emacs_tputs): New macro to set current_tty, and then call
16638 tputs().
16639 (current_tty): New variable, for cmputc().
16640 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
16641
16642 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
16643 (internal_condition_case, internal_condition_case_1)
16644 (internal_condition_case_2): Don't abort when x_catching_errors.
16645
16646 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
16647 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
16648 prevent crashes caused by bogus longjmps in read_char.
16649
16650 * keymap.h (Fset_keymap_parent): Add EXFUN.
16651
16652 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
16653 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
16654 Remove redundant definition.
16655
16656 * macfns.c (x_set_mouse_color, x_make_gc):
16657 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16658
16659 * w32term.c (x_free_frame_resources):
16660 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16661 (w32_initialize): Use the accessor macros for terminal characteristics.
16662
16663 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
16664 Use the accessor macros for terminal characteristics.
16665 * msdos.c (internal_terminal_init): Use the accessor macros for
16666 terminal characteristics.
16667 (ScreenVisualBell, internal_terminal_init):
16668 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16669
16670 * termopts.h (no_redraw_on_reenter): Declare.
16671
16672 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
16673 (mark_terminals, mark_ttys): Declare.
16674 (Fgarbage_collect): Call them.
16675 (mark_object): Mark buried_buffer_list.
16676
16677 * prefix-args.c: Include stdlib.h for exit.
16678
16679 * syssignal.h: Add comment.
16680
16681 * indent.c: Include stdio.h.
16682
16683 * window.h (Vinitial_window_system): Declare.
16684 (Vwindow_system): Delete declaration.
16685
16686 * fontset.c (Finternal_char_font): Use FRAME_RIF.
16687
16688 * image.c (lookup_image): Don't initialize `c' until the xasserts
16689 have been run.
16690
16691 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
16692 FRAME_FOREGROUND_PIXEL.
16693
16694 * print.c (print_preprocess): Don't lose print_depth levels while
16695 iterating.
16696
16697 * widget.c (update_from_various_frame_slots):
16698 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16699
16700 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
16701 frames.
16702 (window_internal_height): Remove bogus make_number call.
16703 (init_window_once): Call make_terminal_frame with two zero parameters.
16704
16705 * fileio.c (Fread_file_name): Update comment.
16706
16707 * callint.c (Fcall_interactively):
16708 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
16709 Make sure it is correctly unwound.
16710
16711 * xsmfns.c (x_session_close): New function.
16712
16713 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
16714 Delete declarations.
16715
16716 * xterm.h: Remove declaration for x_fully_uncatch_errors.
16717 (x_output): Remove background_pixel and foreground_pixel fields.
16718 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
16719 (x_delete_device, x_session_close): Declare.
16720
16721 * lread.c: Include setjmp.h. Update declaration of `read_char'.
16722 (read_filtered_event): Call `read_char' with a local
16723 `wrong_kboard_jmpbuf'.
16724
16725 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
16726 Don't call single_kboard_state. Use FRAME_RIF.
16727
16728 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
16729 systems.
16730
16731 * lisp.h (set_process_environment): Rename to `set_global_environment'.
16732 (Fframe_with_environment, Fset_input_meta_mode)
16733 (Fset_quit_char): EXFUN.
16734 (x_create_device, tty_output, terminal, tty_display_info): Declare.
16735 (init_sys_modes, reset_sys_modes): Update prototypes.
16736 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
16737
16738 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
16739 Vlocal_key_translation_map, and Vkeyboard_translate_table.
16740 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
16741 Delete declarations.
16742 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
16743 (temporarily_switch_to_single_kboard, tty_read_avail_input):
16744 New declarations.
16745
16746 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
16747 already does that during init_display(). Call syms_of_keymap
16748 before syms_of_keyboard. Call `syms_of_terminal'.
16749 Call set_initial_environment, not set_process_environment.
16750 (shut_down_emacs): Call reset_all_sys_modes() instead of
16751 reset_sys_modes().
16752
16753 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
16754 (internal_resolve_face_name, resolve_face_name_error): New functions.
16755 (resolve_face_name): Protect against loops and errors thrown by Fget.
16756 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
16757 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
16758
16759 * scroll.c: Replace CURTTY() with local variables throughout the
16760 file (where applicable).
16761 (calculate_scrolling, calculate_direct_scrolling)
16762 (scrolling_1, scroll_cost): Use the accessor macros for terminal
16763 characteristics.
16764
16765 * keymap.c (Vfunction_key_map): Remove.
16766 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
16767 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
16768 (Vkey_translation_map): Remove.
16769 (syms_of_keymap): Remove DEFVAR for key-translation-map.
16770 (Fdescribe_buffer_bindings)
16771 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
16772 Update for terminal-local key-translation-map.
16773
16774 * Makefile.in (callproc.o): Update dependencies.
16775 (lisp, shortlisp): Add termdev.elc.
16776 (obj): Add terminal.o.
16777 (terminal.o): Add dependencies.
16778 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
16779 (data.o, fns.o): Add termhooks.h dependency.
16780 (SOME_MACHINE_LISP): Add dnd.elc.
16781 (minibuf.o): Fix typo.
16782 Update dependencies.
16783
16784 * data.c (do_symval_forwarding, store_symval_forwarding)
16785 (find_symbol_value): Use the selected frame's keyboard, not
16786 current_kboard.
16787
16788 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
16789 Vwindow_system.
16790
16791 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
16792 Fmenu_bar_open.
16793 (syms_of_xmenu): Update defsubr.
16794 (mouse_position_for_popup, Fx_popup_menu)
16795 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
16796 (set_frame_menubar, free_frame_menubar)
b97439ce 16797 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
16798 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
16799 an X frame.
16800
16801 * xselect.c (x_own_selection): Abort if not an X frame.
16802 (some_frame_on_display): Check if it is an X frame.
16803 (x_handle_selection_clear): Deal with MULTI_KBOARD.
16804
16805 * coding.c: Include frame.h and termhooks.h.
16806 (terminal_coding, keyboard_coding): Delete.
16807 (Fset_terminal_coding_system_internal)
16808 (Fset_keyboard_coding_system_internal)
16809 (Fkeyboard_coding_system)
16810 (Fterminal_coding_system): Add a terminal parameter.
16811 Get terminal_coding from the terminal.
16812 (init_coding_once): Don't call setup_coding_system here.
16813
16814 * dispextern.h (set_scroll_region, turn_off_insert)
16815 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
16816 (tty_clear_end_of_line, tty_setup_colors)
16817 (delete_tty, updating_frame)
16818 (produce_special_glyphs, produce_glyphs, write_glyphs)
16819 (insert_glyphs): Remove.
16820 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
16821 (tty_turn_off_highlight, get_tty_size): Add declaration.
16822 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
16823
16824 * frame.h (enum output_method): Add output_initial.
16825 (struct x_output): Delete.
16826 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
16827 Access foreground_pixel and background_pixel directly from the frame.
16828 (tty_display): Delete.
16829 (struct frame): Add buried_buffer_list, foreground_pixel,
16830 background_pixel and terminal. Delete kboard.
16831 (union output_data): Add tty.
16832 (FRAME_KBOARD): Get the kboard from the terminal.
16833 (FRAME_INITIAL_P): New macro.
16834 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
16835 (Qterm_environment_variable, Qdisplay_environment_variable)
16836 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
16837 New declarations.
16838
16839 * termchar.h (tty_output, tty_display_info): New structures.
16840 (tty_list): Declare.
16841 (FRAME_TTY, CURTTY): New macros.
16842 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
16843 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
16844 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
16845 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
16846
16847 * callproc.c: Include frame.h and termhooks.h, for terminal
16848 parameters.
16849 (add_env): New function.
16850 (child_setup): Use it.
16851 (child_setup, getenv_internal): Handle the new Vprocess_environment.
16852 (getenv_internal): Fix get_terminal_param call.
16853 (Fgetenv_internal, egetenv): Update doc.
16854 (syms_of_callproc): Initialize Vprocess_environment to nil.
16855 Register and initialize them. Remove obsolete defvars. Update doc
16856 strings.
16857 (child_setup): Handle Vlocal_environment_variables.
16858 (getenv_internal): Add terminal parameter.
16859 Handle Vlocal_environment_variables.
16860 (Fgetenv_internal): Add terminal parameter.
16861 (child_setup, getenv_internal, Fgetenv_internal): Store the local
16862 environment in a frame (not terminal) parameter. Update doc strings.
16863 (set_initial_environment): Rename from set_global_environment.
16864 Store Emacs environment in initial frame parameter.
16865
16866 * xdisp.c (redisplay_internal): Update references to
16867 `previous_terminal_frame'.
16868 (display_mode_line, Fformat_mode_line): Replace calls to
16869 `push_frame_kboard' with `push_kboard'.
16870 (get_glyph_string_clip_rects): Add extra parentheses and
16871 braces to prevent compiler warnings.
16872 (calc_pixel_width_or_height): Add xassert to check that the
16873 frame is alive. Don't call `lookup_image' on a termcap frame.
16874 (message2_nolog, message3_nolog, redisplay_internal)
16875 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
16876 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
16877 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
16878 (Fx_display_pixel_width, Fx_display_pixel_height)
16879 (Fx_display_planes, Fx_display_color_cells)
16880 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
16881 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
16882 (Fx_display_backing_store, Fx_display_visual_class)
16883 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
16884 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
16885
16886 * xfns.c (x_set_foreground_color x_set_background_color)
16887 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
16888 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16889 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
16890 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
16891 terminal that is being deleted.
16892 (Fx_create_frame): Use `store_frame_param' to set `window-system'
16893 frame parameter, and make sure it overrides any user-supplied setting.
16894 (Fx_close_connection, Fx_synchronize): Unify argument names with
16895 the rest of the DEFUNs.
16896
16897 * dispnew.c (Fsend_string_to_terminal): Update call to
16898 `get_tty_terminal'.
16899 (Fredraw_frame, Fsend_string_to_terminal)
16900 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
16901 FRAME_TERMCAP_P and FRAME_TTY.
16902 (window_change_signal): Don't believe width/height values that are
16903 impossibly small.
16904 (Vinitial_window_system): Rename from Vwindow_system.
16905 (termscript, Wcm, rif): Delete.
16906
16907 * termhooks.h (struct terminal): New struct containing the
16908 previously global text display hooks and new members NAME,
16909 DELETED and PARAM_ALIST.
16910 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
16911 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
16912 (FRAME_RIF): New macros.
16913 (get_terminal_param, get_device): New declarations.
16914 (termscript): Delete declaration.
16915
16916 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
16917 (XTflash, x_free_frame_resources, x_scroll_bar_create)
16918 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
16919 FRAME_FOREGROUND_PIXEL.
16920 (x_fully_uncatch_errors): Disable definition.
16921 (x_scroll_bar_expose): Fix reference to foreground pixel.
16922 (XTread_socket): Disable loop on all X displays.
16923 (x_delete_terminal): Don't set terminal->deleted and let
16924 delete_terminal delete the frames on the terminal.
16925 (x_delete_display): Doc update to reflect changes in
16926 delete_terminal.
16927 (x_display_info) <terminal>: Move member earlier in the struct.
16928 (deleting_tty): Remove old variable.
16929 (Fsuspend_tty): Call clear_tty_hooks.
16930 (Fresume_tty, init_tty): Call set_tty_hooks.
16931 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
16932 errors on X frames.
16933 (x_catch_errors_unwind): Abort if x_error_message is NULL.
16934 (handle_one_xevent): Initialize `f' to NULL.
16935 (x_delete_terminal, x_create_terminal): New functions.
16936 (XTset_terminal_modes, XTreset_terminal_modes)
16937 (XTread_socket, x_connection_closed, x_term_init)
16938 (x_term_init, x_delete_display): Add terminal parameter.
16939 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
16940 X connections.
16941
16942 * frame.c: Include termchar.h.
16943 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
16944 (Qwindow_system, Qenvironment, Qterm_environment_variable)
16945 (Qdisplay_environment_variable): New vars.
16946 (Fframep): Deal with output_initial.
16947 (Fframe-live-p): Doc fix.
16948 (Fwindow-system): New function.
16949 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
16950 (make_terminal_frame): Don't create frames on a terminal that is
16951 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16952 (store_frame_param): Check for found_for_frame before calling XFRAME.
16953 (Fmake_terminal_frame): Handle NULL tty names correctly.
16954 (syms_of_frame): Enhance doc string of `default-frame-alist'.
16955 (Fdelete_frame): Remove unused variable `count'. Don't allow other
16956 frames to refer to a deleted frame in their 'environment parameter.
16957 (Fframe_with_environment): New function.
16958 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
16959 (get_future_frame_param): New function.
16960 (Fmake_terminal_frame): Use it.
16961 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
16962
16963 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
16964 * sysdep.c (reset_sys_modes): Update for renames.
16965
16966 * keyboard.c (tty_read_avail_input): New function.
16967 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
16968 (syms_of_keyboard): Defsubr them.
16969 (Fset_input_meta_mode, Fset_quit_char): New functions.
16970 (Fset_input_mode): Split to above functions.
16971 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
16972 parameter. Use it in call to `read_char'.
16973 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
16974 Set wrong_kboard_jmpbuf correctly in recursive calls.
16975 Use current_kboard to access Vkeyboard_translate_table.
16976 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
16977 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
16978 Update longjmp invocations. Remember the original current_kboard,
16979 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
16980 changes it. Comment out unnecessary calls to
16981 `record_single_kboard_state' and `any_kboard_state'.
16982 Update recursive calls.
16983 (wrong_kboard_jmpbuf): Remove global variable.
16984 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
16985 Handle deleted interrupted_kboards correctly; that is a legal
16986 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
16987 and read_char calls. Abort if interrupted_kboard died in read_char.
16988 (any_kboard_state, single_kboard_state)
16989 (push_frame_kboard): Remove function.
16990 (pop_kboard): Switch out of single_kboard mode if the kboard has
16991 been deleted. Remove unused variable. Help debugging by not
16992 changing current_kboard unnecessarily. Set current_kboard to the
16993 kboard of the selected frame when the stored kboard object has
16994 been deleted before pop_kboard.
16995 (temporarily_switch_to_single_kboard): Change first parameter to a
16996 frame pointer. Throw an error when caller wants to change kboards
16997 while in single_kboard mode. Don't push_kboard if we weren't in
16998 single kboard state. Don't pop_kboard if we popped into any
16999 kboard state.
17000 (restore_kboard_configuration): Abort if pop_kboard changed the
17001 kboard in single_kboard mode. Call pop_kboard only after setting
17002 up single_kboard mode.
17003 (Frecursive_edit): Switch to single_kboard mode only in nested
17004 command loops.
17005 (cmd_error, command_loop, command_loop_1, timer_check):
17006 Comment out unnecessary call to `any_kboard_state' and
17007 `record_single_kboard_state'.
17008 (delete_kboard): Exit single_kboard mode if we have just deleted
17009 that kboard. Use FRAME_KBOARD.
17010 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
17011 `fatal_error_signal'.
17012 (record_single_kboard_state): Don't push_kboard if we weren't in
17013 single kboard state. Don't pop_kboard if we popped into any
17014 kboard state.
17015 (push_frame_kboard): Rename to push_kboard.
17016 (kbd_buffer_get_event): Use FRAME_TERMINAL.
17017 (read_avail_input): Read input from all terminals.
17018 (mark_kboards): Also mark Vkeyboard_translate_table.
17019 (kbd_buffer_store_event_hold): Simplify condition.
17020 (read_key_sequence): Reinitialize fkey and keytran at each replay.
17021 (Vkeyboard_translate_table): Move to struct kboard.
17022 (init_kboard): Initialize Vkeyboard_translate_table.
17023 (syms_of_keyboard): Use DEFVAR_KBOARD to define
17024 Vkeyboard_translate_table. Update doc strings. Update docs of
17025 local-function-key-map and function-key-map.
17026
17027 * terminal.c: New file.
17028
17029 * term.c: Include errno.h.
17030 (Vring_bell_function, device_list, initial_device)
17031 (next_device_id, ring_bell, update_begin, update_end)
17032 (set_terminal_window, cursor_to, raw_cursor_to)
17033 (clear_to_end, clear_frame, clear_end_of_line)
17034 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
17035 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
17036 (syms_of_term): Move their initialization to terminal.c.
17037 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
17038 (Ftty_display_color_cells)
17039 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
17040 (clear_tty_hooks, set_tty_hooks)
17041 (init_tty, maybe_fatal): New functions.
17042 (Ftty_type): Return nil if terminal is not on a tty instead of
17043 throwing an error. Doc update.
17044 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
17045 Doc update. Initialize new subrs and variables.
17046 (delete_tty): Use terminal->deleted.
17047 (tty_set_terminal_modes): Rename from set_terminal_modes.
17048 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
17049 (set_scroll_region): Rename to `tty_set_scroll_region'.
17050 (turn_on_insert): Rename to `tty_turn_on_insert'.
17051 (turn_off_insert): Rename to `tty_turn_off_insert'.
17052 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
17053 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
17054 (toggle_highligh): Rename to `tty_toggle_highlight'.
17055 (background_highlight): Rename to `tty_background_highlight'.
17056 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
17057 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
17058 (tty_set_scroll_region, tty_background_highlight)
17059 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
17060 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
17061 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
17062 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
17063 Add static modifier.
17064 (tty_reset_terminal_modes, tty_set_terminal_window)
17065 (tty_set_scroll_region, tty_background_highlight)
17066 (tty_highlight_if_desired, tty_cursor_to)
17067 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
17068 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
17069 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
17070 renames.
17071
170722007-08-28 Jan Djärv <jan.h.d@swipnet.se>
17073
17074 * keyboard.c: Qrtl is new.
17075 (parse_tool_bar_item): Handle :rtl keyword.
17076 (syms_of_keyboard): Intern :rtl keyword.
17077
17078 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
17079
17080 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
17081 so no Lisp code is executed.
17082 (file_for_image, find_rtl_image): New functions.
17083 (xg_get_image_for_pixmap): Use file_for_image.
17084 (update_frame_tool_bar): If direction is RTL, use RTL image if
17085 defined. Use Gtk stock images if defined.
17086
170872007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17088
17089 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
17090 for nonexistent or zero-width glyph in composition glyph.
17091
170922007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
17093
17094 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
17095
17096 * xdisp.c (Finvisible_p): New function.
17097 (syms_of_xdisp): defsubr it.
17098
170992007-08-24 Juanma Barranquero <lekktu@gmail.com>
17100
17101 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
17102 Doc fixes.
17103
171042007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17105
17106 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
17107
171082007-08-24 Martin Rudalics <rudalics@gmx.at>
17109
17110 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
17111 whether decoding has modified buffer contents.
17112
171132007-08-24 Jason Rumney <jasonr@gnu.org>
17114
17115 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
17116 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
17117 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
17118 (init_svg_functions) [HAVE_NTGUI]: New function.
17119 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
17120 (svg_load_image): Use them.
17121 (svg_load_image) [HAVE_NTGUI]: Implement background.
17122
171232007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17124
17125 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
17126 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
17127 (LIBX): Remove @RSVG_LIBS@.
17128 (LIBES): Add $(RSVG_LIBS).
17129
17130 * image.c (svg_load_image): Blend with specified background if exists.
17131 Use IMAGE_BACKGROUND. Add Mac OS Support.
17132
17133 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
17134 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
17135 Remove macros.
17136 [MAC_OSX] (socket_callback): Do nothing.
17137 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
17138 ReceiveNextEvent.
17139 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
17140 socket_callback.
17141 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
17142
171432007-08-22 Glenn Morris <rgm@gnu.org>
17144
17145 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
17146
171472007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
17148
17149 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
17150
17151 * image.c: Add support for SVG images. Some additional comments
17152 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
17153 (svg_image_p): New function to test for SVG image.
17154 (svg_load): New function to load SVG image.
17155 (svg_load_image): New function, helper for svg_load.
17156 (Qsvg): New Lisp_object.
17157 (svg_keyword_index): New enum.
17158 (svg_format): New static `image_keyword' struct.
17159 (svg_type): New static `image_type' struct.
17160 (librsvg/rsvg.h): Include it.
17161
171622007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
17163
17164 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
17165
171662007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
17167
17168 * lread.c (Qold_style_backquotes): New var.
17169 (syms_of_lread): Init and staticpro it.
17170 (load_warn_old_style_backquotes): New fun.
17171 (Fload): Use them to warn about old style backquotes.
17172 (end_of_file_error, Fload): Remove unused vars.
17173
17174 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
17175
17176 * lread.c (Vold_style_backquotes): New var.
17177 (syms_of_lread): Init and export it to Elisp.
17178 (read1): Set it when we find an old-style (back)quote.
17179
171802007-08-22 Jason Rumney <jasonr@gnu.org>
17181
17182 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
17183
171842007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
17185
17186 * puresize.h (BASE_PURESIZE): Increase to 1140000.
17187
171882007-08-19 Richard Stallman <rms@gnu.org>
17189
17190 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
17191
171922007-08-19 Andreas Schwab <schwab@suse.de>
17193
17194 * alloc.c (pure): Round PURESIZE up.
17195
171962007-08-17 Jan Djärv <jan.h.d@swipnet.se>
17197
17198 * xterm.c (handle_one_xevent): Remove check that mouse click is in
17199 active frame.
17200
172012007-08-16 Richard Stallman <rms@gnu.org>
17202
17203 * eval.c (Fcommandp): Add parens to clarify.
17204
17205 * minibuf.c (Fall_completions): Use enum for type of table.
17206
17207 * emacs.c (USAGE2): Improve text.
17208
172092007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
17210
17211 * term.c (tty_default_color_capabilities): Declare static
17212 variables in file scope, to avoid HPUX compiler problem.
17213
172142007-08-13 Jan Djärv <jan.h.d@swipnet.se>
17215
17216 * gtkutil.c (update_frame_tool_bar): Use -1 as index
17217 to gtk_toolbar_insert.
17218
172192007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
17220
17221 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
17222
17223 * insdel.c (reset_var_on_error): New fun.
17224 (signal_before_change, signal_after_change):
17225 Use it to reset (after|before)-change-functions to nil in case of error.
17226 Bind inhibit-modification-hooks to t.
17227 Don't bind (after|before)-change-functions to nil while they run.
17228
172292007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17230
17231 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
17232 filling pixmap with stippled background.
17233
172342007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17235
17236 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
17237 Don't use invisible frame as parent window for repositioning.
17238
172392007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
17240
17241 * print.c (new_backquote_output): Rename from old_backquote_output.
17242 (print): Inverse its logic (according to its name) so as to match the
17243 behavior of new_backquote_flag in lread.c.
17244
172452007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17246
17247 * gmalloc.c (posix_memalign): New function.
17248
17249 * macterm.c (frame_highlight, frame_unhighlight): Don't call
17250 ActivateControl/DeactivateControl here.
17251 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
17252 frame-notice-user-settings is non-nil.
17253 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
17254 for kEventParamFMFontStyle.
17255 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
17256 mac_pass_command_to_system and mac_pass_control_to_system here.
17257 (XTread_socket): Call ActivateControl/DeactivateControl here.
17258 (XTread_socket) [TARGET_API_MAC_CARBON]:
17259 Check mac_pass_command_to_system and mac_pass_control_to_system here.
17260 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
17261 for window repositioning.
17262
172632007-08-08 Glenn Morris <rgm@gnu.org>
17264
17265 * Replace `iff' in doc-strings and comments.
17266
172672007-08-07 Chong Yidong <cyd@stupidchicken.com>
17268
17269 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
17270
172712007-08-07 Martin Rudalics <rudalics@gmx.at>
17272
17273 * fileio.c (Finsert_file_contents): Run format-decode and
17274 after_insert_file_functions on entire buffer when REPLACE is
17275 non-nil and inhibit modification_hooks and point_motion_hooks.
17276 For consistency, run after_insert_file_functions iff something
17277 got inserted. Move signal_after_change and update_compositions
17278 after code running after_insert_file_functions. Make sure that
17279 undo_list doesn't record intermediate steps of the decoding process.
17280
172812007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17282
17283 * emacs.c (main)
17284 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
17285 Call malloc_enable_thread on interactive startup.
17286
17287 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
17288 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
17289 [USE_PTHREAD]: Conditionalize with it.
17290 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
17291 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
17292 New functions.
17293
172942007-08-06 Chong Yidong <cyd@stupidchicken.com>
17295
17296 * xdisp.c (redisplay_window): When restoring original buffer
17297 position, make sure it is still valid.
17298
17299 * image.c (png_load): Ignore png-supplied background color.
17300
173012007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17302
17303 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
17304 Use kCFAbsoluteTimeIntervalSince1970.
17305
17306 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
17307 New variable.
17308 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
17309 event loop should be quit.
17310 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
17311 Quit dialog event loop if quit_dialog_event_loop is set.
17312
17313 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
17314 (Selection): New typedef. Use instead of ScrapRef.
17315 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
17316 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
17317 (mac_clear_selection): Rename from clear_scrap.
17318 (get_flavor_type_from_symbol): New argument SEL and subsume function of
17319 scrap_has_target_type. All uses changed.
17320 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
17321 (mac_selection_has_target_p): New functions.
17322 (mac_put_selection_value): Rename from put_scrap_string.
17323 (mac_get_selection_value): Rename from get_scrap_string.
17324 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
17325 (put_scrap_private_timestamp, scrap_has_target_type)
17326 (get_scrap_private_timestamp): Remove functions.
17327 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
17328 (x_own_selection, x_get_local_selection):
17329 Use mac_valid_selection_value_p.
17330 (x_own_selection): Don't use put_scrap_private_timestamp.
17331 Record OWNERSHIP-INFO into Vselection_alist instead.
17332 (x_get_local_selection): Don't check type if request is local.
17333 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
17334 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
17335
173362007-08-04 Jan Djärv <jan.h.d@swipnet.se>
17337
17338 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
17339 add comment explaining why.
17340
173412007-08-03 Richard Stallman <rms@gnu.org>
17342
17343 * fileio.c (Fvisited_file_modtime): Use make_time.
17344
173452007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
17346
17347 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
17348 build.
17349
173502007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
17351
17352 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
17353
173542007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
17355
17356 * puresize.h (BASE_PURESIZE): Increase to 1130000.
17357
173582007-07-30 Richard Stallman <rms@gnu.org>
17359
17360 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
17361
173622007-07-29 Jan Djärv <jan.h.d@swipnet.se>
17363
17364 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
17365
173662007-07-28 Nick Roberts <nickrob@snap.net.nz>
17367
17368 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
17369 remote default-directory.
17370
17371 * buffer.c (mode-line-format): Update doc string.
17372
173732007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17374
17375 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
17376 scroll bar gap.
17377 (x_scroll_bar_create): Set bar->fringe_extended_p.
17378 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
17379 on frame edge. Check fringe background extension. Don't clear
17380 extended fringe background area.
17381
17382 * w32term.h (struct scroll_bar): New member fringe_extended_p.
17383 (w32_fill_area): Enclose multiple statements with do ... while (0).
17384
17385 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
17386 Extend fringe background to scroll bar gap.
17387 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
17388 Set bar->fringe_extended_p.
17389 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
17390 Put leftmost/rightmost scroll bars on frame edge. Check fringe
17391 background extension. Don't clear extended fringe background area.
17392
17393 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
17394 New member fringe_extended_p.
17395
173962007-07-25 Glenn Morris <rgm@gnu.org>
17397
17398 * Relicense all FSF files to GPLv3 or later.
17399
17400 * COPYING: Switch to GPLv3.
17401
174022007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
17403
17404 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
17405
17406 * data.c (Finteractive_form): Check for the presence of an
17407 `interactive-form' symbol property more thoroughly.
17408
17409 * data.c (Finteractive_form): Use an `interactive-form' property if
17410 present, analogous to the function-documentation property.
17411
174122007-07-24 Jason Rumney <jasonr@gnu.org>
17413
17414 * w32fns.c (x_real_positions): Get real position from OS instead of
17415 calculating it.
17416
174172007-07-23 Jason Rumney <jasonr@gnu.org>
17418
17419 * filelock.c (current_lock_owner): Allow for @ sign in username.
17420
174212007-07-22 Nick Roberts <nickrob@snap.net.nz>
17422
17423 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
17424 remote default-directory.
17425
17426 * buffer.c (mode-line-format): Describe above case in doc string.
17427
174282007-07-20 Eli Zaretskii <eliz@gnu.org>
17429
17430 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
17431 Define if not defined.
17432
174332007-07-18 Jason Rumney <jasonr@gnu.org>
17434
17435 * w32proc.c (w32_executable_type): Handle 64 bit executables.
17436
174372007-07-18 Richard Stallman <rms@gnu.org>
17438
17439 * data.c (Fsetq_default): Doc fix.
17440
17441 * eval.c (Fsetq): Doc fix.
17442
174432007-07-18 Juanma Barranquero <lekktu@gmail.com>
17444
17445 * coding.c (Ffind_operation_coding_system):
17446 * eval.c (For, Fand): Doc fixes.
17447 Reported by Johan Bockgård.
17448
174492007-07-18 Jan Djärv <jan.h.d@swipnet.se>
17450
17451 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
17452
17453 * xterm.h: Declare x_ewmh_activate_frame.
17454
17455 * xterm.c (x_ewmh_activate_frame): New function.
17456 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
17457
174582007-07-17 Martin Rudalics <rudalics@gmx.at>
17459
17460 * window.c (Fdisplay_buffer): If largest or LRU window is the
17461 only window, split it even if it is not eligible for splitting.
17462 This restores the original behavior broken by the 2007-07-15
17463 change.
17464
174652007-07-17 Glenn Morris <rgm@gnu.org>
17466
17467 * abbrev.c (abbrev_check_chars): New function.
17468 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
17469 Call abbrev_check_chars to check abbrev characters are word
17470 constituents. Doc fix.
17471
174722007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
17473
17474 * process.c (Fstart_process, Fmake_network_process)
17475 (read_process_output): Fix up last changes.
17476
174772007-07-16 Eli Zaretskii <eliz@gnu.org>
17478
17479 * makefile.w32-in (clean): Don't delete *~.
17480
174812007-07-16 Andreas Schwab <schwab@suse.de>
17482
17483 * window.c (Fdisplay_buffer): Use NILP.
17484 (Fset_window_scroll_bars): Likewise.
17485
174862007-07-15 Martin Rudalics <rudalics@gmx.at>
17487
17488 * window.c (window_min_size_2): New function.
17489 (window_min_size_1, size_window, Fdisplay_buffer)
17490 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
17491 windows without mode- or header-lines when window-min-height is
17492 too small.
17493 (size_window): Reset nodelete_p after testing it, following an
17494 earlier note by Kim F. Storm.
17495 (display_buffer): Do not set split_height_threshold to twice the
17496 value of window_min_height to avoid changing the value of a
17497 customizable variable. Rather explicitly check whether the
17498 height of the window that shall be splitted is at least as large
17499 as split_height_threshold.
17500 (Fwindow_full_width_p): New defun.
17501 (syms_of_window): Defsubr it.
17502
17503 * window.h: Add EXFUN for Fwindow_full_width_p.
17504
175052007-07-14 Jason Rumney <jasonr@gnu.org>
17506
17507 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
17508
175092007-07-14 Richard Stallman <rms@gnu.org>
17510
17511 * eval.c (maybe_call_debugger): New function.
17512 (find_handler_clause): Use maybe_call_debugger.
17513 Call it when the handler says `debug'.
17514 Eliminate DEBUGGER_VALUE_PTR.
17515 (Fsignal): Eliminate debugger_value.
17516 (Qdebug): New variable.
17517 (syms_of_eval): Initialize it.
17518
175192007-07-14 Juanma Barranquero <lekktu@gmail.com>
17520
17521 * eval.c (Fprogn):
17522 * keyboard.c (Ftrack_mouse):
17523 * print.c (Fwith_output_to_temp_buffer):
17524 * window.c (Fsave_window_excursion): Doc fix.
17525
175262007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
17527
17528 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
17529
175302007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
17531
17532 * process.h (struct Lisp_Process): Turn slots infd, outfd,
17533 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
17534 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
17535 read_output_delay, and read_output_skip from Lisp_Objects to ints.
17536 Remove unused encoding_carryover.
17537 * process.c: Adjust all functions accordingly.
17538
175392007-07-12 Richard Stallman <rms@gnu.org>
17540
17541 * term.c: Include unistd.h only if HAVE_UNISTD_H.
17542
175432007-07-11 Jason Rumney <jasonr@gnu.org>
17544
17545 * makefile.w32-in (LIBS): Include OLE32.
17546
17547 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
17548 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
17549
175502007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
17551
17552 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
17553 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
17554 from a Lisp_Object into a bare pointer.
17555 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
17556 Adjust the code correspondingly.
17557
17558 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
17559
17560 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
17561 (term_show_mouse_face): Remove unused var `j'.
17562 (handle_one_term_event): Remove unused vars `i' and `j'.
17563 Don't cast return value of ttyname since it's not necessary.
17564
175652007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
17566
17567 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
17568 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
17569
17570 * fns.c (map_char_table): Use an array of int for `indices' rather than
17571 an array of Lisp_Objects (which are only ever integers anyway).
17572 (Fmap_char_table): Update caller.
17573 * lisp.h: Update prototype.
17574 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
17575 * fontset.c (Ffontset_info):
17576 * casetab.c (set_case_table): Update callers.
17577
17578 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
17579
17580 * keymap.c (struct accessible_keymaps_data)
17581 (struct where_is_internal_data): New structures.
17582 (accessible_keymaps_1, where_is_internal_1): Use them to change
17583 interface to adhere to the one used by map_keymap.
17584 (Faccessible_keymaps, where_is_internal): Use map_keymap.
17585 (accessible_keymaps_char_table, where_is_internal_2): Remove.
17586
17587 * keymap.h (map_keymap_function_t): More informative prototype.
17588
175892007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
17590
17591 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
17592 (looking_at_1): Don't change search_regs and last_thing_searched
17593 if `inhibit-changing-match-data' is non-nil.
17594 (string_match_1, search_buffer, set_search_regs): Likewise.
17595 (syms_of_search): Add Lisp level definition for
17596 `inhibit-changing-match-data' and set it to nil.
17597 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
17598 start and end of the match, instead of using values in search_regs.
17599
176002007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
17601
17602 * minibuf.c (Fcompleting_read): New value `confirm-only'
17603 for `require-match'.
17604
176052007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
17606
17607 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
17608 part of the 2007-06-27 change to syms_of_fileio.
17609
176102007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17611
17612 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
17613 Check WINDOWP before using XWINDOW. Consolidate return statements.
17614
176152007-06-27 Richard Stallman <rms@gnu.org>
17616
17617 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
17618
176192007-06-27 Juanma Barranquero <lekktu@gmail.com>
17620
17621 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
17622
176232007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17624
17625 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
17626 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
17627 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
17628 (_free_internal, memalign): Use them.
17629 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
17630 Initialize to PTHREAD_MUTEX_INITIALIZER.
17631 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
17632 (morecore_nolock): Rename from morecore. All uses changed.
17633 Use only nolock versions of internal allocation functions.
17634 (_malloc_internal_nolock, _realloc_internal_nolock)
17635 (_free_internal_nolock): New functions created from
17636 _malloc_internal, _realloc_internal, and _free_internal.
17637 (_malloc_internal, _realloc_internal, _free_internal): Use them.
17638 Copy hook value to automatic variable before its use.
17639 (memalign): Copy hook value to automatic variable before its use.
17640
176412007-06-26 Kenichi Handa <handa@m17n.org>
17642
17643 * coding.c (Ffind_operation_coding_system): Docstring improved.
17644 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
17645
176462007-06-25 David Kastrup <dak@gnu.org>
17647
17648 * keymap.c (Fcurrent_active_maps): Add `position' argument.
17649 (Fwhere_is_internal): Adjust call to `current-active-maps' to
17650 cater for additional parameter.
17651
17652 * keymap.h: Adjust number of parameters to `current-active-maps'.
17653
17654 * doc.c (Fsubstitute_command_keys): Adjust call of
17655 `current-active-maps'.
17656
176572007-06-25 David Kastrup <dak@gnu.org>
17658
17659 * callint.c (Fcall_interactively): Make the parsing of interactive
17660 specs somewhat more readable.
17661
176622007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17663
17664 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
17665 to scroll bar gap also when bitmap fills fringe. Draw only foreground
17666 if extended background has already been filled.
17667
176682007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17669
17670 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
17671 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
17672
17673 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
17674 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
17675 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
17676 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
17677 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
17678 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
17679 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
17680 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
17681 Run timers during dialog popup.
17682 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
17683
176842007-06-21 Jason Rumney <jasonr@gnu.org>
17685
17686 * image.c (convert_mono_to_color_image): Swap fore and background.
17687
176882007-06-20 Jason Rumney <jasonr@gnu.org>
17689
17690 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
17691 (w32_free_bdf_font): Unmap memory not handle.
17692
176932007-06-20 Sam Steingold <sds@gnu.org>
17694
17695 * gmalloc.c (__morecore): Fix the declaration to comply with the
17696 definition.
17697
176982007-06-20 Juanma Barranquero <lekktu@gmail.com>
17699
17700 * w32term.c (w32_delete_display): Remove leftover declaration.
17701 (w32_define_cursor, w32_initialize): Make static.
17702
17703 * w32.c (_wsa_errlist): Fix typo in error message.
17704 (init_environment): Ignore any environment variable from the
17705 registry having a null value.
17706
177072007-06-20 Glenn Morris <rgm@gnu.org>
17708
17709 * Makefile.in (LIBGIF): Default to -lgif.
17710
177112007-06-17 Jason Rumney <jasonr@gnu.org>
17712
17713 * w32menu.c (add_menu_item): Don't use multibyte string functions on
17714 unicode strings.
17715
177162007-06-16 Juanma Barranquero <lekktu@gmail.com>
17717
17718 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
17719 Fix typo in docstring.
17720
177212007-06-16 Eli Zaretskii <eliz@gnu.org>
17722
17723 * w32menu.c (add_menu_item): Escape `&' characters in menu items
17724 and their keybindings.
17725
177262007-06-15 Chong Yidong <cyd@stupidchicken.com>
17727
17728 * composite.c (update_compositions): Fix last fix.
17729
177302007-06-14 Jason Rumney <jasonr@gnu.org>
17731
17732 * w32.c (get_process_times_fn): New function pointer.
17733 (globals_of_w32): Intialize it if present in kernel32.dll.
17734 (w32_get_internal_run_time): New function.
17735
17736 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
17737
177382007-06-14 Kenichi Handa <handa@etlken.m17n.org>
17739
17740 * composite.c (update_compositions): Check the validness of
17741 compositions.
17742
177432007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17744
17745 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
17746 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
17747
17748 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
17749 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
17750
17751 * macgui.h (USE_MAC_TOOLBAR): New define.
17752
17753 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
17754 Return immediately unless popup is activated.
17755
17756 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
17757 background to scroll bar gap.
17758 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
17759 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
17760 scroll bars on frame edge. Check fringe background extension.
17761 Don't clear extended fringe background area.
17762 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
17763 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
17764 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
17765 [USE_MAC_TOOLBAR]: New macros.
17766 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
17767 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
17768 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
17769 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
17770 [USE_MAC_TOOLBAR]: New functions.
17771 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
17772 manually if previous repositioning has failed.
17773 (mac_handle_keyboard_event): Use precomputed event kind.
17774 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
17775 as tool bar item click. Handle mouse movement over tool bar items.
17776
17777 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
17778 toolbar_win_gravity.
17779 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
17780 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
17781 Add externs.
17782
17783 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
17784 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
17785
177862007-06-14 Chong Yidong <cyd@stupidchicken.com>
17787
17788 * image.c (search_image_cache): Remove unused variable.
17789
177902007-06-13 Chong Yidong <cyd@stupidchicken.com>
17791
17792 * xfns.c, xmenu.c: Link to xaw3d if available.
17793
177942007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17795
17796 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
17797 frame_foreground and frame_background.
17798
17799 * image.c (lookup_image): Save frame foreground and background colors.
17800 (search_image_cache): Check if saved and current frame colors match.
17801
178022007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
17803
17804 * regex.c (regex_compile): Remove the `regnum' counter.
17805 Use bufp->re_nsub instead. Add support for \(?N:RE\).
17806
178072007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
17808
17809 * term.c: Include intervals.h to declare Fget_text_property.
17810
178112007-06-10 Jason Rumney <jasonr@gnu.org>
17812
17813 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
17814
178152007-06-08 Juanma Barranquero <lekktu@gmail.com>
17816
17817 * callint.c (Fcall_interactively):
17818 * editfns.c (Fdelete_and_extract_region):
17819 * fileio.c (Fread_file_name):
17820 * fns.c (Fmapconcat):
17821 * keyboard.c (cmd_error_internal):
17822 * keymap.c (Fkey_description):
17823 * lread.c (openp):
17824 * minibuf.c (read_minibuf):
17825 * search.c (wordify):
17826 * sunfns.c (sel_read):
17827 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
17828 * xfns.c (x_default_scroll_bar_color_parameter):
17829 * xmenu.c (menu_help_callback):
17830 * xselect.c (Fx_get_atom_name):
17831 * xterm.c (x_term_init): Use empty_unibyte_string.
17832
178332007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
17834
17835 * alloc.c (init_strings): Initialize canonical empty strings.
17836 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
17837 canonical empty string when the requested size is 0.
17838
17839 * emacs.c (empty_unibyte_string): Rename from empty_string.
17840 (empty_multibyte_string): New canonical empty string.
17841 (syms_of_emacs): Don't initialize empty_string.
17842
17843 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
17844 string, if appropriate.
17845 (empty_unibyte_string, empty_multibyte_string): New externs.
17846 (empty_string): Remove extern.
17847
17848 * lread.c (syms_of_lread): Use empty_unibyte_string.
17849
178502007-06-07 Jason Rumney <jasonr@gnu.org>
17851
17852 * s/ms-w32.h: Don't define HAVE_TZNAME.
17853
17854 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
17855
178562007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17857
17858 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
17859
17860 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
17861 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
17862
17863 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
17864 Don't call next handler.
17865 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
17866 Remove argument. Install handler to application.
17867 (set_frame_menubar): Don't change deep_p.
17868 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
17869 FRAME_OUTER_TO_INNER_DIFF_Y.
17870 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
17871 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
17872 [HAVE_DIALOGS]: New macros.
17873 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
17874 Use them.
17875 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
17876
17877 * macselect.c [MAC_OSX] (install_service_handler): Rename from
17878 init_service_handler. All callers changed. Return OSStatus value.
17879
17880 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
17881 All callers changed so as not to call SetPortWindowPort.
17882 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
17883 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
17884 mac_draw_string_common.
17885 (mac_draw_image_string_qd): Likewise.
17886 (mac_draw_string_common): Use them. Add INLINE.
17887 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
17888 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
17889 GetGlobalMouse.
17890 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
17891 and FRAME_OUTER_TO_INNER_DIFF_Y.
17892 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
17893 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
17894 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
17895 repositioning window to mac_handle_window_event.
17896 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
17897 saving window location to mac_handle_window_event
17898 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
17899 (install_menu_target_item_handler): Remove argument in extern.
17900 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
17901 Also accept command events.
17902 (do_keystroke): New function created from XTread_socket.
17903 (init_command_handler): Remove functions.
17904 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
17905 and save window location by kEventWindowShowing and kEventWindowHiding
17906 handlers here. Don't call next handler for window state change and
17907 focus events.
17908 (mac_handle_application_event, mac_handle_keyboard_event)
17909 [TARGET_API_MAC_CARBON]: New functions.
17910 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
17911 kEventWindowShowing and kEventWindowHiding events. Move installation
17912 of mouse, font, text input and menu target item handlers to
17913 install_application_handler.
17914 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
17915 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
17916 New function.
17917 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
17918 Register it.
17919 (XTread_socket) [TARGET_API_MAC_CARBON]:
17920 Consolidate SendEventToEventTarget calls.
17921 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
17922 Move application activation handler to mac_handle_application_event.
17923 Move keyboard handler to mac_handle_keyboard_event.
17924 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
17925 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
17926 init_command_handler. Call install_application_handler.
17927
17928 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
17929 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
17930
179312007-06-07 Glenn Morris <rgm@gnu.org>
17932
17933 * emacs.c (main): Use `emacs-copyright' in --version output.
17934
179352007-06-06 Chong Yidong <cyd@stupidchicken.com>
17936
17937 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
17938
179392007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17940
17941 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
17942
17943 * macgui.h: Replace WindowPtr with WindowRef.
17944
17945 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
17946 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
17947 Replace ControlHandle with ControlRef.
17948 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
17949
17950 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
17951 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
17952 Replace ControlHandle with ControlRef.
17953 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
17954 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
17955
17956 * macterm.h (struct scroll_bar): Rename member control_handle_low
17957 and control_handle_high to control_ref_low and control_ref_high.
17958 All uses changed.
17959 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
17960 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
17961 respectively. All uses changed.
17962 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
17963 (install_window_handler, remove_window_handler): Replace WindowPtr
17964 with WindowRef in externs.
17965
179662007-06-05 Juanma Barranquero <lekktu@gmail.com>
17967
17968 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
17969
179702007-06-03 Nick Roberts <nickrob@snap.net.nz>
17971
17972 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
17973
17974 * frame.c (Fmouse_position, Fmouse_pixel_position):
17975 Condition on HAVE_GPM too.
17976
17977 * term.c (term_mouse_highlight): Remove unused variables.
17978 (Fterm_open_connection): Set gpm_zerobased to 1.
17979 (term_mouse_movement, term_mouse_click, handle_one_term_event):
17980 Use zero based co-ordinates.
17981 (handle_one_term_event): Report a drag as mouse movement too.
17982
17983 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
17984
179852007-06-03 Chong Yidong <cyd@stupidchicken.com>
17986
17987 * image.c (search_image_cache): New function. Require background
17988 color match if background color is unspecified in the image spec.
17989 (uncache_image, lookup_image): Use it.
17990
179912007-06-01 Juanma Barranquero <lekktu@gmail.com>
17992
17993 * window.c (Fshrink_window): Reflow docstring.
17994
179952007-06-02 Chong Yidong <cyd@stupidchicken.com>
17996
17997 * Version 22.1 released.
17998
179992007-06-01 Richard Stallman <rms@gnu.org>
18000
18001 * xfns.c (x_encode_text): Add GCPRO.
18002
180032007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18004
18005 * xfns.c (x_set_name_internal): Save encoded name before
18006 x_encode_text in case string data is relocated.
18007
180082007-05-31 Richard Stallman <rms@gnu.org>
18009
18010 * buffer.c (syms_of_buffer): Doc fix.
18011
180122007-05-30 Nick Roberts <nickrob@snap.net.nz>
18013
18014 * sysdep.c (init_sys_modes): Add rather than replace with
18015 O_NONBLOCK.
18016
18017 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
18018 term_mouse_moveto.
18019
18020 * termhooks.h (term_mouse_moveto): New extern.
18021
18022 * term.c (mouse_face_window): Rename...
18023 (Qmouse_face_window): ...to this.
18024 (term_show_mouse_face, term_clear_mouse_face)
18025 (term_mouse_highlight): Use Qmouse_face_window.
18026 (term_mouse_moveto): New function.
18027 (term_mouse_position): Make it work.
18028 (syms_of_term): Uncomment assignment to mouse_position_hook.
18029 Staticpro Qmouse_face_window.
18030
180312007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18032
18033 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
18034 around current_column call.
18035
180362007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
18037
18038 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
18039 * xdisp.c (next_element_from_buffer):
18040 * window.c (delete_window):
18041 * term.c (term_mouse_highlight):
18042 * msdos.c (getdefdir):
18043 * macterm.c (mac_create_bitmap_from_bitmap_data)
18044 (init_font_name_table):
18045 * fns.c (Fsxhash):
18046 * data.c (Fmake_local_variable):
18047 * ccl.c (ccl_driver): Likewise.
18048
180492007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18050
18051 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
18052 Call mac_wakeup_from_rne on window size change.
18053
180542007-05-25 Chong Yidong <cyd@stupidchicken.com>
18055
18056 * image.c (uncache_image): Fix typo.
18057
180582007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
18059
18060 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
18061
180622007-05-22 Richard Stallman <rms@gnu.org>
18063
18064 * xterm.c (x_connection_closed): Remove NO_RETURN.
18065
180662007-05-22 Martin Rudalics <rudalics@gmx.at>
18067
18068 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
18069
180702007-05-21 Chong Yidong <cyd@stupidchicken.com>
18071
18072 * image.c (uncache_image): New function.
18073 (Fimage_refresh): New function.
18074
180752007-05-20 Jan Djärv <jan.h.d@swipnet.se>
18076
18077 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
18078
180792007-05-20 Nick Roberts <nickrob@snap.net.nz>
18080
18081 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
18082 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
18083
180842007-05-20 Nick Roberts <nickrob@snap.net.nz>
18085
18086 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
18087 conditional on [HAVE_GPM_H].
18088
180892007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
18090
18091 * syntax.c (skip_chars): Update syntax-table only after we checked that
18092 the new location is valid.
18093
180942007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18095
18096 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
18097 mac_get_window_bounds.
18098
180992007-05-20 Nick Roberts <nickrob@snap.net.nz>
18100
18101 * Makefile.in (LIBGPM): Allow it to be set from configure.
18102 If set then link Emacs with it.
18103
18104 * config.in: Regenerate.
18105
18106 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
18107 New externs.
18108
18109 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
18110 Include gpm.h.
18111 (handle_one_term_event, term_gpm): New externs.
18112
18113 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
18114 and allow it to be interrupted by SIGIO.
18115
18116 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
18117 (wait_reading_process_output): Wait on gpm_fd too.
18118 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
18119 (add_gpm_wait_descriptor_called_flag): New variable.
18120 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
18121
18122 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
18123 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
18124 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
18125 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
18126 (make_lispy_event): Add case GPM_CLICK_EVENT.
18127 (read_avail_input): Handle mouse input.
18128
18129 * term.c (write_glyphs_with_face): New function.
18130 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
18131 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
18132 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
18133 (mouse_face_face_id, term_gpm, pos_x, pos_y)
18134 (last_mouse_x, last_mouse_y): New variables.
18135 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
18136 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
18137 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
18138 (Fterm_close_connection): New functions.
18139 (term_init): Initialise mouse_face_window.
18140
181412007-05-19 Chong Yidong <cyd@stupidchicken.com>
18142
18143 * xdisp.c (redisplay_window): If first window line is a
18144 continuation line, recompute the new window start instead of
18145 recentering.
18146
181472007-05-18 Glenn Morris <rgm@gnu.org>
18148
18149 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
18150 Suggested by Alfred M. Szmidt <ams@gnu.org>.
18151
181522007-05-17 Glenn Morris <rgm@gnu.org>
18153
18154 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
18155
181562007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18157
18158 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
18159 dead key repeat and up events.
18160
181612007-05-14 Chong Yidong <cyd@stupidchicken.com>
18162
18163 * image.c (pbm_load): Check image size for monochrome pbm.
18164
181652007-05-13 Chong Yidong <cyd@stupidchicken.com>
18166
18167 * xterm.c (XTread_socket): Revert last change.
18168
181692007-05-12 Chong Yidong <cyd@stupidchicken.com>
18170
18171 * image.c (pbm_load): Correctly check image size for greyscale pbm.
18172
18173 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
18174
181752007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
18176
18177 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
18178 mixup (YAILOM).
18179
181802007-05-07 Andreas Schwab <schwab@suse.de>
18181
18182 * keymap.c (Flookup_key): Fix typo in last change.
18183
181842007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
18185
18186 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
18187 mapping for unibyte strings.
18188
181892007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18190
18191 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
18192 (Fx_popup_dialog) [MAC_OSX]: Likewise.
18193
181942007-04-29 Richard Stallman <rms@gnu.org>
18195
18196 * insdel.c (replace_range): For undo, record insertion first.
18197
181982007-04-29 Andreas Schwab <schwab@suse.de>
18199
18200 * lisp.h (VECSIZE): Use OFFSETOF.
18201
182022007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18203
18204 * xdisp.c (try_window_reusing_current_matrix): Fix number of
18205 disabled lines.
18206
182072007-04-28 Richard Stallman <rms@gnu.org>
18208
18209 * lread.c (read_escape): In a string, \s is always space.
18210
182112007-04-27 Jan Djärv <jan.h.d@swipnet.se>
18212
18213 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
18214
18215 * gtkutil.c (xg_update_menubar, create_menus): Create empty
18216 submenu for menu bar items.
18217
18218See ChangeLog.10 for earlier changes.
18219
18220;; Local Variables:
18221;; coding: utf-8
18222;; add-log-time-zone-rule: t
aac0c6e3
MR
18223;; End:
18224
76b6f707 18225 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
18226
18227 This file is part of GNU Emacs.
18228
18229 GNU Emacs is free software: you can redistribute it and/or modify
18230 it under the terms of the GNU General Public License as published by
18231 the Free Software Foundation, either version 3 of the License, or
18232 (at your option) any later version.
18233
18234 GNU Emacs is distributed in the hope that it will be useful,
18235 but WITHOUT ANY WARRANTY; without even the implied warranty of
18236 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18237 GNU General Public License for more details.
18238
18239 You should have received a copy of the GNU General Public License
18240 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
18241
18242;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40