(charset_ksc5601): New variable.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
d65859c3
DN
12009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2
3 * fileio.c (history_delete_duplicates): Remove unused declaration.
4
5 * callint.c (history_delete_duplicates): New declaration.
6 (Fcall_interactively): Remove command history duplicates when
7 history_delete_duplicates is true.
8
3ba010e5
EZ
92009-04-14 Eli Zaretskii <eliz@gnu.org>
10
11 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
12
06f19b91
KH
132009-04-14 Kenichi Handa <handa@m17n.org>
14
15 * font.c (Ffont_info): Fix docstring. Fix the second element of
16 the returned value (bug#2949).
17
2cce8bfc
CY
182009-04-14 Chong Yidong <cyd@stupidchicken.com>
19
20 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
21
d156542d
KH
222009-04-14 Kenichi Handa <handa@m17n.org>
23
24 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
25 encoding charset is ascii_compatible.
26
27 * charset.c (Fdefine_charset_internal): Make charset
28 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
29 code_offset is 0, and covers all ASCII characters.
30
86fa089e
SM
312009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
32
33 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
34 (ns_string_to_pasteboard_internal):
35 * nsmenu.m (process_dialog):
36 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
37 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
38 * lisp.h (Fx_load_color_file): Declare.
39
a8a3728b
KH
402009-04-13 Kenichi Handa <handa@m17n.org>
41
42 * font.c (font_delete_unmatched): Preserve the order of list
43 elements.
44 (font_select_entity): Suppress the code to optimize for the same
45 kind of fonts.
46 (font_load_for_lface): Get a font that supports at least ASCII
47 characters.
48
49 * ftfont.c (Qja, Qko): New variables.
50 (fc_charset_table): Delete uniquifier data for iso8859-1.
51 (ftfont_get_latin1_charset): New function.
52 (get_adstyle_property): New function.
53 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
54 bitmap fonts.
55 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
56 Delete iso-8859-1 range from the charset of fonts whose adstyle is
57 `ko' or `ja'.
58 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
59 (ftfont_get_charset): For iso8859-1, call
60 ftfont_get_latin1_charset.
61 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
62 property.
63 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
64 (syms_of_ftfont): DEFSYM Qja and Qko.
65
483670b5
KH
662009-04-09 Kenichi Handa <handa@m17n.org>
67
12b55765
KH
68 * charset.c (map_charset_chars): For a charset of `superset'
69 method, fix calculation of code range.
70
483670b5
KH
71 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
72 from the list of extra properties.
73 (font_clear_prop): Be sure to delete `:name' font property.
74
57d3b93b
KH
752009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
76
b4b2c2ca
YM
77 * dispnew.c (redraw_overlapping_rows): Fix detection of
78 overlapping for topmost and bottommost rows.
79
57d3b93b
KH
80 * ftfont.c (ftfont_text_extents): Fix calculation of
81 metrics->descent.
82
472c3609
JR
832009-04-06 Jason Rumney <jasonr@gnu.org>
84
85 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
86
ab193662
KH
872009-04-06 Kenichi Handa <handa@m17n.org>
88
89 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
90
91 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
92
0c26f026
KH
932009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
94
95 * ftfont.c (ftfont_open): Fix checking of the return value of
96 FT_Load_Char. Fix setting font->underline_thickness.
97
e173bbce
CY
982009-04-04 Chong Yidong <cyd@stupidchicken.com>
99
100 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
101 (Fterminal_parameters, Fterminal_parameter)
102 (Fset_terminal_parameter): In doc string, refer to terminal
103 objects rather than terminal ids.
104
693a2698
EZ
1052009-04-04 Eli Zaretskii <eliz@gnu.org>
106
107 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
108 ret_lim_data. (Bug#2867)
109
d5221487
CY
1102009-04-03 Chong Yidong <cyd@stupidchicken.com>
111
112 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
113 so they don't get wider than the window, matching 2006-01-23
114 change to the partner function in xdisp.c (Bug#2800).
115
223509a3
KH
1162009-04-03 Kenichi Handa <handa@m17n.org>
117
118 * print.c (print_object): Make each lowest sub_char_table start a
119 new line (Bug#2866).
120
74fcd0b1
KH
1212009-04-02 Kenichi Handa <handa@m17n.org>
122
123 * fontset.c (fontset_font): Record no-font when a fontset
124 explicitly tells not to try another font-specs.
125
c542407d
SM
1262009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
127
128 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
129
e3869731
KH
1302009-03-30 Kenichi Handa <handa@m17n.org>
131
d8d2f142
KH
132 * fontset.c (fontset_from_font): Specify only registry in a
133 font-spec for all characters supported by that registry.
134
e3869731
KH
135 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
136 even if HAVE_M17N_FLT is not defined.
137
5da5f805
CY
1382009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
139
140 * ftfont.c: Conditionalize prototyping and use of
141 ftfont_variation_glyphs.
142
ab226c50
SM
1432009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
144
9628fed7
SM
145 * frame.c (delete_frame): Work around compiler bug.
146
147 * editfns.c (general_insert_function): Adjust to insdel.c changes.
148 * insdel.c (prepare_to_modify_buffer, signal_before_change):
149 Some more EMACS_INT.
150 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
151
152 * xdisp.c (dump_glyph): Fix typo.
153
ae19ba7c
SM
154 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
155 (adjust_markers_gap_motion, adjust_markers_for_delete)
156 (adjust_markers_for_insert, adjust_point)
157 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
158 (make_gap, copy_text, count_size_as_multibyte, insert)
159 (insert_and_inherit, insert_before_markers)
160 (insert_before_markers_and_inherit, insert_1)
161 (count_combining_before, count_combining_after, insert_1_both)
162 (insert_from_string, insert_from_string_before_markers)
163 (insert_from_string_1, insert_from_gap, insert_from_buffer)
164 (insert_from_buffer_1, adjust_after_replace)
165 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
166 (replace_range_2, del_range, del_range_1, del_range_byte)
167 (del_range_both, del_range_2, modify_region)
168 (prepare_to_modify_buffer, signal_before_change)
169 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
170 for buffer positions and sizes.
171 * lisp.h: Adjust prototypes accordingly.
172
173 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
174 (non_regular_inserted, non_regular_nbytes, read_non_regular)
175 (Finsert_file_contents): Use EMACS_INT for buffer positions.
176
ab226c50
SM
177 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
178
46dfb8fb
JD
1792009-03-27 Jan Djärv <jan.h.d@swipnet.se>
180
181 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
182 lines and columns so we keep the same pixel height and width.
183
184 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
185 the property _NET_WM_STATE has changed.
46dfb8fb
JD
186 (x_handle_net_wm_state): New function to update frame parameter
187 fullscreen.
188 (x_term_init): Initialize atoms for _NET_WM_STATE.
189
190 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
191
d347e494
SM
1922009-03-27 Kevin Ryde <user42@zip.com.au>
193
194 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
195 Gpm_GetEvent as an error that justifies closing the filedescriptor.
196 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
197 (Fgpm_mouse_stop): Pass that new parameter.
198 * termhooks.h (close_gpm): Adjust prototype.
199
84db11d6
SM
2002009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
201
c95a5008
SM
202 * lisp.h (Fx_focus_frame): Declare.
203
84db11d6
SM
204 * callint.c (Fcall_interactively): For '^' just delegate the work to
205 handle-shift-selection.
206 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
207
0a1958d6
CY
2082009-03-24 Chong Yidong <cyd@stupidchicken.com>
209
0bfdff23
CY
210 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
211
0a1958d6
CY
212 * data.c (Qinteractive_form): New variable.
213 (Finteractive_form): Use it.
214
215 * eval.c (Fcommandp): Use Qinteractive_form.
216
58aec0d6
JR
2172009-03-24 Jason Rumney <jasonr@gnu.org>
218
219 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
220 Calculate total size precisely. Decode environment variables
221 before substituting. (Bug#38)
222
553dd618
KH
2232009-03-24 Kenichi Handa <handa@m17n.org>
224
225 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 226 encoding (Bug#2722).
553dd618 227
c39ea606
JD
2282009-03-23 Jan Djärv <jan.h.d@swipnet.se>
229
230 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
231 that gdpy is set.
232
bc9b2b5e
AM
2332009-03-22 Alan Mackenzie <acm@muc.de>
234
235 * callint.c (Finteractive): Clarify the doc string - even
236 promptless elements need \n separators.
237
9f995a76
JR
2382009-03-22 Jason Rumney <jasonr@gnu.org>
239
240 * w32term.c (syms_of_w32term): Doc fix for
241 x-use-underline-position-properties.
242
22749e9a
EZ
2432009-03-21 Eli Zaretskii <eliz@gnu.org>
244
245 * w32.c (getpwuid): Change argument type to unsigned.
246 (struct w32_id): Change type of `rid' member to unsigned.
247 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
248 argument ID to unsigned. All callers changed.
249 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
250
e00553bf
EZ
2512009-03-20 Eli Zaretskii <eliz@gnu.org>
252
253 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
254 negative, produce a float value.
255
256 * dired.c (make_uid, make_gid): New functions.
257 (Ffile_attributes): Use them to avoid negative UID and GID.
258
f761d6b6
JB
2592009-03-20 Juanma Barranquero <lekktu@gmail.com>
260
261 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
262 (syms_of_keyboard) <command-hook-internal, input-method-function>:
263 Fix typos in docstrings.
264
d507f8d7
KH
2652009-03-19 Kenichi Handa <handa@m17n.org>
266
267 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
268 changed, use font_load_for_lface to get a new font object.
269 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
270
271 * frame.c (x_set_font): Handle the case that ARG is a cons.
272
c68845e0
GM
2732009-03-19 Glenn Morris <rgm@gnu.org>
274
275 * fileio.c (Fsubstitute_in_file_name): Doc fix.
276
bfa49dd1
CY
2772009-03-19 Chong Yidong <cyd@stupidchicken.com>
278
279 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
280
8458d4c1
KH
2812009-03-19 Kenichi Handa <handa@m17n.org>
282
283 * charset.c (load_charset_map_from_file): When a mapfile can't be
284 loaded, signal an error.
285
78e7d1fe
EZ
2862009-03-18 Eli Zaretskii <eliz@gnu.org>
287
288 * dired.c (Ffile_attributes): Make sure UID and GID are always
289 positive, even if the value is too large for a positive EMACS_INT.
290 Doc fix.
291
292 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
293
5da9fdfa
YM
2942009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
295
296 * xmenu.c (xdialog_show): Move Fredisplay call ...
297 (Fx_popup_dialog): ... here.
298
7519c40d
SM
2992009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
300
301 * dired.c (file_name_completion): Disable the first optimization just
302 installed, since it is not implemented correctly.
303
2cd298e2
SM
3042009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
305
306 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 307 only if the entry can affect bestmatch.
2cd298e2
SM
308 Stop the search early, as Ftry_completion already does.
309
48d37adf
CY
3102009-03-17 Chong Yidong <cyd@stupidchicken.com>
311
e10c9c93 312 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 313
9286b16a
CY
3142009-03-15 Chong Yidong <cyd@stupidchicken.com>
315
316 * keyboard.c (parse_menu_item): Don't display remappings as menu
317 equivalent bindings (Bug#788).
318
f7b146dc
JR
3192009-03-15 Jason Rumney <jasonr@gnu.org>
320
321 * w32term.h (WM_EMACS_PAINT): New message.
322 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
323 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
324 before passing to lisp thread. (Bug#950)
325
f761d6b6 3262009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 327
d93f9575
CY
328 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
329 variable as it was never reset.
330 (ns_term_init): Remove initialization of Lisp-settable defaults
331 and ns_expand_space.
332 (-setPanelFromDefaultValues): Remove ns_expand_space.
333 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
334 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
335 i.e. no additional spacing, similar to Carbon port.
336
d93f9575
CY
337 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
338 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 339
305018ec
JD
3402009-03-14 Jan Djärv <jan.h.d@swipnet.se>
341
342 * sound.c (alsa_configure): Remove call to deprecated
343 snd_pcm_sw_params_set_xfer_align.
344
f761d6b6 3452009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
346
347 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
348 after clicking in a detached tool bar.
349 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
350
46e722a9
SM
3512009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
352
348db3dd
SM
353 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
354 int/Lisp_Object mixup).
46e722a9 355
a3d16f39
KH
3562009-03-13 Kenichi Handa <handa@m17n.org>
357
358 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 359 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
360 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
361 (set_fontset_font): Change ARG to a vector. Handle range_list in
362 ARG correctly.
363 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 364 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
365 the above change.
366 (fontset_from_font): Fix previous change.
fe24f56a 367 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
368 entry. If FONTSET is the default fontset, don't set the extra
369 slot of the returning char-table.
370
b066e6b6
JB
3712009-03-12 Juanma Barranquero <lekktu@gmail.com>
372
373 * nsfns.m (Fx_close_connection): Doc fix.
374 (Fns_do_applescript): Reflow docstring.
375 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
376 (Fx_display_pixel_width, Fx_display_pixel_height)
377 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
378 Fix typos in docstrings.
379 (Fns_set_alpha): Fix typos in error messages.
380
d472514e 3812009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 382
d472514e 383 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
384 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
385 were used for such events.
386
d472514e
JB
387 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
388 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 389
d472514e 390 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
391 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
392
fb930676
KH
3932009-03-11 Kenichi Handa <handa@m17n.org>
394
ff85581a
KH
395 * font.h (font_open_by_spec): Extern it.
396
c50b7e98
KH
397 * font.c (font_open_by_spec): New function.
398 (font_open_by_name): Use font_open_by_spec.
399
fb930676
KH
400 * frame.c (x_set_font): When ARG is a font-object, don't alter the
401 fontset of the frame.
402
403 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
404 modify the default font of frames that use this fontset.
405 (num_auto_fontsets): New variable.
406 (fontset_from_font): Use num_auto_fontsets to decide a fontset
407 name. Be sure to set FONTSET_ASCII to the correct font name.
408 (update_auto_fontset_alist): New function.
409
df4e8455
JB
4102009-03-11 Juanma Barranquero <lekktu@gmail.com>
411
412 * makefile.w32-in: Update dependencies.
413
0a375797
AR
4142009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
415
416 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
417
61313fa3
SM
4182009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
419
420 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
421
b55103fb
CY
4222009-03-10 Chong Yidong <cyd@stupidchicken.com>
423
424 * lread.c (Feval_buffer): Doc fix.
425
dde2559c
KH
4262009-03-09 Kenichi Handa <handa@m17n.org>
427
428 * charset.c (Qfile_name_handler_alist): Extern it.
429 (load_charset_map_from_file): Temporarily bind
430 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
431
df4e8455 4322009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 433
47f588bb
GM
434 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
435 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 436
4ddf94bd
AR
4372009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
438
4c9bdfc2
AR
439 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
440 (x_set_window_size): Change back to calculated method of setting
441 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
442 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
443 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
444
fe41ae9e
AR
445 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
446
4c9bdfc2
AR
447 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
448 accelerator in parens under GNUstep.
449
825d0875
KH
4502009-03-06 Kenichi Handa <handa@m17n.org>
451
452 These changes are to detect incorrect composition sequence without
f3b3be74 453 looking ahead the source. (Bug#2370)
825d0875
KH
454
455 * coding.h: Include "composite.h".
456 (enum compisition_state): New enum.
457 (struct compisition_status): New struct.
458 (struct iso_2022_spec): New member cmp_status.
459 (struct emacs_mule_spec): New struct.
460 (struct coding_system): New members ctext_extended_segment_len and
461 embedded_utf_8. Change the union member
462 spec.emacs_mule_full_support to spec.emacs_mule.
463
464 * coding.c (CODING_ISO_CMP_STATUS): New macro.
465 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 466 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
467 (ADD_COMPOSITION_DATA): New arg nbytes.
468 (emacs_mule_char): New arg cmp_status.
469 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
470 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
471 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
472 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
473 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
474 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
475 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
476 (EMACS_MULE_COMPOSITION_END): New macro.
477 (emacs_mule_finish_composition): New function.
478 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
479 (decode_coding_emacs_mule): Avoid long looking ahead while
480 handling composition.
481 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
482 (ENCODE_COMPOSITION_RULE): New macro.
483 (finish_composition): New function.
484 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
485 (DECODE_COMPOSITION_START): New implementation.
486 (DECODE_COMPOSITION_END): Likewise.
487 (STORE_COMPOSITION_RULE): New macro.
488 (decode_coding_iso_2022): Avoid long looking ahead while handling
489 composition, CTEXT extended segment, and embedded UTF-8.
490 (setup_coding_system): For a coding of type iso-2022, reset
491 CODING_ISO_EXTSEGMENT_LEN (coding) and
492 CODING_ISO_EMBEDDED_UTF_8 (coding).
493 (get_translation): Delete arguments last_block, from_nchars,
494 to_nchars. Callers changed.
495 (produce_chars): Don't modify charbuf. Adjusted for the change of
496 get_translation.
98a326f7 497 (produce_composition): Adjust for the new annotation sequence.
825d0875 498 (handle_composition_annotation): Likewise.
98a326f7 499 (consume_chars): Adjust for the change of get_translation.
825d0875 500
ccbc4452
AR
5012009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
502
4ddf94bd 503 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 504
988a7ddb
KH
5052009-03-05 Kenichi Handa <handa@m17n.org>
506
507 * font.c (font_select_entity): New function.
508 (font_find_for_lface): Use font_select_entity to select a font.
509
510 * fontset.c (fontset_find_font): If a font found without
a8a3728b 511 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
512 font with C restriction.
513
98a326f7 5142009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 515
be1bce46 516 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 517
10ea2b82
JR
5182009-03-04 Jason Rumney <jasonr@gnu.org>
519
2c93b248 520 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 521 characters that have already been read. (Bug#2569)
2c93b248 522
10ea2b82
JR
523 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
524 Log an error message if check_image_size failed.
525 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 526 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 527
71a0c011
EZ
5282009-03-02 Eli Zaretskii <eliz@gnu.org>
529
530 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
531 when decoding process output.
532
2f63bba8
RS
5332009-03-01 Richard M Stallman <rms@gnu.org>
534
535 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
536
537 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
538
0a9564cb
EZ
5392009-02-28 Eli Zaretskii <eliz@gnu.org>
540
541 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
542 (decode_coding_emacs_mule, decode_coding_iso_2022)
543 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
544 (decode_coding_raw_text, decode_coding_charset)
545 (setup_coding_system, decode_eol, decode_coding, consume_chars):
546 Honor inhibit-eol-conversion. (Bug #2186)
547
449148b3
JR
5482009-02-28 Jason Rumney <jasonr@gnu.org>
549
550 * coding.c (detect_coding_charset): If not checking latin extra,
551 fail on characters between 0x80 and 0xA0. (Bug#2354)
552
a4aee864
EZ
5532009-02-28 Eli Zaretskii <eliz@gnu.org>
554
555 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 556 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 557
d88bee5a
GM
5582009-02-27 Glenn Morris <rgm@gnu.org>
559
560 * callint.c (Finteractive): Doc fix.
561
a808f22d
KH
5622009-02-27 Kenichi Handa <handa@m17n.org>
563
564 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
565
caf8d60c
CY
5662009-02-27 Chong Yidong <cyd@stupidchicken.com>
567
568 * font.c (font_style_to_value): Set value for unknown symbols to
569 100 instead of 255.
b61137ea
CY
570 (weight_table, slant_table, width_table): Treat "unspecified" as
571 the default value.
caf8d60c 572
1a0de25c
JB
5732009-02-26 Juanma Barranquero <lekktu@gmail.com>
574
575 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
576
8fc45744
JB
5772009-02-25 Juanma Barranquero <lekktu@gmail.com>
578
107bd7d1
JB
579 * lread.c (Fload): Stop checking Vloads_in_progress and signal
580 error as soon as a recursive load is detected.
8fc45744 581
f097e223
AR
5822009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
583
584 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
585 before caching.
586
8810a12f
KH
5872009-02-24 Kenichi Handa <handa@m17n.org>
588
589 * fontset.c (fontset_find_font): Fix the condition for checking
590 unavailable font.
591
2c7d1565
GM
5922009-02-24 Glenn Morris <rgm@gnu.org>
593
594 * xfaces.c (Finternal_set_font_selection_order): Remove leading
595 whitespace that confuses documentation.
596
a20878b6
MB
5972009-02-23 Miles Bader <miles@gnu.org>
598
599 * process.c (Flist_system_processes, Fprocess_attributes)
600 (syms_of_process): Rename `system-process-attributes' to
601 `process-attributes'.
602
b3b58c01
AS
6032009-02-22 Andreas Schwab <schwab@linux-m68k.org>
604
1b3b981b
AS
605 * coding.h (struct coding_system): Make safe_charsets a pointer to
606 unsigned char.
607 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
608 being 255.
609 (SAFE_CHARSET_P): Likewise.
610 (setup_iso_safe_charsets): Properly setup safe_charsets.
611 (Fdefine_coding_system_internal): Likewise.
612 (setup_coding_system): Likewise. Remove unneeded casts.
613 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
614 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
615 unneeded casts.
616
b3b58c01
AS
617 * insdel.c (del_range_2): Don't modify gap contents when called
618 from decode_coding_object. (Bug#1809)
619
0b6f228c
CY
6202009-02-21 Chong Yidong <cyd@stupidchicken.com>
621
622 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
623 Qfont_object.
624 (Ftype_of): Recognize font objects.
625
626 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
627
628 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
629 moved to data.c.
630
52f8870b
AR
6312009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
632
633 * nsterm.m (x_make_frame_invisible): Unset async_visible,
634 async_iconified. Based on a patch by Christian Lynbech
635 <christian.lynbech@tieto.com>.
636 (EmacsView-windowDidMiniaturize:): Unset async_visible.
637
7087d5e9
GM
6382009-02-20 Glenn Morris <rgm@gnu.org>
639
640 * syntax.c (Fskip_chars_forward): Fix doc typo.
641
41d2ceef
CY
6422009-02-20 Chong Yidong <cyd@stupidchicken.com>
643
644 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
645
1a3b7ca6
CY
6462009-02-19 Chong Yidong <cyd@stupidchicken.com>
647
648 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
649
73cce38d
KH
6502009-02-19 Kenichi Handa <handa@m17n.org>
651
652 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 653 Don't overflow coding->carryover. (Bug#2370)
73cce38d 654
a51092ee
DN
6552009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
656
657 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
658
c423ecca
KH
6592009-02-18 Kenichi Handa <handa@m17n.org>
660
661 * font.c (font_check_otf_features): Fix handling of `nil' element.
662 (Ffont_spec): Describe :lang and :otf in the docstring.
663
4c1958f4
AS
6642009-02-16 Andreas Schwab <schwab@suse.de>
665
666 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
667 string.
668
5704f39a
KH
6692009-02-16 Kenichi Handa <handa@m17n.org>
670
671 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 672 (Bug#1723)
5704f39a 673
8f0085aa
CY
6742009-02-14 Chong Yidong <cyd@stupidchicken.com>
675
a057d86a 676 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
677
678 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
679 (handle_line_prefix): Suppress wrapping of wrap prefixes.
680
aff01dd9
EZ
6812009-02-14 Eli Zaretskii <eliz@gnu.org>
682
683 * msdos.c (MAX_SCREEN_BUF): New macro.
684 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
685 Encode the entire run of glyphs sharing the same face, instead of
686 doing that one glyph at a time (fixes a bug with displaying
687 double-size characters).
688
ba301db3
AR
6892009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
690
691 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
692
693 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
694 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 695 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
696
697 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 698 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 699
51d861de
SM
7002009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
701
702 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
703 invisible areas.
704
7fed8996
JR
7052009-02-12 Jason Rumney <jasonr@gnu.org>
706
631ea4fb
JR
707 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
708 (add_font_entity_to_list): Call check_face_name even when family
709 is unspecified.
710
cb4a3e42
JR
711 * w32term.c (x_display_pixel_height, x_display_pixel_width):
712 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 713 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 714
7fed8996 715 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 716 raster fonts. (Bug#2219)
7fed8996 717
895416e3
KH
7182009-02-12 Kenichi Handa <handa@m17n.org>
719
720 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
721 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
722 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 723 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
724 (find_automatic_composition): While looking forward and backward,
725 check static composition. Fix where to stop looking forward.
726 (composition_adjust_point): Fix checking of static composition.
727 (Fcomposition_get_gstring): Pay attention to
1dacf998 728 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
729
730 * lisp.h (fast_looking_at): Extern it.
731
732 * search.c (fast_looking_at): New function.
733
51d861de 734 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
735 <struct glyph>.u.cmp.to.
736 (append_composite_glyph): Likewise.
737
51d861de 738 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
739 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
740 composition.
51d861de 741 (append_composite_glyph): Adjust for the change of
895416e3
KH
742 <strcut glyph>.u.cmp.to.
743
8510724d
JB
7442009-02-11 Juanma Barranquero <lekktu@gmail.com>
745
746 * casetab.c (init_casetab_once):
747 * coding.c (ALLOC_CONVERSION_WORK_AREA):
748 * font.c (font_update_lface):
749 * fontset.c (Fnew_fontset):
750 * ftfont.c (ftfont_drive_otf):
751 * xfont.c (xfont_open):
752 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
753
294fa707
SM
7542009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
755
756 * fileio.c (Fwrite_region): !NILP -> CONSP.
757
b5bfebec
AS
7582009-02-10 Andreas Schwab <schwab@suse.de>
759
760 * process.c (send_process): Properly relocate pointer into data
adab88bd 761 when using encoded data. (Bug#2272)
b5bfebec 762
cb84a2be
KH
7632009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
764
765 * coding.c (detect_coding_charset): Fix previous change.
766
89e09428
JR
7672009-02-08 Jason Rumney <jasonr@gnu.org>
768
769 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 770 disappeared while hourglass was displayed. (Bug #2193)
89e09428 771
4470a277
AS
7722009-02-07 Andreas Schwab <schwab@suse.de>
773
774 * unexelf.c (unexec): Fix error message.
775
3175b12a
AR
7762009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
777
778 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 779 when modal window is active. (Bug #2152)
3175b12a
AR
780 (applicationShouldTerminate:): Remove now-unneeded while loop
781 around NSRunAlertPanel.
782
783 * nsmenu.m (popupSession): New file-global variable.
784 (pop_down_menu): End the popupSession before closing dialog.
785 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
786 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
787 don't query NSApp for events (just sleep instead).
788
8434d0b8
EZ
7892009-02-07 Eli Zaretskii <eliz@gnu.org>
790
51d861de
SM
791 * coding.c (syms_of_coding) <translation-table-for-input>:
792 Modify doc string to discourage use for character code unification.
8434d0b8 793
aa82edfd
CY
7942009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
795
796 * atimer.c (run_timers): Update pending_atimers.
797
2d283c7c
CY
7982009-02-06 Chong Yidong <cyd@stupidchicken.com>
799
eb306cab
CY
800 * image.c (svg_load_image): Fix last change.
801
2d283c7c
CY
802 * xfns.c (Fx_create_frame): Signal an error if no font is
803 found (Bug#2147).
804
4d8e170e
JB
8052009-02-05 Juanma Barranquero <lekktu@gmail.com>
806
807 * character.c (syms_of_character) <script-representative-chars>:
808 Fix typo in docstring.
809
c96169a0
AR
8102009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
811
812 * nsmenu.m (pop_down_menu): New function.
813 (ns_popup_dialog): Call it on unwind.
814 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
815 call timer_check() (Bug#2154).
816 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
817 handling_signal is set.
818 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
819
820 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G
821
822 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
823
824 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
825
51d861de
SM
826 * keyboard.c (poll_for_input_1, handle_async_input):
827 Set handling_signal under HAVE_NS.
c96169a0 828
aacd8ba1
GM
8292009-02-04 Glenn Morris <rgm@gnu.org>
830
831 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
832
4cb75c4b
KH
8332009-02-04 Kenichi Handa <handa@m17n.org>
834
835 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
836
837 * charset.c (Fchar_charset): New optional arg restriction.
838
839 * coding.h (coding_system_charset_list): Extern it.
840
841 * coding.c (coding_system_charset_list): New function.
842
843 * composite.c: Include coding.h and termhooks.h.
844 (composition_gstring_p): Fix for the terminal case.
845 (composition_gstring_width): Likewise.
846 (fill_gstring_body): Likewise.
847 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
848 the frame.
849 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
850 is within a composition.
867d4bb3 851 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
852
853 * term.c (encode_terminal_code): Fix handling of composition.
854 (produce_composite_glyph): For static composition, get pixel_width
855 from struct composition.
856
826ba17e
AS
8572009-02-02 Andreas Schwab <schwab@suse.de>
858
859 * unexelf.c (unexec): Handle unaligned bss offset.
860
8ad093db
AR
8612009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
862
863 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
864 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 865
8ad093db
AR
866 * keyboard.c (handle_interrupt): Don't call
867 quit_throw_to_read_char() under NS.
d0a76a6e 868
8ad093db
AR
869 * blockinput.h: Remove NS-specific code.
870
4d18a7a2
DN
8712009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
872
db878925
DN
873 * dispnew.c (window_change_signal): Don't try to get the size of a
874 suspended tty frame.
875 * term.c (Fresume_tty): Resize if the size has changed while the
876 tty was suspended.
877
4d18a7a2
DN
878 * alloc.c (mark_stack): Properly conditionalize previous change.
879
8984df7c
JB
8802009-01-30 Juanma Barranquero <lekktu@gmail.com>
881
882 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
883 * w32term.c (w32_read_socket) [SYNC_INPUT]:
884 Remove; this code is not used on Windows.
885
75f4f1ac
EZ
8862009-01-30 Eli Zaretskii <eliz@gnu.org>
887
888 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
889 EOLs that also has stray ^M characters.
890
07a1e794
JB
8912009-01-30 Juanma Barranquero <lekktu@gmail.com>
892
893 * atimer.c (run_timers, alarm_signal_handler):
894 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
895 * w32inevt.c (w32_console_read_socket):
896 * w32term.c (w32_read_socket):
897 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
898
a8b11cc9
CY
8992009-01-30 Chong Yidong <cyd@stupidchicken.com>
900
901 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
902 Initialize it as a relative filename pattern.
903 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
904 (Fcall_process_region): Simplify temp file creation using
905 temporary-file-directory.
906
c279587b
EZ
9072009-01-29 Eli Zaretskii <eliz@gnu.org>
908
909 * msdos.c: Rename pending_signals to msdos_pending_signals.
910 (sig_suspender, sigprocmask): Adjust.
911
a8fe3242
CY
9122009-01-29 Chong Yidong <cyd@stupidchicken.com>
913
914 * keyboard.c (pending_signals): New var.
915 (poll_for_input, input_available_signal, init_keyboard): Set it.
916 (process_pending_signals): New function.
917
918 * lisp.h (QUIT): Check pending_signals instead of
919 interrupt_input_pending. Use process_pending_signals.
920
51d861de 921 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 922
51d861de 923 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
924
925 * sysdep.c (emacs_write): Use process_pending_signals.
926
927 * xterm.c (XTread_socket): Update pending_signals.
928
929 * w32term.c (w32_read_socket): Update pending_signals.
930
931 * w32inevt.c (w32_console_read_socket): Update pending_signals.
932
6570a1c4
KH
9332009-01-29 Kenichi Handa <handa@m17n.org>
934
935 * xftfont.c (xftfont_has_char): New function.
936 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
937
d72a4afa
AR
9382009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
939
940 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
941 under GNUstep.
942 (ns_query_color): New declaration.
943
944 * nsterm.m (ns_confirm_quit): New variable.
945 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
946 (EmacsApp-applicationShouldTerminate:): Use it.
947 (EmacsPrefsController): Let user set it.
948 (ns_query_color): New function.
949 (ns_defined_color): Use it.
950 (ns_initialize): Drop.
951 (ns_term_init): Add two lines from ns_initialize(), and set
952 input_interrupt_mode to nil.
953
954 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 955 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 956
9fe78804
KH
9572009-01-28 Kenichi Handa <handa@m17n.org>
958
959 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
960 (fontset_get_font_group): Remember that no font-group is specified
961 for C.
9fe78804 962
fa57de36
CY
9632009-01-27 Chong Yidong <cyd@stupidchicken.com>
964
930600e9
CY
965 * fns.c (concat): Check for string overflow (bug#1787).
966
fa57de36
CY
967 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
968 Quadruple undo limits (bug#1501).
969
7179ce7b
KH
9702009-01-27 Kenichi Handa <handa@m17n.org>
971
972 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
973 directly use GT_Get_Char_index.
974
975 * xftfont.c (struct xftfont_info): New member `index'.
976
977 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 978 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 979
5be8fcc0
CY
9802009-01-26 Kenichi Handa <handa@m17n.org>
981
982 * fontset.c (fontset_find_font): Fix handling of non-cons return
983 value of fontset_get_font_group.
984 (fontset_font): Revert last change.
985
19ae3e61
JR
9862009-01-26 Jason Rumney <jasonr@gnu.org>
987
988 * w32font.c (w32font_list_internal): Return quickly if registry is
989 unknown. Simplify final return.
990 (add_font_entity_to_list): Break complex logic down into more
991 manageable chunks. Move unknown registry check to
992 w32font_list_internal.
993
8612b71a
AR
9942009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
995
996 Changes to remove Feval calls from GUI under NS.
997
d8038940
JB
998 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
999 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
1000 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
1001
1002 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
1003 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
1004 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
1005 instead of NON_ASCII_KEYSTROKE_EVENT.
1006 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
1007 (EmacsApp-applicationShouldTerminate:): Query user.
1008 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
1009 instead of Feval.
1010
1011 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
1012
1013 * keyboard.c (kbd_buffer_get_event): Check for it.
1014 (keys_of_keyboard): Define lispy keys for
1015 ns-put/unput-working-text.
1016
1017 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
1018 versions.
1019 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
1020
6288ae55
CY
10212009-01-25 Chong Yidong <cyd@stupidchicken.com>
1022
1023 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 1024 setting current_buffer directly. (Bug#2044)
6288ae55 1025
289e7f8f
CY
10262009-01-24 Chong Yidong <cyd@stupidchicken.com>
1027
5ce87308 1028 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 1029 any work. (Bug#1952, bug#1990).
5ce87308 1030
64cc3cf6 1031 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 1032
b3243e6f
AR
10332009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1034
1035 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
1036 (ns_no_defaults): New declaration.
1037 (main): Use it.
e0d2e69a 1038
d900b2af 1039 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 1040
d900b2af 1041 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 1042
d900b2af
AR
1043 * nsterm.m (ns_no_defaults): New variable.
1044 (ns_initialize): Don't read defaults when ns_no_defaults.
1045 (EmacsView-readSelectionFromPasteboard:)
1046 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 1047 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
1048 (ns_dumpglyphs_stretch): New function.
1049 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 1050 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 1051
e0d2e69a
AR
1052 * nsimage.m (setPixmapData:): Set to ignore image DPI.
1053
3ac71f5d
CY
10542009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
1055
1056 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
1057 call for Sparc64.
1058
3fe53a83
AR
10592009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1060
1061 * nsfns.m:
1062 * nsgui.h:
1063 * nsmenu.m:
1064 * nsselect.m:
1065 * nsterm.h:
1066 * nsterm.m: Remove '23' comments that indicated code added during
1067 update from emacs-20 -> emacs-23.
1068
10f87c6f 10692009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
1070
1071 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 1072 ns_alternate_modifier. (Bug#1217)
a3b53a85 1073
c7cef62d
AR
1074 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
1075 Display all shortcuts, including those w/o super modifier.
1076
575fb8bd
AR
1077 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
1078
918b848b
CY
10792009-01-22 Chong Yidong <cyd@stupidchicken.com>
1080
1081 * fileio.c (Vwrite_region_post_annotation_function)
1082 (Vwrite_region_annotation_buffers): New vars.
1083 (build_annotations_unwind): Just reset
1084 Vwrite_region_annotation_buffers.
1085 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
1086 Call write-region-post-annotation-function.
1087 (build_annotations): Add to Vwrite_region_annotation_buffers if
1088 buffer changes.
1089
a39e2539
AR
10902009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1091
1092 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
1093 Tiger.
51d861de
SM
1094 * nsfns.m (ns_do_applescript):
1095 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 1096
35ed44db
AR
10972009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
1098
1099 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
1100
cbe0b5bf
AR
11012009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1102
1103 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 1104
6049d3a0
AR
1105 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
1106
1107 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
1108 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
1109 handle Ctrl-tab. (Bug#1841)
1110 (ns_get_color): Use unsigned long long for scanned hex string value.
1111 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 1112 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
6049d3a0 1113 (EmacsPrefsController-setPanelFromDefaultValues) New function.
3a88a825 1114 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 1115 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 1116 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 1117 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 1118
d3810c21 1119 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 1120 DPI. (Bug#1316)
d3810c21
AR
1121 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
1122 values in onTiger section.
4c7077c3 1123
e301e634
CY
11242009-01-19 Chong Yidong <cyd@stupidchicken.com>
1125
7f82490b
CY
1126 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
1127 Check return value of font_spec_from_name.
64cc3cf6 1128 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
1129
1130 * font.c (font_spec_from_name): Return Qnil if font name could not
1131 be parsed.
1132 (font_parse_name): Treat a `?' character as part of an XLFD.
1133
e301e634
CY
1134 * fns.c (Fsubstring): Doc fix.
1135
1c0db158
KH
11362009-01-19 Kenichi Handa <handa@m17n.org>
1137
51d861de 1138 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
1139 (ftfont_list): Likewise.
1140
acf20901
JB
11412009-01-18 Juanma Barranquero <lekktu@gmail.com>
1142
fff4e459
JB
1143 * dbusbind.c (Fdbus_register_signal):
1144 * process.c (conv_sockaddr_to_lisp):
1145 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
1146
acf20901
JB
1147 * callproc.c (Fgetenv_internal): Doc fix.
1148
e7abcdfb
CY
11492009-01-16 Chong Yidong <cyd@stupidchicken.com>
1150
1151 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
1152 it is not even used.
1153
b60861e6
GM
11542009-01-16 Glenn Morris <rgm@gnu.org>
1155
1156 * font.c (Ffont_variation_glyphs): Silence compiler.
1157
8db52afe
JB
11582009-01-15 Juanma Barranquero <lekktu@gmail.com>
1159
1160 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
1161 Reported by David Robinow <drobinow@gmail.com>.
1162
4cddb209
KH
11632009-01-15 Kenichi Handa <handa@m17n.org>
1164
51d861de 1165 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 1166
f247f67b
JR
11672009-01-14 Jason Rumney <jasonr@gnu.org>
1168
1169 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 1170 never a fontset. (Bug#1562)
f247f67b 1171
f56a4450
KH
11722009-01-14 Kenichi Handa <handa@m17n.org>
1173
1174 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 1175 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 1176
4e99855e
CY
11772009-01-13 Chong Yidong <cyd@stupidchicken.com>
1178
1179 * font.c (font_clear_prop): If clearing the family, clear the font
1180 width index too.
1181
fff4e459 1182 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 1183
24f01470
JB
11842009-01-12 Juanma Barranquero <lekktu@gmail.com>
1185
1186 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
1187 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
1188 functions, use sizeof.
1189
a41240a3
MR
11902009-01-12 Martin Rudalics <rudalics@gmx.at>
1191
1192 * keyboard.c (read_char): Fix case where last_nonmenu_event
1193 returned a bad value with submenus. (Bug#447)
1194
944636b8
CY
11952009-01-12 Chong Yidong <cyd@stupidchicken.com>
1196
1197 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
1198 family, clear the font width index too.
1199
0dad7c6f
JR
12002009-01-11 Jason Rumney <jasonr@gnu.org>
1201
1202 * keyboard.c (cmd_error_internal): Exit when errors occur before
1203 frame creation and not in daemon mode. (Bug#1836)
1204
7c2363af
CY
12052009-01-10 Chong Yidong <cyd@stupidchicken.com>
1206
1207 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
1208 of a display vector, backtrack.
1209 (try_window_reusing_current_matrix): Check glyph type before
1210 referencing charpos member.
1211
97b1b294
EZ
12122009-01-10 Eli Zaretskii <eliz@gnu.org>
1213
1214 Fix Bug #876:
1215
1216 * coding.c (inhibit_null_byte_detection): New variable.
1217 (detect_coding, detect_coding_system): Don't pay attention to null
1218 bytes if inhibit_null_byte_detection is non-zero.
51d861de 1219 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
1220 <inhibit-iso-escape-detection>: Doc fix.
1221
4624b6e3
JR
12222009-01-09 Jason Rumney <jasonr@gnu.org>
1223
1224 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 1225 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
1226 Only report Unicode Plane 2 fonts as unicode-sip.
1227
323b840c
CY
12282009-01-09 Chong Yidong <cyd@stupidchicken.com>
1229
51d861de
SM
1230 * xfaces.c (Fx_font_family_list): Delete function.
1231 Move compatibility version to faces.el.
323b840c 1232
51d861de 1233 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 1234
eba7400d
MR
12352009-01-09 Martin Rudalics <rudalics@gmx.at>
1236
1237 * frame.c (x_set_frame_parameters): Remember requested value for
1238 fullscreen before it's reset by the parameter handler.
1239
4b09796d
GM
12402009-01-09 Glenn Morris <rgm@gnu.org>
1241
1242 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 1243 (last_command_event): ... and update all users.
4b09796d
GM
1244 (last_input_char): For clarity, rename to...
1245 (last_input_event): ... and update all users.
1246 (last-command-char, last-input-char): Move to subr.el as aliases.
1247 * cmds.c, commands.h: Update for last_command_char rename.
1248
14ccea62
CY
12492009-01-08 Chong Yidong <cyd@stupidchicken.com>
1250
51d861de 1251 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 1252
5f004711
JR
12532009-01-08 Jason Rumney <jasonr@gnu.org>
1254
1255 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
1256 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
1257 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
1258 Don't declare.
fff4e459 1259 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
1260 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
1261
b71f6f73
KH
12622009-01-07 Kenichi Handa <handa@m17n.org>
1263
50b06221 1264 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 1265 remember the coding system used for decoding in
50b06221
KH
1266 coding_system (Bug#1039).
1267
b71f6f73 1268 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 1269 breaking the loop. (Bug#870)
b71f6f73
KH
1270 (decode_coding_utf_16, decode_coding_emacs_mule)
1271 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
1272 (decode_coding_charset): Likewise.
1273
56f668f7
MR
12742009-01-05 Martin Rudalics <rudalics@gmx.at>
1275
1276 * frame.c (x_set_frame_parameters): Make sure height (width) get
1277 applied when fullwidth (fullheight) is set. (Bug#1522)
1278
5da9424d
JB
12792009-01-04 Juanma Barranquero <lekktu@gmail.com>
1280
1281 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
1282 (utc_base): Declare as ULONGLONG, not long double.
1283 (convert_time_raw): Delete.
1284 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
1285 (initialize_utc_base): New function.
1286 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
1287 (convert_from_time_t): Use initialize_utc_base; compute result with
1288 64-bit arithmetic.
1289 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
1290
c4605e09
EZ
12912009-01-03 Eli Zaretskii <eliz@gnu.org>
1292
9acef61c 1293 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
1294 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
1295 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
1296 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
1297 [!subprocesses]: Define.
1298 (syms_of_process) [!subprocesses]: Intern and staticpro them.
1299 (Flist_system_processes, Fsystem_process_attributes)
1300 [!subprocesses]: Call list_system_processes and
1301 system_process_attributes instead of returning Qnil.
1302
9acef61c
JB
1303 * dosfns.c (system_process_attributes, list_system_processes):
1304 New functions.
c4605e09
EZ
1305
1306 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
1307
1308 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
1309 Don't use the default (no-op) implementation.
1310
8b7d0a16
JR
13112009-01-03 Jason Rumney <jasonr@gnu.org>
1312
a6d46bc1
JR
1313 * keyboard.c (parse_modifiers_uncached): Wheel events are
1314 clicks (bug#687).
1315
8b7d0a16
JR
1316 * w32term.c (x_query_colors, x_query_color): New functions.
1317
1318 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
1319 (svg_load_image): Cast returned pointers from dynamically loaded
1320 functions. Eliminate W32 specific code.
1321
bfe11752
DN
13222009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
1323
89e2438a
DN
1324 * nsfns.m (x_set_foreground_color, x_set_background_color)
1325 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
1326 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
1327 x_ prefix instead of ns_. Update references.
1328 (syms_of_nsfns): Add a FIXME comment.
1329
1330 * nsterm.m (x_set_cursor_type): New prototype.
1331 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
1332
bfe11752
DN
1333 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
1334 for Solaris instead of incorrectly providing Qutime and Qcutime.
1335
031da700
EZ
13362009-01-02 Eli Zaretskii <eliz@gnu.org>
1337
1338 * w32.c (process_times): Compute sum of utime and stime.
1339 (system_process_attributes): Add Qtime to the alist.
1340
1341 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
1342 and add them to the alist.
1343
1344 * process.c (top level) <Qtime, Qctime>: New variables.
1345 (syms_of_process): staticpro them.
1346 (Fsystem_process_attributes): Add their documentation to the doc
1347 string.
1348
1349 * process.h: Declare Qtime and Qctime.
1350
df23bf08
JR
13512009-01-02 Jason Rumney <jasonr@gnu.org>
1352
9acef61c 1353 * image.c (Qgobject): New symbol.
df23bf08
JR
1354 (syms_of_image): Initialize it.
1355 (init_svg_functions): Load some functions from gobject library.
1356
5bbdf7aa
DN
13572009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
1358
1359 * frame.c (make_terminal_frame): Remove redundant code and useless
1360 block.
1361
63136da6
AS
13622009-01-01 Andreas Schwab <schwab@suse.de>
1363
1364 * process.c (conv_sockaddr_to_lisp): Add workaround for
1365 getsockname bug on BSD.
1366
9ef69046
CY
13672009-01-01 Chong Yidong <cyd@stupidchicken.com>
1368
d6fafbe0
CY
1369 * xfns.c (x_create_tip_frame): Set border width of the X window.
1370
51d861de 1371 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 1372
f9c34147
JR
13732009-01-01 Jason Rumney <jasonr@gnu.org>
1374
9acef61c 1375 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
1376 Don't block input, as per earlier xterm.c changes.
1377
f5497e45
AR
13782008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
1379
1380 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
1381 (ns_appkit_version_int): New function.
1382 (x-server-version): Use ns_appkit_version_int and follow 21+
1383 convention of returning 3 integers.
1384
c19cab20
KH
13852008-12-30 Kenichi Handa <handa@m17n.org>
1386
1387 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
1388 (CHAR_SURROGATE_PAIR_P): New macro.
1389
1390 * font.h (struct font_driver): New member get_variation_glyphs.
1391
9acef61c 1392 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
1393 (Ffont_variation_glyphs): New function.
1394 (syms_of_font): Defsubr it.
1395
1396 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
1397 ftfont_variation_glyphs.
1398 (setup_otf_gstring): New function.
1399 (ftfont_drive_otf): Use it.
1400 (ftfont_shape_by_flt): Handle variation selector.
1401 (ftfont_variation_glyphs): New function.
1402
28cd591f
MR
14032008-12-30 Martin Rudalics <rudalics@gmx.at>
1404
1405 * frame.c (Vemacs_iconified): Remove.
1406
7f714baf
JR
14072008-12-30 Jason Rumney <jasonr@gnu.org>
1408
1409 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 1410 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 1411
9d2d22ab
CY
14122008-12-30 Chong Yidong <cyd@stupidchicken.com>
1413
1414 * indent.c (Fvertical_motion): Don't advance iterator if we have
1415 reseated to the desired position.
1416
1417 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
1418 checking for pos match.
1419
545312c2
KH
14202008-12-30 Kenichi Handa <handa@m17n.org>
1421
1ede3eb6
KH
1422 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
1423 just get the low 8-bit of the code.
1424
545312c2
KH
1425 * font.c (font_intern_prop): Validate str as multibyte.
1426
bd7bbf29
DN
14272008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
1428
31e0750e
DN
1429 * dispextern.h (struct face): Move lface and hash from the middle
1430 of bitfields.
1431
bd7bbf29
DN
1432 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
1433
b5672e7c
DN
14342008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
1435
1436 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
1437 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
1438 instead of intervals.h.
1439
d704470f
AS
14402008-12-26 Andreas Schwab <schwab@suse.de>
1441
1442 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
1443 cons.
1444
54b33868
MR
14452008-12-26 Martin Rudalics <rudalics@gmx.at>
1446
1447 * textprop.c (Qminibuffer_prompt): New variable.
1448 (syms_of_textprop): Initialize it.
1449 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
1450 in minibuffer-prompt face. (Bug#1662)
1451
40b615d6
JR
14522008-12-25 Jason Rumney <jasonr@gnu.org>
1453
1454 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
1455
baae5c2d
JR
14562008-12-24 Jason Rumney <jasonr@gnu.org>
1457
1458 * ralloc.c (r_alloc_reset_variable): New function.
1459
1460 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 1461 record of what points where. (Bug#716)
baae5c2d 1462
a9051c88
DN
14632008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
1464
1465 * minibuf.c (read_minibuf): Follow the non-interactive case when
1466 running as a daemon, before detaching.
1467
8b146312
AS
14682008-12-22 Andreas Schwab <schwab@suse.de>
1469
1470 * buffer.c (init_buffer): Use realloc instead of xrealloc.
1471 * gtkutil.c (free_widget_value): Use xfree instead of free.
1472
56f2de10
MR
14732008-12-22 Martin Rudalics <rudalics@gmx.at>
1474
1475 * frame.c (delete_frame): New function derived from
1476 Fdelete_frame to handle Qnoelisp value for FORCE argument.
1477 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
1478 (Fdelete_frame): Call delete_frame. Remove line from doc-string
1479 saying that FORCE non-nil doesn't run `delete-frame-functions'.
1480 * frame.h: Extern delete_frame.
1481 * window.c (window_loop):
1482 * terminal.c (delete_terminal):
1483 * xterm.c (x_connection_closed):
1484 * xfns.c (Fx_hide_tip):
9acef61c 1485 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 1486
1fc200d6
JR
14872008-12-21 Jason Rumney <jasonr@gnu.org>
1488
1489 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
1490 when character maps to .notdef character.
1491
5e252df2
SM
14922008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
1493
1494 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
1495
99b72cc4
JR
14962008-12-20 Jason Rumney <jasonr@gnu.org>
1497
1498 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 1499 a graphical frame on Windows. (Bug#1325)
99b72cc4 1500
acc49a52
JD
15012008-12-20 Jan Djärv <jan.h.d@swipnet.se>
1502
1503 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
1504
6ea15123
CY
15052008-12-20 Chong Yidong <cyd@stupidchicken.com>
1506
1507 * minibuf.c (Fread_buffer): Doc fix.
1508
b2dab6c8
JR
15092008-12-20 Jason Rumney <jasonr@gnu.org>
1510
54ea0c87 1511 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 1512 server name in UNC paths. (Bug#719)
54ea0c87 1513
b2dab6c8 1514 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 1515 charbuf. (Bug#1035)
b2dab6c8 1516
6d1921be
DN
15172008-12-19 Daniel Engeler <engeler@gmail.com>
1518
1519 * sysdep.c (serial_configure): Fix typo.
1520
53934c98
DN
15212008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
1522
1523 * sysdep.c: Include alloca.h.
f4f634e8
DN
1524 (system_process_attributes): Add implementation for Solaris.
1525
1526 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 1527
06e111a6
DN
15282008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
1529
1530 Reorganize implementation of Flist_system_processes and
1531 Fsystem_process_attributes. No functional changes.
1532 * process.c: Don't #include pwd.h, grp.h and limits.h.
1533 (Flist_system_processes): Just call list_system_processes.
1534 (Fsystem_process_attributes): Just call system_process_attributes.
1535 (procfs_list_system_processes, time_from_jiffies)
1536 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
1537 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
1538
1539 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
1540 (list_system_processes): Rename from
1541 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
1542 Provide a do nothing implementation.
1543 (system_process_attributes): Rename from
1544 procfs_list_system_processes.
1545 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 1546 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
1547
1548 * w32.c (list_system_processes): Rename from
1549 w32_list_system_processes.
1550 (system_process_attributes): Rename from
1551 w32_system_process_attributes.
1552
1553 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
1554
1555 * process.h (w32_list_system_processes)
1556 (w32_system_process_attributes): Remove.
1557 (list_system_processes, system_process_attributes): New
1558 prototypes.
1559
6a705b23
KH
15602008-12-19 Kenichi Handa <handa@m17n.org>
1561
1562 * xfont.c (xfont_decode_coding_xlfd): New function.
1563 (xfont_encode_coding_xlfd): New function.
1564 (xfont_list_pattern): Decode XLFD by iso-8859-1.
1565 (xfont_list): Decode and encode XLFD by iso-8859-1.
1566 (xfont_match): Likewise.
1567 (xfont_list_family): Likewise.
1568 (xfont_open): Likewise.
1569
d66c0241 1570 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
1571 names are utf-8.
1572
d66c0241 1573 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
1574 names are utf-8.
1575
5a130941
JD
15762008-12-18 Jan Djärv <jan.h.d@swipnet.se>
1577
1578 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
1579 changed.
bfd20325
JD
1580 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
1581 clicked on a detached tool bar button.
5a130941 1582
fd95644b
DN
15832008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
1584
1585 * emacs.c (main): Print and error and exit when no data is read
1586 from the pipe.
1587
e6eee6ae
JR
15882008-12-17 Jason Rumney <jasonr@gnu.org>
1589
1590 * w32font.c (w32font_has_char): Always return -1.
1591
a35dd56b
KH
15922008-12-16 Kenichi Handa <handa@m17n.org>
1593
1594 * font.c (font_open_entity): Fix previous change.
1595
0e3635c2
DN
15962008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
1597
1598 * process.c: Include <limits.h>.
1599
d4835507 16002008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
1601
1602 * font.c (font_update_drivers): Fix mistake in reconstructing the
1603 driver list.
1604
16052008-12-16 Chong Yidong <cyd@stupidchicken.com>
1606
1607 * font.c (font_clear_cache): Fix format of font cache data.
1608
e2cbc401
CY
16092008-12-15 Chong Yidong <cyd@stupidchicken.com>
1610
1611 * xftfont.c (xftfont_open): Free Xft font pattern if
1612 XftFontOpenPattern fails.
1613
1614 * xterm.c (x_free_frame_resources): Remove extraneous call to
1615 free_frame_faces.
1616
b131d535
CY
16172008-12-13 Chong Yidong <cyd@stupidchicken.com>
1618
1619 * xterm.c (x_delete_display): Move xim_close_dpy call to
1620 x_delete_terminal.
1621 (x_delete_terminal): Call xim_close_dpy.
1622
e6df5336
JR
16232008-12-13 Jason Rumney <jasonr@gnu.org>
1624
1625 * w32font.c (intern_font_name): New function.
1626 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
1627 (w32font_open_internal, Fx_select_font): Decode font name.
1628 (fill_in_logfont, list_all_matching_fonts): Encode font name.
1629
1630 * w32font.h (intern_font_name): Declare new function.
1631
1632 * w32uniscribe.c (add_opentype_font_name_to_list):
1633 Use intern_font_name.
1634
20d68145
CY
16352008-12-13 Chong Yidong <cyd@stupidchicken.com>
1636
9f2554de
CY
1637 * frame.c (Fdelete_frame): Call free_font_driver_list.
1638
3d9bec9a
CY
1639 * font.c (free_font_driver_list): Implement missing function.
1640
20d68145
CY
1641 * w32term.c (w32_term_init): Don't initialize the image cache
1642 here; it will be done in init_frame_faces.
1643
1644 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
1645 (struct x_display_info): Remove unused member null_pixel. New
1646 member xim_callback_data.
1647
1648 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
1649 (xim_initialize): Save pointer to callback function data.
1650 (xim_close_dpy): Free callback function data. Call XCloseIM,
1651 reverting 2008-11-04 change by David Smith.
1652 (x_term_init): Don't initialize the image cache here; it will be
1653 done in init_frame_faces. Remove ancient "null_pixel" cruft.
1654 (x_delete_display): Free x_dnd_atoms member.
1655
96f9306b
KH
16562008-12-13 Kenichi Handa <handa@m17n.org>
1657
6dec9044
JB
1658 * font.c (font_rescale_ratio): Moved from xfaces.c.
1659 Argument type changed. Handle a font-spec too.
96f9306b 1660 (font_score): Check Vface_font_rescale_alist.
6dec9044 1661 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
1662
1663 * xfaces.c (font_rescale_ratio): Moved to font.c.
1664
8d5b4964
CY
16652008-12-13 Chong Yidong <cyd@stupidchicken.com>
1666
1667 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
1668
e6df5336
JR
16692008-12-12 Jason Rumney <jasonr@gnu.org>
1670
1671 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
1672 Vwindow_system_version to the real w32 major version.
1673
97c6058a
DN
16742008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
1675
1676 * term.c (init_tty): Move setting the terminal name before the
1677 potential user: maybe_fatal.
1678
ec4e88d7
CY
16792008-12-11 Chong Yidong <cyd@stupidchicken.com>
1680
d4835507
JB
1681 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
1682 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 1683
b4233ec9
JR
16842008-12-11 Jason Rumney <jasonr@gnu.org>
1685
8ec71e23 1686 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 1687 SYMBOL_CHARSET. (Bug#547)
8ec71e23 1688
b4233ec9 1689 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 1690 size for surrogates. (Bug#1096, bug#872)
b4233ec9 1691
011a0143
JB
16922008-12-11 Juanma Barranquero <lekktu@gmail.com>
1693
1694 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
1695
3c309f34
JB
16962008-12-11 Juanma Barranquero <lekktu@gmail.com>
1697
1698 * process.c (Fsystem_process_attributes, syms_of_process):
1699 Fix typo in name of Ssystem_process_attributes.
1700 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
1701
fedc6ab5
JB
17022008-12-11 Juanma Barranquero <lekktu@gmail.com>
1703
1704 * syntax.c (Fmodify_syntax_entry): Doc fix.
1705
ba3de0e8
JB
17062008-12-10 Juanma Barranquero <lekktu@gmail.com>
1707
1708 * font.c (Ffont_spec): Move usage to end of docstring.
1709
174f1c74
JR
17102008-12-10 Jason Rumney <jasonr@gnu.org>
1711
1712 * w32font.c (Qcham): New symbol.
1713 (font_supported_scripts): Add cham, and comments for other new
1714 scripts in bitfield from OpenType spec.
9d32f818
JR
1715 (add_font_entity_to_list): Limit unicode-sip fonts to those that
1716 contain characters beyond the bmp.
174f1c74 1717
7b649478
KH
17182008-12-10 Kenichi Handa <handa@m17n.org>
1719
1720 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 1721 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
1722 Qunicode_sip.
1723
2133e2d1
JB
17242008-12-10 Juanma Barranquero <lekktu@gmail.com>
1725
1726 * coding.c (QCdefault_char): Rename from QCdefalut_char.
1727 (Fcoding_system_put): Use QCdefault_char.
1728 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
1729
9af886ee
CY
17302008-12-09 Chong Yidong <cyd@stupidchicken.com>
1731
74d819eb
CY
1732 * xftfont.c (syms_of_xftfont): Fix typo.
1733
4ccfa1c0 1734 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 1735
7c19d3ae
DN
17362008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
1737
1738 * emacs.c (main): Close daemon_pipe on exec.
1739
567826bb
CY
17402008-12-08 Chong Yidong <cyd@stupidchicken.com>
1741
1742 * termchar.h (struct tty): New members termcap_term_buffer and
1743 termcap_strings_buffer.
1744
1745 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 1746 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
1747 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
1748 All callers changed.
1749 (init_tty): Store termcap data and string buffers in new struct
1750 tty members termcap_term_buffer and termcap_strings_buffer.
1751 (delete_tty): Free them.
4ccfa1c0 1752 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 1753
aa96c42b
SZ
17542008-12-07 Seiji Zenitani <zenitani@mac.com>
1755
1756 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 1757 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 1758
b7e1d896
CY
17592008-12-06 Chong Yidong <cyd@stupidchicken.com>
1760
1761 * coding.c (make_conversion_work_buffer): Disable buffer
1762 modification hooks in the work buffer.
1763
b5ec91a5
EZ
17642008-12-05 Eli Zaretskii <eliz@gnu.org>
1765
1766 * process.c (procfs_system_process_attributes): If `nread' has a
1767 negative value, assign zero to it.
1768
a5d2a52b
CY
17692008-12-05 Chong Yidong <cyd@stupidchicken.com>
1770
68c5540b 1771 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 1772
7bf1bb21
KH
17732008-12-05 Kenichi Handa <handa@m17n.org>
1774
1775 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
1776 second character is a combining character.
1777
2fdc7d00
EZ
17782008-12-05 Eli Zaretskii <eliz@gnu.org>
1779
1780 * process.c (procfs_system_process_attributes): Don't use cmd,
1781 cmdsize, and q without initializing them first.
1782
bf6bfba8
JR
17832008-12-04 Jason Rumney <jasonr@gnu.org>
1784
1785 * w32font.c (w32font_draw): Initialize orig_clip before getting
1786 it, and delete it when finished.
1787
a3b1a468
DN
17882008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
1789
1790 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
1791 case when running as a daemon before detaching.
1792
8b8be8eb
JB
17932008-12-03 Juanma Barranquero <lekktu@gmail.com>
1794
805f2638 1795 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 1796
b1bde622
KH
17972008-12-03 Kenichi Handa <handa@m17n.org>
1798
e500c47d
KH
1799 * font.c (font_at): Set `multibyte' at first.
1800
ca516334
KH
1801 * coding.c (decode_coding_charset): Check type of an element of
1802 vector VALIDS.
7bf1bb21 1803 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 1804
4ccfa1c0 1805 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
1806 (font_for_char): Likewise.
1807
1e5ecd37
CY
18082008-12-03 Chong Yidong <cyd@stupidchicken.com>
1809
d5b01609 1810 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
1811 (font_update_lface): Handle fonts with corrupted size specs,
1812 i.e. non-int and non-float.
d5b01609 1813
11e3a6e4 1814 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 1815 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 1816 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 1817
ab06788b
CY
1818 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
1819
1e5ecd37 1820 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 1821 underline_minimum_offset for underline position.
1e5ecd37 1822
63c125ab
DN
18232008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
1824
1825 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
1826
1827 * character.c (c_string_width): Specify the type for LEN.
1828
3a8406e1
KH
18292008-12-03 Kenichi Handa <handa@m17n.org>
1830
4ccfa1c0 1831 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 1832 (decode_coding_utf_8): Likewise.
4ccfa1c0 1833 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 1834 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 1835
651df7d9
CY
18362008-12-02 Chong Yidong <cyd@stupidchicken.com>
1837
1838 * keyboard.c (make_lispy_position): Only use PT if the selected
1839 window is current.
1840
1f625c6c
AS
18412008-12-02 Andreas Schwab <schwab@suse.de>
1842
f7741ce9
AS
1843 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
1844
1f625c6c
AS
1845 * doprnt.c (doprnt1): Fix size of charbuf.
1846
92bc2678
CY
18472008-12-02 Chong Yidong <cyd@stupidchicken.com>
1848
1849 * keyboard.c (timer_check): Revert last change.
1850
93b9e8cc
JB
18512008-12-02 Juanma Barranquero <lekktu@gmail.com>
1852
1853 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
1854
fd7a37d5
JB
18552008-12-01 Juanma Barranquero <lekktu@gmail.com>
1856
1857 * makefile.w32-in: Update dependencies.
1858 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
1859
c115043b
AS
18602008-12-01 Andreas Schwab <schwab@suse.de>
1861
1862 * font.c (register_font_driver): Use xmalloc.
1863 (font_put_frame_data): Likewise.
1864
f5668d2a
CY
18652008-12-01 Chong Yidong <cyd@stupidchicken.com>
1866
860d96be
CY
1867 * xfaces.c (realize_x_face): Make abort condition clearer.
1868
f5668d2a
CY
1869 * gtkutil.c (update_frame_tool_bar): Initialize variable.
1870
379c17e7
CY
18712008-11-30 Chong Yidong <cyd@stupidchicken.com>
1872
1873 * keyboard.c (timer_check): After a timer runs, ensure that the
1874 selected window's buffer is current.
1875
35f36d65
JB
18762008-11-30 Juanma Barranquero <lekktu@gmail.com>
1877
f952c61c
JB
1878 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
1879 It was accidentally restored by the Unicode merge.
1880
35f36d65
JB
1881 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
1882
b23077df
JB
18832008-11-29 Juanma Barranquero <lekktu@gmail.com>
1884
1885 * w32proc.c: Include "coding.h".
1886 (Fw32_short_file_name): Encode filename passed to Windows API.
1887 (Fw32_long_file_name): Encode filename passed to Windows API and
1888 decode back the result. (Bug#1433)
1889
b8ebe9dd
KH
18902008-11-29 Kenichi Handa <handa@m17n.org>
1891
8cc53f96
KH
1892 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
1893 not before accessing it.
1894
b8ebe9dd
KH
1895 * charset.c (Fdefine_charset_internal): After calculating
1896 min_char, max_char, and fastmap, copy the charset structure again.
1897 (encode_char): Fix the previous change.
1898
59bc82c0
SZ
18992008-11-28 Seiji Zenitani <zenitani@mac.com>
1900
1901 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
1902
1903 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
1904
1905 * nsterm.m (x_set_frame_alpha): New function.
1906
32247e3d
EZ
19072008-11-27 Eli Zaretskii <eliz@gnu.org>
1908
1909 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
1910
b003e5ff
JB
19112008-11-27 Juanma Barranquero <lekktu@gmail.com>
1912
1913 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
1914 pointer to check_face_name.
1915
708550f5
KH
19162008-11-27 Kenichi Handa <handa@m17n.org>
1917
1918 * category.h (SET_CATEGORY_SET): Call set_category_set.
1919 (set_category_set): Extern it.
1920
1921 * category.c (hash_get_category_set): New function.
1922 (Fmodify_category_entry): Adjusted for the change of
1923 char_table_ref_and_range. Call hash_get_category_set to get a
1924 category set to store in the table.
1925
1926 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
1927 Funify_charset.
1928
2ae37cf0 1929 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
1930 (DECODE_CHAR): Check if the decoder vector is ready.
1931 (ENCODE_CHAR): Check if the encoder char-table is ready.
1932 (maybe_unify_char): Extern it.
1933
1934 * charset.c (Vchar_unified_charset_table): Delete it.
1935 (inhibit_load_charset_map): New variable.
1936 (temp_charset_work): New variable.
1937 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
1938 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
1939 New macros.
1940 (load_charset_map): Meaning of control_flag changed. If
1941 inhibit_load_charset_map is nonzero, setup a table in
1942 temp_charset_work.
1943 (load_charset): New argument control_flag.
1944 (map_charset_for_dump): New function.
1945 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
1946 map_charset_for_dump.
1947 (Fdefine_charset_internal): If the charset method is MAP, load
1948 mapping tables by calling load_charset.
1949 (Funify_charset): Don't load a mapping table but directly set
1950 Vchar_unify_table.
1951 (maybe_unify_char): New function.
1952 (decode_char): Don't handle the deleted method MAP_DEFERRED.
1953 Handle the case of inhibit_load_charset_map being nonzero.
1954 (encode_char): Don't handle the deleted method MAP_DEFERRED.
1955 Handle the case of inhibit_load_charset_map being nonzero.
1956 (Fclear_charset_maps): Just free temp_charset_work.
1957 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
1958 variable.
1959
1960 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
1961 change of char_table_ref_and_range.
1962 (char_table_ref_and_range): Change the meaning of argument FROM
1963 and TO. Now the caller must provide initial values for *FROM
1964 and *TO.
1965
1966 * fontset.c (fontset_add): Adjusted for the change of
1967 char_table_ref_and_range.
1968 (fontset_get_font_group): Likewise.
1969 (Ffontset_info): Likewise.
1970
1971 * keymap.c (describe_vector): Adjusted for the change of
1972 char_table_ref_and_range. For char-table, put boundary between
1973 non-ASCII and 8-bit characters.
1974
1975 * print.c (print_object): For bool-vector, delete unnecessary
1976 check of ASCII_BYTE_P.
1977
9196133b
JR
19782008-11-26 Jason Rumney <jasonr@gnu.org>
1979
1980 * w32font.c (w32font_open_internal): Don't include external
9acef61c 1981 leading in font height. (Bug#879)
9196133b 1982
9f688acf
GM
19832008-11-26 Glenn Morris <rgm@gnu.org>
1984
1985 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
1986 redefinition with ifdef. (Bug#1383)
1987
90d19aff
AR
19882008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1989
1990 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
1991
4ccfa1c0 19922008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
1993
1994 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
1995 New EmacsView methods.
1996 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
1997 Fixes bug #1048,1357,1414.
1998
19992008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2000
2001 Fix bug #1362.
2002 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
2003 is not an indexed color.
2004 * nsterm.m (free_indexed_color): Add argument checking.
2005 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
2006
e7d5ecb3
CY
20072008-11-24 Chong Yidong <cyd@stupidchicken.com>
2008
2009 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
2010 Document confirm-after-completion value for
2011 minibuffer-completion-confirm.
2012
c285743c
JR
20132008-11-24 Jason Rumney <jasonr@gnu.org>
2014
2015 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
2016 warning.
2017
b0857706
JR
20182008-11-23 Jason Rumney <jasonr@gnu.org>
2019
2020 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
2021 restored before returning.
2022
2023 * w32font.c (check_face_name): New function.
2024 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 2025 fonts. (Bug#642)
b0857706 2026
ee50ff07
MR
20272008-11-22 Martin Rudalics <rudalics@gmx.at>
2028
2029 * buffer.c (Fswitch_to_buffer): Reword and mention new option
2030 confirm-nonexistent-file-or-buffer in doc-string.
2031
b8ff72fa
SM
20322008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
2033
2034 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
2035 Fix copy/paste typo. Add checks.
2036
cee53ed4
KH
20372008-11-21 Kenichi Handa <handa@m17n.org>
2038
2039 * coding.c (detect_coding_iso_2022): Reject invalid composition
2040 sequence.
2041 (DECODE_COMPOSITION_START): If the current source is the last
2042 block, and the current composition doesn't end, regard this
2043 sequence as invalid.
2044 (decode_coding_iso_2022): Handle invalid composition sequence.
2045
f6ef1e65
MR
20462008-11-20 Martin Rudalics <rudalics@gmx.at>
2047
2048 * window.c (coordinates_in_window): Don't return
2049 ON_VERTICAL_BORDER for the rightmost position of a mode/header
2050 line when the window is not the rightmost one. (Bug#1372)
2051
e08b1705
MR
20522008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
2053
2054 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
2055
ad98e89f
EZ
20562008-11-15 Eli Zaretskii <eliz@gnu.org>
2057
2058 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
2059 and bright_bg if noninteractive is non-zero.
2060
fb098a4b
CY
20612008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2062
2063 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
2064 x_draw_glyph_string_background.
2065
2066 * w32term.c (x_draw_glyph_string): Likewise.
2067
ce952b6e
CY
20682008-11-15 Chong Yidong <cyd@stupidchicken.com>
2069
2070 * xterm.c (x_draw_glyph_string): Stop drawing the background of
2071 the next glyph string once past the overhang width.
2072
2073 * nsterm.m (ns_draw_glyph_string): Likewise.
2074
2075 * w32term.c (x_draw_glyph_string): Likewise.
2076
26ea7079
CY
20772008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
2078
2079 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
2080 double file close.
2081
1c33c906
MR
20822008-11-14 Martin Rudalics <rudalics@gmx.at>
2083
2084 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
2085 dedicated status of window before attempting to display another
2086 buffer in it.
2087
8fc29035
JB
20882008-11-14 Juanma Barranquero <lekktu@gmail.com>
2089
2090 * msdos.c (Fmsdos_long_file_names):
2091 (syms_of_msdos) <dos-unsupported-char-glyph>:
2092 * dosfns.c (Fint86): Fix typos in docstrings.
2093
55fb4286
EZ
20942008-11-14 Eli Zaretskii <eliz@gnu.org>
2095
2096 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
2097
3fda0315
KY
20982008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
2099
2100 * puresize.h (BASE_PURESIZE): Increase to 1260000.
2101
7e849c17
CY
21022008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
2103
2104 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
2105
2106 * frame.h: Negative alpha means "don't touch".
2107
2108 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
2109
2110 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
2111
b9fd67bd
DN
21122008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
2113
2114 * hftctl.c:
2115 * chpdef.h:
2116 * acldef.h: Remove files used only for systems no longer supported.
2117
2118 * Makefile.in: Fix .o alphabetical ordering.
2119 (hftctl.o): Remove dependency, file removed.
2120 (keymap.o, print.o): Depend on charset.h.
2121
d5998e03
KH
21222008-11-10 Kenichi Handa <handa@m17n.org>
2123
2ae37cf0 2124 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 2125
be70e183
CY
21262008-11-08 Chong Yidong <cyd@stupidchicken.com>
2127
2128 * dired.c (file_name_completion): If completion_ignore_case is
2129 enabled, ignore case when checking completion-regexp-list.
2130
7cf94eac
EZ
21312008-11-08 Eli Zaretskii <eliz@gnu.org>
2132
2133 * vm-limit.c (get_lim_data): Fix last change.
2134
ee107a89
KH
21352008-11-08 Kenichi Handa <handa@m17n.org>
2136
2137 * character.c (Fget_byte): New function.
2138 (syms_of_character): Defsubr Fget_byte.
2139
5fd15622
CY
21402008-11-07 Chong Yidong <cyd@stupidchicken.com>
2141
2142 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
2143 cursor position is valid after scrolling.
2144
13d62fad
JB
21452008-11-06 Juanma Barranquero <lekktu@gmail.com>
2146
2147 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
2148
a1dd2936
GM
21492008-11-06 Glenn Morris <rgm@gnu.org>
2150
2151 * xterm.c (handle_one_xevent): Don't let popup menus cause
2152 mouse-autoselect-window related window switching. (Bug#1261)
2153
860cd236
CY
21542008-11-04 David Smith <davidsmith@acm.org> (tiny change)
2155
2156 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
2157
653a3150
AS
21582008-11-04 Andreas Schwab <schwab@suse.de>
2159
2160 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
2161
870f5cac
CY
21622008-11-03 Chong Yidong <cyd@stupidchicken.com>
2163
2164 * xfns.c (Fx_wm_set_size_hint): New function.
2165
1e02f3cb
MR
21662008-11-03 Martin Rudalics <rudalics@gmx.at>
2167
2168 * textprop.c (Fprevious_single_char_property_change): Return 0
2169 when there's no change in a string. (Bug#1301)
2170
e630dfc6
MR
21712008-11-02 Martin Rudalics <rudalics@gmx.at>
2172
2173 * frame.c (do_switch_frame): New argument NORECORD passed to
2174 Fselect_window.
2175 (Fselect_frame): New argument NORECORD passed to
2176 do_switch_frame.
2177 (Fset_frame_selected_window): New argument NORECORD passed to
2178 Fselect_frame.
2179 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
2180 in call of do_switch_frame.
2181 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
2182 Handle NORECORD argument in call of Fselect_frame.
2183 * lisp.h (do_switch_frame, Fselect_frame)
2184 (Fset_frame_selected_window): Adjust declarations.
2185 * window.c (select_frame_norecord): New function.
2186 (run_window_configuration_change_hook): Use it and call
2187 Fselect_frame with NORECORD set.
2188 (Fselect_window): Pass NORECORD to Fselect_frame.
2189 (Fset_window_configuration): Handle NORECORD argument in call of
2190 do_switch_frame.
2191 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
2192 Fset_frame_selected_window.
2193 * keyboard.c (command_loop_1): Handle NORECORD in call of
2194 Fselect_frame (currently ifdefd).
2195
9020b223
GM
21962008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
2197
2198 * emacs.c (USAGE2): Untabify.
2199
793ffee8
SM
22002008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
2201
2202 * composite.c (fill_gstring_header): Fix copy/paste typo.
2203
ab6d1131
MR
22042008-10-31 Martin Rudalics <rudalics@gmx.at>
2205
2206 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
2207 (Fother_window): Rename argument and rewrite doc-string.
2208 (select_window_norecord): Fix return value. (Bug#1276)
2209
601a9cf1
JB
22102008-10-30 Juanma Barranquero <lekktu@gmail.com>
2211
2212 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
2213 new frames overriding foreground for tooltips. Based on similar patch
2214 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
2215
813b0652
CY
22162008-10-29 Chong Yidong <cyd@stupidchicken.com>
2217
2218 * emacs.c (Fdaemon_initialized): Initialize nfd.
2219
4414f58f
MR
22202008-10-29 Martin Rudalics <rudalics@gmx.at>
2221
2222 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
2223 (Fwindow_text_height): Clarify doc-strings.
2224 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
2225 doc-string of window-scroll-functions.
2226
ecdcaa09
RS
22272008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
2228
2229 * category.c (syms_of_category): Fix typo in docstring.
2230
23fe745a
JB
22312008-10-28 Juanma Barranquero <lekktu@gmail.com>
2232
2233 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
2234 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
2235 Fix typos in docstrings.
2236
ff808935
DN
22372008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
2238
2239 * emacs.c (daemon_pipe): Make non-static.
2240 (IS_DAEMON): Move definition ...
2241 * lisp.h (IS_DAEMON): ... here.
2242 (daemon_pipe): Declare.
2243 (is_daemon): Remove.
2244 * dispnew.c (init_display): Use IS_DAEMON.
2245
fc012771
SM
22462008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2247
2248 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
2249 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
2250
2251 * emacs.c (is_daemon): Remove.
2252 (main): Don't set is_daemon.
2253 (IS_DAEMON): New macro.
2254 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 2255 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
2256 parent exits.
2257 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
2258
d8bdbe6f
CY
22592008-10-27 Chong Yidong <cyd@stupidchicken.com>
2260
d1a072bf
CY
2261 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
2262 over-sized glyph, draw it with the default glyph width.
2263
e2e325aa
CY
2264 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
2265 glyph, draw it with the default glyph width.
2266
2267 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
2268 glyph, draw it with the default glyph width.
2269
d8bdbe6f
CY
2270 * xdisp.c (try_scrolling): When computing the distance from the
2271 scroll margin to PT, try moving some distance past the window
2272 bottom before giving up.
2273
7bfac547
MR
22742008-10-27 Martin Rudalics <rudalics@gmx.at>
2275
2276 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
2277 (Fset_window_buffer): Explain in doc-string that a window can be
2278 "strongly" dedicated to its buffer.
2279
4ff029f6
DN
22802008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
2281
2282 * emacs.c (daemon_name): New variable.
2283 (main): Deal with --daemon=SERVER_NAME.
2284 (Fdaemonp): Return a name if one was passed to --daemon.
2285
5790ef40
DN
22862008-10-26 Romain Francoise <romain@orebokech.com>
2287
f9bd0df9 2288 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
2289 (main): Create a pipe before forking, make the parent exit only after
2290 the child has closed its end of the pipe. Move closing the
2291 descriptors ...
2292 (Fdaemon_initialized): ... here. New function.
2293
f5385255
SM
22942008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
2295
4d632321
SM
2296 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
2297 the previous unoptimized table.
2298
f5385255
SM
2299 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
2300 the distinction between non-nil and non-t value of `dedicated'.
2301
6c56a0f3
CY
23022008-10-25 Chong Yidong <cyd@stupidchicken.com>
2303
2304 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 2305 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 2306
fec89261
MR
23072008-10-25 Martin Rudalics <rudalics@gmx.at>
2308
2309 * window.c (Fget_buffer_window, Fdelete_windows_on)
2310 (Freplace_buffer_in_windows): Make buffer argument optional and
2311 rename to buffer_or_name.
2312
34fcddd0
CY
23132008-10-24 Chong Yidong <cyd@stupidchicken.com>
2314
f5385255
SM
2315 * xdisp.c (handle_single_display_spec, handle_display_prop):
2316 Undo 2005-05-16 change.
34fcddd0
CY
2317 (handle_stop): Pop iterator if it's loaded with an empty string.
2318 (get_overlay_strings_1): Don't save iterator if it's loaded with
2319 an empty string (bug#1201).
2320
064766f2
KH
23212008-10-24 Kenichi Handa <handa@m17n.org>
2322
2323 * ftfont.c (ftfont_otf_features): Fix previous change.
2324 (ftfont_otf_capability): Check FeatureList.FeatureCount before
2325 calling ftfont_otf_features.
2326
f9bd0df9 23272008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
2328
2329 * font.c (font_match_p): Fix for the case that a vector of
2330 characters is in script-representative-chars.
2331
1dae9197
MA
23322008-10-24 Michael Albinus <michael.albinus@gmx.de>
2333
2334 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 2335 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
2336 (xd_read_queued_messages): Catch Qdbus_error from the macros.
2337 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
2338 macro. (Bug#1186).
2339
f9bd0df9 23402008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
2341
2342 * s/sol2-10.h: New file.
2343
878a4584
JB
23442008-10-23 Juanma Barranquero <lekktu@gmail.com>
2345
2346 * xdisp.c (fill_glyph_string): Fix typo in source (though the
2347 poor beast has survived 9+ years and the jump from xterm.c!).
2348
cd265ca6
MR
23492008-10-23 Martin Rudalics <rudalics@gmx.at>
2350
2351 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
2352 Reword doc-string.
f5385255 2353 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 2354
472a4dc9
JB
23552008-10-23 Juanma Barranquero <lekktu@gmail.com>
2356
2357 * character.c (syms_of_character) <script-representative-chars>:
2358 <unicode-category-table>: Doc fixes.
2359
159bd5a2
NF
23602008-10-23 Noah Friedman <friedman@splode.com>
2361
2362 * coding.c (make_conversion_work_buffer): Check that
2363 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
2364 Fget_buffer_create.
2365
49f9c344
KH
23662008-10-23 Kenichi Handa <handa@m17n.org>
2367
2368 * font.c (font_add_log): Check the values of extra properties.
2369
12bb3111
MR
23702008-10-22 Martin Rudalics <rudalics@gmx.at>
2371
2372 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
2373 Reword doc-string.
2374 (Fset_window_parameter): Use NILP.
2375 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 2376 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 2377
bbeb4e99
JB
23782008-10-22 Juanma Barranquero <lekktu@gmail.com>
2379
2380 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
2381
23822008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
2383
2384 * nsfns.m (ns_appkit_version): New function.
2385 (x-server-version): Use it.
2386 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
2387 (x-server-vendor): Don't check_ns().
2388
2389 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
2390
a9b555d3
JB
23912008-10-22 Juanma Barranquero <lekktu@gmail.com>
2392
2393 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
2394 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
2395
4626499f
KH
23962008-10-22 Kenichi Handa <handa@m17n.org>
2397
e3681952
KH
2398 * syntax.c (scan_words): Call word_boundary_p instead of comparing
2399 scripts.
2400
4626499f
KH
2401 * category.c (word_boundary_p): Check scripts instead of charset.
2402 Handle nil value in word-separating-categories and
2403 word-combining-categories.
2404 (syms_of_category): Fix docstrings of word-separating-categories
2405 and word-combining-categories.
2406
1560f91a
EZ
24072008-10-21 Eli Zaretskii <eliz@gnu.org>
2408
2409 * coding.c (Fencode_coding_region, Fdecode_coding_region)
2410 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
2411
f4668441
MR
24122008-10-21 Martin Rudalics <rudalics@gmx.at>
2413
2414 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
2415 Rename arg "buffer" to "buffer_or_name".
2416 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
2417 it optional.
2418 (no_switch_window): Remove since the return value is not used.
a9b555d3 2419 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
2420 Consider window as dedicated when Fwindow_dedicated_p returns a
2421 non-nil value.
2422 * lisp.h: Remove prototype for no_switch_window.
2423
fd75ddb2
JD
24242008-10-21 Jan Djärv <jan.h.d@swipnet.se>
2425
2426 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 2427 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 2428
07295713
KH
24292008-10-21 Kenichi Handa <handa@m17n.org>
2430
2431 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
2432 check Vlatin_extra_code_table.
2433
712adc82
EZ
24342008-10-20 Eli Zaretskii <eliz@gnu.org>
2435
2436 * fileio.c (Fset_file_modes): Doc fix.
2437
f549eb0b
MA
24382008-10-19 Michael Albinus <michael.albinus@gmx.de>
2439
2440 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
2441 in arrays.
2442
aac0c6e3
MR
24432008-10-19 Martin Rudalics <rudalics@gmx.at>
2444
2445 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
2446 Mention kill-buffer in doc-string.
2447 (Fset_window_buffer): Reinsert tem check removed in last commit.
2448 (Fenlarge_window, Fshrink_window): Have argument names and
2449 doc-string follow Elisp manual more closely.
2450
24512008-10-18 Eli Zaretskii <eliz@gnu.org>
2452
2453 * fileio.c (Fset_file_modes): Doc fix.
2454
24552008-10-18 Martin Rudalics <rudalics@gmx.at>
2456
2457 * window.c (Fwindow_width, Fset_window_start)
2458 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
2459 (Fdelete_windows_on, Freplace_buffer_in_windows):
2460 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
2461 (Fwindow_dedicated_p): Make window argument optional.
2462 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
2463 (Fset_window_buffer): Respect any non-nil dedicated value for
2464 window. Rename "buffer" argument to "buffer_or_name".
2465
24662008-10-18 Ulrich Mueller <ulm@gentoo.org>
2467
2468 * m/sh3.h: New file, machine description for SuperH.
2469
24702008-10-17 Martin Rudalics <rudalics@gmx.at>
2471
2472 * window.c (Fsplit_window): Rename arg horflag to horizontal.
2473
24742008-10-17 Kenichi Handa <handa@m17n.org>
2475
2476 * ftfont.c (ftfont_otf_features): Fix indexing
2477 gsub_gpos->FeatureList.Feature. Check the validity of indices.
2478
24792008-10-16 Magnus Henoch <mange@freemail.hu>
2480
2481 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
2482 (Fdbus_call_method_asynchronously): Ditto.
2483 This change makes C-h f display the argument list.
2484
24852008-10-16 Chong Yidong <cyd@stupidchicken.com>
2486
2487 * fileio.c (Fexpand_file_name): Doc fix.
2488
2489 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
2490 of :foreground and :background equivalent to unspecified (20.x
2491 compatibility).
2492
24932008-10-15 Eli Zaretskii <eliz@gnu.org>
2494
2495 * buffer.c (syms_of_buffer): Doc fix.
2496
24972008-10-14 Kenichi Handa <handa@m17n.org>
2498
2499 * font.c (font_clear_prop): When clearing font width, clear the
2500 average width field too.
2501
25022008-10-12 Andreas Schwab <schwab@suse.de>
2503
2504 * ftfont.c (ftfont_shape_by_flt): Make static.
2505 * ftfont.h (ftfont_shape_by_flt): Don't declare.
2506
2507 * font.c: Don't include <m17n-flt.h>.
2508
25092008-10-10 Eli Zaretskii <eliz@gnu.org>
2510
2511 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
2512
25132008-10-09 Eli Zaretskii <eliz@gnu.org>
2514
2515 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
2516 away code.
2517
25182008-10-09 Chong Yidong <cyd@stupidchicken.com>
2519
2520 * dispnew.c (update_text_area): Avoid looping due to large glyph
2521 overhangs (bug#1070).
2522
25232008-10-09 Kenichi Handa <handa@m17n.org>
2524
2525 * fontset.c (face_for_char): If face->fontset is negative, just
2526 return ascii_face.
2527
f5385255
SM
2528 * font.c (font_delete_unmatched): Fix previous change.
2529 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
2530
25312008-10-09 Martin Rudalics <rudalics@gmx.at>
2532
2533 * frame.c (Fraise_frame): On text-only terminals select frame in
2534 order to make it visible. (Bug#1061)
2535
25362008-10-08 Chong Yidong <cyd@stupidchicken.com>
2537
2538 * fontset.c (fontset_find_font): Check frame validity.
2539
25402008-10-07 Chong Yidong <cyd@stupidchicken.com>
2541
a9b555d3 2542 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
2543 (xg_display_close): Allow Emacs to close all displays (bug#985).
2544
25452008-10-06 Andreas Schwab <schwab@suse.de>
2546
f5385255 2547 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
2548
25492008-10-06 Chong Yidong <cyd@stupidchicken.com>
2550
f5385255 2551 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 2552
a9b555d3 2553 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
2554
2555 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
2556 during initialization.
2557
25582008-10-04 Eli Zaretskii <eliz@gnu.org>
2559
2560 * xdisp.c (redisplay_internal): If frame switched, redisplay the
2561 whole thing on MSDOS frames as well as on a TTY.
2562
2563 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
2564 well as for TTY.
2565 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
2566 well as on a TTY.
2567
2568 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
2569 as well as for TTY.
2570
2571 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
2572
2573 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
2574 MSDOS frames as well.
2575
25762008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2577
2578 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
2579 correct arguments.
2580 * menu.c (find_and_return_menu_selection) Add cast.
2581
25822008-10-03 Glenn Morris <rgm@gnu.org>
2583
2584 * emacs.c (USAGE1): Add --daemon.
2585
25862008-10-02 Eli Zaretskii <eliz@gnu.org>
2587
2588 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
2589 100, so it's in percents as advertised.
2590
25912008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2592
2593 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
2594 (ns_output.current_cursor, ns_output.desired_cursor)
2595 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
2596 (FRAME_NEW_CURSOR_COLOR): Remove.
2597
2598 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 2599 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
2600 enumeration (HOLLOW_BOX_CURSOR, etc.).
2601
2602 * nsterm.m (ns_frame_rehighlight): Remove commented code.
2603 (draw_window_cursor): Simplify code.
f5385255
SM
2604 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
2605 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 2606 updates manually.
a9b555d3
JB
2607 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
2608 Use core Emacs cursor types.
aac0c6e3 2609
b8ff72fa 2610 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
2611
26122008-10-02 Martin Rudalics <rudalics@gmx.at>
2613
2614 * process.c (Faccept_process_output): Fix doc-string.
2615
26162008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
2617
2618 * gmalloc.c (__sbrk): Also define for uClibc.
2619
2620 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
2621 for uClibc.
2622
26232008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2624
2625 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
2626 styles.
2627 (nsfont_open): Reenable the cache.
2628
26292008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2630
2631 * font.c (font_matching_entity): Reflect ATTRS in font selection.
2632 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
2633
26342008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
2635
2636 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
2637 a suspended terminal.
2638
26392008-09-30 Michael Albinus <michael.albinus@gmx.de>
2640
2641 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
2642
26432008-09-30 Eli Zaretskii <eliz@gnu.org>
2644
2645 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
2646
26472008-09-30 Chong Yidong <cyd@stupidchicken.com>
2648
2649 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
2650 in a continued line coincides with a line beginning.
2651
26522008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2653
2654 * nsfont.m (nsfont_trait_distance): Fix bug.
2655 (nsfont_list): Return a list rather than a vector (syncs with Handa
2656 changes of 2008-05-14).
2657 (nsfont_open): Improve logging.
2658
26592008-09-29 Andreas Schwab <schwab@suse.de>
2660
2661 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2662
26632008-09-28 Martin Rudalics <rudalics@gmx.at>
2664
2665 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
2666 name as char-resolve-modifiers.
2667 Reported by: Markus Triska <markus.triska@gmx.at>
2668
26692008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
2670
2671 * dispnew.c (init_display): Return earlier when running as a daemon.
2672
26732008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2674
2675 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
2676
26772008-09-27 Eli Zaretskii <eliz@gnu.org>
2678
2679 * composite.c (Fcomposition_get_gstring)
2680 (Fcompose_region_internal, Fcompose_string_internal)
2681 (Ffind_composition_internal): Doc fix.
2682 (syms_of_composite) <compose-chars-after-function>: Doc fix.
2683 (syms_of_composite) <auto-composition-function>: Doc fix.
2684 (syms_of_composite) <composition-function-table>: Doc fix.
2685
26862008-09-25 Chong Yidong <cyd@stupidchicken.com>
2687
2688 * search.c (wordify): New argument for lax word-ends.
2689 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
2690
26912008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
2692
2693 * lisp.h (is_daemon): Declare.
2694 * dispnew.c (init_display): Do not try to initialize the terminal
2695 when running as a daemon.
2696
26972008-09-22 Chong Yidong <cyd@stupidchicken.com>
2698
2699 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
2700 x_display_pixel_height.
2701
27022008-09-22 Martin Rudalics <rudalics@gmx.at>
2703
2704 * undo.c (record_point): Don't call Fundo_boundary for first
2705 change. (Bug#731)
2706
27072008-09-22 Juanma Barranquero <lekktu@gmail.com>
2708
2709 * emacs.c (Fdaemonp): Doc fix.
2710
27112008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
2712
2713 * emacs.c (main): Place #ifdef in the proper place.
2714
27152008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
2716
2717 * emacs.c (standard_args): Add --daemon.
2718 (main): Disconnect from the terminal when --daemon is passed.
2719 (is_daemon): New variable.
2720 (Fdaemonp): New function.
2721 (syms_of_emacs): Defsubr it.
2722
27232008-09-20 Chong Yidong <cyd@stupidchicken.com>
2724
2725 * xdisp.c (get_next_display_element): Handle string display
2726 correctly when checking for the end of a box run.
2727
27282008-09-20 Glenn Morris <rgm@gnu.org>
2729
2730 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
2731 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
2732 (Frename_file): Avoid copying to trash if a rename involves
2733 a delete. (Bug#964).
2734
27352008-09-20 Eli Zaretskii <eliz@gnu.org>
2736
2737 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
2738 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
2739 frames as well as termcap frames.
2740 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
2741 get_named_tty.
2742
27432008-09-19 Eli Zaretskii <eliz@gnu.org>
2744
2745 * process.c (procfs_system_process_attributes): Fix cmdline in
2746 case /proc/PID/cmdline is empty.
2747
2748 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
2749 x_display_pixel_height.
2750
27512008-09-19 Juanma Barranquero <lekktu@gmail.com>
2752
2753 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
2754
2755 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
2756 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
2757
27582008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
2759
2760 * dispextern.h (struct it): Move line_wrap away from the middle of
2761 bitfields. Move voffset in struct iterator_stack_entry after the
2762 bitfields. Move tab_width near after another short.
2763
27642008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
2765
2766 * frame.h (struct frame): Move alpha from the middle of bitfields.
2767
2768 * window.h (struct window): Move frozen_window_start_p after the
2769 rest of the bitfields to reduce padding.
2770
27712008-09-18 Chong Yidong <cyd@stupidchicken.com>
2772
2773 * xterm.h (x_display_info): Remove `height' and `width' members.
2774
2775 * nsterm.h (ns_display_info): Remove `height' and `width' members.
2776
2777 * w32term.h (w32_display_info): Remove `height', `width',
2778 `height_in', and `width_in' members.
2779
b8ff72fa
SM
2780 * xterm.c (x_display_pixel_height, x_display_pixel_width):
2781 New functions.
aac0c6e3
MR
2782 (x_calc_absolute_position): Use them.
2783 (x_term_init): Omit removed `height' and `width' members.
2784
b8ff72fa
SM
2785 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2786 New functions.
aac0c6e3
MR
2787 (w32_read_socket, x_calc_absolute_position): Use them.
2788 (w32_initialize_display_info, w32_term_init): Omit removed members
2789 of w32_display_info.
2790
b8ff72fa
SM
2791 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
2792 New functions.
2793 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 2794
b8ff72fa
SM
2795 * xterm.c (x_display_pixel_height, x_display_pixel_width):
2796 New functions.
aac0c6e3
MR
2797 (x_calc_absolute_position): Use them.
2798 (x_term_init): Omit removed `height' and `width' members.
2799
2800 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
2801 (compute_tip_xy):
2802 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
2803 * xmenu.c (menu_position_func): Use x_display_pixel_height and
2804 x_display_pixel_width.
2805
28062008-09-18 Kenichi Handa <handa@m17n.org>
2807
2808 * composite.c (fill_gstring_header): Don't check FROM and TO here.
2809 (composition_compute_stop_pos): Fix handling of static composition.
2810 (Fcomposition_get_gstring): Check FROM and TO at first.
2811
28122008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
2813
46e722a9 2814 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
2815 mixup (YAILOM).
2816
28172008-09-17 Chong Yidong <cyd@stupidchicken.com>
2818
2819 * indent.c (Fvertical_motion): Use position reported by iterator
2820 instead of PT for determining screen motion (bug#943).
2821
28222008-09-17 Romain Francoise <romain@orebokech.com>
2823
2824 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
2825
28262008-09-17 Kenichi Handa <handa@m17n.org>
2827
2828 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
2829
2830 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
2831 if necessary.
2832
28332008-09-16 Kenichi Handa <handa@m17n.org>
2834
2835 * coding.c (make_conversion_work_buffer): Avoid calling
2836 Fget_buffer_create if it is not necessary.
2837
28382008-09-15 Martin Rudalics <rudalics@gmx.at>
2839
2840 * window.c (Fselect_window): Don't update window_select_count and
2841 use_time when norecord is not nil.
2842
28432008-09-14 Kenichi Handa <handa@m17n.org>
2844
2845 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
2846 specpdl_ptr.
2847
28482008-09-12 Kenichi Handa <handa@m17n.org>
2849
2850 * indent.c (scan_for_column): Don't handle automatic composition
2851 if the current buffer is not associated with a window.
2852
2853 * composite.c (composition_reseat_it): If the current buffer is
2854 not associated with a window, ignore the automatic composition.
2855 (find_automatic_composition): Likewise.
2856
28572008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2858
2859 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
2860 (Fgpm_mouse_stop): Use it.
2861 * termhooks.h (close_gpm): Declare.
2862 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
2863 connection if Gpm_GetEvent fails.
2864
2865 * window.c (set_window_buffer): Always preserve current-buffer.
2866
28672008-09-12 Glenn Morris <rgm@gnu.org>
2868
2869 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
2870
28712008-09-11 Glenn Morris <rgm@gnu.org>
2872
2873 * charset.c (charset-map-path): Doc fix.
2874
28752008-09-10 Kenichi Handa <handa@m17n.org>
2876
2877 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
2878
2879 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
2880 compose a grapheme cluster with the preceding base glyph.
2881
2882 * composite.c (composition_compute_stop_pos): Fix previous change.
2883 Reset cmp_it->id to -1 at first.
2884
28852008-09-10 Glenn Morris <rgm@gnu.org>
2886
2887 * Makefile.in (character.o, chartab.o): Fix config.h typo.
2888
28892008-09-09 Chong Yidong <cyd@stupidchicken.com>
2890
2891 * keyboard.c (read_key_sequence): Reapply translation maps when
2892 switching keyboards.
2893
28942008-09-09 Kenichi Handa <handa@m17n.org>
2895
2896 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
2897 characters.
2898
2899 * composite.c (FORWARD_CHAR): Fix calculation
2900 of (POSITION).pos_byte.
2901 (composition_compute_stop_pos): Limit the search of composition to
2902 at most 500 characters ahead. If we reach the limit or find a
2903 newline, set cmp_it->ch to -2 and return 0.
2904 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
2905
29062008-09-08 Kenichi Handa <handa@m17n.org>
2907
2908 * indent.c (Fvertical_motion): Be sure to set
2909 it_overshoot_expected if it.cmp_it.id is non-negative.
2910
29112008-09-07 Andreas Schwab <schwab@suse.de>
2912
2913 * callproc.c (Fcall_process): Don't hold references to string data
2914 across garbage collection. Move initialisation of new_argv down
2915 to avoid compiler bug.
2916
29172008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
2918
2919 * process.c (Fsystem_process_attributes): Doc fix.
2920
29212008-09-07 Chong Yidong <cyd@stupidchicken.com>
2922
2923 * callproc.c (Fcall_process): Canonicalize current directory name.
2924
2925 * xdisp.c (move_it_to): When moving by vpos, ensure that the
2926 iterator advances to the next line if the current line ends in a
2927 continued tab.
2928
29292008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
2930
2931 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
2932 member to point to cmp_from.
2933
2934 * xdisp.c: Doc fix for references to gidx data member.
2935
29362008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
2937
2938 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
2939
29402008-09-07 Kenichi Handa <handa@m17n.org>
2941
2942 * composite.c (FORWARD_CHAR): Check STOP after
2943 incrementing (POSITION).pos.
2944
29452008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
2946
2947 * process.c (Fsystem_process_attributes): Doc fix.
2948
29492008-09-06 Chong Yidong <cyd@stupidchicken.com>
2950
2951 * keyboard.c (Ftop_level): Doc fix.
2952
29532008-09-06 Eli Zaretskii <eliz@gnu.org>
2954
2955 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
2956 minibuffer, don't let lower part of menu invade the echo area.
2957
2958 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
2959 "char *q" to access menu text and advance through it. Revert the
2960 change that displayed ">" instead of ASCII character 0x10.
2961
29622008-09-05 Eli Zaretskii <eliz@gnu.org>
2963
2964 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
2965 toggle boxes and radio buttons on MS-DOS as well.
2966
29672008-09-05 Kenichi Handa <handa@m17n.org>
2968
2969 * composite.c (autocmp_chars): Check lookback count.
2970 (composition_compute_stop_pos): Set cmp_it->lookback.
2971 (composition_reseat_it): Check lookback count.
2972 (struct position_record): New struct.
2973 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
2974 (find_automatic_composition): New function.
2975 (composition_adjust_point): Use find_automatic_composition.
2976
2977 * dispextern.h (struct composition_it): New member lookback.
2978
29792008-09-02 Chong Yidong <cyd@stupidchicken.com>
2980
2981 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
2982 if moving by a single line.
2983
29842008-09-02 Andreas Schwab <schwab@suse.de>
2985
2986 * xterm.c (x_delete_display): Fix merge error.
2987
2988 * fileio.c (Fexpand_file_name): Remove unused variables.
2989
29902008-09-02 Eli Zaretskii <eliz@gnu.org>
2991
2992 * fileio.c (Fexpand_file_name): Copy argument `name' into local
2993 storage on all platforms, not just on DOS_NT.
2994
29952008-09-02 Jason Rumney <jasonr@gnu.org>
2996
b8ff72fa
SM
2997 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
2998 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
2999
30002008-09-01 Chong Yidong <cyd@stupidchicken.com>
3001
3002 * xfaces.c (Finternal_set_alternative_font_family_alist)
3003 (Finternal_set_alternative_font_registry_alist): Properly copy
3004 entire alist structure.
3005
30062008-09-01 Kenichi Handa <handa@m17n.org>
3007
d66c0241 3008 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 3009 representative chars of the script is a vector.
d66c0241
JB
3010 (ftfont_list): Handle the case where the representative chars of
3011 the script is a vector.
aac0c6e3
MR
3012
3013 * character.c (syms_of_character): Docstring of
3014 script-representative-chars fixed.
3015
30162008-08-31 Eli Zaretskii <eliz@gnu.org>
3017
3018 * msdos.c (BUILD_CHAR_GLYPH): New macro.
3019 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
3020 the menu. Allocate larger buffer for `text', to account for
3021 possible ^C characters.
3022
30232008-08-31 Martin Rudalics <rudalics@gmx.at>
3024
3025 * xdisp.c (prepare_menu_bars): Don't call
3026 Vwindow_size_change_functions with arg Qt.
3027
30282008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
3029
3030 * font.h (font_range):
3031 * fileio.c (report_file_error):
46e722a9
SM
3032 * composite.c (composition_update_it): Yet another int/Lisp_Object
3033 mixup (YAILOM).
aac0c6e3
MR
3034
30352008-08-30 Glenn Morris <rgm@gnu.org>
3036
3037 * data.c (Fmake_variable_frame_local): Doc fix.
3038
3039 * frame.c (Fmodify_frame_parameters): Doc fix.
3040
30412008-08-30 Eli Zaretskii <eliz@gnu.org>
3042
3043 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
3044 needed by GetTokenInformation.
3045 (w32_system_process_attributes): Check return values of all system
3046 APIs.
3047
3048 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
3049 only when the state changes.
3050 (IT_update_begin, IT_update_end): Add termscript trace.
3051
3052 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
3053 clipboard is unavailable. Set dst to NULL if it doesn't point to
3054 malloc'ed data.
3055 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
3056 passing random values to xfree.
3057
3058 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 3059 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
3060
30612008-08-29 Jason Rumney <jasonr@gnu.org>
3062
3063 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
3064
30652008-08-29 Eli Zaretskii <eliz@gnu.org>
3066
3067 * composite.c (fill_gstring_body): Avoid compiler warnings.
3068
3069 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
3070 LGLYPH_SET_CODE to avoid compiler warnings.
3071
2ae37cf0 3072 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
3073
3074 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
3075
3076 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
3077 LGLYPH_SET_CODE.
3078
30792008-08-29 Kenichi Handa <handa@m17n.org>
3080
3081 * fileio.c (report_file_error): Don't downcase the first character
3082 of errstring if it is still unibyte.
3083
30842008-08-29 Kenichi Handa <handa@m17n.org>
3085
3086 These changes are to re-implement the automatic composition so
3087 that it doesn't use text properties.
3088
3089 * Makefile.in (ftfont.o): Depend on composite.h.
3090 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
3091
3092 * character.h (Vunicode_category_table): Extern it.
3093
3094 * character.c (Vunicode_category_table): New variable.
3095 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
3096
3097 * chartab.c (optimize_sub_char_table): Perform more greedy
3098 optimization.
3099
b8ff72fa
SM
3100 * composite.h (enum composition_method):
3101 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
3102 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
3103 (Vcomposition_function_table): Extern it.
3104 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
3105 (composition_gstring_put_cache, composition_gstring_from_id)
3106 (composition_gstring_p, composition_gstring_width)
3107 (composition_compute_stop_pos, composition_reseat_it)
3108 (composition_update_it, composition_adjust_point): Extern them.
3109 (Fcomposition_get_gstring): EXFUN it.
3110
d66c0241 3111 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
3112 (Vcomposition_function_table)
3113 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
3114 (gstring_hash_table, gstring_work, gstring_work_headers):
3115 New variables.
aac0c6e3
MR
3116 (gstring_lookup_cache, composition_gstring_put_cache)
3117 (composition_gstring_from_id, composition_gstring_p)
3118 (composition_gstring_width, fill_gstring_header)
3119 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
3120 (composition_reseat_it, composition_update_it)
b8ff72fa 3121 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
3122 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
3123 and gstring_work_headers. DEFVAR_LISP composition-function-table.
3124 Defsubr compostion_get_gstring.
3125
3126 * dispextern.h (struct glyph): New union u.cmp. Delete the member
3127 cmp_id.
3128 (struct glyph_string): Delete the member gidx. New members
3129 cmp_id, cmp_from, and cmp_to.
3130 (enum it_method): Delete GET_FROM_COMPOSITION.
3131 (struct composition_it): New struct.
3132 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
3133 Delete c, len, cmp_id, cmp_len in u.comp.
3134
3135 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 3136 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 3137 (enum lglyph_indices): Likewise.
b8ff72fa 3138 (font_range): Adjust extern.
aac0c6e3
MR
3139 (font_fill_lglyph_metrics): Extern it.
3140
3141 * font.c (QCf): New variable.
3142 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
3143 (font_prepare_composition): Delete this function.
3144 (font_range): Type and arguments changed.
3145 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
3146 (font_fill_lglyph_metrics): New function.
b8ff72fa 3147 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 3148 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
3149 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
3150 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
3151
3152 * fontset.h (font_for_char): Extern it.
3153
3154 * fontset.c (font_for_char): New function.
3155
3156 * ftfont.c: Include composite.h.
3157 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 3158 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
3159
3160 * indent.c: Include composite.h and dispextern.h.
3161 (check_composition): Delete this function.
3162 (scan_for_column): Handle composition by
3163 composition_compute_stop_pos, composition_reseat_it, and
3164 composition_update_it.
3165 (compute_motion): Likewise.
3166 (Fvertical_motion): Fix checking of composition.
3167
3168 * keyboard.c (adjust_point_for_property): Check composition by
3169 composition_adjust_point.
3170
b8ff72fa 3171 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
3172 struct glyph_string.
3173
b8ff72fa
SM
3174 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
3175 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
3176 struct glyph.
3177 (produce_composite_glyph): Likewise.
3178
b8ff72fa
SM
3179 * w32term.c (x_draw_composite_glyph_string_foreground):
3180 Adjust for the change of struct glyph_string.
aac0c6e3
MR
3181 (x_draw_glyph_string): Likewise.
3182
3183 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
3184 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
3185
3186 * xdisp.c: Include font.h.
3187 (it_props): Delete the entry for Qauto_composed.
3188 (init_iterator): Initialize it->cmp_it.id to -1.
3189 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 3190 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
3191 (handle_auto_composed_prop): Delete it.
3192 (handle_composition_prop): Handle only static composition.
3193 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
3194 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 3195 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
3196 (pop_it): Likewise.
3197 (get_next_element): Delete next_element_from_composition.
3198 (CHAR_COMPOSED_P): New macro.
3199 (get_next_display_element): For automatic composition, get a face
3200 from the font in the glyph-string.
3201 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 3202 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
3203 (next_element_from_string): Check if the character at the current
3204 position is composed by CHAR_COMPOSED_P.
3205 (next_element_from_buffer): Likewise.
d66c0241
JB
3206 (next_element_from_composition): Adjust for the change of struct it.
3207 Update it->cmp_it.
b8ff72fa
SM
3208 (dump_glyph): Adjust for the change of struct glyph.
3209 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
3210 it and struct glyph. Don't handle automatic composition here.
3211 (fill_gstring_glyph_string): New function.
3212 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 3213 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
3214 (BUILD_GSTRING_GLYPH_STRING): New macro.
3215 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
3216 automatic composition.
b8ff72fa 3217 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 3218 struct glyph.
b8ff72fa 3219 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 3220
b8ff72fa 3221 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
3222 the change of struct glyph_string.
3223 (x_draw_glyph_string): Likewise.
3224
32252008-08-29 Glenn Morris <rgm@gnu.org>
3226
3227 * buffer.c (word-wrap): Doc fix.
3228 * xdisp.c (truncate-partial-width-windows): Doc fix.
3229 Increase default to 50.
3230
32312008-08-29 Chong Yidong <cyd@stupidchicken.com>
3232
3233 * xdisp.c (update_tool_bar_unwind): New function.
3234 (update_tool_bar): Temporarily set selected frame before building
3235 tool-bar items.
3236
32372008-08-28 Michael Albinus <michael.albinus@gmx.de>
3238
3239 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
3240 snprintf, respectively.
3241 (xd_append_arg): Convert strings with Fstring_make_unibyte.
3242
32432008-08-28 Chong Yidong <cyd@stupidchicken.com>
3244
3245 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
3246 LDFLAGS to GNUstep CC invocation.
3247
32482008-08-27 Chong Yidong <cyd@stupidchicken.com>
3249
3250 * indent.c (Fvertical_motion): Revert last change. Handle the
3251 general case where we are moving forward, and PT spans multiple
3252 screen lines.
3253
3254 * eval.c (find_handler_clause): Temporarily increase
3255 max-lisp-eval-depth while printing the backtrace buffer, to
3256 guarantee that help-mode code can run.
3257
32582008-08-27 Eli Zaretskii <eliz@gnu.org>
3259
3260 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
3261 colors under -rv.
3262 (IT_set_frame_parameters): Don't swap foreground and background
3263 colors if `(reverse . t)' is present in the frame properties.
3264 (internal_terminal_init): Call init_frame_faces only for the
3265 initial frame.
3266
32672008-08-27 Andreas Schwab <schwab@suse.de>
3268
3269 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
3270
32712008-08-27 Andreas Schwab <schwab@suse.de>
3272
3273 * search.c (search_buffer): Set char_base to zero only at the end.
3274
32752008-08-27 Kenichi Handa <handa@m17n.org>
3276
b8ff72fa 3277 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
3278
32792008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
3280
3281 * xterm.c (x_term_init): Temporarily hide the partially
3282 initialized terminal while calling vendor-specific-keysyms.
3283
32842008-08-26 Eli Zaretskii <eliz@gnu.org>
3285
3286 * msdos.c (internal_terminal_init): Most initializations done only
3287 once, especially initial_screen_colors[] and termscript open.
3288
32892008-08-26 Chong Yidong <cyd@stupidchicken.com>
3290
3291 * eval.c (Fcondition_case): Doc fix.
3292
3293 * widgetprv.h (EmacsFramePart): Change font member to the new font
3294 struct.
3295
3296 * widget.c: Include character.h and font.h for XSETFONT.
3297 (setup_frame_gcs): Compute X font id from font struct, just once.
3298
32992008-08-26 Eli Zaretskii <eliz@gnu.org>
3300
3301 * term.c (get_named_tty): Fix last change.
3302
33032008-08-26 Chong Yidong <cyd@stupidchicken.com>
3304
3305 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 3306 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
3307
33082008-08-25 Eli Zaretskii <eliz@gnu.org>
3309
3310 * frame.c (do_switch_frame): Mark previously displayed frame as
3311 obscured for FRAME_MSDOS_P frames as well.
3312
33132008-08-24 Eli Zaretskii <eliz@gnu.org>
3314
3315 * frame.c (make_terminal_frame): Initialize f->terminal,
3316 f->terminal->reference_count, and scroll bars on MS-DOS as well.
3317 Set the top frame to newly created frame.
3318 (Fmake_terminal_frame): Reuse the_only_display_info.
3319
3320 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
3321 estimating available memory.
3322
b97439ce 33232008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
3324
3325 * nsterm.m (ns_draw_window_cursor): Don't call
3326 NSDisableScreenUpdates and NSEnableScreenUpdates on
3327 non-NS_IMPL_COCOA systems.
3328
33292008-08-23 Andreas Schwab <schwab@suse.de>
3330
3331 * process.c (procfs_system_process_attributes): Fix use of
3332 uninitialized variables.
3333
33342008-08-23 Eli Zaretskii <eliz@gnu.org>
3335
3336 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
3337
3338 * dispnew.c (init_display): Remove MS-DOS specific conditions for
3339 calling tty-set-up-initial-frame-faces.
3340
b8ff72fa
SM
3341 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
3342 Allow MSDOS frames along with X frames.
aac0c6e3
MR
3343
3344 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
3345 addition to output_termcap.
3346
3347 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
3348
3349 * termchar.h (FRAME_TTY): Support output_msdos_raw.
3350 (struct tty_display_info) [MSDOS]: Add fields related to mouse
3351 highlight.
3352
3353 * process.c [!subprocesses]: Define QCname.
3354 (syms_of_process): Intern and staticpro it.
3355
3356 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
3357 Adjust for changes in encoding/decoding routines.
3358 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
3359 encode_coding and decode_coding.
3360
b8ff72fa 3361 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
3362
3363 * dosfns.c: Include frame.h before termhooks.h.
3364 (dos_cleanup): Use CURTTY ()->termscript instead of a global
3365 variable termscript.
3366
3367 * s/msdos.h (USER_FULL_NAME): Define.
3368 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
3369
3370 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
3371 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
3372 pw->pw_gecos.
3373
3374 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
3375 SELECTED_FRAME as additional (1st) argument.
3376 (tty_read_avail_input): Handle output_msdos_raw in
3377 addition to output_termcap.
3378
3379 * msdos.c: Include frame.h before termhooks.h.
3380 (mouse_on, mouse_off, mouse_moveto, mouse_init)
3381 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
3382 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
3383 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
3384 (IT_set_terminal_modes, IT_reset_terminal_modes)
3385 (IT_set_frame_parameters): Use tty->termscript instead of a global
3386 variable termscript.
3387 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
3388 global variable terminal_coding. Don't refer to
3389 Vnonascii_translation_table.
3390 (internal_terminal_init): Set Vwindow_system in current_kboard.
3391 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
3392 Announce date and time of session start, if termscript is open.
3393 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
3394 term.c:init_tty). Open termscript only of not already open.
3395 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
3396 here instead of dos_ttraw. Don't initialize display if this is an
3397 initial tty. Don't set FRAME_FONT.
3398 (Vwindow_system_version): Bump to 23.
3399 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
3400 is available, set up mouse_position_hook.
3401 (dos_ttraw, IT_set_terminal_modes): If called with initial
3402 terminal, do nothing.
3403 (IT_set_frame_parameters): Handle the Qtty_type frame
3404 parameter by calling internal_terminal_init.
3405 (dos_set_window_size, show_mouse_face)
3406 (clear_mouse_face, IT_note_mode_line_highlight)
3407 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
3408 (dos_rawgetc): Use tty_display_info instead of x_display_info.
3409 (initialize_msdos_display): New function.
3410 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
3411 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
3412 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
3413 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 3414 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
3415 (request_sigio, unrequest_sigio): Don't define, now defined on
3416 sysdep.c.
3417 (IT_write_glyphs): Rewrite to use encode_terminal_code.
3418
3419 * term.c [MSDOS]: Include msdos.h.
3420 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
3421 conditional to DOS_NT. Allow only one call to this function in a
3422 session. Don't allocate a new struct tty_display_info; instead,
3423 reuse the_only_display_info. Call get_tty_size to get screen
3424 dimensions. Call init_baud_rate to set bad_rate.
3425 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
3426 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 3427 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
3428 (get_tty_terminal, get_named_tty, Ftty_type)
3429 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
3430 output_termcap.
b8ff72fa
SM
3431 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
3432 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 3433 only when subprocesses are supported.
aac0c6e3
MR
3434
3435 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
3436 f->output_data.x.
3437 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
3438 terminal devices.
3439
5582fbc7 3440 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
3441 x_output.
3442 (FRAME_FONT): Use output_data.tty.
3443 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
3444 (struct x_display_info): Rename from display_info. Update all users in
3445 msdos.c.
aac0c6e3 3446 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 3447 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
3448 (dos_ttraw): Update prototype.
3449
3450 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
3451 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
3452
34532008-08-23 Jason Rumney <jasonr@gnu.org>
3454
3455 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
3456 (fn_TIFFSetDirectory): New library function used.
3457 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
3458 (tiff_load): Use :index to select among multiple images. Set count
3459 property when multiple images exist.
3460 (gif_format): Use :index, not :image.
3461
34622008-08-23 Chong Yidong <cyd@stupidchicken.com>
3463
3464 * xdisp.c (try_scrolling): Check INT_MAX instead of
3465 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
3466 to obtain INT_MAX.
3467
34682008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
3469
3470 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
3471
34722008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
3473
3474 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
3475 GNUstep library location.
3476
34772008-08-21 Chong Yidong <cyd@stupidchicken.com>
3478
3479 * xfaces.c (x_update_menu_appearance): Check validity of menu font
3480 before using it.
3481
3482 * puresize.h (BASE_PURESIZE): Increase to 1250000.
3483
34842008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3485
3486 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
3487 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
3488 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
3489 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
3490 (EmacsApp-cursor_blink_handler): Remove declaration.
3491 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
3492 match 01 Feb 2008 changes in xterm.c.
3493 (ns_read_socket): Add cast to avoid warning.
3494 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
3495 GNUstep.
3496
34972008-08-20 Chong Yidong <cyd@stupidchicken.com>
3498
3499 * xselect.c (x_get_foreign_selection): Return nil if desired
3500 selection could not be obtained, instead of signalling an error.
3501
35022008-08-20 David Reitter <david.reitter@gmail.com>
3503
3504 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
3505 * nsterm.m: Remove ns-specific code for cursor blinking.
3506 (ns_draw_window_cursor): Clear cursor properly rather than
3507 redrawing the area. Respect width of bar cursors.
3508 These changes enable the use of generic blink-cursor-mode and
3509 generic cursor types in NS and support smooth cursor movements (do
3510 not blink off after command).
3511 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
3512 Nextstep, too.
3513
35142008-08-19 Kenichi Handa <handa@m17n.org>
3515
3516 * font.c (Vfont_log_deferred): New variable.
3517 (font_add_log): Check Vfont_log_deferred.
3518 (font_deferred_log): New function.
3519
3520 * font.h (font_deferred_log): Extern it.
3521
3522 * fontset.c (reorder_font_vector): Use encoding charset of fonts
3523 for sorting.
3524 (face_for_char): Use deferred log.
3525
35262008-08-18 Kenichi Handa <handa@m17n.org>
3527
3528 * fontset.c (face_for_char): Add font log.
3529
3530 * font.c (font_add_log): Add the font properties :script, :lang,
3531 and :otf in the log.
3532
35332008-08-17 Chong Yidong <cyd@stupidchicken.com>
3534
3535 * xdisp.c: Remove dead code.
3536 (handle_invisible_prop, next_overlay_string): Defer call to
3537 setup_for_ellipsis.
3538 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
3539
35402008-08-15 Chong Yidong <cyd@stupidchicken.com>
3541
3542 * xfaces.c (lookup_derived_face): Properly handle possible zero
3543 return value of get_lface_attributes.
3544 (merge_faces): Don't tell lookup_derived_face to signal an error
3545 if face is not found.
3546
3547 * dired.c (Fdirectory_files): Doc fix.
3548
3549 * process.c (make_process): Initialize kill_without_query struct
3550 member.
3551
35522008-08-15 Eli Zaretskii <eliz@gnu.org>
3553
3554 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
3555 Alternative calculation of totphys for Visual Studio 6.
3556
3557 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
3558
3559 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
3560 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
3561 All users changed.
3562 (stat): Only root directory passed to GetDriveType. Allow RAM
3563 disk as well as local fixed disk when w32-get-true-file-attributes
3564 is set to `local'.
3565 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
3566 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
3567 (w32_cached_id, w32_add_to_cache): New functions.
3568 (get_name_and_id): Look account names in the cache before calling
3569 lookup_account_sid.
3570 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
3571 New initialization flags.
3572 (globals_of_w32): Initialize them to zero.
3573 (w32_system_process_attributes): Use w32_cached_id and
3574 w32_add_to_cache.
3575
35762008-08-14 Lawrence Mitchell <wence@gmx.li>
3577
3578 * lread.c (Fread_char, Fread_char_exclusive): If no character
3579 event is read before timeout is reached, return nil, rather than
3580 converting to a number.
3581
35822008-08-14 Chong Yidong <cyd@stupidchicken.com>
3583
3584 * fns.c (use_dialog_box): Doc fix.
3585
3586 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
3587 on OS X.
3588
35892008-08-13 Chong Yidong <cyd@stupidchicken.com>
3590
3591 * frame.c (Qns_parse_geometry): New var.
3592 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
3593
35942008-08-11 Chong Yidong <cyd@stupidchicken.com>
3595
3596 * xdisp.c (x_produce_glyphs): Handle the case when font has no
3597 space character in calculating tabs.
3598
35992008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
3600
3601 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
3602
36032008-08-10 Glenn Morris <rgm@gnu.org>
3604
3605 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
3606 silence gcc "limited range of data type" warnings in some
3607 make_fixnum_or_float calls.
3608
36092008-08-09 Eli Zaretskii <eliz@gnu.org>
3610
3611 * w32.c (w32_system_process_attributes): If the process does not
3612 exist, return nil.
3613
3614 * w32.c: Include thelp32.h, psapi.h and coding.h.
3615 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
3616 declarations.
3617 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
3618 (Process32Next_Proc): New typedefs.
3619 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
3620 (g_b_init_process32_next, g_b_init_open_thread_token)
3621 (g_b_init_impersonate_self, g_b_init_revert_to_self)
3622 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
3623 (g_b_init_get_process_working_set_size)
3624 (g_b_init_global_memory_status_ex): New static variables.
3625 (globals_of_w32): Initialize them.
3626 (create_toolhelp32_snapshot, process32_first, process32_next)
3627 (open_thread_token, impersonate_self, revert_to_self)
3628 (get_process_memory_info, get_process_working_set_size)
3629 (global_memory_status, global_memory_status_ex): New wrapper
3630 functions.
3631 (w32_list_system_processes, w32_system_process_attributes)
3632 (enable_privilege, restore_privilege, ltime, process_times):
3633 New functions.
3634 (convert_time_raw): New function.
3635 (convert_time): Remove conversion of FILETIME into time in 100
3636 nsec units, call convert_time_raw instead.
3637
3638 * process.h (w32_list_system_processes, w32_system_process_attributes):
3639 Add prototypes.
3640 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
3641 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
3642 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
3643 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
3644
3645 * process.c (Fsystem_process_attributes): Doc fix.
3646
36472008-08-08 Chong Yidong <cyd@stupidchicken.com>
3648
3649 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
3650 a continued multi-char glyph; if so, advance to the actual glyph.
3651
36522008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
3653
3654 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
3655
3656 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
3657 (.m.o): Use it.
3658 * config.in: Regenerate.
3659
36602008-08-07 Chong Yidong <cyd@stupidchicken.com>
3661
3662 * xdisp.c (redisplay_window): Revert last change.
3663 (try_window): Check bottom scroll margin too.
3664
36652008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3666
3667 * config.in: Regenerate.
3668
3669 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
3670 -list-load-path-shadows'.
3671 (nsgui.h): Reduce number of things depending on it.
3672
36732008-08-06 Chong Yidong <cyd@stupidchicken.com>
3674
3675 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
3676 instead of window-end which does the wrong thing at eob.
3677 (try_cursor_movement): Minor optimization.
3678 (redisplay_window): If scroll margin is defined, don't assume
3679 window doesn't need scrolling.
3680
36812008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3682
3683 * config.in: Regenerate.
3684
3685 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
3686 (mostlyclean): Don't delete *.d under NS.
3687
3688 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
3689
36902008-08-06 Kenichi Handa <handa@m17n.org>
3691
3692 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
3693
36942008-08-06 Andreas Schwab <schwab@suse.de>
3695
3696 * config.in: Regenerate.
3697
36982008-08-05 Chong Yidong <cyd@stupidchicken.com>
3699
3700 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
3701 forcing a window start.
3702
3703 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
3704 (auto_save_1): Update modtime when auto-save-list-file-name is on.
3705
37062008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3707
3708 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
3709 argument.
3710
37112008-08-05 Juanma Barranquero <lekktu@gmail.com>
3712
3713 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
3714 <scroll-down-aggressively, before-change-functions>:
3715 <after-change-functions>: Reflow docstrings.
3716
37172008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3718 Ken Raeburn <raeburn@gnu.org>
3719
3720 Dock menu customization, based on a patch by Ken Raeburn, plus some
3721 other fixes.
3722 * nsmenu.m (dockMenu): New variable.
3723 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
3724
3725 * nsterm.h (dockMenu): Declare.
3726
3727 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
3728 (ns_term_init): Initialize dockMenu.
3729 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
3730 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
3731 left.
3732
3733 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
3734
37352008-08-04 Chong Yidong <cyd@stupidchicken.com>
3736
3737 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
3738
3739 * config.in: Regenerate.
3740
37412008-08-04 Seiji Zenitani <zenitani@mac.com>
3742
3743 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
3744
37452008-08-04 Chong Yidong <cyd@stupidchicken.com>
3746
3747 * nsterm.h (find_and_call_menu_selection): Fix prototype.
3748
37492008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3750
3751 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
3752
3753 * keyboard.h: Comment an #endif.
3754
3755 * lisp.h (have_menus_p): Adjust comment.
3756
3757 * menu.c (find_and_return_menu_selection): Fix comparison with
3758 client_data.
3759
3760 * nsmenu.m (popup_activated_flag): New variable.
3761 (popup_activated): New function.
3762 (menu-or-popup-active-p): New exported lisp definition.
3763 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
3764 when popup done.
3765 (ns_popup_dialog): Set popup_activated_flag.
3766
3767 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
3768 version for GNUstep (handled by conditional typedef in nsterm.m).
3769 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
3770 in rgb.txt).
3771
3772 * process.c (init_process): Use DARWIN_OS, not DARWIN.
3773
3774 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
3775
3776 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
3777
3778 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
3779 shortcircuit if popup_activated like GTK and X toolkit.
3780
3781 * m/inter386.h: Change DARWIN to DARWIN_OS.
3782
3783 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
3784 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
3785 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
3786 comment on NO_SOCK_SIGIO.
3787
37882008-08-03 Chong Yidong <cyd@stupidchicken.com>
3789
3790 * nsterm.m (windowDidResize): Remove stopModal call.
3791
37922008-08-03 Andreas Schwab <schwab@suse.de>
3793
3794 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
3795 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
3796
37972008-08-02 Chong Yidong <cyd@stupidchicken.com>
3798
3799 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
3800 Don't use uninitialized pointer variable when using getrlimit.
3801
38022008-08-02 Jason Rumney <jasonr@gnu.org>
3803
3804 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
3805
38062008-08-02 Eli Zaretskii <eliz@gnu.org>
3807
3808 * alloc.c (NSTATICS): Bump to 0x640.
3809
3810 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
3811
3812 * lisp.h: Add prototype for directory_files_internal.
3813
3814 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
3815 New functions.
3816 (syms_of_process): Defsubr them. Add initializations for various
3817 Q* symbols used in procfs_system_process_attributes.
3818 (procfs_list_system_processes, procfs_system_process_attributes)
3819 [HAVE_PROCFS]: New functions.
3820 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
3821 (procfs_get_total_memory): New functions.
3822
38232008-08-01 Juanma Barranquero <lekktu@gmail.com>
3824
3825 * xfaces.c (Fx_load_color_file): Fix previous change;
3826 it is #ifdef WINDOWSNT, not WINDOWS_NT.
3827
38282008-08-01 Michael Albinus <michael.albinus@gmx.de>
3829
3830 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
3831
38322008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3833
3834 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
3835
38362008-08-01 Chong Yidong <cyd@stupidchicken.com>
3837
3838 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
3839
3840 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
3841 define NSApplicationDelegateReplySuccess.
3842 (EmacsView -converstationIdentifier): Use long instead of
3843 NSInteger for GNUstep, since it doesn't have NSInteger.
3844
3845 * xmenu.c: Revert last change.
3846
3847 * keyboard.h: Fix last change.
3848
38492008-08-01 Juanma Barranquero <lekktu@gmail.com>
3850
3851 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
3852 on Windows.
3853
38542008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3855
3856 Warning clearing and clean-up in NS port.
3857 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
3858 Add prototypes.
3859 * nsgui.h (FACE_DEFAULT): Remove, unused.
3860 (XGCValues): Change colors to unsigned long.
3861 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
3862 nsterm.m.
3863 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
3864 (ns_list_fonts): Remove, unused.
3865 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
3866 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
3867 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
3868 (nsfont_draw): Compare face colors to 0, not nil.
3869 * nsmenu.m (struct widget_value): Drop unneeded declaration.
3870 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
3871 (-addSubmenuWithTitle:): Use NSMenuItem class.
3872 (ns_popup_menu): Use NO, not NULL, for enabled setting.
3873 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
3874 (ns_clip_to_row): Make gc arg a BOOL.
3875 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
3876 ns_clip_to_row() call.
3877 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
3878 used). Cast FRAME_FONT assignments.
3879 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
3880 (ns_string_to_lispmod): Change arg to const char.
3881 (ns_term_init): Use NSMenuItem class.
3882 (EmacsApp -openFile:): Move to different section of file.
3883 (EmacsApp -application:openFiles:): Don't return a value, call
3884 -replyToOpenOrPrint:.
3885 (EmacsView -keyDown:): Fix up cast.
3886 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
3887 (EmacsView -menuDown:): Cast tag in call to
3888 find_and_call_menu_selection().
3889 (ns_list_fonts): Remove, unused.
3890 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
3891 (ns_fontname_to_xlfd): Make static.
3892 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
3893 Remove prototypes (now in keyboard.h).
3894 (next_menubar_widget_id): Remove, unused.
3895 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
3896 Remove prototypes (now in keyboard.h).
3897 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
3898
38992008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
3900
3901 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
3902 (floatfns.o): Depend on syssignal.h.
3903 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
3904
3905 * systty.h: Fix previous change that removed BSD_TERMIOS.
3906 Add comments to #ifdefs.
3907
39082008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3909
3910 * w32fns.c (w32-load-color-file): Remove.
3911 (x-open-connection): Use renamed Fx_load_color_file.
3912 * xfaces.c (x-load-color-file): Add.
3913 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
3914 Emacs.clr.
3915 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
3916
39172008-07-31 Michael Albinus <michael.albinus@gmx.de>
3918
3919 * dbusbind.c (Fdbus_call_method_asynchronously)
3920 (Fdbus_method_error_internal): New defuns.
3921 (xd_read_message): Handle also reply messages.
3922 (Vdbus_registered_functions_table): Extend docstring.
3923
39242008-07-31 Juanma Barranquero <lekktu@gmail.com>
3925
3926 * keyboard.c (gobble_input): Fix previous change.
3927
39282008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
3929
3930 * bitmaps/README:
3931 * xfns.c:
3932 * termcap.c:
3933 * term.c:
3934 * syswait.h:
3935 * systty.h:
3936 * systime.h:
3937 * syssignal.h:
3938 * sysdep.c:
3939 * process.h:
3940 * process.c:
3941 * print.c:
3942 * ndir.h:
3943 * lread.c:
3944 * keyboard.c:
3945 * getpagesize.h:
3946 * floatfns.c:
3947 * fileio.c:
3948 * emacs.c:
3949 * doc.c:
3950 * dispnew.c:
3951 * dired.c:
3952 * data.c:
3953 * callproc.c:
3954 * buffer.c:
3955 * README:
3956 * Makefile.in:
3957 * s/template.h:
3958 * s/msdos.h:
3959 * m/vax.h: Remove VMS support.
3960 * s/vms.h:
3961 * vlimit.h:
3962 * uaf.h:
3963 * temacs.opt:
3964 * param.h:
3965 * ioctl.h: Remove file.
3966
39672008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
3968
3969 * s/ms-w32.h (MULTI_KBOARD): Remove.
3970 * xterm.c:
3971 * xselect.c:
3972 * xfns.c:
3973 * window.c:
3974 * w32term.c:
3975 * w32fns.c:
3976 * terminal.c:
3977 * termhooks.h:
3978 * term.c:
3979 * sysdep.c:
3980 * keyboard.h:
3981 * keyboard.c:
3982 * frame.h:
3983 * frame.c:
3984 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
3985 * config.in: Regenerate.
3986
39872008-07-30 Jason Rumney <jasonr@gnu.org>
3988
3989 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
3990
3991 * w32font.c (w32font_encode_char): Leave as unicode if in range.
3992 (w32font_open_internal): Get unicode version of textmetrics.
3993 Don't enable or disable glyph indices here.
3994 (w32font_open): Disable use of glyph indices.
3995
3996 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
3997
39982008-07-30 Chong Yidong <cyd@stupidchicken.com>
3999
4000 * minibuf.c (Vread_buffer_function): Doc fix.
4001
40022008-07-30 John Paul Wallington <jpw@pobox.com>
4003
4004 * minibuf.c (read_buffer_completion_ignore_case): New var.
4005 (Fread_buffer): Use it.
4006
40072008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
4008
4009 * systty.h (sensemode): Remove empty #if. Remove reference to
4010 BSD_TERMIOS, unused.
4011
4012 * sysdep.c: Remove reference to DGUX.
4013 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
4014
4015 * config.in: Regenerate.
4016
40172008-07-30 Jason Rumney <jasonr@gnu.org>
4018
4019 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
4020
40212008-07-29 Jason Rumney <jasonr@gnu.org>
4022
4023 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
4024 is populated.
4025 (uniscribe_encode_char): Always use uniscribe.
4026 Avoid using context if cache is populated.
4027
40282008-07-29 Jan Djärv <jan.h.d@swipnet.se>
4029
4030 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
4031 open menu.
4032
4033 * gtkutil.c (menu_nav_ended): Remove.
4034 (create_menus): Remove signal connect for menu_nav_ended.
4035
40362008-07-28 Chong Yidong <cyd@stupidchicken.com>
4037
4038 * xdisp.c (redisplay_window): Check return value of
4039 compute_window_start_on_continuation_line before forcing a window
4040 start.
4041
40422008-07-28 Jason Rumney <jasonr@gnu.org>
4043
4044 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
4045
4046 * w32term.c (w32_enable_unicode_output, cleartype_active):
4047 Remove obsolete display options.
4048 (x_draw_glyph_string_background): Don't use old cleartype_active
4049 workaround.
4050 (w32_initialize): Remove cleartype_active initialization.
4051 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
4052
40532008-07-28 Andreas Schwab <schwab@suse.de>
4054
4055 * lisp.h (init_weak_hash_tables, syms_of_font)
4056 (xd_read_queued_messages, syms_of_dbusbind): Declare.
4057 (remove_hash_entry): Don't declare.
4058 * eval.c (maybe_call_debugger): Make static and move before use.
4059 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
4060 * xdisp.c: Include "gtkutil.h" if USE_GTK.
4061 * xterm.h (x_set_frame_alpha): Declare.
4062
40632008-07-28 Jan Djärv <jan.h.d@swipnet.se>
4064
4065 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
4066 (create_menus): Connect selection-done to menu_nav_ended.
4067
40682008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4069
4070 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
4071 Set Vx_resource_name to a fallback. Replace read of 'buffered'
4072 parameter with read of 'alpha' one.
4073 (Qns_frame_parameter): Remove.
5582fbc7 4074 * nsselect.m (selection-coding-system)
aac0c6e3
MR
4075 (next-selection-coding-system, Vselection_coding_system)
4076 (Vnext_selection_coding_system): Drop.
4077
40782008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4079
4080 * nsfns.m (do-applescript, do_applescript): Rename to
4081 ns-do-applescript, ns_do_applescript, and move within file.
4082
40832008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4084
4085 Remove support for Mac Carbon.
4086 * mactoolbox.c:
4087 * macterm.h:
4088 * macterm.c:
4089 * macselect.c:
4090 * macmenu.c:
4091 * macgui.h:
4092 * macfns.c:
4093 * mac.c: Remove file.
4094 * s/darwin.h:
4095 * m/intel386.h:
4096 * xfaces.c:
4097 * xdisp.c:
4098 * window.c:
4099 * tparam.c:
4100 * termhooks.h:
4101 * termcap.c:
4102 * term.c:
4103 * syssignal.h:
4104 * sysselect.h:
4105 * sysdep.c:
4106 * process.c:
4107 * lread.c:
4108 * lisp.h:
4109 * keyboard.c:
4110 * image.c:
4111 * fringe.c:
4112 * frame.h:
4113 * frame.c:
4114 * fontset.c:
4115 * font.h:
4116 * font.c:
4117 * fns.c:
4118 * fileio.c:
4119 * emacs.c:
4120 * dispnew.c:
4121 * dispextern.h:
4122 * config.in:
4123 * atimer.c:
2ae37cf0 4124 * Makefile.in: Remove code for Carbon.
aac0c6e3 4125
f0131492 41262008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
4127
4128 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
4129
41302008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4131
4132 * macterm.h (kCGBitmapByteOrder32Host): New define for
4133 non-universal SDKs.
4134
4135 * image.c (mac_create_cg_image_from_image, image_load_image_io)
4136 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
4137
4138 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
4139 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
4140
41412008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
4142
4143 * w32inevt.c: Include dispextern.h.
4144
41452008-07-26 Andreas Schwab <schwab@suse.de>
4146
4147 * print.c (print_object): Fix off-by-one in last change.
4148
41492008-07-25 Juanma Barranquero <lekktu@gmail.com>
4150
4151 * term.c (syms_of_term): Don't initialize default_orig_pair,
4152 default_set_foreground and default_set_background on Windows.
4153
41542008-07-25 Jason Rumney <jasonr@gnu.org>
4155
4156 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
4157 ScriptItemize. Clean up return value checking. Remove unused
4158 variables.
4159 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
4160 shaping engine.
4161
4162 * w32font.c (w32font_has_char): Handle the case where we can't
4163 determine the script for a character.
4164
41652008-07-25 Chong Yidong <cyd@stupidchicken.com>
4166
4167 * term.c (syms_of_term): Initialize default_orig_pair,
4168 default_set_foreground, and default_set_background.
4169
4170 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
4171 clash (bug#86).
4172 (getloadavg): Callers changed.
4173
4174 * image.c (svg_load_image): Fix last change.
4175 (svg_load_image): Use rsvg_handle_get_dimensions to check that
4176 image size is valid. Use g_object_unref instead of deprecated
4177 rsvg_handle_free to free rsvg handle.
4178 (x_from_xcolors): Don't initialize pixmap (silence compiler).
4179
41802008-07-25 Jason Rumney <jasonr@gnu.org>
4181
4182 * w32font.c (w32font_encode_char): Encode characters outside BMP as
4183 surrogates before looking up glyph index.
4184 (w32font_text_extents): Encode as surrogates if falling back to
4185 functions that need UTF-16 wide chars.
4186
4187 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
4188 BMP as surrogates before looking up glyph index.
4189
41902008-07-25 Chong Yidong <cyd@stupidchicken.com>
4191
4192 * image.c (svg_load_image): Check for failure in return value of
4193 rsvg_handle_get_pixbuf. Free rsvg handle when done.
4194
41952008-07-25 Jason Rumney <jasonr@gnu.org>
4196
4197 * w32font.c (Fx_select_font): Reverse sense of second arg.
4198
41992008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
4200
4201 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
4202 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
4203
4204 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
4205 (PURESIZE): Use it.
4206
42072008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
4208
4209 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
4210 * m/alpha.h (TEXT_END):
4211 * m/ibmrs6000.h (TEXT_END):
4212 * m/macppc.h (TEXT_END):
4213 * s/darwin.h (TEXT_END):
4214 * s/msdos.h (TEXT_END): Remove, unused.
4215 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
4216 * s/cygwin.h: Remove comment.
4217
4218 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
4219 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
4220 * m/intel386.h (DOT_GLOBAL_START):
4221 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
4222 (USG): Remove, file not used on USG platforms.
4223
4224 * Makefile.in (HAVE_X11): Remove empty #else.
4225
42262008-07-24 Andreas Schwab <schwab@suse.de>
4227
4228 * fileio.c (Finsert_file_contents): Properly adjust undo list
4229 after format conversion.
4230
42312008-07-24 Jan Djärv <jan.h.d@swipnet.se>
4232
4233 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
4234 (menu_nav_ended): Remove.
4235 (create_menus): Remove signal connect for menu_nav_ended.
4236 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
4237 create_menus.
4238 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
4239
42402008-07-23 Jason Rumney <jasonr@gnu.org>
4241
4242 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
4243 with opened font.
4244 (w32font_open): Set font type to gdi.
4245
4246 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
4247
42482008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
4249
4250 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
4251 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
4252 defines it.
4253 * unexec.c (ADDR_CORRECT): Define unconditionally.
4254
4255 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
4256
4257 * unexec.c: Remove code depending on !COFF and USG, the file is
4258 not used for such systems.
4259
4260 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
4261 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
4262 (LD_SWITCH_SYSTEM_1): Remove, update users.
4263
4264 * s/darwin.h (DATA_END):
4265 * m/intel386.h (DATA_END):
4266 * m/ibmrs6000.h (DATA_END):
4267 * m/alpha.h (DATA_END): Remove, unused.
4268
4269 * config.in: Regenerate.
4270 * s/ms-w32.h (subprocesses): Define unconditionally.
4271 * s/template.h (subprocesses): Update comment.
4272 * s/vms.h (subprocesses):
4273 * s/usg5-4.h (subprocesses):
4274 * s/hpux10-20.h (subprocesses):
4275 * s/gnu-linux.h (subprocesses):
4276 * s/cygwin.h (subprocesses):
4277 * s/bsd-common.h (subprocesses):
4278 * s/aix4-2.h (subprocesses):
4279 * s/darwin.h (subprocesses): Do not define, defined by default now.
4280
4281 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
4282 Remove all references.
4283 (temacs): Add GNUstep specific ld flags.
4284
4285 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
4286 similarly to what X does.
4287
42882008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4289
4290 * nsfns.m (x-list-fonts): Remove.
4291 (syms_of_nsfns): Drop the x-list-fonts declaration.
4292 * nsterm.m: Get rid of remaining "//" comments.
4293
42942008-07-22 Chong Yidong <cyd@stupidchicken.com>
4295
4296 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
4297
4298 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
4299 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
4300 (Fns_own_selection_internal, Fx_disown_selection_internal)
4301 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
4302
4303 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
4304 ... */' style of docstrings. Doc fixes.
4305
43062008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
4307
4308 * terminfo.c (UP, BC, PC): Undo previous change.
4309
4310 * nsfns.m: Rename ns prefixed functions/variables to the
4311 corresponding x versions. Update references.
4312
43132008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
4314
4315 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
4316
43172008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
4318
4319 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
4320 Remove forwarding functions.
4321 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
4322 non-static.
4323 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
4324 non-static.
4325 (ns_frame_parm_handlers): Use the new names.
4326 (syms_of_nsfns): Move to the end of file.
4327
4328 * nsterm.m (syms_of_nsterm): Move to the end of file.
4329
4330 * dispnew.c (init_display): Remove code for X10.
4331
43322008-07-22 Jason Rumney <jasonr@gnu.org>
4333
4334 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
4335 bare drive.
4336
43372008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4338
4339 * nsterm.m (syms_of_nsterm): Remove debugging println.
4340
43412008-07-22 David Reitter <david.reitter@gmail.com>
4342
4343 * nsfns.m (do_applescript, F_do_applescript): NS version of the
4344 Carbon implementation of the same functionality: execute arbitrary
4345 AppleScript code.
4346
43472008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4348
4349 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
4350 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
4351 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
4352 (Fx_display_mm_height, Fx_display_mm_width)
4353 (Fx_display_backing_store, Fx_display_visual_class)
4354 (Fx_display_save_under, Fx_open_connection)
4355 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
4356 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
4357 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
4358 (Fx_display_pixel_width, Fx_display_pixel_height)
4359 (Fx_display_usable_bounds, Fx_display_planes)
4360 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
4361 ... */' style of docstrings.
4362
43632008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
4364
4365 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
4366 on this platform.
4367 (mips):
4368 * m/iris4d.h (mips): Do not define.
4369 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
4370
4371 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
4372
4373 * image.c:
4374 * nsfns.m:
4375 * nsselect.m:
4376 * nsterm.h:
4377 * nsterm.m: Rename ns prefixed functions/variables to the
4378 corresponding x versions. Update references.
4379
4380 * m/ibms390x.h (NO_REMAP): Do not undefine.
4381
4382 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
4383
43842008-07-21 Chong Yidong <cyd@stupidchicken.com>
4385
4386 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
4387 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
4388 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
4389 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
4390 (Fns_display_mm_height, Fns_display_mm_width)
4391 (Fns_display_backing_store, Fns_display_visual_class)
4392 (Fns_display_save_under, Fns_open_connection)
4393 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
4394 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
4395 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
4396 (Fns_display_pixel_width, Fns_display_pixel_height)
4397 (Fns_display_usable_bounds, Fx_display_planes)
4398 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
4399
44002008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
4401
4402 * print.c (print_object): Check print_depth before searching for
4403 circularities.
4404
44052008-07-21 Michael Albinus <michael.albinus@gmx.de>
4406
4407 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
4408 only sprintf.
4409
44102008-07-21 Kenichi Handa <handa@m17n.org>
4411
4412 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
4413
44142008-07-20 Andreas Schwab <schwab@suse.de>
4415
4416 * syntax.c (find_start_pos, find_start_value)
4417 (find_start_value_byte, find_start_begv, find_defun_start)
4418 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
4419
44202008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
4421
4422 * s/sol2-3.h: Insert contents of s/sol2.h.
4423 (LD_SWITCH_SYSTEM): Remove redundant definition.
4424 * s/sol2.h: Remove, unused.
4425
44262008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4427
4428 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
4429
44302008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4431
4432 * Makefile.in (ns_appdir): Fix typo in find command.
4433
44342008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
4435
4436 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
4437
4438 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
4439 added not supported anymore.
4440
4441 * s/usg5-4-2.h (LIBS_SYSTEM):
4442 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
4443
4444 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
4445 * s/lynxos.h (GETPGRP_NO_ARG):
4446 * s/hpux10-20.h (NO_SIOCTL_H):
4447 * s/gnu.h (GETPGRP_NO_ARG):
4448 * s/gnu-linux.h (NO_SIOCTL_H):
4449 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
4450 * s/cygwin.h (GETPGRP_NO_ARG):
4451 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
4452 (C_DEBUG_SWITCH): Remove duplicate definition.
4453
4454 * m/ibms390.h: Remove boilerplate comments.
4455
4456 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
4457
4458 * process.c (HAVE_SERIAL): Consolidate ifdefs.
4459 (wait_reading_process_output): Remove code for SunOS, platform not
4460 supported anymore. Use SOLARIS2 instead of sun.
4461
44622008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4463
4464 * font.c (font_open_by_name): Under NS, default lface height to zero.
4465 (font_open_for_lface): Under NS, set size based on frame fontsize.
4466 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
4467 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
4468
44692008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4470
4471 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
4472 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
4473 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
4474 YES/NO.
4475 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
4476 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
4477 * Makefile.in (clean): Clear out build destination dir.
4478
44792008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4480
4481 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
4482 xterm, xselect.
4483 * lisp.h: Remove declaration of hash_remove.
4484 * nsgui.h: Remove redefinitions of hash_remove.
4485 * fns.c (hash_remove): Rename to hash_remove_from_table.
4486
44872008-07-19 Seiji Zenitani <zenitani@mac.com>
4488
4489 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
4490 strdup() the family UTF8String before modifying it.
4491
44922008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4493
4494 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
4495 NS_FACE_BACKGROUND with 0 instead of nil.
4496 * nsfont.m (nsfont_draw): Same.
4497
44982008-07-19 Chong Yidong <cyd@stupidchicken.com>
4499
4500 * nsfns.m (ns_set_background_color): Fix crash.
4501
45022008-07-18 Chong Yidong <cyd@stupidchicken.com>
4503
4504 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
4505
45062008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
4507
4508 * puresize.h (BASE_PURESIZE): Increase to 1240000.
4509
45102008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4511
4512 * gtkutil.c: Include <config.h> instead of "config.h".
4513
4514 * lisp.h (Foverlay_buffer): Add EXFUN.
4515
4516 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
4517 child process to complete child_setup. Undo 2005-09-21 change.
4518
4519 * s/darwin.h: Mention setsid after vfork.
4520
45212008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4522
4523 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
4524 Depend on macgui.h.
4525
4526 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
4527 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
4528
4529 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
4530 and f19.
4531 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
4532
4533 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
4534 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
4535 Remove enumerators.
4536
4537 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
4538 Check if FACE_FROM_ID returns NULL.
4539
45402008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
4541
4542 * w32inevt.c (change_frame_size): Remove extern declaration.
4543 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
4544 change_frame_size.
4545
45462008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
4547
4548 * getloadavg.c: Revert last change (2008-07-15).
4549
45502008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
4551
4552 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
4553 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
4554 from configure.
4555
45562008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
4557
4558 * s/sol2.h:
4559 * s/sol2-4.h: Reorganize conditionals.
4560
4561 * ecrt0.c: Remove code depending on m68000, not used anymore.
4562
4563 * fns.c (hash_remove): Make static.
4564 * lisp.h (hash_remove): Don't prototype.
4565
4566 * m/ibmrs6000.h:
4567 * m/ibms390x.h:
4568 * m/macppc.h: Remove boilerplate comments.
4569
4570 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
4571 Solaris, which does not need them.
4572
4573 * m/vax.h: Remove comments about unsupported systems.
4574
4575 * s/darwin.h: Reorganize ifdefs.
4576
45772008-07-17 Andreas Schwab <schwab@suse.de>
4578
4579 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
4580
45812008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
4582
4583 Use SDATA. Follow coding convention of placing operators at
4584 beginning of next line rather than end of previous line, and placing
4585 spaces around infix operators.
4586
4587 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
4588 in case it was defined already.
4589 USE @GNUSTEP_MAKEFILES@ rather than envvars.
4590 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
4591 ns_default.
4592 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
4593 Lisp_Objects.
4594 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
4595 (ns_defined_color, ns_color_to_lisp): Declare.
4596 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
4597 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
4598 it's accepted even with USE_LISP_UNION_TYPE.
4599 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
4600 (update_frame_tool_bar): Remove apparently obsolete tests for
4601 non-integerness of f->tool_bar_lines.
4602 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
4603 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
4604 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
4605 (nsfont_open): Don't confuse NULL for Qnil.
4606 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
4607 * menu.h (find_and_call_menu_selection):
4608 * menu.c (find_and_call_menu_selection): Use just int for vector size.
4609 (find_and_return_menu_selection): Always return something.
4610 * frame.h: Include dispextern.h for Display_Info.
4611 (display_x_get_resource): Declare.
4612
46132008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
4614
4615 * syntax.c: Remove stdio.h include accidentally introduced in
4616 Emacs.app commit.
4617 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
4618 NS_IMPL_COCOA.
4619 * keyboard.c (handle_async_input, input_available_signal): Remove
4620 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
4621
46222008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
4623
4624 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
4625 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
4626 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
4627 Use SDATA.
4628
4629 * keymap.c: Remove all NS-specific code.
4630 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
4631 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
4632 where_is_preferred_modifier, return a different value depending on how
4633 preferred is the binding.
4634 (where_is_internal): Adjust accordingly.
4635 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
4636 Adjust to new preferred_sequence_p.
4637 (syms_of_keymap): Declare `where-is-preferred-modifier'.
4638 * keyboard.c (parse_solitary_modifier): Not static any more.
4639 * keyboard.h (parse_solitary_modifier): Declare.
4640
46412008-07-16 Andreas Schwab <schwab@suse.de>
4642
4643 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
4644 of easymenu.
4645
46462008-07-16 Chong Yidong <cyd@stupidchicken.com>
4647
4648 * xdisp.c (move_it_in_display_line): Account for word wrap, so
4649 that we don't move off the line.
4650
46512008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
4652
4653 * keyboard.c (Qsuper): Remove.
4654 (parse_menu_item): Don't call where_is_internal specially for NS.
4655
46562008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
4657
4658 * s/gnu-linux.h: Remove boilerplate comments.
4659
4660 * m/alpha.h (__ELF__): Consolidate conditions.
4661
4662 * m/m68k.h (linux): Use GNU_LINUX instead.
4663 Remove boilerplate comments.
4664
4665 * m/intel386.h: Undo refactoring from previous change.
4666 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
4667 too, remove dead code.
4668 (linux): Use GNU_LINUX instead.
4669
46702008-07-16 Jason Rumney <jasonr@gnu.org>
4671
4672 * w32gui.h: Repeat 26 June changes lost by last change.
4673
46742008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
4675
4676 * systty.h: Remove code for Aix on 386, unsupported platform.
4677
4678 * s/ms-w32.h: Remove boilerplate comments.
4679 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
4680
4681 * s/gnu-linux.h (TERM): Remove support.
4682 (HAVE_SYSVIPC): Remove, unused.
4683 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
4684 for this system.
4685
4686 * process.c: Remove support for IRIS, unused.
4687 Remove support for TERM, not relevant anymore.
4688
4689 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
4690 used with the definition.
4691
4692 * s/aix4-2.h (static): Do not undef.
4693
4694 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
4695 only used on Aix.
4696 (HAVE_SYSVIPC): Remove, unused.
4697
4698 * m/hp800.h (CANNOT_DUMP): Do not undef.
4699
4700 * m/alpha.h: Fix comment.
4701
4702 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
4703 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
4704 used by this configuration.
4705 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
4706 * unexec.c: Remove code depending on HPUX and
4707 USG_SHARED_LIBRARIES, not used with this file. Remove code
4708 depending on IRIS, unused. Remove if 0-ed code.
4709
4710 * s/template.h: Remove comments about static.
4711
4712 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
4713 Remove if 0-ed code.
4714 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
4715 were the same as the default.
4716 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
4717 Remove boilerplate comments.
4718 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
4719 (HAVE_SYSVIPC): Remove, unused.
4720 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
4721
4722 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
4723 Remove boilerplate comments.
4724 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
4725 Remove boilerplate comments.
4726 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
4727 Remove boilerplate comments.
4728 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
4729
4730 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
4731 USG systems which do not use DATA_SEG_BITS.
4732 Refactor code. Remove boilerplate comments.
4733
4734 * m/ibms390.h:
4735 * m/m68k.h:
4736 * s/bsd-common.h:
4737 * s/cygwin.h:
4738 * s/darwin.h:
4739 * s/freebsd.h:
4740 * s/gnu.h:
4741 * s/msdos.h: Remove boilerplate comments.
4742
4743 * m/iris4d.h: Remove boilerplate comments and code for systems that
4744 do not use this file.
4745 (IRIS_4D): Remove, unused.
4746
4747 * m/mips.h: Remove boilerplate comments and code for systems that
4748 do not use this file.
4749 (SIGN_EXTEND_CHAR):
4750 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
4751 * unexmips.c: Remove file, unused.
4752
4753 * editfns.c (Fuser_full_name): Replace the only use of
4754 USER_FULL_NAME with its value.
4755 * config.in: Regenerate.
4756
47572008-07-16 David Reitter <david.reitter@gmail.com>
4758
4759 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
4760 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
4761
47622008-07-16 Glenn Morris <rgm@gnu.org>
4763
4764 * emacs.c (system-type): Doc fix.
4765
47662008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
4767
4768 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
4769 If the cache doesn't work, let's fix it, rather than work around it.
4770
47712008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4772
4773 * Makefile.in: Correct additions for nsfont.o in last commit.
4774 * nsfont.m: New file (forgot last commit).
4775
47762008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4777
4778 * callproc.c (set_initial_environment): Initialize
4779 Vprocess_environment under CANNOT_DUMP (fixes crash when
4780 batch-compiling for bootstrap).
4781
47822008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4783 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4784
4785 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
4786 fix crash due to different init order.
4787
47882008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4789
4790 Changes and additions for NeXTstep windowing system (Cocoa and
4791 GNUstep) support.
4792
4793 * Makefile.in:
4794 * config.in: Support defines and build commands for NS port.
4795 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
4796 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
4797 * dispextern.h: Include nsgui.h and add needed typedefs under NS
4798 windowing.
4799 (struct face): Add synth_ital field.
4800 * dispnew.c: Include nsterm.h when compiling under NS windowing.
4801 (init_display): Initialize Vinitial_window_system to "ns" when so
4802 compiled.
4803 * emacs.c: Include GSConfig.h when compiling under GNUstep.
4804 (display_arg): Use under NS.
4805 (main): Under NS, allocate autorelease pool and handle command line
4806 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
4807 (standard_args): Add NS-specific args.
4808 (shut_down_emacs): Shut down NS terminal if compiled under NS.
4809 * font.c (DEFAULT_ENCODING): New variable.
4810 (font_find_for_lface): Use it.
4811 (syms_of_font): Load syms_of_nsfont under NS.
4812 * font.h: Declare nsfont_driver when compiled under NS.
4813 * fontset.c: When compiling under NS, include nsterm.h.
4814 (fontset_from_font): Autoconstruct fontset under NS.
4815 * frame.c (various): Under NS, include nsterm.h, add Qns window system
4816 symbol, document and use it.
4817 (do_switch_frame): When for_deletion under Cocoa, add
4818 Fraise_frame(Qnil).
4819 (x_set_frame_parameters): Ensure font attribute changes are picked up.
4820 (x_get_arg): Allow "yes" and "no" as boolean values.
4821 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
4822 Qright under Cocoa.
4823 (focus-follows-mouse): Default to 0 under NS.
4824 * frame.h (enum output_method): Add output_ns.
4825 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
4826 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
4827 (FRAME_WINDOW_P): NS-specific definition.
4828 * fringe.c (max_used_fringe_bitmap): Make public.
4829 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
4830 (getloadavg): Use NeXT code under descendant OS's.
4831 * image.c (includes and header section, x_create_bitmap_from_data)
4832 (x_create_bitmap_from_file, free_bitmap_record, image_background)
4833 (image_background_transparent, x_clear_image_1)
4834 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
4835 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
4836 (x_to_xcolors, x_from_xcolors, x_disable_image)
4837 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
4838 other GUIs, including XPM support using code originally written for
4839 Carbon GUI.
4840 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
4841 using NS API.
4842 (image_ascent): Use font metrics macros instead of direct struct field
4843 access.
4844 * keyboard.c (includes): Add nsterm.h when compiling under NS.
4845 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
4846 Also, handle NS as GTK for menu bar purposes.
4847 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
4848 toolkit where they differ.
4849 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
4850 use cachelist, still needed under NS.
4851 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
4852 (struct widget_value): Define it here for menu.c.
4853 * keymap.c (includes): Include modifier internals.
4854 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
4855 NS.
4856 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
4857 support for preferring sequences using certain modifiers, specified by
4858 the FIRSTONLY argument.
4859 * lisp.h (hash_remove): Rename to avoid name clash when compiling
4860 under NS GNUstep implementation.
4861 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
4862 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
4863 * menu.c: Include nsterm.h under NS.
4864 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
4865 (free_menubar_widget_tree_value, update_submenu_strings)
4866 (find_and_call_menu_selection): Treat NS as X and NT.
4867 (find_and_return_menu_selection): New function, used for popup menus.
4868 * nsgui.h:
4869 * nsterm.h:
4870 * nsfns.m:
4871 * nsimage.m:
4872 * nsmenu.m:
4873 * nsselect.m:
4874 * nsterm.m: New files.
4875 * process.c (wait_reading_process_output): Under NS, call ns_select()
4876 instead of plain select().
4877 * syntax.c (char_quoted): Under NS, avoid a crash when called near
4878 beginning of buffer.
4879 * sysselect.h (init_process): Rename when compiling under Cocoa to
4880 avoid name conflict.
4881 * termhooks.h (display_info): Add ns_display_info to union.
4882 * terminal.c (Fterminal_live_p): Add ns to terminal types.
4883 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
4884 COCOA environment.
4885 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
4886 unexec() signature. (Note, this will dump, but the resulting file
4887 crashes; unexosx is used instead; keeping around for reference and
4888 possible aid in getting dump working under GNUstep.)
4889 * w32gui.h (button_type, widget_value): Remove definitions (now in
4890 keyboard.h).
4891 * window.c: Include nsterm.h when compiling under NS.
4892 * xdisp.c (includes): Include nsterm.h when compiling under NS.
4893 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
4894 other GUI windowing systems.
4895 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
4896 GTK.
4897 (x_consider_frame_title): Under NS, set icon type and frame
4898 modified-state indicator; use ns_set_name_as_filename() when using
4899 formatted title.
4900 (update_window_cursor): Make public when compiling under NS.
4901 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
4902 (hourglass_atimer, Vhourglass_delay
4903 * xfaces.c (header section, init_frame_faces, clear_font_table)
4904 (defined_color, unload_color, x_face_list_fonts)
4905 (prepare_face_for_display): Add NS support parallel to other GUIs.
4906 Emulate GCs like other non-X GUIs.
4907 (split_font_name): Don't lowercase font name under NS.
4908 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
4909 under NS.
4910 * s/darwin.h: Add support for compilation under NS.
4911
49122008-07-15 Jason Rumney <jasonr@gnu.org>
4913
4914 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
4915 (w32_show_hourglass): Rename from show_hourglass.
4916 (w32_hide_hourglass): Rename from hide_hourglass.
4917 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
4918 (Vhourglass_delay): Declare extern.
4919 (hourglass_started): Remove.
4920
4921 * xdisp.c (Vhourglass_delay): Remove static.
4922 (hourglass_started, start_hourglass, cancel_hourglass):
4923 Don't include these versions on WINDOWSNT.
4924
49252008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4926
4927 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
4928 variables (formerly in xfns.c).
4929 (show_hourglass, hide_hourglass): New prototypes (same).
4930 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
4931 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
4932 in xfns.c).
4933 (syms_of_xdisp): Declare/initialize display-hourglass,
4934 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
4935 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
4936 formerly in xfns.c.
4937 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
4938 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
4939 (start_hourglass, cancel_hourglass): Remove.
4940 (show_hourglass, hide_hourglass): Remove prototypes and static
4941 modifiers.
4942 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
4943 hourglass_atimer, hourglass_shown_p declaration/initialization.
4944 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
4945 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
4946 (start_hourglass, cancel_hourglass): Remove.
4947 (show_hourglass, hide_hourglass): Remove prototypes and static
4948 modifiers.
4949 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
4950 hourglass_atimer, hourglass_shown_p declaration/initialization.
4951 * w32fns.c (display_hourglass_p, Vhourglass_delay)
4952 (DEFAULT_HOURGLASS_DELAY): Remove.
4953 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
4954 hourglass_shown_p declaration/initialization.
4955
49562008-07-14 Jason Rumney <jasonr@gnu.org>
4957
4958 * w32fns.c (w32_get_arg): Remove wrapper function.
4959 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
4960 directly.
4961 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
4962
49632008-07-14 Kenichi Handa <handa@m17n.org>
4964
4965 * xfont.c (xfont_open): Add workaround for X's bug.
4966
49672008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4968
4969 * fontset.c: Include <stdio.h> unconditionally.
4970
49712008-07-13 Michael Albinus <michael.albinus@gmx.de>
4972
4973 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
4974 for filtering.
4975
49762008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
4977
4978 * s/vms.h: Use __GNUC__ instead of _GNUC_.
4979
4980 * m/macppc.h:
4981 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
4982
4983 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
4984 (SPECIAL_EMACS_INT):
4985 * m/ia64.h (SPECIAL_EMACS_INT):
4986 * m/amdx86-64.h (SPECIAL_EMACS_INT):
4987 * s/gnu.h (NLIST_STRUCT):
4988 * s/aix4-2.h (X11R5_INHIBIT_I18N):
4989 * s/gnu-linux.h (LINUX):
4990 * s/msdos.h (HAVE_FACES):
4991 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
4992
4993 * systty.h:
4994 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
4995 anymore.
4996
49972008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
4998
4999 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
5000 always defined as int.
5001
5002 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
5003 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
5004 * s/gnu-linux.h (HAVE_WAIT_HEADER):
5005 * s/freebsd.h (HAVE_WAIT_HEADER):
5006 * s/bsd-common.h (HAVE_UNION_WAIT):
5007 * s/aix4-2.h (HAVE_WAIT_HEADER):
5008 * m/mips.h (HAVE_UNION_WAIT):
5009 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
5010 (COFF, static): Do not define, they are undefined later in the file.
5011
5012 * process.c (update_status): Don't use a union.
5013 (status_convert):
5014 (sigchld_handler): Use int instead of WAITTYPE.
5015
50162008-07-12 Chong Yidong <cyd@stupidchicken.com>
5017
5018 * indent.c (Fvertical_motion): Restore hscroll before moving to
5019 goal column.
5020
50212008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
5022
5023 * lisp.h: Remove left over code.
5024
50252008-07-11 Andreas Schwab <schwab@suse.de>
5026
5027 * lisp.h: Fix logic in last change.
5028
5029 * menu.h: New file.
5030 * menu.c: Include it.
5031 * xmenu.c: Likewise.
5032 * Makefile.in: Update dependencies.
5033
50342008-07-11 Kenichi Handa <handa@m17n.org>
5035
5036 * fontset.c (fontset_from_font): Cancel the previous change.
5037
50382008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
5039
5040 * lisp.h:
5041 * w32heap.c:
5042 * emacs.c:
5043 * alloc.c: Replace all references of NO_UNION_TYPE with
5044 USE_LISP_UNION_TYPE.
5045
5046 * m/xtensa.h (NO_UNION_TYPE):
5047 * m/vax.h (NO_UNION_TYPE):
5048 * m/template.h (NO_UNION_TYPE):
5049 * m/sparc.h (NO_UNION_TYPE):
5050 * m/mips.h (NO_UNION_TYPE):
5051 * m/macppc.h (NO_UNION_TYPE):
5052 * m/m68k.h (NO_UNION_TYPE):
5053 * m/iris4d.h (NO_UNION_TYPE):
5054 * m/intel386.h (NO_UNION_TYPE):
5055 * m/ibms390x.h (NO_UNION_TYPE):
5056 * m/ibms390.h (NO_UNION_TYPE):
5057 * m/ibmrs6000.h (NO_UNION_TYPE):
5058 * m/ia64.h (NO_UNION_TYPE):
5059 * m/hp800.h (NO_UNION_TYPE):
5060 * m/arm.h (NO_UNION_TYPE):
5061 * m/amdx86-64.h (NO_UNION_TYPE):
5062 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
5063 defining it the same.
5064
50652008-07-10 Chong Yidong <cyd@stupidchicken.com>
5066
5067 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
5068
50692008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
5070
5071 * fileio.c:
5072 * sysdep.c
5073 * systty.h:
5074 * m/ibmrs6000.h:
5075 * m/iris4d.h:
5076 * s/aix4-2.h:
5077 * s/freebsd.h:
5078 * s/gnu-linux.h:
5079 * s/hpux10-20.h:
5080 * s/hpux11.h:
5081 * s/netbsd.h:
5082 * s/sol2-3.h:
5083 * s/sol2-4.h:
5084 * s/sol2.h:
5085 * s/usg5-4.h:
5086 * s/vms.h: Remove references to unused variables.
5087
50882008-07-10 Andreas Schwab <schwab@suse.de>
5089
5090 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
5091 pattern before matching the generic family.
5092
50932008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
5094
5095 * unexec.c:
5096 * s/vms.h:
5097 * s/usg5-4-2.h:
5098 * s/sol2-5.h:
5099 * s/freebsd.h:
5100 * s/darwin.h: Remove dead code.
5101
5102 * m/template.h:
5103 * m/sparc.h:
5104 * m/mips.h:
5105 * m/m68k.h:
5106 * m/iris4d.h:
5107 * m/intel386.h:
5108 * m/ibms390x.h:
5109 * m/ibms390.h:
5110 * m/ia64.h:
5111 * m/hp800.h:
5112 * m/arm.h:
5113 * m/amdx86-64.h: Remove dead code and references to unused
5114 and compiler defined symbols.
5115
5116 * unexmips.c:
5117 * unexelf.c: Remove references to desupported systems.
5118
5119 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
5120
5121 * m/powermac.h: Remove boilerplate comments.
5122 (NO_REMAP): Remove unused definition.
5123
5124 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
5125 define them.
5126
51272008-07-10 Kenichi Handa <handa@m17n.org>
5128
5129 * xfont.c (xfont_open): Log the reason of failure.
5130
51312008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
5132
5133 * fontset.c (fontset_get_font_group):
5134 * font.c (font_check_otf): Specify argument types.
5135
51362008-07-09 Kenichi Handa <handa@m17n.org>
5137
5138 * coding.c (detect_coding_utf_8): Set detect_info->found only when
5139 non-ASCII char is found.
5140
5141 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
5142 (reorder_font_vector): Change the arg preferred_family to font.
5143 Prefer the spec matching with font.
5144 (fontset_get_font_group): New function.
5145 (fontset_find_font): Change the format of an element of a realized
5146 fontset. Use fontset_get_font_group.
5147 (fontset_font): Try the current fontset, the default fontset, the
5148 fallbacks of the current fontset, and the fallbacks of the default
5149 fontset in this order.
5150 (face_for_char): Delete the shortcut to use the current font.
5151 (fontset_from_font): Don't set fonts for Latin in the fontset.
5152
5153 * font.h (font_make_object, font_match_p): Adjust prototypes.
5154
5155 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
5156
5157 * font.c (font_make_object): New arg entity and pixelsize.
5158 (font_check_otf_features, font_check_otf): New functions.
5159 (font_match_p): Check :lang, :script, and :otf properties.
5160
5161 * xfont.c (xfont_open): Adjust it for the change of
5162 font_make_object.
5163 (xfont_text_extents): Fix initial setting of metrics.
5164
5165 * ftfont.c (struct ftfont_info): New member index, delete member
5166 fc_charset_idx. Make the member order compatible with struct
5167 xftfont_info.
5168 (fc_charset_table): Change charset names to registry names.
5169 (ftfont_pattern_entity): Delete the args registry and
5170 fc_charset_idx. Change the value of :font-entity property
5171 to (FONTNAME . INDEX). Always set :registry property to
5172 `iso10646-1'.
5173 (struct ftfont_cache_data): New struct.
5174 (ftfont_lookup_cache): New arg for_face.
5175 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
5176 (ftfont_driver): Set the member otf_capability.
5177 (ftfont_get_charset): Adjust it for the change of
5178 fc_charset_table.
5179 (OTF_TAG_SYM): New macro.
5180 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
5181 for the change of fc_charset_table.
5182 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
5183 ftfont_pattern_entity. Add FC_INDEX to objset.
5184 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
5185 and ftfont_pattern_entity.
5186 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
5187 font_make_object, struct ftfont_info.
5188 (ftfont_has_char): Use ftfont_get_fc_charset.
5189 (ftfont_otf_features, ftfont_otf_capability): New functions.
5190 (ftfont_shape): Use ftfont_get_otf.
5191 (ftfont_text_extents): Fix initial setting of metrics.
5192
5193 * xftfont.c (struct xftfont_info): New member ft_size. Make the
5194 member order compatible with struct ftfont_info.
5195 (xftfont_open): Add FC_CHARSET to the pattern. Set
5196 xftfont_info->ft_size. Don't unlock the face. Check BDF
5197 properties if appropriate.
5198 (xftfont_close): Unlock the face.
5199 (xftfont_anchor_point, xftfont_shape): Deleted.
5200 (syms_of_xftfont): Don't set members anchor_point and shape of
5201 xftfont_driver.
5202
5203 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
5204 font_make_object.
5205
5206 * w32font.c (w32font_open): Adjust it for the change of
5207 font_make_object.
5208 (w32font_open_internal): Don't set properties of font_object here.
5209
52102008-07-08 Chong Yidong <cyd@stupidchicken.com>
5211
5212 * macfns.c (x_create_tip_frame):
5213 * w32fns.c (x_create_tip_frame):
5214 * xfns.c (x_create_tip_frame): Pass parameter argument to
5215 face-set-after-frame-default.
5216
5217 * xfaces.c (Finternal_merge_in_global_face): Save merged
5218 attributes for the default face back into the face vector.
5219
52202008-07-08 Andreas Schwab <schwab@suse.de>
5221
5222 * fontset.h: Declare fontset_from_font. Don't declare
5223 new_fontset_from_font and fontset_from_font_name.
5224 * xterm.c: Include "fontset.h".
5225 * Makefile.in (xterm.o): Update dependencies.
5226
52272008-07-08 Glenn Morris <rgm@gnu.org>
5228
5229 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
5230 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
5231
52322008-07-07 Chong Yidong <cyd@stupidchicken.com>
5233
5234 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
5235 (x_set_frame_parameters): Don't bind it.
5236
52372008-07-07 Juanma Barranquero <lekktu@gmail.com>
5238
5239 * w32fns.c (map_w32_filename): Declare extern.
5240
52412008-07-07 Jason Rumney <jasonr@gnu.org>
5242
5243 * w32term.c (WS_EX_LAYERED): Define if not already.
5244
52452008-07-06 Chong Yidong <cyd@stupidchicken.com>
5246
5247 * xfaces.c (set_font_frame_param): Don't try to set the font
5248 parameter if it is still unspecified in the lface.
5249
52502008-07-05 Chong Yidong <cyd@stupidchicken.com>
5251
5252 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
5253 face if it didn't already exist.
5254
5255 * xdisp.c (try_window_id): Give up if word-wrapping is on.
5256
52572008-07-05 Andreas Schwab <schwab@suse.de>
5258
5259 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
5260
52612008-07-05 Chong Yidong <cyd@stupidchicken.com>
5262
5263 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
5264 word-wrapping.
5265 (IT_DISPLAYING_WHITESPACE): New macro.
5266 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
5267 when word-wrapping. Simplify word-wrapping logic. Use correct
5268 pixel positions when saving copies of the iterator.
5269 (display_line): Use proper wrap point if the last character on a
5270 line was preceded by whitespace.
5271
52722008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
5273
5274 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
5275
52762008-07-04 Kenichi Handa <handa@m17n.org>
5277
5278 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
5279
5280 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
5281
52822008-07-02 Jason Rumney <jasonr@gnu.org>
5283
5284 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 5285 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
5286
5287 * xdisp.c (next_element_from_display_vector): Move assignment out
5288 of if statement.
5289
52902008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
5291
5292 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
5293
5294 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
5295 (syms_of_fileio): Initialize and export them.
5296 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
5297
5298 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
5299 (Fsystem_move_file_to_trash): New function.
5300 (syms_of_w32fns): Export it to lisp.
5301
53022008-07-01 Jason Rumney <jasonr@gnu.org>
5303
5304 * w32font.c (w32font_text_extents): Don't count overhang as part
5305 of width.
5306
53072008-06-30 Miles Bader <miles@gnu.org>
5308
5309 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
5310 Add `avoid_cursor_p' field.
5311
5312 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
5313 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
5314 (append_glyph, append_composite_glyph, produce_image_glyph)
5315 (append_stretch_glyph): Initialize avoid_cursor_p.
5316 (get_it_property): Rename from `get_line_height_property'.
5317 (x_produce_glyphs): Use get_it_property.
5318 (handle_line_prefix, push_display_prop): New functions.
5319 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
5320 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
5321 New variables.
5322 (syms_of_xdisp): Initialize them.
5323
53242008-06-30 Kenichi Handa <handa@m17n.org>
5325
5326 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
5327 XftDefaultSubstitute (they are called in XftFontMatch).
5328 (xftfont_open): Fix args to ftfont_font_format.
5329
5330 * ftfont.c (fc_charset_table): New member lang.
5331 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 5332 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
5333 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
5334 (ftfont_open): Fix args to ftfont_font_format.
5335 (ftfont_font_format): New arg filename.
5336
53372008-06-30 Chong Yidong <cyd@stupidchicken.com>
5338
5339 * xfaces.c (Finternal_merge_in_global_face): If default face was
5340 modified, realize it again. Update the font face attribute.
5341
53422008-06-29 Jason Rumney <jasonr@gnu.org>
5343
5344 * w32term.c (x_set_frame_alpha): Fix logic.
5345
53462008-06-29 Kenichi Handa <handa@m17n.org>
5347
5348 * fontset.c (Finternal_char_font): Return font-object instead of
5349 font-name.
5350
5351 * composite.c (get_composition_id): Fix the width calculation for TAB.
5352
53532008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
5354
5355 * indent.c (Fvertical_motion): Properly handle float column arg.
5356
53572008-06-28 Jason Rumney <jasonr@gnu.org>
5358
5359 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
5360 (pfnSetLayeredWindowAttributes): New function pointer.
5361 (w32_initialize): Initialize it when supported.
5362 (x_set_frame_alpha): New function.
5363
5364 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
5365 (w32_frame_parm_handlers): Set alpha handler.
5366
5367 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
5368
53692008-06-27 Jason Rumney <jasonr@gnu.org>
5370
5371 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
5372 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
5373 (w32_to_x_charset, x_to_w32_charset)
5374 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
5375 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
5376 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
5377 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
5378 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
5379 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
5380 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
5381 (Qw32_charset_unicode): Remove.
5382 (syms_of_w32fns): Update for above changes.
5383
5384 * w32font.c (w32_to_x_charset, x_to_w32_charset)
5385 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
5386 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
5387 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
5388 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
5389 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
5390 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
5391 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
5392 (syms_of_w32font): Update for above changes.
5393
53942008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
5395
5396 * s/usg5-4.h: Fix previous change: keep the correct branch of a
5397 removed #if.
5398 (USG_SHARED_LIBRARIES): Remove duplicate definition.
5399
54002008-06-26 Juanma Barranquero <lekktu@gmail.com>
5401 Eli Zaretskii <eliz@gnu.org>
5402
5403 * makefile.w32-in (LOCAL_FLAGS):
5404 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
5405
5406 * sysdep.c (_spawnlp, _getpid):
5407 Declare with explicit _cdecl instead of _CRTAPI1.
5408
5409 * editfns.c (Fget_internal_run_time):
5410 Check for WINDOWSNT with #ifdef, not #if.
5411
54122008-06-26 Jason Rumney <jasonr@gnu.org>
5413
5414 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
5415
5416 * w32term.c (x_draw_glyph_string_foreground)
5417 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
5418 Use FONT_HANDLE macro.
5419 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
5420
5421 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
5422 (uniscribe_encode_char): Use FONT_HANDLE macro.
5423
5424 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
5425 (w32font_text_extents): Use precast w32_font.
5426 (w32font_close): Free cached metrics.
5427 (w32font_open_internal): Allocate space for name on stack.
5428
54292008-06-26 Chong Yidong <cyd@stupidchicken.com>
5430
5431 * xdisp.c (extend_face_to_end_of_line): Fix last change.
5432
54332008-06-26 Jason Rumney <jasonr@gnu.org>
5434
5435 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
5436 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
5437
54382008-06-26 Juanma Barranquero <lekktu@gmail.com>
5439
5440 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
5441
54422008-06-26 Jason Rumney <jasonr@gnu.org>
5443
5444 * w32bdf.c, w32bdf.h: Remove obsolete files.
5445
5446 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
5447
5448 * w32gui.h: Don't include w32bdf.h.
5449 (XCharStruct, enum w32_char_font_type, W32FontStruct):
5450 Remove obsolete font support.
5451
5452 * w32font.h (struct w32font_info): Remove compat_w32_font.
5453 Add hfont member.
5454 (FONT_COMPAT): Remove obsolete macro.
5455
5456 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
5457 (w32font_encode_char, w32font_text_extents): Use new hfont member.
5458 (w32font_open_internal): Remove compat code. Set new hfont member.
5459 (Fx_select_font): Use new hfont member.
5460
5461 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
5462 (uniscribe_encode_char): Use new hfont member.
5463
5464 * w32term.c (x_draw_glyph_string_foreground)
5465 (x_draw_composite_glyph_string_foreground): Use new hfont member.
5466 (x_draw_glyph_string): Use metrics in w32font_info.
5467
54682008-06-26 Kenichi Handa <handa@m17n.org>
5469
5470 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
5471
54722008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
5473
5474 * unexnext.c:
5475 * m/ews4800.h:
5476 * m/hp9000s300.h:
5477 * m/ibm370aix.h:
5478 * m/mips-siemens.h:
5479 * m/ncr386.h:
5480 * m/next.h:
5481 * m/pmax.h:
5482 * m/powerpcle.h:
5483 * m/tandem-s2.h:
5484 * s/386bsd.h:
5485 * s/bsd386.h:
5486 * s/bsd4-1.h:
5487 * s/bsd4-2.h:
5488 * s/bsdos2-1.h:
5489 * s/bsdos2.h:
5490 * s/bsdos3.h:
5491 * s/bsdos4.h:
5492 * s/nextstep.h:
5493 * s/ultrix4-3.h:
5494 * s/usg5-0.h:
5495 * s/usg5-2-2.h:
5496 * s/usg5-2.h:
5497 * s/usg5-4-3.h:
5498 * s/ux4800.h:
5499 * s/uxpds.h:
5500 * s/uxpv.h: Remove support for obsolete systems.
5501 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 5502 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
5503 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
5504 Remove, insert contents in s/aix4-2.h.
5505 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
5506 * s/bsd4-3.h: Rename to ...
5507 * s/bsd-common.h: ... this.
5508 * data.c:
5509 * doc.c:
5510 * ecrt0.c:
5511 * emacs.c:
5512 * fileio.c:
5513 * floatfns.c:
5514 * keyboard.c:
5515 * mem-limits.h:
5516 * print.c:
5517 * process.c:
5518 * sysdep.c:
5519 * syssignal.h:
5520 * systty.h:
5521 * syswait.h:
5522 * term.c:
5523 * unexec.c:
5524 * unexelf.c:
5525 * unexhp9k800.c:
5526 * m/hp800.h:
5527 * m/ibmrs6000.h:
5528 * m/mips.h:
5529 * m/vax.h:
5530 * s/darwin.h:
5531 * s/freebsd.h:
5532 * s/gnu.h:
5533 * s/ms-w32.h:
5534 * s/msdos.h:
5535 * s/netbsd.h:
5536 * s/template.h: Remove references to obsolete variables.
5537
5538 * Makefile.in: Add dependencies for all unexec files.
5539 (admindir): Remove unused variable.
5540 (UNEXEC_SRC): Remove references.
5541
55422008-06-25 Chong Yidong <cyd@stupidchicken.com>
5543
5544 * xfns.c (x_default_font_parameter): If Xft is available, first
5545 try Monospace-12 for the default font.
5546
55472008-06-25 Jason Rumney <jasonr@gnu.org>
5548
5549 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
5550
55512008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
5552
5553 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
5554
5555 * buffer.c (syms_of_buffer): Remove default-word-wrap.
5556
55572008-06-25 Juanma Barranquero <lekktu@gmail.com>
5558
5559 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
5560 <scroll-conservatively>: Fix typo in docstring.
5561
5562 * xselect.c (Fx_send_client_event): Doc fix.
5563
55642008-06-25 Kenichi Handa <handa@m17n.org>
5565
5566 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
5567
5568 * font.c (font_parse_fcname): Remove unused variables.
5569 (font_sort_entites): Delete the arg SPEC. Caller changed.
5570 Fix for the case of ! best_only.
5571 (font_delete_unmatched): Check DPI and AVGWIDTH too.
5572
5573 * lisp.h (Fstring_to_unibyte): EXFUN it.
5574
5575 * character.h (str_to_unibyte): Extern it.
5576
5577 * character.c (str_to_unibyte): New function.
5578
5579 * fns.c (Fstring_to_unibyte): New function.
5580 (syms_of_fns): Defsubr it.
5581
55822008-06-24 Kenichi Handa <handa@m17n.org>
5583
5584 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
5585 DPI too.
5586 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
5587
55882008-06-24 Andreas Schwab <schwab@suse.de>
5589
5590 * Makefile.in (${lispsource}loaddefs.el): Rename from
5591 ../lisp/loaddefs.el.
5592 (bootstrap-clean): Do what distclean does but don't remove
5593 Makefile.
5594 (distclean): Depend on bootstrap-clean and remove Makefile.
5595
55962008-06-24 Chong Yidong <cyd@stupidchicken.com>
5597
5598 * buffer.h (struct buffer): New member word_wrap.
5599
5600 * buffer.c (syms_of_buffer): New variables default-word-wrap and
5601 word-wrap.
5602 (init_buffer_once): Initialize them.
5603
5604 * dispextern.h (struct it): Replace bool truncate_lines_p with a
5605 line_wrap enum possessing three possible values.
5606
5607 * termopts.h: Replace truncate_partial_width_windows with
5608 Vtruncate_partial_width_windows.
5609
5610 * dispnew.c (direct_output_for_insert): Avoid direct output when
5611 inserting a space with word wrap on.
5612
5613 * indent.c (compute_motion): Obey integer values of
5614 truncate-partial-width-windows.
5615
5616 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
5617 replacing truncate_partial_width_windows.
5618 (init_iterator): If Vtruncate_partial_width_windows is an integer,
5619 truncate only if the window width is below that integer.
5620 (start_display, resize_mini_window, produce_stretch_glyph)
5621 (display_string, move_it_in_display_line_to): Use line_wrap.
5622 (back_to_previous_visible_line_start, reseat_1): Reset
5623 string_from_display_prop_p.
5624 (display_line): Extend default face to end of line when wrapping.
5625
56262008-06-24 Kim F. Storm <storm@cua.dk>
5627
5628 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
5629 to wrap continued lines at word boundaries.
5630
56312008-06-24 Jason Rumney <jasonr@gnu.org>
5632
5633 * font.c (Ffont_face_attributes): Multiply pixel size before point
5634 conversion to avoid multiplying rounding error.
5635
56362008-06-23 Jason Rumney <jasonr@gnu.org>
5637
5638 * w32term.c (x_draw_glyph_string_background)
5639 (x_draw_glyph_string): Remove old bdf font code.
5640
5641 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
5642
56432008-06-22 Kenichi Handa <handa@m17n.org>
5644
5645 * font.c (font_find_for_lface): Try the adstyle specified in
5646 the property of LFACE_FONT of LFACE (if any).
5647
56482008-06-21 Seiji Zenitani <zenitani@mac.com>
5649 Ryo Yoshitake <ryo@shiftmode.net>
5650
5651 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
5652
56532008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
5654
5655 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
5656 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
5657 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
5658 (witness-emacs): Remove.
5659 (lisp, shortlisp): Move loaddefs.el earlier.
5660 (mostlyclean): Forget about witness-emacs.
5661
56622008-06-22 Glenn Morris <rgm@gnu.org>
5663
5664 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
5665 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
5666
56672008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
5668
5669 * Makefile.in (PRECOMP): Remove.
5670 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
5671 (witness-emacs): Run `compile-first'.
5672 (.el.elc): Use the new compile-onefile target.
5673
56742008-06-21 Kenichi Handa <handa@m17n.org>
5675
5676 * xftfont.c (xftfont_open): Handle QCembolden only when
5677 FC_EMBOLDEN is defined.
5678
56792008-06-21 Andreas Schwab <schwab@suse.de>
5680
5681 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
5682 (.el.elc): Likewise.
5683
56842008-06-21 Miles Bader <miles@gnu.org>
5685
5686 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
5687 build dir, not the lisp source dir.
5688
56892008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
5690
5691 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
5692 (bootstrapclean): Remove.
5693 (.el.elc): New rule.
5694 (PRECOMP): New var.
5695 (../lisp/subdirs.el): Remove.
5696 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
5697 (witness-emacs): New target.
5698 (mostlyclean): Remove witness-emacs as well.
5699 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
5700 Add witness-emacs dependency.
5701
57022008-06-20 Chong Yidong <cyd@stupidchicken.com>
5703
5704 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
5705 defined by the font.
5706
57072008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
5708
5709 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
5710 (bootstrap-clean): New target that keeps TAGS around.
5711 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
5712 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
5713
57142008-06-20 Jason Rumney <jasonr@gnu.org>
5715
5716 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
5717 Remove obsolete font code.
5718
5719 * w32font.c (font_matches_spec): Use csb bitfield from font signature
5720 to determine language support.
5721
57222008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
5723
5724 * sysdep.c (cfsetspeed): New fun extracted from the code.
5725 (cfmakeraw): Move before first use.
5726
57272008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
5728
5729 * sysdep.c (cfmakeraw): Provide fallback implementation.
5730 (serial_configure): Provide fallback implementation of cfsetspeed.
5731
57322008-06-20 Kenichi Handa <handa@m17n.org>
5733
5734 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
5735 the pattern.
5736
5737 * fontset.c (fontset_from_font): Copy font_spec before changing
5738 the elements.
5739
5740 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
5741
57422008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
5743
5744 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
5745 for explicit `font' parameters.
5746
5747 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
5748
57492008-06-19 Kenichi Handa <handa@m17n.org>
5750
5751 * frame.c: Include <ctype.h>.
5752 (x_set_font_backend): Allow spacing characters in the X resource
5753 for FontBackend.
5754
57552008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
5756
5757 * w32fns.c, xfns.c (Qfont_param): New var.
5758 (syms_of_w32fns): Initialize it.
5759 (x_default_font_parameter): Record explicit `font' into
5760 `font-parameter'.
5761
57622008-06-18 Kenichi Handa <handa@m17n.org>
5763
5764 * font.c (font_parse_xlfd): Fix previous change.
5765 (font_parse_fcname): Don't use :fc-unknown-spec.
5766 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
5767 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
5768 (font_add_log): Prepend the driver name to the resulting fonts.
5769
5770 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
5771 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
5772 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
5773
5774 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
5775 (QCembolden): New variables.
5776 (syms_of_xftfont): DEFSYM them.
5777 (xftfont_open): Call XftFontMatch. Don't trust the result of
5778 XftTextExtents8 if the pixel_size is less than 5.
5779
57802008-06-18 Andreas Schwab <schwab@suse.de>
5781
5782 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
5783 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
5784
57852008-06-18 Jason Rumney <jasonr@gnu.org>
5786
5787 * w32font.c (w32font_list, w32font_match): Add logging.
5788
5789 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
5790
57912008-06-17 Chong Yidong <cyd@stupidchicken.com>
5792
5793 * font.c (font_parse_fcname): Store divider characters for
5794 unknown-spec list. For known key symbols, intern using correct
5795 symbol name.
5796
57972008-06-17 Kenichi Handa <handa@m17n.org>
5798
5799 * xfaces.c (realize_default_face): If the frame is not on window
5800 system, set the fontset of face to nil.
5801
58022008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
5803
5804 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
5805
58062008-06-16 Juanma Barranquero <lekktu@gmail.com>
5807
5808 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
5809 (build_font_name_from_vector): Delete externs.
5810
5811 * xfaces.c (struct font_name): Don't declare.
5812
58132008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
5814
5815 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
5816
58172008-06-16 Chong Yidong <cyd@stupidchicken.com>
5818
5819 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
5820
58212008-06-16 Juanma Barranquero <lekktu@gmail.com>
5822
5823 * font.c (Ffont_spec): Fix usage in docstring.
5824 (Ffont_face_attributes): Doc fix.
5825
58262008-06-16 Andreas Schwab <schwab@suse.de>
5827
5828 * font.c (Ffont_face_attributes): Fix definition.
5829
58302008-06-16 Jason Rumney <jasonr@gnu.org>
5831
5832 * font.h (font_style_symbolic_from_value): Remove.
5833
5834 * font.c (font_style_symbolic_from_value): Remove.
5835 (font_style_symbolic): Revert to pre 2008-06-13 version.
5836
5837 * w32font.c (w32_to_fc_weight): New function.
5838 (w32font_full_name, logfont_to_fcname): Use it.
5839
58402008-06-16 Kenichi Handa <handa@m17n.org>
5841
5842 * font.c (font_check_object): Delete it.
5843 (font_clear_cache): Check if a font-object is alive.
5844 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
5845 font-object to nil.
5846 (font_close_object): Don't check FONT_CLOSE_OBJECT.
5847 (font_at): Don't call font_check_object.
5848 (Ffont_get): Return a symbol for :weight, :slant, and :width.
5849
58502008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
5851
5852 * puresize.h (BASE_PURESIZE): Increase to 1230000.
5853
58542008-06-16 Chong Yidong <cyd@stupidchicken.com>
5855
5856 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
5857
58582008-06-15 Chong Yidong <cyd@stupidchicken.com>
5859
5860 * font.c (font_parse_fcname): Only one decimal point.
5861 (font_unparse_fcname): Handle data in family and foundry indices
5862 as symbols, not strings.
5863 (font_unparse_gtkname, Ffont_face_attributes): New functions.
5864
5865 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
5866
5867 * font.h (font_unparse_gtkname): Add prototype.
5868
58692008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
5870
5871 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
5872
58732008-06-15 Andreas Schwab <schwab@suse.de>
5874
5875 * font.c (font_update_drivers): Fix crash when no drivers match.
5876
58772008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
5878
5879 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
5880 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
5881
58822008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
5883
5884 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
5885
58862008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
5887
5888 * process.c (Fserial_process_configure, Fprocess_send_eof):
5889 Use EQ to compare Lisp_Objects.
5890
58912008-06-13 Jason Rumney <jasonr@gnu.org>
5892
5893 * w32fns.c (Fw32_select_font): Remove old font API function.
5894
5895 * w32font.c (logfont_to_fcname): New function.
5896 (Fx_select_font): New font dialog function compatible with
5897 GTK/fontconfig version.
5898
5899 * font.c (font_style_symbolic_from_value): New function.
5900 (font_style_symbolic): Use it.
5901
5902 * font.h (font_style_symbolic_from_value): Declare new function.
5903
59042008-06-13 Juanma Barranquero <lekktu@gmail.com>
5905
5906 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
5907 <font-width-table>: Fix typos in docstrings.
5908
59092008-06-13 Daniel Engeler <engeler@gmail.com>
5910
5911 These changes add serial port access.
5912 * process.c: Add HAVE_SERIAL.
5913 (Fdelete_process, Fprocess_status, Fset_process_buffer)
5914 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
5915 (list_processes_1, select_wrapper, Fstop_process)
5916 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
5917 (status_notify): Modify to handle serial processes.
5918 [HAVE_SERIAL] (Fserial_process_configure)
5919 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
5920 New functions.
5921 * process.h (struct Lisp_Process): Add `type'.
5922 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
5923 New functions.
5924 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
5925 serial ports.
5926 (serial_open, serial_configure) New functions.
5927 * w32.h: Add FILE_SERIAL.
5928 (struct _child_process): Add ovl_read, ovl_write.
5929
59302008-06-13 Kenichi Handa <handa@m17n.org>
5931
5932 * dispextern.h (enum lface_attribute_index): New member
5933 LFACE_FOUNDRY_INDEX.
5934
5935 * font.c (font_score): Delete arg alternate_families. Check only
5936 weight, slant, width, and size. Ignore the difference of alias
5937 style symbols.
5938 (font_sort_entites): Adjust for the above change. Reflect the
5939 order of font-driver to scores.
5940 (font_list_entities): Don't check alternate_familes here.
5941 (font_clear_prop): Handle foundry.
5942 (font_update_lface): Don't parse "foundry-family" form here.
5943 Handle FONT_FOUNDRY_INDEX.
5944 (font_find_for_lface): Likewise. Handle alternate families here.
5945 If registry is nil, try iso8859-1 and ascii-0.
5946 (font_open_for_lface): Pay attention to size in ENTITY.
5947 (font_open_by_name): Simplify by calling font_load_for_lface.
5948 (free_font_driver_list): Delete it.
5949 (font_update_drivers): Preserve the order of backends.
5950 (syms_of_font): Setting of sort_shift_bits adjusted for the change
5951 of font_score and font_sort_entites.
5952 (font_update_sort_order): Likewise.
5953
5954 * xfaces.c (LFACE_FOUNDRY): New macro.
5955 (check_lface_attrs): Check foundry.
5956 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
5957 (merge_face_vectors): Check foundry.
5958 (merge_face_ref): Likewise.
5959 (Finternal_set_lisp_face_attribute): Likewise.
5960 (x_update_menu_appearance): Likewise.
5961 (Finternal_get_lisp_face_attribute): Likewise.
5962 (lface_hash): Likewise.
5963 (lface_same_font_attributes_p): Likewise.
5964 (x_supports_face_attributes_p): Likewise.
5965 (tty_supports_face_attributes_p): Likewise.
5966 (Finternal_set_alternative_font_family_alist): Intern strings.
5967 (Finternal_set_alternative_font_registry_alist): Downcase strings.
5968 (realize_default_face): Set LFACE_FOUNDRY (lface).
5969
5970 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
5971 font-driver at first.
5972
5973 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
5974
59752008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5976
5977 * lread.c (Fload): Use xfree, not free on saved_doc_string.
5978
59792008-06-12 Jim Meyering <meyering@redhat.com>
5980
5981 Make unexec_free handle NULL the same way free does.
5982 * unexmacosx.c (unexec_free): Ignore a NULL argument.
5983
59842008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
5985
5986 * character.h (CHAR_TO_BYTE_SAFE): New macro.
5987 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
5988 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
5989 (WEAK_ALIAS): Simplify.
5990 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
5991 when searching a unibyte buffer.
5992
59932008-06-12 Chong Yidong <cyd@stupidchicken.com>
5994
5995 * xfns.c (Fx_select_font): Rename from x-font-dialog.
5996
59972008-06-12 Juanma Barranquero <lekktu@gmail.com>
5998
5999 * w32font.c: Include ctype.h.
6000
60012008-06-11 Jason Rumney <jasonr@gnu.org>
6002
6003 * w32font.c (w32font_encode_char): Detect missing glyphs that are
6004 misreported as space.
6005 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
6006 as aliases for registry iso10646-1.
6007
60082008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
6009
6010 * buffer.c (clone_per_buffer_values): Skip `name'.
6011
60122008-06-11 Chong Yidong <cyd@stupidchicken.com>
6013
6014 * font.c (font_parse_fcname): Fix last change; accept decimal
6015 points in font size.
6016
60172008-06-10 Jason Rumney <jasonr@gnu.org>
6018
6019 * w32uniscribe.c (add_opentype_font_name_to_list):
6020 Skip non unicode fonts.
6021
60222008-06-10 Chong Yidong <cyd@stupidchicken.com>
6023
6024 * xfns.c (Fx_font_dialog): New function.
6025
6026 * gtkutil.c (xg_dialog_response_cb): Rename from
6027 xg_file_response_callback.
6028 (pop_down_dialog): Rename from pop_down_file_dialog.
6029 (xg_get_file_name): Callers changed.
6030 (xg_get_font_name): New function.
6031
6032 * gtkutil.h (xg_get_font_name): Insert prototype.
6033
60342008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
6035
6036 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
6037 x_underline_minimum_display_offset.
6038 (syms_of_xdisp): Declare it here rather than in xterm.c.
6039 * dispextern.h (underline_minimum_offset): Declare it.
6040 * w32term.c (x_draw_glyph_string): Use it.
6041 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
6042 (syms_of_xterm): Don't declare it any more.
6043 (x_draw_glyph_string): Adjust to the new name.
6044
60452008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
6046
6047 * xterm.c (x_underline_minimum_display_offset): New var.
6048 (x_draw_glyph_string): Use it.
6049 (syms_of_xterm): Declare it.
6050
60512008-06-10 Chong Yidong <cyd@stupidchicken.com>
6052
6053 * font.c (font_parse_fcname): Accept GTK-style font names too.
6054
60552008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
6056
6057 * dired.c (file_name_completion): Don't return t if the match is exact
6058 but with different capitalization.
6059 * minibuf.c (Ftry_completion): Simplify.
6060
6061 * window.c (Vwindow_point_insertion_type): New var.
6062 (set_window_buffer): Use it.
6063 (syms_of_window): Init and export it to Lisp.
6064
60652008-06-10 Kenichi Handa <handa@m17n.org>
6066
6067 * font.h (font_intern_prop): Prototype adjusted.
6068
6069 * font.c (font_intern_prop): New arg force_symbol.
6070 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
6071 Adjust for the change of font_intern_prop.
6072
6073 * ftfont.c (ftfont_pattern_entity):
6074 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
6075 (w32_registry):
6076 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
6077 the change of font_intern_prop.
6078
60792008-06-09 Juanma Barranquero <lekktu@gmail.com>
6080
6081 * w32menu.c (digest_single_submenu): Declare extern.
6082
60832008-06-09 Jason Rumney <jasonr@gnu.org>
6084
6085 * w32term.c (x_make_frame_visible): Use alternate restore flags.
6086
6087 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
6088 (parse_single_submenu): Remove.
6089 (digest_single_submenu): Remove.
6090 (syms_of_w32menu): Don't initialise variables that have moved
6091 to menu.c.
6092 (set_frame_menubar): Sync with version in xmenu.c.
6093 (w32_menu_show): Sync with xmenu_show in xmenu.c.
6094
6095 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
6096 Make static again.
6097
60982008-06-09 Jason Rumney <jasonr@gnu.org>
6099
6100 Changes to w32 files related to the move of common menu code
6101 to menu.c on 2008-06-08 by Chong Yidong.
6102
6103 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
6104 defs to w32gui.h.
6105 (single_keymap_panes, push_menu_item, push_menu_pane):
6106 Make globally visible.
6107
6108 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
6109 (local_free, malloc_widget_value, free_widget_value)
6110 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
6111 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
6112 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
6113 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
6114 (menu_items, menu_items_allocated, menu_items_used)
6115 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
6116 (init_menu_items, finish_menu_items, discard_menu_items)
6117 (grow_menu_items, push_submenu_start, push_submenu_end)
6118 (push_left_right_boundary, push_menu_pane, push_menu_item)
6119 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
6120 (free_menubar_widget_tree_value, parse_single_submenu)
6121 (update_submenu_strings): Remove functions.
6122 (xmalloc_widget_value): Remove and declare extern.
6123
6124 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
6125 (OBJ1): Build it.
6126
6127 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
6128 (local_heap, local_alloc, local_free, malloc_widget_value)
6129 (free_widget_value): Define here.
6130
61312008-06-09 Kenichi Handa <handa@m17n.org>
6132
6133 * font.h (Qascii_0): Extern it.
6134
6135 * font.c (Qascii_0): New variable.
6136 (syms_of_font): DEFSYM it.
6137 (font_open_by_name): If the registry "iso8859-1" fails, try also
6138 "ascii-0".
6139
6140 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
6141
61422008-06-08 Kenichi Handa <handa@m17n.org>
6143
6144 * .gdbinit (xfont): New command.
6145
61462008-06-08 Andreas Schwab <schwab@suse.de>
6147
6148 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
6149 * Makefile.in (menu.o): Update dependencies.
6150
6151 * Makefile.in (obj): Always add menu.o.
6152 * emacs.c (main): Always call syms_of_menu.
6153 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
6154
61552008-06-08 Chong Yidong <cyd@stupidchicken.com>
6156
6157 * Makefile.in: Compile menu.c.
6158
6159 * lisp.h: Declare syms_of_menu.
6160
6161 * emacs.c (main): Call syms_of_menu.
6162
6163 * keyboard.h: Relocate platform-independent menu definitions from
6164 xmenu.c.
6165
6166 * menu.c: New file. Relocate platform-independent menu
6167 definitions from xmenu.c. Suggested by Adrian Robert.
6168
6169 * xmenu.c: Remove platform-independent menu definitions.
6170 (menu_items menu_items_inuse, menu_items_allocated)
6171 (menu_items_used, menu_items_n_panes)
6172 (menu_items_submenu_depth): Move to keyboard.h.
6173 (init_menu_items, finish_menu_items, unuse_menu_items)
6174 (discard_menu_items, restore_menu_items, save_menu_items)
6175 (grow_menu_items, push_submenu_start, push_submenu_end)
6176 (push_left_right_boundary, push_menu_pane, push_menu_item)
6177 (keymap_panes, single_keymap_panes, single_menu_item)
6178 (list_of_panes, list_of_items, find_and_call_menu_selection)
6179 (xmalloc_widget_value, free_menubar_widget_value_tree)
6180 (parse_single_submenu, digest_single_submenu)
6181 (update_submenu_strings): Move to menu.c.
6182
61832008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
6184
6185 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
6186
61872008-06-06 Miles Bader <miles@gnu.org>
6188
6189 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
6190 face, not frame default.
6191
61922008-06-05 Martin Rudalics <rudalics@gmx.at>
6193
6194 * window.c (pop_up_windows, pop_up_frames)
6195 (display_buffer_reuse_frames, Vpop_up_frame_function)
6196 (Vdisplay_buffer_function, Veven_window_heights)
6197 (Vspecial_display_buffer_names, Vspecial_display_regexps)
6198 (Vspecial_display_function, Vsame_window_buffer_names)
6199 (Vsame_window_regexps, split_height_threshold)
6200 (Vsplit_window_preferred_function): Move those vars to window.el.
6201 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
6202 (Fdisplay_buffer): Move those functions to window.el.
6203 (syms_of_window): Remove corresponding declarations.
6204 (display_buffer): New function.
6205 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
6206 * dispnew.c (Flast_nonminibuf_frame): New function.
6207 * buffer.c (Fpop_to_buffer): Move to window.el.
6208
62092008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
6210
6211 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
6212
62132008-06-05 Kenichi Handa <handa@m17n.org>
6214
6215 * coding.c (detect_coding): Fix previous change.
6216 (detect_coding_system): Likewise.
6217
62182008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
6219
6220 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
6221
6222 * keymap.c (Vminibuffer_local_filename_must_match_map):
6223 Rename from Vminibuffer_local_must_match_filename_map.
6224 (syms_of_keymap):
6225 * minibuf.c (Fcompleting_read): Adjust accordingly.
6226 * commands.h: Rename declaration as well.
6227
62282008-06-05 Kenichi Handa <handa@m17n.org>
6229
6230 * font.c (Ffont_spec): Don't use font_parse_family_registry for
6231 family name.
6232 (Ffont_put): Likewise.
6233
6234 * fontset.c (fontset_find_font): Call font_open_for_lface with the
6235 current font-spec.
6236
6237 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
6238 is unspecified.
6239
6240 * xfaces.c (realize_x_face): If the font-related face attributes
6241 are the same as those of default face, realize a new fontset from
6242 default->fontset.
6243 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
6244
62452008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
6246
6247 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
6248 (move_it_in_display_line): New wrapper.
6249
6250 * window.c (window_scroll_pixel_based_preserve_x)
6251 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
6252 (window_scroll_pixel_based, window_scroll_line_based):
6253 Use them to preserve column positions.
6254 (syms_of_window): Initialize them.
6255
6256 * indent.c (Fvertical_motion): Extend first arg to allow passing an
6257 (HPOS . VPOS) pair.
6258
6259 * dispextern.h (move_it_in_display_line): Declare.
6260
62612008-06-05 Juanma Barranquero <lekktu@gmail.com>
6262
6263 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
6264 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
6265 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
6266
62672008-06-04 Juanma Barranquero <lekktu@gmail.com>
6268
6269 * window.c (Fset_window_parameter): Doc fix.
6270 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
6271
62722008-06-04 Joakim Verona <joakim@verona.se>
6273
6274 * window.h (struct window): Add new member window_parameters.
6275
6276 * window.c (Fwindow_parameters, Fwindow_parameter)
6277 (Fset_window_parameter): New defuns.
6278 (syms_of_window): Defsubr the new defuns.
6279 (make_window): Initialize window_parameters to nil.
6280
62812008-06-04 John Paul Wallington <jpw@pobox.com>
6282
6283 * eval.c (Fdefmacro): Doc fix.
6284
62852008-06-04 Kenichi Handa <handa@m17n.org>
6286
6287 * coding.c (detect_coding): Fix handling of coding->head_ascii.
6288 Be sure to call setup_coding_system when we find a proper coding system.
6289 (detect_coding_system): Fix handling of coding->head_ascii.
6290
62912008-06-03 Andreas Schwab <schwab@suse.de>
6292
6293 * font.c (font_prop_validate_spacing): Fix last change.
6294
62952008-06-03 Kenichi Handa <handa@m17n.org>
6296
6297 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
6298 (font_parse_fcname): Fix handling of unknown key.
6299
6300 * xfont.c (xfont_list): Try an alias.
6301
6302 * charset.c (char_charset): Return NULL if the arg charset_list is
6303 specified and C doesn't belong to any of them.
6304
63052008-06-02 Chip Coldwell <coldwell@redhat.com>
6306
6307 * font.c (font_pixel_size): Don't take cdr of an integer.
6308
63092008-06-02 Jim Meyering <meyering@redhat.com>
6310
6311 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
6312 * alloc.c (xfree): Return right away for a NULL arg.
6313 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
6314 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
6315 * mac.c (create_apple_event_from_event_ref): Likewise.
6316 (create_apple_event_from_drag_ref, cfstring_create_normalized):
6317 Likewise.
6318 * doprnt.c (doprnt1): Likewise.
6319 * frame.c (frame): Likewise.
6320 * keyboard.c (wipe_kboard): Likewise.
6321 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
6322 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
6323 * term.c (tty_default_color_capabilities, maybe_fatal)
6324 (delete_tty): Likewise.
6325 * w16select.c (string): Likewise.
6326 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
6327 * w32bdf.c (w32_free_bdf_font): Likewise.
6328 * w32fns.c (w32_unload_font): Likewise.
6329 * w32font.c (w32font_close): Likewise.
6330 * window.c (size_window): Likewise.
6331 * xselect.c (receive_incremental_selection): Likewise.
6332 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
6333 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
6334 * w32.c (stat): Likewise.
6335
6336 Remove useless if-before-free tests.
6337 * editfns.c (Fset_time_zone_rule): Likewise.
6338 * lread.c (nosuffix): Likewise.
6339 * ralloc.c (get_bloc): Likewise.
6340 * regex.c (reg_free): Likewise.
6341 * xftfont.c (xftfont_open, xftfont_close): Likewise.
6342 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
6343 * xsmfns.c (smc_save_yourself_CB): Likewise.
6344
63452008-06-02 Kenichi Handa <handa@m17n.org>
6346
6347 * font.c (font_find_for_lface): Handle float font size.
6348 (font_open_for_lface): Likewise.
6349
6350 * xfaces.c (x_supports_face_attributes_p): Check face->font before
6351 comparing the properties.
6352
63532008-06-01 Jason Rumney <jasonr@gnu.org>
6354
6355 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
6356 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
6357 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
6358 Don't add empty script list.
6359 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
6360
63612008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
6362
6363 * Makefile.in (dot, dotdot): Remove, update users.
6364 ".." has been used elsewhere in the file for a long time.
6365 (LIBXT_STATIC): Remove conditional based on unused variable.
6366
63672008-06-01 Miles Bader <miles@gnu.org>
6368
6369 * xfaces.c (Vface_remapping_alist): New variable.
6370 (syms_of_xfaces): Initialize it.
6371 (enum named_merge_point_kind): New type.
6372 (struct named_merge_point): Add `named_merge_point_kind' field.
6373 (push_named_merge_point): Make cycle detection respect different
6374 named-merge-point kinds.
6375 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
6376 Remove face-name alias resolution.
6377 (lface_from_face_name): New definition using
6378 `lface_from_face_name_no_resolve'.
6379 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
6380 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
6381 (get_lface_attributes): New definition that layers face-remapping on
6382 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
6383 (lookup_basic_face): New function.
6384 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
6385 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
6386 `get_lface_attributes'.
6387 (face_at_buffer_position): Use `lookup_basic_face' to lookup
6388 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
6389 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
6390
6391 * xdisp.c (init_iterator): Pass base_face_id through
6392 `lookup_basic_face' when we actually use it as a face-id.
6393 (handle_single_display_prop): Use `lookup_basic_face' to lookup
6394 DEFAULT_FACE_ID.
6395
6396 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
6397 lookup the initial face-id.
6398
6399 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
6400
64012008-06-01 Juanma Barranquero <lekktu@gmail.com>
6402
6403 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
6404 (Fremove_text_properties): Fix typos in docstrings.
6405
64062008-05-31 Kenichi Handa <handa@m17n.org>
6407
6408 * font.c (font_list_entities): Fix the car part of data to be
6409 stored in the cache.
6410
6411 * ftfont.c (ftfont_font_format): Don't use strcasestr.
6412
64132008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
6414
6415 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
6416 Add a `test' argument so another predicate than `equal' can be used.
6417 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
6418 (map_char_table): Remove unused vars `c' and `i'.
6419 * lisp.h (Foptimize_char_table): Adjust declaration.
6420 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
6421
64222008-05-30 Kenichi Handa <handa@m17n.org>
6423
6424 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
6425 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
6426 defined.
6427
64282008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
6429
6430 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
6431 (Fmake_variable_frame_local): Disallow mixing buffer-local and
6432 frame-local settings for the same variable.
6433
64342008-05-30 Kenichi Handa <handa@m17n.org>
6435
6436 * fontset.c (Ffont_info): Move to font.c.
6437 (syms_of_fontset): Delete defsubr of Sfont_info.
6438
6439 * font.c (font_style_to_value, font_score): Delete casting of the
6440 args to xstcasecmp.
6441 (register_font_driver): Increment num_font_drivers only when
6442 registering the driver globally.
6443 (Ffont_info): Move from fontset.c. Handle a font object too.
6444 (syms_of_font): Defsubr Sfont_info.
6445
64462008-05-29 Kenichi Handa <handa@m17n.org>
6447
6448 * coding.h (enum define_coding_utf8_arg_index): New enum.
6449 (enum coding_attr_index): Change coding_attr_utf_16_bom to
6450 coding_attr_utf_bom.
6451 (enum utf_bom_type): Rename from utf_16_bom_type.
6452 (struct utf_16_spec): Adjust for the above change.
6453 (struct coding_system): Add utf_8_bom in `spec' union.
6454
6455 * coding.c (CODING_UTF_8_BOM): New macro.
6456 (enum coding_category): Delete coding_category_utf_8, add
6457 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
6458 coding_category_utf_8_sig.
6459 (CATEGORY_MASK_UTF_8): Delete it.
6460 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
6461 (CATEGORY_MASK_UTF_8_SIG): New macros.
6462 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
6463 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
6464 CATEGORY_MASK_UTF_8_SIG.
6465 (CATEGORY_MASK_UTF_8): New macro.
6466 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
6467 (detect_coding_utf_8): Check BOM.
6468 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
6469 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
6470 (encode_coding_utf_16): Likewise.
6471 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
6472 (detect_coding, detect_coding_system): Handle utf-8-auto.
6473 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
6474 (syms_of_coding): Fix setting up of Vcoding_category_table.
6475
64762008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
6477
6478 * process.c (Faccept_process_output): If `millisec' is non-nil,
6479 `seconds' default to 0.
6480 (wait_reading_process_output): Also return non-nil if we read output
6481 from a non-running process.
6482
64832008-05-29 Jason Rumney <jasonr@gnu.org>
6484
6485 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
6486 `raster' specified.
6487 (add_font_entity_to_list): Allow non-opentype truetype fonts back
6488 in the uniscribe backend, but disallow any font that has no
6489 unicode subrange support.
6490
64912008-05-29 Juanma Barranquero <lekktu@gmail.com>
6492
6493 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
6494 Fix typos in docstrings.
6495
64962008-05-29 Kenichi Handa <handa@m17n.org>
6497
6498 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
6499 (Fx_family_fonts): Set frame correctly.
6500
65012008-05-28 Jason Rumney <jasonr@gnu.org>
6502
6503 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
6504
65052008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
6506
6507 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
6508 calling build_annotations.
6509
65102008-05-28 Juanma Barranquero <lekktu@gmail.com>
6511
6512 * coding.c (Fdecode_coding_region, Fencode_coding_region)
6513 (Fencode_coding_string):
6514 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
6515 <latin-extra-code-table>: Fix typos in docstrings.
6516 (syms_of_coding) <coding-system-alist>: Doc fix.
6517 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
6518
65192008-05-28 Kenichi Handa <handa@m17n.org>
6520
6521 * fontset.c (Ffont_info): Don't call font_close_object.
6522
6523 * font.c (font_parse_family_registry): Use Ffont_put to validate
6524 foundry and family.
6525 (font_delete_unmatched): Don't check spacing.
6526 (font_list_entities): Add spacing to the spec to list fonts.
6527
6528 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
6529 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
6530
6531 * coding.c (encode_coding_raw_text): Fix previous change.
6532 (encode_coding_object): When the dst_object is a buffer and is
6533 different from src_object, move gap to PT.
6534
65352008-05-27 Chong Yidong <cyd@stupidchicken.com>
6536
6537 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
6538
65392008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
6540
6541 * coding.c (encode_coding_raw_text): Set coding->produced_char for
6542 all branches. Compute it differently.
6543
6544 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
6545
65462008-05-27 Juanma Barranquero <lekktu@gmail.com>
6547
6548 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
6549 into "else if () ... else ...".
6550
65512008-05-27 Jason Rumney <jasonr@gnu.org>
6552
6553 * w32font.c (w32font_open_internal): Determine if glyph indices
6554 are likely to work here.
6555
65562008-05-27 Chong Yidong <cyd@stupidchicken.com>
6557
6558 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
6559 draw overlap glyphs with appropriate highlighting.
6560
65612008-05-27 Kenichi Handa <handa@m17n.org>
6562
6563 * xfont.c (xfont_open): Fix calculation of font->average_width.
6564
65652008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
6566
6567 * casefiddle.c (casify_object): Try to guess better whether the
6568 argument is a byte or a char.
6569
65702008-05-26 Andreas Schwab <schwab@suse.de>
6571
6572 * xselect.c (x_reply_selection_request): Properly handle format == 32.
6573 Always send multiples of format size.
6574
6575 * xterm.c (x_set_frame_alpha): Fix type mismatch.
6576
65772008-05-26 Jason Rumney <jasonr@gnu.org>
6578
6579 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
6580 (compute_metrics): Don't set failure if we just cleared the cache.
6581 (w32_weight_table): Remove unused variable.
6582 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
6583 backwards compatibility.
6584
65852008-05-25 Kenichi Handa <handa@m17n.org>
6586
6587 * w32term.c (x_draw_glyph_string):
6588 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
6589
6590 * xfaces.c: Delete unused function prototypes.
6591 (xstrlwr, font_frame): Delete them.
6592 (clear_face_cache): Delete unused variable.
6593
6594 * xftfont.c (xftfont_open): Delete unused variable.
6595 If underline_thickness is not 1, adjust underline_position.
6596
6597 * ftxfont.c (ftxfont_open): Delete unused variable.
6598
6599 * fontset.c (face_for_char): Optimize for the case of no charset
6600 property.
6601
6602 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
6603 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
6604 (otf_open, font_otf_capability, generate_otf_features)
6605 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
6606 Comment out by surrounding "#if 0" and "#endif" for the moment.
6607 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
6608 (syms_of_font): Codes for accessing above commented out.
6609
66102008-05-24 Eli Zaretskii <eliz@gnu.org>
6611
6612 * w32proc.c: Include dispextern.h.
6613
6614 * w32.c: Include dispextern.h.
6615
66162008-05-23 Juanma Barranquero <lekktu@gmail.com>
6617
6618 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
6619 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
6620 Fix typos in docstrings.
6621
66222008-05-23 Jason Rumney <jasonr@gnu.org>
6623
6624 * xsmfns.c: Remove includes that are already included by config.h.
6625
66262008-05-23 Kenichi Handa <handa@m17n.org>
6627
6628 * charset.c (Qemacs, charset_emacs): New variables.
6629 (char_charset): Fix for non-Unicode characters.
6630 (syms_of_charset): Define charset_emacs.
6631
6632 * w32term.c (x_draw_glyph_string): Be sure to update
6633 s->underline_thickness and s->underline_position. Be sure to draw
6634 underline within the current line area.
6635
6636 * xterm.c (x_draw_glyph_string): Be sure to update
6637 s->underline_thickness and s->underline_position. Be sure to draw
6638 underline within the current line area.
6639
6640 * fontset.c: Delete unused variables and add casting for char *
6641 throughout the file.
6642 (fontset_font): Try the fallback fonts of the current fontset
6643 before consulting the default fontset.
6644
6645 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
6646
6647 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
6648
66492008-05-22 Jason Rumney <jasonr@gnu.org>
6650
6651 * font.c: Don't include strings.h.
6652
6653 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
6654
6655 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
6656 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
6657 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
6658 to call xstrcasecmp.
6659
6660 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
6661
6662 * fontset.c (fs_query_fontset): Use xstrcasecmp.
6663
6664 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
6665
6666 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
6667
66682008-05-22 Kenichi Handa <handa@m17n.org>
6669
6670 * puresize.h (BASE_PURESIZE): Increase to 1220000.
6671
6672 * font.c (font_prop_validate_style): Adjust for the format
6673 change of font_style_table.
6674
6675 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
6676 two args.
6677
6678 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
6679 two args.
6680
66812008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
6682
6683 * minibuf.c (keys_of_minibuf): Delete.
6684 * lisp.h (keys_of_minibuf): Delete.
6685 * emacs.c (main): Don't call keys_of_minibuf.
6686
66872008-05-22 Kenichi Handa <handa@m17n.org>
6688
6689 * ftfont.c (ftfont_resolve_generic_family): Rename from
6690 ftfont_list_generic_family. Return a single family for each
6691 generic family.
6692 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
6693 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
6694 Call font_add_log.
6695 (ftfont_match): Call font_add_log.
6696
6697 * font.h (Ffont_xlfd_name): EXFUN adjusted.
6698 (FONT_DEBUG): Define it.
6699 (font_add_log): Extern it.
6700 (font_assert): Rename from xassert.
6701
6702 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
6703 (xfont_list_family): Call font_add_log.
6704 (xfont_match): Likewise.
6705 (memq_no_quit): Delete.
6706
6707 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
6708 call of Ffont_xlfd_name.
6709
6710 * xfaces.c (struct table_entry, slant_table, weight_table)
6711 (swidth_table): Move to font.c.
6712
6713 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
6714 xassert are changed to font_assert. Delete many unused variables.
6715 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
6716 New variables.
6717 (struct table_entry): Move from xfaces.c and modified.
6718 (weight_table, slant_table, width_table): Move from xfaces.c and
6719 contents adjusted for the change of struct table_entry.
6720 (font_style_to_value, font_style_symbolic): Adjust for the
6721 format change of font_style_table.
6722 (font_parse_family_registry): Don't overwrite existing foundry and
6723 family of font_spec.
6724 (font_score): Fix calculation of diff for sizes.
6725 (font_sort_entites): Call font_add_log.
6726 (font_delete_unmatched): Return a newly created list.
6727 (font_list_entities): Fix previous change. Call font_add_log.
6728 (font_matching_entity, font_open_entity, font_close_entity):
6729 Call font_add_log.
6730 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
6731 (Finternal_set_font_style_table): Delete.
6732 (BUILD_STYLE_TABLE): New macro.
6733 (build_style_table): New function.
6734 (Vfont_log, font_log_env_checked): New variables.
6735 (font_add_log): New function.
6736 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
6737 Declare Lisp variables "font-weight-table", "font-slant-table",
6738 "font-width-table", and "font-log". Initialize font_style_table.
6739
67402008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
6741
6742 * xterm.c (x_set_frame_alpha): Move declarations before statements.
6743
67442008-05-21 Seiji Zenitani <zenitani@mac.com>
6745 Ryo Yoshitake <ryo@shiftmode.net>
6746
6747 * frame.c (Qalpha): Add a new frame parameter `alpha'.
6748 (Vframe_alpha_lower_limit): New variable.
6749 (x_set_alpha): New function.
6750
6751 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
6752
6753 * xfns.c (x-create-frame, Qalpha):
6754 Initialize the frame parameter `alpha'.
6755 * xterm.c (OPAQUE, OPACITY): New.
6756 (x_set_frame_alpha): New function.
6757 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
6758
6759 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
6760 * w32fns.c (w32_frame_parm_handlers): Likewise.
6761
67622008-05-20 Jason Rumney <jasonr@gnu.org>
6763
6764 * w32font.c (add_font_entity_to_list): Don't add non-opentype
6765 truetype fonts to opentype list.
6766
67672008-05-20 Juanma Barranquero <lekktu@gmail.com>
6768
6769 * fontset.c (Ffontset_info): Doc fix.
6770 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
6771 <ignore-relative-composition>: Fix typos in docstrings.
6772
6773 * font.c (syms-of-font) <font-encoding-alist>:
6774 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
6775 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
6776 (Ffont_otf_alternates): Doc fixes.
6777
67782008-05-20 Kenichi Handa <handa@m17n.org>
6779
6780 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
6781 font.h through out the file.
6782 (FONT_DRIVERS): Rename from FONTOBJ.
6783 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
6784 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
6785
6786 * emacs.c (main): Call syms_of_font unconditionally.
6787
6788 * font.h (find_font_encoding): Extern it.
6789
6790 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
6791 fontset.c.
6792 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
6793 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
6794 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
6795 only when HAVE_WINDOW_SYSTEM is defined.
6796 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
6797 when HAVE_WINDOW_SYSTEM is defined.
6798
6799 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
6800 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
6801
6802 * xfaces.c: Include font.h unconditionally.
6803 (merge_face_ref, merge_face_vectors)
6804 (Finternal_set_lisp_face_attribute): Cancel the previous change.
6805
68062008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
6807
6808 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
6809 indirect_variable.
6810 * eval.c (lisp_indirect_variable): New fun.
6811 (Fuser_variable_p): Use it.
6812
68132008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
6814
6815 * lisp.h (indirect_variable):
6816 * data.c (indirect_variable, let_shadows_buffer_binding_p):
6817 Use Lisp_Symbol pointers rather than Lisp_Object.
6818 Adjust callers.
6819 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
6820 To this end, change calling-convention.
6821
6822 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
6823 if some non-hidden buffers are selected by string&pred.
6824
68252008-05-19 Chong Yidong <cyd@stupidchicken.com>
6826
6827 * process.c (wait_reading_process_output): Always check status
6828 when in batch mode.
6829
68302008-05-19 Kenichi Handa <handa@m17n.org>
6831
6832 * font.c (font_list_entities): Fix handling of cache.
6833 (font_matching_entity): Likewise.
6834
6835 * ftfont.c (cs_iso8859_1): Delete.
6836 (ft_face_cache): New variable.
6837 (struct ftfont_info): New member fc_charset_idx.
6838 (ftfont_build_basic_charsets): Delete.
6839 (fc_charset_table): New variable.
6840 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
6841 . FC_CHARSET_IDX) as :font-entity property in the font entity.
6842 Callers changed.
6843 (ftfont_lookup_cache, ftfont_get_charset): New functions.
6844 (ftfont_spec_pattern): New argument fc_charset_idx.
6845 Check registry more rigidly. Change callers.
6846 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
6847 change of :font-entity property of the font.
6848
6849 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
6850 property of the font.
6851
68522008-05-18 Juanma Barranquero <lekktu@gmail.com>
6853
6854 * coding.c (Fcoding_system_p): Rename argument to match docstring.
6855 (Funencodable_char_position, Fcheck_coding_systems_region)
6856 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
6857 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
6858 (Ffind_operation_coding_system, Fset_coding_system_priority)
6859 (Fcoding_system_eol_type): Doc fixes.
6860
68612008-05-17 Glenn Morris <rgm@gnu.org>
6862
6863 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
6864
68652008-05-16 Eli Zaretskii <eliz@gnu.org>
6866
6867 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
6868 and st_gid.
6869
6870 * frame.c (Fdelete_frame): Don't call font_update_drivers if
6871 HAVE_WINDOW_SYSTEM is not defined.
6872
6873 * xfaces.c (merge_face_ref, merge_face_vectors)
6874 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
6875 HAVE_WINDOW_SYSTEM is defined.
6876 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
6877
68782008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
6879
6880 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
6881
68822008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6883
6884 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
6885
68862008-05-15 Kenichi Handa <handa@m17n.org>
6887
6888 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
6889 preference.
6890
68912008-05-15 Glenn Morris <rgm@gnu.org>
6892
6893 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
6894
68952008-05-15 Chong Yidong <cyd@stupidchicken.com>
6896
6897 * fns.c (init_fns): Don't initialize weak_hash_tables here.
6898 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
6899
6900 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
6901
69022008-05-15 Kenichi Handa <handa@m17n.org>
6903
6904 * ftfont.c (ftfont_list): Downcase family name to check generic
6905 families.
6906
6907 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
6908 font-spec for QCfont value.
6909
6910 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
6911 buffer. Check the return value of it.
6912
69132008-05-14 Jason Rumney <jasonr@gnu.org>
6914
6915 * w32term.c (w32_get_glyph_overhangs): Remove.
6916 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
6917
69182008-05-14 Kenichi Handa <handa@m17n.org>
6919
6920 * font.c (font_prop_validate): Make nil a valid value.
6921 (font_clear_cache): Check if the cached vector of entities is nil
6922 or not.
6923
69242008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6925
6926 * emacs.c (main_thread): Conditionalize on
6927 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
6928 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
6929
6930 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
6931 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
6932 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
6933
69342008-05-14 Kenichi Handa <handa@m17n.org>
6935
6936 * coding.c (detect_coding_iso_2022): Ignore a coding category that
6937 has no corresponding coding system.
6938
69392008-05-14 Jason Rumney <jasonr@gnu.org>
6940
6941 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
6942
6943 * w32font.h (w32font_open_internal): Update declaration.
6944
6945 * w32font.c (w32font_open_internal): Change last argument from
6946 w32font_info struct to font object. Fill in font object from
6947 font_entity. Get Outline metrics if possible. Use them to
6948 calculate underline position and thickness. Use xlfd name as name
6949 property. Don't set codepage.
6950 (w32font_open): Pass font_object to w32font_open_internal. Don't
6951 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
6952 (w32font_draw): Use s->font.
6953 (clear_cached_metrics): Don't clear non-existent blocks.
6954
6955 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
6956 font was not found.
6957 (x_draw_glyph_string): Use underline position and thickness from font.
6958
6959 * w32uniscribe.c (uniscribe_open): Pass font_object to
6960 w32font_open_internal.
6961
69622008-05-14 Kenichi Handa <handa@m17n.org>
6963
6964 These changes are to delete all legacy font-handling codes, and
6965 make Emacs use only font-backends.
6966
6967 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
6968 (frame.o, image.o, print.o): Depend on $(FONTSRC).
6969
6970 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
6971
6972 * charset.h (Vcharset_non_preferred_head)
6973 (Vcurrent_iso639_language): Extern them.
6974
6975 * charset.c (Vcharset_non_preferred_head): New variable.
6976 (Vcurrent_iso639_language): New variable.
6977 (syms_of_charset): Declare it as a Lisp variable.
6978 (char_charset): Don't check non preferred charsets. As a last
6979 resort, return charset_unicode.
6980 (Fset_charset_priority): Update Vcharset_non_preferred_head.
6981
6982 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
6983 conditionals. Don't check enable_font_backend. Delete all codes
6984 used only when USE_FONT_BACKEND is not defined.
6985
6986 * dispextern.h (struct glyph_string): Change type of `font' to
6987 `struct font *'.
6988 (struct glyph_string): New member underline_position and
6989 underline_thickness.
6990 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
6991 (struct face): Change type of `font' to `struct font *'. Remove
6992 members `font_name', `font_info_id'.
6993 (per_char_metric, encode_char): Delete externs.
6994 (calc_pixel_width_or_height): Adjust the prototype.
6995
6996 * emacs.c (enable_font_backend): Delete extern.
6997 (main): Don't set enable_font_backend. Don't check the command
6998 line argument "-disable-font-backend".
6999
7000 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
7001 (enum font_property_index): New members FONT_DPI_INDEX,
7002 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
7003 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
7004 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
7005 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
7006 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
7007 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
7008 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
7009 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
7010 (struct font_spec, struct font_entity): New structs.
7011 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
7012 (struct font): Many members from old "struct font_info" moved to
7013 here. Members font and entity deleted.
7014 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
7015 the new font-related objects.
7016 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
7017 (CHECK_FONT_GET_OBJECT): Likewise.
7018 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
7019 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
7020 (struct font_driver): New members case_sensitive anc check. Type
7021 of the member list and open changed.
7022 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
7023 (font_symbolic_width, font_find_object, font_get_spec)
7024 (font_set_lface_from_name): Delete extern.
7025 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
7026
7027 * font.c: Include <strings.h>.
7028 (enable_font_backend): Delete it.
7029 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
7030 (CHECK_VALIDATE_FONT_SPEC): Delete it.
7031 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
7032 (null_string): Delete it.
7033 (null_vector): Make it static.
7034 (font_family_alist): Delete it.
7035 (Qnormal): Extern it.
7036 (QCextra, QClanguage): Delete it.
7037 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
7038 (font_make_spec, font_make_entity, font_make_object)
7039 (font_intern_prop): Renamed from intern_downcase. Don't downcase
7040 the string. Callers changed.
7041 (font_pixel_size): Adjusted for the format change of font-related
7042 objects.
7043 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
7044 (font_style_to_value, font_style_symbolic): New function.
7045 (build_font_family_alist): Delete it.
7046 (font_registry_charsets): Use Fassoc_string instead of
7047 assq_no_quit.
7048 (font_prop_validate_symbol): Don't return null_string.
7049 (font_prop_validate_style): Adjusted for the change of
7050 style-related values in a font vector.
7051 (font_property_table): Delete entries for QClanguage and
7052 QCantialias, add entries for QCavgwidth.
7053 (get_font_prop_index): Delete the 2nd argument FROM.
7054 (font_prop_validate): Arguments changed.
7055 (font_put_extra): Adjusted for the change of font-related objects.
7056 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
7057 (font_parse_fcname, font_unparse_fcname)
7058 (font_prepare_composition): Likewise.
7059 (font_parse_family_registry): Renamed from font_merge_old_spec.
7060 (otf_open): Delete the 1st arg entity.
7061 (font_otf_capability): Adjusted for the above change.
7062 (font_score): New arg alternate_families. Adjusted for the change
7063 of font-related objects.
7064 (font_sort_entites): New arg best_only.
7065 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
7066 Delete them.
7067 (font_match_p): Check alternate families.
7068 (font_find_object): Delete it.
7069 (font_check_object): New function.
7070 (font_clear_cache): Adjusted for the change of font-related objects.
7071 (font_delete_unmatched): New arg.
7072 (font_list_entities): Call font_driver->list with a spec that
7073 doesn't specify style-related properties.
7074 (font_matching_entity): Arguments changed. Caller changed.
7075 (font_open_entity): Adjusted for the change of font-related objects.
7076 (font_close_object, font_has_char, font_encode_char)
7077 (font_get_name, font_get_spec): Likewise.
7078 (font_spec_from_name, font_clear_prop, font_update_lface):
7079 New functions.
7080 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
7081 (font_prepare_for_face, font_done_for_face, font_open_by_name)
7082 (font_at): Adjusted for the change of font-related objects.
7083 (font_range): New function.
7084 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
7085 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
7086 (Fcopy_font_spec, Fmerge_font_spec): New function.
7087 (Ffont_family_list): Renamed from list-families.
7088 (Finternal_set_font_style_table): Arguments changed.
7089 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
7090 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
7091 change of font-related objects.
7092 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
7093
7094 * fontset.h (struct font_info): Delete it. Most members go to
7095 struct font.
7096 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
7097 (enum FONT_SPEC_INDEX): Delete it.
7098 (font_info, list_fonts_func, load_font_func, query_font_func)
7099 (set_frame_fontset_func, find_ccl_program_func)
7100 (get_font_repertory_func, new_fontset_from_font_name): Delete
7101 externs.
7102 (fontset_from_font_name): Extern it.
7103 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
7104 (FONT_INFO_FROM_FACE): Deleted.
7105 (face_for_font): Adjust prototype.
7106
7107 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
7108 conditionals. Don't check enable_font_backend. Delete all codes
7109 used only when USE_FONT_BACKEND is not defined.
7110 (get_font_info_func, list_font_func, load_font_func)
7111 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
7112 (get_font_repertory_func): Delete them.
7113 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
7114 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
7115 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
7116 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
7117 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
7118 (fontset_compare_rfontdef): New function.
7119 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
7120 rfont-defs by qsort. Adjusted for the change of font-group vector.
7121 (load_font_get_repertory): Deleted.
7122 (fontset_find_font): Use new macros to ref/set elements of
7123 font-def and rfont-def.
7124 (fontset_font): Fix the timing of remembering that no font for C.
7125 (free_face_fontset): Do nothing if the face has no fontset.
7126 (face_suitable_for_char_p): Use new macros to ref/set elements of
7127 rfont-def.
7128 (face_for_char): Likewise. Call face_for_char with font_object.
7129 (fs_load_font): Delete. Delete #pragma surrounding it.
7130 (fs_query_fontset): Use strcasecmp instead of strcmp.
7131 (generate_ascii_font_name): Adjusted for the format change of
7132 font-spec.
7133 (Fset_fontset_font): Likewise. Use new macros to set elements of
7134 font-def.
7135 (Fnew_fontset): Use font_unparse_xlfd to generate
7136 FONTSET_ASCII (fontset).
7137 (new_fontset_from_font_name): Deleted.
7138 (fontset_from_font): Renamed from new_fontset_from_font. Check if
7139 a fontset is already created for the font. FIx updating of
7140 Vfontset_alias_alist.
7141 (fontset_ascii_font): Deleted.
7142 (Ffont_info): Adjusted for the format change of font-spec.
7143 (Finternal_char_font): Likewise.
7144 (Ffontset_info): Likewise.
7145 (syms_of_fontset): Don't check load_font_func.
7146
7147 * fns.c (internal_equal): Handle PREV_FONT.
7148
7149 * frame.h: Delete USE_FONT_BACKEND conditional.
7150
7151 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
7152 conditionals. Don't check enable_font_backend. Delete all codes
7153 used only when USE_FONT_BACKEND is not defined.
7154 (x_set_font): Call x_new_font, not x_new_fontset2.
7155 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
7156 already set for the frame.
7157
7158 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
7159 a font-entity by font_make_entity. Use font_intern_prop instead
7160 of intern_downcase. Use FONT_SET_STYLE to set a style-related
7161 font property. If a font is scalable, set avgwidth property to 0.
7162 Set font-entity property by font_put_extra.
7163 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
7164 (ffont_driver): Adjusted for the change of struct font_driver.
7165 (ftfont_spec_pattern): New function.
7166 (ftfont_list): Return a list, not vector.
7167 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
7168 (ftfont_list_family): Don't downcase names.
7169 (ftfont_free_entity): Deleted.
7170 (ftfont_open): Return a font-object. Adjusted for the change of
7171 struct font. Get underline_thickness and underline_position from
7172 font property. Don't update dpyinfo->smallest_font_height and
7173 dpyinfo->smallest_char_width.
7174 (ftfont_close): Don't free `struct font'.
7175 (ftfont_has_char): Adjusted for the format change of font-entity.
7176 (ftfont_encode_char, ftfont_text_extents): Likewise.
7177
7178 * ftxfont.c (ftxfont_list): Return a list, not vector.
7179 (ftxfont_open): Return a font-object. Adjusted for the change of
7180 struct font. Get underline_thickness and underline_position from
7181 font property. Don't update dpyinfo->smallest_font_height and
7182 dpyinfo->smallest_char_width.
7183 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
7184 (ftxfont_draw): Adjusted for the change of struct font.
7185
7186 * image.c (image_ascent): Don't include "charset.h". Include
7187 "character.h" and "font.h".
7188
7189 * lisp.h (enum pvec_type): New member PREV_FONT.
7190 (Fassoc_string): EXFUN it.
7191
7192 * print.c: Include font.h.
7193 (print_object): Handle font-related objects.
7194
7195 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
7196 conditionals. Don't check enable_font_backend. Delete all codes
7197 used only when USE_FONT_BACKEND is not defined.
7198 (handle_auto_composed_prop): Do nothing if it->f is not on a
7199 window system. Check how many following characters can be
7200 displayed by the same font.
7201 (calc_pixel_width_or_height): Type of the 4th arg is changed to
7202 'struct font *'.
7203 (get_char_face_and_encoding): Assign the whole encoding task to
7204 the `encode-char' method of a font driver.
7205 (fill_composite_glyph_string): Adjusted for the change of `struct
7206 face' and `struct glyph_string'.
7207 (fill_glyph_string): Likewise.
7208 (get_per_char_metric): Arguments changed.
7209 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
7210 and `struct glyph_string'.
7211 (produce_stretch_glyph, calc_line_height_property)
7212 (x_produce_glyphs): Likewise.
7213
7214 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
7215 conditionals. Don't check enable_font_backend. Delete all codes
7216 used only when USE_FONT_BACKEND is not defined. Use
7217 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
7218 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
7219 (Qp): Extern them.
7220 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
7221 Deleted.
7222 (struct font_name): Deleted.
7223 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
7224 (compare_fonts_by_sort_order): New function.
7225 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
7226 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
7227 Deleted.
7228 (Fx_family_fonts): Use font_list_entities, and sort fonts by
7229 compare_fonts_by_sort_order.
7230 (Fx_font_family_list): Call Ffont_family_list.
7231 (face_numeric_value, face_numeric_weight, face_numeric_slant)
7232 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
7233 (face_symbolic_slant, face_symbolic_swidth)
7234 (split_font_name_into_vector, build_font_name_from_vector)
7235 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
7236 (font_rescale_ratio, split_font_name, build_font_name)
7237 (free_font_names, sort_fonts, x_face_list_fonts)
7238 (face_font_available_p, sorted_font_list, cmp_font_names)
7239 (font_list_1, concat_font_list, font_list, remove_duplicates):
7240 Deleted.
7241 (Fx_list_fonts): Use Ffont_list.
7242 (LFACE_AVGWIDTH): Deleted.
7243 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
7244 by FONTP.
7245 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
7246 (set_lface_from_font_name): Delete it.
7247 (set_lface_from_font): Renamed from
7248 set_lface_from_font_and_fontset. Caller changed. Don't set
7249 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
7250 for face.
7251 (merge_face_vectors): Copy font-spec if necessary.
7252 Clear properties of the font-spec if necessary.
7253 (merge_face_ref): Clear properties of the font-spec if necessary.
7254 (Finternal_set_lisp_face_attribute): Likewise.
7255 (set_font_frame_param): Use font_load_for_lface to load a
7256 font-object, and call Fmodify_frame_parameters with it.
7257 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
7258 font name by Ffont_xlfd_name.
7259 (Finternal_lisp_face_attribute_values): Don't check QCweight,
7260 QCslant, and QCwidth.
7261 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
7262 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
7263 Compare fonts by EQ.
7264 (lookup_non_ascii_face): Deleted.
7265 (face_for_font): The 2nd argument changed.
7266 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
7267 Check atomic font properties by case insensitive.
7268 (realize_non_ascii_face): Set face->overstrike correctly.
7269 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
7270 (dump_realized_face): Get font name from
7271 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
7272
7273 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
7274 conditionals. Don't check enable_font_backend. Delete all codes
7275 used only when USE_FONT_BACKEND is not defined.
7276 (xic_create_xfontset): Original code deleted and renamed from
7277 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
7278 (x_make_gc): Don't set GCFont in GCs.
7279 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
7280 opened by "fixed".
7281 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
7282 find_ccl_program_func, query_font_func, set_frame_fontset_func,
7283 get_font_repertory_func.
7284
7285 * xfont.c: Include <stdlib.h> and "ccl.h".
7286 (struct xfont_info): New structure.
7287 (xfont_query_font): Deleted.
7288 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
7289 moved from xterm.c.
7290 (xfont_driver): Adjusted for the change of struct font_driver.
7291 (compare_font_names): New function.
7292 (xfont_list_pattern): Sort font names case insensitively. Make
7293 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
7294 (xfont_list): Return a list, not vector.
7295 (xfont_match): If the font doesn't have QCname property, generate
7296 a name from the other font properties.
7297 (xfont_open): Return a font-object. Adjusted for the change of
7298 struct font. Get underline_thickness and underline_position from
7299 font property. Don't update dpyinfo->smallest_font_height and
7300 dpyinfo->smallest_char_width.
7301 (xfont_close): Don't free struct font.
7302 (xfont_prepare_face): Adjusted for the change of struct font.
7303 (xfont_done_face): Deleted.
7304 (xfont_has_char): Adjusted for the change of struct font.
7305 (xfont_encode_char, xfont_draw): Likewise.
7306 (xfont_check): New function.
7307
7308 * xftfont.c (xftfont_list): Adjusted for the change of `list'
7309 callback function.
7310 (xftfont_match): Adjusted for the format change of font-entity.
7311 (xftfont_open): Adjusted for the format change of font-entity and
7312 font-object. Adjusted for the change of struct font. Return a
7313 font-object. Don't update dpyinfo->smallest_font_height and
7314 dpyinfo->smallest_char_width.
7315 (xftfont_close): Block input while calling XftFontClose.
7316 (xftfont_prepare_face): Don't block input while calling
7317 xftfont_get_colors. Adjusted for the change of struct font.
7318 (xftfont_shape): Return value of error case fixed.
7319
7320 * xrdb.c (x_load_resources): Don't setup a fontset resource.
7321
7322 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
7323 conditionals.
7324 (FONT_WIDTH): Return (f)->max_width.
7325 (struct x_display_info): Delete member `font'.
7326 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
7327 (x_find_ccl_program, x_get_font_repertory): Delete externs.
7328 (struct x_output): Change type of `font' to `struct font *'.
7329
7330 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
7331 conditionals. Don't check enable_font_backend. Delete all codes
7332 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
7333 (x_per_char_metric, x_encode_char): Deleted.
7334 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
7335 (x_compute_glyph_string_overhangs): Adjusted for the change of
7336 `struct face'.
7337 (x_draw_glyph_string_foreground)
7338 (x_draw_composite_glyph_string_foreground): Likewise.
7339 (x_draw_glyph_string): Likewise. Use font->underline_position and
7340 font->underline_thickness.
7341 (x_new_font): Renamed from x_new_fontset2.
7342 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
7343 (x_check_font): Call `check' method of a font driver.
7344 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
7345 (x_query_font, x_get_font_repertory): Deleted.
7346 (x_find_ccl_program): Renamed and moved to xfont.c.
7347 (x_redisplay_interface): Adjusted for the change of `struct
7348 redisplay_interface'.
7349
7350 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
7351 conditionals. Don't check enable_font_backend. Delete all codes
7352 used only when USE_FONT_BACKEND is not defined. Surround non-used
7353 code by "#ifdef OLD_FONT" and "endif".
7354 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
7355
7356 * w32font.h (struct w32font_info): New member.
7357 (FONT_COMPAT): New macro.
7358 (w32font_open_internal): Prototype adjusted.
7359
7360 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
7361 OLD_FONT" and "endif".
7362
7363 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
7364 conditionals. Don't check enable_font_backend. Delete all codes
7365 used only when USE_FONT_BACKEND is not defined.
7366 (w32font_open): Return a font-object. Make a font-object by
7367 font_make_object. Adjusted for the change of struct w32font_info.
7368 (w32font_close): Don't free struct font. Adjusted for the change
7369 of struct w32font_info.
7370 (w32font_encode_char, w32font_text_extents, w32font_draw):
7371 Adjusted for the change of struct w32font_info.
7372 (w32font_draw): Likewise.
7373 (w32font_list_internal): Return a list, not vector.
7374 (w32font_open_internal): Change the 4th arg to font-object.
7375 Adjusted for the change of struct w32font_info and font-object format.
7376 (add_font_name_to_list): Don't downcase names.
7377 (w32_enumfont_pattern_entity): Make a font-entity by
7378 font_make_entity. Adjusted for the format change of font-entity.
7379 Use FONT_SET_STYLE to set a style-related font property. If a
7380 font is scalable, set avgwidth property to 0. Set font-entity
7381 property by font_put_extra.
7382 (font_matches_spec): Adjusted for the format change of font-entity.
7383 (w32_weight_table, w32_decode_weight): New variables.
7384 (w32_encode_weight): New function.
7385 (fill_in_logfont): Adjusted for the format change of font-spec.
7386 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
7387 weight value.
7388 (w32font_driver): Adjusted for the change of struct font_driver.
7389
7390 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
7391 conditionals. Don't check enable_font_backend. Surround non-used
7392 code by "#ifdef OLD_FONT" and "endif".
7393 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
7394 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
7395
7396 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
7397 conditionals. Don't check enable_font_backend. Delete all codes
7398 used only when USE_FONT_BACKEND is not defined. Surround non-used
7399 code by "#ifdef OLD_FONT" and "endif".
7400
7401 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
7402 (uniscribe_open): Return value changed to font-object.
7403 Adjusted for the format change of font-object.
7404 (uniscribe_otf_capability): Adjusted for the change of struct font.
7405 (add_opentype_font_name_to_list): Don't downcase names.
7406 (uniscribe_font_driver): Adjusted for the change of struct
7407 font_driver.
7408
74092008-05-13 Chong Yidong <cyd@stupidchicken.com>
7410
7411 * dispnew.c (update_frame_1): Check if tty output is still valid
7412 before flushing it.
7413
74142008-05-13 Jan Djärv <jan.h.d@swipnet.se>
7415
7416 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
7417 to Gtk+ menus.
7418
74192008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7420
7421 * dired.c (file_name_completion): Tweak the code so as to always do it
7422 in a single pass. Tighten the scope of some variables.
7423
7424 * dired.c (Qdefault_directory): New var.
7425 (file_name_completion): Use it instead of Fexpand_file_name.
7426 (syms_of_dired): Initialize it.
7427
74282008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
7429
7430 * fileio.c (double_dollars): Remove dead code.
7431
74322008-05-10 Eli Zaretskii <eliz@gnu.org>
7433
7434 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
7435 Mention w32-get-true-file-attributes in doc string.
7436
7437 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
7438
74392008-05-09 Glenn Morris <rgm@gnu.org>
7440
7441 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
7442 2008-04-23.
7443
74442008-05-09 Eli Zaretskii <eliz@gnu.org>
7445
7446 Support for reporting owner and group of each file on MS-Windows:
7447 * dired.c (stat_uname, stat_gname): New functions, with special
7448 implementation for w32.
7449 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
7450
7451 * w32.c: Rename the_passwd_* to dflt_passwd_*.
7452 (dflt_group_name): New static variable.
7453 (dflt_group): Rename from the_group.
7454 (init_user_info): Init dflt_group fields. Get user's group name
7455 from LookupAccountSid.
7456 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
7457 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
7458 New initialization states.
7459 (globals_of_w32): Initialize them to zero. Initialize the default
7460 group name to "None".
7461 (GetFileSecurity_Name): New global var, the name of the function
7462 to call for GetFileSecurity.
7463 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
7464 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
7465 (get_file_security, get_security_descriptor_owner)
7466 (get_security_descriptor_group, is_valid_sid)
7467 (get_file_security_desc, get_rid, get_name_and_id)
7468 (get_file_owner_and_group): New functions.
7469 (stat): Use get_file_security_desc and get_file_owner_and_group to
7470 report the owner and primary group of each file. Don't ignore the
7471 high 32 bits of file's size, now that st_size is 64-bit wide.
7472 Fix test when to get true file attributes.
7473 (init_user_info): Use get_rid instead of equivalent inline code.
7474 (fstat): Don't ignore the high 32 bits of file's size.
7475
74762008-05-09 Chong Yidong <cyd@stupidchicken.com>
7477
7478 * image.c (png_load): Use correct bit-depth for setting background
7479 color.
7480
74812008-05-08 Eli Zaretskii <eliz@gnu.org>
7482
7483 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
7484 epa-hook.elc.
7485
74862008-05-08 Juanma Barranquero <lekktu@gmail.com>
7487
7488 * font.c (Ffont_match_p): Don't use `iff' in docstring.
7489
74902008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
7491
7492 * macfns.c (Fx_create_frame): Make a copy of frame parameters
7493 because the original parameters are in pure storage now.
7494 (mac_window): Remove unused params. Update callers.
7495
74962008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
7497
7498 * lread.c (substitute_object_recurse): Use lower-level primitives.
7499 Don't signal errors when traversing sub-char-tables.
7500 Don't loop over all the possible characters when traversing char-tables.
7501
7502 * print.c (print_preprocess): Add sub-char-tables to the print-table,
7503 just like we do in print.c.
7504
75052008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
7506
7507 * minibuf.c (Ftry_completion): Remove code left over from when we used
7508 scmp instead of Fcompare_strings.
7509
75102008-05-04 Juanma Barranquero <lekktu@gmail.com>
7511
7512 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
7513
75142008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7515
7516 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
7517 Create bitmap context in native byte order.
7518
7519 * macterm.c (XDrawLine)
7520 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
7521 context in native byte order.
7522
75232008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7524
7525 * config.in: Regenerate.
7526
7527 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
7528 New definitions for Image I/O support.
7529 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
7530 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
7531 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
7532 (mac_data_provider_release_data, image_load_image_io)
7533 [USE_MAC_IMAGE_IO]: New functions.
7534 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
7535 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
7536 (init_image_func_pointer) [MAC_OSX]: Remove function.
7537 (image_load_quartz2d) [MAC_OSX]: Check availability of
7538 CGImageCreateWithPNGDataProvider at compile time.
7539 Use lowercase `false' for boolean constant.
7540 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
7541 Use image_load_image_io.
7542 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
7543 Don't check MyCGImageCreateWithPNGDataProvider.
7544 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
7545 Don't call init_image_func_pointer.
7546
7547 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
7548
7549 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
7550 Make variable non-static.
7551 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
7552 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
7553
7554 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
7555 (RED_FROM_ULONG): Mask off higher bits.
7556 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
7557
7558 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
7559 Include AvailabilityMacros.h.
7560 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
7561 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
7562
75632008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
7564
7565 * chartab.c (Fset_char_table_range): If range is t, really set all
7566 chars to that value.
7567
75682008-05-03 Eli Zaretskii <eliz@gnu.org>
7569
7570 * dired.c (Ffile_attributes): Don't allow the device number become
7571 negative.
7572
75732008-05-02 Daiki Ueno <ueno@unixuser.org>
7574
7575 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
7576
75772008-05-02 Juri Linkov <juri@jurta.org>
7578
7579 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
7580 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
7581 DEFAULT argument as a list of default values in docstrings.
7582
75832008-05-01 Chong Yidong <cyd@stupidchicken.com>
7584
7585 * puresize.h (BASE_PURESIZE): Increase to 1210000.
7586
75872008-05-01 Martin Rudalics <rudalics@gmx.at>
7588
7589 * dispnew.c (change_frame_size_1): Preserve small windows when
7590 shrinking frames by calling set_window_height|width with third
7591 arg 2.
7592
7593 * window.h (struct window): Replace field too_small_ok by field
7594 resize_proportionally.
7595
7596 * window.c (make_window): Initialize resize_proportionally.
7597 (enlarge_window): Temporarily set resize_proportionally to make
7598 sure that shrink_windows does scale the window proportionally.
7599 (shrink_windows): When window has resize_proportionally set try
7600 to shrink it proportionally by stealing from other windows.
7601 (struct saved_window, Fset_window_configuration)
7602 (compare_window_configurations): Handle resize_proportionally.
7603 (WINDOW_TOTAL_SIZE): New macro.
7604 (window_min_size, shrink_windows, size_window): Use it.
7605 (check_min_window_sizes): Remove. Invalid values of
7606 window-min-height|width are handled by window_min_size_2 now.
7607 (size_window, Fsplit_window, enlarge_window)
7608 (adjust_window_trailing_edge, grow_mini_window): Don't call
7609 check_min_window_sizes.
7610 (window_min_size_2, window_min_size_1, window_min_size):
7611 New argument safe_p for retrieving "safe" minimum sizes.
7612 (Fdisplay_buffer, Fsplit_window, enlarge_window)
7613 (adjust_window_trailing_edge, grow_mini_window):
7614 Adjust arguments of window_min_size... functions.
7615 (shrink_windows): Argument min_size removed. New argument
7616 safe_p allows shrinking windows to their safe minimum sizes.
7617 Calculate minimum size and decide whether a window shall be
7618 deleted for each window individually.
7619 (size_window): When nodelete_p equals 2, tell shrink_windows to
7620 delete windows only if their new minimum size is no more safe.
7621 (shrink_window_lowest_first): Call window_min_size_1 to make
7622 sure to preserve modeline of bottom-most window when resizing
7623 the minibuffer.
7624 (Fset_window_configuration, Fcurrent_window_configuration)
7625 (compare_window_configurations): Do not handle
7626 window-min-height|width any more.
7627 (syms_of_window): Clarify window-min-height|width doc-strings.
7628
76292008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
7630
7631 * dired.c (file_name_completion): Fix up the encoding/decoding issue
7632 some more. Copy some of the code from Ftry_completions.
7633 Remove special case code that dates back to initial revision when the
7634 slash was only added when necessary and that can't trigger nowadays.
7635
76362008-04-27 Kenichi Handa <handa@m17n.org>
7637
7638 * font.c (font_prop_validate): Signal `error' instead of `font'.
7639
76402008-04-29 Jason Rumney <jasonr@gnu.org>
7641
7642 * w32fns.c (Fw32_battery_status): New defun.
7643 (syms_of_w32fns): Defsubr it.
7644
76452008-04-28 Andreas Schwab <schwab@suse.de>
7646
7647 * dired.c (file_name_completion): Fix another mixing of encoded
7648 and decoded names.
7649
76502008-04-28 Juanma Barranquero <lekktu@gmail.com>
7651
7652 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
7653
76542008-04-27 Juanma Barranquero <lekktu@gmail.com>
7655
7656 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
7657
76582008-04-27 Andreas Schwab <schwab@suse.de>
7659
7660 * dired.c (file_name_completion): Fix inappropriate mixing of
7661 encoded and decoded names.
7662
7663 * xterm.c (XTread_socket): Fix use of uninitialized variable.
7664
7665 * puresize.h (BASE_PURESIZE): Increase to 1200000.
7666
76672008-04-26 Eli Zaretskii <eliz@gnu.org>
7668
7669 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
7670 2008-03-31, it's not needed anymore with `struct stat' definition
7671 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
7672 for the same reasons.
7673
76742008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
7675
7676 * m/sparc.h: Additional redefinitions for GNU/Linux.
7677
76782008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7679
7680 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
7681 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
7682 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
7683 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
7684 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
7685 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
7686 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
7687 Likewise.
7688
7689 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
7690 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
7691 (mac_ax_number_of_characters): Add externs.
7692 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
7693 [USE_MAC_TSM]: Likewise.
7694 (mac_handle_text_input_event) [MAC_OSX]:
7695 Handle kEventTextInputOffsetToPos for no active input area case.
7696 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
7697 (mac_handle_document_access_event)
7698 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
7699 (install_application_handler) [MAC_OSX]: Register handlers for
7700 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
7701 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
7702 Register mac_handle_document_access_event.
7703
7704 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
7705 Make functions non-static.
7706
77072008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
7708
7709 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
7710 (read_file_name_completion_ignore_case, insert_default_directory)
7711 (Qdefault_directory): Move to minibuffer.el.
7712 (Fread_file_name): Call the new `read-file-name' instead.
7713
77142008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7715
7716 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
7717 Make function non-static.
7718 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
7719 Remove function.
7720 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
7721 Move to mactoolbox.c.
7722 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
7723
7724 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
7725 (mac_rect_make): New macro.
7726
7727 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
7728 instead of float.
7729 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
7730 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
7731 (XSetBackground) [USE_CG_DRAWING]: Likewise.
7732 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
7733 CGRectMake.
7734 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
7735 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
7736 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
7737 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
7738 instead of WindowRef in argument type.
7739 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
7740 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
7741 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
7742 instead of DISPLAY. All uses changed.
7743 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
7744 (x_calc_absolute_position): Simplify so as not to use
7745 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
7746
7747 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
7748 instead of WindowRef in argument type.
7749 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
7750 [TARGET_API_MAC_CARBON]: Remove externs.
7751 (create_apple_event, mac_event_parameters_to_lisp)
7752 [TARGET_API_MAC_CARBON]: Add externs.
7753
7754 * mactoolbox.c (Vmac_ts_script_language_on_focus)
7755 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
7756 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
7757 is clicked.
7758 (x_activate_menubar): Remove extern for saved_menu_event_location.
7759 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
7760 Move from mac.c.
7761
77622008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7763
7764 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
7765 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
7766
77672008-04-23 Jason Rumney <jasonr@gnu.org>
7768
7769 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
7770 attributes only for local files.
7771
7772 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
7773 default to Qlocal.
7774
77752008-04-22 Juri Linkov <juri@jurta.org>
7776
7777 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
7778 read-buffer-to-switch instead of using the letter "B".
7779
77802008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
7781
7782 * fileio.c (Qdefault_directory): New variable.
7783 (Fread_file_name): Use it to pass `dir' to the completion functions.
7784
77852008-04-20 Chong Yidong <cyd@stupidchicken.com>
7786
7787 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
7788
77892008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
7790
7791 * keyboard.c (Vpre_help_message): Remove.
7792 (show_help_echo): Remove default C code.
7793
7794 * dired.c (directory_files_internal, file_name_completion):
7795 Only call ENCODE_FILE if the string is indeed decoded.
7796
77972008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
7798
7799 * Makefile.in (TOOLKIT_DEFINES): Remove.
7800 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
7801
78022008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7803
7804 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
7805 (mactoolbox.o): New target.
7806
7807 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
7808 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
7809
7810 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
7811 Use mac_set_frame_window_background instead of XSetWindowBackground.
7812 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
7813 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
7814 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
7815 instead of SetWindowTitleWithCFString.
7816 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
7817 Move function to mactoolbox.c.
7818 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
7819 Use mac_set_window_modified instead of SetWindowModified.
7820 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
7821 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
7822 (Fx_focus_frame): Use mac_front_non_floating_window instead of
7823 FrontNonFloatingWindow. Use mac_activate_window instead of
7824 ActivateWindow. Use mac_active_non_floating_window instead of
7825 ActiveNonFloatingWindow.
7826 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
7827 Use mac_show_hourglass and mac_hide_hourglass.
7828 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
7829 instead of GetGlobalMouse.
7830 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
7831 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
7832 Use mac_bring_window_to_front instead of BringToFront.
7833 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
7834 mactoolbox.c.
7835 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
7836 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
7837 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
7838 mactoolbox.c.
7839
7840 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
7841 (XtPointer): Move typedef from macmenu.c.
7842 (enum button_type): Move enum from macmenu.c.
7843 (widget_value): Move typedef from macmenu.c.
7844 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
7845 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
7846 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
7847 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
7848 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
7849 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
7850 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
7851 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
7852 (Selection): Move typedef from macselect.c.
7853 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
7854 macterm.c.
7855 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
7856 (mac_is_window_collapsed, mac_bring_window_to_front)
7857 (mac_send_window_behind, mac_hide_window, mac_show_window)
7858 (mac_collapse_window, mac_front_non_floating_window)
7859 (mac_active_non_floating_window, mac_activate_window)
7860 (mac_move_window_structure, mac_move_window, mac_size_window)
7861 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
7862
7863 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
7864 (enum mac_menu_kind): Move enum to mactoolbox.c.
7865 (min_menu_id): Move variable to mactoolbox.c.
7866 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
7867 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
7868 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
7869 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
7870 [TARGET_API_MAC_CARBON]: Likewise.
7871 (XtPointer): Move typedef to macgui.h.
7872 (enum button_type): Move enum to macgui.h.
7873 (widget_value): Move typedef to macgui.h.
7874 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
7875 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
7876 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
7877 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
7878 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
7879 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
7880 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
7881 (popup_activated_flag): Make variable non-static.
7882 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
7883 (add_menu_item, fill_menu, dispose_menus):
7884 Move functions to mactoolbox.c.
7885 (restore_show_help_function, menu_target_item_handler)
7886 (install_menu_target_item_handler, mac_handle_dialog_event)
7887 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
7888 [TARGET_API_MAC_CARBON]: Likewise.
7889 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
7890 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
7891 (find_and_call_menu_selection, name_is_separator): Make function
7892 non-static.
7893 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
7894 to mactoolbox.c.
7895 (set_frame_menubar): Don't call install_menu_quit_handler.
7896 (menu_item_selection): New variable.
7897 (mac_menu_show): Use create_and_show_popup_menu.
7898 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
7899 selection but set variable menu_item_selection. All uses changed.
7900 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
7901 Call install_menu_quit_handler. Move to mactoolbox.c.
7902
7903 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
7904 (Selection): Move typedef to macgui.h.
7905 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
7906 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
7907 Make variables non-static.
7908 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
7909 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
7910 Make functions non-static.
7911 (Vmac_service_selection) [MAC_OSX]: Likewise.
7912 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
7913 (mac_valid_selection_target_p, mac_clear_selection)
7914 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
7915 (mac_put_selection_value, mac_selection_has_target_p)
7916 (mac_get_selection_value, mac_get_selection_target_list)
7917 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
7918 Move functions to mactoolbox.c.
7919 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
7920 Likewise.
7921 (copy_scrap_flavor_data, mac_handle_service_event)
7922 (install_service_handler) [MAC_OSX]: Likewise.
7923 (syms_of_macselect) <Vmac_dnd_known_types>:
7924 Use mac_dnd_default_known_types.
7925
7926 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
7927 Move to mactoolbox.c.
7928 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
7929 (Fx_selection_owner_p): Add EXFUN.
7930 (install_window_handler, remove_window_handler, XSetWindowBackground):
7931 Remove externs.
7932 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
7933 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
7934 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
7935 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
7936 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
7937 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
7938 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
7939 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
7940 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
7941 (create_and_show_popup_menu, mac_get_selection_from_symbol)
7942 (mac_valid_selection_target_p, mac_clear_selection)
7943 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
7944 (mac_put_selection_value, mac_selection_has_target_p)
7945 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
7946 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
7947 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
7948 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
7949 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
7950 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
7951 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
7952 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
7953 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
7954
7955 * mactoolbox.c: New file.
7956
79572008-04-18 Jason Rumney <jasonr@gnu.org>
7958
7959 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
7960
79612008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
7962
7963 * character.c (Fmultibyte_char_to_unibyte):
7964 Return latin1 chars unchanged.
7965
7966 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
7967 relocated if it points to `name'.
7968
79692008-04-17 Kenichi Handa <handa@m17n.org>
7970
7971 * data.c (Faset): Allow setting a multibyte character in an
7972 ASCII-only unibyte string.
7973
7974 * lisp.h (STRING_SET_MULTIBYTE): New macro.
7975
79762008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
7977
7978 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
7979 done in config.h.
7980
79812008-04-16 Juanma Barranquero <lekktu@gmail.com>
7982
7983 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
7984 (Fchar_direction): Add usage in the docstring.
7985
79862008-04-15 Chong Yidong <cyd@stupidchicken.com>
7987
7988 * keyboard.c (read_key_sequence): Remove always-true checks.
7989
79902008-04-14 Jason Rumney <jasonr@gnu.org>
7991
7992 * w32font.c (w32font_open_internal): Set max_bounds.descent in
7993 compatibility struct, for better underline positioning.
7994
79952008-04-13 David Hansen <david.hansen@gmx.net>
7996
7997 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
7998 string.
7999
80002008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
8001
8002 * m/hp800.h (XUINT, XSET): Remove.
8003
80042008-04-12 Juanma Barranquero <lekktu@gmail.com>
8005
8006 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
8007 previous change.
8008
80092008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
8010
8011 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
8012 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
8013
80142008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
8015
8016 * keymap.h (map_keymap_canonical): Declare.
8017 * xmenu.c (single_keymap_panes): Use it.
8018
80192008-04-11 Glenn Morris <rgm@gnu.org>
8020
8021 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
8022 set the target's value to that of the alias.
8023
80242008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
8025
8026 * term.c (set_tty_color_mode): Left over typo.
8027
80282008-04-10 Michael Albinus <michael.albinus@gmx.de>
8029
8030 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
8031 only after check for file name handler functions. Signal, when
8032 native functionality is not supported.
8033 (syms_of_fileio): Declare it unconditionally.
8034
80352008-04-10 Jason Rumney <jasonr@gnu.org>
8036
8037 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
8038 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
8039
8040 * w32.c (logon_network_drive): Also logon to remote drives that
8041 are mapped to drive letters.
8042
80432008-04-10 Glenn Morris <rgm@gnu.org>
8044
8045 * xdisp.c (truncate-partial-width-windows): Doc fix.
8046
80472008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
8048
8049 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
8050 Move functions to minibuffer.el.
8051 (syms_of_fileio): Don't declare them.
8052
80532008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8054
8055 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
8056 (syms_of_minibuf): Remove its initialization.
8057
8058 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
8059
80602008-04-09 Juanma Barranquero <lekktu@gmail.com>
8061
8062 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
8063
80642008-04-09 Jason Rumney <jasonr@gnu.org>
8065
8066 * makefile.w32-in (distclean): Delete makefile too.
8067 (maintainer-clean): New target.
8068
8069 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
8070
8071 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
8072 for new font backend and composite cases.
8073
80742008-04-09 Jan Djärv <jan.h.d@swipnet.se>
8075
8076 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
8077 Most of the code moved to run_timers.
8078 (do_pending_atimers): Call run_timers.
8079 (run_timers): New function.
8080
8081 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
8082 run atimers.
8083
8084 * process.c (wait_reading_process_output): The same as above.
8085
80862008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8087
8088 * minibuf.c (last_exact_completion): Remove variable.
8089 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
8090 (complete_and_exit_1, complete_and_exit_2)
8091 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
8092 (Fdisplay_completion_list, display_completion_list_1)
8093 (Fminibuffer_completion_help, Fself_insert_and_exit)
8094 (Fexit_minibuffer, Fminibuffer_message): Move functions to
8095 minibuffer.el.
8096 (syms_of_minibuf): Remove corresponding initializations.
8097
8098 * keyboard.c (Qdeactivate_mark): New var.
8099 (command_loop_1): Use it to call `deactivate-mark'.
8100 (syms_of_keyboard): Initialize it.
8101
8102 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
8103 to another frame.
8104 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
8105 Don't call set_tty_color_mode.
8106 (store_frame_param): Reset previous_frame rather than call
8107 set_tty_color_mode.
8108 * term.c (set_tty_color_mode): Rewrite.
8109 * dispextern.h (set_tty_color_mode): New type.
8110 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
8111
81122008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
8113
8114 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
8115 for generic chars, which do not exist any more in emacs-unicode.
8116
81172008-04-08 Michael Albinus <michael.albinus@gmx.de>
8118
8119 * coding.c (detect_coding_emacs_mule)
8120 (Ffind_operation_coding_system): Fix typo.
8121
81222008-04-08 Jason Rumney <jasonr@gnu.org>
8123
8124 * w32uniscribe.c (SNAME): Extract only symbol name.
8125
8126 * w32font.h (struct w32_metric_cache): New struct.
8127 (w32font_info): Use it.
8128 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
8129 (CACHE_BLOCKSIZE): New constants.
8130
8131 * w32font.c (Qja, Qko, Qzh): New symbols.
8132 (syms_of_w32font): Initialise them.
8133 (font_matches_spec): Use them to filter by language.
8134 (recompute_cached_metrics): Remove function.
8135 (compute_metrics, clear_cached_metrics): New functions.
8136 (w32font_encode_char): Use them to manage metric cache.
8137 (w32font_text_extents): Cache metrics for all glyphs on demand.
8138 Delay converting glyph indices to WORD until needed.
8139 (w32font_open_internal): Initialize metric cache to empty.
8140 (registry_to_w32_charset): Charset should always be a symbol.
8141 (fill_in_logfont, list_all_matching_fonts): Family should
8142 always be a symbol.
8143
81442008-04-06 Jason Rumney <jasonr@gnu.org>
8145
8146 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
8147 Give up if glyph indices not supported. Use uniscribe obtained
8148 ABC widths for individual metrics. Map glyph clusters back to
8149 characters using fClusterStart flag. Return number of glyphs
8150 produced, not chars processed.
8151 (uniscribe_shape): Map char at FROM to current glyph.
8152
81532008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8154
8155 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
8156 Use SetMenuItemHierarchicalMenu.
8157
81582008-04-05 Jason Rumney <jasonr@gnu.org>
8159
8160 * image.c (pbm_load): Allow color values up to 65535.
8161 Throw an error if max_color_idx is outside the supported range.
8162 Report an error when image size is invalid.
8163 Read two bytes at a time when raw images have max_color_idx above 255.
8164
81652008-04-05 Eli Zaretskii <eliz@gnu.org>
8166
8167 * w32.c (readdir): If FindFirstFile/FindNextFile return in
8168 cFileName a file name that includes `?' characters, use the 8+3
8169 alias in cAlternateFileName instead.
8170
81712008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
8172
8173 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
8174 append "CCL: Quitted" when the CCL program is quitted.
8175 (setup_ccl_program): Initialize ccl->quit_silently to zero.
8176
8177 * ccl.h (struct ccl_program): New member quit_silently.
8178
81792008-04-05 Chong Yidong <cyd@stupidchicken.com>
8180
8181 * search.c (compile_pattern_1): Treat non-nil and non-string of
8182 search-spaces-regexp as nil.
8183
8184 * minibuf.c (Fassoc_string): Tweak docstring.
8185
81862008-04-05 Eli Zaretskii <eliz@gnu.org>
8187
8188 * dired.c (Ffile_attributes): Support inode numbers wider than 32
8189 bits. Remove ugly WINDOWSNT-specific kludge introduced on
8190 2008-03-14 to force inode be positive.
8191
8192 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
8193 _S_* ones, since we now use our own sys/stat.h.
8194 (stat, fstat): Don't mangle the inode number.
8195 (init_user_info): Don't restrict UID and GID to 0-60000 range.
8196
81972008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
8198
8199 * frame.h (struct frame): Give one more bit to `visible' since we use
8200 values larger than 1 to indicate obscured frames on ttys.
8201
8202 * keymap.c (Qkeymap_canonicalize): New var.
8203 (Fmap_keymap_internal): New fun.
8204 (describe_map): Use keymap-canonicalize.
8205
8206 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
8207 (Fundo_boundary): Set them.
8208 (syms_of_undo): Initialize them.
8209 (record_point): Use them instead of last_point_position*.
8210 (last_undo_buffer): Change type.
8211
82122008-04-04 Jason Rumney <jasonr@gnu.org>
8213
8214 * w32font.c (w32font_text_extents): Use font's ascent and descent.
8215 (recompute_cached_metrics): Don't set ascent and descent per char.
8216
8217 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
8218 (uniscribe_check_otf): Add GC protection before consing.
8219 Rearrange loop for counting features.
8220
82212008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
8222
8223 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
8224 buffer with byte-size of source buffer.
8225
82262008-04-03 Chong Yidong <cyd@stupidchicken.com>
8227
8228 * callint.c (Fcall_interactively): Handle temporary region even
8229 when shift-select-mode is off.
8230
82312008-04-03 Jason Rumney <jasonr@gnu.org>
8232
8233 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
8234
82352008-04-03 Kenichi Handa <handa@m17n.org>
8236
8237 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
8238 (CATEGORY_MASK_UTF_16): Likewise.
8239 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
8240 binary file.
8241 (detect_coding): Add null-byte detection for a binary file.
8242 (detect_coding_system): Likewise.
8243
82442008-04-03 Jason Rumney <jasonr@gnu.org>
8245
8246 * w32uniscribe.c: New file.
8247
8248 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
8249
8250 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
8251
8252 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
8253 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
8254 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
8255 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
8256 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
8257 (Qphonetic): New symbols.
8258 (syms_of_w32font): Initialize them.
8259 (font_supported_scripts): Use them.
8260 (w32font_list_family): List all charsets.
8261 (w32font_text_extents, recompute_cached_metrics): Fix metric
8262 calculations.
8263 (w32_enumfont_pattern_entity): Make full_type a DWORD.
8264 Give opentype fonts their own format.
8265 (font_matches_spec): New arguments backend and logfont.
8266 Handle :otf spec for uniscribe backend.
8267 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
8268 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
8269
8270 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
8271 font backend.
8272 (globals_of_w32fns): Initialize uniscribe font backend.
8273
8274 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
8275 dependencies.
8276 (w32uniscribe.$(O)): New file to build.
8277 (FONT_OBJ): Include w32uniscribe.$(O).
8278 (LIBS): Add uniscribe libraries.
8279
8280 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
8281
82822008-04-02 Chong Yidong <cyd@stupidchicken.com>
8283
8284 * callint.c (Vshift_select_mode): New var.
8285 (Finteractive): Document new ^ spec.
8286 (Fcall_interactively): Call handle-shift-selection if the ^ spec
8287 is present.
8288
8289 * keyboard.c (Vthis_command_keys_shift_translated): New var.
8290 (command_loop_1): Avoid running the direct display versions of
8291 forward-char and backward-char if shift-selection may occur.
8292 (read_key_sequence): Set Vthis_command_keys_shift_translated if
8293 shift-translation takes place.
8294
8295 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
8296 avoid clobbering by define-minor-mode.
8297
8298 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
8299 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
8300
8301 * syntax.c (Fforward_word): Add ^ interactive spec.
8302
8303 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
8304 (Fscroll_right): Add ^ interactive spec.
8305
83062008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
8307
8308 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
8309
8310 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
8311
8312 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
8313
83142008-03-31 Juri Linkov <juri@jurta.org>
8315
8316 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
8317
83182008-03-30 Jan Djärv <jan.h.d@swipnet.se>
8319
8320 * gtkutil.c (xg_set_geometry): Fix indentation.
8321 (xg_resize_outer_widget): Remove.
8322 (x_wm_size_hint_off): Fix indentation.
8323 (xg_frame_set_char_size): Call flush_and_sync after
8324 gtk_window_resize.
8325 (x_wm_set_size_hint): Pass NULL as geometry window to
8326 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
8327 Add menu bar and tool bar height to base height.
8328 (xg_update_frame_menubar, free_frame_menubar)
8329 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
8330 (update_frame_tool_bar, free_frame_tool_bar):
8331 Change xg_resize_outer_widget to xg_frame_set_char_size.
8332
83332008-03-30 Michael Albinus <michael.albinus@gmx.de>
8334
8335 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
8336 (Fdbus_call_method): New parameter TIMEOUT.
8337 (dbus-send-signal): Optimize UNGCPRO call.
8338
83392008-03-29 Juri Linkov <juri@jurta.org>
8340
8341 * window.c (Fdisplay_buffer): Move call to
8342 Vsplit_window_preferred_function out of conditions that check
8343 if window is eligible for vertical splitting.
8344 When Vsplit_window_preferred_function is non-nil, call it and use
8345 its non-nil return value as window. Otherwise, continue doing
8346 vertical splitting using Fsplit_window with arg horflag=nil.
8347 (syms_of_window) <Vsplit_window_preferred_function>: Change the
8348 default value from `split-window' to nil.
8349
83502008-03-29 Juri Linkov <juri@jurta.org>
8351
8352 * callint.c (Fcall_interactively): Revert 2008-03-16 change
8353 for interactive code letters 'b' and 'B'.
8354
83552008-03-29 Eli Zaretskii <eliz@gnu.org>
8356
8357 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
8358 multibyte string.
8359
83602008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
8361
8362 * keyboard.c (pending_funcalls): New var.
8363 (timer_check): Run it.
8364 (syms_of_keyboard): Initialize it.
8365 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
8366 (Vdelete_terminal_functions): New vars.
8367 (syms_of_terminal): Initialize them.
8368 (Fdelete_terminal): Run delete-terminal-functions.
8369 * xdisp.c (safe_eval): Rewrite.
8370 (safe_call2): New fun.
8371 * frame.c (Qdelete_frame_functions): New var.
8372 (syms_of_frame): Initialize it.
8373 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
8374 * lisp.h (safe_call2, pending_funcalls): Declare.
8375
83762008-03-28 Andreas Schwab <schwab@suse.de>
8377
8378 * indent.c (Fmove_to_column): Move declaration before statements.
8379
83802008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
8381
8382 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
8383 (struct frame): Use bit fields for boolean vars.
8384
8385 * process.c (server_accept_connection): Simplify naming.
8386 (emacs_get_tty_pgrp): Use SDATA.
8387
8388 * coding.c (decode_coding_object): Fix last change.
8389
83902008-03-27 Jason Rumney <jasonr@gnu.org>
8391
8392 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
8393
83942008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
8395
8396 * charset.c (Fdefine_charset_internal): Change the way of
8397 registering charsets in Vcharset_order_list.
8398 (syms_of_charset): Make the charset `eight-bit' supplementary.
8399
84002008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
8401
8402 * regex.c (EXTEND_BUFFER): Change order of pointer addition
8403 operations, to avoid having the difference between pointers
8404 overflow.
8405
84062008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
8407
8408 * indent.c (check_display_width): New fun.
8409 (scan_for_column): Use it.
8410
8411 * data.c (syms_of_data): Mark most-positive-fixnum and
8412 most-negative-fixnum as constants.
8413
8414 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
8415
8416 * indent.c (scan_for_column): Extract from current_column_1.
8417 Merge with the same code from Fmove_to_column.
8418 (current_column_1, Fmove_to_column): Use it.
8419
84202008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
8421
8422 * keymap.c (map_keymap_internal): New fun.
8423 (map_keymap): Use it.
8424 (Fmap_keymap_internal): New fun.
8425 (Fmap_keymap): Remove left-out test from before make_save_value.
8426
8427 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
8428
8429 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
8430 Use XCAR/XCDR.
8431
8432 * process.h (struct Lisp_Process): Remove filter_multibyte.
8433 * process.c (QCfilter_multibyte): Remove.
8434 (setup_process_coding_systems): Don't use filter_multibyte.
8435 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
8436 (read_process_output): Don't adjust multibyteness to filter_multibyte.
8437 (Fset_process_filter_multibyte): Change the coding-system to
8438 approximate the previous behavior.
8439 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
8440 coding-system.
8441
8442 * coding.c (decode_coding_object): When not decoding into a buffer,
8443 obey the coding system's preference of (uni|multi)byte.
8444
84452008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
8446
8447 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
8448 every char is changed and has a different byte-length.
8449 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
8450 Fix int -> EMACS_INT.
8451
84522008-03-23 David Hansen <david.hansen@gmx.net>
8453
8454 * dbusbind.c (xd_read_message): Remove extra copying of message
8455 strings. Check for NULL `interface' or `member'.
8456
84572008-03-22 Eli Zaretskii <eliz@gnu.org>
8458
8459 * w32.c (readdir): If FindFirstFile/FindNextFile return in
8460 cFileName a file name that includes `?' characters, use the 8+3
8461 alias in cAlternateFileName instead.
8462
84632008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
8464
8465 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
8466
84672008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
8468
8469 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
8470 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
8471 work on current_buffer only instead (that was already the case
8472 for some of the code anyway).
8473 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
8474 (temp_set_point, temp_set_point_both): Use EMACS_INT.
8475 (SET_PT, SET_PT_BOTH): Adjust.
8476 * intervals.h (set_point, temp_set_point, set_point_both)
8477 (temp_set_point_both): Remove redundant declarations.
8478
84792008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
8480
8481 * fileio.c (Finsert_file_contents):
8482 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
8483 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
8484 when buffer != current_buffer anyway.
8485
84862008-03-20 Andreas Schwab <schwab@suse.de>
8487
8488 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
8489 as default.
8490
84912008-03-19 Jason Rumney <jasonr@gnu.org>
8492
8493 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
8494 (syms_of_w32fns): Initialize them.
8495 (HOURGLASS_ID): New constant.
8496 (x_window_to_frame): Don't check hourglass_window.
8497 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
8498 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
8499 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
8500 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
8501 Only change the cursor if hourglass is not active.
8502 (Fx_create_frame): Initialize frame's current_cursor.
8503 (hourglass_atimer): Remove.
8504 (hourglass_started): New function.
8505 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
8506 (show_hourglass): Adapt to w32, changing argument to frame.
8507
8508 * w32term.h (struct w32_output): Remove hourglass_window.
8509 Add current_cursor.
8510
8511 * eval.c (call_debugger, Fsignal):
8512 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
8513 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
8514 (Fexecute_extended_command, cancel_hourglass_unwind):
8515 * minibuf.c (read_minibuf):
8516 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
8517
85182008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
8519
8520 * window.c (run_funs): New fun.
8521 (run_window_configuration_change_hook): Use it to run the buffer-local
8522 and the global part of the hook.
8523
8524 * xdisp.c (format_mode_line_unwind_data): Add window argument.
8525 (unwind_format_mode_line): Restore selected window.
8526 (x_consider_frame_title, Fformat_mode_line): Set selected window.
8527
85282008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8529
8530 * editfns.c (Fchar_equal): Check they are valid characters.
8531
8532 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
8533
85342008-03-17 Andreas Schwab <schwab@suse.de>
8535
8536 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
8537 against a charset.
8538
8539 * lisp.h (Fbuffer_list): Declare.
8540
85412008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 8542
aac0c6e3
MR
8543 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
8544 handlebox_widget is != 0.
8545
85462008-03-16 Juri Linkov <juri@jurta.org>
8547
8548 * callint.c (Fcall_interactively): For interactive code letters
8549 'b' and 'B' put the buffer list into the list of default "future"
8550 values of the minibuffer.
8551
85522008-03-16 Andreas Schwab <schwab@suse.de>
8553
8554 * keyboard.c (read_key_sequence): Fix downcasing of letters with
8555 modifiers.
8556
8557 * regex.c (re_match_2_internal): Correct matching of a charset
8558 against latin-1 characters.
8559
85602008-03-16 Kenichi Handa <handa@m17n.org>
8561
8562 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
8563 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
8564 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
8565 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
8566 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
8567 CHAR_STRING_ADVANCE.
8568 (produce_chars): Fix for the case that the source and the
8569 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
8570 instead of CHAR_STRING_ADVANCE.
8571 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
8572 STRING_CHAR_ADVANCE.
8573
85742008-03-15 Andreas Schwab <schwab@suse.de>
8575
8576 * regex.c (re_match_2_internal): Correct matching of eight bit
8577 characters in unibyte strings.
8578
85792008-03-15 Martin Rudalics <rudalics@gmx.at>
8580
8581 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
8582 at end of range when it coincides with the end of the buffer.
8583
85842008-03-14 Eli Zaretskii <eliz@gnu.org>
8585
8586 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
8587
8588 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
8589
85902008-03-14 Jason Rumney <jasonr@gnu.org>
8591
8592 * editfns.c (initial_tz): New variable.
8593 (syms_of_editfns): Initialize it.
8594 (Fset_time_zone_rule): Set it when first called.
8595 Use it when TZSTRING is nil.
8596
8597 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
8598 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
8599 (monitor_from_point_fn, get_monitor_info_fn): New globals.
8600 (globals_of_w32fns): Initialize them.
8601 (compute_tip_xy): Use them to position tooltips.
8602
86032008-03-14 Glenn Morris <rgm@gnu.org>
8604
8605 * emacs.c (main): Revert previous change.
8606 (standard_args): Revert -internal-script back to -scriptload,
8607 and remove the long-option form.
8608
86092008-03-13 Glenn Morris <rgm@gnu.org>
8610
8611 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
8612 Remove option -enable-font-backend.
8613
86142008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
8615
8616 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
8617
86182008-03-11 Jan Djärv <jan.h.d@swipnet.se>
8619
8620 * xterm.c (x_connection_closed): For GTK: If this is the last
8621 terminal just exit without closing the display.
8622
86232008-03-11 Jason Rumney <jasonr@gnu.org>
8624
8625 * w32font.c (w32font_full_name): Use floor to round.
8626
f0131492 86272008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
8628
8629 * sound.c (alsa_configure): Declare vol at beginning of block.
8630
8631 * fontset.c (Ffontset_info): Remove extra semicolon.
8632
86332008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
8634
8635 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
8636 size of resulting string.
8637
86382008-03-10 Jason Rumney <jasonr@gnu.org>
8639
8640 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
8641
86422008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8643
8644 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
8645 Don't pretend as if characters with display property haven't been
8646 consumed for string-replacing-string case.
8647
86482008-03-08 Kim F. Storm <storm@cua.dk>
8649
8650 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
8651 (get_next_display_element, next_element_from_string)
8652 (next_element_from_ellipsis, next_element_from_buffer): Use it.
8653
86542008-03-08 Andreas Schwab <schwab@suse.de>
8655
8656 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
8657
86582008-03-06 Jason Rumney <jasonr@gnu.org>
8659
8660 * w32font.c (w32_registry): Take font_type argument. Use ANSI
8661 when charset not specified. Only translate ANSI to unicode when
8662 font_type is truetype.
8663 (w32font_coverage_ok): New function.
8664 (add_font_entity_to_list): Use it to filter unsuitable fonts.
8665
86662008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
8667
8668 * lread.c (Fread_char): Resolve modifiers.
8669 (Fread_char_exclusive): Likewise.
8670
8671 * character.c (char_resolve_modifier_mask): New function.
8672 (char_string): Use char_resolve_modifier_mask.
8673 (Fchar_resolve_modifiers): New function.
8674 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
8675 function.
8676
86772008-03-04 Jason Rumney <jasonr@gnu.org>
8678
8679 * makefile.w32-in: Always include w32font.c in the build.
8680 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
8681
86822008-03-04 Andreas Schwab <schwab@suse.de>
8683
8684 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
8685 (versionclean): Likewise.
8686
86872008-03-04 Juanma Barranquero <lekktu@gmail.com>
8688
8689 * .cvsignore: Add oo.
8690
86912008-03-03 Andreas Schwab <schwab@suse.de>
8692
8693 * coding.c (decode_coding_object): Inhibit gap shrinking while
8694 decoding in place.
8695
86962008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
8697
8698 * w32term.c: Remove unused include "gnu.h".
8699 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
8700
8701 * gnu.h: Rename to ...
8702 * emacs-icon.h: ... this.
8703 * xterm.c: Use emacs-icon.h instead of gnu.h.
8704 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
8705
87062008-03-03 Juanma Barranquero <lekktu@gmail.com>
8707
8708 * w32font.c: Include math.h.
8709
87102008-03-03 Jason Rumney <jasonr@gnu.org>
8711
8712 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
8713 Compute options separately.
8714 (w32font_open_internal): Set glyph_idx before caching metrics.
8715
8716 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
8717 Define if system headers don't.
8718 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
8719 (w32font_encode_char): Don't declare here.
8720
8721 * w32font.c (Quniscribe, QCformat): New symbols.
8722 (syms_of_w32font): Define them.
8723 (w32font_has_char): Indicate uncertainty.
8724 (w32font_encode_char): Encode as glyph point. Make static.
8725 (recompute_cached_metrics): New function.
8726 (w32font_open_internal): Use it. Set font to use glyph points
8727 initially. Set format based on type of font.
8728 (w32font_text_extents, w32font_draw): Optionally use glyph points.
8729 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
8730 on it. Set format based on information available here.
8731 (add_font_entity_to_list): Identify backend based on opentype_only.
8732
87332008-03-02 Andreas Schwab <schwab@suse.de>
8734
8735 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
8736
8737 * coding.c (decode_coding_big5, produce_chars):
8738 Fix typos in last change.
8739
87402008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
8741
8742 * gnu.h: New icon.
8743
87442008-03-02 Kenichi Handa <handa@m17n.org>
8745
8746 * coding.c (decode_coding_utf_8): When eol-type of CODING is
8747 `dos', don't decode '\r' if that is the last in the source.
8748 (decode_coding_utf_16, decode_coding_emacs_mule)
8749 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
8750 (decode_coding_raw_text, decode_coding_charset): Likewise.
8751 (produce_chars): Don't decode EOL here. Use EMACS_INT.
8752
87532008-03-01 Jason Rumney <jasonr@gnu.org>
8754
8755 * w32font.c (w32font_full_name): Report point size for scalable fonts.
8756
87572008-03-01 Kim F. Storm <storm@cua.dk>
8758
8759 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
8760
87612008-03-01 Jason Rumney <jasonr@gnu.org>
8762
8763 * w32font.c (w32font_full_name): New function.
8764 (w32font_open_internal): Use it.
8765
87662008-03-01 Kim F. Storm <storm@cua.dk>
8767
8768 * dispnew.c (line_draw_cost): Fix invalid glyph check.
8769
87702008-03-01 Jason Rumney <jasonr@gnu.org>
8771
8772 * font.c (font_unparse_fcname): Increase len when style is a symbol.
8773
87742008-03-01 Jan Djärv <jan.h.d@swipnet.se>
8775
8776 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
8777 xg_frame_resized when the event is for the edit widget.
8778
8779 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
8780
8781 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
8782 set_char_size.
8783 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
8784 operations on widgets here. Just set frame size if needed.
8785 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
8786 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
8787 (x_wm_set_size_hint): Set size hints on the edit widget only, not
8788 the whole frame.
8789 (xg_create_tool_bar): Move attachment of the tool bar to
8790 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
8791 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
8792
87932008-03-01 Jason Rumney <jasonr@gnu.org>
8794
8795 * w32fns.c (w32_msg_pump): Disable debug code.
8796
87972008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8798
8799 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
8800
88012008-02-29 Chong Yidong <cyd@stupidchicken.com>
8802
8803 * xdisp.c (next_overlay_string): Don't set
8804 overlay_strings_at_end_processed_p if we're currently reading from
8805 a display string.
8806
88072008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
8808
8809 * xdisp.c (get_overlay_strings_1): Fix typo.
8810
88112008-02-29 Chong Yidong <cyd@stupidchicken.com>
8812
8813 * xdisp.c (get_overlay_strings_1): Add missing argument type.
8814
88152008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
8816
8817 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
8818
8819 * xdisp.c (display_mode_element): Cancel the previous change.
8820 (decode_mode_spec): Likewise.
8821 (handle_auto_composed_prop): Don't make composition if it->string
8822 is a string.
8823
88242008-02-27 Kim F. Storm <storm@cua.dk>
8825
8826 * lisp.h (GLYPH): Change type from int to struct with separate char
8827 and face_id members.
8828 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
8829 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
8830 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
8831 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
8832 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
8833 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
8834 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
8835 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
8836 handle new Lisp glyph code encoding, either an integer or a cons.
8837
8838 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
8839 (GLYPH_ALIAS): Delete.
8840 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
8841 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
8842 (GLYPH_FROM_CHAR): Replace macro by ...
8843 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
8844
8845 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
8846 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
8847 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
8848 (GLYPH_INVALID_P): New macro.
8849 (spec_glyph_lookup_face): Update prototype.
8850
8851 * dispnew.c (line_draw_cost): Adapt to new glyph type.
8852 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
8853 new glyph code encoding.
8854 (spec_glyph_lookup_face): No return value; update passed glyph instead.
8855 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
8856
8857 * xdisp.c (get_next_display_element, next_element_from_display_vector):
8858 Adapt to new glyph type and new glyph code encoding.
8859
8860 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
8861
8862 * indent.c (current_column, current_column_1, Fmove_to_column)
8863 (compute_motion): Adapt to new glyph code encoding.
8864
8865 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
8866
88672008-02-27 Chong Yidong <cyd@stupidchicken.com>
8868
8869 * process.c (wait_reading_process_output): Check for window
8870 changes caused by timers.
8871 Suggested by Johan Bockgård.
8872
88732008-02-27 Glenn Morris <rgm@gnu.org>
8874
8875 * emacs.c (USAGE1): Add `--disable-font-backend'.
8876
88772008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
8878
8879 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
8880 is made to the buffer.
8881
88822008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
8883
8884 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
8885 (face_at_string_position):
8886 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
8887 (face_at_string_position):
8888 * xdisp.c (display_string, next_overlay_change):
8889 * buffer.h (overlays_at):
8890 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
8891 Update callers.
8892
88932008-02-26 Chong Yidong <cyd@stupidchicken.com>
8894
8895 * editfns.c (Fformat): Doc fix.
8896
88972008-02-26 Juanma Barranquero <lekktu@gmail.com>
8898
8899 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
8900 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
8901 (Ffont_otf_alternates, Fquery_font): Doc fixes.
8902
89032008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
8904
8905 * buffer.c (Fbuffer_swap_text): New function.
8906 (syms_of_buffer): Defsubr it.
8907
89082008-02-25 Chong Yidong <cyd@stupidchicken.com>
8909
8910 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
8911
89122008-02-25 Jason Rumney <jasonr@gnu.org>
8913
8914 * w32font.c (w32font_draw): Draw one character at a time when padding.
8915
89162008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
8917
8918 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
8919 Handle a nil arg. Use run_window_configuration_change_hook.
8920 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
8921 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
8922 Use run_window_configuration_change_hook.
8923
89242008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
8925
8926 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
8927 1-pixel width.
8928
89292008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
8930
8931 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
8932 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
8933 if the glyph in the font is zero pixel with.
8934
8935 * dispextern.h (struct glyph_string): New member padding_p.
8936
8937 * w32font.c (w32font_draw): Pay attention to s->padding_p.
8938
8939 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
8940
8941 * xfont.c (xfont_draw): Pay attention to s->padding_p.
8942
8943 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
8944
8945 * font.c: If the font driver doesn't have `shape' function, return Qnil.
8946
89472008-02-25 Jason Rumney <jasonr@gnu.org>
8948
8949 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
8950
89512008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
8952
8953 Allow fine-grained image-cache flushing.
8954 * dispextern.h (struct image): Add `dependencies' field.
8955 (clear_image_caches): Change arg to Lisp_Object.
8956 * image.c (make_image): Initialize `dependencies' field.
8957 (clear_image_cache): Change arg to allow fine-grained flushing.
8958 Perform the flush even if image-cache-eviction-delay is nil.
8959 (clear_image_caches): Change arg to Lisp_Object.
8960 (Fclear_image_cache): Expand meaning of the argument.
8961 (mark_image): Mark `dependencies' field.
8962 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
8963 (lface_hash): Use XHASH rather than XFASTINT.
8964 (face_at_buffer_position): Fix int -> EMACS_INT position.
8965 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
8966 (select_frame_for_redisplay): Remove code duplication.
8967 (redisplay_internal): Adapt arg to call to clear_image_caches.
8968
89692008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
8970
8971 * s/vms4-0.h:
8972 * s/vms4-2.h:
8973 * s/vms4-4.h:
8974 * s/vms5-5.h: Remove, unused.
8975
8976 * s/irix5-2.h:
8977 * s/irix6-0.h:
8978 * s/riscos5.h:
8979 * s/mach-bsd4-3.h:
8980 * m/mips4.h: Remove files for obsolete systems.
8981
8982 * Makefile.in:
8983 * filelock.c:
8984 * unexmips.c:
8985 * m/hp9000s300.h:
8986 * m/iris4d.h:
8987 * s/aix3-1.h:
8988 * s/hpux.h:
8989 * s/msdos.h:
8990 * s/usg5-0.h:
8991 * s/usg5-2-2.h:
8992 * s/usg5-2.h:
8993 * s/usg5-3.h: Remove references to obsolete variables.
8994
8995 * s/irix5-0.h: Remove, move all the contents ...
8996 * s/irix6-5.h: ... here. Simplify.
8997 * config.in: Regenerate.
8998
89992008-02-24 Jason Rumney <jasonr@gnu.org>
9000
9001 * w32term.c (x_draw_glyph_string_background): Clear the background
9002 manually when cleartype is in use.
9003 (x_draw_glyph_string_foreground): Draw text transparently when
9004 cleartype is in use.
9005
9006 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
9007 a font into it unless we have to.
9008
90092008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9010
9011 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
9012 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 9013
aac0c6e3
MR
90142008-02-18 Jason Rumney <jasonr@gnu.org>
9015
9016 * w32fns.c (Fw32_shell_execute): Encode parameters.
9017
90182008-02-09 Eli Zaretskii <eliz@gnu.org>
9019
9020 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
9021
90222008-02-05 Juanma Barranquero <lekktu@gmail.com>
9023
9024 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
9025
90262008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
9027
9028 * xterm.c (x_set_offset): Don't change the gravity if
9029 CHANGE_GRAVITY is -1.
9030
90312008-02-23 Chong Yidong <cyd@stupidchicken.com>
9032
9033 * fileio.c (auto_save_error_occurred): New var.
9034 (auto_save_error): Set it.
9035 (Fdo_auto_save): Don't overwrite the error message if an auto-save
9036 error occurred.
9037
90382008-02-23 Eli Zaretskii <eliz@gnu.org>
9039
9040 * w32.c (globals_of_w32): Add initializations for
9041 g_b_init_get_sid_sub_authority and
9042 g_b_init_get_sid_sub_authority_count.
9043
90442008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
9045
9046 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
9047 (font_parse_xlfd): Use them for sanity check.
9048 (Finternal_set_font_style_table): Make sure the table is bijective.
9049
9050 Consolidate the image_cache to the terminal struct.
9051 * termhooks.h (P_): Remove redundant def.
9052 (struct terminal): New field `image_cache'.
9053 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
9054 of FRAME_X_IMAGE_CACHE.
9055 * xterm.h (struct x_display_info): Remove image_cache field.
9056 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
9057 * w32term.h (struct w32_display_info): Remove image_cache field.
9058 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
9059 * macterm.h (struct mac_display_info): Remove image_cache field.
9060 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
9061 * xterm.c (x_term_init):
9062 * w32term.c (w32_term_init):
9063 * macterm.c (mac_term_init): Set the image_cache in the terminal.
9064 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
9065 Remove declarations.
9066 (clear_image_caches, mark_image_cache): New declarations.
9067 * xfaces.c (clear_face_cache):
9068 * xdisp.c (redisplay_internal): Use clear_image_caches.
9069 * image.c (clear_image_cache): Don't check that a frame is on
9070 a window-system before checking if it shares the same cache.
9071 (clear_image_caches): New function.
9072 (Fclear_image_cache): Use it.
9073 (mark_image): Move from allo.c.
9074 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
9075 * alloc.c (mark_image, mark_image_cache): Move to image.c.
9076 (mark_object): Don't call mark_image_cache for frames.
9077 (mark_terminals): Call mark_image_cache.
9078
9079 * lisp.h (Fdelete_terminal): Declare.
9080
9081 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
9082 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
9083 wrong_type_argument.
9084
90852008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
9086
9087 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
9088 malayalam.el, and tamil.el. Add sinhala.el.
9089
90902008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
9091
9092 * xterm.c (x_connection_closed): Consolidate identical tests.
9093 (x_delete_terminal): Don't crash if called via x_connection_closed.
9094
90952008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
9096
9097 * xdisp.c (decode_mode_spec): New arg string.
9098 (display_mode_element): Adjust for the above change.
9099
91002008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9101
9102 * callint.c (Fcall_interactively): Use AREF.
9103
91042008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
9105
9106 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
9107
91082008-02-18 Jan Djärv <jan.h.d@swipnet.se>
9109
9110 * xfns.c (Fx_show_tip): Set string to " " if empty.
9111
91122008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
9113
9114 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
9115 with Qt.
9116
91172008-02-17 Kenichi Handa <handa@m17n.org>
9118
9119 * ftfont.c (ftfont_shape): Return Lispy number.
9120
9121 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
9122 for GCs.
9123 (Finternal_set_font_selection_order): Call font_update_sort_order
9124 only when enable_font_backend is set.
9125 (realize_x_face): Set face->font_info to that of default face only
9126 when enable_font_backend is set.
9127
9128 * xdisp.c (handle_composition_prop): Set it->c to the fist
9129 character of the composed region.
9130 (fill_composite_glyph_string): Set base_face->font_info to
9131 s->font_info. Get a face for ascii from base_face->ascii_face.
9132 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
9133 with a face already decided.
9134 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
9135 non-negative.
9136 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
9137 call font_prepare_composition unconditionally.
9138
9139 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
9140
9141 * xterm.h (struct x_display_info): New member font.
9142
9143 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
9144 (x_set_mouse_face_gc, x_new_font): Likewise.
9145 (x_term_init): Setup display_info->font.
9146 (x_delete_terminal): Free display_info->font.
9147
9148 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
9149
9150 * ftxfont.c (ftxfont_default_fid): Delete it.
9151 (ftxfont_open): Set xfont->fid to 0.
9152 (ftxfont_end_for_frame): Clear data specific to the frame and the
9153 font-driver.
9154
9155 * xftfont.c (xftfont_default_fid): Delete it.
9156 (xftfont_open): Set xfont->fid to 0.
9157
9158 * fontset.c (FONTSET_OBJLIST): New macro.
9159 (fontset_find_font): Update font-object list of the fontset.
9160 (free_realized_fontset): New function.
9161 (free_face_fontset): Call free_realized_fontset.
9162 (Ffont_info): Call font_close_object only when enable_font_backend
9163 is set.
9164
9165 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
9166 [HAVE_NTGUI]: Include w32term.h.
9167 [MAC_OS]: Include macterm.ch.
9168 (font_otf_ValueRecord): Use make_number.
9169 (font_finish_cache): Fix handling of reference count.
9170 (font_clear_cache): Update num_fonts.
9171 (font_open_entity): Update smallest_char_width and
9172 smallest_font_height of the frame.
9173 (font_close_object): Update num_fonts.
9174 (Fclear_font_cache): Fix finding the target cache data.
9175
91762008-02-16 Glenn Morris <rgm@gnu.org>
9177
9178 * fontset.c (Finternal_char_font): Fix compilation warning.
9179
91802008-02-16 Eli Zaretskii <eliz@gnu.org>
9181
9182 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
9183 instead of char arrays. Enlarge the size of array passed to
9184 get_token_information.
9185
9186 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
9187 warnings.
9188
91892008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
9190
9191 * .gdbinit: Don't set `args', it breaks gdb --args.
9192
91932008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
9194
9195 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
9196 within a narrowed buffer.
9197
91982008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
9199
9200 * coding.c (decode_coding_object, encode_coding_object):
9201 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
9202
92032008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
9204
9205 * coding.c (coding_set_destination): Use BEG_BYTE rather than
9206 hardcoding 1.
9207 (detect_coding_system):
9208 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
9209 (string_char_to_byte, string_byte_to_char, insert_from_gap):
9210 * insdel.c (insert_from_gap):
9211 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
9212 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
9213 (string_to_multibyte):
9214 * character.c (chars_in_text, multibyte_chars_in_text):
9215 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
9216
9217 * character.h (FETCH_STRING_CHAR_ADVANCE)
9218 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
9219 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
9220 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
9221
9222 * casefiddle.c (casify_region): Only call after-change and composition
9223 functions on the part of the region that was changed.
9224
9225 * keyboard.c (read_avail_input):
9226 * frame.c (Fdelete_frame): Call Fdelete_terminal.
9227
92282008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
9229
9230 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
9231 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
9232
92332008-02-11 Juanma Barranquero <lekktu@gmail.com>
9234
9235 * w32menu.c (push_submenu_start, push_submenu_end)
9236 (push_left_right_boundary, push_menu_pane, push_menu_item):
9237 * keyboard.c (read_key_sequence): Don't pass args with side effects
9238 to AREF, it fails when compiling with -DENABLE_CHECKING.
9239
92402008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
9241
9242 * Makefile.in (${lispsource}international/charprop.el):
9243 Delete this target.
9244
9245 * search.c (boyer_moore): Fix incorrect synching of the trunk and
9246 emacs-unicode-2.
9247
92482008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
9249
9250 * terminal.c (Fdelete_terminal): Clean up the `force' path.
9251
92522008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
9253
9254 * frame.c (Qnoelisp): New symbol.
9255 (syms_of_frame): Initialize it.
9256 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
9257 harmless Elisp code, from a strong `force' from x_connection_closed.
9258 * frame.h (Qnoelisp): Declare.
9259 * xterm.c (x_connection_closed): Pass `noelisp'.
9260
9261 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
9262 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
9263 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
9264 rather than `int' for the type of `type'.
9265
92662008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
9267
9268 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
9269
9270 * Makefile.in (GNUC): Remove support for gcc-1.x.
9271
92722008-02-10 Richard Stallman <rms@gnu.org>
9273
9274 * lisp.h (ASET): Use AREF, not ASLOT.
9275
92762008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
9277
9278 * lisp.h (ASET): Check bounds.
9279
92802008-02-10 Glenn Morris <rgm@gnu.org>
9281
9282 * buffer.c (mode-name): Doc fix.
9283
92842008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
9285
9286 * Makefile.in:
9287 * emacs.c:
9288 * gmalloc.c:
9289 * keyboard.c:
9290 * lisp.h:
9291 * m/ibm370aix.h:
9292 * process.c:
9293 * regex.c:
9294 * s/hpux.h:
9295 * sysdep.c:
9296 * sysselect.h:
9297 * systty.h:
9298 * unexec.c:
9299 * w32term.c:
9300 * xsmfns.c:
9301 * xterm.c: Remove code that deals with obsolete variables.
9302
9303 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
9304
9305 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
9306 nothing else needs it anymore.
9307
93082008-02-09 Eli Zaretskii <eliz@gnu.org>
9309
9310 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
9311 instead of unibyte_char_to_multibyte.
9312
93132008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
9314
9315 * s/gnu-linux.h: Remove commented out code.
9316
9317 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
9318
9319 * Makefile.in: Update what RMS says about using autoconf.
9320 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
9321 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
9322 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
9323 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
9324
93252008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
9326
9327 * keymap.c (Fkey_description): Move side effect outside of macro call.
9328
9329 * xfaces.c (Finternal_make_lisp_face):
9330 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
9331
9332 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
9333 (syms_of_fontset): Use ASET.
9334
9335 * fns.c (concat): Move side effect outside of macro call.
9336 (hash_clear): Use ASET.
9337
93382008-02-08 Richard Stallman <rms@gnu.org>
9339
9340 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
9341 If FORCE, and frame has a surrogate minibuffer for another frame,
9342 delete the other frame first.
9343
93442008-02-07 Timo Savola <timo.savola@iki.fi>
9345
9346 * xterm.c (x_detect_focus_change): Handle embed client message.
9347 (handle_one_xevent): Ditto.
9348 (handle_one_xevent): If embedded and we get a button press/release,
9349 request focus.
9350 (xembed_set_info, xembed_send_message): New functions.
9351 (x_make_frame_visible): Call xembed_set_info if embedded.
9352 (x_make_frame_invisible): Call xembed_set_info if embedded.
9353 (x_term_init): Initialize Xatom_XEMBED.
9354 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
9355 (x_iconify_frame): Ditto.
9356
9357 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
9358 (enum xembed_info, enum xembed_message, enum xembed_focus)
9359 (enum xembed_modifier, enum xembed_accelerator): New.
9360 (xembed_set_info, xembed_send_message): Declare.
9361 (FRAME_X_EMBEDDED_P): New.
9362
9363 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
9364 gtk_plug_new.
9365
9366 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
9367 window ID of a frame.
9368 (x_window): Reparent frame if embedded.
9369 (Fx_create_frame): Don't set border width if embedded.
9370
9371 * emacs.c (USAGE3): Add --parent-id.
9372 (standard_args): Ditto.
9373
93742008-02-07 Jan Djärv <jan.h.d@swipnet.se>
9375
9376 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
9377
93782008-02-07 Jim Meyering <meyering@redhat.com>
9379
9380 Use "do...while (0)", not "if (1)...else" in macro definitions.
9381 The latter provokes a warning from gcc about the empty else, when
9382 followed by ";". Also, without that trailing semicolon, it would
9383 silently swallow up any following statement.
9384 * syntax.h (SETUP_SYNTAX_TABLE)
9385 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
9386 * buffer.h (DECODE_POSITION): Likewise.
9387 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
9388 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
9389 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
9390 (FETCH_CHAR_ADVANCE): Likewise.
9391 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
9392
93932008-02-07 Jim Meyering <meyering@redhat.com>
9394
9395 * lread.c [lint]: Don't include <sys/inode.h>.
9396
93972008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
9398
9399 * xselect.c (x_handle_dnd_message):
9400 * xmenu.c (digest_single_submenu, xmenu_show):
9401 * xdisp.c (with_echo_area_buffer_unwind_data)
9402 (format_mode_line_unwind_data, unwind_format_mode_line)
9403 (display_menu_bar):
9404 * eval.c (Ffetch_bytecode):
9405 * doc.c (store_function_docstring):
9406 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
9407 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
9408 * buffer.c (add_overlay_mod_hooklist): Use ASET.
9409
94102008-02-07 Kenichi Handa <handa@m17n.org>
9411
9412 * ftxfont.c (ftxfont_open): Don't set
9413 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
9414
9415 * ftfont.c (ftfont_open): Fix previous change.
9416
94172008-02-06 Jason Rumney <jasonr@gnu.org>
9418
9419 * w32font.c (w32font_text_extents): Fill in lbearing metric.
9420 Use cached metrics for ASCII characters.
9421 (w32font_open_internal): Don't set font's owning_frame.
9422 Cache metrics for ASCII characters.
9423
9424 * w32font.h (struct w32font_info): Add ascii_metrics.
9425 Remove owning_frame.
9426
94272008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
9428
9429 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
9430 to negative value.
9431
9432 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
9433
9434 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
9435
9436 * charset.c (syms_of_charset): Set QCtest and Qeq.
9437
94382008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
9439
9440 * process.c (Fstart_process):
9441 * callproc.c (Fcall_process): Handle the case where
9442 Funhandled_file_name_directory returns nil.
9443
9444 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
9445 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
9446 * font.c (check_gstring): Use them and AREF to access the vector before
9447 we know it's really a gstring.
9448 (Ffont_shape_text): Fix typo.
46e722a9 9449 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
9450
9451 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
9452 Declare.
9453
9454 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
9455
94562008-02-05 Jason Rumney <jasonr@gnu.org>
9457
9458 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
9459 Set smallest_font_height and smallest_char_width in display info.
9460
94612008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
9462
9463 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
9464
94652008-02-05 Miles Bader <miles@gnu.org>
9466
9467 * xfaces.c (get_lface_attributes, merge_named_face)
9468 (lookup_named_face, lookup_derived_face, realize_named_face):
9469 Revert 2008-02-01 change by cyd@stupidchicken.com.
9470
94712008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
9472
9473 * fontset.c (Ffontset_info): Handle the case of inhibitting the
9474 fallback fonts.
9475 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
9476
94772008-02-04 Jason Rumney <jasonr@gnu.org>
9478
9479 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
9480 set full_name.
9481 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
9482
94832008-02-03 Jason Rumney <jasonr@gnu.org>
9484
9485 * makefile.w32-in (OBJ1): Include font.o here.
9486 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
9487
94882008-02-02 Jason Rumney <jasonr@gnu.org>
9489
9490 * makefile.w32-in (temacs): Bump EMHEAP to 21.
9491
94922008-02-01 Jason Rumney <jasonr@gnu.org>
9493
9494 * s/cygwin.h: Define VIRT_ADDR_VARIES.
9495
9496 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
9497
94982008-02-01 Andreas Schwab <schwab@suse.de>
9499
9500 * Makefile.in (shortlisp, lisp): Update for rename of
9501 ../lisp/language/myanmar.el.
9502
95032008-02-01 Chong Yidong <cyd@stupidchicken.com>
9504
9505 * xfaces.c (get_lface_attributes): Delete function.
9506 (merge_named_face, lookup_named_face, lookup_derived_face)
9507 (realize_named_face): Call lface_from_face_name directly, and use
9508 the fact that merge_face_vectors does not alter its FROM argument.
9509
95102008-02-01 Jason Rumney <jasonr@gnu.org>
9511
9512 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
9513 input in the default locale. Handle non-Unicode multibyte input.
9514
95152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9516
9517 * fontset.c (reorder_font_vector): Exclude nil elements from the
9518 font group. Don't try multiple fonts.
9519 (fontset_font): Adjust for the above change.
9520 (Finternal_char_font): Return nil if the found font doesn't
9521 contain the character ch.
9522
9523 * Makefile.in (lisp, shortlisp): Add cham.el.
9524
95252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9526
9527 * font.h (FONTP): Make it return 1 also for a font-object.
9528
9529 * .gdbinit (xfontset): New function.
9530
9531 * font.c (font_find_for_lface): Check if the character C is
9532 supported or not only for the first font.
9533
9534 * fontset.c (reorder_font_vector): Fix typo.
9535 (fontset_find_font): Don't add a font-spec specifying a script.
9536 Use 0 (not Qt) for the indication of empty font-group. Change the
9537 format of RFONT-DEF. Return Qt if no font in the font-group
9538 support the character.
9539 (fontset_font): Adjust for the above change. If no font was
9540 found the character, remember that.
9541 (face_for_char): Adjust for the change of RFONT-DEF.
9542 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
9543 no font for the target.
9544 (Finternal_char_font): Adjust for the change of RFONT-DEF.
9545
95462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9547
9548 * font.c (font_load_for_face): Handle the case that the font in
9549 face->lface is a string.
9550
95512008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9552
9553 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
9554
95552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9556
9557 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
9558 Fix previous change. If the frame is not on a window system,
9559 signal an error.
9560
95612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9562
9563 * coding.c (decode_coding_object, encode_coding_object): Adjust
9564 marker positions after conversion.
9565
9566 * lisp.h (struct Lisp_Marker): New member need_adjustment.
9567
95682008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9569
9570 * font.c (font_find_for_lface): Fix the handling of the return
9571 value of font_has_char.
9572 (Ffont_shape_text): Fix previous change.
9573
9574 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
9575 (fontset_ref_and_range): Delete it.
9576 (fontset_find_font): Call char_table_ref_and_range instead of
9577 FONTSET_REF_AND_RANGE.
9578 (make_fontset): Don't setup font groups of Latin here.
9579 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
9580 (new_fontset_from_font): Make the specified font the default for
9581 all Latin characters.
9582
95832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9584
9585 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
9586 is on a window system before accessing the fontset of the frame.
9587
95882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9589
9590 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
9591
9592 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
9593 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
9594
9595 * font.c (Ffont_shape_text): If the font driver doesn't have a
9596 shaper function, make zero-width glyphs to have at least one-pixel
9597 width. Fix setting of `to' field of glyphs.
9598
95992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9600
9601 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
9602 glyphs.
9603
9604 * font.h (struct font_driver): Improve docstring of member `shape'.
9605
96062008-02-01 Kenichi Handa <handa@m17n.org>
9607
9608 * composite.c (syms_of_composite): Fix docstring of
9609 auto-composition-function.
9610
9611 * font.h (LGLYPH_SIZE): New macro.
9612
9613 * font.c (Ffont_fill_gstring): Stop filling when a character not
9614 supported by the font is found.
9615 (Ffont_shape_text): When a shape callback function returns nil,
9616 try at most two more times with larger gstring.
9617 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
9618
9619 * xdisp.c (handle_auto_composed_prop): Change the argument to
9620 auto-composition-function.
9621
9622 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
9623 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
9624 Lispy glyph and store it in the lgstring.
9625
9626 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
9627
9628 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
9629
96302008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9631
9632 * font.c (Ffont_shape_text): Avoid unnecessary composition.
9633
9634 * fontset.c (Vfont_encoding_charset_alist): New variable.
9635 (syms_of_fontset): DEFVAR it.
9636 (reorder_font_vector, fontset_find_font): Optimize for the case of
9637 no need of reordering.
9638 (face_for_char): Map the charset property by
9639 Vfont_encoding_charset_alist.
9640
96412008-02-01 Jason Rumney <jasonr@gnu.org>
9642
9643 * w32font.c (logfonts_match): Don't check adstyle here.
9644 (font_matches_spec): Check here against physical font instead.
9645 (add_font_entity_to_list): Avoid some substitutions.
9646
9647 * font.c (font_parse_fcname): Default weight and slant to normal.
9648 (font_score): Prefer normal fonts if weight or slant unspecified.
9649 (font_score) [WINDOWSNT]: Scale weight difference down to closer
9650 match freetype scores.
9651
96522008-02-01 Jason Rumney <jasonr@gnu.org>
9653
9654 * w32font.c (w32font_text_extents): Don't use the frame stored in the
9655 font, as it may have been deleted.
9656 (w32_enumfont_pattern_entity): Map generic family to adstyle using
9657 most common hyphenless variation.
9658 (logfonts_match): Check generic family.
9659 (font_matches_spec): Don't check generic family here.
9660 (fill_in_logfont): Set generic family based on adstyle.
9661
9662 * w32font.h (w32font_get_cache): Update declaration.
9663
96642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9665
9666 * ftfont.c (ftfont_get_cache): Adjust the argument type.
9667
9668 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
9669 If none of the new drivers are available, call font_update_drivers
9670 with the old drivers.
9671
9672 * w32font.c (w32font_get_cache): Adjust the argument type.
9673
9674 * xfont.c (xfont_get_cache): Adjust the argument type.
9675
9676 * font.h (struct font_driver): Change argument type of get_cache.
9677
9678 * xftfont.c (xftfont_start_for_frame): Delete prototype.
9679
9680 * font.c (Ffont_get): Fix arguments to Fassoc.
9681 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
9682 (font_clear_cache): New function.
9683 (font_list_entities, font_matching_entity): Use font_get_cache.
9684 (font_update_drivers): Call font_clear_cache when finishing a driver.
9685
9686 * fontset.c (fontset_find_font): Fix previous change.
9687
96882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9689
9690 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
9691 dpyinfo->font_table.
9692 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
9693 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
9694
9695 * font.c (font_at): Handle the case that the arg C is negative.
9696 Handle the unibyte case.
9697 (Ffont_at): Call font_at with the arg C -1.
9698
9699 * xdisp.c (handle_auto_composed_prop): Don't get a character at
9700 the position here, and call font_at with the arg C -1.
9701 Don't check the range of the existing composition at the point.
9702
97032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9704
9705 * fontset.c (fontset_add): New args charset_id and family.
9706 Change caller.
9707 (load_font_get_repertory, fontset_find_font): Assume that
9708 font_spec is always a font-spec object.
9709 (Fset_fontset_font): Always store a font-spec object in a fontset.
9710
9711 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
9712 instead of get_property_and_range.
9713
97142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9715
9716 * xftfont.c (struct xftfont_info): Delete the member ft_face.
9717 (xftfont_open): Don't keep locking face.
9718 (xftfont_close): Don't unlock face.
9719 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
9720
9721 * fontset.c (fontset_find_font): Don't prefer a font of
9722 supplementary charset.
9723
97242008-02-01 Kenichi Handa <handa@m17n.org>
9725
9726 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
9727 script, langsys_tag to langsys, new member script.
9728 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 9729 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
9730 listing to the script specified in that property. Fix arg to
9731 OTF_check_features.
9732
97332008-02-01 Jason Rumney <jasonr@gnu.org>
9734
9735 * w32font.h: New file.
9736
9737 * w32font.c: Include it.
9738 (struct w32font_info): Add owning_frame field. Move to w32font.h.
9739 (w32font_open): Set owning_frame.
9740 (w32font_text_extents): Use owning_frame.
9741 (struct font_callback_data): Add opentype_only field.
9742 (add_font_entity_to_list): Use it to filter fonts.
9743 Don't check against full name.
9744 (w32font_list_internal): New function.
9745 (w32font_list): Use it.
9746 (w32font_match_internal): New function.
9747 (w32font_match): Use it.
9748 (w32font_open_internal): New function.
9749 (w32font_open): Use it.
9750 (w32font_get_cache, w32font_close, w32font_has_char)
9751 (w32font_encode_char, w32font_text_extents, w32font_draw):
9752 Make non-static.
9753
9754 * makefile.w32-in (w32font.o): Depend on w32font.h.
9755
97562008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9757
9758 * charset.c (Fdefine_charset_internal): Record a supplementary
9759 charset at the tail of Vcharset_order_list.
9760
9761 * font.c (Ffont_shape_text): Fix the return value.
9762
9763 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
9764
9765 * xdisp.c (handle_auto_composed_prop): Fix previous change.
9766
97672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9768
9769 * ftfont.c (struct OpenTypeSpec): New struct.
9770 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
9771 (ftfont_get_open_type_spec): New function.
9772 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
9773
9774 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
9775
97762008-02-01 Jason Rumney <jasonr@gnu.org>
9777
9778 * w32font.c (add_font_entity_to_list): Compare only the beginning
9779 of full name.
9780
97812008-02-01 Kenichi Handa <handa@m17n.org>
9782
9783 * xdisp.c (handle_auto_composed_prop): Simplify the code.
9784 Never return HANDLED_RECOMPUTE_PROPS.
9785
97862008-02-01 Kenichi Handa <handa@m17n.org>
9787
9788 * font.c (font_gstring_produce): Delete it.
9789
9790 * composite.h (COMPOSITION_METHOD):
9791 Handle COMPOSITION_WITH_GLYPH_STRING.
9792
97932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9794
9795 * xfont.c (Qx): Delete.
9796 (syms_of_xfont): Don't initialize Qx.
9797
9798 * composite.h (enum composition_method):
9799 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
9800
98012008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9802
9803 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
9804 (choose_face_font): Accept new form of font-spec.
9805
9806 * frame.h (font_driver_list): Declare it unconditionally.
9807 (struct frame): Define members font_driver_list and font_data_list
9808 unconditionally.
9809
9810 * fontset.c: Include "font.h" unconditionally.
9811 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
9812 (Fset_fontset_font): Accept a font-spec object.
9813
9814 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
9815 PIXEL_SIZE part a wild card.
9816
9817 * dispextern.h (struct glyph_string): Define members clip and
9818 num_clips unconditionally.
9819 (struct face): Define members font_info and extra unconditionally.
9820
9821 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
9822 ftfont_info only when HAVE_LIBOTF is defined.
9823
98242008-02-01 Andreas Schwab <schwab@suse.de>
9825
9826 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
9827 and end.
9828
98292008-02-01 Jason Rumney <jasonr@gnu.org>
9830
9831 * w32font.c (w32font_driver): Add new fields.
9832
98332008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9834
9835 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
9836 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
9837 (LIBES): Add @M17N_FLT_CFLAGS@.
9838
9839 * composite.c (compose_text): Don't treat the new style
9840 composition specially.
9841
9842 * emacs.c (main): Call syms_of_font unconditionally.
9843
9844 * font.h (FONT_ENTITY_NOT_LOADABLE)
9845 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
9846 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
9847 (struct font_driver): New member shape.
9848 (font_registry_charsets): Extern it.
9849 (font_find_for_lface, font_prepare_composition): Adjust prototype.
9850 (font_otf_capability, font_drive_otf): Delete their externs.
9851
9852 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
9853 (font_charset_alist, font_registry_charsets): Move from xfont.c
9854 and rename.
9855 (font_prop_validate_otf): New function.
9856 (font_property_table): Register it for QCotf.
9857 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
9858 (font_drive_otf): Delete.
9859 (font_prepare_composition): New arg F. Adjust for the change of
9860 lispy gstring.
9861 (font_find_for_lface): New arg C.
9862 (font_load_for_face): Adjust for the change of font_find_for_lface.
9863 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
9864 lispy gstring.
9865 (Ffont_shape_text): New function.
9866 (Fopen_font): If the font size is not given, use 12-pixel.
9867 (Ffont_at): New arg STRING.
9868 (syms_of_font): Initalize font_charset_alist.
9869 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
9870 conditionally.
9871
9872 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
9873 fonts of the same font-spec. Change the format of RFONT-DEF.
9874 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
9875 Adjust for the change of RFONT-DEF.
9876 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
9877
9878 * ftfont.h: New file.
9879
9880 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
9881 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
9882 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
9883 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
9884 font_otf_capability and font_drive_otf, set ftfont_shape.
9885 (ftfont_list): Adjust for the change of :otf property value.
9886 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
9887 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
9888 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
9889 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
9890 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
9891 (otf_gstring, gstring, m17n_flt_initialized): New variables.
9892
9893 * w32term.c (x_draw_composite_glyph_string_foreground):
9894 Adjust for the change of lispy gstring.
9895
9896 * xdisp.c (handle_composition_prop): Adjust for the change of
9897 lispy gstring. Call a function for auto-composition with the
9898 third arg it->window.
9899 (fill_composite_glyph_string): Adjust for the change of lispy string.
9900 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
9901
9902 * xfaces.c (set_font_frame_param): Adjust for the change of
9903 font_find_for_lface.
9904
9905 * xfont.c (x_font_charset_alist): Move to font.c and rename.
9906 (xfont_registry_charsets): Likewise. Change caller.
9907 (syms_of_xfont): Don't handle x_font_charset_alist.
9908
9909 * xftfont.c: Include "ftfont.h".
9910 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
9911 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
9912 (xftfont_close) [HAVE_LIBOTF]: Close otf.
9913 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
9914 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
9915 Set xftfont_driver.shape to xftfont_shape.
9916
9917 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
9918 the change of lispy gstring.
9919
99202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9921
9922 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
9923
99242008-02-01 Jason Rumney <jasonr@gnu.org>
9925
9926 * w32font.c (w32font_draw): Fill background manually.
9927
99282008-02-01 Jason Rumney <jasonr@gnu.org>
9929
9930 * font.c (Qfontp): Remove unused symbol.
9931 (QCantialias): New symbol.
9932 (syms_of_font): Define it.
9933 (font_property_table): Set a validator for QCantialias.
9934
9935 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
9936 Define if not already.
9937 (QCfamily): Share with xfaces.c.
9938 (Qstandard, Qsubpixel, Qnatural): New symbols.
9939 (syms_of_w32font): Define them. Don't define QCfamily here.
9940 (w32_antialias_type, lispy_antialias_type): New functions.
9941 (w32_enumfont_pattern_entity): New arg requested_font.
9942 Set antialias parameter if non-default was requested.
9943 (fill_in_logfont): Fill in lfQuality if :antialias specified.
9944
99452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9946
9947 * lread.c (read1): Undo the previous change.
9948
99492008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
9950
9951 * frame.c (Fdelete_frame): Call font_update_drivers only when
9952 USE_FONT_BACKEND is defined.
9953
99542008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9955
9956 * font.h (struct font_bitmap): New member bits_per_pixel.
9957 (struct font_driver): New members start_for_frame and end_for_frame.
9958 (struct font_data_list): New struct.
9959 (font_put_frame_data, font_get_frame_data): Extern them.
9960
9961 * frame.h (struct frame): New member font_data_list.
9962
9963 * font.c (font_update_drivers): Call driver->start_for_frame and
9964 driver->end_for_frame at proper timings.
9965 (font_put_frame_data, font_get_frame_data): New functions.
9966 (Ffont_spec): Add usage in the docstring.
9967
9968 * frame.c (make_frame): Initialize f->font_data_list to NULL.
9969 (Fdelete_frame): Call font_update_drivers.
9970
9971 * xftfont.c (struct xftface_info): Delete the member xft_draw.
9972 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
9973 (xftfont_get_xft_draw): New function.
9974 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
9975 (xftfont_end_for_frame): New function.
9976 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
9977
9978 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
9979 Change argument. Cache GCs in the per-frame data.
9980 (struct ftxfont_frame_data): New struct.
9981 (ftxfont_draw_bitmap): New arg gc_fore and flush.
9982 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
9983 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
9984 (ftxfont_end_for_frame): New function.
9985 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
9986
9987 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
9988
99892008-02-01 Kenichi Handa <handa@m17n.org>
9990
9991 * xselect.c (Vselection_coding_system)
9992 (Vnext_selection_coding_system): Delete them.
9993 (syms_of_xselect): Don't declare selection-coding-system and
9994 next-selection-coding-system. They are declared in select.el.
9995
99962008-02-01 Jason Rumney <jasonr@gnu.org>
9997
9998 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
9999
10000 * w32fns.c: Include imm.h.
10001 (get_composition_string_fn, get_ime_context_fn): New optional
10002 system functions.
10003 (globals_of_w32fns): Load them from imm32.dll.
10004 (ignore_ime_char): New flag.
10005 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
10006 WM_IME_ENDCOMPOSITION messages.
10007
10008 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
10009 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
10010
100112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10012
10013 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
10014 (READCHAR_REPORT_MULTIBYTE): New macro.
10015 (readchar): New 2nd arg MULTIBYTE.
10016 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
10017 Make symbol's name multibyte according to the multibyteness of the
10018 source.
10019
100202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10021
10022 * xfaces.c (face_for_overlay_string): Call lookup_face with
10023 correct arguments (fix of synching with the trunk).
10024
100252008-02-01 Kenichi Handa <handa@m17n.org>
10026
10027 * font.c (font_prop_validate_symbol, font_prop_validate_style)
10028 (font_prop_validate_non_neg, font_prop_validate_spacing):
10029 Delete argument prop_index.
10030 (font_property_table): Change arguments to validater. Change Callers.
10031 (font_lispy_object): Delete.
10032 (font_at): Use font_find_object instead fo font_lispy_object.
10033
100342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10035
10036 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
10037 and file names.
10038
100392008-02-01 Jason Rumney <jasonr@gnu.org>
10040
10041 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
10042 (font_matches_spec): Remove debug output.
10043 (add_font_entity_to_list): Avoid using substituted fonts.
10044
100452008-02-01 Jason Rumney <jasonr@gnu.org>
10046
10047 * doc.c (Fsnarf_documentation):
10048 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
10049
100502008-02-01 Miles Bader <miles@gnu.org>
10051
10052 * dispextern.h (struct glyph_row): Only define "clip" field if
10053 HAVE_WINDOW_SYSTEM is defined.
10054
100552008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
10056
10057 Fix up multi-tty merge.
10058
10059 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
10060 and indentation.
10061
10062 * xfaces.c (free_realized_face, clear_face_gcs):
10063 Include font_done_for_face in the input_blocked section, just in case.
10064
10065 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
10066 (get_char_face_and_encoding): Undo last change and remove the *other*
10067 duplicate definition (i.e. keep the one that's better scoped and that
10068 includes code for the font-backend).
10069
10070 * terminal.c (create_terminal): Default keyboard_coding to
10071 `no-conversion' and terminal_coding to `undecided'.
10072
10073 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
10074
10075 * fontset.c (free_realized_fontsets): Check that the table entry does
10076 contain a fontset before trying to compare it to `base'.
10077
10078 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
10079 syms_of_charset, and syms_of_coding earlier because init_window_once
10080 now needs Vcoding_system_hash_table to be setup.
10081
10082 * coding.h (default_buffer_file_coding): Remove.
10083
10084 * coding.c (default_buffer_file_coding): Remove.
10085 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
10086 than ->symbol, and use the terminal-local coding system.
10087 (syms_of_coding): Don't setup the coding-systems that are not
10088 terminal-local.
10089 (Fdefine_coding_system_internal): Use XCAR/XCDR.
10090
10091 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
10092 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
10093
10094 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
10095 in chartab.c and were re-added here by mistake.
10096 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
10097
10098 * doc.c (Fsnarf_documentation):
10099 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
10100 src to etc.
10101
10102 * ChangeLog.10: Add mistakenly removed entry.
10103
101042008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
10105
10106 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
10107
101082008-02-01 Miles Bader <miles@gnu.org>
10109
10110 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
10111 Add extra args to FACE_FOR_CHAR.
10112
101132008-02-01 Kenichi Handa <handa@m17n.org>
10114
10115 * keymap.c (where_is_internal_1): If key is a cons, store the copy
10116 in sequence.
10117
10118 * chartab.c (map_sub_char_table, map_char_table): If the range
10119 contains just one character, call the function with that character
10120 even if the depth is not 3.
10121
101222008-02-01 Jason Rumney <jasonr@gnu.org>
10123
10124 * w32font.c (w32font_text_extents): Calculate metrics for the
10125 whole string.
10126
101272008-02-01 Jason Rumney <jasonr@gnu.org>
10128
10129 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
10130
101312008-02-01 Jason Rumney <jasonr@gnu.org>
10132
10133 * w32term.c (x_set_glyph_string_clipping): Use
10134 get_glyph_string_clip_rects.
10135 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
10136 Adjust for the change of struct glyph_string.
10137
10138 * w32font.c (w32font_draw): Do clipping here.
10139
101402008-02-01 Kenichi Handa <handa@m17n.org>
10141
10142 * xftfont.c (xftfont_draw): Adjust for the change of struct
10143 glyph_string.
10144
10145 * xterm.c (x_set_glyph_string_clipping): Use
10146 get_glyph_string_clip_rects.
10147 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
10148 Adjust for the change of struct glyph_string.
10149
10150 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
10151 the resulting clip(s}.
10152 (expose_overlaps): Add arg r. Change callers. Set it to
10153 row->clip temporarily.
10154 (expose_window): Redraw rows overlapping the exposed area.
10155
10156 * dispextern.h (struct glyph_row): New member clip.
10157 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
10158 clip_height, new member clip, and num_clips.
10159
101602008-02-01 Kenichi Handa <handa@m17n.org>
10161
10162 * data.c (Fchar_or_string_p): Fix docstring.
10163
101642008-02-01 Kenichi Handa <handa@m17n.org>
10165
10166 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
10167 create a temporary XftDraw object.
10168
101692008-02-01 Kenichi Handa <handa@m17n.org>
10170
10171 * font.c (Ffontp): Fix docstring.
10172
10173 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
10174 strong evidence of ISO-2022.
10175
101762008-02-01 Kenichi Handa <handa@m17n.org>
10177
10178 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
10179 SYNTAX_ENTRY_FOLLOW_PARENT.
10180
101812008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
10182
10183 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
10184 its type.
10185 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
10186 Update to the new type of weak_hash_tables and next_weak.
10187
10188 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
10189 a plain C pointer to Lisp_Hash_Table.
10190
10191 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
10192 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
10193 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
10194 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
10195 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
10196 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
10197 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
10198 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
10199 (GC_EQ): Remove since they've been identical to their non-GC_
10200 alter-egos ever since the markbit was eradicated.
10201
10202 * alloc.c:
10203 * buffer.c:
10204 * buffer.h:
10205 * data.c:
10206 * fileio.c:
10207 * filelock.c:
10208 * fns.c:
10209 * frame.h:
10210 * lisp.h:
10211 * macterm.c:
10212 * print.c:
10213 * process.c:
10214 * w32fns.c:
10215 * w32menu.c:
10216 * w32term.c:
10217 * xfns.c:
10218 * xmenu.c:
10219 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
10220
102212008-02-01 Kenichi Handa <handa@m17n.org>
10222
10223 * chartab.c (map_sub_char_table): Make it work for the top-level
10224 char-table. Fix handling of parent char-table.
10225 (map_char_table): Adjust for the above change.
10226
102272008-02-01 Jason Rumney <jasonr@gnu.org>
10228
10229 * w32font.c (Qgdi): Rename from Qw32.
10230
102312008-02-01 Jason Rumney <jasonr@gnu.org>
10232
10233 * w32bdf.c (get_quoted_string): Make function static.
10234
102352008-02-01 Kenichi Handa <handa@m17n.org>
10236
10237 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
10238 bigger ascent and descent than those of the font, use them as
10239 font's ascent and descent.
10240
102412008-02-01 Kenichi Handa <handa@m17n.org>
10242
10243 * Makefile.in (${lispsource}international/charprop.el): Move this
10244 target within "#ifdef HAVE_UNIDATA" and "#endif".
10245
102462008-02-01 Kenichi Handa <handa@m17n.org>
10247
10248 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
10249 (shortlisp): Add ../lisp/language/tai-viet.el.
10250
102512008-02-01 Ulrich Mueller <ulm@gentoo.org>
10252
10253 * Makefile.in (${lispsource}international/charprop.el): Depend on
10254 temacs${EXEEXT}.
10255
102562008-02-01 Jason Rumney <jasonr@gnu.org>
10257
10258 * w32font.c (w32font_close): Delete the GDI font object.
10259
10260 * w32menu.c: Include character.h.
10261
10262 * w32proc.c: Likewise.
10263
10264 * w32select.c: Likewise.
10265
10266 * makefile.w32-in (w32proc.o): Depend on character.h.
10267
102682008-02-01 Jason Rumney <jasonr@gnu.org>
10269
10270 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
10271
10272 * w32menu.c (syms_of_w32menu): Likewise.
10273
10274 * w32proc.c (syms_of_ntproc): Likewise.
10275
10276 * w32select.c (syms_of_w32select): Likewise.
10277
10278 * w32term.c (syms_of_w32term): Likewise.
10279
102802008-02-01 Jason Rumney <jasonr@gnu.org>
10281
10282 * w32font.c (w32font_draw): Delete brush after using it.
10283
102842008-02-01 Jason Rumney <jasonr@gnu.org>
10285
10286 * w32font.c (w32font_open): Don't set font_idx.
10287 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
10288 to font settings.
10289 (w32font_draw): Fill background explicitly.
10290
102912008-02-01 Jason Rumney <jasonr@gnu.org>
10292
10293 * w32term.c (w32_initialize): Don't call w32font_initialize.
10294
10295 * w32font.c (w32font_info): Remove subranges.
10296 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
10297 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
10298 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
10299 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
10300 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
10301 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
10302 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
10303 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
10304 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
10305 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
10306 New symbols.
10307 (font_callback_data): New struct.
10308 (w32font_list, w32font_match): Use it.
10309 (w32font_open): Don't populate subranges.
10310 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
10311 (w32font_encode_char): Always return unicode code-point as-is.
10312 (w32font_text_extents): Supply a transformation matrix to
10313 GetGlyphOutline. Never look up by glyph index. Avoid looping
10314 twice. Use unicode version of GetTexExtentPoint32 instead of
10315 glyph index version.
10316 (set_fonts_frame): Remove.
10317 (w32_enumfont_pattern_entity): Add frame parameter, use it to
10318 set frame parameter. Use backward compatible fake foundries.
10319 Save generic family in extra slot under QCfamily. Make width slot
10320 constant. Save QCspacing value. Save list of scripts instead of
10321 binary subranges.
10322 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
10323 (add_font_entity_to_list): Use font_callback_data struct. Filter
10324 unwanted fonts.
10325 (add_one_font_entity_to_list): Use font_callback_data struct.
10326 (w32_registry): Default to iso10646_1.
10327 (fill_in_logfont): Use dpi from extra slot. Don't bother with
10328 string font registries. Don't fill in font name if it is a generic
10329 family name, fill family instead. Use spacing, family and script
10330 extra info to fill pitch, family and charset fields.
10331 (list_all_matching_fonts): Use font_callback_data struct.
10332 (unicode_range_for_char): Remove.
10333 (font_supported_scripts): New function.
10334 (w32font_initialize): Remove.
10335 (syms_of_w32font): Update which symbols are defined.
10336
103372008-02-01 Jason Rumney <jasonr@gnu.org>
10338
10339 * font.c (font_pixel_size): Reverse assq_no_quit args.
10340
10341 * w32term.h (FONT_WIDTH): Report max width, not average.
10342 (FONT_MAX_WIDTH): Remove.
10343 (FONT_AVG_WIDTH): New macro.
10344
10345 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
10346 redefinition of FONT_WIDTH.
10347
10348 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
10349 (w32_cache_char_metrics): Use FONT_WIDTH.
10350
10351 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
10352
103532008-02-01 Jason Rumney <jasonr@gnu.org>
10354
10355 * w32font.c (w32font_open): Make lfHeight negative.
10356
10357 * w32fns.c (x_default_font_parameter): Use new style font name.
10358 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
10359
103602008-02-01 Jason Rumney <jasonr@gnu.org>
10361
10362 * w32font.c (QCsubranges): New symbol.
10363 (w32font_open, w32font_has_char): Get subranges from subproperty
10364 of extra.
10365 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
10366 (syms_of_w32font): Define :subranges symbol.
10367
10368 * font.c (font_put_extra): Expose externally.
10369
10370 * font.h (font_put_extra): Move declaration from font.c.
10371
10372 * font.c (Ffont_get): Use font driver to determine otf capability.
10373 (adjust_anchor): Check if driver defines anchor_point before using.
10374
10375 * w32font.c (w32font_open): Handle size, height and pixel_size better.
10376 (w32font_draw): Use options.
10377 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
10378 Fix detection of truetype fonts.
10379 (registry_to_w32_charset): Handle charsets other than iso8859-1
10380 expressed as lisp symbols.
10381 (w32_registry): Express charset as lisp symbol.
10382 (fill_in_logfont): Reverse pixel and point height logic.
10383 Don't set width here. Set quality to default.
10384
10385 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
10386 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
10387
10388 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
10389 Remove redundant loop and allocation.
10390
10391 * makefile.w32-in (font.o, w32font.o): New objects.
10392 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
10393 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
10394
10395 * xdisp.c (fill_composite_glyph_string): Make the first arg to
10396 STORE_XCHARB a valid l-value.
10397
10398 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
10399 calculations for non-Truetype fonts.
10400 (x_draw_glyph_string): Sync with xterm.c.
10401 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
10402 Remove redundant code.
10403 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
10404
10405 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
10406 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
10407
10408 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
10409 (x_to_w32_charset, w32_to_x_charset): Expose externally.
10410
10411 * w32font.c: New file for w32 font backend.
10412
104132008-02-01 Kenichi Handa <handa@m17n.org>
10414
10415 * term.c: Don't include "buffer.h" twice.
10416
104172008-02-01 Kenichi Handa <handa@m17n.org>
10418
10419 * character.c (Funibyte_string): New function.
10420 (syms_of_character): Defsubr it.
10421
104222008-02-01 Jason Rumney <jasonr@gnu.org>
10423
10424 * w32term.c [USE_FONT_BACKEND]:
10425 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
10426 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
10427 (x_draw_glyph_string, x_draw_glyph_string_foreground)
10428 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
10429 (x_free_frame_resources): Sync with xterm.c.
10430
104312008-02-01 Andreas Schwab <schwab@suse.de>
10432
10433 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
10434 char-table size.
10435
104362008-02-01 Kenichi Handa <handa@m17n.org>
10437
10438 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
10439
104402008-02-01 Kenichi Handa <handa@m17n.org>
10441
10442 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
10443 font_otf_gpos, add font_drive_otf.
10444
10445 * fontset.c (fontset_find_font): Pay attention to font size
10446 specified for a font.
10447 (reorder_font_vector): Check contents of font_def.
10448
10449 * font.c (struct otf_list): Delete it.
10450 (otf_list): Make it a lisp variable.
10451 (otf_open): Use lispy otf_list.
10452 (generate_otf_features): Rename from parse_gsub_gpos_spec.
10453 (check_otf_features): New function.
10454 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
10455 New functions.
10456 (font_drive_otf): New function merging font_otf_gsub and
10457 font_otf_gpos.
10458 (font_open_for_lface): New arg spec. Change argument order.
10459 (font_load_for_face): Adjust for the change of font_open_for_lface.
10460 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
10461 Ffont_otf_gpos.
10462 (syms_of_font): Staticpro otf_list. Delete defsubr of
10463 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
10464
10465 * xfaces.c (set_font_frame_param): Adjust for the change of
10466 font_open_for_lface.
10467
10468 * font.h (font_open_for_lface): Adjust prototype.
10469 (struct font_driver): Delete members otf_gsub and otf_gpos, add
10470 member otf_drive.
10471 (font_otf_gsub, font_otf_gpos): Delete externs.
10472 (font_drive_otf): Extern it.
10473
104742008-02-01 Kenichi Handa <handa@m17n.org>
10475
10476 * font.c (font_at): If the window W is not on a window system,
10477 return Qnil.
10478
10479 * coding.c (produce_chars, encode_coding): Don't call
10480 insert_from_gap if no characters to produce.
10481
104822008-02-01 Kenichi Handa <handa@m17n.org>
10483
10484 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
10485 Fclear_face_cache.
10486
10487 * xfaces.c (face_for_font): Check also face->font==font->font.font.
10488
104892008-02-01 Miles Bader <miles@gnu.org>
10490
10491 * emacs.c (main): Change default value of `enable_font_backend' to 1.
10492 Parse "--disable-font-backend" option.
10493 (standard_args): Add "--disable-font-backend" option.
10494
104952008-02-01 Kenichi Handa <handa@m17n.org>
10496
10497 * fontset.c (fontset_find_font): New function.
10498 (fontset_font): Use fontset_find_font.
10499 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
10500 Register the specified font for all Latin characters.
10501 (new_fontset_from_font): Register the specified font for all Latin
10502 characters.
10503 (dump_fontset): For a realized fontset, include the base fontset
10504 name in the returned vector.
10505
105062008-02-01 Kenichi Handa <handa@m17n.org>
10507
10508 * character.h (CHAR_STRING): Cast C to unsigned on calling
10509 char_string.
10510
10511 * character.c (char_string): Type of arg C changed to unsigned.
10512 Signal an error if C is an invalid character code.
10513
10514 * editfns.c (general_insert_function, Fchar_to_string):
10515 Use CHARACTERP, not INTEGERP.
10516
105172008-02-01 Kenichi Handa <handa@m17n.org>
10518
10519 * character.h (MIN_MULTIBYTE_LEADING_CODE)
10520 (MAX_MULTIBYTE_LEADING_CODE): New macros.
10521
10522 * regex.c (analyse_first): Fix for multibyte characters in "case
10523 charset:" and "case categoryspec:".
10524
105252008-02-01 Andreas Schwab <schwab@suse.de>
10526
10527 * Makefile.in (LIBES): Move standard libraries to the end.
10528
105292008-02-01 Kenichi Handa <handa@m17n.org>
10530
10531 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
10532 nonzero, don't shrink the buffer nextb.
10533
10534 * buffer.h (struct buffer_text): New member inhibit_shrinking.
10535
10536 * coding.c (coding_alloc_by_making_gap): New arg offset.
10537 (alloc_destination): Call coding_alloc_by_making_gap with the arg
10538 offset.
10539 (decode_coding_iso_2022): Update coding->safe_charsets.
10540 (decode_coding_gap): Temporarily set
10541 current_buffer->text->inhibit_shrinking to 1.
10542
105432008-02-01 Kenichi Handa <handa@m17n.org>
10544
10545 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
10546 indexing into elements of s->cmp and s->char2b.
10547
105482008-02-01 Juanma Barranquero <lekktu@gmail.com>
10549
10550 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
10551
105522008-02-01 Kenichi Handa <handa@m17n.org>
10553
10554 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
10555 target_multibyte instead of multibyte.
10556 (re_match_2_internal): Call bcmp_translate with target_multibyte.
10557 (bcmp_translate): Change the argument name from multibyte to
10558 target_multibyte.
10559
105602008-02-01 Kenichi Handa <handa@m17n.org>
10561
10562 These changes are to compile a regexp into a pattern that can be
10563 used both for multibyte and unibyte targets.
10564
10565 * Makefile.in (search.o): Depend on charset.h.
10566
10567 * character.c (multibyte_char_to_unibyte_safe): New function.
10568
10569 * search.c: Include "charset.h".
10570 (compile_pattern_1): Delete argument multibyte. Don't set
10571 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
10572 (compile_pattern): Don't compare cp->buf.target_multibyte.
10573 Compare cp->buf.charset_unibyte.
10574 (compile_pattern): Set cp->buf.target_multibyte.
10575
10576 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
10577
10578 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
10579
10580 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
10581 multibyte. Change callers.
10582 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
10583 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
10584 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
10585 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
10586 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
10587 (regex_compile): Make the compiled pattern usable both for
10588 multibyte and unibyte targets.
10589 (analyse_first): Make the fastmap usable both for multibyte and
10590 unibyte targets.
10591 (TRANSLATE_VIA_MULTIBYTE): Delete.
10592 (re_match_2_internal): Pay attention to the case that the
10593 multibyteness of bufp and target may be different.
10594
105952008-02-01 Kenichi Handa <handa@m17n.org>
10596
10597 * xdisp.c (x_produce_glyphs): When a font is not found, make the
10598 empty box occupy at least one column width.
10599
106002008-02-01 Miles Bader <miles@gnu.org>
10601
10602 * Makefile.in: Remove redundant HAVE_XFT clause.
10603
106042008-02-01 Kenichi Handa <handa@m17n.org>
10605
10606 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
10607
106082008-02-01 Kenichi Handa <handa@m17n.org>
10609
10610 * fontset.c (Finternal_char_font): Fix for the case of POSITION
10611 being nil.
10612
106132008-02-01 Kenichi Handa <handa@m17n.org>
10614
10615 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
10616
106172008-02-01 Kenichi Handa <handa@m17n.org>
10618
10619 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
10620
106212008-02-01 Kenichi Handa <handa@m17n.org>
10622
10623 * search.c (simple_search): Fix previous change.
10624
106252008-02-01 Kenichi Handa <handa@m17n.org>
10626
10627 * xftfont.c (ftfont_font_format): Extern declaration.
10628
10629 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
10630
10631 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
10632 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
10633
10634 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
10635 (ftfont_font_format): Fix previous change.
10636
10637 * font.h (Ffont_xlfd_name): EXFUN it.
10638
10639 * font.c (font_parse_xlfd): Fix the array size of `f'.
10640 (register_font_driver): Use EQ to compare driver->type.
10641
10642 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
10643 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
10644 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
10645
106462008-02-01 Kenichi Handa <handa@m17n.org>
10647
10648 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
10649 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
10650
106512008-02-01 Kenichi Handa <handa@m17n.org>
10652
10653 * xfont.c (xfont_open): Set font->format.
10654
10655 * xftfont.c (xftfont_open): Set font->format.
10656
10657 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
10658 (ftfont_list): Include FC_FONTFORMAT in FcObject.
10659 (ftfont_open): Set font->format.
10660 (ftfont_font_format): New function.
10661
10662 * font.h (struct font): New member format.
10663
10664 * font.c (Qopentype): New variable.
10665 (syms_of_font): Defsym it.
10666 (Fquery_font): Change the format of the last element of the return
10667 value.
10668
106692008-02-01 Kenichi Handa <handa@m17n.org>
10670
10671 * xfns.c (xic_create_xfontset): Try the default fontset name as a
10672 last resort.
10673
106742008-02-01 Kenichi Handa <handa@m17n.org>
10675
10676 * coding.c (detect_coding_charset): Fix detection of multi-byte
10677 charset.
10678
106792008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
10680
10681 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
10682
106832008-02-01 Kenichi Handa <handa@m17n.org>
10684
10685 * xdisp.c (get_next_display_element): Set it->face_id for the
10686 first component of a composition.
10687 (x_produce_glyphs): Check if the font is changed or not for composition.
10688
106892008-02-01 Kenichi Handa <handa@m17n.org>
10690
10691 * fontset.c (Qlatin): New variable.
10692 (syms_of_fontset): Define it as a lisp symbol.
10693 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
10694
106952008-02-01 Kenichi Handa <handa@m17n.org>
10696
10697 * font.c (font_unparse_fcname): Pay attention to the case that
10698 some of font property is a null string.
10699
107002008-02-01 Kenichi Handa <handa@m17n.org>
10701
10702 * term.c: Include "composite.h".
10703 (encode_terminal_code): Output all components of composition.
10704 Check the size of encode_terminal_src.
10705 (produce_glyphs): For composition, call produce_composite_glyph.
10706 (append_composite_glyph, produce_composite_glyph): New functions.
10707
10708 * xdisp.c (x_produce_glyphs): In handling composition, if a font
10709 is not found, get font_info from the current ascii face.
10710
107112008-02-01 Kenichi Handa <handa@m17n.org>
10712
10713 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
10714 buffer-file-name to Qnil before calling insert_from_buffer.
10715
10716 * font.c (font_unparse_fcname): Pay attention to the case that
10717 foundry is a null string.
10718
107192008-02-01 Kenichi Handa <handa@m17n.org>
10720
10721 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
10722
10723 * font.c (Qunicode_sip): New variable.
10724 (syms_of_font): Declare it as a Lisp symbol.
10725
10726 * font.h (Qunicode_sip): Extern it.
10727
107282008-02-01 Kenichi Handa <handa@m17n.org>
10729
10730 * composite.c (get_composition_id): Pay attention to TAB component.
10731
10732 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
10733 TAB. Adjust for the change of s->char2b which always points to
10734 the first element of allocated memory.
10735
10736 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
10737
10738 * xdisp.c (handle_composition_prop): Set it->c to the first
10739 non-TAB component.
10740 (fill_composite_glyph_string): Change argument.
10741 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
10742 (x_produce_glyphs): Fix handling of left/right padding.
10743
107442008-02-01 Kenichi Handa <handa@m17n.org>
10745
10746 * coding.c (detect_coding_system): Fix for handling off
10747 inhibit_iso_escape_detection. Fix for the case that no coding
10748 system is defined for a specific coding category.
10749
107502008-02-01 Kenichi Handa <handa@m17n.org>
10751
10752 * font.c (font_matching_entity): Delete unused local var.
10753
10754 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
10755 opening a font.
10756
10757 * fileio.c (Finsert_file_contents): On recovering a file, assume
10758 Unix-like eol.
10759 (choose_write_coding_system): On auto-saving a file, force
10760 Unix-like eol.
10761
10762 * coding.c (setup_coding_system): Fix setting of
10763 coding->common_flags based on eol_type.
10764 (coding_inherit_eol_type): If PARENT is not nil, be sure to
10765 inherit from it.
10766
107672008-02-01 Kenichi Handa <handa@m17n.org>
10768
10769 * alloc.c (NSTATICS): Increas to 0x600.
10770
107712008-02-01 Kenichi Handa <handa@m17n.org>
10772
10773 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
10774 (ftfont_list): Don't check :name property.
10775 (ftfont_match): New function.
10776 (ftfont_pattern_entity): If the pattern doesn't contain
10777 FC_SPACING, don't assume FC_MONO.
10778
10779 * font.h (struct font_driver): New member `match'.
10780 (font_update_drivers): Adjust prototype.
10781
10782 * font.c (font_parse_fcname, font_parse_name): Don't change :name
10783 property of FONT.
10784 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
10785 them unconditionally.
10786 (font_matching_entity): New function.
10787 (font_open_by_name): Try font_matching_entity if exact match is
10788 not found.
10789 (font_update_drivers): Delete the arg FONT. Return a list of
10790 actually used backends. Don't free faces, font caches here.
10791 Don't store data in frame parameters. Don't call x_set_font.
10792 (Ffont_spec): Store :name property as is.
10793 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
10794 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
10795 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
10796 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
10797 Call font->driver->otf_gsub instead of font_otf_gsub.
10798
10799 * frame.c (x_set_font_backend): Do more works that were done in
10800 font_update_drivers before.
10801
10802 * xfont.c (xfont_match): New function.
10803 (xfont_driver): Set xfont_driver.match to xfont_match.
10804 (xfont_draw): Set font in GC if necessary.
10805
10806 * ftxfont.c (ftxfont_match): New function.
10807 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
10808
10809 * xftfont.c (xftfont_match): New function.
10810 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
10811
108122008-02-01 Kenichi Handa <handa@m17n.org>
10813
10814 * font.h (struct font): New member scalable.
10815 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
10816 (font_otf_gsub): Adjust prototype.
10817
10818 * font.c (font_otf_capability): Fix handling of the default langsys.
10819 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
10820 Check the contents of SPEC.
10821 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
10822 (check_gstring): New function.
10823 (REPLACEMENT_CHARACTER): New macro.
10824 (font_otf_gsub): New arg alternate_subst. Be sure to set all
10825 glyph codes of GSTRING.
10826 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
10827 (font_prepare_composition): Set cmp->glyph_len.
10828 (font_open_entity): Set font->scalable.
10829 (Ffont_get): Handle :otf property.
10830 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
10831 functions.
10832 (Fquery_font): Use font->font.full_name.
10833 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
10834 Sfont_otf_alternates.
10835
10836 * ftfont.c (ftfont_open): Set font->font.full_name and
10837 font->font.name properly. Fix calculation of font->font.height
10838 and font->min_width.
10839
10840 * ftxfont.c (ftxfont_create_gcs): New function.
10841 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
10842 (ftxfont_draw_backgrond): Fix filling region.
10843 (ftxfont_default_fid): New function.
10844 (ftxfont_open): Set xfont->fid to the return value of
10845 ftxfont_default_fid.
10846 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
10847 (ftxfont_done_face): Free only GCs that are created by
10848 ftxfont_create_gcs.
10849 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
10850
10851 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
10852 Clip to src->width, etc (not src->clip_XXX).
10853
10854 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
10855 FontBackend frame parameter.
10856
108572008-02-01 Kenichi Handa <handa@m17n.org>
10858
10859 * font.h (struct font_driver_list): New member `on'.
10860 (Fclear_font_cache): EXFUN it.
10861 (font_update_drivers): Extern it.
10862
10863 * font.c (font_unparse_fcname): Fix typo (swidth->width).
10864 (font_list_entities): Check driver_list->on.
10865 (register_font_driver): Initalize `on' member to 0.
10866 (font_update_drivers): New function.
10867 (Fclear_font_cache): Check driver_list->on.
10868
10869 * frame.h (Qfont_backend): Extern it.
10870 (x_set_font_backend): Extern it.
10871
10872 * frame.c (Qfont_backend): New variable.
10873 (frame_parms): New element for font-backend.
10874 (x_set_font_backend): New function.
10875
10876 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
10877 FontBackend frame parameter.
10878 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
10879 x_set_font_backend.
10880
10881 * xfont.c (xfont_list): Don't try listing by :name property if the
10882 name is not for XLFD.
10883
108842008-02-01 Kenichi Handa <handa@m17n.org>
10885
10886 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
10887 (LGLYPH_SET_TO): New macros.
10888 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
10889 element of G is vector or not.
10890 (font_at): Extern it.
10891
10892 * font.c: Include window.h.
10893 (font_lispy_object): New function.
10894 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
10895 end of valid glyph.
10896 (font_close_object): Fix getting (struct font *).
10897 (font_at): New function.
10898 (Ffont_get): If FONT is a font-object, get entity from it.
10899 (Ffont_make_gstring): Initialize elements of glyphs with nil.
10900 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
10901 range check.
10902 (Ffont_at): New function.
10903 (syms_of_font): Defsubr Sfont_at.
10904
10905 * xdisp.c (it_props): Move the entry for Qauto_composed to just
10906 before the entry for Qcomposition.
10907 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
10908 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
10909 the font in gstring.
10910 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
10911 LGLYPH_FORM (g) to detect the end of valid glyph.
10912 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
10913 we are composing with gstring.
10914
10915 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
10916 Check if adjustment is vector or not.
10917
10918 * Makefile.in (font.o): Make it depends on window.h.
10919
109202008-02-01 Kenichi Handa <handa@m17n.org>
10921
10922 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
10923 adjustment is vector or not.
10924
109252008-02-01 Miles Bader <miles@gnu.org>
10926
10927 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
10928
109292008-02-01 Kenichi Handa <handa@m17n.org>
10930
10931 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
10932 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
10933 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
10934
10935 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
10936 (DEVICE_DELTA): Fix typo.
10937 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
10938 LGLYPH format.
10939
10940 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
10941 the change of LGLYPH format.
10942
109432008-02-01 Kenichi Handa <handa@m17n.org>
10944
10945 * ftfont.c (ftfont_list): Fix typo.
10946 (ftfont_build_basic_charsets): Don't include letters with diacritics.
10947
109482008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10949
10950 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
10951
10952 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
10953 xftface_info is non-NULL.
10954
109552008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10956
10957 * ftfont.c (ftfont_list): Move misplaced #endif.
10958
109592008-02-01 Kenichi Handa <handa@m17n.org>
10960
10961 * ftfont.c (ftfont_list): Pay attention to the case that
10962 FC_CAPABILITY is not defined.
10963
109642008-02-01 Kenichi Handa <handa@m17n.org>
10965
10966 * xftfont.c (xftfont_open): Set charset related members to -1.
10967
10968 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
10969 QCname.
10970 (ftfont_open): Set charset related members to -1.
10971
10972 * fontset.c (Votf_script_alist): New variable.
10973 (syms_of_fontset): Initialize it.
10974 (fontset_font): Delete unused variable.
10975
10976 * fontset.h (Votf_script_alist): Extern it.
10977
10978 * font.c (font_find_for_lface): Optimize code.
10979
10980 * font.h (font_close_object, font_merge_old_spec): Extern them.
10981
109822008-02-01 Kenichi Handa <handa@m17n.org>
10983
10984 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
10985 (syms_of_font): Initialize them.
10986 (font_pixel_size): Allow float value in dpi.
10987 (font_prop_validate_type): Delete.
10988 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
10989 Change caller.
10990 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
10991 (font_prop_validate_extra): Delete.
10992 (font_prop_validate_spacing): New function.
10993 (font_property_table): Add elements for all known properties.
10994 (get_font_prop_index): Rename from check_font_prop_name. New
10995 argument FROM. Change caller.
10996 (font_prop_validate): Validate all known properties.
10997 (font_put_extra): Delete argument force. Change caller.
10998 (font_expand_wildcards): Make it static. Fix the way of shrinking
10999 the possible range.
11000 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
11001 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
11002 Change caller.
11003 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
11004 (font_parse_fcname): Delete argument merge. Fix parsing of point
11005 size. Don't validate properties values here. Change caller.
11006 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
11007 (font_open_by_name): Delete unused variable.
11008 (Ffont_spec): Likewise. Validate property values.
11009 (Ffont_match_p): New function.
11010
11011 * font.h (QCscalable): Extern it.
11012 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
11013
11014 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
11015
11016 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
11017 (xfont_list_pattern): New function.
11018 (xfont_list): Use xfont_list_pattern.
11019
110202008-02-01 Kenichi Handa <handa@m17n.org>
11021
11022 * font.h (Flist_fonts): EXFUN it.
11023
110242008-02-01 Jason Rumney <jasonr@gnu.org>
11025
11026 * w32term.c (w32_initialize): Add back smoothing_type and
11027 smoothing_enabled definitions.
11028
110292008-02-01 Kenichi Handa <handa@m17n.org>
11030
11031 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
11032 s->face->font on determining underline position.
11033
110342008-02-01 Kenichi Handa <handa@m17n.org>
11035
11036 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
11037 (font_has_char): Accept font-object too.
11038 (font_find_for_lface): Try at first with a size specified in face.
11039
110402008-02-01 Kenichi Handa <handa@m17n.org>
11041
11042 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
11043 font_open_by_name.
11044
110452008-02-01 Kenichi Handa <handa@m17n.org>
11046
11047 * font.h (QCspacing, QCdpi): Extern them.
11048 (enum font_spacing): New enum.
11049 (FONT_PIXEL_SIZE_QUANTUM): New macro.
11050
11051 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
11052 (QCspacing, QCdpi): New variables.
11053 (syms_of_font): Initialize them.
11054 (font_pixel_size): New function.
11055 (font_put_extra): New function.
11056 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
11057 in FONT_EXTRA.
11058 (font_parse_fcname): Handle enumerated values (e.g. bold).
11059 Fix handling font size. Add QCname property that contains only
11060 unknown properties.
11061 (font_score): Change argument. Change caller. Pay attention to
11062 FONT_PIXEL_SIZE_QUANTUM.
11063 (font_sort_entites, font_list_entities, font_find_for_lface)
11064 (font_open_for_lface, font_open_by_name): Fix handling of font size.
11065 (Ffont_spec): Add QCname property that contains only unknown properties.
11066
11067 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
11068 include weight in listing pattern, instead check weight of each
11069 listed font. Don't include scalable in pattern. Pay attention to
11070 FONT_PIXEL_SIZE_QUANTUM.
11071
110722008-02-01 Kenichi Handa <handa@m17n.org>
11073
11074 * font.c (font_parse_fcname): Fix parsing of point-size.
11075 (font_unparse_fcname): Produce symbolic names for style properties.
11076 (font_list_entities): Handle float size correctly.
11077 (font_open_by_name): Prefer `normal' property values if the name
11078 doesn't specify them.
11079
11080 * fontset.c (Finternal_char_font): Use font_get_name, not
11081 Ffont_xlfd_name.
11082
11083 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
11084 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
11085 pattern. Don't force scalable.
11086
11087 * xftfont.c (xftfont_open): For generating a name, start from
11088 96-byte buffer.
11089
110902008-02-01 Jan Djärv <jan.h.d@swipnet.se>
11091
11092 * frame.h (x_new_fontset2): Fix prototype.
11093
110942008-02-01 Kenichi Handa <handa@m17n.org>
11095
11096 * font.h (struct font_driver): Delete member parse_name.
11097 (font_match_p, font_get_spec, font_parse_fcname)
11098 (font_unparse_fcname): Extern them.
11099 (font_get_name): Adjust prototype.
11100
11101 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
11102 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
11103 (font_expand_wildcards): Fix handling ENCODING field. Avoid
11104 unnecessary checks for weight, slant, and swidth.
11105 (font_parse_fcname): New function.
11106 (font_unparse_fcname): New function.
11107 (font_parse_name): New function.
11108 (font_match_p): New function.
11109 (font_get_name): Change return value to Lisp string.
11110 (font_get_spec): New function.
11111 (Qunspecified, Qignore_defface): Don't extern them.
11112 (font_find_for_lface): Assume that LFACE is fully specified.
11113 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
11114 object, use it for FACE.
11115 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
11116 driver->parse_name.
11117 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
11118
11119 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
11120 prototype.
11121
11122 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
11123 argument F. Don't call Fnew_fontset. Instead, directly call
11124 make_fontset.
11125
11126 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
11127
11128 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
11129 of x_new_fontset2.
11130
11131 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
11132 (Qsans__serif): New variables.
11133 (ftfont_generic_family_list): New variable.
11134 (syms_of_ftfont): Initialize the above variables.
11135 (ftfont_pattern_entity): Delete argument NAME.
11136 (ftfont_list_generic_family): New function.
11137 (ftfont_parse_name): Delete this function.
11138 (ftfont_list): Try generic family only when FcFontList found no font.
11139 (ftfont_list_family): Fix args to FcObjectSetBuild.
11140
11141 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
11142 object in attrs[LFACE_FONT_INDEX].
11143 (set_lface_from_font_name): Cancel all changes for font-backend.
11144 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
11145 function.
11146 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
11147 font object in QCfont attribute.
11148 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
11149 (realize_default_face) [USE_FONT_BACKEND]: Call
11150 set_lface_from_font_and_fontset.
11151
11152 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
11153 "fixed", and signal error here if no suitable font was found.
11154
11155 * xfont.c (xfont_parse_name): Delete this function.
11156
11157 * xftfont.c (xftfont_open): Change coding style of error
11158 handling. Generate fontconfig's fontname pattern.
11159
11160 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
11161 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
11162
11163 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
11164 Both args FONTSET and FONT_OBJECT must be existing ones.
11165
111662008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11167
11168 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
11169
111702008-02-01 Kenichi Handa <handa@m17n.org>
11171
11172 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
11173
11174 * font.h (struct font): Fix typo.
11175
11176 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
11177 XLFD_XXX_INDEX.
11178 (enum xlfd_field_mask): New enum.
11179 (intern_font_field): Changed argument. Change caller. If digits
11180 are followed by non-digits, return a symbol.
11181 (font_expand_wildcards): New function.
11182 (font_parse_xlfd): Fix wildcard handling.
11183 (Ffont_spec): If :name is specified, reflect the info in the other
11184 properties.
11185
11186 * ftfont.c (ftfont_pattern_entity): Fix typo.
11187 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
11188 locale.
11189
111902008-02-01 Kenichi Handa <handa@m17n.org>
11191
11192 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
11193
11194 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
11195 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
11196 registry doesn't specify encoding part.
11197 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
11198 (font_open_by_name): At first try parsing the name.
11199 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
11200 as Lisp symbols.
11201
11202 * fontset.c (reorder_font_vector): Pay attention to the case that
11203 the 3rd element of font_def is nil.
11204 (fontset_font): For the default fontset, append one more fontset
11205 elements for a script-based font specification. Don't add script
11206 attribute on finding a font.
11207 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
11208 font name.
11209 (fontset_ascii_font): If a font can't be opened, return nil.
11210
11211 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
11212 (ftfont_pattern_entity): New function.
11213 (ftfont_get_cache): Assume that freetype_font_cache is already
11214 initialized.
11215 (ftfont_list): Handle the case that a file is specified in font
11216 name. Use ftfont_pattern_entity to generate entities.
11217 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
11218 (syms_of_ftfont): Initialize freetype_font_cache.
11219
11220 * xftfont.c (xftfont_open): Make the font name fontconfig's
11221 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
11222 (xftfont_close): Free font->font.name if not NULL.
11223
11224 * xfont.c (xfont_list): If script is specified for a font, return
11225 null_vector.
11226 (xfont_list_family): Declare argument type.
11227
11228 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
11229 name, set LFACE_FONT (lface) to nil.
11230
11231 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
11232 return Qnil.
11233
112342008-02-01 Kenichi Handa <handa@m17n.org>
11235
11236 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
11237 (standard_args): Add "-enable-font-backend".
11238
112392008-02-01 Kenichi Handa <handa@m17n.org>
11240
11241 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
11242 (struct xftdraw_list, xftdraw_list): Delete them.
11243 (register_xftdraw, check_xftdraw): Delete them.
11244 (xftfont_prepare_face): Don't call register_xftdraw.
11245 (xftfont_done_face): Don't call check_xftdraw.
11246 (xftfont_draw): Get background color only when with_background is
11247 nonzero.
11248
11249 * xfont.c (xfont_encode_char): Fix calculation of char2b.
11250
112512008-02-01 Kenichi Handa <handa@m17n.org>
11252
11253 These changes are for the new font handling codes.
11254
11255 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
11256 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
11257 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
11258 (FONTSRC, FONTOBJ): New variables.
11259 (obj): Add $(FONTOBJ).
11260 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
11261 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
11262 @LIBOTF_LIBS@.
11263 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
11264 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
11265
11266 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
11267
11268 * character.h (Vscript_representative_chars): Extern it.
11269
11270 * character.c (Vscript_representative_chars): New variable.
11271 (syms_of_character): Declare it as a Lisp variable.
11272
11273 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
11274 enable_font_backend is nonzero, accept the composition method
11275 COMPOSITION_WITH_GLYPH_STRING.
11276
11277 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
11278 enumeration COMPOSITION_WITH_GLYPH_STRING.
11279
11280 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
11281 members clip_x, clip_y, clip_width, and clip_height.
11282 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
11283
11284 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
11285 --enable-font-backend. Call syms_of_font.
11286
11287 * fns.c (assoc_no_quit): New function.
11288
11289 * fontset.h (FONT_INFO_FROM_FACE): New macro.
11290 (face_for_font, new_fontset_from_font)
11291 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
11292
11293 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
11294 (fontset_font, fontset_ascii, face_for_char)
11295 (make_fontset_for_ascii_face, Ffont_info)
11296 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
11297 is nonzero, use font-backend mechanism.
11298 (find_font_encoding): Make it non-static.
11299 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
11300 New functions.
11301
11302 * frame.h (struct frame): New members resx and resy.
11303 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
11304 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
11305
11306 * frame.c [USE_FONT_BACKEND]: Include "font.h".
11307 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
11308
11309 * lisp.h (assoc_no_quit): Extern it.
11310
11311 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
11312 Through out the file, use FONT_INFO_FROM_FACE instead of
11313 FONT_INFO_FROM_ID, use get_per_char_metric instead of
11314 rif->per_char_metric.
11315 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
11316 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
11317 (get_glyph_face_and_encoding, fill_composite_glyph_string)
11318 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
11319 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
11320 nonzero, use font-backend mechanism.
11321 (get_per_char_metric): New function.
11322
11323 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
11324 (set_lface_from_font_name)
11325 (set_font_frame_param, free_realized_face)
11326 (prepare_face_for_display, clear_face_gcs)
11327 (Finternal_set_font_selection_order, realize_x_face)
11328 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
11329 font-backend mechanism.
11330 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
11331 (load_face_font) [USE_FONT_BACKEND]: Abort.
11332 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
11333 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
11334
11335 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
11336 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
11337 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
11338 nonzero, register all available font drivers. Call
11339 x_default_font_parameter for deciding a font.
11340 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
11341
11342 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
11343 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
11344 (x_set_glyph_string_clipping_exactly)
11345 (x_compute_glyph_string_overhangs)
11346 (x_draw_glyph_string_foreground)
11347 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
11348 (x_free_frame_resources) [USE_FONT_BACKEND]: If
11349 enable_font_backend is nonzero, use font-backend mechanism.
11350 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
11351
113522008-02-01 Kenichi Handa <handa@m17n.org>
11353
11354 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
11355 system_eol_type.
11356 (syms_of_coding): Initialize system_eol_type.
11357
11358 * process.c (Fset_process_coding_system): Inherit system's eol
11359 format if necessary.
11360
113612008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11362
11363 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
11364
113652008-02-01 Kenichi Handa <handa@m17n.org>
11366
11367 * coding.c (decode_eol): Pay attention to buffer relocation in
11368 del_range_2.
11369 (decode_coding): Call decode_eol before restoring undo_list.
11370
113712008-02-01 Kenichi Handa <handa@m17n.org>
11372
11373 * charset.c (Fdefine_charset_internal): Fix setting of
11374 emacs_mule_bytes.
11375
113762008-02-01 Kenichi Handa <handa@m17n.org>
11377
11378 * keyboard.c (read_char): Check if C is a character or not before
11379 looking up Vkeyboard_translate_table.
11380
113812008-02-01 Kenichi Handa <handa@m17n.org>
11382
11383 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
11384 condition to terminate the loop.
11385
113862008-02-01 Kenichi Handa <handa@m17n.org>
11387
11388 * coding.c (produce_composition): Compare charbuf[i] instead of
11389 args[i] against 0.
11390 (Fterminal_coding_system): Use EQ to compare Lisp objects.
11391
113922008-02-01 Kenichi Handa <handa@m17n.org>
11393
11394 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
11395 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
11396 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
11397 detect_coding.
11398 (emacs_mule_char): Handle old style (Emacs 20) component character
11399 of a composition.
11400 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
11401 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
11402 composition rule.
11403 (decode_coding_emacs_mule): Handle invalid bytes correctly.
11404
114052008-02-01 Kenichi Handa <handa@m17n.org>
11406
11407 * coding.c (encode_coding_ccl): Allocate destination dynamically
11408 when necessary.
11409
114102008-02-01 Kenichi Handa <handa@m17n.org>
11411
11412 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
11413 the loop. When quitted, show a proper error message.
11414
114152008-02-01 Kenichi Handa <handa@m17n.org>
11416
11417 * xterm.c (x_set_glyph_string_clipping_exactly): Set
11418 src->clip_head and src->clip_tail temporarily instead of src->hl.
11419
11420 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
11421 character sequence.
11422 (Fccl_execute_on_string): Use ASET, not XSET.
11423
114242008-02-01 Kenichi Handa <handa@m17n.org>
11425
11426 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
11427
114282008-02-01 Kenichi Handa <handa@m17n.org>
11429
11430 * coding.c (decode_coding): Fix the condition of terminating the
11431 decoding loop.
11432
114332008-02-01 Kenichi Handa <handa@m17n.org>
11434
11435 * data.c (Faset): On setting a character bigger than 255 in a
11436 unibyte string, signal an error instead of make the string multibyte.
11437
114382008-02-01 Kenichi Handa <handa@m17n.org>
11439
11440 * charset.c (map_charset_chars): Fix for ascii-compatible charset
11441 made by a mapping table.
11442
114432008-02-01 Kenichi Handa <handa@m17n.org>
11444
11445 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
11446 not.
11447 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
11448 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
11449
11450 * xterm.c (x_draw_composite_glyph_string_foreground): Check
11451 s->face is NULL or not.
11452
114532008-02-01 Kenichi Handa <handa@m17n.org>
11454
11455 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
11456 (x_draw_glyph_string): Fix drawing of right_overhang and
11457 left_overhang around/on cursor.
11458
11459 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
11460
114612008-02-01 Kenichi Handa <handa@m17n.org>
11462
11463 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
11464
114652008-02-01 Kenichi Handa <handa@m17n.org>
11466
11467 * coding.c (Fdefine_coding_system_internal)
11468 (Fdefine_coding_system_alias): Avoid a duplicated element in
11469 Vcoding_system_alist.
11470
114712008-02-01 Kenichi Handa <handa@m17n.org>
11472
11473 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
11474
11475 * coding.c (Qcoding_system_define_form): New variable.
11476 (syms_of_coding): Intern and staticpro it.
11477 (Fcoding_system_p): Check Qcoding_system_define_form.
11478 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
11479
11480 * coding.h (CODING_SYSTEM_P): If ID is not available, call
11481 Fcoding_system_p.
11482 (CHECK_CODING_SYSTEM): If ID is not available, call
11483 Fcheck_coding_system.
11484 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
11485 Try also Fcheck_coding_system.
11486
114872008-02-01 Kenichi Handa <handa@m17n.org>
11488
11489 * coding.c (code_conversion_restore): GCPRO arg.
11490
114912008-02-01 Kenichi Handa <handa@m17n.org>
11492
11493 * character.c (lisp_string_width): Check multibyteness of STRING.
11494
114952008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11496
11497 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
11498 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
11499 (decode_mac_font_name): Use decode_coding_c_string instead of
11500 decode_coding.
11501 (x_load_font): Initialize fontp->fontset to -1. Set
11502 fontp->encoding_type.
11503
115042008-02-01 Kenichi Handa <handa@m17n.org>
11505
11506 * search.c (search_buffer): Give up BM search on case-fold-search
11507 if one of a target character has a case-equivalence of different
11508 byte length even if that target charcter is an ASCII.
11509 (simple_search): Fix calculation of byte length of matched text.
11510 (boyer_moore): Fix handling of case-equivalent multibyte characters.
11511
115122008-02-01 Kenichi Handa <handa@m17n.org>
11513
11514 * coding.c (decode_coding): Fix handling of invalid bytes.
11515
115162008-02-01 Kenichi Handa <handa@m17n.org>
11517
11518 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
11519 Unicode characters.
11520
115212008-02-01 Kenichi Handa <handa@m17n.org>
11522
11523 * coding.c (encode_coding_object): If a pre-write-conversion
11524 function makes a new buffer, kill it.
11525
115262008-02-01 Kenichi Handa <handa@m17n.org>
11527
11528 * coding.c (QCascii_compatible_p): New variable.
11529 (syms_of_coding): Initialize it.
11530 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
11531 calling string_char.
11532 (record_conversion_result): Add `default:' case.
11533 (coding_charset_list): Delete unused variable `coding_type'.
11534 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
11535 property in the plist of the coding system.
11536 (Fcoding_system_put): Check QCascii_compatible_p.
11537
115382008-02-01 Miles Bader <miles@gnu.org>
11539
11540 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
11541 removed calculation of frame `f', as it's now used.
11542
115432008-02-01 Kenichi Handa <handa@m17n.org>
11544
11545 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
11546 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
11547 (UNIDATA): New variable.
11548 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
11549 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
11550 $(RUN_TEMACS) unconditionally.
11551
115522008-02-01 Kenichi Handa <handa@m17n.org>
11553
11554 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
11555 (admindir): New variable.
11556 ($(lispsource)international/charprop.el): New target.
11557
115582008-02-01 Miles Bader <miles@gnu.org>
11559
11560 * character.c (chars-in-region): Remove obsolete function.
11561 (syms_of_character): Remove its initialization.
11562
115632008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
11564
11565 * w32select.c (validate_coding_system)
11566 (setup_windows_coding_system): New functions.
11567 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
11568 setup_windows_coding_system.
11569 (setup_config, Fw32_get_clipboard_data): Use
11570 validate_coding_system.
11571 (Fx_selection_exists): Move call to setup_config to a place
11572 where signals are allowed.
11573
11574 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
11575 (Fcheck_coding_system): Add declarations.
11576
115772008-02-01 Kenichi Handa <handa@m17n.org>
11578
11579 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
11580
115812008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11582
11583 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
11584 string as the second argument for x_new_fontset.
11585
115862008-02-01 Kenichi Handa <handa@m17n.org>
11587
11588 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
11589 (encode_coding_object): Use safe_call instead of call2.
11590
115912008-02-01 Kenichi Handa <handa@m17n.org>
11592
11593 * fontset.c (Fset_fontset_font): Check family element of a given vector.
11594
11595 * Makefile.in (lisp): Include charprop.el.
11596
115972008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11598
11599 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
11600 Not sure if it's unnecessary.
11601
116022008-02-01 Steven Tamm <steventamm@mac.com>
11603
11604 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
11605 some possibly unnecessary fontset checking code that crashed
11606 when creating a new frame.
11607
116082008-02-01 Kenichi Handa <handa@m17n.org>
11609
11610 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
11611 lookup_face.
11612
11613 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
11614
11615 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
11616
116172008-02-01 Kenichi Handa <handa@m17n.org>
11618
11619 * coding.c: Cancel the change done in HEAD on 2008-02-01.
11620 (coding_charset_list): New function.
11621
11622 * coding.h (coding_charset_list): Extern it.
11623
116242008-02-01 Kenichi Handa <handa@m17n.org>
11625
11626 * fontset.c (Fset_fontset_font): Call find_font_encoding with
11627 concatenation of family and registry.
11628
116292008-02-01 Kenichi Handa <handa@m17n.org>
11630
11631 * character.h (BYTE8_STRING): Fix typo.
11632
11633 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
11634 string to multibyte (sync to HEAD).
11635
11636 * casefiddle.c (casify_region): Handle changes in byte-length
11637 using replace_range_2 (sync to HEAD).
11638
116392008-02-01 Andreas Schwab <schwab@suse.de>
11640
11641 * chartab.c (map_char_table): GCPRO table and arg.
11642
116432008-02-01 Kenichi Handa <handa@m17n.org>
11644
11645 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
11646 already at limit.
11647
116482008-02-01 Kenichi Handa <handa@m17n.org>
11649
11650 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
11651 instead of fast_c_string_match_ignore_case.
11652 (find_font_encoding): Change argument to Lisp_Object. Use
11653 fast_string_match_ignore_case instead of
11654 fast_c_string_match_ignore_case. Change caller.
11655
116562008-02-01 Kenichi Handa <handa@m17n.org>
11657
11658 * xdisp.c (get_next_display_element): In unibyte case, decide to
11659 display in octal form by checking a character by
11660 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
11661
11662 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
11663
11664 * character.c (unibyte_has_multibyte_table): New variable.
11665
11666 * character.h (unibyte_has_multibyte_table): Extern it.
11667 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
11668
116692008-02-01 Kenichi Handa <handa@m17n.org>
11670
11671 * coding.c (encode_coding_iso_2022): Fix handling of charset
11672 annotation.
11673
116742008-02-01 Kenichi Handa <handa@m17n.org>
11675
11676 * coding.c (setup_coding_system): If coding_system is nil, use
11677 Qundecided.
11678 (Fterminal_coding_system): Return nil if terminal coding system is
11679 `undecided'.
11680 (syms_of_coding): Define coding-system `undecided' here. Setup
11681 terminal_coding as `undecided'.
11682
116832008-02-01 Kenichi Handa <handa@m17n.org>
11684
11685 * xdisp.c (message_dolog, set_message_1): Call
11686 unibyte_char_to_multibyte with arg type int.
11687
11688 * lread.c (read1): Fix reading of a char-table.
11689
11690 * print.c (print_object): Include sub char-table in circularities
11691 detection.
11692
116932008-02-01 Kenichi Handa <handa@m17n.org>
11694
11695 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
11696 Append the found sequences in car of ARGS instead of prepending.
11697
116982008-02-01 Kenichi Handa <handa@m17n.org>
11699
11700 * fileio.c (report_file_error): Make a unibyte string from
11701 strerror (errorno).
11702 (Fsubstitute_in_file_name): Fix the arg to
11703 unibyte_char_to_multibyte. It is evaluated twice.
11704
117052008-02-01 Kenichi Handa <handa@m17n.org>
11706
11707 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
11708
117092008-02-01 Kenichi Handa <handa@m17n.org>
11710
11711 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
11712 BOM is not found.
11713 (detect_coding, detect_coding_system): Optimization for ISO-2022
11714 when no 8-bit data is found.
11715
117162008-02-01 Jason Rumney <jasonr@gnu.org>
11717
11718 * w32fns.c (x_to_w32_font): Update to use new coding struct.
11719
117202008-02-01 Kenichi Handa <handa@m17n.org>
11721
11722 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
11723 CHARS.
11724
117252008-02-01 Steven Tamm <steventamm@mac.com>
11726
11727 * macterm.c (mac_encode_char): Add charset argument and update
11728 to use encoding_type.
11729 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
11730 switch to pure fontset.
11731 (decode_mac_font_name): Temporarily remove decoding.
11732 (x_font_name_to_mac_font_name): Temporarily remove encoding.
11733 (x_load_font): Temporarily remove encoding.
11734
117352008-02-01 Kenichi Handa <handa@m17n.org>
11736
11737 * xfaces.c (Fface_font): If frame is not on a window system,
11738 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
11739 refer to face->font.
11740 (split_font_name_into_vector, build_font_name_from_vector)
11741 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
11742 when HAVE_WINDOW_SYSTEM is defined.
11743
117442008-02-01 Kenichi Handa <handa@m17n.org>
11745
11746 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
11747 (x_produce_glyphs): Fix setting of members of cmp in case
11748 cmp->glyph_len is zero.
11749
11750 * fontset.c (Fset_fontset_font): Fix docstring.
11751 (Ffontset_info): Make it backward compatible. New arg ALL.
11752
117532008-02-01 Kim F. Storm <storm@cua.dk>
11754
11755 * process.c (read_process_output): Grow decoding_buf when needed;
11756 this could cause a crash in allocate_string and compact_small_strings.
11757
117582008-02-01 Kenichi Handa <handa@m17n.org>
11759
11760 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
11761
117622008-02-01 Kenichi Handa <handa@m17n.org>
11763
11764 * coding.c (setup_coding_system): Set coding->common_flags
11765 correctly for raw-text.
11766 (consume_chars): On encoding unibyte text by raw-text, don't check
11767 multibyte form.
11768 (encode_coding): On encoding by raw-text, never use translation tables.
11769
11770 * fileio.c (e_write): Short cut for the case of no encoding.
11771
117722008-02-01 Kenichi Handa <handa@m17n.org>
11773
11774 * coding.c (detect_coding, detect_coding_system): Delete unused
11775 variables.
11776
117772008-02-01 Kenichi Handa <handa@m17n.org>
11778
11779 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
11780 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
11781
117822008-02-01 Kenichi Handa <handa@m17n.org>
11783
11784 * coding.c (Ffind_coding_systems_region_internal): Include
11785 raw-text and no-conversion in the result.
11786
117872008-02-01 Kenichi Handa <handa@m17n.org>
11788
11789 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
11790 (load_font_get_repertory): Delete unnecessary check of ENCODING of
11791 FONT_DEF.
11792 (font_def_arg, add_arg, from_arg, to_arg): New args.
11793 (set_fontset_font): Change argument.
11794 (Fset_fontset_font): Fix for the case that TARGET is a script
11795 name and charset name.
11796 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
11797
117982008-02-01 Kenichi Handa <handa@m17n.org>
11799
11800 * fontset.c (fontset_font): Rename from fontset_face. Change return
11801 value.
11802 (face_suitable_for_char_p, face_for_char): Adjust for the change
11803 of fontset_font.
11804 (make_fontset_for_ascii_face): Fix setting of the fontset element
11805 for ASCII.
11806 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
11807 to get a font name.
11808 (Ffontset_info): Adjust for the change of fontset_font.
11809
11810 * coding.c (emacs_mule_char): Check invalid code more rigidly.
11811
11812 * character.h (LEADING_CODE_LATIN_1_MIN)
11813 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
11814
118152008-02-01 Kenichi Handa <handa@m17n.org>
11816
11817 * editfns.c (check_translation): New function.
11818 (Ftranslate_region_internal): Handle M:N mapping.
11819
118202008-02-01 Kenichi Handa <handa@m17n.org>
11821
11822 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
11823
118242008-02-01 Kenichi Handa <handa@m17n.org>
11825
11826 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
11827 goto invalid_code.
11828 (decode_coding_iso_2022): Fix handling of invalid designation.
11829
11830 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
11831 after calling code_conversion_save.
11832
118332008-02-01 Kenichi Handa <handa@m17n.org>
11834
11835 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
11836
11837 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
11838
11839 * fontset.c: Include "intervals.h".
11840 (fontset_face): Fix comparing of Lisp_Objects.
11841 (free_face_fontset, new_fontset_from_font_name): Fix
11842 Lisp_Object/int mixup.
11843
11844 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
11845
11846 * coding.c: Add many prototypes for static functions.
11847 (get_translation_table): Allow max_lookup to be NULL.
11848 (decode_coding, Ffind_coding_systems_region_internal)
11849 (Funencodable_char_position, Fcheck_coding_systems_region): Call
11850 get_translation_table with max_lookup NULL.
11851
118522008-02-01 Kenichi Handa <handa@m17n.org>
11853
11854 * coding.c (get_translation_table): Declare it as Lisp_Object.
11855 (LOOKUP_TRANSLATION_TABLE): New macro.
11856 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
11857 instead of CHAR_TABLE_REF.
11858
118592008-02-01 Kenichi Handa <handa@m17n.org>
11860
11861 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
11862 annotation data format.
11863 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
11864 Change arguments FROM and TO to single argument NCHARS. Change caller.
11865 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
11866 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11867 (decode_coding_ccl, decode_coding_charset): Pay attention to
11868 coding->charbuf_used.
11869 (get_translation): New function.
11870 (produce_chars): New arguments translation_table and last_block.
11871 Translate characters here. Return number of carryover chars.
11872 Change caller.
11873 (produce_composition): New argument pos. Change caller.
11874 Adjust for the change of annotation data format.
11875 (produce_charset, produce_annotation): Likewise.
11876 (decode_coding, encode_coding): Don't call translate_chars.
11877 (consume_chars): New arg translation_table. Change caller.
11878 (translate_chars): Delete.
11879 (syms_of_coding): Make translation-table's number of extra slots 2.
11880
118812008-02-01 Kenichi Handa <handa@m17n.org>
11882
11883 * search.c (simple_search): Fix setting this_pos_byte in backward
11884 search.
11885
11886 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
11887 byte sequence.
11888 (detect_coding_ccl): Fix setting of the variable valids.
11889
118902008-02-01 Kenichi Handa <handa@m17n.org>
11891
11892 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
11893
11894 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
11895
11896 * editfns.c (Ftranslate_region_internal): Rename from
11897 Ftranslate_region. Accept a char-table in TABLE.
11898 (syms_of_editfns): Defsubr Stranslate_region_internal.
11899
11900 * xfaces.c (set_lface_from_font_name): If a font is specified for
11901 a frame, generate a fontset from the font.
11902 (build_scalable_font_name): If the scalable font is requested for
11903 a specific size, don't change that size.
11904 (try_font_list): Try a scalable font also in the case that a
11905 pattern string is specified.
11906
119072008-02-01 Kenichi Handa <handa@m17n.org>
11908
11909 * xfaces.c (Fface_font): New optional arg CHARACTER.
11910
119112008-02-01 Kenichi Handa <handa@m17n.org>
11912
11913 * charset.h (CHARSET_OFFSET): New macro.
11914
119152008-02-01 Kenichi Handa <handa@m17n.org>
11916
11917 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
11918
11919 * fontset.c (fontset_face): Handle the case that repertory is a
11920 char-table.
11921 (find_font_encoding): Return nil for unknown encoding.
11922 (Fset_fontset_font): Ignore a font of unknown encoding.
11923
119242008-02-01 Kenichi Handa <handa@m17n.org>
11925
11926 * keymap.c (describe_vector): Handle default value of a char table.
11927
11928 * fontset.c (fontset_face): Handle fallback fonts correctly.
11929 (Ffontset_info): Return infomation about fallback fonts.
11930
119312008-02-01 Kenichi Handa <handa@m17n.org>
11932
11933 * fontset.c (FONTSET_DEFAULT): New macro.
11934 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
11935 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
11936 the case that it is nil.
11937 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
11938 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
11939
11940 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
11941 subset or superset.
11942
119432008-02-01 Kenichi Handa <handa@m17n.org>
11944
11945 * emacs.c (main): Call init_charset after syms_of_XXX.
11946
11947 * charset.c (Vcharset_map_directory): Delete.
11948 (Vcharset_map_path): New variable.
11949 (load_charset_map_from_file): Use Vcharset_map_path instead.
11950 (init_charset): Initialize Vcharset_map_path.
11951 (syms_of_charset): Delete declaration of "charset-map-directory",
11952 add declaration of "charset-map-path".
11953
119542008-02-01 Kenichi Handa <handa@m17n.org>
11955
11956 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
11957 ASCII only string.
11958
11959 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
11960
11961 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
11962 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
11963
119642008-02-01 Kenichi Handa <handa@m17n.org>
11965
11966 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
11967
11968 * coding.c (QCmnemonic, QCdefalut_char)
11969 (QCdecode_translation_table, QCencode_translation_table)
11970 (QCpost_read_conversion, QCpre_write_conversion): New variables.
11971 (get_translation_table): Return a list of translation tables if
11972 necessary.
11973 (decode_coding): Call get_translation_table with ENCODEP 0.
11974 (char_encodable_p): If translation_table is non-nil, always call
11975 translate_char.
11976 (Fdefine_coding_system_internal): Accept list of translation
11977 tables as :encode-translation-table and :decode-translation-table.
11978 (Fcoding_system_put): New function.
11979 (syms_of_coding): Declare new symbols. Defsubr
11980 Scoding_system_put.
11981 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
11982 typically JISX0212.
11983
11984 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
11985 when the charset is superset type.
11986
11987 * character.c (translate_char): Accept list of translation tables.
11988
119892008-02-01 Kenichi Handa <handa@m17n.org>
11990
11991 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
11992 (CODING_ATTR_TRANS_TBL): New macro.
11993
11994 * coding.c (get_translation_table): New function.
11995 (translate_chars): Fix the bug of skipping annotation data.
11996 (decode_coding, encode_coding): Utilize get_translation_table.
11997 (char_encodable_p, Funencodable_char_position): Translate char if
11998 necessary.
11999 (Ffind_coding_systems_region_internal)
12000 (Fcheck_coding_systems_region): Setup translation table for encode
12001 in a coding system attribute vector in advance.
12002 (Fdefine_coding_system_internal): Allow a symbol as translation
12003 table. For shift-jis type coding system, allow 4th charset.
12004
120052008-02-01 Kenichi Handa <handa@m17n.org>
12006
12007 * coding.c (decode_coding_sjis): Check the first byte rigidly.
12008
12009 * xdisp.c (get_next_display_element): Pass -1 as POS to
12010 FACE_FOR_CHAR if displaying a C-string.
12011
120122008-02-01 Kenichi Handa <handa@m17n.org>
12013
12014 * composite.c (get_composition_id): Handle xoff and yoff in a
12015 composition rule.
12016
12017 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
12018 (struct composition): New member lbearing and rbearing.
12019
12020 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
12021 (x_get_glyph_overhangs): Handle a composition glyph.
12022 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
12023
12024 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
12025 composition glyph.
12026
120272008-02-01 Kenichi Handa <handa@m17n.org>
12028
12029 * print.c: Include charset.h.
12030 (Vprint_charset_text_property): New variable.
12031 (Qdefault): Extern it.
12032 (PRINT_STRING_NON_CHARSET_FOUND)
12033 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
12034 (print_check_string_result): New variable.
12035 (print_check_string_charset_prop): New function.
12036 (print_prune_charset_plist): New variable.
12037 (print_prune_string_charset): New function.
12038 (print_object): Call print_prune_string_charset if
12039 Vprint_charset_text_property is not t.
12040 (print_interval): Print nothing if interval->plist is nil.
12041 (syms_of_print): Declare Vprint_charset_text_property as a lisp
12042 variable. Init and staticpro print_prune_charset_plist.
12043
120442008-02-01 Kenichi Handa <handa@m17n.org>
12045
12046 * fontset.c (new_fontset_from_font_name): Use the specified font
12047 for all characters in the new fontset.
12048
12049 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
12050 OBJECT args.
12051
12052 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
12053 OBJECT args for composition too.
12054
12055 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
12056 OBJECT args.
12057
120582008-02-01 Kenichi Handa <handa@m17n.org>
12059
12060 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
12061
12062 * fontset.c (reorder_font_vector): Adjust for the change of
12063 FONT_DEF format.
12064 (fontset_face): New arg id. Change caller.
12065 (face_for_char): New args pos and object.
12066 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
12067 (fs_query_fontset): Check NAME by Fassoc too.
12068 (Fset_fontset_font): Allow non-XLFD font name.
12069 (Ffontset_info): Adjust for the change of FONT_DEF format.
12070
12071 * fontset.h (face_for_char): Adjust prototype.
12072
12073 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
12074 (append_space, extend_face_to_end_of_line)
12075 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
12076 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
12077
12078 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
12079 POS and OBJECT args.
12080
12081 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
12082 POS and OBJECT args.
12083
120842008-02-01 Jason Rumney <jasonr@gnu.org>
12085
12086 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
12087 of GlobalAlloc'ed memory.
12088
120892008-02-01 Kenichi Handa <handa@m17n.org>
12090
12091 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
12092
12093 * charset.h (charset_table_used): Delete extern.
12094
12095 * charset.c (charset_table_used): Make it static.
12096 (map_charset_chars): Fix args to c_function with.
12097
12098 * chartab.c (map_sub_char_table_for_charset): Fix args to
12099 c_function with.
12100
12101 * coding.h (enum coding_result_code): Delete
12102 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
12103
12104 * coding.c (Qinsufficient_source, Qinconsistent_eol)
12105 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
12106 (Vlast_code_conversion_error): New variables.
12107 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
12108 (ONE_MORE_BYTE): Record error if any instead of signaling an
12109 error. If non-ASCII multibyte char is found, return the negative
12110 value of the code. All callers changed to check it.
12111 (ONE_MORE_BYTE_NO_CHECK): Likewise.
12112 (record_conversion_result): New function. Change all codes setting
12113 coding->result to call this function.
12114 (detect_coding_utf_8, decode_coding_utf_8)
12115 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
12116 Don't use the local variable incomplete.
12117 (emacs_mule_char): Change the second arg to `const'.
12118 (decode_coding): Fix of flushing out unprocessed data.
12119 (make_conversion_work_buffer): Fix making of a work buffer.
12120 (decode_coding_object): Return coding->dst_object.
12121
12122 * fontset.c (set_fontset_font): Fix args.
12123
12124 * lisp.h (CHARACTERBITS): Define as 22.
12125
12126 * process.c (send_process): Be sure to set coding->src_multibyte.
12127
12128 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
12129
121302008-02-01 Kenichi Handa <handa@m17n.org>
12131
12132 * xdisp.c (handle_auto_composed_prop): Give limit to
12133 Fnext_single_char_property_change.
12134
121352008-02-01 Kenichi Handa <handa@m17n.org>
12136
12137 * composite.c (syms_of_composite): Don't make the composition hash
12138 table weak.
12139
12140 * fontset.c (Fset_fontset_font): Fix docstring.
12141
12142 * lisp.h (detect_coding_system): Adjust prototype.
12143
12144 * fileio.c (kill_workbuf_unwind): Delete this function.
12145 (Finsert_file_contents): Adjust the call of detect_coding_system.
12146 Get conversion_buffer by code_conversion_save. Use the macro
12147 CODING_MAY_REQUIRE_DECODING. After decoding, update
12148 coding_system.
12149
12150 * coding.h (make_conversion_work_buffer): Delete extern.
12151 (code_conversion_save): Extern it.
12152
12153 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
12154 (CODING_GET_INFO): Delete argument eol_type. Change callers.
12155 (decode_coding_utf_8): Don't do eol converion.
12156 (detect_coding_utf_16): Check coding->src_chars, not
12157 coding->src_bytes. Add heuristics for those that have no signature.
12158 (decode_coding_emacs_mule, decode_coding_iso_2022)
12159 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
12160 Don't do eol converion.
12161 (adjust_coding_eol_type): Return a new coding system.
12162 (detect_coding): Don't detect eol. Fix for utf-16 detection.
12163 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
12164 each change.
12165 (decode_coding): Pay attention to undo_list. Do eol conversion for
12166 all types of coding-systems (if necessary).
12167 (Vcode_conversion_work_buf_list): Delete it.
12168 (Vcode_conversion_reused_workbuf): Rename from
12169 Vcode_conversion_reused_work_buf.
12170 (Vcode_conversion_workbuf_name): New variable.
12171 (reused_workbuf_in_use): New variable.
12172 (make_conversion_work_buffer): Delete the arg DEPTH.
12173 (code_conversion_restore): Change argument to cons.
12174 (code_conversion_save): Delete the argument BUFFER. Change callers.
12175 (detect_coding_system): New argument src_chars. Change callers.
12176 Fix for utf-16 detection.
12177 (init_coding_once): Don't use ISO_carriage_return.
12178 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
12179 reused_workbuf_in_use.
12180
121812008-02-01 Kenichi Handa <handa@m17n.org>
12182
12183 * keymap.c (store_in_keymap): Pay attention to the case that idx
12184 is a cons specifying a character range.
12185
121862008-02-01 Kenichi Handa <handa@m17n.org>
12187
12188 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
12189 HANDLED_RECOMPUTE_PROPS.
12190
12191 * coding.c (Fdefine_coding_system_internal): Fix checking of
12192 ascii compatibility.
12193
121942008-02-01 Kenichi Handa <handa@m17n.org>
12195
12196 * charset.c (find_charsets_in_text): Delete unused locale variable.
12197 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
12198
12199 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
12200 Resync charset_list to Vemacs_mule_charset_list.
12201
12202 * keymap.c (store_in_keymap): Pay attention to the case that idx
12203 is a cons specifying a character range.
12204
122052008-02-01 Kenichi Handa <handa@m17n.org>
12206
12207 * composite.c (update_compositions): Bind inhibit-read-only, etc
12208 to t before calling remove-list-of-text-properties.
12209
12210 * print.c (print_object): Always print ASCII chars as is.
12211
122122008-02-01 Kenichi Handa <handa@m17n.org>
12213
12214 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
12215
12216 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
12217 is a char table.
12218
122192008-02-01 Kenichi Handa <handa@m17n.org>
12220
12221 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
12222
122232008-02-01 Kenichi Handa <handa@m17n.org>
12224
12225 * xfaces.c (set_lface_from_font_name): Fix for the case that
12226 FONTNAME is not fontset name.
12227
122282008-02-01 Kenichi Handa <handa@m17n.org>
12229
12230 * fns.c (base64_encode_1): Fix previous change.
12231
122322008-02-01 Kenichi Handa <handa@m17n.org>
12233
12234 * fontset.c (set_fontset_font): New function.
12235 (Fset_fontset_font): If a font is specified for a charset, use
12236 map_charset_chars to store the font spec in a fontset.
12237
122382008-02-01 Kenichi Handa <handa@m17n.org>
12239
12240 * fontset.c (fontset_face): Create a fallback fontset on demand.
12241 (make_fontset): Don't create a fallback fontset here.
12242 (free_face_fontset): Free a fallback fontset (if any) too.
12243 (n_auto_fontsets): Delete this variable.
12244 (auto_fontset_alist): New variable.
12245 (new_fontset_from_font_name): Check auto_fontset_alist.
12246 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
12247 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
12248 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
12249 Defsubr Sfontset_list_all.
12250
122512008-02-01 Kenichi Handa <handa@m17n.org>
12252
12253 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
12254
122552008-02-01 Kenichi Handa <handa@m17n.org>
12256
12257 * fontset.c (Fnew_fontset): Check NAME more rigidly.
12258
122592008-02-01 Kenichi Handa <handa@m17n.org>
12260
12261 * editfns.c (Fgoto_char): Fix docstring.
12262
122632008-02-01 Kenichi Handa <handa@m17n.org>
12264
12265 * insdel.c (insert_from_gap): Adjust intervals correctly.
12266
122672008-02-01 Jason Rumney <jasonr@gnu.org>
12268
12269 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
12270 (pfnGetFontUnicodeRanges): New dynamically loaded function.
12271 (w32_initialize): Try to load it.
12272 (x_get_font_repertory): Use it if available.
12273 (w32_encode_char): Add shortcut for unicode output.
12274
12275 * w32fns.c (w32_load_system_font): Default charset to -1.
12276 (x_to_w32_charset): Match all fonts for unicode.
12277 (w32_to_x_charset): New parameter matching. Don't return partial
12278 or wildcard charsets.
12279 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
12280 (w32_codepage_for_font): Return CP_UNICODE for unicode.
12281 (w32_to_x_font): Match charset to real charset.
12282 (enum_font_cb2): Always list unicode versions.
12283
12284 * makefile.w32-in (temacs): Increase EMHEAP.
12285
122862008-02-01 Jason Rumney <jasonr@gnu.org>
12287
12288 * w32term.c (w32_encode_char): New charset parameter.
12289 font_info.encoding becomes encoding_type.
12290 (x_get_font_repertory): New function. Warning: stub only!
12291 (x_new_font): Return quickly if font already set.
12292 (x_new_fontset): fontsetname parameter is Lisp_Object.
12293 Use new fs_query_fontset. Try new_fontset_from_font_name.
12294 Use fontset_name for return value.
12295
12296 * w32term.h: Declare x_get_font_repertory.
12297
12298 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
12299 place of find_charset_in_text. Use encode_coding_object in place
12300 of encode_coding.
12301 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
12302 decode_coding.
12303
12304 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
12305 of x_new_fontset.
12306 (w32_load_system_font): Initialize charset as unicode.
12307 font_info.encoding becomes encoding_type.
12308 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
12309 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
12310 (syms_of_w32fns): Set get_font_repertory_func.
12311
12312 * w32console.c: Include character.h. Use terminal_encode_buffer
12313 from term.c.
12314 (write_glyphs): Use new version of encode_terminal_code. Use
12315 encode_coding_object in place of encode_coding.
12316
12317 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
12318 encoding becomes encoding_type.
12319
12320 * term.c (terminal_encode_buffer): Make externally visible.
12321
12322 * makefile.w32-in: Add character.h dependancies.
12323 (character.o, chartab.o): New targets.
12324
123252008-02-01 Kenichi Handa <handa@m17n.org>
12326
12327 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
12328 CODING_ID_EOL_TYPE.
12329
123302008-02-01 Andreas Schwab <schwab@suse.de>
12331
12332 * coding.c (produce_chars): Revert last change.
12333
123342008-02-01 Kenichi Handa <handa@m17n.org>
12335
12336 * charset.h (charset_unicode): Extern it.
12337
12338 * charset.c (string_xstring_p): Check by (C >= 0x100).
12339 (find_charsets_in_text): Change format of the arc CHARSETS. New
12340 arg MULTIBYTE.
12341 (Ffind_charset_region, Ffind_charset_string): Adjust for the
12342 change of find_charsets_in_text.
12343 (Fsplit_char): Fix doc. Never return unknown.
12344
12345 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
12346
12347 * coding.c (Fdefine_coding_system_alias): Update
12348 Vcoding_system_list.
12349
12350 * fontset.c (load_font_get_repertory): Pay attention to the case
12351 that ENCODING of a font is specified by a char-table.
12352
12353 * xterm.c (x_get_font_repertory): Handle the case that the
12354 encoding of font is other than Unicode.
12355
123562008-02-01 Kenichi Handa <handa@m17n.org>
12357
12358 * term.c (encode_terminal_code): Don't handle glyph-table. Check
12359 if a character is encodable by the terminal coding system. If
12360 not, produces proper number of `?'s. Update
12361 terminal_encode_buffer and terminal_encode_buf_size if necessary.
12362 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
12363
123642008-02-01 Kenichi Handa <handa@m17n.org>
12365
12366 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
12367 variables.
12368 (encode_terminal_code): Change argument. Encode multiple
12369 characters at once. Store the result of encoding in
12370 terminal_encode_buffer.
12371 (write_glyphs, insert_glyphs): Adjust for the change of
12372 encode_terminal_code.
12373 (term_init): Initialize terminal_encode_buffer and
12374 terminal_encode_buf_size.
12375
12376 * coding.c (consume_chars): If coding->src_object is nil, don't
12377 check annotation.
12378
123792008-02-01 Kenichi Handa <handa@m17n.org>
12380
12381 * character.c (char_string): Use ASCII_CHAR_P instead of
12382 SINGLE_BYTE_CHAR_P.
12383
123842008-02-01 Kenichi Handa <handa@m17n.org>
12385
12386 * xdisp.c (handle_auto_composed_prop): Check if the last
12387 characters of auto-composed region is newly composed with the
12388 following characters.
12389 (handle_composition_prop): Fix checking of point being inside
12390 composition.
12391
123922008-02-01 Kenichi Handa <handa@m17n.org>
12393
12394 * fns.c (concat): Don't change multibyteness of the result by
12395 concatenating an 8-bit character.
12396
12397 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
12398 multibyteness of the result when newelt is an 8-bit character.
12399
124002008-02-01 Dave Love <fx@gnu.org>
12401
12402 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
12403 EMACS_INT.
12404
12405 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
12406
12407 * xfaces.c (face_numeric_value): Declare dim size_t.
12408 (Finternal_lisp_face_equal_p): Remove unused f.
12409
12410 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
12411 (MATRIX_ROW): Remove unused vars.
12412 (draw_glyphs, x_insert_glyphs, fast_find_position)
12413 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
12414 byte/char counts.
12415
12416 * regex.c (regex_compile): Remove unused var.
12417
12418 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
12419
12420 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12421 (Faccessible_keymaps, where_is_internal): Remove unused vars.
12422
12423 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
12424
12425 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
12426
12427 * fileio.c (Fwrite_region): Remove unused var.
12428
12429 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
12430 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
12431
12432 * composite.c (Fremove_list_of_text_properties): Declare.
12433
12434 * coding.c (inhibit_pre_post_conversion): Remove (unused).
12435 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
12436 (coding_inherit_eol_type): Remove unused attrs.
12437 (detect_coding): Cast arg of detect_eol.
12438
12439 * charset.c (syms_of_charset): Remove unused var p.
12440 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
12441 byte/char counts.
12442
12443 * casetab.c (set_case_table): Remove unused var.
12444
12445 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
12446 unused vars.
12447
124482008-02-01 Dave Love <fx@gnu.org>
12449
12450 * xterm.c (x_bitmap_mask): Declare.
12451
124522008-02-01 Dave Love <fx@gnu.org>
12453
12454 * xterm.c (x_term_init): Fix type error.
12455
12456 * lisp.h: Add Funibyte_char_to_multibyte.
12457
12458 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
12459 (Fset_coding_system_priority): Doc fix.
12460
12461 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
12462
12463 * indent.c (check_composition): Make start and end EMACS_INT.
12464
12465 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
12466
12467 * xdisp.c (handle_composition_prop, check_point_in_composition):
12468 Make buffer positions EMACS_INT.
12469
12470 * composite.c (find_composition, run_composition_function)
12471 (update_compositions, Ffind_composition_internal): Make buffer
12472 positions EMACS_INT.
12473
12474 * composite.h (find_composition, update_compositions): Make
12475 position args EMACS_INT.
12476
12477 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
12478
12479 * intervals.c (get_property_and_range):
12480 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
12481
12482 * unexalpha.c: Don't include varargs.h.
12483
124842008-02-01 Dave Love <fx@gnu.org>
12485
12486 * coding.h (ENCODE_UTF_8): New.
12487
12488 * Makefile.in (gtkutil.o): Depend on coding.h.
12489
12490 * coding.c (Fset_coding_system_priority): Doc fix.
12491
124922008-02-01 Kenichi Handa <handa@m17n.org>
12493
12494 * fileio.c (Finsert_file_contents): Call setup_coding_system in
12495 the case of auto saving.
12496
124972008-02-01 Andreas Schwab <schwab@suse.de>
12498
12499 * chartab.c (map_char_table, map_char_table_for_charset): Protect
12500 `range' from GC.
12501
125022008-02-01 Kenichi Handa <handa@m17n.org>
12503
12504 * coding.c (decode_coding_sjis): Check bytes more rigidly.
12505
125062008-02-01 Kenichi Handa <handa@m17n.org>
12507
12508 * fileio.c (choose_write_coding_system): Return a decided coding system.
12509 (Fwrite_region): Set Vlast_coding_system_used to the return value
12510 of choose_write_coding_system.
12511
125122008-02-01 Kenichi Handa <handa@m17n.org>
12513
12514 * charset.c (Fset_charset_priority): Pay attention to duplicated
12515 arguments.
12516
12517 * coding.c (QCcategory): New variable.
12518 (syms_of_coding): Defsym it. Set all elements of
12519 Vcoding_category_table and their symbol values.
12520 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
12521 coding-category-XXX, and coding-category-list.
12522 (Fdefine_coding_system_internal): Add category in the plist.
12523
125242008-02-01 Kenichi Handa <handa@m17n.org>
12525
12526 * callproc.c (Fcall_process): Handle carryover correctly.
12527
12528 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
12529 (raw_text_coding_system): Check NILP (coding_system).
12530 (coding_inherit_eol_type): Check NILP (coding_system) and
12531 NILP (parent).
12532 (consume_chars): Fix for the case of raw-text.
12533
12534 * process.c (read_process_output): Handle carryover correctly.
12535
125362008-02-01 Dave Love <fx@gnu.org>
12537
12538 * regex.c (re_search_2): Fix last change.
12539
125402008-02-01 Kenichi Handa <handa@m17n.org>
12541
12542 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
12543 target_multibyte. Even in a unibyte case, return a converted
12544 multibyte char.
12545 (GET_CHAR_AFTER): New macro.
12546 (PATFETCH): Translate via multibyte char.
12547 (HANDLE_UNIBYTE_RANGE): Delete this macro.
12548 (SETUP_MULTIBYTE_RANGE): New macro.
12549 (regex_compile): Setup compiled code so that its multibyteness
12550 matches that of a target. Fix the handling of "[X-YZ]" using
12551 SETUP_MULTIBYTE_RANGE.
12552 (analyse_first) <charset>: For filling fastmap for all multibyte
12553 characters, don't check by BASE_LEADING_CODE_P.
12554 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
12555 the same as RE_MULTIBYTE_P (bufp) now.
12556 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
12557 (TARGET_CHAR_AND_LENGTH): Delete this macro.
12558 (TRANSLATE_VIA_MULTIBYTE): New macro.
12559 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
12560 It is the same as RE_MULTIBYTE_P (bufp) now.
12561 <exactn>: Translate via multibyte.
12562 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
12563 translate it.
12564 <charset, charset_not>: Fetch a character by
12565 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
12566 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
12567 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
12568 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
12569 by GET_CHAR_AFTER.
12570 (bcmp_translate): Likewise.
12571
12572 * search.c (compile_pattern): Check the member target_multibyte,
12573 not the member multibyte of buf.
12574
12575 * lread.c (read1): While reading a string, set force_singlebyte
12576 and force_multibyte correctly.
12577
12578 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
12579 up of unibyte_to_multibyte_table.
12580
125812008-02-01 Kenichi Handa <handa@m17n.org>
12582
12583 * coding.c (setup_coding_system): If coding has
12584 post-read-conversion or pre-write-conversion, set
12585 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
12586 respectively.
12587 (decode_coding_gap): Run post-read-conversion if any.
12588
12589 * fileio.c (Finsert_file_contents): Even if we read into a
12590 unibyte buffer, check if we must decode the result or not.
12591
125922008-02-01 Kenichi Handa <handa@m17n.org>
12593
12594 * coding.c (make_conversion_work_buffer): Change the work buffer
12595 name to the same one as that of Emacs 21.
12596
125972008-02-01 Kenichi Handa <handa@m17n.org>
12598
12599 * coding.h (make_conversion_work_buffer): Adjust prototype.
12600 (code_conversion_restore): Don't extern it.
12601
12602 * coding.c (detected_mask): Delete unused variable.
12603 (decode_coding_iso_2022): Pay attention to the byte sequence of
12604 CTEXT extended segment, and retain those bytes as is.
12605 (decode_coding_ccl): Delete unused variable `valids'.
12606 (setup_coding_system): Delete unused variable `category'.
12607 (consume_chars): Delete unused variable `category'. Make it work
12608 for non-multibyte case.
12609 (make_conversion_work_buffer): Change argument.
12610 (saved_coding): Delete unused variable.
12611 (code_conversion_restore): Don't check saved_coding->destination.
12612 (code_conversion_save): New function.
12613 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
12614 instead of record_unwind_protect.
12615 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
12616 (detect_coding_system): Delete unused variable `mask'.
12617 (Fdefine_coding_system_internal): Delete unused variable id.
12618
12619 * fileio.c (kill_workbuf_unwind): New function.
12620 (Finsert_file_contents): On replacing, call
12621 make_conversion_work_buffer with correct args, and call
12622 record_unwind_protect with the first arg kill_workbuf_unwind.
12623
12624 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
12625
126262008-02-01 Kenichi Handa <handa@m17n.org>
12627
12628 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
12629 (fontset_add): Fix for the case that TO is less than TO1.
12630 (Ffontset_info): Don't use fallback fontset on checking the
12631 default fontset.
12632 (dump_fontset): New function for debugging.
12633
12634 * coding.c (Fdefine_coding_system_internal): Fix for the case that
12635 coding_type is Qcharset.
12636
126372008-02-01 Kenichi Handa <handa@m17n.org>
12638
12639 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
12640 (map_char_table): Don't inherit the value from the parent on
12641 initializing VAL. Adjust for the above change.
12642
126432008-02-01 Kenichi Handa <handa@m17n.org>
12644
12645 * coding.c (Qsignature, Qendian): Delete these variables.
12646 (syms_of_coding): Don't initialize them.
12647 (CATEGORY_MASK_UTF_16_AUTO): New macro.
12648 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
12649 detect_info->found.
12650 (decode_coding_utf_16): Don't detect BOM here.
12651 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
12652 is NOT utf_16_without_bom.
12653 (setup_coding_system): For a coding system of type utf-16, check
12654 if the attribute :endian is Qbig or not (not nil or not), and set
12655 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
12656 (detect_coding): If coding type is utf-16 and BOM detection is
12657 required, detect it.
12658 (Fdefine_coding_system_internal): For a coding system of type
12659 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
12660
126612008-02-01 Kenichi Handa <handa@m17n.org>
12662
12663 * coding.c (coding_set_source): Fix for the case that the current
12664 buffer is different from coding->src_object.
12665 (decode_coding_object): Don't use the conversion work buffer if
12666 DST_OBJECT is a buffer.
12667
126682008-02-01 Dave Love <fx@gnu.org>
12669
12670 * lread.c (read_emacs_mule_char) [len==2]: Index
12671 emacs_mule_charset correctly.
12672
126732008-02-01 Dave Love <fx@gnu.org>
12674
12675 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
12676 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
12677 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
12678 treated specially.)
12679 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
12680 (detected_mask): Remove Big5 bits.
12681
126822008-02-01 Kenichi Handa <handa@m17n.org>
12683
12684 The following changes are to make the font rescaling facility
12685 compatible with Emacs 21.
12686
12687 * xfaces.c (Vface_font_rescale_alist): Rename from
12688 Vface_resizing_fonts.
12689 (struct font_name): Rename member resizing_ratio to rescale_ratio.
12690 (font_rescale_ratio): Rename from font_resizing_ratio.
12691 (split_font_name): Set font->rescale_ratio.
12692 (better_font_p): Pay attention to font->rescale_ratio.
12693 (build_scalable_font_name): Likewise. Change RESX, and RESY
12694 fields.
12695 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12696
126972008-02-01 Kenichi Handa <handa@m17n.org>
12698
12699 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
12700 (Qutf_16_le): Remove these variables.
12701 (syms_of_coding): Don't DEFSYM them.
12702 (decode_coding_utf_16): Fix handling of BOM.
12703 (encode_coding_utf_16): Fix handling of BOM.
12704
127052008-02-01 Kenichi Handa <handa@m17n.org>
12706
12707 * fileio.c (Finsert_file_contents): On replacing, before decoding
12708 the file into the work buffer, set point of the work buffer to the end.
12709
127102008-02-01 Dave Love <fx@gnu.org>
12711
12712 * coding.c (Fcheck_coding_systems_region): Fix type errors.
12713
127142008-02-01 Dave Love <fx@gnu.org>
12715
12716 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12717 and fix C types.
12718
127192008-02-01 Kenichi Handa <handa@m17n.org>
12720
12721 * xdisp.c (SKIP_GLYPHS): New macro.
12722 (set_cursor_from_row): Pay attention to string display properties.
12723
12724 * category.c (copy_category_entry): Fix for the case that RANGE
12725 is an integer.
12726
12727 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
12728
12729 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
12730
127312008-02-01 Kenichi Handa <handa@m17n.org>
12732
12733 * charset.c (Fcharset_id_internal): New function.
12734 (syms_of_charset): Defsubr it.
12735
12736 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
12737 with the last arg charset_list acquired from coding.
12738 (Fdefine_coding_system_internal): For ccl-based coding system, fix
12739 the attribute coding_attr_ccl_valids.
12740
12741 * coding.h (enum define_coding_ccl_arg_index): Set the first
12742 member coding_arg_ccl_decoder to coding_arg_max.
12743
12744 * ccl.h (ccl_driver): Adjust prototype.
12745
12746 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
12747 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 12748 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
12749 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
12750 last arg Qnil.
12751
127522008-02-01 Kenichi Handa <handa@m17n.org>
12753
12754 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
12755 call encode_char.
12756
12757 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
12758
127592008-02-01 Dave Love <fx@gnu.org>
12760
12761 * composite.c (syms_of_composite): Make composition_hash_table weak.
12762
127632008-02-01 Kenichi Handa <handa@m17n.org>
12764
12765 * dispextern.h (check_face_attributes, generate_ascii_font_name)
12766 (font_name_registry): Don't extern them.
12767 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
12768
12769 * fontset.h (Qfontset): Don't extern it.
12770 (new_fontset_from_font_name): Extern it.
12771
12772 * fontset.c: Give 8 extra slots to fontset objects.
12773 (Qfontset_info): New variable.
12774 (syms_of_fontset): Defsym it.
12775 (FONTSET_FALLBACK): New macro.
12776 (fontset_face): Try also the default fontset.
12777 (make_fontset): Realize a fallback fontset from the default fontset.
12778 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
12779 using split_font_name_into_vector and build_font_name_from_vector.
12780 (Fset_fontset_font): Access the elements of font_spec by enum
12781 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
12782 name by using split_font_name_into_vector.
12783 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
12784 generate a proper font name from the fontset name. Update
12785 Vfontset_alias_alist.
12786 (n_auto_fontsets): New variable.
12787 (new_fontset_from_font_name): New function.
12788 (Ffont_info): Store the information about fonts generated from the
12789 default fontset in the first extra slot of the returned char-table.
12790
12791 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
12792 (font_name_registry): Delete function.
12793 (split_font_name_into_vector): New function.
12794 (build_font_name_from_vector): New function.
12795 (font_list): The argument REGISTRY is now a list of registry names.
12796 (choose_face_font): If we are choosing an ASCII font, and ATTRS
12797 specifies an explicit font name, return the name as is. Make a
12798 list of registy names.
12799
12800 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
12801 of x_new_fontset.
12802 (Fx_create_frame): Don't call x_new_fontset here. Just use
12803 x_list_fonts to check the existence of fonts.
12804
12805 * xterm.h (x_new_fontset): Adjust prototype.
12806
12807 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
12808 string. Use new_fontset_from_font_name to create a fontset from a
12809 font name.
12810
128112008-02-01 Kenichi Handa <handa@m17n.org>
12812
12813 * syntax.c (Vfind_word_boundary_function_table): New name for
12814 Vnext_word_boundary_function_table.
12815 (find-word-boundary-function-table): New name for
12816 next-word-boundary-function-table.
12817
128182008-02-01 Dave Love <fx@gnu.org>
12819
12820 * Makefile.in: Fix some dependencies.
12821
12822 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
12823 set it to nil before returning.
12824
12825 * composite.c (update_compositions): Fix type error.
12826
12827 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
12828
128292008-02-01 Kenichi Handa <handa@m17n.org>
12830
12831 * xterm.c (x_new_font): Optimize for the case that the font is
12832 already set for the frame.
12833
128342008-02-01 Kenichi Handa <handa@m17n.org>
12835
12836 * chartab.c (char_table_ascii): Check if the char table contents
12837 is sub-char-table or not.
12838 (char_table_set, char_table_set_range): Fix argument to
12839 char_table_ascii.
12840
12841 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
12842 (detect_coding_utf_8, detect_coding_utf_16)
12843 (detect_coding_emacs_mule, detect_coding_iso_2022)
12844 (detect_coding_sjis, detect_coding_big5)
12845 (detect_coding_ccl, detect_coding_charset): Change argument MASK
12846 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
12847 sequence is valid in this coding system. Change callers.
12848 (MAX_ANNOTATION_LENGTH): New macro.
12849 (ADD_ANNOTATION_DATA): New macro.
12850 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
12851 ADD_ANNOTATION_DATA. Change the format of annotation data.
12852 (ADD_CHARSET_DATA): New macro.
12853 (emacs_mule_char): New argument ID. Change callers.
12854 (decode_coding_emacs_mule, decode_coding_iso_2022)
12855 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
12856 Produce charset annotation data in coding->charbuf.
12857 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
12858 to charset annotation data in coding->charbuf.
12859 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
12860 coding->common_flags if the coding system is iso-2022 based and
12861 uses designation.
12862 (produce_composition): Adjust for the new annotation data format.
12863 (produce_charset): New function.
12864 (produce_annotation): Handle charset annotation.
12865 (handle_composition_annotation, handle_charset_annotation): New
12866 functions.
12867 (consume_chars): Handle charset annotation. Utilize the above two
12868 functions.
12869 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
12870 buffer, get the deleted text as a string and set
12871 coding->src_object to that string.
12872 (detect_coding, detect_coding_system): Use the new struct
12873 coding_detection_info.
12874
12875 * coding.h (struct coding_detection_info): New structure.
12876 (struct coding_system): Adjust prototype of the member `detector'.
12877 (CODING_ANNOTATE_CHARSET_MASK): New macro.
12878
128792008-02-01 Kenichi Handa <handa@m17n.org>
12880
12881 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
12882
128832008-02-01 Dave Love <fx@gnu.org>
12884
12885 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
12886 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
12887 to new local and nullify apropos_accumulate before returning.
12888 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
12889
128902008-02-01 Kenichi Handa <handa@m17n.org>
12891
12892 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
12893 correctly.
e3eea1fc 12894
aac0c6e3
MR
128952008-02-01 Dave Love <fx@gnu.org>
12896
12897 * fns.c (Flanginfo): Call synchronize_system_time_locale.
12898
128992008-02-01 Kenichi Handa <handa@m17n.org>
12900
12901 The following changes are to make character composition happen
12902 automatically on displaying.
12903
12904 * Makefile.in (lisp, shortlisp): Add composite.elc.
12905
12906 * composite.h (Qauto_composed, Vauto_composition_function)
12907 (Qauto_composition_function): Extern them.
12908
12909 * composite.c (Vcomposition_function_table)
12910 (Qcomposition_function_table): Delete variables.
12911 (Qauto_composed, Vauto_composition_function)
12912 (Qauto_composition_function): New variables.
12913 (run_composition_function): Don't call
12914 compose-chars-after-function.
12915 (update_compositions): Clear `auto-composed' text property.
12916 (compose_chars_in_text): Delete this function.
12917 (syms_of_composite): Staticpro Qauto_composed and
12918 Qauto_composition_function. Declare Vauto_composition_function as
12919 a Lisp variable.
12920
12921 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
12922
12923 * xdisp.c (it_props): Add an entry for Qauto_composed.
12924 (handle_auto_composed_prop): New function.
12925
12926 * xselect.c (selection_data_to_lisp_data): Don't call
12927 compose_chars_in_text.
12928
129292008-02-01 Dave Love <fx@gnu.org>
12930
12931 * keyboard.c (read_char): Modify checking around use of
12932 Vkeyboard_translate_table.
12933
12934 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12935 and fix C types.
12936
129372008-02-01 Kenichi Handa <handa@m17n.org>
12938
12939 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
12940 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
12941 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
12942 the case that the last byte is '\r' correctly.
12943 (decode_coding): Flush out the unprocessed data correctly.
12944 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
12945
129462008-02-01 Dave Love <fx@gnu.org>
12947
12948 * xterm.c (XTread_socket): Fix changes for defined keysyms.
12949 Add XK_ISO... case.
12950 (xaw_scroll_callback): Revert last change.
12951
129522008-02-01 Kenichi Handa <handa@m17n.org>
12953
12954 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
12955
129562008-02-01 Kenichi Handa <handa@m17n.org>
12957
12958 * xfaces.c (Vface_resizing_fonts): New variable.
12959 (struct font_name): New member `resizing_ratio'.
12960 (font_resizing_ratio): New function.
12961 (split_font_name): Set font->resizing_ratio.
12962 (better_font_p): Pay attention to font->resizing_ratio.
12963 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
12964 RESX, and RESY fields.
12965 (try_alternative_families): Try scalable fonts if
12966 Vscalable_fonts_allowed is not Qt.
12967 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
12968
129692008-02-01 Dave Love <fx@gnu.org>
12970
12971 * xterm.c (xaw_scroll_callback): Cast correctly.
12972
129732008-02-01 Dave Love <fx@gnu.org>
12974
12975 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
12976 (lispy_kana_keys): Comment out.
12977 (make_lispy_event) [XK_kana_A]: Comment out.
12978
12979 * xterm.c (xaw_scroll_callback): Cast call_data.
12980 (XTread_socket): Deal with ASCII keysyms.
12981 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
12982
129832008-02-01 Dave Love <fx@gnu.org>
12984
12985 * xterm.c (Vx_keysym_table): New.
12986 (syms_of_xterm): Initialize it.
12987 (XTread_socket): Use it.
12988 From head: Eliminate incorrect optimization that tried to avoid
12989 decoding the output of X*LookupString.
12990 (x_get_font_repertory): Delete charset declaration.
12991
129922008-02-01 Kenichi Handa <handa@m17n.org>
12993
12994 * coding.c (detect_coding_charset): If only ASCII bytes are found,
12995 return 0.
12996 (Fdefine_coding_system_internal): Setup
12997 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
12998
129992008-02-01 Dave Love <fx@gnu.org>
13000
13001 * coding.c (Fcheck_coding_system): Doc fix.
13002
13003 * editfns.c (Finsert_byte): Return a proper value.
13004
130052008-02-01 Kenichi Handa <handa@m17n.org>
13006
13007 * coding.c (decode_coding): Fix args to translate_chars. Pay
13008 attention to Vstandard_translation_table_for_decode.
13009 (encode_coding): Fix args to translate_chars. Pay attention to
13010 Vstandard_translation_table_for_encode.
13011
13012 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
13013 SINGLE_BYTE_CHAR_P.
13014
13015 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
13016 not by SINGLE_BYTE_CHAR_P.
13017
13018 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
13019 SINGLE_BYTE_CHAR_P.
13020
13021 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
13022 SINGLE_BYTE_CHAR_P.
13023
13024 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
13025 by SINGLE_BYTE_CHAR_P.
13026
13027 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
13028 SINGLE_BYTE_CHAR_P.
13029
130302008-02-01 Dave Love <fx@gnu.org>
13031
13032 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
13033
130342008-02-01 Dave Love <fx@gnu.org>
13035
13036 * fns.c (Flanginfo): Fix typo.
13037
13038 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
13039
130402008-02-01 Kenichi Handa <handa@m17n.org>
13041
13042 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
13043 (detect_coding_emacs_mule, detect_coding_iso_2022)
13044 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
13045 incomplete byte sequence. Don't update *mask when correctly detected.
13046 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
13047 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
13048 (detect_coding, detect_coding_system): Adjust for the changes above.
13049
130502008-02-01 Kenichi Handa <handa@m17n.org>
13051
13052 * character.c (char_string): Rename from
13053 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
13054 (string_char): Rename from string_char.
13055
13056 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
13057 if C is greater than MAX_3_BYTE_CHAR.
13058 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
13059 string_char instead of string_char_with_unification.
13060
130612008-02-01 Dave Love <fx@gnu.org>
13062
13063 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
13064
130652008-02-01 Kenichi Handa <handa@m17n.org>
13066
13067 * keymap.c (push_key_description): Pay attention to force_multibyte.
13068
13069 * regex.c (re_search_2): Fix for the case of unibyte buffer.
13070
130712008-02-01 Dave Love <fx@gnu.org>
13072
13073 * charset.c (define_charset_internal): Rename `supprementary'.
13074
13075 * Makefile.in (lisp, shortlisp): Remove latin-N.
13076
130772008-02-01 Dave Love <fx@gnu.org>
13078
13079 * xfns.c (x_window, x_window): Use use_xim.
13080
13081 * xterm.c (use_xim): Initialize.
13082 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
13083 (x_term_init): Maybe set use_xim.
13084
13085 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
13086
130872008-02-01 Kenichi Handa <handa@m17n.org>
13088
13089 * search.c (search_buffer): Fix case-fold-search of multibyte
13090 characters.
13091 (boyer_moore): Rename the last argument to char_high_bits.
13092
130932008-02-01 Kenichi Handa <handa@m17n.org>
13094
13095 * xdisp.c (display_string): Fix for the case of zero width glyph.
13096
13097 * xfns.c (x_set_font): Change the error message of the case that
13098 x_new_fontset returns Qt.
13099
13100 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
13101 (Finternal_set_lisp_face_attribute): Use signal_error for the
13102 error of invalid fontset.
13103
13104 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
13105 fontset, return Qt.
13106
131072008-02-01 Dave Love <fx@gnu.org>
13108
13109 * unexelf.c (unexec): Make .got handling not SGI-specific.
13110
13111 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
13112
13113 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
13114
13115 * keyboard.c (read_key_sequence): Fix type error.
13116
13117 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
13118 type error.
13119
13120 * fontset.c (fontset_add): Return Lisp_Object.
13121
131222008-02-01 Dave Love <fx@gnu.org>
13123
13124 * charset.h (charset_ordered_list_tick): Declare extern.
13125
131262008-02-01 Kenichi Handa <handa@m17n.org>
13127
13128 The following changes (and some of 2008-02-01 changes of mine) are
13129 for handling syntax, category, and case conversion for unibyte
13130 characters by converting them to multibyte on the fly. With these
13131 changes, we don't have to setup syntax and case tables for unibyte
13132 characters in each language environment.
13133
13134 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
13135 multibyte if necessary.
13136
13137 * bytecode.c (Fbyte_code): Likewise.
13138
13139 * character.h (LEADING_CODE_LATIN_1_MIN)
13140 (LEADING_CODE_LATIN_1_MAX): New macros.
13141 (unibyte_to_multibyte_table): Extern it.
13142 (unibyte_char_to_multibyte): New macro.
13143 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
13144 (CHAR_LEADING_CODE): New macro.
13145 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
13146
13147 * character.c (unibyte_to_multibyte_table): New variable.
13148 (unibyte_char_to_multibyte): Move to character.h and define as macro.
13149 (multibyte_char_to_unibyte): If C is an eight-bit character,
13150 convert it to the corresponding byte value.
13151
13152 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
13153 not 1, signals an error. Update the elements of
13154 unibyte_to_multibyte_table.
13155 (init_charset_once): Initialize unibyte_to_multibyte_table.
13156 (syms_of_charset): Define the charset `iso-8859-1'.
13157
13158 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
13159 as is without converting it to unibyte. In a unibyte buffer,
13160 convert C to multibyte before checking the syntax.
13161
13162 * lisp.h (unibyte_char_to_multibyte): Delete extern.
13163
13164 * minibuf.c (Fminibuffer_complete_word): Use the macro
13165 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
13166
13167 * regex.h (struct re_pattern_buffer): New member target_multibyte.
13168
13169 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
13170 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
13171 that is zero, convert an eight-bit char to multibyte.
13172 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
13173 non-emacs case.
13174 (PATFETCH): Convert an eight-bit char to multibyte.
13175 (HANDLE_UNIBYTE_RANGE): New macro.
13176 (regex_compile): Setup the compiled pattern for multibyte chars
13177 even if the given regex string is unibyte. Use PATFETCH_RAW
13178 instead of PATFETCH in many places. To handle `charset'
13179 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
13180 only for ASCII chars.
13181 (analyse_first) <exactn>: Simplify because the compiled pattern
13182 is multibyte.
13183 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
13184 <charset>: Use CHAR_LEADING_CODE to get leading codes.
13185 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
13186 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
13187 multibyte always 1.
13188 (re_search_2): In emacs, set the locale variable multibyte to 1,
13189 otherwise to 0. New local variable target_multibyte. Check it
13190 to decide the multibyteness of STR1 and STR2. If
13191 target_multibyte is zero, convert unibyte chars to multibyte
13192 before translating and checking fastmap.
13193 (TARGET_CHAR_AND_LENGTH): New macro.
13194 (re_match_2_internal): In emacs, set the locale variable multibyte
13195 to 1, otherwise to 0. New local variable target_multibyte. Check
13196 it to decide the multibyteness of STR1 and STR2. Use
13197 TARGET_CHAR_AND_LENGTH to fetch a character from D.
13198 <charset, charset_not>: If multibyte is nonzero, check fastmap
13199 only for ASCII chars. Call bcmp_translate with
13200 target_multibyte, not with multibyte.
13201 <begline>: Declare the local variable C as `unsigned'.
13202 (bcmp_translate): Change the last arg name to target_multibyte.
13203
13204 * search.c (compile_pattern_1): Don't adjust the multibyteness of
13205 the regexp pattern and the matching target. Set cp->buf.multibyte
13206 to the multibyteness of the regexp pattern. Set
13207 cp->but.target_multibyte to the multibyteness of the matching target.
13208 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
13209 FETCH_STRING_CHAR_ADVANCE.
13210 (Freplace_match): Convert unibyte chars to multibyte.
13211
13212 * syntax.c (char_quoted, back_comment, scan_words)
13213 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
13214 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
13215 unibyte chars to multibyte.
13216 (skip_chars): Delete the arg syntaxp, and move the code for
13217 handling syntaxes to skip_syntaxes. Change callers.
13218 Fix the case that the multibyteness of STRING and the current
13219 buffer doesn't match.
13220 (skip_syntaxes): New function.
13221 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
13222 SINGLE_BYTE_CHAR_P.
13223
132242008-02-01 Kenichi Handa <handa@m17n.org>
13225
13226 * xfaces.c (QCfontset): New variable.
13227 (LFACE_FONTSET): New macro.
13228 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
13229 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
13230 (Finternal_set_lisp_face_attribute)
13231 (Finternal_get_lisp_face_attribute): Handle QCfontset.
13232 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
13233 check also LFACE_FONTSET_INDEX.
13234 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
13235 attrs[LFACE_FONT_INDEX].
13236 (syms_of_xfaces): Intern and staticpro QCfontset.
13237
13238 * dispextern.h (enum lface_attribute_index): New member
13239 LFACE_FONTSET_INDEX.
13240
13241 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
13242
132432008-02-01 Kenichi Handa <handa@m17n.org>
13244
13245 * coding.c (coding_set_destination): Fix coding->destination for
13246 the case converting a region.
13247 (encode_coding_utf_8): Encode eight-bit chars as single byte.
13248 (encode_coding_object): Fix coding->dst_pos and
13249 coding->dst_pos_byte for the case converting a region.
13250
13251 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
13252
13253 * character.h (BYTE8_STRING): New macro.
13254
13255 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
13256
132572008-02-01 Kenichi Handa <handa@m17n.org>
13258
13259 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
13260 characters by octal form.
13261
13262 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
13263
13264 * buffer.h (_fetch_multibyte_char_len): Delete extern.
13265 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
13266 _fetch_multibyte_char_len.
13267 (FETCH_CHAR_AS_MULTIBYTE): New macro.
13268
13269 * casetab.c (set_canon, set_identity, shuffle): Simplify.
13270
13271 * casefiddle.c (casify_object): Simplify. Handle the case that
13272 the case conversion change the byte length.
13273 (casify_region): Likewise.
13274
13275 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
13276
13277 * character.c (_fetch_multibyte_char_len): Delete this variable.
13278 (syms_of_character): Setup Vprintable_chars.
13279
13280 * editfns.c (Fchar_equal): Fix for the unibyte case.
13281 (Finsert_byte): New function.
13282 (syms_of_editfns): Defsubr it.
13283
13284 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
13285 of direct code 0x3ffff.
13286
13287 * search.c (Freplace_match): Fix for the unibyte case.
13288
132892008-02-01 Kenichi Handa <handa@m17n.org>
13290
13291 * lread.c (safe_to_load_p): Fix the logic.
13292
13293 * syntax.c (scan_words): Don't treat characters belonging to
13294 different scripts as constituting a word.
13295
13296 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13297
13298 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
13299
13300 * emacs.c (main): In the case of --unibyte, instead of aborting on
13301 finding non-empty buffer, make it unibyte.
13302
133032008-02-01 Kenichi Handa <handa@m17n.org>
13304
13305 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
13306 to create a fontset.
13307
133082008-02-01 Dave Love <fx@gnu.org>
13309
13310 * character.c (Funibyte_char_to_multibyte): Doc fix.
13311
13312 * xfns.c [HAVE_STDLIB_H]: Fix last change.
13313
133142008-02-01 Kenichi Handa <handa@m17n.org>
13315
13316 * fontset.c (fontset_add): Make the type `int'.
13317 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
13318
13319 * character.c (unibyte_char_to_multibyte)
13320 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
13321 charset_unibyte, not charset_primary.
13322
13323 * charset.h (charset_unibyte): Extern it instead of charset_primary.
13324
13325 * charset.c (charset_unibyte): Rename from charset_primary.
13326 (Funibyte_charset): Rename from Fprimary_charset.
13327 (Fset_unibyte_charset): Rename from Fset_primary_charset.
13328 (syms_of_charset): Adjust for the above changes.
13329
13330 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
13331 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
13332 it->multibyte_p is zero.
13333
13334 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
13335 Delete extern.
13336
133372008-02-01 Kenichi Handa <handa@m17n.org>
13338
13339 * coding.c (Fdefine_coding_system_internal): Fix category setting
13340 for a coding system of type iso-2022.
13341
133422008-02-01 Kenichi Handa <handa@m17n.org>
13343
13344 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
13345
133462008-02-01 Kenichi Handa <handa@m17n.org>
13347
13348 * syntax.c (Vnext_word_boundary_function_table): New variable.
13349 (next-word-boundary-function-table): Declare it as a Lisp variable
13350 in syms_of_syntax.
13351 (scan_words): Call functions in Vnext_word_boundary_function_table
13352 if any.
13353
13354 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
13355
13356 * fontset.c (fs_load_font): If fontp->charset is not negative,
13357 return fontp without setting its members.
13358
133592008-02-01 Dave Love <fx@gnu.org>
13360
13361 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
13362
13363 * m/sparc.h (HAVE_ALLOCA): Delete.
13364
13365 * s/irix6-5.h: Don't include strings.h.
13366 (bcopy, bzero, bcmp): Don't undef.
13367
13368 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
13369
13370 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
13371 (TIOCSIGSEND): Don't test IRIX6.
13372 (bcopy, bzero, bcmp): Define conditionally.
13373
133742008-02-01 Kenichi Handa <handa@m17n.org>
13375
13376 * buffer.c (Qas, Qmake, Qto): New variables.
13377 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
13378 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
13379
13380 * callproc.c (Fcall_process): Don't call insert_1_both directly if
13381 we are inserting a process output into a multibyte buffer.
13382
13383 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
13384 multibyte_char_to_unibyte.
13385
13386 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
13387 by the primary charset, make it eight-bit char.
13388 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
13389
13390 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
13391 (charset_8_bit__control, charset_8_bit_graphic)
13392 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
13393 (define_charset_internal): New function.
13394 (syms_of_charset): Call define_charset_internal for pre-defined
13395 charsets.
13396
13397 * charset.h (charset_8_bit): Extern it.
13398
13399 * coding.c (make_conversion_work_buffer): Adjust for the change
13400 of Fset_buffer_multibyte.
13401 (encode_coding_raw_text): Increment p0 in the loop.
13402
13403 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
13404
13405 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
13406 for the change of Fset_buffer_multibyte.
13407
13408 * fns.c (Fstring_to_multibyte): New function.
13409 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
13410
134112008-02-01 Dave Love <fx@gnu.org>
13412
13413 * xfns.c (x_put_x_image): Declare args.
13414
13415 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
13416 (try_font_list): Declare an arg.
13417
13418 * xdisp.c (message2_nolog, set_message): Declare an arg.
13419
13420 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
13421
13422 * syntax.c (scan_sexps_forward): Declare an arg.
13423
13424 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
13425 Declare an arg.
13426
13427 * lisp.h (Fnew_fontset): Declare.
13428
13429 * keymap.c (push_key_description): Call CHARACTERP correctly.
13430
13431 * fontset.c (fontset_add): Declare args. Call make_number correctly.
13432 (face_for_char): Delete unused vars.
13433 (Fset_fontset_font): Doc fix. Delete unused vars.
13434
13435 * doc.c (Fsubstitute_command_keys): Delete unused vars.
13436
13437 * composite.c (update_compositions): Declare arg.
13438
13439 * cm.c (calccost, cmgoto): Declare args.
13440
13441 * charset.c: Remove `emacs' conditional. Doc fixes.
13442 (map_char_table_for_charset): Declare.
13443
13444 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
13445
13446 * ccl.c: Remove `emacs' conditional.
13447
134482008-02-01 Kenichi Handa <handa@m17n.org>
13449
13450 The following changes are to allow specifying multiple font
13451 patterns for a character range (specified by script or charset).
13452
13453 * Makefile.in (abbrev.o): Depend on syntax.h.
13454 (xfaces.o): Depend on charset.h.
13455
13456 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
13457 SINGLE_BYTE_CHAR_P.
13458
13459 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
13460
13461 * character.h (Vchar_script_table): Extern it.
13462
13463 * character.c (Vscript_alist): Delete.
13464 (Vchar_script_table, Qchar_script_table): New variable.
13465 (syms_of_character): Declare Vchar_script_table as a lisp variable
13466 and initialize it.
13467
13468 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
13469 have property char-table-extra-slots, make no extra slot.
13470
13471 * dispextern.h (struct face): Delete member `charset'.
13472 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
13473 SINGLE_BYTE_CHAR_P.
13474 (choose_face_font, lookup_non_ascii_face, font_name_registry):
13475 Add prototypes.
13476 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
13477 (generate_ascii_font_name): Rename from generate_ascii_font.
13478
13479 * fontset.h (get_font_repertory_func): New prototype.
13480 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
13481 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
13482
13483 * fontset.c (Qprepend, Qappend): New variables.
13484 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
13485 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
13486 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
13487 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
13488 (fontset_ref_and_range, fontset_add, reorder_font_vector)
13489 (load_font_get_repertory): New functions.
13490 (fontset_set): Delete.
13491 (fontset_face): New arg FACE. Return face ID, not face.
13492 Complete re-write to handle new fontset structure. Change caller.
13493 (free_face_fontset): Use ASET istead of AREF (X) = Y.
13494 (face_for_char): Don't call lookup_face.
13495 (make_fontset_for_ascii_face): New arg FACE.
13496 (fs_load_font): New arg CHARSET_ID. Don't check
13497 Vfont_encoding_alist here.
13498 (find_font_encoding): New function.
13499 (list_fontsets): Use STRINGP, not ! NILP.
13500 (accumulate_script_ranges): New function.
13501 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
13502 re-written to handle new fontset structure.
13503 (Ffontset_font): Return a copy of element.
13504 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
13505 docstring of font-encoding-alist.
13506
13507 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
13508 (Fset_fotset_font): Fix arguments to 5.
13509
13510 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
13511
13512 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
13513 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13514 (highlight_trailing_whitespace): Adjust for the change of
13515 lookup_named_face.
13516
13517 * xfaces.c: Include charset.h.
13518 (load_face_font): Delete argument C. Change caller.
13519 (generate_ascii_font_name): Rename from generate_ascii_font.
13520 (font_name_registry): New function.
13521 (cache_face): Store ascii faces before non-ascii faces in buckets.
13522 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
13523 Lookup only ascii faces.
13524 (lookup_non_ascii_face): New function.
13525 (lookup_named_face): Delete argument C. Change caller.
13526 (lookup_derived_face): Delete argument C. Change caller.
13527 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
13528 a string, just call font_list with it.
13529 (choose_face_font): Delete arguments FACE and C. New arg
13530 FONT_SPEC. Change caller.
13531 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
13532 Change caller.
13533 (realize_non_ascii_face): New function.
13534 (realize_x_face): Call load_face_font here.
13535 (realize_tty_face): Delete argument C. Change caller.
13536 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
13537 get a face ID.
13538 (dump_realized_face): Don't print charset of FACE.
13539
13540 * xfns.c (x_set_font): Always call x_new_fontset and
13541 store_frame_parameter.
13542 (Fx_create_frame): Call x_new_fontset, not x_new_font.
13543 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
13544
13545 * xterm.h (x_get_font_repertory): Extern it.
13546
13547 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
13548 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
13549 it->multibyte_p is zero.
13550 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13551 (x_new_fontset): If FONTSETNAME doesn't match any existing
13552 fontsets, create a new one.
13553 (x_get_font_repertory): New function.
13554
135552008-02-01 Kenichi Handa <handa@m17n.org>
13556
13557 * coding.c (Ffind_coding_systems_region_internal): Detect an
13558 ASCII only string correctly.
13559
13560 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
13561 version is 0.
13562
135632008-02-01 Kenichi Handa <handa@m17n.org>
13564
13565 * lread.c: Include "coding.h".
13566 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
13567 (load_each_byte, unread_char): New variables.
13568 (readchar_backlog): Delete.
13569 (readchar): Return a character unless load_each_byte is nonzero.
13570 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
13571 cons. If unread_char is not -1, simply return it.
13572 (unreadchar): Handle the case that readcharfun is
13573 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
13574 (read_multibyte): Delete.
13575 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
13576 (read_emacs_mule_char): New functions.
13577 (Fload): Even if the file doesn't have the extension ".elc", if
13578 safe_to_load_p returns a positive version number, assume that the
13579 file contains bytecompiled code. If the version is less than 22,
13580 load the file while decoding multibyte sequences by emacs-mule.
13581 (readevalloop): Don't use readchar_backlog.
13582 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
13583 (Fread_from_string): Pay attention to the case that STREAM is a cons.
13584 (read_escape): Delete the arg BYTEREP.
13585 (read1): Set load_each_byte to 1 temporarily while handling
13586 #@NUMBER. Don't call read_multibyte.
13587 (read_vector): Call Fread with a cons. If readcharfun is
13588 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
13589 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
13590 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
13591 and Qload_force_doc_strings.
13592
135932008-02-01 Kenichi Handa <handa@m17n.org>
13594
13595 * xdisp.c (face_before_or_after_it_pos): Call
13596 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
13597
135982008-02-01 Kenichi Handa <handa@m17n.org>
13599
13600 * character.h (TRAILING_CODE_P): New macro.
13601 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
13602 (string_char_with_unification): Fix prototype.
13603 (Vscript_alist): Extern it.
13604
13605 * character.c (Vscript_alist): New variable.
13606 (string_char_with_unification, str_as_unibyte)
13607 (string_escape_byte8): Add `const' to local variables.
13608 (syms_of_character): Declare script-alist as a Lisp variable.
13609
13610 * charset.h (Vcharset_ordered_list): Extern it.
13611 (charset_ordered_list_tick): Extern it.
13612 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
13613 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
13614 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
13615 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
13616 (Funify_charset): Adjust for the change of Funify_charset.
13617
13618 * charset.c (charset_ordered_list_tick): New variable.
13619 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
13620 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
13621 deunify intead of unify a charset.
13622 (string_xstring_p): Add `const' to local variables.
13623 (find_charsets_in_text): Add `const' to arguments and local variables.
13624 (encode_char): Adjust for the change of Funify_charset. Fix
13625 detecting of invalid code.
13626 (Fset_charset_priority): Increment charset_ordered_list_tick.
13627 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
13628 and TO_CODE.
13629
13630 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
13631 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
13632 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
13633 (decode_coding_ccl, consume_chars)
13634 (Ffind_coding_systems_region_internal)
13635 (Fcheck_coding_systems_region): Add `const' to local variables.
13636
13637 * print.c (print_object): Use octal form for printing the
13638 contents of a bool vector.
13639
136402008-02-01 Dave Love <fx@gnu.org>
13641
13642 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
13643 <version == 20>: Refuse to load.
13644
136452008-02-01 Dave Love <fx@gnu.org>
13646
13647 * fns.c: Move coding.h.
13648 (Qcodeset, Qdays, Qmonths): New.
13649 (concat): Use CHARACTERP instead of INTEGERP.
13650 (Flocale_codeset): Delete.
13651 (Flanginfo): New function.
13652 (syms_of_fns): Change accordingly.
13653
13654 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
13655
136562008-02-01 Dave Love <fx@gnu.org>
13657
13658 * casetab.c (init_casetab_once, init_casetab_once): Fix
13659 CHAR_TABLE_SET call.
13660
13661 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
13662
13663 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
13664
13665 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
13666 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
13667 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
13668
13669 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
13670
13671 * coding.c (ENCODE_DESIGNATION, decode_eol)
13672 (make_conversion_work_buffer, code_conversion_restore)
13673 (Fdefine_coding_system_internal): Convert Lisp types.
13674 (code_conversion_restore): Use EQ, not ==.
13675 (Fencode_coding_string): Fix code_convert_string call.
13676
13677 * coding.h (code_convert_region): Fix prototype.
13678
13679 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
13680
13681 * fontset.c (fontset_ref, fontset_set, fs_load_font)
13682 (Ffontset_info): Convert Lisp types.
13683
13684 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
13685
13686 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
13687
13688 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
13689
13690 * chartab.c: Include "...h", not <...h> in some cases.
13691
13692 * callproc.c (Fcall_process): Remove unused variables.
13693
136942008-02-01 Dave Love <fx@gnu.org>
13695
13696 * coding.c (Fset_coding_system_priority): Allow null arg list.
13697
136982008-02-01 Dave Love <fx@gnu.org>
13699
13700 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
13701 (Fself_insert_and_exit): Use CHARACTERP.
13702
13703 * callproc.c (Fcall_process): Remove unused vars.
13704
13705 * xterm.c (XTread_socket): Add extra dead keysyms.
13706
13707 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
13708
13709 * dispextern.h: Remove prototypes for redraw_frame,
13710 redraw_garbaged_frames.
13711
13712 * cmds.c (Fself_insert_command): Use CHARACTERP.
13713
13714 * chartab.c (make_sub_char_table): Remove unused var.
13715 (Fset_char_table_default, Fmap_char_table): Doc fix.
13716
13717 * keymap.c (access_keymap): Remove generic char code.
13718 (push_key_description): Use CHARACTERP.
13719
137202008-02-01 Dave Love <fx@gnu.org>
13721
13722 * charset.c: Doc fixes.
13723 (Funify_charset): Extra checking.
13724
137252008-02-01 Dave Love <fx@gnu.org>
13726
13727 * lread.c: Remove some unused variables.
13728 (safe_to_load_p): If safe, return the magic number version byte.
13729 (Fload): Maybe use load-with-code-conversion.
13730
137312008-02-01 Kenichi Handa <handa@m17n.org>
13732
13733 * category.c (Fmodify_category_entry): Don't modify the contents
13734 of category_set for characters out of the range. Avoid
13735 unnecessary modification.
13736
13737 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
13738 Vchar_unify_table. The default value of the table is now nil.
13739
13740 * character.c (syms_of_character): Setup Vchar_width_table for
13741 eight-bit-control and raw-byte chars.
13742
13743 * charset.h (enum define_charset_arg_index): Delete
13744 charset_arg_parents and add charset_arg_subset and
13745 charset_arg_superset.
13746 (enum charset_attr_index): Delete charset_parents and add
13747 charset_subset and charset_superset.
13748 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
13749 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
13750 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
13751 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
13752 (CHARSET_SUPERSET): New macros.
13753 (charset_work): Extern it.
13754 (ENCODE_CHAR): Use charset_work.
13755 (CHAR_CHARSET_P): Adjust for the change of encoder format.
13756 (map_charset_chars): Extern it.
13757
13758 * charset.c (load_charset_map): Set the default value of encoder
13759 and deunifier char-tables to nil.
13760 (map_charset_chars): Change argument. Change callers. Use
13761 map_char_table_for_charset instead of map_char_table.
13762 (Fmap_charset_chars): New optional args from_code and to_code.
13763 (Fdefine_charset_internal): Adjust for the change of
13764 `define-charset' (:parents -> :subset or :superset).
13765 (charset_work): New variable.
13766 (encode_char, syms_of_charset): Adjust for the change of
13767 Fdefine_charset_internal.
13768 (Ffind_charset_string): Setup the vector `charsets' correctly.
13769
13770 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
13771 the previous change.
13772 (char_table_ref_and_range): Adjust for the above change.
13773 (map_sub_char_table_for_charset): New function.
13774 (map_char_table_for_charset): New function.
13775
13776 * keymap.c (describe_vector): Handle a char-table directly here.
13777 (describe_char_table): Delete.
13778
13779 * lisp.h (map_charset_chars): Delete.
13780
137812008-02-01 Dave Love <fx@gnu.org>
13782
13783 * fns.c (count_combining): Comment out (unused).
13784 (Flocale_codeset): New.
13785 (syms_of_fns): Defsubr it.
13786
13787 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
13788 (size_t): Remove.
13789
137902008-02-01 Dave Love <fx@gnu.org>
13791
13792 * Makefile.in (chartab.o): Depend on charset.h.
13793
137942008-02-01 Kenichi Handa <handa@m17n.org>
13795
13796 * character.c (syms_of_character): Set the default value of
13797 Vprintable_chars to Qnil.
13798
137992008-02-01 Dave Love <fx@gnu.org>
13800
13801 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
13802
138032008-02-01 Kenichi Handa <handa@m17n.org>
13804
13805 * charset.c (load_charset_map): Handle the case that from < to
13806 correctly.
13807
13808 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
13809 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
13810 Pay attention to raw-8-bit chars.
13811
138122008-02-01 Kenichi Handa <handa@m17n.org>
13813
13814 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
13815 It is not bytecompiled now.
13816
13817 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
13818 (charset_jisx0208): New variables.
13819 (Fdefine_charset_internal): Setup them if appropriate.
13820 (init_charset_once): Initialize them to -1.
13821
13822 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
13823 (charset_jisx0208): Extern them.
13824
13825 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
13826 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
13827 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
13828 (setup_iso_safe_charsets): Fix arguments to Fassq.
13829 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
13830 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
13831 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
13832 (encode_coding_iso_2022): Change the 1st arg to
13833 ENCODE_ISO_CHARACTER to a variable.
13834
138352008-02-01 Kenichi Handa <handa@m17n.org>
13836
13837 * charset.h (enum define_charset_arg_index): New enums
13838 charset_arg_min_code and charset_arg_max_code.
13839 (struct charset): New member char_index_offset.
13840
13841 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
13842 Take charset->char_index_offset into account.
13843 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
13844 args[charset_arg_max_code]. Setup charset.char_index_offset.
13845 (syms_of_charset): Fix args to Fdefine_charset_internal.
13846
138472008-02-01 Dave Love <fx@gnu.org>
13848
13849 * coding.c (decode_coding_utf_8): Reject overlong sequences.
13850
138512008-02-01 Dave Love <fx@gnu.org>
13852
13853 * coding.c: Doc fixes.
13854 (Fcoding_system_aliases): Fix return value.
13855 (Qmac): Remove (duplicated) definition.
13856
138572008-02-01 Dave Love <fx@gnu.org>
13858
13859 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
13860 functions.
13861
13862 * character.c (Fstring): Doc fix.
13863
13864 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
13865
13866 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
13867 ids.
13868 (font-encoding-alist): Doc fix.
13869
138702008-02-01 Dave Love <fx@gnu.org>
13871
13872 * term.c (costs_set): Declare static, non-initialized for pcc.
13873 (encode_terminal_code): Remove unused var.
13874
13875 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
13876 for K&R.
13877
13878 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
13879
13880 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
13881 (suffixes): Move out of make_subsidiaries for K&R.
13882
13883 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
13884
13885 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
13886
138872008-02-01 Dave Love <fx@gnu.org>
13888
13889 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
13890
13891 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
13892
138932008-02-01 Yong Lu <lyongu@asia-infonet.com>
13894
13895 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
13896
13897 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
13898
138992008-02-01 Kenichi Handa <handa@m17n.org>
13900
13901 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
13902 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
13903
139042008-02-01 Kenichi Handa <handa@m17n.org>
13905
13906 * coding.c (decode_coding_charset): Adjust for the change of
13907 Fdefine_coding_system_internal.
13908 (Fdefine_coding_system_internal): For a coding system of
13909 `charset' type, store a list of charset IDs in
13910 `charset_attr_charset_valids' element of coding attributes.
13911
139122008-02-01 Kenichi Handa <handa@m17n.org>
13913
13914 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
13915 (emacs_mule_char): New arg src. Delete arg `composition'. Change
13916 caller. Handle 2-byte and 3-byte charsets correctly.
13917 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
13918 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
13919 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
13920 (DECODE_EMACS_MULE_21_COMPOSITION): Call
13921 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
13922 sequence.
13923 (decode_coding_emacs_mule): Handle composition correctly. Rewind
13924 `src' and `consumed_chars' correctly before calling emacs_mule_char.
13925 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
13926 and alt&rule composition.
13927 (decode_coding_iso_2022): Handle composition correctly.
13928 (init_coding_once): Setup emacs_mule_bytes for private charsets.
13929
13930 * charset.c (Fdefine_charset_internal): Fix bug for the case of
13931 re-defining a charset. If the charset has :emacs-mule-id, setup
13932 emacs_mule_bytes.
13933 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
13934
139352008-02-01 Kenichi Handa <handa@m17n.org>
13936
13937 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
13938 (encode_coding_big5, encode_coding_charset): If coding requires safe
13939 encoding, produce a character specified by
13940 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
13941
139422008-02-01 Dave Love <fx@gnu.org>
13943
13944 * xterm.c (XSetIMValues): Declare.
13945
13946 * process.c: Conditionally include sys/wait.h, pty.h.
13947
13948 * print.c (print_object): Fix print format for 64-bit systems.
13949
13950 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
13951
13952 * buffer.c (emacs_strerror): Declare.
13953
13954 * fontset.c (Fclear_face_cache): Declare.
13955 (accumulate_font_info): Comment-out (unused).
13956 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
13957 variables.
13958
13959 * character.h (string_escape_byte8): Declare.
13960
13961 * charset.c (load_charset_map, load_charset_map_from_file): Remove
13962 unused vars.
13963 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
13964 (Fmap_charset_chars): Doc fix.
13965
13966 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
13967 (Fset_coding_system_priority, Fset_coding_system_priority)
13968 (Fdefine_coding_system_internal): Doc fix.
13969
139702008-02-01 Dave Love <fx@gnu.org>
13971
13972 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
13973
139742008-02-01 Kenichi Handa <handa@m17n.org>
13975
13976 * character.c (string_escape_byte8): Make multibyte string with
13977 correct size.
13978
13979 * charset.c (Fmake_char): Delete unnecessary code.
13980
139812008-02-01 Kenichi Handa <handa@m17n.org>
13982
13983 * xfns.c (x_encode_text): Allocate coding.destination here, and
13984 call encode_coding_object with dst_object Qnil.
13985
13986 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
13987 multibyte form correctly.
13988
13989 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
13990 against Vfont_encoding_alist.
13991
13992 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
13993 handling of charset list.
13994 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
13995 (decode_coding_object): Move point to coding->dst_pos before
13996 calling post-read-conversion function.
13997 (encode_coding_object): Give correct arguments to
13998 pre-write-conversion. Ignore the return value of
13999 pre-write-conversion function. Pay attention to the case that
14000 pre-write-conversion changes the current buffer. If dst_object is
14001 Qt, even if coding->src_bytes is zero, allocate at least one byte
14002 to coding->destination.
14003
14004 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
14005
14006 * charset.c (Fmake_char): Make it more backward compatible.
14007 (Fmap_charset_chars): Fix docstring.
14008
140092008-02-01 Dave Love <fx@gnu.org>
14010
14011 * coding.c: Doc fixes.
14012 (Fdefine_coding_system_alias): Use names, not symbols, in
14013 coding-system-alist.
14014
140152008-02-01 Kenichi Handa <handa@m17n.org>
14016
14017 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
14018 of calling free_realized_face.
14019
140202008-02-01 Yong Lu <lyongu@asia-infonet.com>
14021
14022 * charset.c (read_hex): Don't treat SPC as a comment starter.
14023 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
14024 (Fdecode_char): Fix typo.
14025
140262008-02-01 Kenichi Handa <handa@m17n.org>
14027
14028 * charset.h (struct charset): New member `code_space_mask'.
14029
14030 * coding.c (coding_set_source): Delete the local variable beg_byte.
14031 (encode_coding_charset, Fdefine_coding_system_internal):
14032 Delete the local variable charset.
14033 (Fdefine_coding_system_internal): Setup
14034 attrs[coding_attr_charset_valids] correctly.
14035
14036 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
14037 member to check if CODE is valid or not.
14038 (Fdefine_charset_internal): Initialize `code_space_mask' member.
14039 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
14040 is within the range of charset->min_code and carset->max_code.
14041
140422008-02-01 Dave Love <fx@gnu.org>
14043
14044 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
14045
14046 * dispextern.h (generate_ascii_font): Fix return type.
14047
14048 * xfaces.c (generate_ascii_font): Fix arg declaration.
14049
14050 * coding.c (coding_inherit_eol_type)
14051 (Fset_terminal_coding_system_internal)
14052 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
14053
140542008-02-01 Kenichi Handa <handa@m17n.org>
14055
14056 * coding.c (decode_coding_charset, encode_coding_charset): Handle
14057 multiple charsets correctly.
14058
140592008-02-01 Kenichi Handa <handa@m17n.org>
14060
14061 * search.c (boyer_moore): Fix handling of multibyte character
14062 translation.
14063
14064 * xdisp.c (display_mode_element): When the variable `elt' is
14065 changed, update `this' and `lisp_string'.
14066
140672008-02-01 Kenichi Handa <handa@m17n.org>
14068
14069 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
14070
14071 * callproc.c (Fcall_process): Be sure to give the current buffer
14072 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
14073
14074 * charset.c (struct charset_map_entries): New struct.
14075 (load_charset_map): Rename from parse_charset_map. New args
14076 entries and n_entries. Change caller.
14077 (load_charset_map_from_file): Rename from load_charset_map.
14078 Change caller. New arg control_flag. Call load_charset_map at
14079 the tail.
14080 (load_charset_map_from_vector): New function.
14081 (Fdefine_charset_internal): Setup charset.compact_codes_p.
14082 (encode_char): If the charset is compact, change a character index
14083 to a code point.
14084
14085 * coding.c (coding_alloc_by_making_gap): Check the case that the
14086 source and destination are the same correctly.
14087 (decode_coding_raw_text): Set coding->consumed_char and
14088 coding->consumed to 0.
14089 (produce_chars): If coding->chars_at_source is nonzero, update
14090 coding->consumed_char and coding->consumed before calling
14091 alloc_destination.
14092 (Fdefine_coding_system_alias): Register ALIAS in
14093 Vcoding_system_alist.
14094 (syms_of_coding): Define `no-conversion' coding system at the tail.
14095
14096 * fileio.c (Finsert_file_contents): Set coding_system instead of
14097 val. If the current buffer is multibyte, always call
14098 decode_coding_gap.
14099
14100 * xfaces.c (try_font_list): Give higher priority to fontset's
14101 family than face's family.
14102
141032008-02-01 Kenichi Handa <handa@m17n.org>
14104
14105 * callproc.c (Fcall_process): Be sure to give the current buffer
14106 to decode_coding_c_string.
14107
14108 * xfaces.c (try_font_list): Give a family specified in a fontset
14109 higher priority than a family specified in a face.
14110
141112008-02-01 Kenichi Handa <handa@m17n.org>
14112
14113 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
14114 Fix arguments to insert_from_buffer.
14115
14116 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
14117
141182008-02-01 Kenichi Handa <handa@m17n.org>
14119
14120 * coding.c (produce_chars): Set the variable `multibytep' correctly.
14121 (decode_coding_gap): Set coding->dst_multibyte correctly.
14122
141232008-02-01 Kenichi Handa <handa@m17n.org>
14124
14125 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
14126 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
14127 (encode_coding_utf_16): Substitute coding->default_char for
14128 non-Unicode characters.
14129 (decode_coding): Don't call record_insert here.
14130 (setup_coding_system): Initialize `surrogate' of
14131 coding->spec.utf_16 to 0.
14132 (EMIT_ONE_BYTE): Fix for multibyte case.
14133
14134 * insdel.c (insert_from_gap): Call record_insert.
14135
141362008-02-01 Kenichi Handa <handa@m17n.org>
14137
14138 * casefiddle.c (casify_region): Fix multibyte case.
14139
14140 * character.c (c_string_width): Add return type `int'.
14141 (char_string_with_unification): Delete arg ADVANCED.
14142
14143 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
14144 (CHAR_STRING): Adjust for the change of char_string_with_unification.
14145 (CHAR_STRING_ADVANCE): Make it do-while statement.
14146
14147 * chartab.c (sub_char_table_set_range): Optimize for the case
14148 DEPTH == 3. Add workaround code for a GCC optimization bug.
14149
14150 * charset.c (parse_charset_map): Remove an unused variable.
14151
14152 * coding.c: Delete unused variables.
14153
14154 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
14155 earlier. If inserted is zero and the coding system doesn't
14156 require flushing, don't call decode_coding_gap.
14157
14158 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
14159
141602008-02-01 Kenichi Handa <handa@m17n.org>
14161
14162 The following changes are for using Unicode as an internal
14163 character model, and use UTF-8 format for buffer/string
14164 representation.
14165
14166 * .gdbinit (xchartable): Adjust for the change of char table structure.
14167 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
14168
14169 * Makefile.in (obj): Add character.o and chartab.o.
14170 (lisp, shortlisp): Remove utf-8.elc.
14171 (*.o): For many files, change dependency on charset.h to
14172 character.h, and add dependency on character.h.
14173 (character.o, chartab.o): New targets.
14174
14175 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
14176 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
14177 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
14178 of "charset.h".
14179
14180 * dired.c, filelock.c: Include "character.h".
14181
14182 * alloc.c: Include "character.h" instead of "charset.h".
14183 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
14184 (syms_of_alloc): Remove defsubr for Smake_char_table.
14185
14186 * buffer.c: Include "character.h" instead of "charset.h", don't
14187 include "coding.h".
14188 (Fset_buffer_multibyte): Adjust for UTF-8.
14189
14190 * buffer.h: EXFUN Fbuffer_live_p.
14191
14192 * callproc.c: Include "character.h" instead of "charset.h".
14193 (Fcall_process): Big change for the new code-conversion APIs.
14194
14195 * casetab.c: Include "character.h" instead of "charset.h".
14196 (set_canon, set_identity, shuffle): Adjust for the new
14197 map_char_table spec.
14198 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
14199 accessing the char table structure.
14200
14201 * chartab.c: New file that implements char table.
14202
14203 * category.c: Include "character.h".
14204 (copy_category_entry): New function.
14205 (copy_category_table): Call map_char_table and copy_category_entry.
14206 (Fmake_category_table): Initialize all top-level slots.
14207 (char_category_set): New function.
14208 (modify_lower_category_set): Delete.
14209 (Fmodify_category_entry): Call char_table_ref_and_range.
14210
14211 * category.h (CATEGORY_SET): Just call char_category_set.
14212
14213 * ccl.c: Include "character.h".
14214 (Qccl, Qcclp): New variables.
14215 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
14216 it's less than 256.
14217 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
14218 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
14219 and DST type.
14220 (ccl_driver): Change types of argument, adjust code accordingly.
14221 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
14222 ccl_driver.
14223 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
14224
14225 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
14226 New members src_multibyte, dst_multibyte, consumed, and produced.
14227 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
14228 (CODING_SPEC_CCL_PROGRAM): New macro.
14229 (ccl_driver): Update prototype.
14230 (Qccl, Qcclp, Fccl_program_p): Extern them.
14231 (CHECK_CCL_PROGRAM): New macro.
14232
14233 * character.c, character.h, chartab.c: New files.
14234
14235 * charset.c: Mostly re-written. Move character and multibyte sequence
14236 handling codes to character.c.
14237
14238 * charset.h: Mostly re-written. Move character and multibyte sequence
14239 handling codes to character.h.
14240
14241 * coding.c, coding.h: Mostly re-written.
14242
14243 * composite.c: Include "character.h" instead of "charset.h".
14244 (CHAR_WIDTH): Move to character.h.
14245 (HASH_KEY, HASH_VALUE): Delete.
14246
14247 * composite.h (enum composition_method): Change order of enumeration
14248 symbols.
14249
14250 * data.c: Include "character.h" instead of "charset.h".
14251 (Faref): Call CHAR_TABLE_REF for a char table.
14252 (Faset): Call CHAR_TABLE_SET for a char table.
14253
14254 * dispextern.h (free_realized_face, check_face_attribytes)
14255 (generate_ascii_font): Extern them.
14256 (free_realized_multibyte_face): Delete extern.
14257
14258 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
14259 table structure.
14260
14261 * editfns.c: Include "character.h" instead of "charset.h".
14262 (Fchar_to_string): Always call CHAR_STRING.
14263
14264 * emacs.c (main): Call init_charset_once, init_charset,
14265 syms_of_chartab, and syms_of_character.
14266
14267 * fileio.c: Include "character.h" instead of "charset.h".
14268 (Finsert_file_contents): Big change for the new code-conversion API.
14269 (choose_write_coding_system, Fwrite_region): Likewise.
14270 (build_annotations_2): Delete.
14271 (e_write): Big change for the new code-conversion API.
14272
14273 * fns.c: Include "character.h" instead of "charset.h".
14274 (copy_sub_char_table): Move to chartab.c.
14275 (Fcopy_sequence): Call copy_char_table for a char table.
14276 (concat): Delete codes calling count_multibyte.
14277 (string_char_to_byte, string_byte_to_char): Adjust for the new
14278 multibyte form.
14279 (internal_equal): Adjust for the change of char table structure.
14280 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
14281 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
14282 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
14283 (char_table_translate, optimize_sub_char_table)
14284 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
14285 chartab.c.
14286 (char_table_ref_and_index): Delete.
14287 (HASH_KEY, HASH_VALUE): Move to lisp.h.
14288 (Fmd5): Call preferred_coding_system instead of accessing
14289 Vcoding_category_list. Adjust for the new code-conversion API.
14290 (syms_of_fns): Move defsubr for char table related functions to
14291 chartab.c.
14292
14293 * fontset.c: Mostly re-written.
14294
14295 * fontset.h (struct font_info): Change type of the member encoding_type.
14296 (enum FONT_SPEC_INDEX): New enum.
14297 (fontset_font_pattern, fs_load_font): Update prototype.
14298 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
14299
14300 * indent.c: Include "character.h" instead of "charset.h".
14301 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
14302
14303 * insdel.c: Include "character.h" instead of "charset.h".
14304 (copy_text): Don't refer to Vnonascii_translation_table.
14305 (insert_from_gap): New function.
14306
14307 * keyboard.c: Include "character.h" instead of "charset.h".
14308 (command_loop_1): Never call direct_output_forward_char before
14309 a non-ASCII character.
14310 (read_char): If Vkeyboard_translate_table is a char table, always
14311 translate a character.
14312
14313 * keymap.c: Include "character.h".
14314 (store_in_keymap): Handle the case that IDX is a cons.
14315 (Fdefine_key): Handle the case that KEY is a cons and the car part
14316 is also a cons (range).
14317 (push_key_description): Adjust for the new character code.
14318 (describe_vector): Call describe_char_table for a char table.
14319 (describe_char_table): New function.
14320
14321 * keymap.h (describe_char_table): Extern it.
14322
14323 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
14324 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
14325 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
14326 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
14327 Delete.
14328 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
14329 structure.
14330 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
14331 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
14332 (CHARTAB_SIZE_BITS_3): New macros.
14333 (chartab_size): Extern it.
14334 (struct Lisp_Char_Table): Re-design.
14335 (struct Lisp_Sub_Char_Table): New structure.
14336 (HASH_KEY, HASH_VALUE): Move from fns.c.
14337 (CHARACTERBITS): Define as 22.
14338 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
14339 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
14340 (GC_SUB_CHAR_TABLE_P): New macro.
14341 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
14342 (code_convert_string_norecord): Deleted extern.
14343 (init_character_once, syms_of_character, init_charset)
14344 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
14345
14346 * lread.c: Include "character.h".
14347 (read_multibyte): New arg NBYTES.
14348 (read_escape): Change the meaning of returned *BYTEREP.
14349 (to_multibyte): Delete.
14350 (read1): Adjust the handling of char table and string.
14351
14352 * print.c: Include "character.h" instead of "charset.h".
14353 (print_string): Convert 8-bit raw bytes to octal form by
14354 string_escape_byte8.
14355 (print_object): Adjust for the new multibyte form. Print 8-bit
14356 raw bytes always in octal form. Handle sub char table correctly.
14357
14358 * process.c: Include "character.h" instead of "charset.h".
14359 (read_process_output, send_process): Adjust for the new
14360 code-conversion API.
14361
14362 * puresize.h (BASE_PURESIZE): Increase.
14363
14364 * regex.c: Include "character.h" instead of "charset.h".
14365 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
14366 (regex_compile): Accept a range whose starting and ending
14367 character have different leading bytes.
14368 (analyse_first): Adjust for the above change.
14369
14370 * search.c: Include "character.h" instead of "charset.h".
14371 (search_buffer, boyer_moore): Adjust for the new multibyte form.
14372 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
14373
14374 * syntax.c: Include "character.h" instead of "charset.h".
14375 (syntax_parent_lookup): Delete.
14376 (Fmodify_syntax_entry): Accept a cons as CHAR.
14377 (skip_chars): Adjust for the new multibyte form.
14378 (init_syntax_once): Call char_table_set_range instead of directly
14379 accessing the structure of a char table.
14380
14381 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
14382 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
14383 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
14384 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
14385
14386 * term.c: Include "buffer.h" and "character.h".
14387 (encode_terminal_code, write_glyphs): Adjust for the new
14388 code-conversion API.
14389 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
14390
14391 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
14392
14393 * xdisp.c: Include "character.h".
14394 (get_next_display_element): Adjust for the new multibyte form.
14395 (disp_char_vector): Adjust for the new char table structure.
14396 (decode_mode_spec_coding): Adjust for the new structure of
14397 coding system.
14398 (decode_mode_spec): Adjust for the new code-conversion API.
14399
14400 * xfaces.c: Include "character.h" instead of "charset.h".
14401 (load_face_font): Adjust for the change of choose_face_font and
14402 FS_LOAD_FONT.
14403 (generate_ascii_font): New function.
14404 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
14405 (set_font_frame_param): Adjust for the change of choose_face_font.
14406 (free_realized_face): Make it public.
14407 (free_realized_faces_for_fontset): Rename from
14408 free_realized_multibyte_face. Free also faces realized for ASCII.
14409 (choose_face_font): Change arguments. Adjust for the change of
14410 fontset_font_pattern and FS_LOAD_FONT.
14411
14412 * xfns.c: Include "character.h".
14413 (x_encode_text): Adjust for the new code-conversion API.
14414
14415 * xselect.c: Don't include "charset.h".
14416 (selection_data_to_lisp_data): Adjust for the new code conversion API.
14417
14418 * xterm.c: Include "character.h".
14419 (x_encode_char): New argument CHARSET. Change caller.
14420 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
14421 Call ENCODE_CHAR instead of SPLIT_CHAR.
14422 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
14423 CHAR_WIDTH instead of CHARSET_WIDTH.
14424 (XTread_socket): Adjust for the new code-conversion API.
14425 (x_new_font): Adjust for the change of FS_LOAD_FONT.
14426 (x_load_font): Adjust for the change of struct font.
14427
144282008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14429
14430 * xfaces.c (face_at_buffer_position): Remove unused vars.
14431
144322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14433
14434 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
14435 Fix overflow checking.
14436
144372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14438
14439 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
14440 Cancel previous change.
14441
144422008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
14443
14444 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
14445 ccl->eight_bit_control. Fix check for buffer overflow.
14446 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
14447 (ccl_driver): Initialize extra_bytes to 0.
14448
144492008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
14450
14451 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
14452 return it ORed with ctrl_modifier.
14453
144542008-01-29 Miles Bader <miles@gnu.org>
14455
14456 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
14457
144582008-01-28 Jason Rumney <jasonr@gnu.org>
14459
14460 * w32.c (stat): Don't double check for networked drive.
14461
144622008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
14463
14464 * window.c (run_window_configuration_change_hook): New function.
14465 Code extracted from set_window_buffer. Set the selected frame.
14466 (set_window_buffer): Use it.
14467 * window.h (run_window_configuration_change_hook): Declare.
14468 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
14469
14470 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
14471
144722008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
14473
14474 * Makefile.in: Remove references to unused macros.
14475
144762008-01-26 Eli Zaretskii <eliz@gnu.org>
14477
14478 * w32.c (g_b_init_get_sid_sub_authority)
14479 (g_b_init_get_sid_sub_authority_count): New static variables.
14480 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
14481 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
14482 (init_user_info): Use them to retrieve uid and gid.
14483 Use 500/513, the Windows defaults, as Administrator's uid/gid.
14484 (fstat): Use pw_uid and pw_gid from the_passwd structure for
14485 st_uid and st_gid of the file.
14486
144872008-01-26 Jason Rumney <jasonr@gnu.org>
14488
14489 * w32.c (logon_network_drive): New function.
14490 (stat): Use it.
14491
144922008-01-26 Chong Yidong <cyd@stupidchicken.com>
14493
14494 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
14495 invisible text covered with an ellipsis.
14496
144972008-01-25 Richard Stallman <rms@gnu.org>
14498
14499 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
14500 jump back to beginning. Move some other initializations after that.
14501 (Qwindow_text_change_functions, Vwindow_text_change_functions):
14502 New variables.
14503 (syms_of_xdisp): Init them.
14504
14505 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
14506
14507 * buffer.c (reset_buffer_local_variables):
14508 Implement `permanent-local-hook'.
14509 (Qpermanent_local_hook): New variable.
14510 (syms_of_buffer): Init and staticpro it.
14511
145122008-01-25 Michael Albinus <michael.albinus@gmx.de>
14513
14514 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
14515
145162008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
14517
14518 * fns.c (Fclrhash): Return TABLE.
14519
145202008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14521
14522 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
14523 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
14524 is set even without positional changes.
14525 (x_scroll_bar_clear): Set bar->redraw_needed_p.
14526
14527 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
14528
145292008-01-23 Jason Rumney <jasonr@gnu.org>
14530
14531 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
14532
14533 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
14534 the unicode range available in MULE by locale-coding-system.
14535 Improve dbcs lead byte detection. Set event timestamp and modifiers
14536 earlier.
14537
145382008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14539
14540 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
14541 [MAC_OSX] (init_mac_osx_environment): Initialize it.
14542 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
14543 when used on child processes.
14544
145452008-01-21 Michael Albinus <michael.albinus@gmx.de>
14546
14547 * dbusbind.c (Fdbus_method_return_internal): Rename from
14548 Fdbus_method_return.
14549 (Fdbus_unregister_object): Move to dbus.el.
14550 (Fdbus_call_method, Fdbus_method_return_internal)
14551 (Fdbus_send_signal): Improve debug messages.
14552
145532008-01-20 Martin Rudalics <rudalics@gmx.at>
14554
14555 * undo.c (undo_inhibit_record_point): New variable.
14556 (syms_of_undo): Initialize it.
14557 (record_point): Don't record point when undo_inhibit_record_point
14558 is set.
14559
145602008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
14561
14562 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
14563
14564 * xdisp.c (Qauto_hscroll_mode): New var.
14565 (syms_of_xdisp): Initialize it.
14566 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
14567 window's buffer.
14568 (hscroll_windows): Don't check automatic_hscrolling_p here.
14569
14570 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
14571 vscroll if we're setting window-buffer to the value it already has.
14572
145732008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
14574
14575 * m/intel386.h: Remove references to XENIX.
14576
145772008-01-17 Andreas Schwab <schwab@suse.de>
14578
14579 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
14580 instead of HAVE_X86_64_LIB64_DIR.
14581 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
14582
145832008-01-17 Glenn Morris <rgm@gnu.org>
14584
14585 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
14586 to HAVE_X86_64_LIB64_DIR.
14587
145882008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
14589
14590 * s/irix3-3.h:
14591 * s/irix4-0.h:
14592 * s/386-ix.h:
14593 * s/domain.h:
14594 * s/hpux9-x11r4.h:
14595 * s/hpux9shxr4.h: Remove files for systems no longer supported.
14596
14597 * sysdep.c: Remove code containing references to symbols defined
14598 by unsupported systems.
14599
146002008-01-16 Glenn Morris <rgm@gnu.org>
14601
14602 * coding.c (select-safe-coding-system-function): Doc fix.
14603
146042008-01-15 Glenn Morris <rgm@gnu.org>
14605
14606 * config.in: Revert 2008-01-13 change: this is a generated file.
14607
146082008-01-13 Tom Tromey <tromey@redhat.com>
14609
14610 * lisp.h: Fix typo.
14611
146122008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
14613
14614 * m/sequent-ptx.h:
14615 * m/sequent.h:
14616 * s/ptx.h:
14617 * s/ptx4-2.h:
14618 * s/ptx4.h: Remove files for systems no longer supported.
14619
14620 * callproc.c (Fcall_process): Fix previous change.
14621
146222008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
14623
14624 * unexsunos4.c: Remove file, system not supported anymore.
14625
14626 * m/mips.h:
14627 * m/intel386.h:
14628 * callproc.c:
14629 * config.in:
14630 * ecrt0.c:
14631 * emacs.c:
14632 * fileio.c:
14633 * frame.c:
14634 * getpagesize.h:
14635 * keyboard.c:
14636 * lread.c:
14637 * process.c:
14638 * puresize.h:
14639 * sysdep.c:
14640 * systty.h:
14641 * syswait.h:
14642 * unexec.c:
14643 * xdisp.c:
14644 * alloc.c: Remove code containing references to symbols defined by
14645 unsupported systems.
14646
146472008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
14648
14649 * coding.c (detect_coding_mask): Fix previous change.
14650
146512008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
14652
14653 * coding.c (detect_coding_iso2022): New arg
14654 latin_extra_code_state. Allow Latin extra codes only
14655 when *latin_extra_code_state is nonzero.
14656 (detect_coding_mask): If there is a NULL byte, detect the encoding
14657 as UTF-16 or binary. If Latin extra codes exist, detect the
14658 encoding as ISO-2022 only when there's no other proper encoding is
14659 found.
14660
146612008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14662
14663 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
14664 #ifdef MAC_OS.
14665
146662008-01-08 Richard Stallman <rms@gnu.org>
14667
14668 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
14669
146702008-01-06 Nick Roberts <nickrob@snap.net.nz>
14671
14672 * keyboard.c (parse_menu_item): Don't enclose key bindings on
14673 menu bar in parentheses.
14674
146752008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
14676
14677 * m/7300.h:
14678 * m/acorn.h:
14679 * m/alliant-2800.h:
14680 * m/alliant.h:
14681 * m/alliant1.h:
14682 * m/alliant4.h:
14683 * m/altos.h:
14684 * m/amdahl.h:
14685 * m/apollo.h:
14686 * m/att3b.h:
14687 * m/aviion-intel.h:
14688 * m/aviion.h:
14689 * m/celerity.h:
14690 * m/clipper.h:
14691 * m/cnvrgnt.h:
14692 * m/convex.h:
14693 * m/cydra5.h:
14694 * m/delta88k.h:
14695 * m/dpx2.h:
14696 * m/dual.h:
14697 * m/elxsi.h:
14698 * m/f301.h:
14699 * m/gould-np1.h:
14700 * m/gould.h:
14701 * m/i860.h:
14702 * m/ibmps2-aix.h:
14703 * m/ibmrt-aix.h:
14704 * m/ibmrt.h:
14705 * m/irist.h:
14706 * m/is386.h:
14707 * m/isi-ov.h:
14708 * m/mega68.h:
14709 * m/mg1.h:
14710 * m/news-r6.h:
14711 * m/news-risc.h:
14712 * m/news.h:
14713 * m/nh3000.h:
14714 * m/nh4000.h:
14715 * m/ns16000.h:
14716 * m/ns32000.h:
14717 * m/nu.h:
14718 * m/orion.h:
14719 * m/orion105.h:
14720 * m/paragon.h:
14721 * m/pfa50.h:
14722 * m/plexus.h:
14723 * m/pyramid.h:
14724 * m/pyrmips.h:
14725 * m/sh3el.h:
14726 * m/sps7.h:
14727 * m/sr2k.h:
14728 * m/stride.h:
14729 * m/sun1.h:
14730 * m/sun2.h:
14731 * m/sun3-68881.h:
14732 * m/sun3-fpa.h:
14733 * m/sun3-soft.h:
14734 * m/sun3.h:
14735 * m/sun386.h:
14736 * m/symmetry.h:
14737 * m/tad68k.h:
14738 * m/tahoe.h:
14739 * m/targon31.h:
14740 * m/tek4300.h:
14741 * m/tekxd88.h:
14742 * m/tower32.h:
14743 * m/tower32v3.h:
14744 * m/ustation.h:
14745 * m/wicat.h:
14746 * m/xps100.h:
14747 * s/cxux.h:
14748 * s/cxux7.h:
14749 * s/dgux.h:
14750 * s/dgux4.h:
14751 * s/dgux5-4-3.h:
14752 * s/dgux5-4r2.h:
14753 * s/esix.h:
14754 * s/esix5r4.h:
14755 * s/hiuxmpp.h:
14756 * s/hiuxwe2.h:
14757 * s/iris3-5.h:
14758 * s/iris3-6.h:
14759 * s/isc2-2.h:
14760 * s/isc3-0.h:
14761 * s/isc4-0.h:
14762 * s/isc4-1.h:
14763 * s/newsos5.h:
14764 * s/newsos6.h:
14765 * s/osf1.h:
14766 * s/osf5-0.h:
14767 * s/riscix1-1.h:
14768 * s/riscix12.h:
14769 * s/sco4.h:
14770 * s/sco5.h:
14771 * s/sunos4-0.h:
14772 * s/sunos4-1.h:
14773 * s/sunos413.h:
14774 * s/sunos4shr.h:
14775 * s/umax.h:
14776 * s/unipl5-2.h:
14777 * s/xenix.h:
14778 * cxux-crt0.s:
14779 * unexapollo.c:
14780 * unexconvex.c:
14781 * unexenix.c:
14782 * unexsni.c: Remove files for systems no longer supported.
14783
14784 * m/intel386.h: Remove references to unsupported systems.
14785
14786 * w32.c (get_emacs_configuration): Remove reference to i860.
14787
14788 * sysdep.c: Remove dead code.
14789
147902008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
14791
14792 * s/rtu.h:
14793 * m/masscomp.h: Remove files. Platform is obsolete.
14794
147952008-01-04 Michael Albinus <michael.albinus@gmx.de>
14796
14797 * dbusbind.c (Fdbus_method_return): New function.
14798 (xd_read_message): Add the serial number to the event.
14799 (Fdbus_register_method): Activate the function.
14800
148012008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
14802
14803 * keyboard.c (read_key_sequence): Fix typo.
14804
148052008-01-03 Michael Albinus <michael.albinus@gmx.de>
14806
14807 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
14808 (xd_signature, xd_append_arg): Handle element type detection for
14809 empty arrays.
14810 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
14811 SDATA () calls; this must be solved more general.
14812 (Fdbus_register_signal): Use SBYTES instead of strlen.
14813
148142008-01-03 Magnus Henoch <magnus@zemdatav>
14815
14816 * dbusbind.c (xd_append_arg): Use unsigned char instead of
14817 unsigned int for byte values (necessary for big-endian platform).
14818 (Fdbus_call_method): Handle the case of no returned arguments.
14819
148202007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
14821
14822 * dbusbind.c (xd_read_message): Use non-static input_event struct.
14823
148242007-12-31 Magnus Henoch <mange@freemail.hu>
14825
14826 * dbusbind.c (xd_signature): Signature of variant is just "v".
14827
148282007-12-30 Michael Albinus <michael.albinus@gmx.de>
14829
14830 * dbusbind.c: Fix several errors and compiler warnings.
14831 Reported by Tom Tromey <tromey@redhat.com>.
14832 (XD_ERROR, XD_DEBUG_MESSAGE)
14833 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
14834 (xd_append_arg): Part for basic D-Bus types rewritten.
14835 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
14836 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
14837 appropriate.
14838 (xd_read_message): Return Qnil. Don't signal an error; it is not
14839 useful during event reading.
14840 (Fdbus_register_signal): Signal an error if the check for
14841 FUNCTIONP fails.
14842 (Fdbus_register_method): New function. The implementation is not
14843 complete, the call of the function signals an error therefore.
14844 (Fdbus_unregister_object): New function, renamed from
14845 Fdbus_unregister_signal. The initial check signals an error, if
14846 the object is not well formed.
14847
148482007-12-30 Richard Stallman <rms@gnu.org>
14849
14850 * textprop.c (get_char_property_and_overlay):
14851 Signal error if POSITION is out of range in a buffer.
14852
148532007-12-29 Martin Rudalics <rudalics@gmx.at>
14854
14855 * w32fns.c (Fx_create_frame): Make copy of frame parameters
14856 because the original parameters are in pure storage now.
14857
148582007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14859
14860 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
14861
148622007-12-22 Eli Zaretskii <eliz@gnu.org>
14863
14864 * callint.c (syms_of_callint) <command-history>: Add reference to
14865 history-length in the doc string.
14866
148672007-12-17 Jason Rumney <jasonr@gnu.org>
14868
14869 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
14870 before passing as wParam.
14871
148722007-12-22 Michael Albinus <michael.albinus@gmx.de>
14873
14874 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
14875 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
14876 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
14877 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
14878 as number.
14879 (Fdbus_call_method): Fix docstring.
14880
148812007-12-21 Michael Albinus <michael.albinus@gmx.de>
14882
14883 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
14884 New macros.
14885 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
14886 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
14887 Simplify.
14888 (xd_signature): New function.
14889 (xd_append_arg): Compute also signatures. Major rewrite.
14890 (xd_retrieve_arg): Make debug messages friendly.
14891 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
14892 Check for signatures of arguments.
14893
148942007-12-19 Michael Albinus <michael.albinus@gmx.de>
14895
14896 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
14897 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
14898 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
14899 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
14900 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
14901 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
14902 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
14903 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
14904 (xd_retrieve_value): Remove. Functionality included in ...
14905 (xd_append_arg): New function.
14906 (Fdbus_call_method, Fdbus_send_signal): Apply it.
14907
149082007-12-16 Michael Albinus <michael.albinus@gmx.de>
14909
14910 * dbusbind.c (top): Include <stdio.h>.
14911 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
14912 dbus_message_new_method_call and dbus_message_new_signal.
14913 (Fdbus_register_signal): Rename unique_name to uname.
14914 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
14915 non-existing unique name. Fix typos in matching rule. Return an
14916 object which is useful in Fdbus_unregister_signal.
14917 (Fdbus_unregister_signal): Reimplementation, in order to remove
14918 only the corresponding entry.
14919 (Vdbus_registered_functions_table): Change the order of entries.
14920 Apply these changes in xd_read_message and Fdbus_register_signal.
14921
149222007-12-16 Andreas Schwab <schwab@suse.de>
14923
14924 * fileio.c (Finsert_file_contents): Fix overflow check to not
14925 depend on undefined integer overflow.
14926
149272007-12-14 Jason Rumney <jasonr@gnu.org>
14928
14929 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
14930 for characters above 127.
14931
149322007-12-13 Jason Rumney <jasonr@gnu.org>
14933
14934 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
14935 before dereferencing array.
14936 (lookup_vk_code): Remove zero comparison.
14937
149382007-12-14 Michael Albinus <michael.albinus@gmx.de>
14939
14940 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
14941 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
14942 Use `unsigned int' instead of `uint'.
14943 (xd_read_message, Fdbus_register_signal): Split expressions into
14944 multiple lines before operators "&&" and "||", according to the
14945 GNU Coding Standards.
14946
149472007-12-14 Eli Zaretskii <eliz@gnu.org>
14948
14949 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
14950
149512007-12-12 Juri Linkov <juri@jurta.org>
14952
14953 * buffer.c (Frename_buffer): In interactive spec replace
14954 `read-buffer' with `read-string' that uses `buffer-name-history'
14955 as history, and the current buffer's name as default.
14956
149572007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
14958
14959 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
14960 manipulating the backtrace manually.
14961 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
14962 (struct backtrace, backtrace_list): Remove.
14963 (command_loop_1): Remove dead var `no_direct'.
14964
14965 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
14966 preserve non-built-in buffer-local variables.
14967 (Fkill_all_local_variables): Don't re-create&re-set permanent
14968 buffer-local variables.
14969
149702007-12-09 Juri Linkov <juri@jurta.org>
14971
14972 * buffer.c (Frename_buffer): Change interactive spec from "s" to
14973 Lisp code that uses `read-buffer' with current buffer as default.
14974
149752007-12-08 Michael Albinus <michael.albinus@gmx.de>
14976
14977 * dbusbind.c (xd_read_message): Generate an event for every
14978 registered handler. There might be several handlers registered
14979 for the same signal.
14980 (Fdbus_register_signal): Don't overwrite a registration for the
14981 same signal. Add a new registration if handlers are different.
14982 (Vdbus_registered_functions_table): Rework doc string.
14983
149842007-12-07 Michael Albinus <michael.albinus@gmx.de>
14985
14986 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
14987 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
14988 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
14989 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
14990 Unify argument lists.
14991 (xd_read_message, Fdbus_register_signal): Reorder and extend event
14992 arguments and hash table keys. Use unique name for service.
14993 (Fdbus_unregister_signal): Remove checks.
14994 (Vdbus_registered_functions_table): Fix doc string.
14995
149962007-12-05 Magnus Henoch <mange@freemail.hu>
14997
14998 * process.c (make_process): Initialize pty_flag to 0.
14999
150002007-12-05 Jason Rumney <jasonr@gnu.org>
15001
15002 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
15003 specified XBMs.
15004
150052007-12-05 Richard Stallman <rms@gnu.org>
15006
15007 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
15008
150092007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15010
15011 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
15012 New variable.
15013 (mac_try_close_socket) [MAC_OSX]: New function.
15014 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
15015 Update cfsockets_for_select. Replace invalid CFRunLoop source.
15016
15017 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
15018 Use mac_try_close_socket.
15019
150202007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15021
15022 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
15023 reloc_base.
15024 (copy_dysymtab): Compute relocation base here.
15025 (rebase_reloc_address) [__ppc64__]: New function.
15026 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
15027 changed.
15028
150292007-12-05 Jason Rumney <jasonr@gnu.org>
15030
15031 * w32proc.c (sys_spawnve): Quote args with wildcards.
15032
150332007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15034
15035 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
15036 __objc_* sections.
15037 (unrelocate) [_LP64]: Set relocation base to address of data segment.
15038
150392007-12-05 Michael Albinus <michael.albinus@gmx.de>
15040
15041 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
15042 Move check for Vdbus_registered_functions_table to
15043 xd_read_queued_messages.
15044 (xd_read_queued_messages): Protect xd_read_message calls by
15045 internal_condition_case_1.
15046
150472007-12-04 Michael Albinus <michael.albinus@gmx.de>
15048
15049 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
15050 Qdbus_system_bus and Qdbus_session_bus, respectively.
15051 (Vdbus_intern_symbols): Remove.
15052 (Vdbus_registered_functions_table): New hash table.
15053 (XD_SYMBOL_INTERN_SYMBOL): Remove.
15054 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
15055 Rewrite in order to manage registered functions by hash table
15056 Vdbus_registered_functions_table.
15057
150582007-12-03 Jan Djärv <jan.h.d@swipnet.se>
15059
15060 * xterm.c: Update URL to Window Manager Specification in comment.
15061
150622007-12-02 Michael Albinus <michael.albinus@gmx.de>
15063
15064 * config.in (HAVE_DBUS): Add.
15065
15066 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
15067 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
15068 (obj): Add $(DBUS_OBJ).
15069 (LIBES): Add $(DBUS_LIBS).
15070 (dbusbind.o): New target.
15071
15072 * dbusbind.c: New file.
15073
15074 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
15075
15076 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
15077 (Qdbus_event): New Lisp symbol.
15078 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
15079 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 15080 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
15081
15082 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
15083
150842007-12-01 Richard Stallman <rms@gnu.org>
15085
15086 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
15087
150882007-11-30 Jason Rumney <jasonr@gnu.org>
15089
15090 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
15091 (w32con_reset_terminal_modes): Clear screen buffer.
15092 (w32_face_attributes): Don't use color indexes that are out of range.
15093 Only reverse the default colors.
15094
15095 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
15096 WINDOWSNT.
15097
15098 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
15099
151002007-11-29 Jason Rumney <jasonr@gnu.org>
15101
15102 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
15103 (w32_face_attributes): Use Vtty_defined_color_alist to determine
15104 if the terminal colors are initialized.
15105 (unspecified_fg, unspecified_bg): Remove unused declarations.
15106
151072007-11-29 Andreas Schwab <schwab@suse.de>
15108
15109 * keyboard.c (apply_modifiers): Fix typo.
15110
151112007-11-29 Richard Stallman <rms@gnu.org>
15112
15113 * keymap.c (Fcurrent_local_map): Doc fix.
15114
151152007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
15116
15117 * s/gnu-kfreebsd.h: New file.
15118
151192007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
15120
15121 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
15122 Don't cast redundantly.
15123
15124 * keyboard.c (KEY_TO_CHAR): New macro.
15125 (parse_modifiers, apply_modifiers): Accept integer arguments.
15126 (read_key_sequence): Use them to unify the "shift->unshift" mapping
15127 for chars and symbol keys.
15128 After doing such remapping, apply function-key-map again.
15129
151302007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
15131
15132 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
15133 compiled anymore.
15134
151352007-11-26 Andreas Schwab <schwab@suse.de>
15136
15137 * process.c (list_processes_1): Fix indentation level of the
15138 command column.
15139
151402007-11-23 Andreas Schwab <schwab@suse.de>
15141
15142 * editfns.c (Fformat): Handle %c specially since it requires the
15143 argument to be of type int.
15144
151452007-11-23 Markus Triska <markus.triska@gmx.at>
15146
15147 * emacs.c (main): Call init_editfns before init_process, since
15148 init_process sets Vprocess_connection_type depending on OS release.
15149
151502007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
15151
15152 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
15153 (find_symbol_value): Use do_symval_forwarding.
15154
15155 * data.c (set_internal): Set the value in the `cons-cell' (for
15156 Buffer_Local_values) not only for frame-local variables.
15157
151582007-11-22 Andreas Schwab <schwab@suse.de>
15159
15160 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
15161 values to sprintf.
15162 * keymap.c (Fsingle_key_description): Likewise.
15163 * print.c (print_object): Likewise.
15164
151652007-11-22 Jan Djärv <jan.h.d@swipnet.se>
15166
15167 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
15168 file for image is nil.
15169
151702007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
15171
15172 * term.c: Include stdarg.h.
15173 (fatal): Implement using varargs.
15174 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
15175
151762007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
15177
15178 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
15179 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
15180 Update call to buffer_slot_type_mismatch.
15181 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
15182 (buffer_slot_type_mismatch): Update.
15183 * buffer.c (buffer_local_types): Remove.
15184 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
15185 (defvar_per_buffer): Set the type in the buffer_objfwd.
15186
151872007-11-21 Jason Rumney <jasonr@gnu.org>
15188
15189 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
15190 CreateFileMapping returns NULL on failure.
15191
151922007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
15193
15194 * search.c (Fset_match_data): Remove the `evaporate' feature.
15195 (unwind_set_match_data): Don't use the `evaporate' feature.
15196
151972007-11-21 Jason Rumney <jasonr@gnu.org>
15198
15199 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
15200
15201 * w32console.c (w32con_write_glyphs): Remove unused variables.
15202
152032007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
15204
15205 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
15206
15207 * s/darwin.h (MULTI_KBOARD): Remove.
15208
15209 * macfns.c (x_create_tip_frame, Fx_create_frame)
15210 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
15211
152122007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
15213
15214 * buffer.c (Fbuffer_local_value): Remove redundant test.
15215 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
15216 than in `current-buffer' to match the comment.
15217 Do the swap using swap_in_global_binding.
15218
15219 * data.c (store_symval_forwarding, set_internal):
15220 * eval.c (specbind): Remove dead code.
15221
15222 * coding.c (detect_coding, Fupdate_coding_systems_internal):
15223 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
15224 Since we do not want to see internal Lisp_*fwd objects here.
15225
152262007-11-18 Jan Djärv <jan.h.d@swipnet.se>
15227
15228 * sysdep.c (init_system_name): Use getaddrinfo if available.
15229
15230 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
15231 (x_scroll_bar_note_movement): start, end, with, height in struct
15232 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
15233
152342007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
15235
15236 * puresize.h (BASE_PURESIZE): Increase to 1190000.
15237
152382007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
15239
15240 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
15241 This undoes Richard's change of 14-Oct-2002.
15242
15243 * alloc.c (allocate_other_vector):
15244 * lisp.h (allocate_other_vector): Remove.
15245
15246 * window.c (struct save_window_data): Move non-lisp data to the end
15247 and make it `int' rather than Lisp_Object.
15248 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
15249 Done wrap/unwrap integer values.
15250 (Fset_window_configuration, compare_window_configurations):
15251 Update use of fields to their new types.
15252
15253 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
15254 Turn integer fields into `int'. Merge x_window_low and x_window_high.
15255 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
15256 (SET_SCROLL_BAR_X_WINDOW): Remove.
15257 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
15258 Access the new x_window field directly.
15259 * xterm.c (x_scroll_bar_create): Use a pseudovector.
15260 Don't wrap/unwrap integers into Lisp_Objects.
15261 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
15262 (x_scroll_bar_report_motion):
15263 Don't wrap/unwrap integers into Lisp_Objects.
15264 (x_term_init): Use SDATA.
15265 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
15266 (x_scroll_bar_set_handle, x_scroll_bar_remove)
15267 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
15268 (x_scroll_bar_report_motion, x_scroll_bar_clear):
15269 * xfns.c (x_set_background_color):
15270 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
15271 Access the new x_window field directly.
15272
15273 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
15274 (allocate_pseudovector): Make non-static.
15275
15276 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
15277 (allocate_pseudovector): Declare.
15278 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
15279
152802007-11-15 Andreas Schwab <schwab@suse.de>
15281
15282 * editfns.c (Fformat): Correctly format EMACS_INT values.
15283 Also take precision into account when formatting an integer.
15284
15285 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
15286
152872007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
15288
15289 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
15290 (syms_of_keyboard): Defsubr it.
15291
15292 * data.c (swap_in_global_binding): Fix longstanding bug where
15293 store_symval_forwarding was not called with the right second argument,
15294 thus causing objfwd-ing from being dropped.
15295
152962007-11-14 Juanma Barranquero <lekktu@gmail.com>
15297
15298 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
15299 (Fx_display_pixel_height, Fx_display_planes)
15300 (Fx_display_color_cells, Fx_server_max_request_size)
15301 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
15302 (Fx_display_visual_class, Fx_display_save_under):
15303 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
15304 (Fx_display_pixel_height, Fx_display_planes)
15305 (Fx_display_color_cells, Fx_server_max_request_size)
15306 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
15307 (Fx_display_mm_height, Fx_display_mm_width)
15308 (Fx_display_backing_store, Fx_display_visual_class)
15309 (Fw32_select_font, Fx_display_save_under):
15310 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
15311 (Fx_display_pixel_height, Fx_display_planes)
15312 (Fx_display_color_cells, Fx_server_max_request_size)
15313 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
15314 (Fx_display_save_under): Fix typos in docstrings.
15315
153162007-11-14 Juanma Barranquero <lekktu@gmail.com>
15317
15318 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
15319 corresponding to deleted entries; they are an implementation detail.
15320 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
15321 Remove variables.
15322 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
15323 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
15324 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
15325 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
15326 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
15327 (Fw32_define_rgb_color, Fw32_load_color_file)
15328 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
15329 Fix typos in docstrings.
15330 (Fx_server_version): Reflow docstring.
15331 (Fw32_shell_execute): Doc fixes.
15332
153332007-11-13 Juanma Barranquero <lekktu@gmail.com>
15334
15335 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
15336 if w32_parse_hot_key returned nil.
15337
153382007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
15339
15340 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
15341
153422007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 15343
aac0c6e3
MR
15344 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
15345
15346 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
15347
15348 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
15349 Remove W32_SCROLL_BAR_CLICK_EVENT.
15350
15351 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
15352 Add MULTIMEDIA_KEY_EVENT.
15353
15354 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
15355 (lispy_multimedia_keys) [WINDOWSNT]: New array.
15356 (make_lispy_event) [WINDOWSNT]: Use it to translate
15357 MULTIMEDIA_KEY_EVENT.
15358
15359 * w32term.h (WM_APPCOMMAND): Define if not already.
15360 (GET_APPCOMMAND_LPARAM): Likewise.
15361
15362 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
15363 WM_APPCOMMAND.
15364
15365 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
15366 (syms_of_w32fns): Export and initialize it.
15367 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
15368
153692007-11-09 Chong Yidong <cyd@stupidchicken.com>
15370
15371 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
15372 twice.
15373
15374 * xdisp.c (handle_face_prop): Fix last change.
15375
153762007-11-09 Richard Stallman <rms@gnu.org>
15377
15378 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
15379 not just for after-strings and before-strings.
15380 Call face_for_overlay_string and pass the overlay to it.
15381 (handle_display_prop): Determine whether property came from an overlay.
15382 Pass OVERLAY arg to handle_single_display_spec.
15383 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
15384 (load_overlay_strings): Fill in it->string_overlays.
15385 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
15386
15387 * xfaces.c (face_for_overlay_string): Function renamed from
15388 face_at_buffer_position_no_overlays, and add arg OVERLAY.
15389
15390 * dispextern.h (struct it): New elt string_overlays.
15391 New elt from_overlay, also in stack.
15392 Rearrange a few elements.
15393 (face_for_overlay_string): Decl renamed from
15394 face_at_buffer_position_no_overlays, and add argument.
15395
153962007-11-09 Richard Stallman <rms@gnu.org>
15397
15398 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
15399 to get the base face for an overlay string.
15400
15401 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
15402
15403 * xfaces.c (face_at_buffer_position_no_overlays): New function.
15404
15405 * xdisp.c (handle_stop): Move some code out of loop.
15406
154072007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15408
15409 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
15410 Fix conversion from Lisp object to ATSUFontID.
15411
154122007-11-09 Jason Rumney <jasonr@gnu.org>
15413
15414 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
15415
154162007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15417
15418 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
15419 Don't assume regions are aligned to page boundary.
15420 (print_load_command_name): Add LC_UUID if defined.
15421
154222007-11-09 Richard Stallman <rms@gnu.org>
15423
15424 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
15425
154262007-11-07 Jason Rumney <jasonr@gnu.org>
15427
15428 * s/windows95.h: Remove.
15429
154302007-11-06 Jan Djärv <jan.h.d@swipnet.se>
15431
15432 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
15433 abort with a message on unhandled store_type values.
15434
154352007-11-01 Jan Djärv <jan.h.d@swipnet.se>
15436
15437 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
15438 Remove HAVE_X11R5 and HAVE_X11R4.
15439
154402007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
15441
15442 * Makefile.in: Remove references to sunfns.c and sunfns.o.
15443
154442007-11-01 Johan Bockgård <bojohan@gnu.org>
15445
15446 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
15447 Don't set s->stippled_p here, since it has already been set by
15448 x_set_glyph_string_gc from x_draw_glyph_string.
15449
154502007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
15451
15452 * sunfns.c: Remove file.
15453
15454 * m/sun386.h:
15455 * m/sun2.h:
15456 * m/sparc.h: Remove Sun windows code.
15457
154582007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
15459
15460 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
15461 (init_keyboard): Set current_kboard's window-system to nil.
15462 (tty_read_avail_input): Typo.
15463 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
15464
154652007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
15466
15467 * s/usg5-4.h:
15468 * s/usg5-3.h:
15469 * s/ptx.h:
15470 * m/is386.h:
15471 * m/ibmps2-aix.h:
15472 * Makefile.in: Remove all mentions of X10.
15473
15474 * dispnew.c (syms_of_display): Don't mention version 10.
15475
154762007-10-28 Juanma Barranquero <lekktu@gmail.com>
15477
15478 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
15479 ($(BLD)/abbrev.$(O)): Remove.
15480
154812007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
15482
15483 Rewrite abbrev.c in Elisp.
15484 * image.c (Qcount): Don't declare as extern.
15485 (syms_of_image): Initialize and staticpro `Qcount'.
15486 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
15487 * emacs.c (main): Don't call syms_of_abbrev.
15488 * Makefile.in (obj): Remove abbrev.o.
15489 (abbrev.o): Remove.
15490 * abbrev.c: Remove.
15491
154922007-10-26 Martin Rudalics <rudalics@gmx.at>
15493
15494 * window.c (window_min_size_2): Don't count header-line.
15495
154962007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
15497
15498 * frame.h (struct frame): Move all bit fields after the first bit
15499 field to take advantage of the available space. Group all the
15500 chars together to reduce wasted space due to padding.
15501
155022007-10-26 Juanma Barranquero <lekktu@gmail.com>
15503
15504 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
15505
15506 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
15507 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
15508 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
15509 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
15510 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
15511 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
15512 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
15513 (last_marked, mark_object_loop_halt): Make static.
15514
15515 * frame.c (syms_of_frame) <delete-frame-functions>:
15516 Fix typo in docstring.
15517
155182007-10-25 Juanma Barranquero <lekktu@gmail.com>
15519
15520 * w32.c (init_environment): Fix tiny memory leak.
15521 (w32_get_resource): Remove unused variable `ok'.
15522
155232007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
15524
15525 Make `window-system' into a keyboard-local variable (rather than
15526 frame-local as done originally by multi-tty).
15527
15528 * keyboard.h (struct kboard): Add Vwindow_system.
15529 * keyboard.c (init_kboard): Set a default for Vwindow_system.
15530 (mark_kboards): Mark Vwindow_system.
15531
15532 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
15533 (init_display): Don't set the obsolete `window-system' frame-param.
15534
15535 * xterm.c (x_term_init):
15536 * w32term.c (w32_create_terminal):
15537 * term.c (init_tty): Set Vwindow_system.
15538 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
15539 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
15540
15541 * xfns.c (Fx_create_frame, x_create_tip_frame):
15542 * w32fns.c (Fx_create_frame, x_create_tip_frame):
15543 * macfns.c (Fx_create_frame):
15544 Don't set the obsolete `window-system' frame-param.
15545
15546 * frame.h (Qwindow_system): Remove.
15547 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
15548 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
15549
155502007-10-24 Richard Stallman <rms@gnu.org>
15551
15552 * frame.c (x_figure_window_size): For fullscreen case,
15553 set USPosition | PPosition without clobbering rest of window_prompting.
15554
15555 * keyboard.c (Fcurrent_idle_time): Doc fix.
15556
15557 * print.c (Fwith_output_to_temp_buffer): Doc fix.
15558
155592007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
15560
15561 * process.c (unwind_request_sigio): Only define if __ultrix__.
15562
15563 * callproc.c (child_setup): Remove spurious *.
15564
15565 * lisp.h (Fget_text_property): Declare.
15566 (have_menus_p): Declare it here rather than in sys-dep header files.
15567 * macterm.h (have_menus_p):
15568 * msdos.h (have_menus_p):
15569 * xterm.h (have_menus_p): Remove.
15570
15571 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
15572 (Fmake_variable_frame_local): Just check the variable's const-ness
15573 rather than checking nil or t.
15574
155752007-10-22 Jason Rumney <jasonr@gnu.org>
15576
15577 * w32fns.c: Include math.h.
15578 (w32_abort): Declaration moved to nt/config.nt.
15579
15580 * s/ms-w32.h (HAVE_STDLIB_H): Define.
15581 (abort): Redefinition moved to nt/config.nt.
15582
15583 * m/windowsnt.h: Remove.
15584
155852007-10-22 Juanma Barranquero <lekktu@gmail.com>
15586
15587 * emacs.c (Fdump_emacs): Fix typo in message.
15588 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
15589 <installation-directory>: Reflow docstring.
15590
155912007-10-22 Juri Linkov <juri@jurta.org>
15592
15593 * minibuf.c: Allow minibuffer default to be a list of default values.
15594 With empty input use the first element of this list as returned default.
15595 (string_to_object)
15596 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
15597 (read_minibuf): If defalt is cons, set histstring to its car.
15598 (Fread_string): If default_value is cons, set val to its car.
15599 (Fread_buffer): If def is cons, use its car.
15600 (Fcompleting_read): If defalt is cons, set val to its car.
15601
156022007-10-21 Michael Albinus <michael.albinus@gmx.de>
15603
15604 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
15605
156062007-10-20 Juanma Barranquero <lekktu@gmail.com>
15607
15608 * doc.c (Fdocumentation): Check for advice in all cases.
15609
156102007-10-19 Chong Yidong <cyd@stupidchicken.com>
15611
15612 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
15613
156142007-10-19 Richard Stallman <rms@gnu.org>
15615
15616 * doc.c (Fdocumentation): Check for and handle an advised function.
15617
156182007-10-19 Juanma Barranquero <lekktu@gmail.com>
15619
15620 * process.c (Fset_process_filter): Doc fix.
15621
156222007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
15623
15624 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
15625 which caused key-translation-map to applied repeatedly (thus breaking
15626 double-mode).
15627
156282007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
15629
15630 * xselect.c (x_own_selection, x_handle_selection_clear)
15631 (x_clear_frame_selections):
15632 * w32menu.c (list_of_panes, list_of_items):
15633 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
15634 * textprop.c (validate_plist, interval_has_all_properties)
15635 (interval_has_some_properties, interval_has_some_properties_list)
15636 (add_properties, text_property_list):
15637 * process.c (Fget_buffer_process, list_processes_1, status_notify):
15638 * minibuf.c (Fassoc_string):
15639 * macselect.c (x_own_selection, x_clear_frame_selections)
15640 (Fx_disown_selection_internal):
15641 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
15642 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
15643
156442007-10-17 Chong Yidong <cyd@stupidchicken.com>
15645
15646 * process.c: Link to libs for calling res_init() if available.
15647 (Fmake_network_process): Call res_init() before getaddrinfo or
15648 gethostbyname, if possible.
15649
156502007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
15651
15652 * lread.c (read1): Set pvectype for char_tables.
15653
15654 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
15655 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
15656 Add type checks.
15657 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
15658
15659 * alloc.c (free_misc): Use XMISCTYPE.
15660 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
15661
156622007-10-17 Glenn Morris <rgm@gnu.org>
15663
15664 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
15665 (syms_of_minibuf): Add Qcompletion_ignore_case.
15666 * dired.c (Qcompletion_ignore_case): Change to external.
15667 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
15668 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
15669 (Fread_file_name): Use it rather than intern'ing.
15670
15671 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
15672 (Fread_coding_system): Ignore case of user input.
15673
156742007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15675
15676 * xdisp.c (handle_display_prop): Ignore display specs after
15677 replacing one when string text is being replaced.
15678 (handle_single_display_spec): Pretend as if characters with display
15679 property haven't been consumed only when buffer text is being replaced.
15680
156812007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
15682
15683 * xfns.c (Fx_create_frame, Fx_display_list):
15684 * window.c (window_fixed_size_p, enlarge_window)
15685 (shrink_window_lowest_first):
15686 * macterm.c (init_font_name_table):
15687 * macfns.c (Fx_create_frame, Fx_display_list):
15688 * lread.c (close_load_descs):
15689 * keyboard.c (read_char_x_menu_prompt):
15690 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
15691 * coding.c (code_convert_region_unwind): Test the type of an object
15692 rather than just !NILP before extracting data from it.
15693
15694 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
15695
15696 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
15697 (XMISCANY): New macro.
15698 (XMISCTYPE): Use it.
15699 (struct Lisp_Misc_Any): New type.
15700 (union Lisp_Misc): Use it.
15701 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
15702 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
15703 (find_symbol_value, set_internal, default_value, Fset_default)
15704 (Fmake_variable_buffer_local, Fmake_local_variable)
15705 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
15706 (Flocal_variable_if_set_p, Fvariable_binding_locus):
15707 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
15708 * alloc.c (allocate_buffer): Set the size and tag.
15709 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
15710 Use XMISCANY.
15711 (die): Follow the GNU convention for error messages.
15712 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
15713 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
15714 tag any more.
15715 (set_buffer_internal_1):
15716 * frame.c (store_frame_param):
15717 * eval.c (specbind):
15718 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
15719
15720 * doc.c (Fsnarf_documentation): Simplify.
15721
157222007-10-14 Juanma Barranquero <lekktu@gmail.com>
15723
15724 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
15725 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
15726
157272007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
15728
15729 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
15730
157312007-10-14 Juanma Barranquero <lekktu@gmail.com>
15732
15733 * eval.c (do_autoload): Don't save autoloads.
15734
15735 * data.c (Ffset): Save autoload of the function being set.
15736
157372007-10-07 John Paul Wallington <jpw@pobox.com>
15738
15739 * xfns.c (x_create_tip_frame): Set the `display-type' frame
15740 parameter before setting up faces.
15741
157422007-10-13 Eli Zaretskii <eliz@gnu.org>
15743
15744 * ccl.c (Fregister_code_conversion_map):
15745 * keyboard.c (append_tool_bar_item): Reformat last change.
15746
15747 * lisp.h (eabs): Rename from `abs'. All callers changed.
15748
157492007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
15750
15751 * buffer.c (add_overlay_mod_hooklist):
15752 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
15753 * fontset.c (make_fontset):
15754 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
15755 (append_tool_bar_item):
15756 * macmenu.c (grow_menu_items):
15757 * w32menu.c (grow_menu_items):
15758 * xmenu.c (grow_menu_items): Use larger_vector.
15759
157602007-10-13 Eli Zaretskii <eliz@gnu.org>
15761
15762 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
15763 selected frame'' on MSDOS).
15764
157652007-10-12 Martin Rudalics <rudalics@gmx.at>
15766
15767 * frame.c (Qexplicit_name): New variable.
15768 (x_report_frame_params): Report it in parameter alist.
15769 (syms_of_frame): Intern and staticpro it.
15770
157712007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
15772
15773 * macfns.c (x_create_tip_frame): Set terminal for frame.
15774
157752007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
15776
15777 * frame.c (Qenvironment): Remove.
15778 (syms_of_frame) <Qenvironment>: Don't initialize.
15779 (Fdelete_frame): Don't treat the `environment' param specially.
15780 * frame.h (Qenvironment): Don't declare.
15781 * callproc.c (set_initial_environment): Don't set unused frame param.
15782
15783 * frame.c (Fframe_with_environment): Remove.
15784 (syms_of_frame) <Sframe_with_environment>: Don't declare.
15785
15786 * lisp.h (Fframe_with_environment): Don't declare.
15787
157882007-10-10 Juanma Barranquero <lekktu@gmail.com>
15789
15790 * indent.c (indent_tabs_mode, last_known_column)
15791 (last_known_column_modified): Make static.
15792 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
15793
157942007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
15795
15796 * puresize.h (BASE_PURESIZE): Increase to 1170000.
15797
157982007-10-09 Jason Rumney <jasonr@gnu.org>
15799
15800 * w32term.c (x_set_window_size): Disable code that attempts to tell
15801 Lisp code about a size change before it actually happens.
15802
158032007-10-09 Richard Stallman <rms@gnu.org>
15804
15805 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
15806 return HANDLED_RETURN.
15807
158082007-10-08 Martin Rudalics <rudalics@gmx.at>
15809
15810 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
15811 when there's an unread command event.
15812
15813 * frame.c (focus_follows_mouse): Move here from frame.el to allow
15814 window autoselection act appropriately when leaving selected frame.
15815 (syms_of_frame): Initialize focus_follows_mouse.
15816 * frame.h (focus_follows_mouse): Extern it.
15817 * macterm.c (XTread_socket): When focus_follows_mouse is nil
15818 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
15819 * msdos.c (dos_rawgetc): Likewise.
15820 * w32term.c (w32_read_socket): Likewise.
15821 * xterm.c (handle_one_xevent): Likewise.
15822 * xdisp.c (syms_of_xdisp): In doc-string of
15823 mouse-autoselect-window mention focus-follows-mouse.
15824
158252007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15826
15827 * macterm.c (mac_load_query_font): Fix missing return value.
15828 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
15829 Add BLOCK_INPUT.
15830
158312007-10-08 Richard Stallman <rms@gnu.org>
15832
15833 * xdisp.c (get_window_cursor_type): Implement documented behavior
15834 for cursor-in-non-selected-windows = t.
15835
158362007-10-08 Jason Rumney <jasonr@gnu.org>
15837
15838 * w32.c (w32_get_resource): Always close registry keys.
15839
158402007-10-08 Jason Rumney <jasonr@gnu.org>
15841
15842 * makefile.w32-in (LIBS): Add COMCTL32.
15843
15844 * w32fns.c (globals_of_w32fns): Init common controls.
15845
158462007-10-08 Richard Stallman <rms@gnu.org>
15847
15848 * image.c (our_memory_buffer): Rename from omfib_buffer.
15849
158502007-10-08 Richard Stallman <rms@gnu.org>
15851
15852 * buffer.c (Foverlays_at): Doc fix.
15853
158542007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
15855
15856 * fns.c (Fplist_put): Preserve uneven tail data.
15857
158582007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
15859
15860 * termhooks.h (enum event_kind): Remove trailing comma.
15861
15862 * frame.h (enum): Remove trailing comma.
15863
158642007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
15865
15866 * w32proc.c (delete_child): Don't terminate threads of zombies.
15867
158682007-10-08 Martin Rudalics <rudalics@gmx.at>
15869
15870 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
15871
15872 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
15873 last-repeatable-command.
15874 (init_kboard): Initialize Vlast_repeatable_command.
15875 (command_loop_1): Set it to real_this_command unless that was
15876 bound to an input event.
15877 (mark_kboards): Mark it.
15878
158792007-10-08 Richard Stallman <rms@gnu.org>
15880
15881 * eval.c (condition-case): Doc fix.
15882
158832007-10-08 Masatake YAMATO <jet@gyve.org>
15884
15885 * xfaces.c (tty_supports_face_attributes_p): Fix code
15886 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
15887 was copied and not edited.
15888
158892007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
15890
15891 Add new `input-decode-map' keymap and use it for terminal
15892 escape sequences.
15893 * keyboard.h (struct kboard): Add Vinput_decode_map.
15894 Remove Vlocal_key_translation_map.
15895 * keyboard.c (read_key_sequence): Add support for input-decode-map.
15896 (init_kboard): Init input-decode-map.
15897 Replace local-key-translation-map back with key-translation-map.
15898 (syms_of_keyboard): Declare input-decode-map.
15899 Remove local-key-translation-map. Update docstrings.
15900 (mark_kboards): Mark Vinput_decode_map.
15901 Don't mark Vlocal_key_translation_map.
15902 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
15903 Replace local-key-translation-map back with key-translation-map.
15904 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
15905 Bind in input-decode-map rather than function-key-map.
15906
15907 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
15908 This was made redundant by the previous introduction of XSETPVECTYPE.
15909
159102007-10-09 Richard Stallman <rms@gnu.org>
15911
15912 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
15913
159142007-09-29 Richard Stallman <rms@gnu.org>
15915
15916 * eval.c (internal_condition_case_2, internal_condition_case_1)
15917 (internal_condition_case): Reenable abort if x_catching_errors ()
15918 to see if that really happens and why.
15919
159202007-10-06 Andreas Schwab <schwab@suse.de>
15921
15922 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
15923
159242007-10-04 Juanma Barranquero <lekktu@gmail.com>
15925
15926 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
15927
159282007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
15929
15930 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
15931
159322007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
15933
15934 * window.h (struct window):
15935 * window.c (struct save_window_data, struct saved_window):
15936 * termhooks.h (struct terminal):
15937 * process.h (struct Lisp_Process):
15938 * frame.h (struct frame):
15939 * buffer.h (struct buffer):
15940 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
15941 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
15942 The size field of (pseudo)vectors is now unsigned.
15943 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
15944
15945 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
15946 Turn `count' into an integer.
15947
15948 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
15949 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
15950 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
15951 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
15952 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
15953
15954 * alloc.c (allocate_pseudovector): New fun.
15955 (ALLOCATE_PSEUDOVECTOR): New macro.
15956 (allocate_window, allocate_terminal, allocate_frame)
15957 (allocate_process): Use it.
15958 (mark_vectorlike): New function.
15959 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
15960 (mark_terminals): Use it.
15961 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
15962 (Fmake_byte_code): Use XSETPVECTYPE.
15963
15964 * frame.c (Fframe_parameters): Minor simplification.
15965
15966 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
15967
15968 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
15969
15970 * buffer.c (Fget_buffer_create, init_buffer_once):
15971 * lread.c (defsubr):
15972 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
15973
15974 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
15975 defined differently in the m/*.h files.
15976 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
15977 (XSETPVECTYPE): New macro.
15978 (XSETPSEUDOVECTOR): Use it.
15979
15980 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
15981 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
15982
15983 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
15984 * lread.c (defvar_per_buffer):
15985 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
15986
15987 * window.c (candidate_window_p): Only consider as visible frames that
15988 are on the same terminal.
15989
15990 * m/ibms390x.h (MARKBIT): Remove unused macro.
15991
159922007-10-01 Juanma Barranquero <lekktu@gmail.com>
15993
15994 * lread.c (Fload): Fix typo in docstring.
15995
159962007-10-01 Michaël Cadilhac <michael@cadilhac.name>
15997
15998 * floatfns.c (Fexpt): Manually check for overflows, so that a power
15999 of a non-zero value can't yield zero.
16000
160012007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
16002
16003 * term.c (term_clear_mouse_face, term_mouse_highlight)
16004 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
16005
16006 * print.c (safe_debug_print): Use XHASH.
16007
16008 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
16009 Lisp elements such as tags.
16010 (XHASH): New macro.
16011 (EQ): Use it.
16012 (SREF, SSET, STRING_COPYIN): Use SDATA.
16013 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
16014
16015 * alloc.c (mark_terminal): Remove left-over declaration.
16016 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
16017 (allocate_vectorlike): Remove type argument. Adjust callers.
16018 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
16019 Only handle the one remaining MEM_TYPE_VECTORLIKE.
16020
16021 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
16022 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
16023 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
16024 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
16025 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
16026 Use them.
16027
16028 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
16029 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
16030 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
16031
160322007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
16033
16034 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
16035 loaded by default.
16036
160372007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
16038
16039 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
16040 on this tty.
16041 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
16042
16043 * term.c (mouse_face_window): Rename from Qmouse_face_window.
16044 Update all users.
16045 (handle_one_term_event): Use Gpm_DrawPointer.
16046 (Fgpm_mouse_start): Rename from Fterm_open_connection.
16047 Signal errors instead of returning nil. Always return nil.
16048 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
16049 Make it a noop if gpm-mouse was not activated.
16050 (syms_of_term): Update names.
16051
160522007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
16053
16054 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
16055 (init_sys_modes): Check that gpm_tty is the current tty.
16056
16057 * alloc.c (allocate_terminal): Set the vector size to only count the
16058 lisp fields. Initialize those to nil.
16059 (mark_object): Don't treat terminals specially.
16060 (mark_terminal): Remove.
16061 (mark_terminals): Use mark_object instead.
16062
16063 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
16064 the GC to the beginning.
16065
16066 * indent.h:
16067 * indent.c: Use EMACS_INT for ints coming from Elisp data.
16068
16069 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
16070
160712007-09-25 Jason Rumney <jasonr@gnu.org>
16072
16073 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
16074
16075 * w32console.c (create_w32cons_output): Remove.
16076
16077 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
16078
16079 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
16080 (reset_sys_modes): Use reset_terminal_modes_hook.
16081
160822007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
16083
16084 * eval.c (do_autoload): Don't output any message.
16085
160862007-09-24 Juri Linkov <juri@jurta.org>
16087
16088 * emacs.c (standard_args): Change priority of "--no-splash"
16089 from 40 to 3. Add "--no-desktop" with the same priority.
16090
160912007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
16092
16093 * alloc.c (gc_sweep): Check cons cell mark bits word by word
16094 and optimize the case where they are all 1.
16095
160962007-09-23 Johannes Weiner <hannes@saeurebad.de>
16097
16098 * lisp.h (abs): Define if not defined.
16099 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
16100 Don't define `abs', since it's defined in lisp.h.
16101
161022007-09-22 Eli Zaretskii <eliz@gnu.org>
16103
16104 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
16105 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
16106 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
16107 (init_tty): Use DEV_TTY instead of "/dev/tty".
16108 [WINDOWSNT]: No need to protect from NAME arg being null.
16109
161102007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
16111
16112 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
16113 up the tty state.
16114
161152007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
16116
16117 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
16118 (gpm_tty): Change its type.
16119 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
16120 (gpm_tty): Change its type and initialize it.
16121 (Fterm_open_connection): Check the frame is indeed a tty.
16122 Use the new gpm_tty.
16123 (Fterm_close_connection): Use the new gpm_tty.
16124 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
16125 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
16126
161272007-09-21 Juanma Barranquero <lekktu@gmail.com>
16128
16129 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
16130 underline_color, to draw strike-through.
16131
161322007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
16133
16134 * lisp.h (allocate_terminal): Declare.
16135
16136 * window.c (candidate_window_p): Consider frames that are being placed
16137 by the user as somewhere between visible and iconified.
16138 (window_loop): Prefer windows on the current frame.
16139 (Fselect_window): Move the use of select-frame to the beginning so we
16140 can just delegate all the work (it'll call us back anyway).
16141
16142 * frame.c (Qdisplay_environment_variable):
16143 * frame.h (Qdisplay_environment_variable): Delete.
16144
16145 * .gdbinit (xbacktrace): Print the arg's address rather than the value
16146 of the first arg, since that value may be a union.
16147
16148 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
16149 parameter rather than Qdisplay_environment_variable. If all else
16150 fails, look for DISPLAY in initial-environment.
16151
161522007-09-21 Glenn Morris <rgm@gnu.org>
16153
16154 * Makefile.in (emacstool): Remove target.
16155 (lisp, shortlisp): Remove termdev.elc.
16156
161572007-09-21 Markus Triska <markus.triska@gmx.at>
16158
16159 * xterm.c (x_delete_display): Compile session management conditionally.
16160
161612007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
16162
16163 * callproc.c (getenv_internal_1): New function.
16164 (getenv_internal): Use it.
16165 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
16166
16167 * terminal.c (get_terminal): Don't accept ints to represent terminals.
16168 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
16169 (Fset_terminal_parameter): Work with dead terminals as well.
16170 (Fmodify_terminal_parameters): Remove.
16171
16172 * terminal.c (get_terminal): Handle terminals.
16173 Make sure the terminal returned is live.
16174 (create_terminal): Use allocate_terminal.
16175 (mark_terminals): Move to alloc.c.
16176 (delete_terminal): Use terminal->name as liveness status.
16177 NULL out fields after freeing their contents.
16178 Don't deallocate the object.
16179 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
16180 rather than an int.
16181 (Fterminal_live_p): Accept non-integer arguments.
16182 (Fterminal_list): Return terminal objects rather than an ints.
16183
16184 * alloc.c (enum mem_type): New member for `terminal' objects.
16185 (allocate_terminal): New function.
16186 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
16187 Handle terminals.
16188 (mark_terminal): New fun.
16189 (mark_terminals): Move from terminal.c.
16190
16191 * term.c (get_tty_terminal): Don't treat output_initial specially.
16192 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
16193 (delete_tty): Use terminal->name as liveness status.
16194
16195 * termhooks.h (struct terminal): Make it into a pseudovector.
16196 Remove `deleted' replaced by checking `name's nullness.
16197
16198 * print.c (print_object): Handle terminals.
16199
16200 * lisp.h (enum pvec_type): New `terminal' pseudovector.
16201 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
16202
16203 * frame.c (make_terminal_frame):
16204 * keyboard.c (tty_read_avail_input):
16205 * w32term.c (x_delete_terminal):
16206 * xfns.c (Fx_create_frame, x_create_tip_frame):
16207 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
16208
162092007-09-20 Glenn Morris <rgm@gnu.org>
16210
16211 * process.c (Fmake_network_process): Doc fix.
16212
162132007-09-19 Jason Rumney <jasonr@gnu.org>
16214
16215 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
16216
162172007-09-19 Michaël Cadilhac <michael@cadilhac.name>
16218
16219 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
16220 Fix a C warning regarding variable constness.
16221
16222 * xterm.c (handle_one_xevent): Fix a C warning.
16223
162242007-09-18 Jason Rumney <jasonr@gnu.org>
16225
16226 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
16227
162282007-09-17 Jan Djärv <jan.h.d@swipnet.se>
16229
16230 * gtkutil.c (gdpy_def): New variable.
16231 (xg_initialize): Initialize gdpy_def.
16232 (xg_display_close): If no other display exists, set gdpy_def to a
16233 new connection.
16234
162352007-09-16 Jan Djärv <jan.h.d@swipnet.se>
16236
16237 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
16238 when we have no file name for the icon.
16239 (xg_tool_bar_expose_callback): Remove.
16240 (xg_create_tool_bar): Don't connect expose signal to
16241 xg_tool_bar_expose_callback.
16242 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
16243
162442007-09-16 Andreas Schwab <schwab@suse.de>
16245
16246 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
16247 values instead of zapping them.
16248
162492007-09-14 Glenn Morris <rgm@gnu.org>
16250
16251 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
16252 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
16253 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
16254 scope and rename to omfib_buffer for clarity.
16255 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
16256
162572007-09-14 Kenichi Handa <handa@m17n.org>
16258
16259 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
16260
162612007-09-13 Jason Rumney <jasonr@gnu.org>
16262
16263 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
16264
16265 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
16266
16267 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
16268 (mac_term_init): Call here instead, passing rif.
16269
162702007-09-13 Glenn Morris <rgm@gnu.org>
16271
16272 * s/hpux.h: No longer define `static' as nothing.
16273
162742007-09-13 Johan Bockgård <bojohan@gnu.org>
16275
16276 * callint.c (Fcall_interactively): Remove unused var `fun'.
16277
162782007-09-12 Romain Francoise <romain@orebokech.com>
16279
16280 * window.c (prefer_window_split_horizontally, display_buffer):
16281 Revert 2007-09-08 change.
16282
162832007-09-12 Glenn Morris <rgm@gnu.org>
16284
16285 * alloca.c: Remove file.
16286 * Makefile.in (alloca): Do not undef.
16287 (allocaobj, alloca.o): Remove.
16288 (otherobj): Remove allocaobj.
16289 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
16290 * regex.c (C_ALLOCA): Remove all references and code that was only
16291 used when this was defined.
16292 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
16293 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
16294 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
16295
16296 * Makefile.in (SOURCES, unlock, relock): Delete.
16297
16298 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
16299 (menu_grab_callback): All uses changed.
16300
16301 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
16302 (x_reply_selection_request): All uses changed.
16303
163042007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
16305
16306 * lread.c (load_warn_old_style_backquotes): Change message to look
16307 better when it appears in the middle of byte-compiler messages.
16308
163092007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
16310
16311 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
16312
16313 * xterm.c (x_create_terminal): Add comment.
16314
16315 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
16316
163172007-09-10 Richard Stallman <rms@gnu.org>
16318
16319 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
16320
163212007-09-10 Michaël Cadilhac <michael@cadilhac.name>
16322
16323 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
16324 (DEFUN): Document `intspec', use it instead of `prompt'.
16325
16326 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
16327
16328 * data.c (Finteractive_form): If the interactive specification starts
16329 with a `(', use it as a Lisp form.
16330
16331 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
16332 name and file modes.
16333
16334 * callint.c (Fcall_interactively): Comment fixes.
16335
163362007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
16337
16338 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
16339 and compiled functions.
16340
163412007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
16342
16343 * window.c (prefer_window_split_horizontally): New variable.
16344 (display_buffer): Consider splitting window horizontally depending
16345 on prefer_window_split_horizontally.
16346
163472007-09-08 Eli Zaretskii <eliz@gnu.org>
16348
16349 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
16350
163512007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
16352
16353 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
16354
16355 * frame.c (x_set_frame_parameters): Check number is positive before
16356 using XFASTINT.
16357
16358 * window.c (freeze_window_start): Don't presume selected_window holds
16359 a window object.
16360 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
16361
163622007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
16363
16364 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
16365
163662007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
16367
16368 * window.c (Vsplit_window_preferred_function): New var.
16369 (Fdisplay_buffer): Use it.
16370 (syms_of_window): Export, and initialize it.
16371
163722007-09-06 Pixel <pixel@mandriva.com> (tiny change)
16373
16374 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
16375
163762007-09-06 Glenn Morris <rgm@gnu.org>
16377
16378 * gtkutil.c (menu_grab_callback) <cnt>:
16379 * xselect.c (x_reply_selection_request) <cnt>: Move static
16380 variable to file scope.
16381
163822007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
16383
16384 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
16385 consistent values of selected_frame and selected_window.
16386
163872007-09-04 Jason Rumney <jasonr@gnu.org>
16388
16389 * w32console.c (initialize_w32_display): Zero unused hooks.
16390
163912007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
16392
16393 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
16394 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
16395
163962007-09-04 Jason Rumney <jasonr@gnu.org>
16397
16398 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
16399 in w32console.c. Set up input. Remove XXX comments that have been
16400 confirmed as correct.
16401
16402 * s/ms-w32.h (MULTI_KBOARD): Define.
16403
16404 * w32console.c (one_and_only_w32cons): Remove.
16405 (initialize_w32_display): Take terminal argument.
16406
16407 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
16408 initialize_w32_display.
16409 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
16410
16411 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
16412
16413 * keyboard.c (discard_mouse_events): Discard it.
16414 (make_lispy_event): Translate it to a lisp event.
16415 (lispy_wheel_names): Add wheel-left and right events.
16416 (syms_of_keyboard): Enlarge wheel_syms.
16417
16418 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
16419 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
16420
16421 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
16422
16423 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
16424 from WM_MOUSEHWHEEL.
16425 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
16426
16427 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
16428 terminal.
16429
16430 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
16431 keyboard for the terminal.
16432
164332007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
16434
16435 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
16436 (Vresume_tty_hook): Rename from Vresume_tty_functions.
16437 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
16438 and resume-tty-function to resume-tty-hook.
16439 (Fsuspend_tty, Fresume_tty): Use new names.
16440
164412007-09-02 Jan Djärv <jan.h.d@swipnet.se>
16442
16443 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
16444 if it starts with "n:".
16445
164462007-08-31 Jan Djärv <jan.h.d@swipnet.se>
16447
16448 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
16449
164502007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
16451
16452 * frame.h:
16453 * frame.c (Qterm_environment_variable): Remove.
16454 (syms_of_frame): Don't init and staticpro it.
16455
16456 * callproc.c (getenv_internal): Remove special case for $TERM.
16457
16458 * callproc.c (Vinitial_environment): New variable.
16459 (set_initial_environment): Initialize it.
16460 (syms_of_callproc): Declare it.
16461 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
16462 TERM under which a process runs is never related to the TERM in which
16463 Emacs is running.
16464
164652007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
16466
16467 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
16468 * s/darwin.h: ... do it here.
16469
164702007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
16471
16472 * lisp.h (set_initial_environment): Rename from set_global_environment.
16473
16474 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
16475 removed by mistake on the multi-tty branch.
16476
16477 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
16478 (Fmodify_frame_parameters): Return a value.
16479
16480 * image.c (png_load): Comment-out var only used in commented-out code.
16481
16482 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
16483 before passing it to mark_object.
16484
16485 * xfaces.c (internal_resolve_face_name): Return a value.
16486 (internal_resolve_face_name, resolve_face_name_error): Comment out.
16487
16488 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
16489 (x_icon): Comment-out var only used in commented-out code.
16490
164912007-08-29 Romain Francoise <romain@orebokech.com>
16492
16493 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
16494 QUIT hasn't been provided.
16495
164962007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
16497
16498 * callproc.c (child_setup, getenv_internal): Use the
16499 display-environment-variable and term-environment-variable frame params.
16500 (set_initial_environment): Initialise Vprocess_environment.
16501
16502 * config.in: Disable multi-keyboard support on a mac.
16503
16504 * frame.c (Qterm_environment_variable)
16505 (Qdisplay_environment_variable): New variables.
16506 (syms_of_frame): Intern and staticpro them.
16507 (Fmake_terminal_frame): Disable output method test.
16508
16509 * frame.h: Declare them here.
16510
16511 * macfns.c (x_set_mouse_color): Get rif from the frame.
16512 (x_set_tool_bar_lines): Don't use updating_frame.
16513 (mac_window): Add 2 new parameters for consistency with other systems.
16514 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
16515 frame parameters following what is done in X11 and w32. Don't use
16516 FRAME_MAC_DISPLAY_INFO.
16517 (Fx_open_connection, start_hourglass): Remove window-system check.
16518 (x_create_tip_frame): Get the keyboard from the terminal.
16519
16520 * macmenu.c: Reorder includes.
16521 (Fx_popup_menu): Use terminal specific mouse_position_hook.
16522
16523 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
16524 terminal parameter.
16525 (x_clear_frame): Add a frame parameter.
16526 (note_mouse_movement): Get rif from the frame.
16527 (mac_term_init): Initialize the terminal.
16528 (mac_initialize): Make static and move terminal initialization ...
16529 (mac_create_terminal): ... to this new function.
16530
16531 * macterm.h (struct mac_display_info): Add terminal.
16532 (mac_initialize): Delete declaration.
16533
16534 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
16535
16536 * sysdep.c: Comment out text after #endif.
16537
16538 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
16539 is defined. Better initialize ttys in windows. Use terminal
16540 specific mouse_position_hook.
16541
16542 * termhooks.h (union display_info): Add mac_display_info.
16543
16544 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
16545 Set the default minibuffer frame, window_system and the rest of the
16546 frame parameters following what is done in X11.
16547
16548 * w32term.c (w32_initialize): Make static.
16549
16550 * xselect.c (x_handle_selection_clear): Only access
16551 terminal->kboard when MULTI_KBOARD is defined.
16552
16553 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
16554 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
16555
165562007-08-29 Jason Rumney <jasonr@gnu.org>
16557
16558 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
16559 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
16560
16561 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
16562 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
16563
16564 * keyboard.c (restore_kboard_configuration): Only define when
16565 MULTI_KBOARD defined.
16566
16567 * makefile.w32-in: Update dependancies from Makefile.in.
16568 (OBJ1): Add terminal.$(O)
16569
16570 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
16571 Don't define function body.
16572 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
16573
16574 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
16575
16576 * w32.c (request_sigio, unrequest_sigio): Remove.
16577
16578 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
16579 (w32con_clear_frame, w32con_clear_end_of_line)
16580 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
16581 (w32con_delete_glyphs, w32con_set_terminal_window)
16582 (scroll_line, w32_sys_ring_bell): Add frame arg.
16583 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
16584 Add terminal arg.
16585 (PICK_FRAME): Remove.
16586 (w32con_write_glyphs): Use frame specific terminal coding.
16587 (one_and_only_w32cons): New global variable.
16588 (initialize_w32_display): Use it for storing hooks.
16589 (create_w32cons_output): New function.
16590
16591 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
16592 arg a frame.
16593
16594 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
16595 Set window_system.
16596 (x_set_tool_bar_lines): Don't use updating_frame.
16597 (Fx_create_frame): Set terminal and ref count.
16598 (Fx_open_connection): Remove window-system check.
16599
16600 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
16601
16602 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
16603 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
16604 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
16605 Add frame arg.
16606 (x_delete_terminal, w32_create_terminal): New functions.
16607 (w32_term_init): Create a terminal.
16608 (w32_initialize): Move terminal specific initialization to
16609 w32_create_terminal.
16610
16611 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
16612 (w32_clear_rect, w32_clear_area): Use background from frame.
16613 (w32_display_info): Add terminal.
16614 (w32_sys_ring_bell, x_delete_display): Declare here.
16615
16616 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
16617
16618 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
16619
166202007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
16621
16622 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
16623 Fix get_named_tty calls for the controlling tty.
16624
166252007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
16626
16627 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
16628
166292007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
16630
16631 * term.c (tty_insert_glyphs): Add missing first parameter.
16632
166332007-08-29 Károly Lőrentey <karoly@lorentey.hu>
16634
16635 * buffer.c (Fbuffer_list, Fbury_buffer):
16636 Take frame->buried_buffer_list into account.
16637
16638 * cm.c (current_tty): New variable, for cmputc().
16639 (cmputc): Use it.
16640 (cmcheckmagic): Add tty parameter, look up terminal streams there.
16641 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
16642 (cmgoto): Add tty parameter. Pass it on to calccost().
16643 Use emacs_tputs() instead of tputs().
16644
16645 * cm.h (emacs_tputs): New macro to set current_tty, and then call
16646 tputs().
16647 (current_tty): New variable, for cmputc().
16648 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
16649
16650 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
16651 (internal_condition_case, internal_condition_case_1)
16652 (internal_condition_case_2): Don't abort when x_catching_errors.
16653
16654 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
16655 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
16656 prevent crashes caused by bogus longjmps in read_char.
16657
16658 * keymap.h (Fset_keymap_parent): Add EXFUN.
16659
16660 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
16661 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
16662 Remove redundant definition.
16663
16664 * macfns.c (x_set_mouse_color, x_make_gc):
16665 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16666
16667 * w32term.c (x_free_frame_resources):
16668 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16669 (w32_initialize): Use the accessor macros for terminal characteristics.
16670
16671 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
16672 Use the accessor macros for terminal characteristics.
16673 * msdos.c (internal_terminal_init): Use the accessor macros for
16674 terminal characteristics.
16675 (ScreenVisualBell, internal_terminal_init):
16676 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16677
16678 * termopts.h (no_redraw_on_reenter): Declare.
16679
16680 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
16681 (mark_terminals, mark_ttys): Declare.
16682 (Fgarbage_collect): Call them.
16683 (mark_object): Mark buried_buffer_list.
16684
16685 * prefix-args.c: Include stdlib.h for exit.
16686
16687 * syssignal.h: Add comment.
16688
16689 * indent.c: Include stdio.h.
16690
16691 * window.h (Vinitial_window_system): Declare.
16692 (Vwindow_system): Delete declaration.
16693
16694 * fontset.c (Finternal_char_font): Use FRAME_RIF.
16695
16696 * image.c (lookup_image): Don't initialize `c' until the xasserts
16697 have been run.
16698
16699 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
16700 FRAME_FOREGROUND_PIXEL.
16701
16702 * print.c (print_preprocess): Don't lose print_depth levels while
16703 iterating.
16704
16705 * widget.c (update_from_various_frame_slots):
16706 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16707
16708 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
16709 frames.
16710 (window_internal_height): Remove bogus make_number call.
16711 (init_window_once): Call make_terminal_frame with two zero parameters.
16712
16713 * fileio.c (Fread_file_name): Update comment.
16714
16715 * callint.c (Fcall_interactively):
16716 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
16717 Make sure it is correctly unwound.
16718
16719 * xsmfns.c (x_session_close): New function.
16720
16721 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
16722 Delete declarations.
16723
16724 * xterm.h: Remove declaration for x_fully_uncatch_errors.
16725 (x_output): Remove background_pixel and foreground_pixel fields.
16726 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
16727 (x_delete_device, x_session_close): Declare.
16728
16729 * lread.c: Include setjmp.h. Update declaration of `read_char'.
16730 (read_filtered_event): Call `read_char' with a local
16731 `wrong_kboard_jmpbuf'.
16732
16733 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
16734 Don't call single_kboard_state. Use FRAME_RIF.
16735
16736 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
16737 systems.
16738
16739 * lisp.h (set_process_environment): Rename to `set_global_environment'.
16740 (Fframe_with_environment, Fset_input_meta_mode)
16741 (Fset_quit_char): EXFUN.
16742 (x_create_device, tty_output, terminal, tty_display_info): Declare.
16743 (init_sys_modes, reset_sys_modes): Update prototypes.
16744 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
16745
16746 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
16747 Vlocal_key_translation_map, and Vkeyboard_translate_table.
16748 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
16749 Delete declarations.
16750 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
16751 (temporarily_switch_to_single_kboard, tty_read_avail_input):
16752 New declarations.
16753
16754 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
16755 already does that during init_display(). Call syms_of_keymap
16756 before syms_of_keyboard. Call `syms_of_terminal'.
16757 Call set_initial_environment, not set_process_environment.
16758 (shut_down_emacs): Call reset_all_sys_modes() instead of
16759 reset_sys_modes().
16760
16761 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
16762 (internal_resolve_face_name, resolve_face_name_error): New functions.
16763 (resolve_face_name): Protect against loops and errors thrown by Fget.
16764 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
16765 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
16766
16767 * scroll.c: Replace CURTTY() with local variables throughout the
16768 file (where applicable).
16769 (calculate_scrolling, calculate_direct_scrolling)
16770 (scrolling_1, scroll_cost): Use the accessor macros for terminal
16771 characteristics.
16772
16773 * keymap.c (Vfunction_key_map): Remove.
16774 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
16775 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
16776 (Vkey_translation_map): Remove.
16777 (syms_of_keymap): Remove DEFVAR for key-translation-map.
16778 (Fdescribe_buffer_bindings)
16779 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
16780 Update for terminal-local key-translation-map.
16781
16782 * Makefile.in (callproc.o): Update dependencies.
16783 (lisp, shortlisp): Add termdev.elc.
16784 (obj): Add terminal.o.
16785 (terminal.o): Add dependencies.
16786 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
16787 (data.o, fns.o): Add termhooks.h dependency.
16788 (SOME_MACHINE_LISP): Add dnd.elc.
16789 (minibuf.o): Fix typo.
16790 Update dependencies.
16791
16792 * data.c (do_symval_forwarding, store_symval_forwarding)
16793 (find_symbol_value): Use the selected frame's keyboard, not
16794 current_kboard.
16795
16796 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
16797 Vwindow_system.
16798
16799 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
16800 Fmenu_bar_open.
16801 (syms_of_xmenu): Update defsubr.
16802 (mouse_position_for_popup, Fx_popup_menu)
16803 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
16804 (set_frame_menubar, free_frame_menubar)
b97439ce 16805 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
16806 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
16807 an X frame.
16808
16809 * xselect.c (x_own_selection): Abort if not an X frame.
16810 (some_frame_on_display): Check if it is an X frame.
16811 (x_handle_selection_clear): Deal with MULTI_KBOARD.
16812
16813 * coding.c: Include frame.h and termhooks.h.
16814 (terminal_coding, keyboard_coding): Delete.
16815 (Fset_terminal_coding_system_internal)
16816 (Fset_keyboard_coding_system_internal)
16817 (Fkeyboard_coding_system)
16818 (Fterminal_coding_system): Add a terminal parameter.
16819 Get terminal_coding from the terminal.
16820 (init_coding_once): Don't call setup_coding_system here.
16821
16822 * dispextern.h (set_scroll_region, turn_off_insert)
16823 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
16824 (tty_clear_end_of_line, tty_setup_colors)
16825 (delete_tty, updating_frame)
16826 (produce_special_glyphs, produce_glyphs, write_glyphs)
16827 (insert_glyphs): Remove.
16828 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
16829 (tty_turn_off_highlight, get_tty_size): Add declaration.
16830 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
16831
16832 * frame.h (enum output_method): Add output_initial.
16833 (struct x_output): Delete.
16834 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
16835 Access foreground_pixel and background_pixel directly from the frame.
16836 (tty_display): Delete.
16837 (struct frame): Add buried_buffer_list, foreground_pixel,
16838 background_pixel and terminal. Delete kboard.
16839 (union output_data): Add tty.
16840 (FRAME_KBOARD): Get the kboard from the terminal.
16841 (FRAME_INITIAL_P): New macro.
16842 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
16843 (Qterm_environment_variable, Qdisplay_environment_variable)
16844 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
16845 New declarations.
16846
16847 * termchar.h (tty_output, tty_display_info): New structures.
16848 (tty_list): Declare.
16849 (FRAME_TTY, CURTTY): New macros.
16850 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
16851 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
16852 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
16853 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
16854
16855 * callproc.c: Include frame.h and termhooks.h, for terminal
16856 parameters.
16857 (add_env): New function.
16858 (child_setup): Use it.
16859 (child_setup, getenv_internal): Handle the new Vprocess_environment.
16860 (getenv_internal): Fix get_terminal_param call.
16861 (Fgetenv_internal, egetenv): Update doc.
16862 (syms_of_callproc): Initialize Vprocess_environment to nil.
16863 Register and initialize them. Remove obsolete defvars. Update doc
16864 strings.
16865 (child_setup): Handle Vlocal_environment_variables.
16866 (getenv_internal): Add terminal parameter.
16867 Handle Vlocal_environment_variables.
16868 (Fgetenv_internal): Add terminal parameter.
16869 (child_setup, getenv_internal, Fgetenv_internal): Store the local
16870 environment in a frame (not terminal) parameter. Update doc strings.
16871 (set_initial_environment): Rename from set_global_environment.
16872 Store Emacs environment in initial frame parameter.
16873
16874 * xdisp.c (redisplay_internal): Update references to
16875 `previous_terminal_frame'.
16876 (display_mode_line, Fformat_mode_line): Replace calls to
16877 `push_frame_kboard' with `push_kboard'.
16878 (get_glyph_string_clip_rects): Add extra parentheses and
16879 braces to prevent compiler warnings.
16880 (calc_pixel_width_or_height): Add xassert to check that the
16881 frame is alive. Don't call `lookup_image' on a termcap frame.
16882 (message2_nolog, message3_nolog, redisplay_internal)
16883 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
16884 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
16885 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
16886 (Fx_display_pixel_width, Fx_display_pixel_height)
16887 (Fx_display_planes, Fx_display_color_cells)
16888 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
16889 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
16890 (Fx_display_backing_store, Fx_display_visual_class)
16891 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
16892 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
16893
16894 * xfns.c (x_set_foreground_color x_set_background_color)
16895 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
16896 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16897 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
16898 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
16899 terminal that is being deleted.
16900 (Fx_create_frame): Use `store_frame_param' to set `window-system'
16901 frame parameter, and make sure it overrides any user-supplied setting.
16902 (Fx_close_connection, Fx_synchronize): Unify argument names with
16903 the rest of the DEFUNs.
16904
16905 * dispnew.c (Fsend_string_to_terminal): Update call to
16906 `get_tty_terminal'.
16907 (Fredraw_frame, Fsend_string_to_terminal)
16908 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
16909 FRAME_TERMCAP_P and FRAME_TTY.
16910 (window_change_signal): Don't believe width/height values that are
16911 impossibly small.
16912 (Vinitial_window_system): Rename from Vwindow_system.
16913 (termscript, Wcm, rif): Delete.
16914
16915 * termhooks.h (struct terminal): New struct containing the
16916 previously global text display hooks and new members NAME,
16917 DELETED and PARAM_ALIST.
16918 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
16919 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
16920 (FRAME_RIF): New macros.
16921 (get_terminal_param, get_device): New declarations.
16922 (termscript): Delete declaration.
16923
16924 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
16925 (XTflash, x_free_frame_resources, x_scroll_bar_create)
16926 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
16927 FRAME_FOREGROUND_PIXEL.
16928 (x_fully_uncatch_errors): Disable definition.
16929 (x_scroll_bar_expose): Fix reference to foreground pixel.
16930 (XTread_socket): Disable loop on all X displays.
16931 (x_delete_terminal): Don't set terminal->deleted and let
16932 delete_terminal delete the frames on the terminal.
16933 (x_delete_display): Doc update to reflect changes in
16934 delete_terminal.
16935 (x_display_info) <terminal>: Move member earlier in the struct.
16936 (deleting_tty): Remove old variable.
16937 (Fsuspend_tty): Call clear_tty_hooks.
16938 (Fresume_tty, init_tty): Call set_tty_hooks.
16939 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
16940 errors on X frames.
16941 (x_catch_errors_unwind): Abort if x_error_message is NULL.
16942 (handle_one_xevent): Initialize `f' to NULL.
16943 (x_delete_terminal, x_create_terminal): New functions.
16944 (XTset_terminal_modes, XTreset_terminal_modes)
16945 (XTread_socket, x_connection_closed, x_term_init)
16946 (x_term_init, x_delete_display): Add terminal parameter.
16947 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
16948 X connections.
16949
16950 * frame.c: Include termchar.h.
16951 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
16952 (Qwindow_system, Qenvironment, Qterm_environment_variable)
16953 (Qdisplay_environment_variable): New vars.
16954 (Fframep): Deal with output_initial.
16955 (Fframe-live-p): Doc fix.
16956 (Fwindow-system): New function.
16957 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
16958 (make_terminal_frame): Don't create frames on a terminal that is
16959 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16960 (store_frame_param): Check for found_for_frame before calling XFRAME.
16961 (Fmake_terminal_frame): Handle NULL tty names correctly.
16962 (syms_of_frame): Enhance doc string of `default-frame-alist'.
16963 (Fdelete_frame): Remove unused variable `count'. Don't allow other
16964 frames to refer to a deleted frame in their 'environment parameter.
16965 (Fframe_with_environment): New function.
16966 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
16967 (get_future_frame_param): New function.
16968 (Fmake_terminal_frame): Use it.
16969 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
16970
16971 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
16972 * sysdep.c (reset_sys_modes): Update for renames.
16973
16974 * keyboard.c (tty_read_avail_input): New function.
16975 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
16976 (syms_of_keyboard): Defsubr them.
16977 (Fset_input_meta_mode, Fset_quit_char): New functions.
16978 (Fset_input_mode): Split to above functions.
16979 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
16980 parameter. Use it in call to `read_char'.
16981 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
16982 Set wrong_kboard_jmpbuf correctly in recursive calls.
16983 Use current_kboard to access Vkeyboard_translate_table.
16984 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
16985 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
16986 Update longjmp invocations. Remember the original current_kboard,
16987 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
16988 changes it. Comment out unnecessary calls to
16989 `record_single_kboard_state' and `any_kboard_state'.
16990 Update recursive calls.
16991 (wrong_kboard_jmpbuf): Remove global variable.
16992 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
16993 Handle deleted interrupted_kboards correctly; that is a legal
16994 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
16995 and read_char calls. Abort if interrupted_kboard died in read_char.
16996 (any_kboard_state, single_kboard_state)
16997 (push_frame_kboard): Remove function.
16998 (pop_kboard): Switch out of single_kboard mode if the kboard has
16999 been deleted. Remove unused variable. Help debugging by not
17000 changing current_kboard unnecessarily. Set current_kboard to the
17001 kboard of the selected frame when the stored kboard object has
17002 been deleted before pop_kboard.
17003 (temporarily_switch_to_single_kboard): Change first parameter to a
17004 frame pointer. Throw an error when caller wants to change kboards
17005 while in single_kboard mode. Don't push_kboard if we weren't in
17006 single kboard state. Don't pop_kboard if we popped into any
17007 kboard state.
17008 (restore_kboard_configuration): Abort if pop_kboard changed the
17009 kboard in single_kboard mode. Call pop_kboard only after setting
17010 up single_kboard mode.
17011 (Frecursive_edit): Switch to single_kboard mode only in nested
17012 command loops.
17013 (cmd_error, command_loop, command_loop_1, timer_check):
17014 Comment out unnecessary call to `any_kboard_state' and
17015 `record_single_kboard_state'.
17016 (delete_kboard): Exit single_kboard mode if we have just deleted
17017 that kboard. Use FRAME_KBOARD.
17018 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
17019 `fatal_error_signal'.
17020 (record_single_kboard_state): Don't push_kboard if we weren't in
17021 single kboard state. Don't pop_kboard if we popped into any
17022 kboard state.
17023 (push_frame_kboard): Rename to push_kboard.
17024 (kbd_buffer_get_event): Use FRAME_TERMINAL.
17025 (read_avail_input): Read input from all terminals.
17026 (mark_kboards): Also mark Vkeyboard_translate_table.
17027 (kbd_buffer_store_event_hold): Simplify condition.
17028 (read_key_sequence): Reinitialize fkey and keytran at each replay.
17029 (Vkeyboard_translate_table): Move to struct kboard.
17030 (init_kboard): Initialize Vkeyboard_translate_table.
17031 (syms_of_keyboard): Use DEFVAR_KBOARD to define
17032 Vkeyboard_translate_table. Update doc strings. Update docs of
17033 local-function-key-map and function-key-map.
17034
17035 * terminal.c: New file.
17036
17037 * term.c: Include errno.h.
17038 (Vring_bell_function, device_list, initial_device)
17039 (next_device_id, ring_bell, update_begin, update_end)
17040 (set_terminal_window, cursor_to, raw_cursor_to)
17041 (clear_to_end, clear_frame, clear_end_of_line)
17042 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
17043 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
17044 (syms_of_term): Move their initialization to terminal.c.
17045 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
17046 (Ftty_display_color_cells)
17047 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
17048 (clear_tty_hooks, set_tty_hooks)
17049 (init_tty, maybe_fatal): New functions.
17050 (Ftty_type): Return nil if terminal is not on a tty instead of
17051 throwing an error. Doc update.
17052 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
17053 Doc update. Initialize new subrs and variables.
17054 (delete_tty): Use terminal->deleted.
17055 (tty_set_terminal_modes): Rename from set_terminal_modes.
17056 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
17057 (set_scroll_region): Rename to `tty_set_scroll_region'.
17058 (turn_on_insert): Rename to `tty_turn_on_insert'.
17059 (turn_off_insert): Rename to `tty_turn_off_insert'.
17060 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
17061 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
17062 (toggle_highligh): Rename to `tty_toggle_highlight'.
17063 (background_highlight): Rename to `tty_background_highlight'.
17064 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
17065 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
17066 (tty_set_scroll_region, tty_background_highlight)
17067 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
17068 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
17069 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
17070 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
17071 Add static modifier.
17072 (tty_reset_terminal_modes, tty_set_terminal_window)
17073 (tty_set_scroll_region, tty_background_highlight)
17074 (tty_highlight_if_desired, tty_cursor_to)
17075 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
17076 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
17077 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
17078 renames.
17079
170802007-08-28 Jan Djärv <jan.h.d@swipnet.se>
17081
17082 * keyboard.c: Qrtl is new.
17083 (parse_tool_bar_item): Handle :rtl keyword.
17084 (syms_of_keyboard): Intern :rtl keyword.
17085
17086 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
17087
17088 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
17089 so no Lisp code is executed.
17090 (file_for_image, find_rtl_image): New functions.
17091 (xg_get_image_for_pixmap): Use file_for_image.
17092 (update_frame_tool_bar): If direction is RTL, use RTL image if
17093 defined. Use Gtk stock images if defined.
17094
170952007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17096
17097 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
17098 for nonexistent or zero-width glyph in composition glyph.
17099
171002007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
17101
17102 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
17103
17104 * xdisp.c (Finvisible_p): New function.
17105 (syms_of_xdisp): defsubr it.
17106
171072007-08-24 Juanma Barranquero <lekktu@gmail.com>
17108
17109 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
17110 Doc fixes.
17111
171122007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17113
17114 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
17115
171162007-08-24 Martin Rudalics <rudalics@gmx.at>
17117
17118 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
17119 whether decoding has modified buffer contents.
17120
171212007-08-24 Jason Rumney <jasonr@gnu.org>
17122
17123 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
17124 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
17125 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
17126 (init_svg_functions) [HAVE_NTGUI]: New function.
17127 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
17128 (svg_load_image): Use them.
17129 (svg_load_image) [HAVE_NTGUI]: Implement background.
17130
171312007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17132
17133 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
17134 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
17135 (LIBX): Remove @RSVG_LIBS@.
17136 (LIBES): Add $(RSVG_LIBS).
17137
17138 * image.c (svg_load_image): Blend with specified background if exists.
17139 Use IMAGE_BACKGROUND. Add Mac OS Support.
17140
17141 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
17142 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
17143 Remove macros.
17144 [MAC_OSX] (socket_callback): Do nothing.
17145 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
17146 ReceiveNextEvent.
17147 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
17148 socket_callback.
17149 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
17150
171512007-08-22 Glenn Morris <rgm@gnu.org>
17152
17153 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
17154
171552007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
17156
17157 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
17158
17159 * image.c: Add support for SVG images. Some additional comments
17160 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
17161 (svg_image_p): New function to test for SVG image.
17162 (svg_load): New function to load SVG image.
17163 (svg_load_image): New function, helper for svg_load.
17164 (Qsvg): New Lisp_object.
17165 (svg_keyword_index): New enum.
17166 (svg_format): New static `image_keyword' struct.
17167 (svg_type): New static `image_type' struct.
17168 (librsvg/rsvg.h): Include it.
17169
171702007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
17171
17172 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
17173
171742007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
17175
17176 * lread.c (Qold_style_backquotes): New var.
17177 (syms_of_lread): Init and staticpro it.
17178 (load_warn_old_style_backquotes): New fun.
17179 (Fload): Use them to warn about old style backquotes.
17180 (end_of_file_error, Fload): Remove unused vars.
17181
17182 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
17183
17184 * lread.c (Vold_style_backquotes): New var.
17185 (syms_of_lread): Init and export it to Elisp.
17186 (read1): Set it when we find an old-style (back)quote.
17187
171882007-08-22 Jason Rumney <jasonr@gnu.org>
17189
17190 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
17191
171922007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
17193
17194 * puresize.h (BASE_PURESIZE): Increase to 1140000.
17195
171962007-08-19 Richard Stallman <rms@gnu.org>
17197
17198 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
17199
172002007-08-19 Andreas Schwab <schwab@suse.de>
17201
17202 * alloc.c (pure): Round PURESIZE up.
17203
172042007-08-17 Jan Djärv <jan.h.d@swipnet.se>
17205
17206 * xterm.c (handle_one_xevent): Remove check that mouse click is in
17207 active frame.
17208
172092007-08-16 Richard Stallman <rms@gnu.org>
17210
17211 * eval.c (Fcommandp): Add parens to clarify.
17212
17213 * minibuf.c (Fall_completions): Use enum for type of table.
17214
17215 * emacs.c (USAGE2): Improve text.
17216
172172007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
17218
17219 * term.c (tty_default_color_capabilities): Declare static
17220 variables in file scope, to avoid HPUX compiler problem.
17221
172222007-08-13 Jan Djärv <jan.h.d@swipnet.se>
17223
17224 * gtkutil.c (update_frame_tool_bar): Use -1 as index
17225 to gtk_toolbar_insert.
17226
172272007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
17228
17229 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
17230
17231 * insdel.c (reset_var_on_error): New fun.
17232 (signal_before_change, signal_after_change):
17233 Use it to reset (after|before)-change-functions to nil in case of error.
17234 Bind inhibit-modification-hooks to t.
17235 Don't bind (after|before)-change-functions to nil while they run.
17236
172372007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17238
17239 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
17240 filling pixmap with stippled background.
17241
172422007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17243
17244 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
17245 Don't use invisible frame as parent window for repositioning.
17246
172472007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
17248
17249 * print.c (new_backquote_output): Rename from old_backquote_output.
17250 (print): Inverse its logic (according to its name) so as to match the
17251 behavior of new_backquote_flag in lread.c.
17252
172532007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17254
17255 * gmalloc.c (posix_memalign): New function.
17256
17257 * macterm.c (frame_highlight, frame_unhighlight): Don't call
17258 ActivateControl/DeactivateControl here.
17259 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
17260 frame-notice-user-settings is non-nil.
17261 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
17262 for kEventParamFMFontStyle.
17263 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
17264 mac_pass_command_to_system and mac_pass_control_to_system here.
17265 (XTread_socket): Call ActivateControl/DeactivateControl here.
17266 (XTread_socket) [TARGET_API_MAC_CARBON]:
17267 Check mac_pass_command_to_system and mac_pass_control_to_system here.
17268 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
17269 for window repositioning.
17270
172712007-08-08 Glenn Morris <rgm@gnu.org>
17272
17273 * Replace `iff' in doc-strings and comments.
17274
172752007-08-07 Chong Yidong <cyd@stupidchicken.com>
17276
17277 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
17278
172792007-08-07 Martin Rudalics <rudalics@gmx.at>
17280
17281 * fileio.c (Finsert_file_contents): Run format-decode and
17282 after_insert_file_functions on entire buffer when REPLACE is
17283 non-nil and inhibit modification_hooks and point_motion_hooks.
17284 For consistency, run after_insert_file_functions iff something
17285 got inserted. Move signal_after_change and update_compositions
17286 after code running after_insert_file_functions. Make sure that
17287 undo_list doesn't record intermediate steps of the decoding process.
17288
172892007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17290
17291 * emacs.c (main)
17292 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
17293 Call malloc_enable_thread on interactive startup.
17294
17295 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
17296 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
17297 [USE_PTHREAD]: Conditionalize with it.
17298 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
17299 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
17300 New functions.
17301
173022007-08-06 Chong Yidong <cyd@stupidchicken.com>
17303
17304 * xdisp.c (redisplay_window): When restoring original buffer
17305 position, make sure it is still valid.
17306
17307 * image.c (png_load): Ignore png-supplied background color.
17308
173092007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17310
17311 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
17312 Use kCFAbsoluteTimeIntervalSince1970.
17313
17314 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
17315 New variable.
17316 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
17317 event loop should be quit.
17318 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
17319 Quit dialog event loop if quit_dialog_event_loop is set.
17320
17321 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
17322 (Selection): New typedef. Use instead of ScrapRef.
17323 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
17324 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
17325 (mac_clear_selection): Rename from clear_scrap.
17326 (get_flavor_type_from_symbol): New argument SEL and subsume function of
17327 scrap_has_target_type. All uses changed.
17328 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
17329 (mac_selection_has_target_p): New functions.
17330 (mac_put_selection_value): Rename from put_scrap_string.
17331 (mac_get_selection_value): Rename from get_scrap_string.
17332 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
17333 (put_scrap_private_timestamp, scrap_has_target_type)
17334 (get_scrap_private_timestamp): Remove functions.
17335 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
17336 (x_own_selection, x_get_local_selection):
17337 Use mac_valid_selection_value_p.
17338 (x_own_selection): Don't use put_scrap_private_timestamp.
17339 Record OWNERSHIP-INFO into Vselection_alist instead.
17340 (x_get_local_selection): Don't check type if request is local.
17341 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
17342 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
17343
173442007-08-04 Jan Djärv <jan.h.d@swipnet.se>
17345
17346 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
17347 add comment explaining why.
17348
173492007-08-03 Richard Stallman <rms@gnu.org>
17350
17351 * fileio.c (Fvisited_file_modtime): Use make_time.
17352
173532007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
17354
17355 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
17356 build.
17357
173582007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
17359
17360 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
17361
173622007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
17363
17364 * puresize.h (BASE_PURESIZE): Increase to 1130000.
17365
173662007-07-30 Richard Stallman <rms@gnu.org>
17367
17368 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
17369
173702007-07-29 Jan Djärv <jan.h.d@swipnet.se>
17371
17372 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
17373
173742007-07-28 Nick Roberts <nickrob@snap.net.nz>
17375
17376 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
17377 remote default-directory.
17378
17379 * buffer.c (mode-line-format): Update doc string.
17380
173812007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17382
17383 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
17384 scroll bar gap.
17385 (x_scroll_bar_create): Set bar->fringe_extended_p.
17386 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
17387 on frame edge. Check fringe background extension. Don't clear
17388 extended fringe background area.
17389
17390 * w32term.h (struct scroll_bar): New member fringe_extended_p.
17391 (w32_fill_area): Enclose multiple statements with do ... while (0).
17392
17393 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
17394 Extend fringe background to scroll bar gap.
17395 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
17396 Set bar->fringe_extended_p.
17397 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
17398 Put leftmost/rightmost scroll bars on frame edge. Check fringe
17399 background extension. Don't clear extended fringe background area.
17400
17401 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
17402 New member fringe_extended_p.
17403
174042007-07-25 Glenn Morris <rgm@gnu.org>
17405
17406 * Relicense all FSF files to GPLv3 or later.
17407
17408 * COPYING: Switch to GPLv3.
17409
174102007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
17411
17412 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
17413
17414 * data.c (Finteractive_form): Check for the presence of an
17415 `interactive-form' symbol property more thoroughly.
17416
17417 * data.c (Finteractive_form): Use an `interactive-form' property if
17418 present, analogous to the function-documentation property.
17419
174202007-07-24 Jason Rumney <jasonr@gnu.org>
17421
17422 * w32fns.c (x_real_positions): Get real position from OS instead of
17423 calculating it.
17424
174252007-07-23 Jason Rumney <jasonr@gnu.org>
17426
17427 * filelock.c (current_lock_owner): Allow for @ sign in username.
17428
174292007-07-22 Nick Roberts <nickrob@snap.net.nz>
17430
17431 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
17432 remote default-directory.
17433
17434 * buffer.c (mode-line-format): Describe above case in doc string.
17435
174362007-07-20 Eli Zaretskii <eliz@gnu.org>
17437
17438 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
17439 Define if not defined.
17440
174412007-07-18 Jason Rumney <jasonr@gnu.org>
17442
17443 * w32proc.c (w32_executable_type): Handle 64 bit executables.
17444
174452007-07-18 Richard Stallman <rms@gnu.org>
17446
17447 * data.c (Fsetq_default): Doc fix.
17448
17449 * eval.c (Fsetq): Doc fix.
17450
174512007-07-18 Juanma Barranquero <lekktu@gmail.com>
17452
17453 * coding.c (Ffind_operation_coding_system):
17454 * eval.c (For, Fand): Doc fixes.
17455 Reported by Johan Bockgård.
17456
174572007-07-18 Jan Djärv <jan.h.d@swipnet.se>
17458
17459 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
17460
17461 * xterm.h: Declare x_ewmh_activate_frame.
17462
17463 * xterm.c (x_ewmh_activate_frame): New function.
17464 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
17465
174662007-07-17 Martin Rudalics <rudalics@gmx.at>
17467
17468 * window.c (Fdisplay_buffer): If largest or LRU window is the
17469 only window, split it even if it is not eligible for splitting.
17470 This restores the original behavior broken by the 2007-07-15
17471 change.
17472
174732007-07-17 Glenn Morris <rgm@gnu.org>
17474
17475 * abbrev.c (abbrev_check_chars): New function.
17476 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
17477 Call abbrev_check_chars to check abbrev characters are word
17478 constituents. Doc fix.
17479
174802007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
17481
17482 * process.c (Fstart_process, Fmake_network_process)
17483 (read_process_output): Fix up last changes.
17484
174852007-07-16 Eli Zaretskii <eliz@gnu.org>
17486
17487 * makefile.w32-in (clean): Don't delete *~.
17488
174892007-07-16 Andreas Schwab <schwab@suse.de>
17490
17491 * window.c (Fdisplay_buffer): Use NILP.
17492 (Fset_window_scroll_bars): Likewise.
17493
174942007-07-15 Martin Rudalics <rudalics@gmx.at>
17495
17496 * window.c (window_min_size_2): New function.
17497 (window_min_size_1, size_window, Fdisplay_buffer)
17498 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
17499 windows without mode- or header-lines when window-min-height is
17500 too small.
17501 (size_window): Reset nodelete_p after testing it, following an
17502 earlier note by Kim F. Storm.
17503 (display_buffer): Do not set split_height_threshold to twice the
17504 value of window_min_height to avoid changing the value of a
17505 customizable variable. Rather explicitly check whether the
17506 height of the window that shall be splitted is at least as large
17507 as split_height_threshold.
17508 (Fwindow_full_width_p): New defun.
17509 (syms_of_window): Defsubr it.
17510
17511 * window.h: Add EXFUN for Fwindow_full_width_p.
17512
175132007-07-14 Jason Rumney <jasonr@gnu.org>
17514
17515 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
17516
175172007-07-14 Richard Stallman <rms@gnu.org>
17518
17519 * eval.c (maybe_call_debugger): New function.
17520 (find_handler_clause): Use maybe_call_debugger.
17521 Call it when the handler says `debug'.
17522 Eliminate DEBUGGER_VALUE_PTR.
17523 (Fsignal): Eliminate debugger_value.
17524 (Qdebug): New variable.
17525 (syms_of_eval): Initialize it.
17526
175272007-07-14 Juanma Barranquero <lekktu@gmail.com>
17528
17529 * eval.c (Fprogn):
17530 * keyboard.c (Ftrack_mouse):
17531 * print.c (Fwith_output_to_temp_buffer):
17532 * window.c (Fsave_window_excursion): Doc fix.
17533
175342007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
17535
17536 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
17537
175382007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
17539
17540 * process.h (struct Lisp_Process): Turn slots infd, outfd,
17541 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
17542 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
17543 read_output_delay, and read_output_skip from Lisp_Objects to ints.
17544 Remove unused encoding_carryover.
17545 * process.c: Adjust all functions accordingly.
17546
175472007-07-12 Richard Stallman <rms@gnu.org>
17548
17549 * term.c: Include unistd.h only if HAVE_UNISTD_H.
17550
175512007-07-11 Jason Rumney <jasonr@gnu.org>
17552
17553 * makefile.w32-in (LIBS): Include OLE32.
17554
17555 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
17556 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
17557
175582007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
17559
17560 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
17561 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
17562 from a Lisp_Object into a bare pointer.
17563 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
17564 Adjust the code correspondingly.
17565
17566 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
17567
17568 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
17569 (term_show_mouse_face): Remove unused var `j'.
17570 (handle_one_term_event): Remove unused vars `i' and `j'.
17571 Don't cast return value of ttyname since it's not necessary.
17572
175732007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
17574
17575 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
17576 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
17577
17578 * fns.c (map_char_table): Use an array of int for `indices' rather than
17579 an array of Lisp_Objects (which are only ever integers anyway).
17580 (Fmap_char_table): Update caller.
17581 * lisp.h: Update prototype.
17582 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
17583 * fontset.c (Ffontset_info):
17584 * casetab.c (set_case_table): Update callers.
17585
17586 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
17587
17588 * keymap.c (struct accessible_keymaps_data)
17589 (struct where_is_internal_data): New structures.
17590 (accessible_keymaps_1, where_is_internal_1): Use them to change
17591 interface to adhere to the one used by map_keymap.
17592 (Faccessible_keymaps, where_is_internal): Use map_keymap.
17593 (accessible_keymaps_char_table, where_is_internal_2): Remove.
17594
17595 * keymap.h (map_keymap_function_t): More informative prototype.
17596
175972007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
17598
17599 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
17600 (looking_at_1): Don't change search_regs and last_thing_searched
17601 if `inhibit-changing-match-data' is non-nil.
17602 (string_match_1, search_buffer, set_search_regs): Likewise.
17603 (syms_of_search): Add Lisp level definition for
17604 `inhibit-changing-match-data' and set it to nil.
17605 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
17606 start and end of the match, instead of using values in search_regs.
17607
176082007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
17609
17610 * minibuf.c (Fcompleting_read): New value `confirm-only'
17611 for `require-match'.
17612
176132007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
17614
17615 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
17616 part of the 2007-06-27 change to syms_of_fileio.
17617
176182007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17619
17620 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
17621 Check WINDOWP before using XWINDOW. Consolidate return statements.
17622
176232007-06-27 Richard Stallman <rms@gnu.org>
17624
17625 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
17626
176272007-06-27 Juanma Barranquero <lekktu@gmail.com>
17628
17629 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
17630
176312007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17632
17633 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
17634 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
17635 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
17636 (_free_internal, memalign): Use them.
17637 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
17638 Initialize to PTHREAD_MUTEX_INITIALIZER.
17639 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
17640 (morecore_nolock): Rename from morecore. All uses changed.
17641 Use only nolock versions of internal allocation functions.
17642 (_malloc_internal_nolock, _realloc_internal_nolock)
17643 (_free_internal_nolock): New functions created from
17644 _malloc_internal, _realloc_internal, and _free_internal.
17645 (_malloc_internal, _realloc_internal, _free_internal): Use them.
17646 Copy hook value to automatic variable before its use.
17647 (memalign): Copy hook value to automatic variable before its use.
17648
176492007-06-26 Kenichi Handa <handa@m17n.org>
17650
17651 * coding.c (Ffind_operation_coding_system): Docstring improved.
17652 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
17653
176542007-06-25 David Kastrup <dak@gnu.org>
17655
17656 * keymap.c (Fcurrent_active_maps): Add `position' argument.
17657 (Fwhere_is_internal): Adjust call to `current-active-maps' to
17658 cater for additional parameter.
17659
17660 * keymap.h: Adjust number of parameters to `current-active-maps'.
17661
17662 * doc.c (Fsubstitute_command_keys): Adjust call of
17663 `current-active-maps'.
17664
176652007-06-25 David Kastrup <dak@gnu.org>
17666
17667 * callint.c (Fcall_interactively): Make the parsing of interactive
17668 specs somewhat more readable.
17669
176702007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17671
17672 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
17673 to scroll bar gap also when bitmap fills fringe. Draw only foreground
17674 if extended background has already been filled.
17675
176762007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17677
17678 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
17679 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
17680
17681 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
17682 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
17683 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
17684 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
17685 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
17686 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
17687 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
17688 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
17689 Run timers during dialog popup.
17690 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
17691
176922007-06-21 Jason Rumney <jasonr@gnu.org>
17693
17694 * image.c (convert_mono_to_color_image): Swap fore and background.
17695
176962007-06-20 Jason Rumney <jasonr@gnu.org>
17697
17698 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
17699 (w32_free_bdf_font): Unmap memory not handle.
17700
177012007-06-20 Sam Steingold <sds@gnu.org>
17702
17703 * gmalloc.c (__morecore): Fix the declaration to comply with the
17704 definition.
17705
177062007-06-20 Juanma Barranquero <lekktu@gmail.com>
17707
17708 * w32term.c (w32_delete_display): Remove leftover declaration.
17709 (w32_define_cursor, w32_initialize): Make static.
17710
17711 * w32.c (_wsa_errlist): Fix typo in error message.
17712 (init_environment): Ignore any environment variable from the
17713 registry having a null value.
17714
177152007-06-20 Glenn Morris <rgm@gnu.org>
17716
17717 * Makefile.in (LIBGIF): Default to -lgif.
17718
177192007-06-17 Jason Rumney <jasonr@gnu.org>
17720
17721 * w32menu.c (add_menu_item): Don't use multibyte string functions on
17722 unicode strings.
17723
177242007-06-16 Juanma Barranquero <lekktu@gmail.com>
17725
17726 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
17727 Fix typo in docstring.
17728
177292007-06-16 Eli Zaretskii <eliz@gnu.org>
17730
17731 * w32menu.c (add_menu_item): Escape `&' characters in menu items
17732 and their keybindings.
17733
177342007-06-15 Chong Yidong <cyd@stupidchicken.com>
17735
17736 * composite.c (update_compositions): Fix last fix.
17737
177382007-06-14 Jason Rumney <jasonr@gnu.org>
17739
17740 * w32.c (get_process_times_fn): New function pointer.
17741 (globals_of_w32): Intialize it if present in kernel32.dll.
17742 (w32_get_internal_run_time): New function.
17743
17744 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
17745
177462007-06-14 Kenichi Handa <handa@etlken.m17n.org>
17747
17748 * composite.c (update_compositions): Check the validness of
17749 compositions.
17750
177512007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17752
17753 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
17754 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
17755
17756 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
17757 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
17758
17759 * macgui.h (USE_MAC_TOOLBAR): New define.
17760
17761 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
17762 Return immediately unless popup is activated.
17763
17764 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
17765 background to scroll bar gap.
17766 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
17767 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
17768 scroll bars on frame edge. Check fringe background extension.
17769 Don't clear extended fringe background area.
17770 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
17771 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
17772 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
17773 [USE_MAC_TOOLBAR]: New macros.
17774 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
17775 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
17776 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
17777 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
17778 [USE_MAC_TOOLBAR]: New functions.
17779 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
17780 manually if previous repositioning has failed.
17781 (mac_handle_keyboard_event): Use precomputed event kind.
17782 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
17783 as tool bar item click. Handle mouse movement over tool bar items.
17784
17785 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
17786 toolbar_win_gravity.
17787 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
17788 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
17789 Add externs.
17790
17791 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
17792 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
17793
177942007-06-14 Chong Yidong <cyd@stupidchicken.com>
17795
17796 * image.c (search_image_cache): Remove unused variable.
17797
177982007-06-13 Chong Yidong <cyd@stupidchicken.com>
17799
17800 * xfns.c, xmenu.c: Link to xaw3d if available.
17801
178022007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17803
17804 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
17805 frame_foreground and frame_background.
17806
17807 * image.c (lookup_image): Save frame foreground and background colors.
17808 (search_image_cache): Check if saved and current frame colors match.
17809
178102007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
17811
17812 * regex.c (regex_compile): Remove the `regnum' counter.
17813 Use bufp->re_nsub instead. Add support for \(?N:RE\).
17814
178152007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
17816
17817 * term.c: Include intervals.h to declare Fget_text_property.
17818
178192007-06-10 Jason Rumney <jasonr@gnu.org>
17820
17821 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
17822
178232007-06-08 Juanma Barranquero <lekktu@gmail.com>
17824
17825 * callint.c (Fcall_interactively):
17826 * editfns.c (Fdelete_and_extract_region):
17827 * fileio.c (Fread_file_name):
17828 * fns.c (Fmapconcat):
17829 * keyboard.c (cmd_error_internal):
17830 * keymap.c (Fkey_description):
17831 * lread.c (openp):
17832 * minibuf.c (read_minibuf):
17833 * search.c (wordify):
17834 * sunfns.c (sel_read):
17835 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
17836 * xfns.c (x_default_scroll_bar_color_parameter):
17837 * xmenu.c (menu_help_callback):
17838 * xselect.c (Fx_get_atom_name):
17839 * xterm.c (x_term_init): Use empty_unibyte_string.
17840
178412007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
17842
17843 * alloc.c (init_strings): Initialize canonical empty strings.
17844 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
17845 canonical empty string when the requested size is 0.
17846
17847 * emacs.c (empty_unibyte_string): Rename from empty_string.
17848 (empty_multibyte_string): New canonical empty string.
17849 (syms_of_emacs): Don't initialize empty_string.
17850
17851 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
17852 string, if appropriate.
17853 (empty_unibyte_string, empty_multibyte_string): New externs.
17854 (empty_string): Remove extern.
17855
17856 * lread.c (syms_of_lread): Use empty_unibyte_string.
17857
178582007-06-07 Jason Rumney <jasonr@gnu.org>
17859
17860 * s/ms-w32.h: Don't define HAVE_TZNAME.
17861
17862 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
17863
178642007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17865
17866 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
17867
17868 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
17869 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
17870
17871 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
17872 Don't call next handler.
17873 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
17874 Remove argument. Install handler to application.
17875 (set_frame_menubar): Don't change deep_p.
17876 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
17877 FRAME_OUTER_TO_INNER_DIFF_Y.
17878 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
17879 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
17880 [HAVE_DIALOGS]: New macros.
17881 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
17882 Use them.
17883 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
17884
17885 * macselect.c [MAC_OSX] (install_service_handler): Rename from
17886 init_service_handler. All callers changed. Return OSStatus value.
17887
17888 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
17889 All callers changed so as not to call SetPortWindowPort.
17890 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
17891 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
17892 mac_draw_string_common.
17893 (mac_draw_image_string_qd): Likewise.
17894 (mac_draw_string_common): Use them. Add INLINE.
17895 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
17896 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
17897 GetGlobalMouse.
17898 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
17899 and FRAME_OUTER_TO_INNER_DIFF_Y.
17900 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
17901 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
17902 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
17903 repositioning window to mac_handle_window_event.
17904 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
17905 saving window location to mac_handle_window_event
17906 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
17907 (install_menu_target_item_handler): Remove argument in extern.
17908 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
17909 Also accept command events.
17910 (do_keystroke): New function created from XTread_socket.
17911 (init_command_handler): Remove functions.
17912 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
17913 and save window location by kEventWindowShowing and kEventWindowHiding
17914 handlers here. Don't call next handler for window state change and
17915 focus events.
17916 (mac_handle_application_event, mac_handle_keyboard_event)
17917 [TARGET_API_MAC_CARBON]: New functions.
17918 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
17919 kEventWindowShowing and kEventWindowHiding events. Move installation
17920 of mouse, font, text input and menu target item handlers to
17921 install_application_handler.
17922 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
17923 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
17924 New function.
17925 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
17926 Register it.
17927 (XTread_socket) [TARGET_API_MAC_CARBON]:
17928 Consolidate SendEventToEventTarget calls.
17929 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
17930 Move application activation handler to mac_handle_application_event.
17931 Move keyboard handler to mac_handle_keyboard_event.
17932 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
17933 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
17934 init_command_handler. Call install_application_handler.
17935
17936 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
17937 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
17938
179392007-06-07 Glenn Morris <rgm@gnu.org>
17940
17941 * emacs.c (main): Use `emacs-copyright' in --version output.
17942
179432007-06-06 Chong Yidong <cyd@stupidchicken.com>
17944
17945 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
17946
179472007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17948
17949 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
17950
17951 * macgui.h: Replace WindowPtr with WindowRef.
17952
17953 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
17954 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
17955 Replace ControlHandle with ControlRef.
17956 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
17957
17958 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
17959 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
17960 Replace ControlHandle with ControlRef.
17961 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
17962 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
17963
17964 * macterm.h (struct scroll_bar): Rename member control_handle_low
17965 and control_handle_high to control_ref_low and control_ref_high.
17966 All uses changed.
17967 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
17968 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
17969 respectively. All uses changed.
17970 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
17971 (install_window_handler, remove_window_handler): Replace WindowPtr
17972 with WindowRef in externs.
17973
179742007-06-05 Juanma Barranquero <lekktu@gmail.com>
17975
17976 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
17977
179782007-06-03 Nick Roberts <nickrob@snap.net.nz>
17979
17980 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
17981
17982 * frame.c (Fmouse_position, Fmouse_pixel_position):
17983 Condition on HAVE_GPM too.
17984
17985 * term.c (term_mouse_highlight): Remove unused variables.
17986 (Fterm_open_connection): Set gpm_zerobased to 1.
17987 (term_mouse_movement, term_mouse_click, handle_one_term_event):
17988 Use zero based co-ordinates.
17989 (handle_one_term_event): Report a drag as mouse movement too.
17990
17991 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
17992
179932007-06-03 Chong Yidong <cyd@stupidchicken.com>
17994
17995 * image.c (search_image_cache): New function. Require background
17996 color match if background color is unspecified in the image spec.
17997 (uncache_image, lookup_image): Use it.
17998
179992007-06-01 Juanma Barranquero <lekktu@gmail.com>
18000
18001 * window.c (Fshrink_window): Reflow docstring.
18002
180032007-06-02 Chong Yidong <cyd@stupidchicken.com>
18004
18005 * Version 22.1 released.
18006
180072007-06-01 Richard Stallman <rms@gnu.org>
18008
18009 * xfns.c (x_encode_text): Add GCPRO.
18010
180112007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18012
18013 * xfns.c (x_set_name_internal): Save encoded name before
18014 x_encode_text in case string data is relocated.
18015
180162007-05-31 Richard Stallman <rms@gnu.org>
18017
18018 * buffer.c (syms_of_buffer): Doc fix.
18019
180202007-05-30 Nick Roberts <nickrob@snap.net.nz>
18021
18022 * sysdep.c (init_sys_modes): Add rather than replace with
18023 O_NONBLOCK.
18024
18025 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
18026 term_mouse_moveto.
18027
18028 * termhooks.h (term_mouse_moveto): New extern.
18029
18030 * term.c (mouse_face_window): Rename...
18031 (Qmouse_face_window): ...to this.
18032 (term_show_mouse_face, term_clear_mouse_face)
18033 (term_mouse_highlight): Use Qmouse_face_window.
18034 (term_mouse_moveto): New function.
18035 (term_mouse_position): Make it work.
18036 (syms_of_term): Uncomment assignment to mouse_position_hook.
18037 Staticpro Qmouse_face_window.
18038
180392007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18040
18041 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
18042 around current_column call.
18043
180442007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
18045
18046 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
18047 * xdisp.c (next_element_from_buffer):
18048 * window.c (delete_window):
18049 * term.c (term_mouse_highlight):
18050 * msdos.c (getdefdir):
18051 * macterm.c (mac_create_bitmap_from_bitmap_data)
18052 (init_font_name_table):
18053 * fns.c (Fsxhash):
18054 * data.c (Fmake_local_variable):
18055 * ccl.c (ccl_driver): Likewise.
18056
180572007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18058
18059 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
18060 Call mac_wakeup_from_rne on window size change.
18061
180622007-05-25 Chong Yidong <cyd@stupidchicken.com>
18063
18064 * image.c (uncache_image): Fix typo.
18065
180662007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
18067
18068 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
18069
180702007-05-22 Richard Stallman <rms@gnu.org>
18071
18072 * xterm.c (x_connection_closed): Remove NO_RETURN.
18073
180742007-05-22 Martin Rudalics <rudalics@gmx.at>
18075
18076 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
18077
180782007-05-21 Chong Yidong <cyd@stupidchicken.com>
18079
18080 * image.c (uncache_image): New function.
18081 (Fimage_refresh): New function.
18082
180832007-05-20 Jan Djärv <jan.h.d@swipnet.se>
18084
18085 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
18086
180872007-05-20 Nick Roberts <nickrob@snap.net.nz>
18088
18089 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
18090 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
18091
180922007-05-20 Nick Roberts <nickrob@snap.net.nz>
18093
18094 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
18095 conditional on [HAVE_GPM_H].
18096
180972007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
18098
18099 * syntax.c (skip_chars): Update syntax-table only after we checked that
18100 the new location is valid.
18101
181022007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18103
18104 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
18105 mac_get_window_bounds.
18106
181072007-05-20 Nick Roberts <nickrob@snap.net.nz>
18108
18109 * Makefile.in (LIBGPM): Allow it to be set from configure.
18110 If set then link Emacs with it.
18111
18112 * config.in: Regenerate.
18113
18114 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
18115 New externs.
18116
18117 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
18118 Include gpm.h.
18119 (handle_one_term_event, term_gpm): New externs.
18120
18121 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
18122 and allow it to be interrupted by SIGIO.
18123
18124 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
18125 (wait_reading_process_output): Wait on gpm_fd too.
18126 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
18127 (add_gpm_wait_descriptor_called_flag): New variable.
18128 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
18129
18130 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
18131 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
18132 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
18133 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
18134 (make_lispy_event): Add case GPM_CLICK_EVENT.
18135 (read_avail_input): Handle mouse input.
18136
18137 * term.c (write_glyphs_with_face): New function.
18138 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
18139 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
18140 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
18141 (mouse_face_face_id, term_gpm, pos_x, pos_y)
18142 (last_mouse_x, last_mouse_y): New variables.
18143 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
18144 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
18145 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
18146 (Fterm_close_connection): New functions.
18147 (term_init): Initialise mouse_face_window.
18148
181492007-05-19 Chong Yidong <cyd@stupidchicken.com>
18150
18151 * xdisp.c (redisplay_window): If first window line is a
18152 continuation line, recompute the new window start instead of
18153 recentering.
18154
181552007-05-18 Glenn Morris <rgm@gnu.org>
18156
18157 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
18158 Suggested by Alfred M. Szmidt <ams@gnu.org>.
18159
181602007-05-17 Glenn Morris <rgm@gnu.org>
18161
18162 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
18163
181642007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18165
18166 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
18167 dead key repeat and up events.
18168
181692007-05-14 Chong Yidong <cyd@stupidchicken.com>
18170
18171 * image.c (pbm_load): Check image size for monochrome pbm.
18172
181732007-05-13 Chong Yidong <cyd@stupidchicken.com>
18174
18175 * xterm.c (XTread_socket): Revert last change.
18176
181772007-05-12 Chong Yidong <cyd@stupidchicken.com>
18178
18179 * image.c (pbm_load): Correctly check image size for greyscale pbm.
18180
18181 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
18182
181832007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
18184
18185 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
18186 mixup (YAILOM).
18187
181882007-05-07 Andreas Schwab <schwab@suse.de>
18189
18190 * keymap.c (Flookup_key): Fix typo in last change.
18191
181922007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
18193
18194 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
18195 mapping for unibyte strings.
18196
181972007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18198
18199 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
18200 (Fx_popup_dialog) [MAC_OSX]: Likewise.
18201
182022007-04-29 Richard Stallman <rms@gnu.org>
18203
18204 * insdel.c (replace_range): For undo, record insertion first.
18205
182062007-04-29 Andreas Schwab <schwab@suse.de>
18207
18208 * lisp.h (VECSIZE): Use OFFSETOF.
18209
182102007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18211
18212 * xdisp.c (try_window_reusing_current_matrix): Fix number of
18213 disabled lines.
18214
182152007-04-28 Richard Stallman <rms@gnu.org>
18216
18217 * lread.c (read_escape): In a string, \s is always space.
18218
182192007-04-27 Jan Djärv <jan.h.d@swipnet.se>
18220
18221 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
18222
18223 * gtkutil.c (xg_update_menubar, create_menus): Create empty
18224 submenu for menu bar items.
18225
18226See ChangeLog.10 for earlier changes.
18227
18228;; Local Variables:
18229;; coding: utf-8
18230;; add-log-time-zone-rule: t
aac0c6e3
MR
18231;; End:
18232
76b6f707 18233 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
18234
18235 This file is part of GNU Emacs.
18236
18237 GNU Emacs is free software: you can redistribute it and/or modify
18238 it under the terms of the GNU General Public License as published by
18239 the Free Software Foundation, either version 3 of the License, or
18240 (at your option) any later version.
18241
18242 GNU Emacs is distributed in the hope that it will be useful,
18243 but WITHOUT ANY WARRANTY; without even the implied warranty of
18244 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18245 GNU General Public License for more details.
18246
18247 You should have received a copy of the GNU General Public License
18248 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
18249
18250;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40