2009-11-20 Tassilo Horn <tassilo@member.fsf.org>
[bpt/emacs.git] / src / ChangeLog
CommitLineData
8ab1650e
SM
12009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * lread.c (Funintern): Comment out last change.
4
82c602f0
RS
52009-11-19 Richard Stallman <rms@gnu.org>
6
7 * lread.c (Funintern): Error if symbol is t or nil.
8
87e32266
SM
92009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
10
11 * insdel.c (make_gap_larger): Don't make as many assumptions about the
12 representation of Lisp integers.
13 Reported by MJ Chan <mjchan.inbox@gmail.com>.
14
1b9ac145
AS
152009-11-17 Andreas Schwab <schwab@linux-m68k.org>
16
17 * lisp.h: Remove declaration of Ffont_get_system_font.
18 * xfns.c: Move include of "xsettings.h".
19 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
20
dfb3c4c6
JD
212009-11-17 Jan Djärv <jan.h.d@swipnet.se>
22
87e32266
SM
23 * xsettings.c (something_changedCB, Ffont_get_system_font):
24 Check use_system_font.
dfb3c4c6
JD
25 (syms_of_xsettings): DEFVAR font-use-system-font.
26
9370c1d8
AS
272009-11-17 Andreas Schwab <schwab@linux-m68k.org>
28
25fe851a
AS
29 * xfns.c (x_default_font_parameter): Remove dead assignment.
30
9370c1d8
AS
31 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
32
637fa988
JD
332009-11-17 Jan Djärv <jan.h.d@swipnet.se>
34
87e32266 35 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 36 not have FC_LCD_*. #define them if not there.
a6eb20d8 37
87e32266 38 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 39
637fa988
JD
40 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
41
42 * xterm.c (handle_one_xevent): Call xft_settings_event for
43 ClientMessage, PropertyNotify and DestroyNotify.
44 (x_term_init): If we have XFT, get DPI from Xft.dpi.
45 Call xsettings_initialize.
46
47 * xftfont.c (xftfont_fix_match): New function.
48 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
49 Call xftfont_fix_match after XftFontMatch.
50
51 * xfont.c (xfont_driver): Initialize all members.
52
87e32266
SM
53 * xfns.c (x_default_font_parameter):
54 Try font from Ffont_get_system_font.
637fa988
JD
55 Do not get font from x_default_parameter if we got one from
56 Ffont_get_system_font.
87e32266 57 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
58
59 * w32font.c (w32font_driver): Initialize all members.
60
61 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
62
63 * lisp.h: Declare syms_of_xsettings.
64
87e32266
SM
65 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
66 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
67
68 * ftfont.c (ftfont_filter_properties): New function.
69
70 * frame.c (x_set_font): Remove unused variable lval.
71
87e32266 72 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
73
74 * font.c (font_put_extra): Don't return if val is nil, it means
75 boolean option is off.
76 (font_parse_fcname): Collect all extra properties in extra_props
77 and call filter_properties for all drivers with extra_props and
78 font as parameter.
87e32266
SM
79 (font_open_entity): Do not use cache, it does not pick up new
80 fontconfig settings like hinting.
637fa988
JD
81 (font_load_for_lface): If spec had a name in it, store it in entity.
82
83 * emacs.c (main): Call syms_of_xsettings
84
85 * config.in: HAVE_GCONF is new.
86
87 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
88 xsettings.o is new.
89
5a942932
KH
902009-11-17 Kenichi Handa <handa@m17n.org>
91
92 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
93 back to the default font in case that no suitable font is found.
94
b7c7a4d1
SM
952009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
96
97 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
98 Suggested by Chad Brown <yandros@mit.edu>.
99 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
100
072f1e39
JD
1012009-11-16 Jan Djärv <jan.h.d@swipnet.se>
102
103 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
104
5d1e70a2
AS
1052009-11-14 Andreas Schwab <schwab@linux-m68k.org>
106
87e32266 107 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 108
a53cfbe5
JD
1092009-11-14 Jan Djärv <jan.h.d@swipnet.se>
110
473a99b7
JD
111 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
112 has a parent.
113
a53cfbe5
JD
114 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
115 dependency files in deps/. Include those files into Makefile.
116
117 * config.in: Generated (AUTO_DEPEND).
118
f04bb9b2
MA
1192009-11-13 Michael Albinus <michael.albinus@gmx.de>
120
b7c7a4d1 121 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
122 Vdbus_registered_functions_table, because it contains also
123 properties. Fix docstring.
b7c7a4d1 124 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 125
8f11f7ec
SM
1262009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
127
128 * alloc.c (mark_object): Don't reprocess marked strings.
129 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
130 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
131
8a605fe8
KH
1322009-11-13 Kenichi Handa <handa@m17n.org>
133
8f11f7ec 134 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
135 semantics of Vword_combining_categories.
136 (Vword_combining_categories): Describe the slight change of the
137 semantics.
138
241c4680
EZ
1392009-11-13 Eli Zaretskii <eliz@gnu.org>
140
141 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
142
143 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
144
5d58e44c
SM
1452009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
146
147 * xdisp.c (syms_of_xdisp): Fix typo in last change.
148
5e13f9d3
JB
1492009-11-12 Juanma Barranquero <lekktu@gmail.com>
150
151 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
152
cf54c754
DR
1532009-11-11 David Reitter <david.reitter@gmail.com>
154
155 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
156 variables to fix 2009-11-09 change.
157
a4ada374
DN
1582009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
159
91433552
DN
160 * process.c (ifflag_def): Make flag_sym constant.
161 (Fnetwork_interface_info): Use a constant pointer.
162 (ifflag_table):
163 * xfns.c (cursor_bits):
164 * xdisp.c (power_letter):
165 * termcap.c (speeds, esctab):
166 * sysdep.c (baud_convert):
167 * keyboard.c (lispy_accent_codes, modifier_names):
168 * image.c (xbm_format, xpm_format, pbm_format, png_format)
169 (jpeg_format, tiff_format, gif_format, svg_format)
170 (interlace_start, interlace_increment, gs_format):
171 * gtkutil.c (separator_names):
172 * fringe.c (swap_nibble):
173 * fns.c (base64_value_to_char, base64_char_to_value):
174 * fileio.c (make_temp_name_tbl):
175 * coding.c (suffixes): Make constant.
176
f4265f6c
DN
177 * frame.c (make_initial_frame):
178 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
179 build_string.
180 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
181
04420943
DN
182 * s/freebsd.h:
183 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
184
0a5d24ae
DN
185 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
186 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
187
a4ada374
DN
188 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
189 * xterm.c (syms_of_xterm):
190 * xfaces.c (syms_of_xfaces):
191 * xdisp.c (syms_of_xdisp):
192 * lread.c (syms_of_lread):
193 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
194 build_string.
91433552 195
a4ada374
DN
196 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
197
af98fc7f
SM
1982009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
199
8ab1650e 200 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 201
e90292a9
JD
2022009-11-10 Jan Djärv <jan.h.d@swipnet.se>
203
204 * keyboard.h: Declare timer_check.
205
206 * keyboard.c (timer_check_2): New function that does what the old
207 timer_check did.
208 (timer_check): Call timer_check_2 until -1 or a non-zero time is
209 returned, i.e. don't return -1 with timers pending.
210
211 * process.c: Remove extern declaration of timer_check.
212
213 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
214 even if timer_check returned -1.
215
af98fc7f
SM
216 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
217 xg_dialog_data.
e90292a9
JD
218 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
219 the event loop.
220 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
221 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
222 Destroy the dialog after xg_dialog_run.
223
045b83c0
SM
2242009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
225
226 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
227
1fb99a3a
JD
2282009-11-10 Jan Djärv <jan.h.d@swipnet.se>
229
230 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
231
04e452cb
JB
2322009-11-09 Juanma Barranquero <lekktu@gmail.com>
233
234 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
235
ef7417fd
SM
2362009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
237
238 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
239 w32menu.c, and nsmenu.m.
240 Simplify the obsolete case where position is nil.
241 (cleanup_popup_menu): New function, moved from nsmenu.m.
242 (struct skp): Remove slot `notreal'.
243 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
244 adjust callers.
245 (single_menu_item): Adjust call to parse_menu_item.
246 (syms_of_menu): Defsubr x-popup-menu.
247 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
248 (keymap_panes): Don't export any more.
249 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
250 (xmenu_show): Declare.
251 * keyboard.c (parse_menu_item): Remove arg `notreal'.
252 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
253 * keyboard.h (parse_menu_item): Update declaration.
254 * xmenu.c (Fx_popup_menu): Remove.
255 (syms_of_xmenu): Don't defsubr x-popup-menu.
256 * w32menu.c (Fx_popup_menu): Remove.
257 (syms_of_w32menu): Don't defsubr x-popup-menu.
258 * nsmenu.m (cleanup_popup_menu): Remove.
259 (ns_menu_show): Rename from ns_popup_menu and remove all the code
260 moved to menu.c's Fx_popup_menu.
261 (Fx_popup_menu): Remove.
262 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
263 menu_items (it's done in menu.c already).
264
424d6179
SM
2652009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
266
267 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
268 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
269
c0df13a6 2702009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
271
272 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 273 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
274 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
275 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
276
2de9f71c
SM
2772009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
278
279 Let integers use up 2 tags to give them one extra bit and thus double
280 their range.
281 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
282 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
283 New macros.
284 (enum Lisp_Type): Use them. Give explicit values.
285 (Lisp_Type_Limit): Remove.
286 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
287 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
288 Pay attention to USE_2_TAGS_FOR_INTS.
289 (INTEGERP): Use LISP_INT_TAG_P.
290 * fns.c (internal_equal): Simplify the default case.
291 (sxhash): Use case_Lisp_Int.
292 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
293 any more.
294 (Ftype_of): Use case_Lisp_Int.
295 (store_symval_forwarding): Take into account the fact that Ints can
296 now have more than one tag.
297 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
298 buffer_slot_type_mismatch):
299 * xfaces.c (face_attr_equal_p):
300 * print.c (print_object):
301 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
302 Use case_Lisp_Int.
303
323637a2
EZ
3042009-11-06 Eli Zaretskii <eliz@gnu.org>
305
7ac65b38
EZ
306 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
307
323637a2
EZ
308 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
309 warning.
310
e511451f
JD
3112009-11-06 Jan Djärv <jan.h.d@swipnet.se>
312
313 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
314
315 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
316
317 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
318 ButtonPressRelease and MotionNotify (bug#4870).
319
5e2327cf
DN
3202009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
321
5adc433e
DN
322 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
323
d67b4f80
DN
324 * xterm.c (syms_of_xterm):
325 * xselect.c (syms_of_xselect):
326 * xmenu.c (syms_of_xmenu):
327 * xfns.c (syms_of_xfns):
328 * xfaces.c (syms_of_xfaces):
329 * xdisp.c (syms_of_xdisp):
330 * window.c (syms_of_window):
331 * w32fns.c (syms_of_w32fns):
332 * undo.c (syms_of_undo):
333 * textprop.c (syms_of_textprop):
334 * terminal.c (syms_of_terminal):
335 * syntax.c (syms_of_syntax):
336 * sound.c (syms_of_sound):
337 * search.c (syms_of_search):
338 * print.c (syms_of_print):
339 * minibuf.c (syms_of_minibuf):
340 * macros.c (syms_of_macros):
341 * keymap.c (syms_of_keymap, initial_define_key)
342 (initial_define_lispy_key):
343 * keyboard.c (syms_of_keyboard):
344 * insdel.c (syms_of_insdel):
345 * image.c (syms_of_image):
346 * fringe.c (syms_of_fringe):
347 * frame.c (syms_of_frame):
348 * fontset.c (syms_of_fontset):
349 * fns.c (syms_of_fns):
350 * fns.c (syms_of_fns):
351 * fileio.c (syms_of_fileio):
352 * fileio.c (syms_of_fileio):
353 * eval.c (syms_of_eval):
354 * doc.c (syms_of_doc):
355 * dispnew.c (syms_of_display):
356 * dired.c (syms_of_dired):
357 * dbusbind.c (syms_of_dbusbind):
358 * data.c (syms_of_data):
359 * composite.c (syms_of_composite):
360 * coding.c (syms_of_coding):
361 * cmds.c (syms_of_cmds):
362 * charset.c (define_charset_internal, syms_of_character):
363 * ccl.c (syms_of_ccl):
364 * category.c (syms_of_category, init_category_once):
365 * casetab.c (syms_of_casetab):
366 * casefiddle.c (syms_of_casefiddle):
367 * callint.c (syms_of_callint):
368 * bytecode.c (syms_of_bytecode):
369 * buffer.c (keys_of_buffer, syms_of_buffer):
370 * alloc.c (syms_of_alloc):
371 * process.c (syms_of_process, init_process):
372 * lread.c (syms_of_lread, init_obarray):
373 * font.c (build_style_table):
374 * emacs.c (syms_of_emacs, main): Replace calls to intern with
375 intern_c_string, calls to make_pure_string with
376 make_pure_c_string. Use pure_cons instead of Fcons.
377
5e2327cf
DN
378 * process.c (socket_options): Make it const.
379 (set_socket_option, init_process): Use a const pointer.
380
381 * lread.c (intern_c_string): New function.
382 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
383 (defvar_int): Uset it. Make the name const char*.
384
385 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
386 (defvar_int): Update prototypes.
387 (DEFUN, EXFUN): Support for prototypes is now required.
388 (intern_c_string): New prototype.
389 (struct Lisp_Subr): Make symbol_name constant.
390
391 * font.c (struct table_entry): Remove unused member. Make NAMES
392 constant.
393 (weight_table, slant_table, width_table): Make constant.
394
395 * emacs.c (struct standard_args): Make name and longname constant.
396
397 * character.h (DEFSYM): Use intern_c_string.
398
a56eaaef
DN
3992009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
400
401 * alloc.c (make_pure_c_string): New function.
402
403 * eval.c (Fautoload): Purecopy all arguments.
404
f6a07420
KH
4052009-11-05 Kenichi Handa <handa@m17n.org>
406
407 * fileio.c (Finsert_file_contents): Be sure set coding-system of
408 the buffer in case of replace.
409
5d28d4b1
DN
4102009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
411
412 * puresize.h (BASE_PURESIZE): Increase to 1620000.
413
b349d111
SM
4142009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
415
d528b1ce
SM
416 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
417 when applicable (bug#4851).
418
b349d111
SM
419 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
420 (P_): Support for prototypes is now required.
421
c38eb027
CY
4222009-10-31 Chong Yidong <cyd@stupidchicken.com>
423
424 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
425 (Bug#4827).
426
0405f8d9
EZ
4272009-10-30 Eli Zaretskii <eliz@gnu.org>
428
d528b1ce 429 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 430
ca0a881a
DN
4312009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
432
433 * puresize.h (BASE_PURESIZE): Increase to 1470000.
434
d528b1ce
SM
435 * lread.c (Fload): Purecopy the file name when building
436 Vpreloaded_file_list.
ca0a881a 437
47e0e0e4
JR
4382009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
439
440 * w32fns.c (syms_of_w32fns): Change default value of
441 w32-scroll-lock-modifier to nil. (Bug#2827)
442
057bce6f
JB
4432009-10-26 Juanma Barranquero <lekktu@gmail.com>
444
782a943e 445 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 446
242bc74c
AS
4472009-10-26 Andreas Schwab <schwab@redhat.com>
448
449 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
450
522d013a
JB
4512009-10-26 Juanma Barranquero <lekktu@gmail.com>
452
453 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
454 For delta < 0, skip check that only makes sense when the mini-window
455 is going to be enlarged. (Bug#4534)
456
18060980
CY
4572009-10-25 Chong Yidong <cyd@stupidchicken.com>
458
459 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
460 string in menu maps (Bug#4471).
461
fec8f0fe
CY
4622009-10-24 Chong Yidong <cyd@stupidchicken.com>
463
464 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
465 FRAME_NS_VIEW on terminal frames (Bug#4765).
466
10d66ec0
AS
4672009-10-24 Andreas Schwab <schwab@linux-m68k.org>
468
1cae01f7
AS
469 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
470 DBUS_TYPE_UINTnn separately to get proper sign extension.
471
58a12889
AS
472 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
473 can properly handle unsigned types.
d528b1ce 474 (make_uid, make_gid): Remove.
58a12889 475
987c9327
AS
476 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
477 types again.
478
522d013a 479 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
480 (system_process_attributes): Likewise.
481
905a9ed3
DN
4822009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
483
484 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
485
486 * eval.c (Fautoload): Purecopy the filename. Simplify.
487
488 * category.c (Fdefine_category): Purecopy docstring.
489
a599b3e8
AS
4902009-10-23 Andreas Schwab <schwab@linux-m68k.org>
491
7b792fc9
AS
492 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
493
a599b3e8
AS
494 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
495
b35ac83e
CY
4962009-10-23 Chong Yidong <cyd@stupidchicken.com>
497
498 * window.c (Fwindow_edges, Fwindow_pixel_edges)
499 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
500 (Bug#4775).
501
e8903e00
SM
5022009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
503
504 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
505 (init_fileio_once):
506 * lisp.h (init_fileio_once): Remove.
507 * emacs.c (main): Don't call init_fileio_once.
508
8f43cbf3
DN
5092009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
510
511 * puresize.h (BASE_PURESIZE): Increase to 1430000.
512
26898943
AS
5132009-10-21 Andreas Schwab <schwab@linux-m68k.org>
514
515 * doprnt.c (doprnt): Fix overflow check.
516
5c646d5a
JD
5172009-10-21 Jan Djärv <jan.h.d@swipnet.se>
518
3132a7ea
JD
519 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
520
5c646d5a
JD
521 * xterm.h (x_wait_for_event): Declare it.
522
523 * xterm.c (pending_event_wait): New variable.
524 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
525 see pending_event_wait.eventtype.
526 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
527 (x_new_font): Call change_frame_size with new rows/columns before we
528 try to resize the frame.
5c646d5a 529 (x_wait_for_event): New function.
d528b1ce
SM
530 (x_set_window_size_1): Don't change gravity unless change_gravity
531 is set.
5c646d5a
JD
532 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
533 don't change frame size, instead wait for the ConfigureNotify.
534 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
535 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
536 (x_initialize): Initialize pending_event_wait.
537
538 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
539 size.
540
541 * widget.c (EmacsFrameSetValues): Add comment.
542 (EmacsFrameSetCharSize): Just call x_set_window_size.
543
544 * gtkutil.c (xg_frame_set_char_size): Flush events and call
545 x_wait_for_event.
d528b1ce 546 (flush_and_sync): Remove again.
5c646d5a
JD
547 (xg_get_font_name): Suggest monospace if no previous font is known.
548
e9c1637d
SM
5492009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
550
551 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 552 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 553
5a72cccb
YM
5542009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
555
556 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
557 processing pending events when event is filtered for input method.
ab04798f 558 (Bug#3681)
5a72cccb 559
2629aa37
JB
5602009-10-20 Juanma Barranquero <lekktu@gmail.com>
561
562 * fns.c: Add #endif accidentally removed in previous change.
563
c3417a74
DN
5642009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
565
566 * fns.c: Remove code for unsupported system: MAC_OS.
567 * image.c: Likewise. Include setjmp.h.
568
9685cef2
JD
5692009-10-19 Jan Djärv <jan.h.d@swipnet.se>
570
571 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
572 pixel -1 (bug #4742).
573
d7306fe6
DN
5742009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
575
019d2c4c
DN
576 * process.c (create_pty): Remove conditionals for no longer
577 supported systems: UNIPLUS and RTU.
578
ee6bacd4
DN
579 * xterm.c:
580 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
581
d7306fe6
DN
582 * alloc.c: Do not define struct catchtag.
583 * eval.c: Move struct catchtag definition ...
584 * lisp.h: ... here.
585
586 * image.c: Move png.h #include earlier to avoid warnings.
587
588 * xterm.c:
589 * xsmfns.c:
590 * xselect.c:
591 * xrdb.c:
592 * xmenu.c:
593 * xftfont.c:
594 * xfont.c:
595 * xfns.c:
596 * xfaces.c:
597 * xdisp.c:
598 * window.c:
599 * widget.c:
600 * w32xfns.c:
601 * w32uniscribe.c:
602 * w32term.c:
603 * w32select.c:
604 * w32reg.c:
605 * w32proc.c:
606 * w32menu.c:
607 * w32inevt.c:
608 * w32heap.c:
609 * w32font.c:
610 * w32fns.c:
611 * w32console.c:
612 * w32.c:
613 * w16select.c:
614 * vm-limit.c:
615 * unexsol.c:
616 * unexec.c:
617 * unexcw.c:
618 * unexaix.c:
619 * undo.c:
620 * tparam.c:
621 * textprop.c:
622 * terminfo.c:
623 * terminal.c:
624 * termcap.c:
625 * term.c:
626 * syntax.c:
627 * sound.c:
628 * sheap.c:
629 * search.c:
630 * scroll.c:
631 * region-cache.c:
632 * regex.c:
633 * ralloc.c:
634 * process.c:
635 * print.c:
b024548b
DN
636 * nsterm.m:
637 * nsselect.m:
638 * nsmenu.m:
639 * nsimage.m:
640 * nsfont.m:
641 * nsfns.m:
d7306fe6
DN
642 * msdos.c:
643 * minibuf.c:
644 * menu.c:
645 * marker.c:
646 * macros.c:
647 * keymap.c:
648 * keyboard.c:
649 * intervals.c:
650 * insdel.c:
651 * indent.c:
652 * gtkutil.c:
653 * ftxfont.c:
654 * ftfont.c:
655 * fringe.c:
656 * frame.c:
657 * fontset.c:
658 * font.c:
659 * fns.c:
660 * floatfns.c:
661 * filelock.c:
662 * fileio.c:
663 * emacs.c:
664 * editfns.c:
665 * dosfns.c:
666 * doprnt.c:
667 * doc.c:
668 * dispnew.c:
669 * dired.c:
670 * dbusbind.c:
671 * data.c:
672 * composite.c:
673 * coding.c:
674 * cmds.c:
675 * cm.c:
676 * chartab.c:
677 * charset.c:
678 * character.c:
679 * ccl.c:
680 * category.c:
681 * casetab.c:
682 * casefiddle.c:
683 * callproc.c:
684 * callint.c:
685 * bytecode.c:
686 * buffer.c:
687 * atimer.c: Include setjmp.h. (Bug#4643)
688
fd5f21e6
SM
6892009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
690
4c0354d7
SM
691 Remove leftover table unibyte_to_multibyte_table.
692 * character.c (unibyte_to_multibyte_table): Remove.
693 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
694 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
695 * character.h (UNIBYTE_TO_CHAR): New macro.
696 (MAKE_CHAR_MULTIBYTE): Use it.
697 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
698 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
699 (message_dolog, set_message_1):
700 * search.c (Freplace_match):
701 * editfns.c (Fcompare_buffer_substrings):
702 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
703 (concat):
704 * insdel.c (copy_text, count_size_as_multibyte):
705 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
706 * term.c (produce_glyphs):
707 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
708 * regex.c (RE_CHAR_TO_MULTIBYTE):
709 * cmds.c (internal_self_insert):
710 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
711
fd5f21e6
SM
712 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
713
4418646e
DN
7142009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
715
716 * puresize.h (BASE_PURESIZE): Increase to 1310000.
717
35f5c1d2
JB
7182009-10-16 Juanma Barranquero <lekktu@gmail.com>
719
720 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
721
a0cd8f6b
AR
7222009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
723
724 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
725 still needed under Tiger.
726
727 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
728
729 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
730 __Apple__.
731
732 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
733
01a8d3fa
KH
7342009-10-15 Kenichi Handa <handa@m17n.org>
735
736 * print.c (print_object): Escape a symbol like "2E10" too.
737
bf6c75c9 7382009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
739
740 Cleanups and changes for 64-bit compile under Snow Leopard.
741 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
742
743 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
744
c5959062 745 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
746 (ns_findfonts, nsfont_list_family): Use long format in printf, and
747 cast argument.
748 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 749 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
750
751 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
752
753 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
754 where appropriate.
755
756 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
757 where appropriate.
6e4780c5
JB
758 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
759 Use stringWithUTF8String.
bf6c75c9
AR
760 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
761
6e4780c5
JB
762 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
763 Add formal protocol mention to inheritance.
bf6c75c9
AR
764 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
765
6e4780c5
JB
766 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
767 Fix printf format.
bf6c75c9
AR
768 (ns_query_color): Use CGFloat where appropriate.
769 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
770 (EmacsScroller-mouseDown:) Use long format in printf, and cast
771 argument.
772
3d87f118
AR
773 * config.in (NS_HAVE_NSINTEGER): Drop.
774
a95c8102
AR
775 * dbusbind.c (dbus-method-return-internal)
776 (dbus-method-error-internal): Use long format in printf, and cast
777 argument.
778
779 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
780 in printf, and cast argument.
781
6873acca 782 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
783 cast argument.
784
9ec6f100
GM
7852009-10-11 Glenn Morris <rgm@gnu.org>
786
787 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
788
5be883cd
JD
7892009-10-08 Jan Djärv <jan.h.d@swipnet.se>
790
791 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
792 menu bar with a small width so it doesn't enlarge the frame.
793
d7a39b51
JB
7942009-10-08 Juanma Barranquero <lekktu@gmail.com>
795
796 * fontset.c (Fset_fontset_font): Fix typos in error messages.
797
0c2b6f8e
GM
7982009-10-06 Glenn Morris <rgm@gnu.org>
799
800 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
801 SOME_MACHINE_LISP (this enters indirectly via DOC).
802
e02131a2
EZ
8032009-10-05 Eli Zaretskii <eliz@gnu.org>
804
805 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
806
b4744254
EZ
8072009-10-04 Eli Zaretskii <eliz@gnu.org>
808
809 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
810 Doc fix.
811
dbf64827
JB
8122009-10-03 Martin Rudalics <rudalics@gmx.at>
813
814 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
815
e9a0aef8
MA
8162009-10-02 Michael Albinus <michael.albinus@gmx.de>
817
d528b1ce 818 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
819 used anymore outside fileio.c.
820
821 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
822
64eb2b56
JB
8232009-10-01 Juanma Barranquero <lekktu@gmail.com>
824
825 * lisp.h (Qdelete_directory_internal):
826 Declare, instead of Qdelete_directory.
827
828 * w32fns.c (Fsystem_move_file_to_trash): Use it.
829
9d28c33e
SM
8302009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
831
832 * eval.c (Fcalled_interactively_p): Add `kind' argument.
833
9d8f3bd9
MA
8342009-10-01 Michael Albinus <michael.albinus@gmx.de>
835
9d28c33e 836 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
837 Fdelete_directory. It is not a command anymore. It has no file
838 name handler.
839
9694740b
SM
8402009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
841
842 * xdisp.c (get_next_display_element): Use an enum in last change.
843
748e162f
KH
8442009-09-28 Kenichi Handa <handa@m17n.org>
845
9694740b 846 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
847 unibyte_display_via_language_environment in handling
848 Vnobreak_char_display.
849
17efd58d
AR
8502009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
851
852 * nsterm.h (ns_app_name): New extern variable.
853
854 * nsterm.m (ns_app_name): New variable.
855 (ns_term_init): Set and use it.
856 (ns_term_shutdown): Use it.
857
858 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
859 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
860
861 * nsfns.m (ns_set_name_iconic, ns_set_name)
862 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
863 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
864
9694740b
SM
865 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
866 Remove double-casting in client_data comparison.
31c2d412 867
3208cb35
YM
8682009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
869
870 * keyboard.c (make_lispy_event): Remember last wheel direction.
871 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
872
b7d552d6
GM
8732009-09-26 Glenn Morris <rgm@gnu.org>
874
875 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
876 internal.elc. Add term/pc-win.elc.
877 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
878 term/x-win.elc.
879 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
880 term/w32-win.elc.
881 (NS_SUPPORT): New.
882 (lisp): Add NS_SUPPORT.
883 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
884
4ff670a8
DR
8852009-09-25 David Reitter <david.reitter@gmail.com>
886
887 * nsmenu.m (EmacsMenu-clear): Recognize application menu
888 on Mac OS X 10.6+ (bug#4513).
889
feabfb6c
JB
8902009-09-24 Juanma Barranquero <lekktu@gmail.com>
891
892 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
893 some parts of Emacs code (like font selection) don't grok them.
894 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 895
de59072a
AS
8962009-09-24 Andreas Schwab <schwab@redhat.com>
897
898 * coding.c (decode_coding_iso_2022): Fix operator precedence.
899
a489517b
JB
9002009-09-24 Juanma Barranquero <lekktu@gmail.com>
901
902 * dired.c (Fdirectory_files): Fix typo in docstring.
903
0592970c
AR
9042009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
905
906 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
907 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
908 (EmacsScroller-setPosition:portion:whole:): Remove -display call
909 under GNUstep.
910 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
911
912 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
913 glyph advancement.
914
48e8a88b
AR
9152009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
916
917 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 918 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
919
920 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
921 deleted (bug #4492).
922
e14f0a78
AR
923 * nsfont.m (Vns_reg_to_script): New lisp variable.
924 (syms_of_nsfont): Declare it.
925 (ns_registry_to_script): New function.
926 (ns_get_req_script): Call it.
927 (ns_findfonts): Don't give up on non-unicode registry.
928
929 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
930
5b650faa
SM
9312009-09-20 Tom Tromey <tromey@redhat.com>
932
933 * eval.c (find_handler_clause): Make stack-trace-on-error work in
934 batch mode (bug#4228).
935
a489517b 9362009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
937
938 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 939 carefully. (Bug #4339)
0bae4e09 940
fcfe06f3
CY
9412009-09-18 Chong Yidong <cyd@stupidchicken.com>
942
d798ba87 943 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 944
31642728
AR
9452009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
946
947 * emacs.c (inhibit_x_resources): Update doc string for NS.
948 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 949 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
950
951 * nsterm.h (ns_no_defaults): Remove.
952
953 * nsterm.m (ns_no_defaults): Remove.
954 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
955 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
956 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
957 don't update the NSWindow itself.
958 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 959 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
960
961 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
962 ns_use_qd_smoothing.
963
964 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
965 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 966 (x-close-connection): Drop PSFlush() under OS X.
a489517b 967 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 968
8686ac71
JB
9692009-09-17 Juanma Barranquero <lekktu@gmail.com>
970
971 * emacs.c (inhibit_x_resources): New variable.
972 (main) [HAVE_NS]: Don't process --quick command line option.
973 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
974
975 * lisp.h (inhibit_x_resources): Declare it extern.
976
977 * w32reg.c (x_get_string_resource):
978 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
979
e227ba05
EZ
9802009-09-17 Eli Zaretskii <eliz@gnu.org>
981
362654a6
JB
982 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
983 Add lisp/term/internal.elc.
e227ba05 984
742d40e8
SM
9852009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
986
987 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
988 (bug#4461).
989
005bd5a2
DN
9902009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
991
992 * puresize.h (BASE_PURESIZE): Increase to 1290000.
993
994 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
995 (OBJECTS_MACHINE): Remove, unused.
996
f9af9719
SM
9972009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
998
999 * frame.c (x_get_resource_string): Remove unused.
1000
0307c7d2
JD
10012009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1002
1003 * xterm.c (x_new_font): Call change_frame_size before calling
1004 x_set_window_size, in case frame size won't change.
1005
1006 * frame.c (x_set_font): Remove dead code.
1007
428b13d6
SM
10082009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1009
1010 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1011
5766c380
SM
10122009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1013
1014 * lread.c (Fload): Don't output a message after loading an obsolete
1015 package any more (done in Lisp now).
1016
2fd0161b
CY
10172009-09-12 Chong Yidong <cyd@stupidchicken.com>
1018
1019 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1020
bc5e75b6
SM
10212009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1022
1023 * keymap.c (Fwhere_is_internal): Use nconc2.
1024
c31c985e
AM
10252009-09-11 Alan Mackenzie <acm@muc.de>
1026
1027 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1028 batch mode.
1029
78012bd2
AS
10302009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1031
1032 * xdisp.c (display_mode_element): Detect cycles.
1033
9d889332
SM
10342009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1035
1036 * keymap.c (where_is_internal): Don't erroneously return nil right after
1037 filling the cache.
1038 (where_is_internal_1): Fix up typo.
1039
7ab5d780
GM
10402009-09-11 Glenn Morris <rgm@gnu.org>
1041
1042 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1043 share a common doc-string.
1044
5238a749
SM
10452009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1046
66d77eda
SM
1047 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1048 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1049
5238a749
SM
1050 * keymap.c (QCadvertised_binding): New constant.
1051 (syms_of_keymap): Initialize it.
1052 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1053 if applicable.
1054
19f48442
SM
10552009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1056
50d4ba39
SM
1057 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1058 (parse_menu_item): Streamline since bindings are recomputed all the
1059 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1060 more and don't support lmenu's menu-alias any more either.
1061
a88a5372
SM
1062 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1063 (where_is_internal): Strip it down to only traverse the keymaps.
1064 Move the cache handling from Fwhere_is_internal to here.
1065 (Fwhere_is_internal): Move the handling of remapping and the choice of
1066 the best binding from where_is_internal to here.
1067 Unify the cached/noncached paths, so remapping is also handled
1068 correctly when the cache is used, and so the cache can be used to
1069 speed up remap-handling when applicable.
1070 Give preference to non-remapped bindings.
1071 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1072 non-remapped bindings.
1073 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1074 command remapping.
1075
19f48442
SM
1076 * xdisp.c (display_mode_element): Move list length limit from 50 to
1077 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1078
599498c3 10792009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1080
1081 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1082
f9b7b5ac
SM
10832009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1084
a53af587
JB
1085 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1086 (Bug#4334)
1087
f9b7b5ac
SM
1088 * keymap.c (where_is_internal): Filter out shadowed remappings.
1089 Assume that where_is_internal returns unshadowed bindings to simplify
1090 the code and get rid of the gotos. Use ASIZE.
1091
04f4b72d
JD
10922009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1093
4da146f2
JD
1094 * xterm.c (x_focus_changed): If we get a focusout and pointer
1095 is invisible, make it visible.
1096
04f4b72d
JD
1097 * xterm.h: Remove condition for declaration of
1098 x_*_window_to_frame.
1099
7cef7ce3
SM
11002009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1101
1102 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1103 initial terminal as well.
1104
a54fa5b7
JD
11052009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1106
1107 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1108 x_menubar_window_to_frame.
a54fa5b7
JD
1109
1110 * xterm.c: Remove declarations also in xterm.h
1111 (XTmouse_position): Do not return valid positions
1112 for clicks in the menubar and the toolbar for Gtk+.
1113
1114 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1115 if the widget for the event has the same top level as a frame,
1116 return the frame.
1117 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1118 internal windows, bug #4122.
1119 (x_non_menubar_window_to_frame): Remove.
1120
5a021dd0
GM
11212009-09-02 Glenn Morris <rgm@gnu.org>
1122
1123 * buffer.c (default-major-mode): Move most of the doc from here...
1124 (major-mode): ... to here.
1125
548fe2f3
NR
11262009-08-30 Nick Roberts <nickrob@snap.net.nz>
1127
1128 * process.c (wait_reading_process_output): Keep the descriptor
1129 when pty is used by a non-child process, e.g., in I/O buffer of
1130 GDB this allows inferior to be restarted.
1131
e0840eef
EZ
11322009-08-29 Eli Zaretskii <eliz@gnu.org>
1133
1134 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1135 both branches into one.
1136
82e98df4
SM
11372009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1138
1139 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1140 (main): Use enable-multibyte-characters rather than
1141 default-enable-multibyte-characters. Output a warning message when
1142 running a unibyte session.
1143
890617cb
YM
11442009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1145
1146 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1147 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1148 (copy_data_segment): Also copy __program_vars section.
1149 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1150 (dump_it) [LC_DYLD_INFO]: Use it.
1151
1152 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1153
e7adeadc
EZ
11542009-08-28 Eli Zaretskii <eliz@gnu.org>
1155
1156 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1157 $(SRC)/buildobj.h.
1158 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1159 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1160 $(SRC)/buildobj.h.
1161 (clean): Add buildobj.h.
1162
3ed8bbdc
TZ
11632009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1164
1165 * print.c (print_object): Set escapeflag to 1 when printing
1166 hashtable keys and values.
1167
155a6764
SM
11682009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1169
1170 * lread.c (read_integer): Use doubles (and potentially return a float
1171 number) as we do in string-to-number.
1172 (read1): Use strtol to read integers, signal errors on strtol's
1173 overflow and use floats if strtol's output is too large for
1174 Elisp integers.
1175
877610de
EZ
11762009-08-27 Eli Zaretskii <eliz@gnu.org>
1177
1178 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1179 (make-buildobj-SH): Fix last change.
1180 (SRC): Move to before where it's first used.
1181
ef73e7be
KH
11822009-08-27 Kenichi Handa <handa@m17n.org>
1183
550c8289
KH
1184 * process.c (send_process): Use encode_coding_object instead of
1185 encode_coding_string to perform eol-conversion even if the string
1186 is unibyte.
1187
60afa08d
KH
1188 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1189 character.
1190
ef73e7be 1191 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1192 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1193
7b3a82d7
DN
11942009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1195
5654bf63
DN
1196 * callproc.c (Fcall_process): Remove always true #if.
1197
7b3a82d7
DN
1198 * lisp.h: Replace #if 0 code for checking with text pointing to
1199 the --enable-checking configure flag.
1200
1201 * emacs.c (main): Mention the --enable-profiling configure flag
1202 instead of using CFLAGS.
1203
878bde49
KR
12042009-08-26 Ken Raeburn <raeburn@raeburn.org>
1205
1206 * Makefile.in (buildobj.h): New target.
1207 (doc.o): Depend on it.
1208 (temacs${EXEEXT}): Don't generate buildobj.lst.
1209 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1210 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1211 ($(BLD)/doc.$(O)): Depend on it.
1212 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1213 provided by Eli Zaretskii.)
1214 ($(TEMACS)): Don't generate buildobj.lst.
1215 * doc.c: Include buildobj.h.
1216 (buildobj): New static variable.
1217 (Fsnarf_documentation): Use it, instead of opening and reading
1218 buildobj.lst.
1219
1574224c
MA
12202009-08-25 Michael Albinus <michael.albinus@gmx.de>
1221
1222 * dbusbind.c (Fdbus_call_method)
1223 (Fdbus_call_method_asynchronously): Use English numeric format for
1224 timeout values in doc string.
1225
d9da2f45
KH
12262009-08-25 Kenichi Handa <handa@m17n.org>
1227
ef73e7be
KH
1228 * alloc.c (mark_char_table): New function.
1229 (mark_object): Use mark_char_table for a char-table.
1230
d9da2f45
KH
1231 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1232 (CHAR_TABLE_REF): Use it.
1233
c8edcc01
KR
12342009-08-23 Ken Raeburn <raeburn@raeburn.org>
1235
1236 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1237 before invoking the newly build emacs to check for load-path
1238 shadowing.
1239
7763401b
GM
12402009-08-22 Glenn Morris <rgm@gnu.org>
1241
1242 * Makefile.in (bootstrap_exe): New variable.
1243 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1244 Use ${bootstrap_exe}.
1245
729eadda
EZ
12462009-08-22 Eli Zaretskii <eliz@gnu.org>
1247
1248 * coding.h (encode_coding_string): Don't encode unibyte strings.
1249 (Bug#4047)
1250
eb4c6ace
MA
12512009-08-22 Michael Albinus <michael.albinus@gmx.de>
1252
1253 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1254
1255 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1256 intended as hotfix only.
1257 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1258
36e34d1b
AR
12592009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1260
1261 * nsterm.m (ns_get_color): Update documentation properly for last
1262 change, and clean up loose ends in the code left by it. Fix
1263 longstanding bug with 16-bit hex parsing, and add support for
1264 yet another X11 format (rgb:r/g/b) for compatibility.
1265 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1266 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1267
f983eb8a
SM
12682009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1269
1270 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1271
3f56d3c6
MA
12722009-08-20 Michael Albinus <michael.albinus@gmx.de>
1273
1274 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1275 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1276 (xd_initialize, xd_pending_messages): Check, whether
1277 $DBUS_SESSION_BUS_ADDRESS is set.
1278
fb641d68
YM
12792009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1280
1281 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1282
1283 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1284
cf59a374
GM
12852009-08-20 Glenn Morris <rgm@gnu.org>
1286
1287 * emacs.c (system-type): Doc fix.
1288
1373f3be
SM
12892009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1290
1291 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1292 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1293
058ed861
MA
12942009-08-18 Michael Albinus <michael.albinus@gmx.de>
1295
1373f3be
SM
1296 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1297 New functions.
058ed861
MA
1298 (xd_initialize): Revert change from 2009-08-16.
1299
563a866e 13002009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1301
1302 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1303 font-group vector, return nil.
5fc05db0 1304
e42bdf01
CY
13052009-08-17 Chong Yidong <cyd@stupidchicken.com>
1306
1307 * process.c (status_notify): Don't perform redisplay.
1308 (Fdelete_process, list_processes_1, process_send_signal):
1309 Expliticly perform redisplay.
1310 (wait_reading_process_output): Always check process status, but
1311 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1312
4230ab74
KR
13132009-08-17 Ken Raeburn <raeburn@raeburn.org>
1314
1373f3be 1315 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1316 (XFLOAT_INIT): New macro for storing a float value.
1317 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1318 * fns.c (sxhash): Copy out the value of a float in order to
1319 examine its bytes.
1320 * dbusbind.c (xd_append_arg): Likewise.
1321
4230ab74
KR
1322 * emacs.c (main): Don't call syms_of_data twice.
1323
a0645cdd
MA
13242009-08-16 Michael Albinus <michael.albinus@gmx.de>
1325
1326 * dbusbind.c (xd_initialize): Add connection file descriptor to
1327 input_wait_mask, in order to let select() detect, whether a new
1328 message has been arrived.
ca4f31ea 1329 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1330
485db0ba
MA
13312009-08-15 Michael Albinus <michael.albinus@gmx.de>
1332
1373f3be
SM
1333 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1334 New functions.
485db0ba
MA
1335
1336 * lisp.h (xd_pending_messages): Declare.
1337
1338 * keyboard.c (readable_events): Call xd_pending_messages.
1339
b5b98ff4
CY
13402009-08-15 Chong Yidong <cyd@stupidchicken.com>
1341
1373f3be 1342 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1343
f8354c6e
CY
1344 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1345
b5b98ff4
CY
1346 * buffer.c (set_buffer_internal_1)
1347 (swap_out_buffer_local_variables): Check for unbound local
1348 variables (Bug#4138).
1349
8b9fc636
EZ
13502009-08-14 Eli Zaretskii <eliz@gnu.org>
1351
1352 * process.c (create_pty): Fix last change.
1353
ce959360
CY
13542009-08-13 Chong Yidong <cyd@stupidchicken.com>
1355
1356 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1357 (xbm_load_image): Caller changed.
64b807c9 1358 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1359
c7baf7e9
NR
13602009-08-13 Nick Roberts <nickrob@snap.net.nz>
1361
1362 * process.c (create_pty): New function.
1363 (Fstart_process): Use it to allow Emacs to just associate a pty
1364 with the buffer. See associated change in gdb-mi.el.
1365 (list_processes_1): Deal with no program name.
1366 (start_process_unwind): Use pid == -2 to mean no process.
1367
1ac9108a
SM
13682009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1369
1370 * cmds.c (nonundocount): New global variable.
1371 (keys_of_cmds): Initialize it.
1372 (Fself_insert_command): Use it to combine upto 20 sequential chars
1373 into a single undo entry, just like the Qself_insert_command code in
1374 keyboard.c does.
1375 Call frame_make_pointer_invisible, also like the Qself_insert_command
1376 code in keyboard.c does.
1377 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1378 than its own local replacement for it.
1379
e267324c
KR
13802009-08-10 Ken Raeburn <raeburn@raeburn.org>
1381
1ac9108a 1382 * fns.c (concat): Don't re-set string length to its current value.
77437343 1383
1ac9108a
SM
1384 * coding.h (decode_coding_string, encode_coding_string):
1385 Use SBYTES macro.
f0bed503 1386
1ac9108a 1387 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1388 (doprnt): Merge with doprnt1, discarding lispstrings code.
1389 * lisp.h (doprnt_lisp): Don't declare.
1390
416e006d
JL
13912009-08-07 Juri Linkov <juri@jurta.org>
1392
1393 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1394
6f7d5780
DN
13952009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1396
1397 * print.c (syms_of_print): Undo previous change.
1398
f19a0f5b
TZ
13992009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1400
1401 * lread.c (read1, syms_of_lread): Read hashtables back from the
1402 readable format.
1403
1404 * print.c (print_preprocess, print_object): Print hashtables fully
1405 and readably.
1406 (syms_of_print): Provide 'hashtable-print-readable.
1407
b9173dc2
AR
14082009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1409
1410 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1411 no family set.
1412 (nsfont_open): Handle case when entity has no family.
1413
1586503c
AR
14142009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1415
1416 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1417 element, not a list, for match case.
1418
087048cd
KH
14192009-07-28 Kenichi Handa <handa@m17n.org>
1420
1421 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1422 rigidly.
1423
1424 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1425 font_parse_xlfd. Check font properties more rigidly.
1426
780c2506
DN
14272009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1428
31fd7c5c
JB
1429 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1430 bsd-common.h.
780c2506 1431
a8c0cc18
KH
14322009-07-27 Kenichi Handa <handa@m17n.org>
1433
1434 * xfaces.c (face_with_height): Call font_clear_prop.
1435
4fbe2306
CY
14362009-07-26 Chong Yidong <cyd@stupidchicken.com>
1437
111d9af3
CY
1438 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
1439
1440 * xterm.c (x_term_init): Use Qx.
1441
4fbe2306
CY
1442 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
1443
1ac9108a 1444 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
1445 (ns_get_color): Revert 2009-07-16 change.
1446
beb0b7f9
EZ
14472009-07-25 Eli Zaretskii <eliz@gnu.org>
1448
1449 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 1450 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 1451
2baf5e76
KR
14522009-07-25 Ken Raeburn <raeburn@raeburn.org>
1453
1ac9108a
SM
1454 * coding.h (decode_coding_string, encode_coding_string):
1455 Use SCHARS macro.
8890e5f5 1456
2baf5e76 1457 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 1458 (load_depth): Delete.
2baf5e76
KR
1459 (Qload_in_progress): New variable.
1460 (load_unwind): Don't reference load_depth or load_in_progress.
1461 (Fload): Likewise; specbind Qload_in_progress instead.
1462 (init_lread): Don't initialize load_depth.
1463 (syms_of_lread): Initialize and protect Qload_in_progress.
1464
1395c6f5
AR
14652009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1466
1467 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1468
4e2f36cf
AR
14692009-07-23 Yavor Doganov <yavor@gnu.org>
1470
1471 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1472
5dd9a6f7
AR
14732009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1474
1475 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
1476 Bugs 3792, 3720, 2402.
1477 (ns_lookup_indexed_color): Check for bad index.
1478 (ns_index_color): Init unused slot to 0.
1479 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
1480 Bug 3714, possibly 3082.
5dd9a6f7 1481
c902b920
JR
14822009-07-22 Jason Rumney <jasonr@gnu.org>
1483
1ac9108a
SM
1484 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
1485 Position IME window at cursor (Bug#2570).
c902b920
JR
1486 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
1487 (globals_of_w32fns): Dynamically load functions required above.
1488
1489 * w32term.c (w32_draw_window_cursor): Send message to reposition
1490 any IME window.
1491
090101cf
CY
14922009-07-21 Chong Yidong <cyd@stupidchicken.com>
1493
1494 * fileio.c: Revert 2009-07-16 changes.
1495 (Vauto_save_include_big_deletions): New variable.
1496 (Fdo_auto_save): Disable auto-save only if
1497 auto-save-include-big-deletions is nil.
1498
e6583e3d
CY
14992009-07-21 Chong Yidong <cyd@stupidchicken.com>
1500
1501 * xdisp.c (move_it_to): For continued lines ending in a tab, take
1502 the overflowed pixels into account (Bug#3879).
1503
ece435a5
KR
15042009-07-21 Ken Raeburn <raeburn@raeburn.org>
1505
1506 * lread.c (load_depth): New variable.
1507 (Fload, load_unwind, init_lread): Set it to the load recursion
1508 depth; set load_in_progress as a simple boolean based on the
1509 current load_depth. (Bug#3892)
1510
40b2d973
AR
15112009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1512
1513 * nsfont.m (ns_has_attribute): Remove.
1514 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
1515
10be7e0d
JL
15162009-07-18 Juri Linkov <juri@jurta.org>
1517
1518 * process.c (Fset_process_query_on_exit_flag): Mention killing
1519 a buffer in docstring.
1520
fa055055
KH
15212009-07-17 Kenichi Handa <handa@m17n.org>
1522
1523 * casetab.c (shuffle): Fix the logic of setting up the cycle.
1524
042f7b69
YM
15252009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1526
1527 * nsfns.m (Fns_set_alpha): Remove function.
1528 (syms_of_nsfns): Don't defsubr it.
1529
1530 * nsterm.m (ns_get_color): Remove incompatible color formats.
1531 (ns_color_to_lisp): Generate #rrggbb color format string.
1532
4be941e3
RS
15332009-07-16 Richard Stallman <rms@gnu.org>
1534
1535 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
1536 (Fset_buffer_auto_saved): Handle save_length = -2.
1537
4e6b227d
CY
15382009-07-16 Chong Yidong <cyd@stupidchicken.com>
1539
1540 * xterm.c (Qx_gtk_map_stock): New var.
1541
1542 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
1543 of calling intern each time.
1544
a1856973
YM
15452009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1546
1547 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
1548 does tiling.
1549
1550 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
1551
497e54d8
KH
15522009-07-14 Kenichi Handa <handa@m17n.org>
1553
72d36834
KH
1554 * font.c (font_vconcat_entity_vectors): New function.
1555 (struct font_sort_data): New member font_driver_preference.
1556 (font_compare): Check font_driver_preference.
1557 (font_sort_entities): The format of the first argument changed.
1558 (font_delete_unmatched): Likewise.
1559 (font_list_entities): The return type changed.
1560 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
1561 (font_find_for_lface): Adjuste for the above changes.
1562 Don't suppress the checking of C even if the repertory supports it.
1563 (Flist_fonts): Adjust for the above changes.
72d36834 1564
1ac9108a
SM
1565 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
1566 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
1567 Reject a font who has adstyle property that is different from a
1568 langname derived from registry property.
1ac9108a 1569 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 1570
b6046155
EZ
15712009-07-13 Eli Zaretskii <eliz@gnu.org>
1572
1573 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
1574 local copy of dirfilename.
1575
fb6b6049
KH
15762009-07-13 Kenichi Handa <handa@m17n.org>
1577
e2402a5e
KH
1578 * chartab.c (sub_char_table_ref_and_range): Fix the range check
1579 against max_char.
1580
fb6b6049
KH
1581 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
1582 calling XSYMBOL (sym).
1583
65156807
EZ
15842009-07-11 Eli Zaretskii <eliz@gnu.org>
1585
1ac9108a
SM
1586 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
1587 New function.
1588 (directory_files_internal) [WINDOWSNT]:
1589 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
1590 the filesystem of the directory is fast or slow.
1591
1592 * w32.c (logon_network_drive): Don't assume PATH is an absolute
1593 file name.
1594 (is_slow_fs): New function.
1595 (stat): Use it to determine whether to issue more system calls to
1596 get accurate file attributes, when w32-get-true-file-attributes is
1597 `local'.
1598
e0ab5fcf
JD
15992009-07-10 Jan Djärv <jan.h.d@swipnet.se>
1600
1601 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 1602 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
1603 parameter font-parameter as default to the font dialog.
1604
784ceded
KH
16052009-07-10 Kenichi Handa <handa@m17n.org>
1606
1607 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
1608
fb8edc0b
EZ
16092009-07-09 Eli Zaretskii <eliz@gnu.org>
1610
1ac9108a 1611 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 1612
fb8edc0b
EZ
1613 * w32.c (stat): Treat UNC file names as residing on remote
1614 drives. (Bug#3542)
1615
635c75b1
KH
16162009-07-09 Kenichi Handa <handa@m17n.org>
1617
1618 * fontset.c (fontset_find_font): Fix previous change.
1619
c1d5ce94
MA
16202009-07-08 Michael Albinus <michael.albinus@gmx.de>
1621
1622 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
1623 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
1624 error flag.
1625
edb61b39
KH
16262009-07-08 Kenichi Handa <handa@m17n.org>
1627
374bf7e4
KH
1628 * fontset.c (fontset_find_font): Fix the logic of handling
1629 charset_matched.
1630 (font_for_char): Delete unused var.
1631 (generate_ascii_font_name): Delete it.
1632
edb61b39
KH
1633 * coding.h (JIS_TO_SJIS2): Fix the code range check.
1634
1635 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
1636 (encode_coding_sjis): Fix the code range check.
1637
0f3f018c
CY
16382009-07-07 Chong Yidong <cyd@stupidchicken.com>
1639
1640 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
1641 (Fexpand_file_name): Copy string data properly (Bug#3772).
1642
fcaf6f3a
JD
16432009-07-07 Jan Djärv <jan.h.d@swipnet.se>
1644
1645 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
1646 first MapNotify.
1647
6809ca75
KH
16482009-07-07 Kenichi Handa <handa@m17n.org>
1649
1650 * character.h (unibyte_has_multibyte_table): Delete extern.
1651 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
1652
1653 * charset.c (Fset_charset_priority): Update charset_unibyte.
1654 (syms_of_charset): Initialize charset_unibyte.
1655
1656 * character.c (unibyte_has_multibyte_table): Delete it.
1657 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
1658 charset_unibyte.
1659 (multibyte_char_to_unibyte_safe): Likewise.
1660 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
1661
1ac9108a 1662 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
1663 (x_produce_glyphs): Likewise.
1664
1665 * .gdbinit (xcharset): Fix the treating $arg0.
1666
ad9e2d54
EZ
16672009-07-04 Eli Zaretskii <eliz@gnu.org>
1668
1669 Emulation of `getloadavg' on MS-Windows.
1670 * w32.c: Include float.h
1671 (g_b_init_get_native_system_info, g_b_init_get_system_times)
1672 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
1673 (get_native_system_info, get_system_times): New functions.
1674 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
1675 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
1676 (globals_of_w32): Initialize g_b_init_get_native_system_info,
1677 g_b_init_get_system_times, and num_of_processors.
1678
0a3472c7
JR
16792009-07-03 Jason Rumney <jasonr@gnu.org>
1680
1681 * w32term.c (w32_initialize): Use standard types.
1682
80904120
EZ
16832009-07-03 Eli Zaretskii <eliz@gnu.org>
1684
1685 * dired.c (Ffile_attributes): Decode user and group names by the
1686 locale's encoding. (Bug#3443)
1687
6978862d
DN
16882009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
1689
f8d23104
DN
1690 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
1691 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
1692
1693 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
1694
1695 * term.c (init_tty): Remove spurious #ifdef.
1696
6978862d
DN
1697 * m/mips.h: Mention this file is also used for netbsd.
1698 * m/pmax.h: Remove file.
1699
e044e4fc
JD
17002009-07-03 Jan Djärv <jan.h.d@swipnet.se>
1701
1702 * xterm.h (struct x_display_info): Add invisible_cursor.
1703 (struct x_output): Add current_cursor.
1704
1705 * xterm.c (XTtoggle_invisible_pointer): New function.
1706 (x_define_frame_cursor): Don't define cursor if invisible or the
1707 same as before. Set current_cursor.
1708 (x_create_terminal): Set toggle_invisible_pointer_hook.
1709
1710 * xfns.c (make_invisible_cursor): New function.
1711 (x_set_mouse_color): Call make_invisible_cursor.
1712 Set current_cursor.
1713 (x_window): Set current_cursor.
1714
1715 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
1716
1717 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
1718 inserting a character.
1719 (read_avail_input): Call frame_make_pointer_visible.
1720
1721 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
1722 (frame_make_pointer_invisible, frame_make_pointer_visible):
1723 New functions.
e044e4fc
JD
1724 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
1725
1726 * frame.h: Declare frame_make_pointer_invisible and
1727 frame_make_pointer_visible.
1728 (struct frame): Add pointer_invisible.
1729
574c8efa
JD
17302009-07-02 Jan Djärv <jan.h.d@swipnet.se>
1731
7b507248
JD
1732 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
1733 frame isn't visible.
1734 (xg_frame_resized): If width/height is -1, get size of window
1735 from X server.
1736
1737 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
1738 for MapNotify.
1739
835bdaa7 1740 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 1741 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 1742 (flush_and_sync): Reintroduce.
574c8efa 1743
3f1c6666 17442009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 1745
31fd7c5c 1746 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
1747
1748 * xterm.c (x_handle_net_wm_state): Also look for sticky.
1749 (x_term_init): Initialize Xatom_net_wm_state_sticky.
1750
1751 * frame.h: Declare Qsticky.
1752
cad9ef74
JD
1753 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
1754
1755 * nsfns.m (ns_frame_parm_handlers): Ditto.
1756
1757 * frame.c: Declare Qsticky.
1758 (frame_parms): Add sticky.
1759
1760 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
1761
1762 * xterm.h: Declare x_set_sticky.
1763
1764 * xterm.c (x_set_sticky): New function.
1765
69b16610
JD
1766 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
1767 (xg_tool_bar_menu_proxy): Attach enter/leave events to
1768 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
1769
1770 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
1771
1772 * frame.c: Qmaximized is new.
1773 (x_set_frame_parameters): Do not handle fullscreen specially.
1774 Only set width and height if explicitly set.
1775 (x_set_fullscreen): Handle Qmaximized.
1776 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
1777 (syms_of_frame): Initialize Qmaximized.
1778
1ac9108a
SM
1779 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
1780 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
1781
1782 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
1783 for Expose event. Add call to x_check_fullscreen for MapNotify event.
1784 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
1785 set gravity to NorthWestGravity when USE_GTK.
1786 (set_wm_state): New function.
31fd7c5c 1787 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
1788 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
1789 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 1790 or the case when no window manager is running. That means remove calls
3f1c6666
JD
1791 to x_real_positions and x_fullscreen_adjust.
1792
1793 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
1794 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
1795 flush_and_sync.
1796 (xg_height_changed): New function.
1797 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
1798 and gtk_window_set_policy. Set frame gravity after parsing the
1799 geometry string.
3f1c6666
JD
1800 (xg_update_frame_menubar, free_frame_menubar)
1801 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
1802 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
1803 Remove calls to xg_frame_set_char_size.
1804
fd503d99
KH
18052009-07-01 Kenichi Handa <handa@m17n.org>
1806
1807 * keyboard.c (decode_keyboard_code): New function.
1808 (tty_read_avail_input): Decode the input bytes if necessary.
1809
1ac9108a
SM
1810 * coding.c (setup_coding_system):
1811 Initialize coding->carryover_bytes to 0.
fd503d99
KH
1812 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
1813 use Qno_conversion.
1814
24ed93fb
YM
18152009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1816
1817 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
1818
99061dfc
CY
18192009-06-30 Chong Yidong <cyd@stupidchicken.com>
1820
1ac9108a 1821 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 1822
ff90fbde
JR
18232009-06-30 Jason Rumney <jasonr@gnu.org>
1824
1825 * w32term.c (w32_initialize): Use GetModuleHandle for library that
1826 is already loaded.
1827 Set user model ID if supported (bug#1849).
1828
5f445726
JM
18292009-06-29 Jim Meyering <meyering@redhat.com>
1830
1831 Remove useless if-before-xfree test.
1832 * nsfont.m (nsfont_close): Remove useless test.
1833 * term.c (delete_tty): Likewise.
1834 * w32.c (system_process_attributes): Likewise.
1835 * w32font.c (w32font_close): Likewise.
1836 * xfaces.c (x_free_gc): Likewise.
1837 * xselect.c (buffer): Likewise.
1838
b9607587
AS
18392009-06-28 Andreas Schwab <schwab@linux-m68k.org>
1840
1841 * process.c (send_process): Keep decoded string in a local
1842 variable and protect it from GC. (Bug#3521)
1843
89ba96f4
EZ
18442009-06-28 Eli Zaretskii <eliz@gnu.org>
1845
1846 * term.c (create_tty_output) [MSDOS]: #ifdef away.
1847 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
1848
098a1589
CY
18492009-06-28 Chong Yidong <cyd@stupidchicken.com>
1850
485422be
CY
1851 * xdisp.c (start_display, handle_face_prop)
1852 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
1853 (redisplay_window, try_window_id, produce_image_glyph):
1854 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 1855
098a1589
CY
1856 * xterm.c (x_update_window_begin, x_new_focus_frame)
1857 (x_scroll_bar_handle_click, handle_one_xevent)
1858 (handle_one_xevent, XTread_socket, x_focus_on_frame)
1859 (x_make_frame_visible, x_make_frame_invisible)
1860 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
1861 code chunks that are now obsolete.
1862
78c38319
MA
18632009-06-28 Michael Albinus <michael.albinus@gmx.de>
1864
1865 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
1866 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
1867 for hours, when optimzation is enabled.
1868 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
1869 (xd_read_message): Make them static.
1870
4189ed40
CY
18712009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
1872
1873 * term.c (turn_on_face): Allow simultaneously bold and dim
1874 terminal faces (Bug#3530).
1875
cd9b5e16
CY
18762009-06-27 Chong Yidong <cyd@stupidchicken.com>
1877
4e23bedb
CY
1878 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
1879
cd9b5e16
CY
1880 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
1881 truncation glyphs (Bug#3686).
1882
07cc3c35
GM
18832009-06-27 Glenn Morris <rgm@gnu.org>
1884
1885 * m/pmax.h: Restore file, with only netbsd portions.
1886
31fd7c5c 18872009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 1888
cd9b5e16 1889 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 1890
42d4a64f
KH
18912009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
1892
1893 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
1894 the arg FORCE_SYMBOL.
1895
930fe55b 18962009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
1897
1898 * fontset.c (fontset_find_font): When a usable rfont_def is found
1899 in a fallback font-group, make it the first element of the group.
1900
57ebc3fd
CY
19012009-06-24 Chong Yidong <cyd@stupidchicken.com>
1902
1903 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
1904
f084f942
KH
19052009-06-24 Kenichi Handa <handa@m17n.org>
1906
1907 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
1908 set for C.
1909 (fontset_font): Record the availability of a font for C both in
1910 the realized fontsets of the current one and the default one.
1911
2f686c87
DN
19122009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
1913
1914 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
1915 conditional, it is always defined on AIX.
1916
666e158e
MB
19172009-06-23 Miles Bader <miles@gnu.org>
1918
1919 * window.c (Vrecenter_redisplay): New variable.
1920 (syms_of_window): Initialize it.
1921 (Qtty): New extern declaration.
1922 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
1923
c6da7cd2
JM
19242009-06-23 Jim Meyering <meyering@redhat.com>
1925
1ac9108a
SM
1926 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
1927 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 1928 pointer dereferences are guaranteed to be valid.
c6da7cd2 1929
678dca3d
KH
19302009-06-23 Kenichi Handa <handa@m17n.org>
1931
74d75424
KH
1932 * emacs.c (main): Call init_font ().
1933
1934 * font.h (Vfont_log): Extern it.
1935 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
1936
1937 * font.c (font_sort_entities, font_list_entities)
1938 (font_matching_entity, font_open_entity)
1939 (font_close_object): Change font_add_log to FONT_ADD_LOG.
1940 (Vfont_log): Delete static.
1941 (font_log_env_checked): Delete this variable.
1942 (font_add_log): Don't check font_log_env_checked.
1943 (font_deferred_log): Check Vfont_log.
1944 (init_font): New function.
1945
678dca3d
KH
1946 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
1947
1948 * w32font.c: Change font_add_log to FONT_ADD_LOG.
1949
1950 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
1951
1952 * xfont.c: Change font_add_log to FONT_ADD_LOG.
1953
1954 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
1955 (face_for_char): Don't call font_deferred_log here.
1956 (font_for_char): Likewise.
1957
8a668709
CY
19582009-06-22 Chong Yidong <cyd@stupidchicken.com>
1959
9a01ee33
CY
1960 * w32term.c (x_draw_glyph_string): Use the glyph string's width
1961 rather than its background_width for drawing the overline and
1962 underline (Bug#489).
1963
1964 * xterm.c (x_draw_glyph_string): Use the glyph string's width
1965 rather than its background_width for drawing the overline and
1966 underline (Bug#489).
ec7c9926
CY
1967 (xg_default_icon_file): New variable.
1968 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
1969 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 1970
8a668709
CY
1971 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
1972 (load_overlay_strings): Remove externs.
1973 (fast_find_position): Function deleted.
1974 (mouse_face_from_buffer_pos): New function, based on
1975 fast_find_position. Correctly handle before-strings,
1976 display-strings, and after-strings (Bug#1220).
1977 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
1978
4d4c02d8
CY
19792009-06-21 Chong Yidong <cyd@stupidchicken.com>
1980
1ac9108a 1981 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
1982 (move_it_in_display_line_to, move_it_in_display_line_to)
1983 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
1984
70243478
CY
19852009-06-21 Chong Yidong <cyd@stupidchicken.com>
1986
1987 * Branch for 23.1.
1988
13087e59
JR
19892009-06-21 Jason Rumney <jasonr@gnu.org>
1990
1991 * w32term.c (keyboard_codepage): New static variable.
1992 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
1993 (w32_read_socket) [WM_CHAR]: Use it to decode character
1994 input (bug#3237).
1995 (w32_initialize): Initialize it.
1996 (codepage_for_locale): New function.
1997
4735b74e
KR
19982009-06-20 Ken Raeburn <raeburn@raeburn.org>
1999
2000 * process.c (status_message): Pass Faset index argument as a lisp
2001 object, so as to work with USE_LISP_UNION_TYPE.
2002
0e727afa
YM
20032009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2004
2005 * coding.c (Ffind_coding_systems_region_internal):
2006 Cache checked characters.
2007
cf299835
KH
20082009-06-18 Kenichi Handa <handa@m17n.org>
2009
1ac9108a 2010 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2011
90f20d94
AS
20122009-06-18 Andreas Schwab <aschwab@redhat.com>
2013
2014 * xdisp.c (redisplay_internal): Check that the frame is still
2015 live after redisplay of its windows.
2016 (redisplay_windows): Check that the window is still live.
2017
7f1faf1c
KH
20182009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2019
2020 * coding.c (detect_coding_utf_16): Fix previous change.
2021
cc13543e
KH
20222009-06-16 Kenichi Handa <handa@m17n.org>
2023
2024 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2025 UTF-16 by checking the dispersion of Eth and Oth bytes.
2026
977b85f4
AS
20272009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2028
2029 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2030
66bd43d1
KH
20312009-06-15 Kenichi Handa <handa@m17n.org>
2032
2033 * process.c (status_message): Fix previous change. Be sure to
2034 decode a localized string.
2035
cb5ca9c5
YM
20362009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2037
2038 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2039 add comment explaining why.
2040
ec7709ba 20412009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2042
ec7709ba 2043 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2044
4b7f335c
AR
20452009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2046
2047 * nsfont.m (ns_attribute_value): Remove.
2048 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2049 (ns_has_attribute): Shrink the normal range.
2050 (ns_findfonts): Don't worry about requested spec in determining
2051 need for synthItal.
e41820ee 2052 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2053
73b26103
SZ
20542009-06-14 Seiji Zenitani <zenitani@mac.com>
2055
2056 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2057
5753e4da
KH
20582009-06-11 Kenichi Handa <handa@m17n.org>
2059
2060 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2061 overhang for the static composition case.
2062
3561b671
KH
20632009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2064
5753e4da
KH
2065 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2066 overhang for the automatic composition case.
2067
3561b671
KH
2068 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2069 composition case.
2070
852bbd41
CY
20712009-06-10 Chong Yidong <cyd@stupidchicken.com>
2072
2073 * xdisp.c (get_next_display_element): When handling wrap-prefix
2074 and line-prefix, treat \n as a control character (bug#3502).
2075
9903d1e6
KH
20762009-06-10 Kenichi Handa <handa@m17n.org>
2077
2078 * font.c (font_parse_family_registry): Fix for one-char foundry.
2079 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2080
0bcbaaaa
CY
20812009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2082
2083 * process.c (status_message): Fix handling of multibyte signal
2084 string (Bug#3499).
2085
40aa3f13
JM
20862009-06-09 Jim Meyering <meyering@redhat.com>
2087
1f80c7e2
CY
2088 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2089 color name is missing.
40aa3f13 2090
72d51285
KH
20912009-06-09 Kenichi Handa <handa@m17n.org>
2092
2093 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2094 FROM-CODE and TO-CODE are codepoints of CHARSET.
2095
c1d04d84
AR
20962009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2097
2098 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2099
21002009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2101
2102 Changes to support :script/:lang/:otf in NS font driver.
2103 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2104 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2105 indicate not part of font driver interface, and change callers.
2106 (ns_get_family): Remove pointless null check.
2107 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2108 ns_spec_to_descriptor, ns_descriptor_to_entity.
2109 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2110 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2111 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2112 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2113 (ns_get_req_script, ns_accumulate_script_ranges)
2114 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2115 New functions.
2116 (nsfont_list, nsfont_match): Use ns_findfonts.
2117 (nsfont_open): Use font descriptor instead of traits.
2118 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2119 (dump_glyphstring): Rename to ns_dump_glyphstring.
2120
c7eb9816
AR
2121 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2122
c1d04d84
AR
2123 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2124
2125 * fontset.c (fontset_from_font): Remove NS-specific code.
2126
ec7709ba 21272009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2128
2129 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2130 nonactive windows.
2131
31fd7c5c 21322009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2133
1ac9108a 2134 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2135
68852c13 21362009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2137
2138 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2139
6756cd1d
CY
21402009-06-07 Chong Yidong <cyd@stupidchicken.com>
2141
2142 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2143 account for the overflowing of newlines into the last glyph on the
2144 display line (Bug#3482).
2145
28bf482a
DR
21462009-06-05 David Reitter <david.reitter@gmail.com>
2147
ec7709ba
JB
2148 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2149 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2150 Fns_selection_exists_p, Fns_selection_owner_p.
2151
fdb55376
JR
21522009-06-03 Jason Rumney <jasonr@gnu.org>
2153
2154 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2155 available. (Bug#3379)
2156
05129fbe
KH
21572009-05-29 Kenichi Handa <handa@m17n.org>
2158
1ac9108a
SM
2159 * coding.c (get_translation_table):
2160 Check Venable_character_translation.
05129fbe 2161
ec7709ba 21622009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2163
ec7709ba
JB
2164 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2165 (x_make_frame_visible): Move frame to front rather than calling
15891144 2166 ns_raise_frame().
ec7709ba 2167 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2168 isn't key window.
ec7709ba 2169 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2170 drawRect may be called by NSView even if the frame is hidden.
2171
ec7709ba
JB
2172 * nsfns.m (Fx_create_frame): Follow other ports in
2173 determining visibility; default to t. Ensure async_visible is set.
15891144 2174
21f73755
EZ
21752009-05-23 Eli Zaretskii <eliz@gnu.org>
2176
2177 * dired.c (Ffile_attributes): Doc fix.
2178
34001e41
CY
21792009-05-22 Chong Yidong <cyd@stupidchicken.com>
2180
2181 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2182
46306a17
SM
21832009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2184
2185 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2186 and xfont_scratch_props.
2187 (syms_of_xfont): Do it here instead.
2188 (xfont_find_ccl_program): Delete, unused.
2189 (xfont_open): Delete unused var `i'.
2190
ef6e0694
KH
21912009-05-21 Kenichi Handa <handa@m17n.org>
2192
2193 * fontset.c (Qlatin): Don't make it static.
2194
46306a17
SM
2195 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2196 New functions.
ef6e0694
KH
2197 (xfont_scripts_cache, xfont_scratch_props): New variables.
2198 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2199 (xfont_list_pattern): Argument changed. Callers changed.
2200 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2201 (xfont_list): Don't reject a font spec with :script property.
2202 (xfont_has_char): Fix setting of encoding.
2203 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2204 xfont_scratch_props.
2205
22062009-05-19 Kenichi Handa <handa@m17n.org>
2207
46306a17 2208 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2209 Callers changed.
2210
22112009-05-18 Kenichi Handa <handa@m17n.org>
2212
2213 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2214
ac71ced7
SM
22152009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2216
2217 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2218 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2219
1c6d1051
YM
22202009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2221
2222 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2223 (x_delete_terminal): Dissociate resource database from display and
2224 then call XrmDestroyDatabase before closing display.
2225
9b9b779c
AR
22262009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2227
2228 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2229 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2230 whether selected frame is viable before raising it (based on patch
2231 by David Reitter), and improve commentary.
2232 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2233
cccd42d5
KH
22342009-05-15 Kenichi Handa <handa@m17n.org>
2235
2236 * font.c (Ffont_spec): Check arguments.
2237
337fbd17
CY
22382009-05-14 Chong Yidong <cyd@stupidchicken.com>
2239
2240 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2241 weight when testing attributes (Bug#3282).
2242
47a6002f
JD
22432009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2244
2245 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2246 what we expect to get in the next ConfigureNotify event.
2247
9cb363db
YM
2248 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2249 before Xft one (Bug#1696).
2250
b9126609
CY
22512009-05-07 David Reitter <david.reitter@gmail.com>
2252
2253 * nsfns.m (Fx_display_planes): Compute bitplanes using
2254 NSBitsPerPixelFromDepth (Bug#3207).
2255
27a69fd9
CY
22562009-05-10 Chong Yidong <cyd@stupidchicken.com>
2257
2258 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2259
00f37552
TTN
22602009-05-10 Ulrich Mueller <ulm@gentoo.org>
2261
2262 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2263
2d82a920
DR
22642009-05-07 David Reitter <david.reitter@gmail.com>
2265
ec7709ba
JB
2266 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2267 Respect mouse face background.
2d82a920 2268
46b0d52d
DR
22692009-05-07 David Reitter <david.reitter@gmail.com>
2270
ec7709ba
JB
2271 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2272 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2273 in ns_update_begin and ns_update_end.
2274
ce1b23bb
SM
22752009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2276
5996e1b7
SM
2277 * nsfns.m (ns_get_screen): Rewrite.
2278 Don't presume selected-frame is of type `ns'.
2279
ba98e3a0
SM
2280 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2281 all drivers.
2282
ce1b23bb
SM
2283 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2284
bcda200f
YM
22852009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2286
2287 * keyboard.h (add_user_signal): Fix typo in extern.
2288
2289 * lisp.h (add_user_signal): Remove extern.
2290
2291 * unexelf.c (unexec): Consider a section to precede the .bss section
2292 if its addresses overlap that of .bss.
2293 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2294 instead of dumping process.
2295
864660a2
SM
22962009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2297
2298 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2299
50da4e56
SM
23002009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2301
2302 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2303
51520a1a
DN
23042009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2305
2306 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2307 any statements.
2308
409ea3a1
AS
23092009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2310
59c4c60f
AS
2311 * process.c (read_process_output): Make sure the current buffer is
2312 always restored.
2313
409ea3a1
AS
2314 * coding.c (record_conversion_result): Don't modify
2315 Vlast_code_conversion_error for successful result.
2316 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2317
56f00ed2
KH
23182009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2319
2320 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2321 (load_charset_map): Remove unnecessary code.
56f00ed2 2322
4491c9d2
DR
23232009-04-30 David Reitter <david.reitter@gmail.com>
2324
35f5b128 2325 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2326 through f24.
2327
6970f632
CY
23282009-04-30 Chong Yidong <cyd@stupidchicken.com>
2329
2330 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2331
2332 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2333 face_at_buffer_position.
2334 (face_before_or_after_it_pos, get_next_display_element)
2335 (note_mouse_highlight): Update face_at_buffer_position call.
2336
2337 * term.c (term_mouse_highlight):
2338 * msdos.c (IT_note_mouse_highlight):
2339 * fontset.c (Finternal_char_font):
35f5b128 2340 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2341
2342 * dispextern.h (face_at_buffer_position): Update prototype.
2343
0c616f63
KH
23442009-04-30 Kenichi Handa <handa@m17n.org>
2345
35f5b128 2346 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2347
ad3aaf33
AS
23482009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2349
2350 * callproc.c (Fcall_process): Fix GC protection. Make sure
2351 current buffer is always restored.
2352
c3c963a0
YM
23532009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2354
2355 * atimer.c (init_atimer): Also clear stopped_atimers.
2356
2357 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2358
7e3386cb
YM
2359 * process.c (create_process): Clean up merger residues of
2360 2008-07-17 change.
2361
91f68422
CY
23622009-04-29 Ulrich Mueller <ulm@gentoo.org>
2363
2364 * lread.c (Vread_circle): New variable.
2365 (read1): Disable recursive read if Vread_circle is nil.
2366
24b34550
KH
23672009-04-29 Kenichi Handa <handa@m17n.org>
2368
2369 * fontset.h (set_default_ascii_font): Delete extern.
2370
2371 * fontset.c (set_default_ascii_font): Delete this unused function.
2372
2373 * frame.c (x_set_font): When ARG is a font-object, check if the
2374 font-object matches with the ASCII font-spec of the frame's
9c358bda 2375 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2376
77bf07e1
AS
23772009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2378
2379 * fns.c (Flocale_info): Protect vector from GC during decoding.
2380
2381 * process.c (Fstart_process): Protect argv strings from GC during
2382 encoding.
2383
2c55aacf
AS
23842009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2385
2386 * sysdep.c: Include <ctype.h>.
2387
b892d3c9
DR
23882009-04-27 David Reitter <david.reitter@gmail.com>
2389
35f5b128 2390 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2391 Remove commented-out code.
2392
9d0644c4
JB
23932009-04-26 Johan Bockgård <bojohan@gnu.org>
2394
2395 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2396
b7053016
JR
23972009-04-25 Jason Rumney <jasonr@gnu.org>
2398
2399 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2400
4e8231f3
YM
24012009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2402
2403 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2404 Swap bytes in short integer if fringe bitmap width > 8.
2405
493dcf2c
KH
24062009-04-23 Kenichi Handa <handa@m17n.org>
2407
2408 * xfaces.c (Fx_list_fonts): If a font size is specified in
2409 PATTERN, set it in returned scalable fonts.
2410
401e9e57
CY
24112009-04-22 Chong Yidong <cyd@stupidchicken.com>
2412
708e05dc
CY
2413 * keyboard.c (Fset_input_meta_mode): Doc fix.
2414
2415 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2416
1ac9108a 2417 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2418
2419 * coding.c (Fterminal_coding_system): Doc fix.
2420
2421 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2422 (Fx_display_pixel_height, Fx_display_planes)
2423 (Fx_display_color_cells, Fx_server_max_request_size)
2424 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2425 (Fx_display_mm_height, Fx_display_mm_width)
2426 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2427 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2428 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2429 (check_x_display_info): Handle terminal objects instead of
2430 terminal ids.
2431
401e9e57
CY
2432 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
2433 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
2434 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
2435 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 2436
df80c7f0
KH
24372009-04-21 Kenichi Handa <handa@m17n.org>
2438
5a8f12af 2439 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 2440 (font_score): Check AVGWIDTH too.
908567ef 2441
df80c7f0
KH
2442 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
2443 worst case.
1ac9108a
SM
2444 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
2445 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 2446
705af33f
JR
24472009-04-19 Jason Rumney <jasonr@gnu.org>
2448
2449 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 2450 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
2451
2452 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
2453 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
2454 get_phys_cursor_geometry.
2455
b71ac3dd 2456 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
2457 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
2458 using get_phys_cursor_geometry.
2459
2460 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
2461 correctly calculated.
2462
dc2933eb
JD
24632009-04-19 Jan Djärv <jan.h.d@swipnet.se>
2464
1ac9108a
SM
2465 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2466 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2467 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2468 is deprecated.
2469
973e7849
AS
24702009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2471
2472 * font.c (font_put_frame_data): Use xfree instead of free.
2473
314d66f4
JB
24742009-04-17 Juanma Barranquero <lekktu@gmail.com>
2475
2476 * w32font.c (Qja, Qko): Remove declarations.
2477 (syms_of_w32font): Don't DEFSYM them.
2478
cf702558
CY
24792009-04-17 Chong Yidong <cyd@stupidchicken.com>
2480
2481 * font.c (Qja, Qko): Move definitions here from ftfont.c.
2482
2483 * font.h (Qja, Qko): Extern them.
2484
2485 * ftfont.c (Qja, Qko): Remove declarations.
2486
2487 * xfont.c (Qja, Qko): Remove declarations.
2488
b50504f5
KH
24892009-04-17 Kenichi Handa <handa@m17n.org>
2490
bde25748
KH
2491 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
2492 string from a vector to handle Latin-1 characters correctly.
2493
b50504f5
KH
2494 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
2495 entity even if the cache hits.
2496
f4646fff
AS
24972009-04-16 Andreas Schwab <schwab@linux-m68k.org>
2498
2499 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 2500 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 2501
e7deaab0
AS
2502 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
2503 * lisp.h: Adjust prototypes.
2504
0a0e7d49
CY
25052009-04-16 Chong Yidong <cyd@stupidchicken.com>
2506
2507 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
2508 change (Bug#3003).
2509
3c908a57
KH
25102009-04-16 Kenichi Handa <handa@m17n.org>
2511
1ac9108a 2512 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
2513
2514 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
2515 adstyle.
2516
2517 * ftfont.c (Qja, Qko): Don't make them static.
2518 (enum ftfont_cache_for): New enum.
2519 (fc_charset_table): Undo the previous change.
2520 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
2521 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
2522 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
2523 non-scarable font, try to get AVERAGE_WIDTH.
2524 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
2525 Change ft_face_cache from a list of a hash-table. Don't check
2526 `ja' and `ko' adstyle here.
2527 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
2528 FTFONT_CACHE_FOR_CHARET.
2529 (ftfont_get_charset): Undo the previous change.
1ac9108a 2530 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
2531 (ftfont_close): Likewise.
2532 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
2533
2534 * font.c (font_sort_entites): Change the meaning of the arg
2535 BEST-ONLY. Don't optimize for VEC of lenght 1.
2536 (font_select_entity): Just return the value of font_sort_entites.
2537
2538 * xfaces.c (merge_face_vectors): Reflect font properties in
2539 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
2540 font_clear_prop if a face attribute doesn't change.
2541
3c908a57
KH
2542 * charset.h (charset_ksc5601): Extern it.
2543
2544 * charset.c (charset_ksc5601): New variable.
2545 (Fdefine_charset_internal): Set charset_ksc5601.
2546 (init_charset_once): Initialize charset_ksc5601 to -1.
2547
d65859c3
DN
25482009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2549
2550 * fileio.c (history_delete_duplicates): Remove unused declaration.
2551
2552 * callint.c (history_delete_duplicates): New declaration.
2553 (Fcall_interactively): Remove command history duplicates when
2554 history_delete_duplicates is true.
2555
3ba010e5
EZ
25562009-04-14 Eli Zaretskii <eliz@gnu.org>
2557
2558 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
2559
06f19b91
KH
25602009-04-14 Kenichi Handa <handa@m17n.org>
2561
2562 * font.c (Ffont_info): Fix docstring. Fix the second element of
2563 the returned value (bug#2949).
2564
2cce8bfc
CY
25652009-04-14 Chong Yidong <cyd@stupidchicken.com>
2566
2567 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
2568
d156542d
KH
25692009-04-14 Kenichi Handa <handa@m17n.org>
2570
2571 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
2572 encoding charset is ascii_compatible.
2573
2574 * charset.c (Fdefine_charset_internal): Make charset
2575 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
2576 code_offset is 0, and covers all ASCII characters.
2577
86fa089e
SM
25782009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2579
2580 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
2581 (ns_string_to_pasteboard_internal):
2582 * nsmenu.m (process_dialog):
2583 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
2584 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
2585 * lisp.h (Fx_load_color_file): Declare.
2586
a8a3728b
KH
25872009-04-13 Kenichi Handa <handa@m17n.org>
2588
1ac9108a 2589 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
2590 (font_select_entity): Suppress the code to optimize for the same
2591 kind of fonts.
2592 (font_load_for_lface): Get a font that supports at least ASCII
2593 characters.
2594
2595 * ftfont.c (Qja, Qko): New variables.
2596 (fc_charset_table): Delete uniquifier data for iso8859-1.
2597 (ftfont_get_latin1_charset): New function.
2598 (get_adstyle_property): New function.
2599 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
2600 bitmap fonts.
2601 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
2602 Delete iso-8859-1 range from the charset of fonts whose adstyle is
2603 `ko' or `ja'.
2604 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 2605 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
2606 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
2607 property.
2608 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
2609 (syms_of_ftfont): DEFSYM Qja and Qko.
2610
483670b5
KH
26112009-04-09 Kenichi Handa <handa@m17n.org>
2612
12b55765
KH
2613 * charset.c (map_charset_chars): For a charset of `superset'
2614 method, fix calculation of code range.
2615
483670b5
KH
2616 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
2617 from the list of extra properties.
2618 (font_clear_prop): Be sure to delete `:name' font property.
2619
57d3b93b
KH
26202009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2621
b4b2c2ca
YM
2622 * dispnew.c (redraw_overlapping_rows): Fix detection of
2623 overlapping for topmost and bottommost rows.
2624
1ac9108a 2625 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 2626
472c3609
JR
26272009-04-06 Jason Rumney <jasonr@gnu.org>
2628
2629 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
2630
ab193662
KH
26312009-04-06 Kenichi Handa <handa@m17n.org>
2632
2633 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
2634
2635 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
2636
0c26f026
KH
26372009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2638
2639 * ftfont.c (ftfont_open): Fix checking of the return value of
2640 FT_Load_Char. Fix setting font->underline_thickness.
2641
e173bbce
CY
26422009-04-04 Chong Yidong <cyd@stupidchicken.com>
2643
2644 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
2645 (Fterminal_parameters, Fterminal_parameter)
2646 (Fset_terminal_parameter): In doc string, refer to terminal
2647 objects rather than terminal ids.
2648
693a2698
EZ
26492009-04-04 Eli Zaretskii <eliz@gnu.org>
2650
2651 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
2652 ret_lim_data. (Bug#2867)
2653
d5221487
CY
26542009-04-03 Chong Yidong <cyd@stupidchicken.com>
2655
2656 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
2657 so they don't get wider than the window, matching 2006-01-23
2658 change to the partner function in xdisp.c (Bug#2800).
2659
223509a3
KH
26602009-04-03 Kenichi Handa <handa@m17n.org>
2661
2662 * print.c (print_object): Make each lowest sub_char_table start a
2663 new line (Bug#2866).
2664
74fcd0b1
KH
26652009-04-02 Kenichi Handa <handa@m17n.org>
2666
2667 * fontset.c (fontset_font): Record no-font when a fontset
2668 explicitly tells not to try another font-specs.
2669
c542407d
SM
26702009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
2671
2672 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
2673
e3869731
KH
26742009-03-30 Kenichi Handa <handa@m17n.org>
2675
d8d2f142
KH
2676 * fontset.c (fontset_from_font): Specify only registry in a
2677 font-spec for all characters supported by that registry.
2678
e3869731
KH
2679 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
2680 even if HAVE_M17N_FLT is not defined.
2681
5da5f805
CY
26822009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
2683
2684 * ftfont.c: Conditionalize prototyping and use of
2685 ftfont_variation_glyphs.
2686
ab226c50
SM
26872009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2688
9628fed7
SM
2689 * frame.c (delete_frame): Work around compiler bug.
2690
2691 * editfns.c (general_insert_function): Adjust to insdel.c changes.
2692 * insdel.c (prepare_to_modify_buffer, signal_before_change):
2693 Some more EMACS_INT.
2694 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
2695
2696 * xdisp.c (dump_glyph): Fix typo.
2697
ae19ba7c
SM
2698 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
2699 (adjust_markers_gap_motion, adjust_markers_for_delete)
2700 (adjust_markers_for_insert, adjust_point)
2701 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
2702 (make_gap, copy_text, count_size_as_multibyte, insert)
2703 (insert_and_inherit, insert_before_markers)
2704 (insert_before_markers_and_inherit, insert_1)
2705 (count_combining_before, count_combining_after, insert_1_both)
2706 (insert_from_string, insert_from_string_before_markers)
2707 (insert_from_string_1, insert_from_gap, insert_from_buffer)
2708 (insert_from_buffer_1, adjust_after_replace)
2709 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
2710 (replace_range_2, del_range, del_range_1, del_range_byte)
2711 (del_range_both, del_range_2, modify_region)
2712 (prepare_to_modify_buffer, signal_before_change)
2713 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
2714 for buffer positions and sizes.
2715 * lisp.h: Adjust prototypes accordingly.
2716
2717 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
2718 (non_regular_inserted, non_regular_nbytes, read_non_regular)
2719 (Finsert_file_contents): Use EMACS_INT for buffer positions.
2720
ab226c50
SM
2721 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
2722
46dfb8fb
JD
27232009-03-27 Jan Djärv <jan.h.d@swipnet.se>
2724
2725 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
2726 lines and columns so we keep the same pixel height and width.
2727
2728 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
2729 the property _NET_WM_STATE has changed.
46dfb8fb
JD
2730 (x_handle_net_wm_state): New function to update frame parameter
2731 fullscreen.
2732 (x_term_init): Initialize atoms for _NET_WM_STATE.
2733
2734 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
2735
d347e494
SM
27362009-03-27 Kevin Ryde <user42@zip.com.au>
2737
2738 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
2739 Gpm_GetEvent as an error that justifies closing the filedescriptor.
2740 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
2741 (Fgpm_mouse_stop): Pass that new parameter.
2742 * termhooks.h (close_gpm): Adjust prototype.
2743
84db11d6
SM
27442009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
2745
c95a5008
SM
2746 * lisp.h (Fx_focus_frame): Declare.
2747
84db11d6
SM
2748 * callint.c (Fcall_interactively): For '^' just delegate the work to
2749 handle-shift-selection.
2750 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
2751
0a1958d6
CY
27522009-03-24 Chong Yidong <cyd@stupidchicken.com>
2753
0bfdff23
CY
2754 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
2755
0a1958d6
CY
2756 * data.c (Qinteractive_form): New variable.
2757 (Finteractive_form): Use it.
2758
2759 * eval.c (Fcommandp): Use Qinteractive_form.
2760
58aec0d6
JR
27612009-03-24 Jason Rumney <jasonr@gnu.org>
2762
2763 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
2764 Calculate total size precisely. Decode environment variables
2765 before substituting. (Bug#38)
2766
553dd618
KH
27672009-03-24 Kenichi Handa <handa@m17n.org>
2768
2769 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 2770 encoding (Bug#2722).
553dd618 2771
c39ea606
JD
27722009-03-23 Jan Djärv <jan.h.d@swipnet.se>
2773
2774 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
2775 that gdpy is set.
2776
bc9b2b5e
AM
27772009-03-22 Alan Mackenzie <acm@muc.de>
2778
2779 * callint.c (Finteractive): Clarify the doc string - even
2780 promptless elements need \n separators.
2781
9f995a76
JR
27822009-03-22 Jason Rumney <jasonr@gnu.org>
2783
2784 * w32term.c (syms_of_w32term): Doc fix for
2785 x-use-underline-position-properties.
2786
22749e9a
EZ
27872009-03-21 Eli Zaretskii <eliz@gnu.org>
2788
2789 * w32.c (getpwuid): Change argument type to unsigned.
2790 (struct w32_id): Change type of `rid' member to unsigned.
2791 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
2792 argument ID to unsigned. All callers changed.
2793 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
2794
e00553bf
EZ
27952009-03-20 Eli Zaretskii <eliz@gnu.org>
2796
2797 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
2798 negative, produce a float value.
2799
2800 * dired.c (make_uid, make_gid): New functions.
2801 (Ffile_attributes): Use them to avoid negative UID and GID.
2802
f761d6b6
JB
28032009-03-20 Juanma Barranquero <lekktu@gmail.com>
2804
2805 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
2806 (syms_of_keyboard) <command-hook-internal, input-method-function>:
2807 Fix typos in docstrings.
2808
d507f8d7
KH
28092009-03-19 Kenichi Handa <handa@m17n.org>
2810
2811 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
2812 changed, use font_load_for_lface to get a new font object.
2813 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
2814
2815 * frame.c (x_set_font): Handle the case that ARG is a cons.
2816
c68845e0
GM
28172009-03-19 Glenn Morris <rgm@gnu.org>
2818
2819 * fileio.c (Fsubstitute_in_file_name): Doc fix.
2820
bfa49dd1
CY
28212009-03-19 Chong Yidong <cyd@stupidchicken.com>
2822
2823 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
2824
8458d4c1
KH
28252009-03-19 Kenichi Handa <handa@m17n.org>
2826
2827 * charset.c (load_charset_map_from_file): When a mapfile can't be
2828 loaded, signal an error.
2829
78e7d1fe
EZ
28302009-03-18 Eli Zaretskii <eliz@gnu.org>
2831
2832 * dired.c (Ffile_attributes): Make sure UID and GID are always
2833 positive, even if the value is too large for a positive EMACS_INT.
2834 Doc fix.
2835
2836 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
2837
5da9fdfa
YM
28382009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2839
2840 * xmenu.c (xdialog_show): Move Fredisplay call ...
2841 (Fx_popup_dialog): ... here.
2842
7519c40d
SM
28432009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
2844
2845 * dired.c (file_name_completion): Disable the first optimization just
2846 installed, since it is not implemented correctly.
2847
2cd298e2
SM
28482009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2849
2850 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 2851 only if the entry can affect bestmatch.
2cd298e2
SM
2852 Stop the search early, as Ftry_completion already does.
2853
48d37adf
CY
28542009-03-17 Chong Yidong <cyd@stupidchicken.com>
2855
e10c9c93 2856 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 2857
9286b16a
CY
28582009-03-15 Chong Yidong <cyd@stupidchicken.com>
2859
2860 * keyboard.c (parse_menu_item): Don't display remappings as menu
2861 equivalent bindings (Bug#788).
2862
f7b146dc
JR
28632009-03-15 Jason Rumney <jasonr@gnu.org>
2864
2865 * w32term.h (WM_EMACS_PAINT): New message.
2866 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
2867 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
2868 before passing to lisp thread. (Bug#950)
2869
f761d6b6 28702009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 2871
d93f9575
CY
2872 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
2873 variable as it was never reset.
2874 (ns_term_init): Remove initialization of Lisp-settable defaults
2875 and ns_expand_space.
2876 (-setPanelFromDefaultValues): Remove ns_expand_space.
2877 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
2878 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
2879 i.e. no additional spacing, similar to Carbon port.
2880
d93f9575
CY
2881 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
2882 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 2883
305018ec
JD
28842009-03-14 Jan Djärv <jan.h.d@swipnet.se>
2885
2886 * sound.c (alsa_configure): Remove call to deprecated
2887 snd_pcm_sw_params_set_xfer_align.
2888
f761d6b6 28892009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
2890
2891 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
2892 after clicking in a detached tool bar.
2893 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
2894
46e722a9
SM
28952009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
2896
348db3dd
SM
2897 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
2898 int/Lisp_Object mixup).
46e722a9 2899
a3d16f39
KH
29002009-03-13 Kenichi Handa <handa@m17n.org>
2901
2902 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 2903 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
2904 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
2905 (set_fontset_font): Change ARG to a vector. Handle range_list in
2906 ARG correctly.
2907 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 2908 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
2909 the above change.
2910 (fontset_from_font): Fix previous change.
fe24f56a 2911 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
2912 entry. If FONTSET is the default fontset, don't set the extra
2913 slot of the returning char-table.
2914
b066e6b6
JB
29152009-03-12 Juanma Barranquero <lekktu@gmail.com>
2916
2917 * nsfns.m (Fx_close_connection): Doc fix.
2918 (Fns_do_applescript): Reflow docstring.
2919 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
2920 (Fx_display_pixel_width, Fx_display_pixel_height)
2921 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
2922 Fix typos in docstrings.
2923 (Fns_set_alpha): Fix typos in error messages.
2924
d472514e 29252009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 2926
d472514e 2927 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
2928 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
2929 were used for such events.
2930
d472514e
JB
2931 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
2932 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 2933
d472514e 2934 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
2935 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
2936
fb930676
KH
29372009-03-11 Kenichi Handa <handa@m17n.org>
2938
ff85581a
KH
2939 * font.h (font_open_by_spec): Extern it.
2940
c50b7e98
KH
2941 * font.c (font_open_by_spec): New function.
2942 (font_open_by_name): Use font_open_by_spec.
2943
fb930676
KH
2944 * frame.c (x_set_font): When ARG is a font-object, don't alter the
2945 fontset of the frame.
2946
2947 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
2948 modify the default font of frames that use this fontset.
2949 (num_auto_fontsets): New variable.
2950 (fontset_from_font): Use num_auto_fontsets to decide a fontset
2951 name. Be sure to set FONTSET_ASCII to the correct font name.
2952 (update_auto_fontset_alist): New function.
2953
df4e8455
JB
29542009-03-11 Juanma Barranquero <lekktu@gmail.com>
2955
2956 * makefile.w32-in: Update dependencies.
2957
0a375797
AR
29582009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2959
2960 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
2961
61313fa3
SM
29622009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2963
2964 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
2965
b55103fb
CY
29662009-03-10 Chong Yidong <cyd@stupidchicken.com>
2967
2968 * lread.c (Feval_buffer): Doc fix.
2969
dde2559c
KH
29702009-03-09 Kenichi Handa <handa@m17n.org>
2971
2972 * charset.c (Qfile_name_handler_alist): Extern it.
2973 (load_charset_map_from_file): Temporarily bind
2974 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
2975
df4e8455 29762009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 2977
47f588bb
GM
2978 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
2979 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 2980
4ddf94bd
AR
29812009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2982
4c9bdfc2
AR
2983 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
2984 (x_set_window_size): Change back to calculated method of setting
2985 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
2986 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
2987 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
2988
fe41ae9e
AR
2989 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
2990
4c9bdfc2
AR
2991 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
2992 accelerator in parens under GNUstep.
2993
825d0875
KH
29942009-03-06 Kenichi Handa <handa@m17n.org>
2995
2996 These changes are to detect incorrect composition sequence without
f3b3be74 2997 looking ahead the source. (Bug#2370)
825d0875
KH
2998
2999 * coding.h: Include "composite.h".
3000 (enum compisition_state): New enum.
3001 (struct compisition_status): New struct.
3002 (struct iso_2022_spec): New member cmp_status.
3003 (struct emacs_mule_spec): New struct.
3004 (struct coding_system): New members ctext_extended_segment_len and
3005 embedded_utf_8. Change the union member
3006 spec.emacs_mule_full_support to spec.emacs_mule.
3007
3008 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3009 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3010 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3011 (ADD_COMPOSITION_DATA): New arg nbytes.
3012 (emacs_mule_char): New arg cmp_status.
3013 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3014 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3015 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3016 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3017 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3018 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3019 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3020 (EMACS_MULE_COMPOSITION_END): New macro.
3021 (emacs_mule_finish_composition): New function.
3022 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3023 (decode_coding_emacs_mule): Avoid long looking ahead while
3024 handling composition.
3025 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3026 (ENCODE_COMPOSITION_RULE): New macro.
3027 (finish_composition): New function.
3028 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3029 (DECODE_COMPOSITION_START): New implementation.
3030 (DECODE_COMPOSITION_END): Likewise.
3031 (STORE_COMPOSITION_RULE): New macro.
3032 (decode_coding_iso_2022): Avoid long looking ahead while handling
3033 composition, CTEXT extended segment, and embedded UTF-8.
3034 (setup_coding_system): For a coding of type iso-2022, reset
3035 CODING_ISO_EXTSEGMENT_LEN (coding) and
3036 CODING_ISO_EMBEDDED_UTF_8 (coding).
3037 (get_translation): Delete arguments last_block, from_nchars,
3038 to_nchars. Callers changed.
3039 (produce_chars): Don't modify charbuf. Adjusted for the change of
3040 get_translation.
98a326f7 3041 (produce_composition): Adjust for the new annotation sequence.
825d0875 3042 (handle_composition_annotation): Likewise.
98a326f7 3043 (consume_chars): Adjust for the change of get_translation.
825d0875 3044
ccbc4452
AR
30452009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3046
4ddf94bd 3047 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3048
988a7ddb
KH
30492009-03-05 Kenichi Handa <handa@m17n.org>
3050
3051 * font.c (font_select_entity): New function.
3052 (font_find_for_lface): Use font_select_entity to select a font.
3053
3054 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3055 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3056 font with C restriction.
3057
98a326f7 30582009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3059
be1bce46 3060 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3061
10ea2b82
JR
30622009-03-04 Jason Rumney <jasonr@gnu.org>
3063
2c93b248 3064 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3065 characters that have already been read. (Bug#2569)
2c93b248 3066
10ea2b82
JR
3067 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3068 Log an error message if check_image_size failed.
3069 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3070 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3071
71a0c011
EZ
30722009-03-02 Eli Zaretskii <eliz@gnu.org>
3073
3074 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3075 when decoding process output.
3076
2f63bba8
RS
30772009-03-01 Richard M Stallman <rms@gnu.org>
3078
3079 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3080
3081 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3082
0a9564cb
EZ
30832009-02-28 Eli Zaretskii <eliz@gnu.org>
3084
3085 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3086 (decode_coding_emacs_mule, decode_coding_iso_2022)
3087 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3088 (decode_coding_raw_text, decode_coding_charset)
3089 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3090 Honor inhibit-eol-conversion. (Bug #2186)
3091
449148b3
JR
30922009-02-28 Jason Rumney <jasonr@gnu.org>
3093
3094 * coding.c (detect_coding_charset): If not checking latin extra,
3095 fail on characters between 0x80 and 0xA0. (Bug#2354)
3096
a4aee864
EZ
30972009-02-28 Eli Zaretskii <eliz@gnu.org>
3098
3099 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3100 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3101
d88bee5a
GM
31022009-02-27 Glenn Morris <rgm@gnu.org>
3103
3104 * callint.c (Finteractive): Doc fix.
3105
a808f22d
KH
31062009-02-27 Kenichi Handa <handa@m17n.org>
3107
3108 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3109
caf8d60c
CY
31102009-02-27 Chong Yidong <cyd@stupidchicken.com>
3111
3112 * font.c (font_style_to_value): Set value for unknown symbols to
3113 100 instead of 255.
b61137ea
CY
3114 (weight_table, slant_table, width_table): Treat "unspecified" as
3115 the default value.
caf8d60c 3116
1a0de25c
JB
31172009-02-26 Juanma Barranquero <lekktu@gmail.com>
3118
3119 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3120
8fc45744
JB
31212009-02-25 Juanma Barranquero <lekktu@gmail.com>
3122
107bd7d1
JB
3123 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3124 error as soon as a recursive load is detected.
8fc45744 3125
f097e223
AR
31262009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3127
3128 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3129 before caching.
3130
8810a12f
KH
31312009-02-24 Kenichi Handa <handa@m17n.org>
3132
3133 * fontset.c (fontset_find_font): Fix the condition for checking
3134 unavailable font.
3135
2c7d1565
GM
31362009-02-24 Glenn Morris <rgm@gnu.org>
3137
3138 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3139 whitespace that confuses documentation.
3140
a20878b6
MB
31412009-02-23 Miles Bader <miles@gnu.org>
3142
3143 * process.c (Flist_system_processes, Fprocess_attributes)
3144 (syms_of_process): Rename `system-process-attributes' to
3145 `process-attributes'.
3146
b3b58c01
AS
31472009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3148
1b3b981b
AS
3149 * coding.h (struct coding_system): Make safe_charsets a pointer to
3150 unsigned char.
3151 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3152 being 255.
3153 (SAFE_CHARSET_P): Likewise.
3154 (setup_iso_safe_charsets): Properly setup safe_charsets.
3155 (Fdefine_coding_system_internal): Likewise.
3156 (setup_coding_system): Likewise. Remove unneeded casts.
3157 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3158 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3159 unneeded casts.
3160
b3b58c01
AS
3161 * insdel.c (del_range_2): Don't modify gap contents when called
3162 from decode_coding_object. (Bug#1809)
3163
0b6f228c
CY
31642009-02-21 Chong Yidong <cyd@stupidchicken.com>
3165
3166 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3167 Qfont_object.
3168 (Ftype_of): Recognize font objects.
3169
3170 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3171
3172 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3173 moved to data.c.
3174
52f8870b
AR
31752009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3176
3177 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3178 async_iconified. Based on a patch by Christian Lynbech
3179 <christian.lynbech@tieto.com>.
3180 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3181
7087d5e9
GM
31822009-02-20 Glenn Morris <rgm@gnu.org>
3183
3184 * syntax.c (Fskip_chars_forward): Fix doc typo.
3185
41d2ceef
CY
31862009-02-20 Chong Yidong <cyd@stupidchicken.com>
3187
3188 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3189
1a3b7ca6
CY
31902009-02-19 Chong Yidong <cyd@stupidchicken.com>
3191
3192 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3193
73cce38d
KH
31942009-02-19 Kenichi Handa <handa@m17n.org>
3195
3196 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3197 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3198
a51092ee
DN
31992009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3200
3201 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3202
c423ecca
KH
32032009-02-18 Kenichi Handa <handa@m17n.org>
3204
3205 * font.c (font_check_otf_features): Fix handling of `nil' element.
3206 (Ffont_spec): Describe :lang and :otf in the docstring.
3207
4c1958f4
AS
32082009-02-16 Andreas Schwab <schwab@suse.de>
3209
3210 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3211 string.
3212
5704f39a
KH
32132009-02-16 Kenichi Handa <handa@m17n.org>
3214
3215 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3216 (Bug#1723)
5704f39a 3217
8f0085aa
CY
32182009-02-14 Chong Yidong <cyd@stupidchicken.com>
3219
a057d86a 3220 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3221
3222 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3223 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3224
aff01dd9
EZ
32252009-02-14 Eli Zaretskii <eliz@gnu.org>
3226
3227 * msdos.c (MAX_SCREEN_BUF): New macro.
3228 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3229 Encode the entire run of glyphs sharing the same face, instead of
3230 doing that one glyph at a time (fixes a bug with displaying
3231 double-size characters).
3232
ba301db3
AR
32332009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3234
3235 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3236
3237 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3238 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3239 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3240
3241 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3242 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3243
51d861de
SM
32442009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3245
3246 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3247 invisible areas.
3248
7fed8996
JR
32492009-02-12 Jason Rumney <jasonr@gnu.org>
3250
631ea4fb
JR
3251 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3252 (add_font_entity_to_list): Call check_face_name even when family
3253 is unspecified.
3254
cb4a3e42
JR
3255 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3256 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3257 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3258
7fed8996 3259 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3260 raster fonts. (Bug#2219)
7fed8996 3261
895416e3
KH
32622009-02-12 Kenichi Handa <handa@m17n.org>
3263
3264 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3265 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3266 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3267 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3268 (find_automatic_composition): While looking forward and backward,
3269 check static composition. Fix where to stop looking forward.
3270 (composition_adjust_point): Fix checking of static composition.
3271 (Fcomposition_get_gstring): Pay attention to
1dacf998 3272 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3273
3274 * lisp.h (fast_looking_at): Extern it.
3275
3276 * search.c (fast_looking_at): New function.
3277
51d861de 3278 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3279 <struct glyph>.u.cmp.to.
3280 (append_composite_glyph): Likewise.
3281
51d861de 3282 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3283 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3284 composition.
51d861de 3285 (append_composite_glyph): Adjust for the change of
895416e3
KH
3286 <strcut glyph>.u.cmp.to.
3287
8510724d
JB
32882009-02-11 Juanma Barranquero <lekktu@gmail.com>
3289
3290 * casetab.c (init_casetab_once):
3291 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3292 * font.c (font_update_lface):
3293 * fontset.c (Fnew_fontset):
3294 * ftfont.c (ftfont_drive_otf):
3295 * xfont.c (xfont_open):
3296 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3297
294fa707
SM
32982009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3299
3300 * fileio.c (Fwrite_region): !NILP -> CONSP.
3301
b5bfebec
AS
33022009-02-10 Andreas Schwab <schwab@suse.de>
3303
3304 * process.c (send_process): Properly relocate pointer into data
adab88bd 3305 when using encoded data. (Bug#2272)
b5bfebec 3306
cb84a2be
KH
33072009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3308
3309 * coding.c (detect_coding_charset): Fix previous change.
3310
89e09428
JR
33112009-02-08 Jason Rumney <jasonr@gnu.org>
3312
3313 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3314 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3315
4470a277
AS
33162009-02-07 Andreas Schwab <schwab@suse.de>
3317
3318 * unexelf.c (unexec): Fix error message.
3319
3175b12a
AR
33202009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3321
3322 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3323 when modal window is active. (Bug #2152)
3175b12a
AR
3324 (applicationShouldTerminate:): Remove now-unneeded while loop
3325 around NSRunAlertPanel.
3326
3327 * nsmenu.m (popupSession): New file-global variable.
3328 (pop_down_menu): End the popupSession before closing dialog.
3329 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3330 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3331 don't query NSApp for events (just sleep instead).
3332
8434d0b8
EZ
33332009-02-07 Eli Zaretskii <eliz@gnu.org>
3334
51d861de
SM
3335 * coding.c (syms_of_coding) <translation-table-for-input>:
3336 Modify doc string to discourage use for character code unification.
8434d0b8 3337
aa82edfd
CY
33382009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3339
3340 * atimer.c (run_timers): Update pending_atimers.
3341
2d283c7c
CY
33422009-02-06 Chong Yidong <cyd@stupidchicken.com>
3343
eb306cab
CY
3344 * image.c (svg_load_image): Fix last change.
3345
2d283c7c
CY
3346 * xfns.c (Fx_create_frame): Signal an error if no font is
3347 found (Bug#2147).
3348
4d8e170e
JB
33492009-02-05 Juanma Barranquero <lekktu@gmail.com>
3350
3351 * character.c (syms_of_character) <script-representative-chars>:
3352 Fix typo in docstring.
3353
c96169a0
AR
33542009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3355
3356 * nsmenu.m (pop_down_menu): New function.
3357 (ns_popup_dialog): Call it on unwind.
3358 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3359 call timer_check() (Bug#2154).
3360 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3361 handling_signal is set.
3362 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3363
31fd7c5c 3364 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3365
3366 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3367
3368 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3369
51d861de
SM
3370 * keyboard.c (poll_for_input_1, handle_async_input):
3371 Set handling_signal under HAVE_NS.
c96169a0 3372
aacd8ba1
GM
33732009-02-04 Glenn Morris <rgm@gnu.org>
3374
3375 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3376
4cb75c4b
KH
33772009-02-04 Kenichi Handa <handa@m17n.org>
3378
3379 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3380
3381 * charset.c (Fchar_charset): New optional arg restriction.
3382
3383 * coding.h (coding_system_charset_list): Extern it.
3384
3385 * coding.c (coding_system_charset_list): New function.
3386
3387 * composite.c: Include coding.h and termhooks.h.
3388 (composition_gstring_p): Fix for the terminal case.
3389 (composition_gstring_width): Likewise.
3390 (fill_gstring_body): Likewise.
3391 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3392 the frame.
3393 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3394 is within a composition.
867d4bb3 3395 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3396
3397 * term.c (encode_terminal_code): Fix handling of composition.
3398 (produce_composite_glyph): For static composition, get pixel_width
3399 from struct composition.
3400
826ba17e
AS
34012009-02-02 Andreas Schwab <schwab@suse.de>
3402
3403 * unexelf.c (unexec): Handle unaligned bss offset.
3404
8ad093db
AR
34052009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3406
3407 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3408 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3409
8ad093db
AR
3410 * keyboard.c (handle_interrupt): Don't call
3411 quit_throw_to_read_char() under NS.
d0a76a6e 3412
8ad093db
AR
3413 * blockinput.h: Remove NS-specific code.
3414
4d18a7a2
DN
34152009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3416
db878925
DN
3417 * dispnew.c (window_change_signal): Don't try to get the size of a
3418 suspended tty frame.
3419 * term.c (Fresume_tty): Resize if the size has changed while the
3420 tty was suspended.
3421
4d18a7a2
DN
3422 * alloc.c (mark_stack): Properly conditionalize previous change.
3423
8984df7c
JB
34242009-01-30 Juanma Barranquero <lekktu@gmail.com>
3425
3426 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3427 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3428 Remove; this code is not used on Windows.
3429
75f4f1ac
EZ
34302009-01-30 Eli Zaretskii <eliz@gnu.org>
3431
3432 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
3433 EOLs that also has stray ^M characters.
3434
07a1e794
JB
34352009-01-30 Juanma Barranquero <lekktu@gmail.com>
3436
3437 * atimer.c (run_timers, alarm_signal_handler):
3438 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
3439 * w32inevt.c (w32_console_read_socket):
3440 * w32term.c (w32_read_socket):
3441 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
3442
a8b11cc9
CY
34432009-01-30 Chong Yidong <cyd@stupidchicken.com>
3444
3445 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
3446 Initialize it as a relative filename pattern.
3447 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
3448 (Fcall_process_region): Simplify temp file creation using
3449 temporary-file-directory.
3450
c279587b
EZ
34512009-01-29 Eli Zaretskii <eliz@gnu.org>
3452
3453 * msdos.c: Rename pending_signals to msdos_pending_signals.
3454 (sig_suspender, sigprocmask): Adjust.
3455
a8fe3242
CY
34562009-01-29 Chong Yidong <cyd@stupidchicken.com>
3457
3458 * keyboard.c (pending_signals): New var.
3459 (poll_for_input, input_available_signal, init_keyboard): Set it.
3460 (process_pending_signals): New function.
3461
3462 * lisp.h (QUIT): Check pending_signals instead of
3463 interrupt_input_pending. Use process_pending_signals.
3464
51d861de 3465 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3466
51d861de 3467 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3468
3469 * sysdep.c (emacs_write): Use process_pending_signals.
3470
3471 * xterm.c (XTread_socket): Update pending_signals.
3472
3473 * w32term.c (w32_read_socket): Update pending_signals.
3474
3475 * w32inevt.c (w32_console_read_socket): Update pending_signals.
3476
6570a1c4
KH
34772009-01-29 Kenichi Handa <handa@m17n.org>
3478
3479 * xftfont.c (xftfont_has_char): New function.
3480 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
3481
d72a4afa
AR
34822009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3483
3484 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
3485 under GNUstep.
3486 (ns_query_color): New declaration.
3487
3488 * nsterm.m (ns_confirm_quit): New variable.
3489 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
3490 (EmacsApp-applicationShouldTerminate:): Use it.
3491 (EmacsPrefsController): Let user set it.
3492 (ns_query_color): New function.
3493 (ns_defined_color): Use it.
3494 (ns_initialize): Drop.
3495 (ns_term_init): Add two lines from ns_initialize(), and set
3496 input_interrupt_mode to nil.
3497
3498 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 3499 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 3500
9fe78804
KH
35012009-01-28 Kenichi Handa <handa@m17n.org>
3502
3503 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
3504 (fontset_get_font_group): Remember that no font-group is specified
3505 for C.
9fe78804 3506
fa57de36
CY
35072009-01-27 Chong Yidong <cyd@stupidchicken.com>
3508
930600e9
CY
3509 * fns.c (concat): Check for string overflow (bug#1787).
3510
fa57de36
CY
3511 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
3512 Quadruple undo limits (bug#1501).
3513
7179ce7b
KH
35142009-01-27 Kenichi Handa <handa@m17n.org>
3515
3516 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
3517 directly use GT_Get_Char_index.
3518
3519 * xftfont.c (struct xftfont_info): New member `index'.
3520
3521 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 3522 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 3523
5be8fcc0
CY
35242009-01-26 Kenichi Handa <handa@m17n.org>
3525
3526 * fontset.c (fontset_find_font): Fix handling of non-cons return
3527 value of fontset_get_font_group.
3528 (fontset_font): Revert last change.
3529
19ae3e61
JR
35302009-01-26 Jason Rumney <jasonr@gnu.org>
3531
3532 * w32font.c (w32font_list_internal): Return quickly if registry is
3533 unknown. Simplify final return.
3534 (add_font_entity_to_list): Break complex logic down into more
3535 manageable chunks. Move unknown registry check to
3536 w32font_list_internal.
3537
8612b71a
AR
35382009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
3539
3540 Changes to remove Feval calls from GUI under NS.
3541
d8038940
JB
3542 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
3543 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
3544 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
3545
3546 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
3547 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
3548 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
3549 instead of NON_ASCII_KEYSTROKE_EVENT.
3550 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
3551 (EmacsApp-applicationShouldTerminate:): Query user.
3552 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
3553 instead of Feval.
3554
3555 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
3556
3557 * keyboard.c (kbd_buffer_get_event): Check for it.
3558 (keys_of_keyboard): Define lispy keys for
3559 ns-put/unput-working-text.
3560
3561 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
3562 versions.
3563 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
3564
6288ae55
CY
35652009-01-25 Chong Yidong <cyd@stupidchicken.com>
3566
3567 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 3568 setting current_buffer directly. (Bug#2044)
6288ae55 3569
289e7f8f
CY
35702009-01-24 Chong Yidong <cyd@stupidchicken.com>
3571
5ce87308 3572 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 3573 any work. (Bug#1952, bug#1990).
5ce87308 3574
64cc3cf6 3575 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 3576
b3243e6f
AR
35772009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3578
3579 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
3580 (ns_no_defaults): New declaration.
3581 (main): Use it.
e0d2e69a 3582
d900b2af 3583 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 3584
d900b2af 3585 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 3586
d900b2af
AR
3587 * nsterm.m (ns_no_defaults): New variable.
3588 (ns_initialize): Don't read defaults when ns_no_defaults.
3589 (EmacsView-readSelectionFromPasteboard:)
3590 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 3591 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
3592 (ns_dumpglyphs_stretch): New function.
3593 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 3594 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 3595
e0d2e69a
AR
3596 * nsimage.m (setPixmapData:): Set to ignore image DPI.
3597
3ac71f5d
CY
35982009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
3599
3600 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
3601 call for Sparc64.
3602
3fe53a83
AR
36032009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3604
3605 * nsfns.m:
3606 * nsgui.h:
3607 * nsmenu.m:
3608 * nsselect.m:
3609 * nsterm.h:
3610 * nsterm.m: Remove '23' comments that indicated code added during
3611 update from emacs-20 -> emacs-23.
3612
10f87c6f 36132009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
3614
3615 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 3616 ns_alternate_modifier. (Bug#1217)
a3b53a85 3617
c7cef62d
AR
3618 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
3619 Display all shortcuts, including those w/o super modifier.
3620
575fb8bd
AR
3621 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
3622
918b848b
CY
36232009-01-22 Chong Yidong <cyd@stupidchicken.com>
3624
3625 * fileio.c (Vwrite_region_post_annotation_function)
3626 (Vwrite_region_annotation_buffers): New vars.
3627 (build_annotations_unwind): Just reset
3628 Vwrite_region_annotation_buffers.
3629 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
3630 Call write-region-post-annotation-function.
3631 (build_annotations): Add to Vwrite_region_annotation_buffers if
3632 buffer changes.
3633
a39e2539
AR
36342009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3635
3636 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
3637 Tiger.
51d861de
SM
3638 * nsfns.m (ns_do_applescript):
3639 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 3640
35ed44db
AR
36412009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
3642
3643 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
3644
cbe0b5bf
AR
36452009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3646
3647 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 3648
6049d3a0
AR
3649 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
3650
3651 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
3652 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
3653 handle Ctrl-tab. (Bug#1841)
3654 (ns_get_color): Use unsigned long long for scanned hex string value.
3655 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 3656 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 3657 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 3658 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 3659 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 3660 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 3661 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 3662
d3810c21 3663 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 3664 DPI. (Bug#1316)
d3810c21
AR
3665 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
3666 values in onTiger section.
4c7077c3 3667
e301e634
CY
36682009-01-19 Chong Yidong <cyd@stupidchicken.com>
3669
7f82490b
CY
3670 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
3671 Check return value of font_spec_from_name.
64cc3cf6 3672 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
3673
3674 * font.c (font_spec_from_name): Return Qnil if font name could not
3675 be parsed.
3676 (font_parse_name): Treat a `?' character as part of an XLFD.
3677
e301e634
CY
3678 * fns.c (Fsubstring): Doc fix.
3679
1c0db158
KH
36802009-01-19 Kenichi Handa <handa@m17n.org>
3681
51d861de 3682 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
3683 (ftfont_list): Likewise.
3684
acf20901
JB
36852009-01-18 Juanma Barranquero <lekktu@gmail.com>
3686
fff4e459
JB
3687 * dbusbind.c (Fdbus_register_signal):
3688 * process.c (conv_sockaddr_to_lisp):
3689 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
3690
acf20901
JB
3691 * callproc.c (Fgetenv_internal): Doc fix.
3692
e7abcdfb
CY
36932009-01-16 Chong Yidong <cyd@stupidchicken.com>
3694
3695 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
3696 it is not even used.
3697
b60861e6
GM
36982009-01-16 Glenn Morris <rgm@gnu.org>
3699
3700 * font.c (Ffont_variation_glyphs): Silence compiler.
3701
8db52afe
JB
37022009-01-15 Juanma Barranquero <lekktu@gmail.com>
3703
3704 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
3705 Reported by David Robinow <drobinow@gmail.com>.
3706
4cddb209
KH
37072009-01-15 Kenichi Handa <handa@m17n.org>
3708
51d861de 3709 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 3710
f247f67b
JR
37112009-01-14 Jason Rumney <jasonr@gnu.org>
3712
3713 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 3714 never a fontset. (Bug#1562)
f247f67b 3715
f56a4450
KH
37162009-01-14 Kenichi Handa <handa@m17n.org>
3717
3718 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 3719 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 3720
4e99855e
CY
37212009-01-13 Chong Yidong <cyd@stupidchicken.com>
3722
3723 * font.c (font_clear_prop): If clearing the family, clear the font
3724 width index too.
3725
fff4e459 3726 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 3727
24f01470
JB
37282009-01-12 Juanma Barranquero <lekktu@gmail.com>
3729
3730 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
3731 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
3732 functions, use sizeof.
3733
a41240a3
MR
37342009-01-12 Martin Rudalics <rudalics@gmx.at>
3735
3736 * keyboard.c (read_char): Fix case where last_nonmenu_event
3737 returned a bad value with submenus. (Bug#447)
3738
944636b8
CY
37392009-01-12 Chong Yidong <cyd@stupidchicken.com>
3740
3741 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
3742 family, clear the font width index too.
3743
0dad7c6f
JR
37442009-01-11 Jason Rumney <jasonr@gnu.org>
3745
3746 * keyboard.c (cmd_error_internal): Exit when errors occur before
3747 frame creation and not in daemon mode. (Bug#1836)
3748
7c2363af
CY
37492009-01-10 Chong Yidong <cyd@stupidchicken.com>
3750
3751 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
3752 of a display vector, backtrack.
3753 (try_window_reusing_current_matrix): Check glyph type before
3754 referencing charpos member.
3755
97b1b294
EZ
37562009-01-10 Eli Zaretskii <eliz@gnu.org>
3757
3758 Fix Bug #876:
3759
3760 * coding.c (inhibit_null_byte_detection): New variable.
3761 (detect_coding, detect_coding_system): Don't pay attention to null
3762 bytes if inhibit_null_byte_detection is non-zero.
51d861de 3763 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
3764 <inhibit-iso-escape-detection>: Doc fix.
3765
4624b6e3
JR
37662009-01-09 Jason Rumney <jasonr@gnu.org>
3767
3768 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 3769 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
3770 Only report Unicode Plane 2 fonts as unicode-sip.
3771
323b840c
CY
37722009-01-09 Chong Yidong <cyd@stupidchicken.com>
3773
51d861de
SM
3774 * xfaces.c (Fx_font_family_list): Delete function.
3775 Move compatibility version to faces.el.
323b840c 3776
51d861de 3777 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 3778
eba7400d
MR
37792009-01-09 Martin Rudalics <rudalics@gmx.at>
3780
3781 * frame.c (x_set_frame_parameters): Remember requested value for
3782 fullscreen before it's reset by the parameter handler.
3783
4b09796d
GM
37842009-01-09 Glenn Morris <rgm@gnu.org>
3785
3786 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 3787 (last_command_event): ... and update all users.
4b09796d
GM
3788 (last_input_char): For clarity, rename to...
3789 (last_input_event): ... and update all users.
3790 (last-command-char, last-input-char): Move to subr.el as aliases.
3791 * cmds.c, commands.h: Update for last_command_char rename.
3792
14ccea62
CY
37932009-01-08 Chong Yidong <cyd@stupidchicken.com>
3794
51d861de 3795 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 3796
5f004711
JR
37972009-01-08 Jason Rumney <jasonr@gnu.org>
3798
3799 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
3800 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
3801 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
3802 Don't declare.
fff4e459 3803 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
3804 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
3805
b71f6f73
KH
38062009-01-07 Kenichi Handa <handa@m17n.org>
3807
50b06221 3808 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 3809 remember the coding system used for decoding in
50b06221
KH
3810 coding_system (Bug#1039).
3811
b71f6f73 3812 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 3813 breaking the loop. (Bug#870)
b71f6f73
KH
3814 (decode_coding_utf_16, decode_coding_emacs_mule)
3815 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3816 (decode_coding_charset): Likewise.
3817
56f668f7
MR
38182009-01-05 Martin Rudalics <rudalics@gmx.at>
3819
3820 * frame.c (x_set_frame_parameters): Make sure height (width) get
3821 applied when fullwidth (fullheight) is set. (Bug#1522)
3822
5da9424d
JB
38232009-01-04 Juanma Barranquero <lekktu@gmail.com>
3824
3825 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
3826 (utc_base): Declare as ULONGLONG, not long double.
3827 (convert_time_raw): Delete.
3828 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
3829 (initialize_utc_base): New function.
3830 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
3831 (convert_from_time_t): Use initialize_utc_base; compute result with
3832 64-bit arithmetic.
3833 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
3834
c4605e09
EZ
38352009-01-03 Eli Zaretskii <eliz@gnu.org>
3836
9acef61c 3837 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
3838 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
3839 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
3840 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
3841 [!subprocesses]: Define.
3842 (syms_of_process) [!subprocesses]: Intern and staticpro them.
3843 (Flist_system_processes, Fsystem_process_attributes)
3844 [!subprocesses]: Call list_system_processes and
3845 system_process_attributes instead of returning Qnil.
3846
9acef61c
JB
3847 * dosfns.c (system_process_attributes, list_system_processes):
3848 New functions.
c4605e09
EZ
3849
3850 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
3851
3852 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
3853 Don't use the default (no-op) implementation.
3854
8b7d0a16
JR
38552009-01-03 Jason Rumney <jasonr@gnu.org>
3856
a6d46bc1
JR
3857 * keyboard.c (parse_modifiers_uncached): Wheel events are
3858 clicks (bug#687).
3859
8b7d0a16
JR
3860 * w32term.c (x_query_colors, x_query_color): New functions.
3861
3862 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
3863 (svg_load_image): Cast returned pointers from dynamically loaded
3864 functions. Eliminate W32 specific code.
3865
bfe11752
DN
38662009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
3867
89e2438a
DN
3868 * nsfns.m (x_set_foreground_color, x_set_background_color)
3869 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
3870 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
3871 x_ prefix instead of ns_. Update references.
3872 (syms_of_nsfns): Add a FIXME comment.
3873
3874 * nsterm.m (x_set_cursor_type): New prototype.
3875 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
3876
bfe11752
DN
3877 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
3878 for Solaris instead of incorrectly providing Qutime and Qcutime.
3879
031da700
EZ
38802009-01-02 Eli Zaretskii <eliz@gnu.org>
3881
3882 * w32.c (process_times): Compute sum of utime and stime.
3883 (system_process_attributes): Add Qtime to the alist.
3884
3885 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
3886 and add them to the alist.
3887
3888 * process.c (top level) <Qtime, Qctime>: New variables.
3889 (syms_of_process): staticpro them.
3890 (Fsystem_process_attributes): Add their documentation to the doc
3891 string.
3892
3893 * process.h: Declare Qtime and Qctime.
3894
df23bf08
JR
38952009-01-02 Jason Rumney <jasonr@gnu.org>
3896
9acef61c 3897 * image.c (Qgobject): New symbol.
df23bf08
JR
3898 (syms_of_image): Initialize it.
3899 (init_svg_functions): Load some functions from gobject library.
3900
5bbdf7aa
DN
39012009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
3902
3903 * frame.c (make_terminal_frame): Remove redundant code and useless
3904 block.
3905
63136da6
AS
39062009-01-01 Andreas Schwab <schwab@suse.de>
3907
3908 * process.c (conv_sockaddr_to_lisp): Add workaround for
3909 getsockname bug on BSD.
3910
9ef69046
CY
39112009-01-01 Chong Yidong <cyd@stupidchicken.com>
3912
d6fafbe0
CY
3913 * xfns.c (x_create_tip_frame): Set border width of the X window.
3914
51d861de 3915 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 3916
f9c34147
JR
39172009-01-01 Jason Rumney <jasonr@gnu.org>
3918
9acef61c 3919 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
3920 Don't block input, as per earlier xterm.c changes.
3921
f5497e45
AR
39222008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
3923
3924 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
3925 (ns_appkit_version_int): New function.
3926 (x-server-version): Use ns_appkit_version_int and follow 21+
3927 convention of returning 3 integers.
3928
c19cab20
KH
39292008-12-30 Kenichi Handa <handa@m17n.org>
3930
3931 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
3932 (CHAR_SURROGATE_PAIR_P): New macro.
3933
3934 * font.h (struct font_driver): New member get_variation_glyphs.
3935
9acef61c 3936 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
3937 (Ffont_variation_glyphs): New function.
3938 (syms_of_font): Defsubr it.
3939
3940 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
3941 ftfont_variation_glyphs.
3942 (setup_otf_gstring): New function.
3943 (ftfont_drive_otf): Use it.
3944 (ftfont_shape_by_flt): Handle variation selector.
3945 (ftfont_variation_glyphs): New function.
3946
28cd591f
MR
39472008-12-30 Martin Rudalics <rudalics@gmx.at>
3948
3949 * frame.c (Vemacs_iconified): Remove.
3950
7f714baf
JR
39512008-12-30 Jason Rumney <jasonr@gnu.org>
3952
3953 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 3954 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 3955
9d2d22ab
CY
39562008-12-30 Chong Yidong <cyd@stupidchicken.com>
3957
3958 * indent.c (Fvertical_motion): Don't advance iterator if we have
3959 reseated to the desired position.
3960
3961 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
3962 checking for pos match.
3963
545312c2
KH
39642008-12-30 Kenichi Handa <handa@m17n.org>
3965
1ede3eb6
KH
3966 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
3967 just get the low 8-bit of the code.
3968
545312c2
KH
3969 * font.c (font_intern_prop): Validate str as multibyte.
3970
bd7bbf29
DN
39712008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3972
31e0750e
DN
3973 * dispextern.h (struct face): Move lface and hash from the middle
3974 of bitfields.
3975
bd7bbf29
DN
3976 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
3977
b5672e7c
DN
39782008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3979
3980 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
3981 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
3982 instead of intervals.h.
3983
d704470f
AS
39842008-12-26 Andreas Schwab <schwab@suse.de>
3985
3986 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
3987 cons.
3988
54b33868
MR
39892008-12-26 Martin Rudalics <rudalics@gmx.at>
3990
3991 * textprop.c (Qminibuffer_prompt): New variable.
3992 (syms_of_textprop): Initialize it.
3993 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
3994 in minibuffer-prompt face. (Bug#1662)
3995
40b615d6
JR
39962008-12-25 Jason Rumney <jasonr@gnu.org>
3997
3998 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
3999
baae5c2d
JR
40002008-12-24 Jason Rumney <jasonr@gnu.org>
4001
4002 * ralloc.c (r_alloc_reset_variable): New function.
4003
4004 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4005 record of what points where. (Bug#716)
baae5c2d 4006
a9051c88
DN
40072008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4008
4009 * minibuf.c (read_minibuf): Follow the non-interactive case when
4010 running as a daemon, before detaching.
4011
8b146312
AS
40122008-12-22 Andreas Schwab <schwab@suse.de>
4013
4014 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4015 * gtkutil.c (free_widget_value): Use xfree instead of free.
4016
56f2de10
MR
40172008-12-22 Martin Rudalics <rudalics@gmx.at>
4018
4019 * frame.c (delete_frame): New function derived from
4020 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4021 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4022 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4023 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4024 * frame.h: Extern delete_frame.
4025 * window.c (window_loop):
4026 * terminal.c (delete_terminal):
4027 * xterm.c (x_connection_closed):
4028 * xfns.c (Fx_hide_tip):
9acef61c 4029 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4030
1fc200d6
JR
40312008-12-21 Jason Rumney <jasonr@gnu.org>
4032
4033 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4034 when character maps to .notdef character.
4035
5e252df2
SM
40362008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4037
4038 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4039
99b72cc4
JR
40402008-12-20 Jason Rumney <jasonr@gnu.org>
4041
4042 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4043 a graphical frame on Windows. (Bug#1325)
99b72cc4 4044
acc49a52
JD
40452008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4046
4047 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4048
6ea15123
CY
40492008-12-20 Chong Yidong <cyd@stupidchicken.com>
4050
4051 * minibuf.c (Fread_buffer): Doc fix.
4052
b2dab6c8
JR
40532008-12-20 Jason Rumney <jasonr@gnu.org>
4054
54ea0c87 4055 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4056 server name in UNC paths. (Bug#719)
54ea0c87 4057
b2dab6c8 4058 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4059 charbuf. (Bug#1035)
b2dab6c8 4060
6d1921be
DN
40612008-12-19 Daniel Engeler <engeler@gmail.com>
4062
4063 * sysdep.c (serial_configure): Fix typo.
4064
53934c98
DN
40652008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4066
4067 * sysdep.c: Include alloca.h.
f4f634e8
DN
4068 (system_process_attributes): Add implementation for Solaris.
4069
4070 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4071
06e111a6
DN
40722008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4073
4074 Reorganize implementation of Flist_system_processes and
4075 Fsystem_process_attributes. No functional changes.
4076 * process.c: Don't #include pwd.h, grp.h and limits.h.
4077 (Flist_system_processes): Just call list_system_processes.
4078 (Fsystem_process_attributes): Just call system_process_attributes.
4079 (procfs_list_system_processes, time_from_jiffies)
4080 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4081 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4082
4083 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4084 (list_system_processes): Rename from
4085 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4086 Provide a do nothing implementation.
4087 (system_process_attributes): Rename from
4088 procfs_list_system_processes.
4089 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4090 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4091
4092 * w32.c (list_system_processes): Rename from
4093 w32_list_system_processes.
4094 (system_process_attributes): Rename from
4095 w32_system_process_attributes.
4096
4097 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4098
4099 * process.h (w32_list_system_processes)
4100 (w32_system_process_attributes): Remove.
362654a6
JB
4101 (list_system_processes, system_process_attributes):
4102 New prototypes.
06e111a6 4103
6a705b23
KH
41042008-12-19 Kenichi Handa <handa@m17n.org>
4105
4106 * xfont.c (xfont_decode_coding_xlfd): New function.
4107 (xfont_encode_coding_xlfd): New function.
4108 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4109 (xfont_list): Decode and encode XLFD by iso-8859-1.
4110 (xfont_match): Likewise.
4111 (xfont_list_family): Likewise.
4112 (xfont_open): Likewise.
4113
d66c0241 4114 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4115 names are utf-8.
4116
d66c0241 4117 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4118 names are utf-8.
4119
5a130941
JD
41202008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4121
4122 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4123 changed.
bfd20325
JD
4124 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4125 clicked on a detached tool bar button.
5a130941 4126
fd95644b
DN
41272008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4128
4129 * emacs.c (main): Print and error and exit when no data is read
4130 from the pipe.
4131
e6eee6ae
JR
41322008-12-17 Jason Rumney <jasonr@gnu.org>
4133
4134 * w32font.c (w32font_has_char): Always return -1.
4135
a35dd56b
KH
41362008-12-16 Kenichi Handa <handa@m17n.org>
4137
4138 * font.c (font_open_entity): Fix previous change.
4139
0e3635c2
DN
41402008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4141
4142 * process.c: Include <limits.h>.
4143
d4835507 41442008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4145
4146 * font.c (font_update_drivers): Fix mistake in reconstructing the
4147 driver list.
4148
41492008-12-16 Chong Yidong <cyd@stupidchicken.com>
4150
4151 * font.c (font_clear_cache): Fix format of font cache data.
4152
e2cbc401
CY
41532008-12-15 Chong Yidong <cyd@stupidchicken.com>
4154
4155 * xftfont.c (xftfont_open): Free Xft font pattern if
4156 XftFontOpenPattern fails.
4157
4158 * xterm.c (x_free_frame_resources): Remove extraneous call to
4159 free_frame_faces.
4160
b131d535
CY
41612008-12-13 Chong Yidong <cyd@stupidchicken.com>
4162
4163 * xterm.c (x_delete_display): Move xim_close_dpy call to
4164 x_delete_terminal.
4165 (x_delete_terminal): Call xim_close_dpy.
4166
e6df5336
JR
41672008-12-13 Jason Rumney <jasonr@gnu.org>
4168
4169 * w32font.c (intern_font_name): New function.
4170 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4171 (w32font_open_internal, Fx_select_font): Decode font name.
4172 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4173
4174 * w32font.h (intern_font_name): Declare new function.
4175
4176 * w32uniscribe.c (add_opentype_font_name_to_list):
4177 Use intern_font_name.
4178
20d68145
CY
41792008-12-13 Chong Yidong <cyd@stupidchicken.com>
4180
9f2554de
CY
4181 * frame.c (Fdelete_frame): Call free_font_driver_list.
4182
3d9bec9a
CY
4183 * font.c (free_font_driver_list): Implement missing function.
4184
20d68145
CY
4185 * w32term.c (w32_term_init): Don't initialize the image cache
4186 here; it will be done in init_frame_faces.
4187
4188 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4189 (struct x_display_info): Remove unused member null_pixel. New
4190 member xim_callback_data.
4191
4192 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4193 (xim_initialize): Save pointer to callback function data.
4194 (xim_close_dpy): Free callback function data. Call XCloseIM,
4195 reverting 2008-11-04 change by David Smith.
4196 (x_term_init): Don't initialize the image cache here; it will be
4197 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4198 (x_delete_display): Free x_dnd_atoms member.
4199
96f9306b
KH
42002008-12-13 Kenichi Handa <handa@m17n.org>
4201
6dec9044
JB
4202 * font.c (font_rescale_ratio): Moved from xfaces.c.
4203 Argument type changed. Handle a font-spec too.
96f9306b 4204 (font_score): Check Vface_font_rescale_alist.
6dec9044 4205 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4206
4207 * xfaces.c (font_rescale_ratio): Moved to font.c.
4208
8d5b4964
CY
42092008-12-13 Chong Yidong <cyd@stupidchicken.com>
4210
4211 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4212
e6df5336
JR
42132008-12-12 Jason Rumney <jasonr@gnu.org>
4214
4215 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4216 Vwindow_system_version to the real w32 major version.
4217
97c6058a
DN
42182008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4219
4220 * term.c (init_tty): Move setting the terminal name before the
4221 potential user: maybe_fatal.
4222
ec4e88d7
CY
42232008-12-11 Chong Yidong <cyd@stupidchicken.com>
4224
d4835507
JB
4225 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4226 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4227
b4233ec9
JR
42282008-12-11 Jason Rumney <jasonr@gnu.org>
4229
8ec71e23 4230 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4231 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4232
b4233ec9 4233 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4234 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4235
011a0143
JB
42362008-12-11 Juanma Barranquero <lekktu@gmail.com>
4237
4238 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4239
3c309f34
JB
42402008-12-11 Juanma Barranquero <lekktu@gmail.com>
4241
4242 * process.c (Fsystem_process_attributes, syms_of_process):
4243 Fix typo in name of Ssystem_process_attributes.
4244 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4245
fedc6ab5
JB
42462008-12-11 Juanma Barranquero <lekktu@gmail.com>
4247
4248 * syntax.c (Fmodify_syntax_entry): Doc fix.
4249
ba3de0e8
JB
42502008-12-10 Juanma Barranquero <lekktu@gmail.com>
4251
4252 * font.c (Ffont_spec): Move usage to end of docstring.
4253
174f1c74
JR
42542008-12-10 Jason Rumney <jasonr@gnu.org>
4255
4256 * w32font.c (Qcham): New symbol.
4257 (font_supported_scripts): Add cham, and comments for other new
4258 scripts in bitfield from OpenType spec.
9d32f818
JR
4259 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4260 contain characters beyond the bmp.
174f1c74 4261
7b649478
KH
42622008-12-10 Kenichi Handa <handa@m17n.org>
4263
4264 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4265 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4266 Qunicode_sip.
4267
2133e2d1
JB
42682008-12-10 Juanma Barranquero <lekktu@gmail.com>
4269
4270 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4271 (Fcoding_system_put): Use QCdefault_char.
4272 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4273
9af886ee
CY
42742008-12-09 Chong Yidong <cyd@stupidchicken.com>
4275
74d819eb
CY
4276 * xftfont.c (syms_of_xftfont): Fix typo.
4277
4ccfa1c0 4278 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4279
7c19d3ae
DN
42802008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4281
4282 * emacs.c (main): Close daemon_pipe on exec.
4283
567826bb
CY
42842008-12-08 Chong Yidong <cyd@stupidchicken.com>
4285
4286 * termchar.h (struct tty): New members termcap_term_buffer and
4287 termcap_strings_buffer.
4288
4289 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4290 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4291 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4292 All callers changed.
4293 (init_tty): Store termcap data and string buffers in new struct
4294 tty members termcap_term_buffer and termcap_strings_buffer.
4295 (delete_tty): Free them.
4ccfa1c0 4296 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4297
aa96c42b
SZ
42982008-12-07 Seiji Zenitani <zenitani@mac.com>
4299
4300 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4301 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4302
b7e1d896
CY
43032008-12-06 Chong Yidong <cyd@stupidchicken.com>
4304
4305 * coding.c (make_conversion_work_buffer): Disable buffer
4306 modification hooks in the work buffer.
4307
b5ec91a5
EZ
43082008-12-05 Eli Zaretskii <eliz@gnu.org>
4309
4310 * process.c (procfs_system_process_attributes): If `nread' has a
4311 negative value, assign zero to it.
4312
a5d2a52b
CY
43132008-12-05 Chong Yidong <cyd@stupidchicken.com>
4314
68c5540b 4315 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4316
7bf1bb21
KH
43172008-12-05 Kenichi Handa <handa@m17n.org>
4318
4319 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4320 second character is a combining character.
4321
2fdc7d00
EZ
43222008-12-05 Eli Zaretskii <eliz@gnu.org>
4323
4324 * process.c (procfs_system_process_attributes): Don't use cmd,
4325 cmdsize, and q without initializing them first.
4326
bf6bfba8
JR
43272008-12-04 Jason Rumney <jasonr@gnu.org>
4328
4329 * w32font.c (w32font_draw): Initialize orig_clip before getting
4330 it, and delete it when finished.
4331
a3b1a468
DN
43322008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4333
4334 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4335 case when running as a daemon before detaching.
4336
8b8be8eb
JB
43372008-12-03 Juanma Barranquero <lekktu@gmail.com>
4338
805f2638 4339 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4340
b1bde622
KH
43412008-12-03 Kenichi Handa <handa@m17n.org>
4342
e500c47d
KH
4343 * font.c (font_at): Set `multibyte' at first.
4344
ca516334
KH
4345 * coding.c (decode_coding_charset): Check type of an element of
4346 vector VALIDS.
7bf1bb21 4347 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4348
4ccfa1c0 4349 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4350 (font_for_char): Likewise.
4351
1e5ecd37
CY
43522008-12-03 Chong Yidong <cyd@stupidchicken.com>
4353
d5b01609 4354 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4355 (font_update_lface): Handle fonts with corrupted size specs,
4356 i.e. non-int and non-float.
d5b01609 4357
11e3a6e4 4358 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4359 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4360 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4361
ab06788b
CY
4362 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4363
1e5ecd37 4364 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4365 underline_minimum_offset for underline position.
1e5ecd37 4366
63c125ab
DN
43672008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4368
4369 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4370
4371 * character.c (c_string_width): Specify the type for LEN.
4372
3a8406e1
KH
43732008-12-03 Kenichi Handa <handa@m17n.org>
4374
4ccfa1c0 4375 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4376 (decode_coding_utf_8): Likewise.
4ccfa1c0 4377 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4378 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4379
651df7d9
CY
43802008-12-02 Chong Yidong <cyd@stupidchicken.com>
4381
4382 * keyboard.c (make_lispy_position): Only use PT if the selected
4383 window is current.
4384
1f625c6c
AS
43852008-12-02 Andreas Schwab <schwab@suse.de>
4386
f7741ce9
AS
4387 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4388
1f625c6c
AS
4389 * doprnt.c (doprnt1): Fix size of charbuf.
4390
92bc2678
CY
43912008-12-02 Chong Yidong <cyd@stupidchicken.com>
4392
4393 * keyboard.c (timer_check): Revert last change.
4394
93b9e8cc
JB
43952008-12-02 Juanma Barranquero <lekktu@gmail.com>
4396
4397 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4398
fd7a37d5
JB
43992008-12-01 Juanma Barranquero <lekktu@gmail.com>
4400
4401 * makefile.w32-in: Update dependencies.
4402 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4403
c115043b
AS
44042008-12-01 Andreas Schwab <schwab@suse.de>
4405
4406 * font.c (register_font_driver): Use xmalloc.
4407 (font_put_frame_data): Likewise.
4408
f5668d2a
CY
44092008-12-01 Chong Yidong <cyd@stupidchicken.com>
4410
860d96be
CY
4411 * xfaces.c (realize_x_face): Make abort condition clearer.
4412
f5668d2a
CY
4413 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4414
379c17e7
CY
44152008-11-30 Chong Yidong <cyd@stupidchicken.com>
4416
4417 * keyboard.c (timer_check): After a timer runs, ensure that the
4418 selected window's buffer is current.
4419
35f36d65
JB
44202008-11-30 Juanma Barranquero <lekktu@gmail.com>
4421
f952c61c
JB
4422 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4423 It was accidentally restored by the Unicode merge.
4424
35f36d65
JB
4425 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4426
b23077df
JB
44272008-11-29 Juanma Barranquero <lekktu@gmail.com>
4428
4429 * w32proc.c: Include "coding.h".
4430 (Fw32_short_file_name): Encode filename passed to Windows API.
4431 (Fw32_long_file_name): Encode filename passed to Windows API and
4432 decode back the result. (Bug#1433)
4433
b8ebe9dd
KH
44342008-11-29 Kenichi Handa <handa@m17n.org>
4435
8cc53f96
KH
4436 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
4437 not before accessing it.
4438
b8ebe9dd
KH
4439 * charset.c (Fdefine_charset_internal): After calculating
4440 min_char, max_char, and fastmap, copy the charset structure again.
4441 (encode_char): Fix the previous change.
4442
59bc82c0
SZ
44432008-11-28 Seiji Zenitani <zenitani@mac.com>
4444
4445 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
4446
4447 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
4448
4449 * nsterm.m (x_set_frame_alpha): New function.
4450
32247e3d
EZ
44512008-11-27 Eli Zaretskii <eliz@gnu.org>
4452
4453 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
4454
b003e5ff
JB
44552008-11-27 Juanma Barranquero <lekktu@gmail.com>
4456
4457 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
4458 pointer to check_face_name.
4459
708550f5
KH
44602008-11-27 Kenichi Handa <handa@m17n.org>
4461
4462 * category.h (SET_CATEGORY_SET): Call set_category_set.
4463 (set_category_set): Extern it.
4464
4465 * category.c (hash_get_category_set): New function.
4466 (Fmodify_category_entry): Adjusted for the change of
4467 char_table_ref_and_range. Call hash_get_category_set to get a
4468 category set to store in the table.
4469
4470 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4471 Funify_charset.
4472
2ae37cf0 4473 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
4474 (DECODE_CHAR): Check if the decoder vector is ready.
4475 (ENCODE_CHAR): Check if the encoder char-table is ready.
4476 (maybe_unify_char): Extern it.
4477
4478 * charset.c (Vchar_unified_charset_table): Delete it.
4479 (inhibit_load_charset_map): New variable.
4480 (temp_charset_work): New variable.
4481 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
4482 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
4483 New macros.
4484 (load_charset_map): Meaning of control_flag changed. If
4485 inhibit_load_charset_map is nonzero, setup a table in
4486 temp_charset_work.
4487 (load_charset): New argument control_flag.
4488 (map_charset_for_dump): New function.
4489 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
4490 map_charset_for_dump.
4491 (Fdefine_charset_internal): If the charset method is MAP, load
4492 mapping tables by calling load_charset.
4493 (Funify_charset): Don't load a mapping table but directly set
4494 Vchar_unify_table.
4495 (maybe_unify_char): New function.
4496 (decode_char): Don't handle the deleted method MAP_DEFERRED.
4497 Handle the case of inhibit_load_charset_map being nonzero.
4498 (encode_char): Don't handle the deleted method MAP_DEFERRED.
4499 Handle the case of inhibit_load_charset_map being nonzero.
4500 (Fclear_charset_maps): Just free temp_charset_work.
4501 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
4502 variable.
4503
4504 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
4505 change of char_table_ref_and_range.
4506 (char_table_ref_and_range): Change the meaning of argument FROM
4507 and TO. Now the caller must provide initial values for *FROM
4508 and *TO.
4509
4510 * fontset.c (fontset_add): Adjusted for the change of
4511 char_table_ref_and_range.
4512 (fontset_get_font_group): Likewise.
4513 (Ffontset_info): Likewise.
4514
4515 * keymap.c (describe_vector): Adjusted for the change of
4516 char_table_ref_and_range. For char-table, put boundary between
4517 non-ASCII and 8-bit characters.
4518
4519 * print.c (print_object): For bool-vector, delete unnecessary
4520 check of ASCII_BYTE_P.
4521
9196133b
JR
45222008-11-26 Jason Rumney <jasonr@gnu.org>
4523
4524 * w32font.c (w32font_open_internal): Don't include external
9acef61c 4525 leading in font height. (Bug#879)
9196133b 4526
9f688acf
GM
45272008-11-26 Glenn Morris <rgm@gnu.org>
4528
4529 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
4530 redefinition with ifdef. (Bug#1383)
4531
90d19aff
AR
45322008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4533
4534 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
4535
4ccfa1c0 45362008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
4537
4538 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
4539 New EmacsView methods.
4540 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
4541 Fixes bug #1048,1357,1414.
4542
45432008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4544
4545 Fix bug #1362.
4546 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
4547 is not an indexed color.
4548 * nsterm.m (free_indexed_color): Add argument checking.
4549 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
4550
e7d5ecb3
CY
45512008-11-24 Chong Yidong <cyd@stupidchicken.com>
4552
4553 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
4554 Document confirm-after-completion value for
4555 minibuffer-completion-confirm.
4556
c285743c
JR
45572008-11-24 Jason Rumney <jasonr@gnu.org>
4558
4559 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
4560 warning.
4561
b0857706
JR
45622008-11-23 Jason Rumney <jasonr@gnu.org>
4563
4564 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
4565 restored before returning.
4566
4567 * w32font.c (check_face_name): New function.
4568 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 4569 fonts. (Bug#642)
b0857706 4570
ee50ff07
MR
45712008-11-22 Martin Rudalics <rudalics@gmx.at>
4572
4573 * buffer.c (Fswitch_to_buffer): Reword and mention new option
4574 confirm-nonexistent-file-or-buffer in doc-string.
4575
b8ff72fa
SM
45762008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
4577
4578 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
4579 Fix copy/paste typo. Add checks.
4580
cee53ed4
KH
45812008-11-21 Kenichi Handa <handa@m17n.org>
4582
4583 * coding.c (detect_coding_iso_2022): Reject invalid composition
4584 sequence.
4585 (DECODE_COMPOSITION_START): If the current source is the last
4586 block, and the current composition doesn't end, regard this
4587 sequence as invalid.
4588 (decode_coding_iso_2022): Handle invalid composition sequence.
4589
f6ef1e65
MR
45902008-11-20 Martin Rudalics <rudalics@gmx.at>
4591
4592 * window.c (coordinates_in_window): Don't return
4593 ON_VERTICAL_BORDER for the rightmost position of a mode/header
4594 line when the window is not the rightmost one. (Bug#1372)
4595
e08b1705
MR
45962008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
4597
4598 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
4599
ad98e89f
EZ
46002008-11-15 Eli Zaretskii <eliz@gnu.org>
4601
4602 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
4603 and bright_bg if noninteractive is non-zero.
4604
fb098a4b
CY
46052008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4606
4607 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
4608 x_draw_glyph_string_background.
4609
4610 * w32term.c (x_draw_glyph_string): Likewise.
4611
ce952b6e
CY
46122008-11-15 Chong Yidong <cyd@stupidchicken.com>
4613
4614 * xterm.c (x_draw_glyph_string): Stop drawing the background of
4615 the next glyph string once past the overhang width.
4616
4617 * nsterm.m (ns_draw_glyph_string): Likewise.
4618
4619 * w32term.c (x_draw_glyph_string): Likewise.
4620
26ea7079
CY
46212008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
4622
4623 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
4624 double file close.
4625
1c33c906
MR
46262008-11-14 Martin Rudalics <rudalics@gmx.at>
4627
4628 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
4629 dedicated status of window before attempting to display another
4630 buffer in it.
4631
8fc29035
JB
46322008-11-14 Juanma Barranquero <lekktu@gmail.com>
4633
4634 * msdos.c (Fmsdos_long_file_names):
4635 (syms_of_msdos) <dos-unsupported-char-glyph>:
4636 * dosfns.c (Fint86): Fix typos in docstrings.
4637
55fb4286
EZ
46382008-11-14 Eli Zaretskii <eliz@gnu.org>
4639
4640 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
4641
3fda0315
KY
46422008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
4643
4644 * puresize.h (BASE_PURESIZE): Increase to 1260000.
4645
7e849c17
CY
46462008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
4647
4648 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
4649
4650 * frame.h: Negative alpha means "don't touch".
4651
4652 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
4653
4654 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
4655
b9fd67bd
DN
46562008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
4657
4658 * hftctl.c:
4659 * chpdef.h:
4660 * acldef.h: Remove files used only for systems no longer supported.
4661
4662 * Makefile.in: Fix .o alphabetical ordering.
4663 (hftctl.o): Remove dependency, file removed.
4664 (keymap.o, print.o): Depend on charset.h.
4665
d5998e03
KH
46662008-11-10 Kenichi Handa <handa@m17n.org>
4667
2ae37cf0 4668 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 4669
be70e183
CY
46702008-11-08 Chong Yidong <cyd@stupidchicken.com>
4671
4672 * dired.c (file_name_completion): If completion_ignore_case is
4673 enabled, ignore case when checking completion-regexp-list.
4674
7cf94eac
EZ
46752008-11-08 Eli Zaretskii <eliz@gnu.org>
4676
4677 * vm-limit.c (get_lim_data): Fix last change.
4678
ee107a89
KH
46792008-11-08 Kenichi Handa <handa@m17n.org>
4680
4681 * character.c (Fget_byte): New function.
4682 (syms_of_character): Defsubr Fget_byte.
4683
5fd15622
CY
46842008-11-07 Chong Yidong <cyd@stupidchicken.com>
4685
4686 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
4687 cursor position is valid after scrolling.
4688
13d62fad
JB
46892008-11-06 Juanma Barranquero <lekktu@gmail.com>
4690
4691 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
4692
a1dd2936
GM
46932008-11-06 Glenn Morris <rgm@gnu.org>
4694
4695 * xterm.c (handle_one_xevent): Don't let popup menus cause
4696 mouse-autoselect-window related window switching. (Bug#1261)
4697
860cd236
CY
46982008-11-04 David Smith <davidsmith@acm.org> (tiny change)
4699
4700 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
4701
653a3150
AS
47022008-11-04 Andreas Schwab <schwab@suse.de>
4703
4704 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
4705
870f5cac
CY
47062008-11-03 Chong Yidong <cyd@stupidchicken.com>
4707
4708 * xfns.c (Fx_wm_set_size_hint): New function.
4709
1e02f3cb
MR
47102008-11-03 Martin Rudalics <rudalics@gmx.at>
4711
4712 * textprop.c (Fprevious_single_char_property_change): Return 0
4713 when there's no change in a string. (Bug#1301)
4714
e630dfc6
MR
47152008-11-02 Martin Rudalics <rudalics@gmx.at>
4716
4717 * frame.c (do_switch_frame): New argument NORECORD passed to
4718 Fselect_window.
4719 (Fselect_frame): New argument NORECORD passed to
4720 do_switch_frame.
4721 (Fset_frame_selected_window): New argument NORECORD passed to
4722 Fselect_frame.
4723 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
4724 in call of do_switch_frame.
4725 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
4726 Handle NORECORD argument in call of Fselect_frame.
4727 * lisp.h (do_switch_frame, Fselect_frame)
4728 (Fset_frame_selected_window): Adjust declarations.
4729 * window.c (select_frame_norecord): New function.
4730 (run_window_configuration_change_hook): Use it and call
4731 Fselect_frame with NORECORD set.
4732 (Fselect_window): Pass NORECORD to Fselect_frame.
4733 (Fset_window_configuration): Handle NORECORD argument in call of
4734 do_switch_frame.
4735 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
4736 Fset_frame_selected_window.
4737 * keyboard.c (command_loop_1): Handle NORECORD in call of
4738 Fselect_frame (currently ifdefd).
4739
9020b223
GM
47402008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
4741
4742 * emacs.c (USAGE2): Untabify.
4743
793ffee8
SM
47442008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
4745
4746 * composite.c (fill_gstring_header): Fix copy/paste typo.
4747
ab6d1131
MR
47482008-10-31 Martin Rudalics <rudalics@gmx.at>
4749
4750 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
4751 (Fother_window): Rename argument and rewrite doc-string.
4752 (select_window_norecord): Fix return value. (Bug#1276)
4753
601a9cf1
JB
47542008-10-30 Juanma Barranquero <lekktu@gmail.com>
4755
4756 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
4757 new frames overriding foreground for tooltips. Based on similar patch
4758 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
4759
813b0652
CY
47602008-10-29 Chong Yidong <cyd@stupidchicken.com>
4761
4762 * emacs.c (Fdaemon_initialized): Initialize nfd.
4763
4414f58f
MR
47642008-10-29 Martin Rudalics <rudalics@gmx.at>
4765
4766 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
4767 (Fwindow_text_height): Clarify doc-strings.
4768 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
4769 doc-string of window-scroll-functions.
4770
ecdcaa09
RS
47712008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
4772
4773 * category.c (syms_of_category): Fix typo in docstring.
4774
23fe745a
JB
47752008-10-28 Juanma Barranquero <lekktu@gmail.com>
4776
4777 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
4778 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
4779 Fix typos in docstrings.
4780
ff808935
DN
47812008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
4782
4783 * emacs.c (daemon_pipe): Make non-static.
4784 (IS_DAEMON): Move definition ...
4785 * lisp.h (IS_DAEMON): ... here.
4786 (daemon_pipe): Declare.
4787 (is_daemon): Remove.
4788 * dispnew.c (init_display): Use IS_DAEMON.
4789
fc012771
SM
47902008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
4791
4792 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
4793 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
4794
4795 * emacs.c (is_daemon): Remove.
4796 (main): Don't set is_daemon.
4797 (IS_DAEMON): New macro.
4798 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 4799 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
4800 parent exits.
4801 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
4802
d8bdbe6f
CY
48032008-10-27 Chong Yidong <cyd@stupidchicken.com>
4804
d1a072bf
CY
4805 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
4806 over-sized glyph, draw it with the default glyph width.
4807
e2e325aa
CY
4808 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4809 glyph, draw it with the default glyph width.
4810
4811 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4812 glyph, draw it with the default glyph width.
4813
d8bdbe6f
CY
4814 * xdisp.c (try_scrolling): When computing the distance from the
4815 scroll margin to PT, try moving some distance past the window
4816 bottom before giving up.
4817
7bfac547
MR
48182008-10-27 Martin Rudalics <rudalics@gmx.at>
4819
4820 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
4821 (Fset_window_buffer): Explain in doc-string that a window can be
4822 "strongly" dedicated to its buffer.
4823
4ff029f6
DN
48242008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
4825
4826 * emacs.c (daemon_name): New variable.
4827 (main): Deal with --daemon=SERVER_NAME.
4828 (Fdaemonp): Return a name if one was passed to --daemon.
4829
5790ef40
DN
48302008-10-26 Romain Francoise <romain@orebokech.com>
4831
f9bd0df9 4832 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
4833 (main): Create a pipe before forking, make the parent exit only after
4834 the child has closed its end of the pipe. Move closing the
4835 descriptors ...
4836 (Fdaemon_initialized): ... here. New function.
4837
f5385255
SM
48382008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
4839
4d632321
SM
4840 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
4841 the previous unoptimized table.
4842
f5385255
SM
4843 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
4844 the distinction between non-nil and non-t value of `dedicated'.
4845
6c56a0f3
CY
48462008-10-25 Chong Yidong <cyd@stupidchicken.com>
4847
4848 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 4849 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 4850
fec89261
MR
48512008-10-25 Martin Rudalics <rudalics@gmx.at>
4852
4853 * window.c (Fget_buffer_window, Fdelete_windows_on)
4854 (Freplace_buffer_in_windows): Make buffer argument optional and
4855 rename to buffer_or_name.
4856
34fcddd0
CY
48572008-10-24 Chong Yidong <cyd@stupidchicken.com>
4858
f5385255
SM
4859 * xdisp.c (handle_single_display_spec, handle_display_prop):
4860 Undo 2005-05-16 change.
34fcddd0
CY
4861 (handle_stop): Pop iterator if it's loaded with an empty string.
4862 (get_overlay_strings_1): Don't save iterator if it's loaded with
4863 an empty string (bug#1201).
4864
064766f2
KH
48652008-10-24 Kenichi Handa <handa@m17n.org>
4866
4867 * ftfont.c (ftfont_otf_features): Fix previous change.
4868 (ftfont_otf_capability): Check FeatureList.FeatureCount before
4869 calling ftfont_otf_features.
4870
f9bd0df9 48712008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
4872
4873 * font.c (font_match_p): Fix for the case that a vector of
4874 characters is in script-representative-chars.
4875
1dae9197
MA
48762008-10-24 Michael Albinus <michael.albinus@gmx.de>
4877
4878 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 4879 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
4880 (xd_read_queued_messages): Catch Qdbus_error from the macros.
4881 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
4882 macro. (Bug#1186).
4883
f9bd0df9 48842008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
4885
4886 * s/sol2-10.h: New file.
4887
878a4584
JB
48882008-10-23 Juanma Barranquero <lekktu@gmail.com>
4889
4890 * xdisp.c (fill_glyph_string): Fix typo in source (though the
4891 poor beast has survived 9+ years and the jump from xterm.c!).
4892
cd265ca6
MR
48932008-10-23 Martin Rudalics <rudalics@gmx.at>
4894
4895 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
4896 Reword doc-string.
f5385255 4897 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 4898
472a4dc9
JB
48992008-10-23 Juanma Barranquero <lekktu@gmail.com>
4900
4901 * character.c (syms_of_character) <script-representative-chars>:
4902 <unicode-category-table>: Doc fixes.
4903
159bd5a2
NF
49042008-10-23 Noah Friedman <friedman@splode.com>
4905
4906 * coding.c (make_conversion_work_buffer): Check that
4907 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
4908 Fget_buffer_create.
4909
49f9c344
KH
49102008-10-23 Kenichi Handa <handa@m17n.org>
4911
4912 * font.c (font_add_log): Check the values of extra properties.
4913
12bb3111
MR
49142008-10-22 Martin Rudalics <rudalics@gmx.at>
4915
4916 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4917 Reword doc-string.
4918 (Fset_window_parameter): Use NILP.
4919 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 4920 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 4921
bbeb4e99
JB
49222008-10-22 Juanma Barranquero <lekktu@gmail.com>
4923
4924 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
4925
49262008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
4927
4928 * nsfns.m (ns_appkit_version): New function.
4929 (x-server-version): Use it.
4930 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
4931 (x-server-vendor): Don't check_ns().
4932
4933 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
4934
a9b555d3
JB
49352008-10-22 Juanma Barranquero <lekktu@gmail.com>
4936
4937 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4938 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
4939
4626499f
KH
49402008-10-22 Kenichi Handa <handa@m17n.org>
4941
e3681952
KH
4942 * syntax.c (scan_words): Call word_boundary_p instead of comparing
4943 scripts.
4944
4626499f
KH
4945 * category.c (word_boundary_p): Check scripts instead of charset.
4946 Handle nil value in word-separating-categories and
4947 word-combining-categories.
4948 (syms_of_category): Fix docstrings of word-separating-categories
4949 and word-combining-categories.
4950
1560f91a
EZ
49512008-10-21 Eli Zaretskii <eliz@gnu.org>
4952
4953 * coding.c (Fencode_coding_region, Fdecode_coding_region)
4954 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
4955
f4668441
MR
49562008-10-21 Martin Rudalics <rudalics@gmx.at>
4957
4958 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
4959 Rename arg "buffer" to "buffer_or_name".
4960 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
4961 it optional.
4962 (no_switch_window): Remove since the return value is not used.
a9b555d3 4963 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
4964 Consider window as dedicated when Fwindow_dedicated_p returns a
4965 non-nil value.
4966 * lisp.h: Remove prototype for no_switch_window.
4967
fd75ddb2
JD
49682008-10-21 Jan Djärv <jan.h.d@swipnet.se>
4969
4970 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 4971 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 4972
07295713
KH
49732008-10-21 Kenichi Handa <handa@m17n.org>
4974
4975 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
4976 check Vlatin_extra_code_table.
4977
712adc82
EZ
49782008-10-20 Eli Zaretskii <eliz@gnu.org>
4979
4980 * fileio.c (Fset_file_modes): Doc fix.
4981
f549eb0b
MA
49822008-10-19 Michael Albinus <michael.albinus@gmx.de>
4983
4984 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
4985 in arrays.
4986
aac0c6e3
MR
49872008-10-19 Martin Rudalics <rudalics@gmx.at>
4988
4989 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4990 Mention kill-buffer in doc-string.
4991 (Fset_window_buffer): Reinsert tem check removed in last commit.
4992 (Fenlarge_window, Fshrink_window): Have argument names and
4993 doc-string follow Elisp manual more closely.
4994
49952008-10-18 Eli Zaretskii <eliz@gnu.org>
4996
4997 * fileio.c (Fset_file_modes): Doc fix.
4998
49992008-10-18 Martin Rudalics <rudalics@gmx.at>
5000
5001 * window.c (Fwindow_width, Fset_window_start)
5002 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5003 (Fdelete_windows_on, Freplace_buffer_in_windows):
5004 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5005 (Fwindow_dedicated_p): Make window argument optional.
5006 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5007 (Fset_window_buffer): Respect any non-nil dedicated value for
5008 window. Rename "buffer" argument to "buffer_or_name".
5009
50102008-10-18 Ulrich Mueller <ulm@gentoo.org>
5011
5012 * m/sh3.h: New file, machine description for SuperH.
5013
50142008-10-17 Martin Rudalics <rudalics@gmx.at>
5015
5016 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5017
50182008-10-17 Kenichi Handa <handa@m17n.org>
5019
5020 * ftfont.c (ftfont_otf_features): Fix indexing
5021 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5022
50232008-10-16 Magnus Henoch <mange@freemail.hu>
5024
5025 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5026 (Fdbus_call_method_asynchronously): Ditto.
5027 This change makes C-h f display the argument list.
5028
50292008-10-16 Chong Yidong <cyd@stupidchicken.com>
5030
5031 * fileio.c (Fexpand_file_name): Doc fix.
5032
5033 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5034 of :foreground and :background equivalent to unspecified (20.x
5035 compatibility).
5036
50372008-10-15 Eli Zaretskii <eliz@gnu.org>
5038
5039 * buffer.c (syms_of_buffer): Doc fix.
5040
50412008-10-14 Kenichi Handa <handa@m17n.org>
5042
5043 * font.c (font_clear_prop): When clearing font width, clear the
5044 average width field too.
5045
50462008-10-12 Andreas Schwab <schwab@suse.de>
5047
5048 * ftfont.c (ftfont_shape_by_flt): Make static.
5049 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5050
5051 * font.c: Don't include <m17n-flt.h>.
5052
50532008-10-10 Eli Zaretskii <eliz@gnu.org>
5054
5055 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5056
50572008-10-09 Eli Zaretskii <eliz@gnu.org>
5058
5059 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5060 away code.
5061
50622008-10-09 Chong Yidong <cyd@stupidchicken.com>
5063
5064 * dispnew.c (update_text_area): Avoid looping due to large glyph
5065 overhangs (bug#1070).
5066
50672008-10-09 Kenichi Handa <handa@m17n.org>
5068
5069 * fontset.c (face_for_char): If face->fontset is negative, just
5070 return ascii_face.
5071
f5385255
SM
5072 * font.c (font_delete_unmatched): Fix previous change.
5073 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5074
50752008-10-09 Martin Rudalics <rudalics@gmx.at>
5076
5077 * frame.c (Fraise_frame): On text-only terminals select frame in
5078 order to make it visible. (Bug#1061)
5079
50802008-10-08 Chong Yidong <cyd@stupidchicken.com>
5081
5082 * fontset.c (fontset_find_font): Check frame validity.
5083
50842008-10-07 Chong Yidong <cyd@stupidchicken.com>
5085
a9b555d3 5086 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5087 (xg_display_close): Allow Emacs to close all displays (bug#985).
5088
50892008-10-06 Andreas Schwab <schwab@suse.de>
5090
f5385255 5091 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5092
50932008-10-06 Chong Yidong <cyd@stupidchicken.com>
5094
f5385255 5095 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5096
a9b555d3 5097 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5098
5099 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5100 during initialization.
5101
51022008-10-04 Eli Zaretskii <eliz@gnu.org>
5103
5104 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5105 whole thing on MSDOS frames as well as on a TTY.
5106
5107 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5108 well as for TTY.
5109 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5110 well as on a TTY.
5111
5112 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5113 as well as for TTY.
5114
5115 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5116
5117 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5118 MSDOS frames as well.
5119
51202008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5121
5122 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5123 correct arguments.
b71ac3dd 5124 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5125
51262008-10-03 Glenn Morris <rgm@gnu.org>
5127
5128 * emacs.c (USAGE1): Add --daemon.
5129
51302008-10-02 Eli Zaretskii <eliz@gnu.org>
5131
5132 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5133 100, so it's in percents as advertised.
5134
51352008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5136
5137 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5138 (ns_output.current_cursor, ns_output.desired_cursor)
5139 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5140 (FRAME_NEW_CURSOR_COLOR): Remove.
5141
5142 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5143 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5144 enumeration (HOLLOW_BOX_CURSOR, etc.).
5145
5146 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5147 (draw_window_cursor): Simplify code.
f5385255
SM
5148 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5149 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5150 updates manually.
a9b555d3
JB
5151 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5152 Use core Emacs cursor types.
aac0c6e3 5153
b8ff72fa 5154 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5155
51562008-10-02 Martin Rudalics <rudalics@gmx.at>
5157
5158 * process.c (Faccept_process_output): Fix doc-string.
5159
51602008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5161
5162 * gmalloc.c (__sbrk): Also define for uClibc.
5163
5164 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5165 for uClibc.
5166
51672008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5168
5169 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5170 styles.
5171 (nsfont_open): Reenable the cache.
5172
51732008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5174
5175 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5176 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5177
51782008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5179
5180 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5181 a suspended terminal.
5182
51832008-09-30 Michael Albinus <michael.albinus@gmx.de>
5184
5185 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5186
51872008-09-30 Eli Zaretskii <eliz@gnu.org>
5188
5189 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5190
51912008-09-30 Chong Yidong <cyd@stupidchicken.com>
5192
5193 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5194 in a continued line coincides with a line beginning.
5195
51962008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5197
5198 * nsfont.m (nsfont_trait_distance): Fix bug.
5199 (nsfont_list): Return a list rather than a vector (syncs with Handa
5200 changes of 2008-05-14).
5201 (nsfont_open): Improve logging.
5202
52032008-09-29 Andreas Schwab <schwab@suse.de>
5204
5205 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5206
52072008-09-28 Martin Rudalics <rudalics@gmx.at>
5208
5209 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5210 name as char-resolve-modifiers.
5211 Reported by: Markus Triska <markus.triska@gmx.at>
5212
52132008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5214
5215 * dispnew.c (init_display): Return earlier when running as a daemon.
5216
52172008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5218
5219 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5220
52212008-09-27 Eli Zaretskii <eliz@gnu.org>
5222
5223 * composite.c (Fcomposition_get_gstring)
5224 (Fcompose_region_internal, Fcompose_string_internal)
5225 (Ffind_composition_internal): Doc fix.
5226 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5227 (syms_of_composite) <auto-composition-function>: Doc fix.
5228 (syms_of_composite) <composition-function-table>: Doc fix.
5229
52302008-09-25 Chong Yidong <cyd@stupidchicken.com>
5231
5232 * search.c (wordify): New argument for lax word-ends.
5233 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5234
52352008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5236
5237 * lisp.h (is_daemon): Declare.
5238 * dispnew.c (init_display): Do not try to initialize the terminal
5239 when running as a daemon.
5240
52412008-09-22 Chong Yidong <cyd@stupidchicken.com>
5242
5243 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5244 x_display_pixel_height.
5245
52462008-09-22 Martin Rudalics <rudalics@gmx.at>
5247
5248 * undo.c (record_point): Don't call Fundo_boundary for first
5249 change. (Bug#731)
5250
52512008-09-22 Juanma Barranquero <lekktu@gmail.com>
5252
5253 * emacs.c (Fdaemonp): Doc fix.
5254
52552008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5256
5257 * emacs.c (main): Place #ifdef in the proper place.
5258
52592008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5260
5261 * emacs.c (standard_args): Add --daemon.
5262 (main): Disconnect from the terminal when --daemon is passed.
5263 (is_daemon): New variable.
5264 (Fdaemonp): New function.
5265 (syms_of_emacs): Defsubr it.
5266
52672008-09-20 Chong Yidong <cyd@stupidchicken.com>
5268
5269 * xdisp.c (get_next_display_element): Handle string display
5270 correctly when checking for the end of a box run.
5271
52722008-09-20 Glenn Morris <rgm@gnu.org>
5273
5274 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5275 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5276 (Frename_file): Avoid copying to trash if a rename involves
5277 a delete. (Bug#964).
5278
52792008-09-20 Eli Zaretskii <eliz@gnu.org>
5280
5281 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5282 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5283 frames as well as termcap frames.
5284 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5285 get_named_tty.
5286
52872008-09-19 Eli Zaretskii <eliz@gnu.org>
5288
5289 * process.c (procfs_system_process_attributes): Fix cmdline in
5290 case /proc/PID/cmdline is empty.
5291
5292 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5293 x_display_pixel_height.
5294
52952008-09-19 Juanma Barranquero <lekktu@gmail.com>
5296
5297 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5298
5299 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5300 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5301
53022008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5303
5304 * dispextern.h (struct it): Move line_wrap away from the middle of
5305 bitfields. Move voffset in struct iterator_stack_entry after the
5306 bitfields. Move tab_width near after another short.
5307
53082008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5309
5310 * frame.h (struct frame): Move alpha from the middle of bitfields.
5311
5312 * window.h (struct window): Move frozen_window_start_p after the
5313 rest of the bitfields to reduce padding.
5314
53152008-09-18 Chong Yidong <cyd@stupidchicken.com>
5316
5317 * xterm.h (x_display_info): Remove `height' and `width' members.
5318
5319 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5320
5321 * w32term.h (w32_display_info): Remove `height', `width',
5322 `height_in', and `width_in' members.
5323
b8ff72fa
SM
5324 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5325 New functions.
aac0c6e3
MR
5326 (x_calc_absolute_position): Use them.
5327 (x_term_init): Omit removed `height' and `width' members.
5328
b8ff72fa
SM
5329 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5330 New functions.
aac0c6e3
MR
5331 (w32_read_socket, x_calc_absolute_position): Use them.
5332 (w32_initialize_display_info, w32_term_init): Omit removed members
5333 of w32_display_info.
5334
b8ff72fa
SM
5335 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5336 New functions.
5337 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5338
b8ff72fa
SM
5339 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5340 New functions.
aac0c6e3
MR
5341 (x_calc_absolute_position): Use them.
5342 (x_term_init): Omit removed `height' and `width' members.
5343
5344 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5345 (compute_tip_xy):
5346 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5347 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5348 x_display_pixel_width.
5349
53502008-09-18 Kenichi Handa <handa@m17n.org>
5351
5352 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5353 (composition_compute_stop_pos): Fix handling of static composition.
5354 (Fcomposition_get_gstring): Check FROM and TO at first.
5355
53562008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5357
46e722a9 5358 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5359 mixup (YAILOM).
5360
53612008-09-17 Chong Yidong <cyd@stupidchicken.com>
5362
5363 * indent.c (Fvertical_motion): Use position reported by iterator
5364 instead of PT for determining screen motion (bug#943).
5365
53662008-09-17 Romain Francoise <romain@orebokech.com>
5367
5368 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5369
53702008-09-17 Kenichi Handa <handa@m17n.org>
5371
5372 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5373
5374 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5375 if necessary.
5376
53772008-09-16 Kenichi Handa <handa@m17n.org>
5378
5379 * coding.c (make_conversion_work_buffer): Avoid calling
5380 Fget_buffer_create if it is not necessary.
5381
53822008-09-15 Martin Rudalics <rudalics@gmx.at>
5383
5384 * window.c (Fselect_window): Don't update window_select_count and
5385 use_time when norecord is not nil.
5386
53872008-09-14 Kenichi Handa <handa@m17n.org>
5388
5389 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5390 specpdl_ptr.
5391
53922008-09-12 Kenichi Handa <handa@m17n.org>
5393
5394 * indent.c (scan_for_column): Don't handle automatic composition
5395 if the current buffer is not associated with a window.
5396
5397 * composite.c (composition_reseat_it): If the current buffer is
5398 not associated with a window, ignore the automatic composition.
5399 (find_automatic_composition): Likewise.
5400
54012008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5402
5403 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5404 (Fgpm_mouse_stop): Use it.
5405 * termhooks.h (close_gpm): Declare.
5406 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5407 connection if Gpm_GetEvent fails.
5408
5409 * window.c (set_window_buffer): Always preserve current-buffer.
5410
54112008-09-12 Glenn Morris <rgm@gnu.org>
5412
5413 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5414
54152008-09-11 Glenn Morris <rgm@gnu.org>
5416
5417 * charset.c (charset-map-path): Doc fix.
5418
54192008-09-10 Kenichi Handa <handa@m17n.org>
5420
5421 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5422
5423 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5424 compose a grapheme cluster with the preceding base glyph.
5425
5426 * composite.c (composition_compute_stop_pos): Fix previous change.
5427 Reset cmp_it->id to -1 at first.
5428
54292008-09-10 Glenn Morris <rgm@gnu.org>
5430
5431 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5432
54332008-09-09 Chong Yidong <cyd@stupidchicken.com>
5434
5435 * keyboard.c (read_key_sequence): Reapply translation maps when
5436 switching keyboards.
5437
54382008-09-09 Kenichi Handa <handa@m17n.org>
5439
5440 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
5441 characters.
5442
5443 * composite.c (FORWARD_CHAR): Fix calculation
5444 of (POSITION).pos_byte.
5445 (composition_compute_stop_pos): Limit the search of composition to
5446 at most 500 characters ahead. If we reach the limit or find a
5447 newline, set cmp_it->ch to -2 and return 0.
5448 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
5449
54502008-09-08 Kenichi Handa <handa@m17n.org>
5451
5452 * indent.c (Fvertical_motion): Be sure to set
5453 it_overshoot_expected if it.cmp_it.id is non-negative.
5454
54552008-09-07 Andreas Schwab <schwab@suse.de>
5456
5457 * callproc.c (Fcall_process): Don't hold references to string data
5458 across garbage collection. Move initialisation of new_argv down
5459 to avoid compiler bug.
5460
54612008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5462
5463 * process.c (Fsystem_process_attributes): Doc fix.
5464
54652008-09-07 Chong Yidong <cyd@stupidchicken.com>
5466
5467 * callproc.c (Fcall_process): Canonicalize current directory name.
5468
5469 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5470 iterator advances to the next line if the current line ends in a
5471 continued tab.
5472
54732008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
5474
5475 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
5476 member to point to cmp_from.
5477
5478 * xdisp.c: Doc fix for references to gidx data member.
5479
54802008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5481
5482 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
5483
54842008-09-07 Kenichi Handa <handa@m17n.org>
5485
5486 * composite.c (FORWARD_CHAR): Check STOP after
5487 incrementing (POSITION).pos.
5488
54892008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5490
5491 * process.c (Fsystem_process_attributes): Doc fix.
5492
54932008-09-06 Chong Yidong <cyd@stupidchicken.com>
5494
5495 * keyboard.c (Ftop_level): Doc fix.
5496
54972008-09-06 Eli Zaretskii <eliz@gnu.org>
5498
5499 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
5500 minibuffer, don't let lower part of menu invade the echo area.
5501
5502 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
5503 "char *q" to access menu text and advance through it. Revert the
5504 change that displayed ">" instead of ASCII character 0x10.
5505
55062008-09-05 Eli Zaretskii <eliz@gnu.org>
5507
5508 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
5509 toggle boxes and radio buttons on MS-DOS as well.
5510
55112008-09-05 Kenichi Handa <handa@m17n.org>
5512
5513 * composite.c (autocmp_chars): Check lookback count.
5514 (composition_compute_stop_pos): Set cmp_it->lookback.
5515 (composition_reseat_it): Check lookback count.
5516 (struct position_record): New struct.
5517 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
5518 (find_automatic_composition): New function.
5519 (composition_adjust_point): Use find_automatic_composition.
5520
5521 * dispextern.h (struct composition_it): New member lookback.
5522
55232008-09-02 Chong Yidong <cyd@stupidchicken.com>
5524
5525 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
5526 if moving by a single line.
5527
55282008-09-02 Andreas Schwab <schwab@suse.de>
5529
5530 * xterm.c (x_delete_display): Fix merge error.
5531
5532 * fileio.c (Fexpand_file_name): Remove unused variables.
5533
55342008-09-02 Eli Zaretskii <eliz@gnu.org>
5535
5536 * fileio.c (Fexpand_file_name): Copy argument `name' into local
5537 storage on all platforms, not just on DOS_NT.
5538
55392008-09-02 Jason Rumney <jasonr@gnu.org>
5540
b8ff72fa
SM
5541 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
5542 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
5543
55442008-09-01 Chong Yidong <cyd@stupidchicken.com>
5545
5546 * xfaces.c (Finternal_set_alternative_font_family_alist)
5547 (Finternal_set_alternative_font_registry_alist): Properly copy
5548 entire alist structure.
5549
55502008-09-01 Kenichi Handa <handa@m17n.org>
5551
d66c0241 5552 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 5553 representative chars of the script is a vector.
d66c0241
JB
5554 (ftfont_list): Handle the case where the representative chars of
5555 the script is a vector.
aac0c6e3
MR
5556
5557 * character.c (syms_of_character): Docstring of
5558 script-representative-chars fixed.
5559
55602008-08-31 Eli Zaretskii <eliz@gnu.org>
5561
5562 * msdos.c (BUILD_CHAR_GLYPH): New macro.
5563 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
5564 the menu. Allocate larger buffer for `text', to account for
5565 possible ^C characters.
5566
55672008-08-31 Martin Rudalics <rudalics@gmx.at>
5568
5569 * xdisp.c (prepare_menu_bars): Don't call
5570 Vwindow_size_change_functions with arg Qt.
5571
55722008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
5573
5574 * font.h (font_range):
5575 * fileio.c (report_file_error):
46e722a9
SM
5576 * composite.c (composition_update_it): Yet another int/Lisp_Object
5577 mixup (YAILOM).
aac0c6e3
MR
5578
55792008-08-30 Glenn Morris <rgm@gnu.org>
5580
5581 * data.c (Fmake_variable_frame_local): Doc fix.
5582
5583 * frame.c (Fmodify_frame_parameters): Doc fix.
5584
55852008-08-30 Eli Zaretskii <eliz@gnu.org>
5586
5587 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
5588 needed by GetTokenInformation.
5589 (w32_system_process_attributes): Check return values of all system
5590 APIs.
5591
5592 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
5593 only when the state changes.
5594 (IT_update_begin, IT_update_end): Add termscript trace.
5595
5596 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
5597 clipboard is unavailable. Set dst to NULL if it doesn't point to
5598 malloc'ed data.
5599 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
5600 passing random values to xfree.
5601
5602 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 5603 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
5604
56052008-08-29 Jason Rumney <jasonr@gnu.org>
5606
5607 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
5608
56092008-08-29 Eli Zaretskii <eliz@gnu.org>
5610
5611 * composite.c (fill_gstring_body): Avoid compiler warnings.
5612
5613 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
5614 LGLYPH_SET_CODE to avoid compiler warnings.
5615
2ae37cf0 5616 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
5617
5618 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
5619
5620 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
5621 LGLYPH_SET_CODE.
5622
56232008-08-29 Kenichi Handa <handa@m17n.org>
5624
5625 * fileio.c (report_file_error): Don't downcase the first character
5626 of errstring if it is still unibyte.
5627
56282008-08-29 Kenichi Handa <handa@m17n.org>
5629
5630 These changes are to re-implement the automatic composition so
5631 that it doesn't use text properties.
5632
5633 * Makefile.in (ftfont.o): Depend on composite.h.
5634 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
5635
5636 * character.h (Vunicode_category_table): Extern it.
5637
5638 * character.c (Vunicode_category_table): New variable.
5639 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
5640
5641 * chartab.c (optimize_sub_char_table): Perform more greedy
5642 optimization.
5643
b8ff72fa
SM
5644 * composite.h (enum composition_method):
5645 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
5646 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
5647 (Vcomposition_function_table): Extern it.
5648 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
5649 (composition_gstring_put_cache, composition_gstring_from_id)
5650 (composition_gstring_p, composition_gstring_width)
5651 (composition_compute_stop_pos, composition_reseat_it)
5652 (composition_update_it, composition_adjust_point): Extern them.
5653 (Fcomposition_get_gstring): EXFUN it.
5654
d66c0241 5655 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
5656 (Vcomposition_function_table)
5657 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
5658 (gstring_hash_table, gstring_work, gstring_work_headers):
5659 New variables.
aac0c6e3
MR
5660 (gstring_lookup_cache, composition_gstring_put_cache)
5661 (composition_gstring_from_id, composition_gstring_p)
5662 (composition_gstring_width, fill_gstring_header)
5663 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
5664 (composition_reseat_it, composition_update_it)
b8ff72fa 5665 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
5666 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
5667 and gstring_work_headers. DEFVAR_LISP composition-function-table.
5668 Defsubr compostion_get_gstring.
5669
5670 * dispextern.h (struct glyph): New union u.cmp. Delete the member
5671 cmp_id.
5672 (struct glyph_string): Delete the member gidx. New members
5673 cmp_id, cmp_from, and cmp_to.
5674 (enum it_method): Delete GET_FROM_COMPOSITION.
5675 (struct composition_it): New struct.
5676 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
5677 Delete c, len, cmp_id, cmp_len in u.comp.
5678
5679 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 5680 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 5681 (enum lglyph_indices): Likewise.
b8ff72fa 5682 (font_range): Adjust extern.
aac0c6e3
MR
5683 (font_fill_lglyph_metrics): Extern it.
5684
5685 * font.c (QCf): New variable.
5686 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5687 (font_prepare_composition): Delete this function.
5688 (font_range): Type and arguments changed.
5689 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
5690 (font_fill_lglyph_metrics): New function.
b8ff72fa 5691 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 5692 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
5693 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
5694 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
5695
5696 * fontset.h (font_for_char): Extern it.
5697
5698 * fontset.c (font_for_char): New function.
5699
5700 * ftfont.c: Include composite.h.
5701 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 5702 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
5703
5704 * indent.c: Include composite.h and dispextern.h.
5705 (check_composition): Delete this function.
5706 (scan_for_column): Handle composition by
5707 composition_compute_stop_pos, composition_reseat_it, and
5708 composition_update_it.
5709 (compute_motion): Likewise.
5710 (Fvertical_motion): Fix checking of composition.
5711
5712 * keyboard.c (adjust_point_for_property): Check composition by
5713 composition_adjust_point.
5714
b8ff72fa 5715 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
5716 struct glyph_string.
5717
b8ff72fa
SM
5718 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
5719 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
5720 struct glyph.
5721 (produce_composite_glyph): Likewise.
5722
b8ff72fa
SM
5723 * w32term.c (x_draw_composite_glyph_string_foreground):
5724 Adjust for the change of struct glyph_string.
aac0c6e3
MR
5725 (x_draw_glyph_string): Likewise.
5726
5727 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
5728 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5729
5730 * xdisp.c: Include font.h.
5731 (it_props): Delete the entry for Qauto_composed.
5732 (init_iterator): Initialize it->cmp_it.id to -1.
5733 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 5734 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
5735 (handle_auto_composed_prop): Delete it.
5736 (handle_composition_prop): Handle only static composition.
5737 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
5738 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 5739 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
5740 (pop_it): Likewise.
5741 (get_next_element): Delete next_element_from_composition.
5742 (CHAR_COMPOSED_P): New macro.
5743 (get_next_display_element): For automatic composition, get a face
5744 from the font in the glyph-string.
5745 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 5746 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
5747 (next_element_from_string): Check if the character at the current
5748 position is composed by CHAR_COMPOSED_P.
5749 (next_element_from_buffer): Likewise.
d66c0241
JB
5750 (next_element_from_composition): Adjust for the change of struct it.
5751 Update it->cmp_it.
b8ff72fa
SM
5752 (dump_glyph): Adjust for the change of struct glyph.
5753 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
5754 it and struct glyph. Don't handle automatic composition here.
5755 (fill_gstring_glyph_string): New function.
5756 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 5757 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
5758 (BUILD_GSTRING_GLYPH_STRING): New macro.
5759 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
5760 automatic composition.
b8ff72fa 5761 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 5762 struct glyph.
b8ff72fa 5763 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 5764
b8ff72fa 5765 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
5766 the change of struct glyph_string.
5767 (x_draw_glyph_string): Likewise.
5768
57692008-08-29 Glenn Morris <rgm@gnu.org>
5770
5771 * buffer.c (word-wrap): Doc fix.
5772 * xdisp.c (truncate-partial-width-windows): Doc fix.
5773 Increase default to 50.
5774
57752008-08-29 Chong Yidong <cyd@stupidchicken.com>
5776
5777 * xdisp.c (update_tool_bar_unwind): New function.
5778 (update_tool_bar): Temporarily set selected frame before building
5779 tool-bar items.
5780
57812008-08-28 Michael Albinus <michael.albinus@gmx.de>
5782
5783 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
5784 snprintf, respectively.
5785 (xd_append_arg): Convert strings with Fstring_make_unibyte.
5786
57872008-08-28 Chong Yidong <cyd@stupidchicken.com>
5788
5789 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
5790 LDFLAGS to GNUstep CC invocation.
5791
57922008-08-27 Chong Yidong <cyd@stupidchicken.com>
5793
5794 * indent.c (Fvertical_motion): Revert last change. Handle the
5795 general case where we are moving forward, and PT spans multiple
5796 screen lines.
5797
5798 * eval.c (find_handler_clause): Temporarily increase
5799 max-lisp-eval-depth while printing the backtrace buffer, to
5800 guarantee that help-mode code can run.
5801
58022008-08-27 Eli Zaretskii <eliz@gnu.org>
5803
5804 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
5805 colors under -rv.
5806 (IT_set_frame_parameters): Don't swap foreground and background
5807 colors if `(reverse . t)' is present in the frame properties.
5808 (internal_terminal_init): Call init_frame_faces only for the
5809 initial frame.
5810
58112008-08-27 Andreas Schwab <schwab@suse.de>
5812
5813 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
5814
58152008-08-27 Andreas Schwab <schwab@suse.de>
5816
5817 * search.c (search_buffer): Set char_base to zero only at the end.
5818
58192008-08-27 Kenichi Handa <handa@m17n.org>
5820
b8ff72fa 5821 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
5822
58232008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
5824
5825 * xterm.c (x_term_init): Temporarily hide the partially
5826 initialized terminal while calling vendor-specific-keysyms.
5827
58282008-08-26 Eli Zaretskii <eliz@gnu.org>
5829
5830 * msdos.c (internal_terminal_init): Most initializations done only
5831 once, especially initial_screen_colors[] and termscript open.
5832
58332008-08-26 Chong Yidong <cyd@stupidchicken.com>
5834
5835 * eval.c (Fcondition_case): Doc fix.
5836
5837 * widgetprv.h (EmacsFramePart): Change font member to the new font
5838 struct.
5839
5840 * widget.c: Include character.h and font.h for XSETFONT.
5841 (setup_frame_gcs): Compute X font id from font struct, just once.
5842
58432008-08-26 Eli Zaretskii <eliz@gnu.org>
5844
5845 * term.c (get_named_tty): Fix last change.
5846
58472008-08-26 Chong Yidong <cyd@stupidchicken.com>
5848
5849 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 5850 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
5851
58522008-08-25 Eli Zaretskii <eliz@gnu.org>
5853
5854 * frame.c (do_switch_frame): Mark previously displayed frame as
5855 obscured for FRAME_MSDOS_P frames as well.
5856
58572008-08-24 Eli Zaretskii <eliz@gnu.org>
5858
5859 * frame.c (make_terminal_frame): Initialize f->terminal,
5860 f->terminal->reference_count, and scroll bars on MS-DOS as well.
5861 Set the top frame to newly created frame.
5862 (Fmake_terminal_frame): Reuse the_only_display_info.
5863
5864 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
5865 estimating available memory.
5866
b97439ce 58672008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
5868
5869 * nsterm.m (ns_draw_window_cursor): Don't call
5870 NSDisableScreenUpdates and NSEnableScreenUpdates on
5871 non-NS_IMPL_COCOA systems.
5872
58732008-08-23 Andreas Schwab <schwab@suse.de>
5874
5875 * process.c (procfs_system_process_attributes): Fix use of
5876 uninitialized variables.
5877
58782008-08-23 Eli Zaretskii <eliz@gnu.org>
5879
5880 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
5881
5882 * dispnew.c (init_display): Remove MS-DOS specific conditions for
5883 calling tty-set-up-initial-frame-faces.
5884
b8ff72fa
SM
5885 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
5886 Allow MSDOS frames along with X frames.
aac0c6e3
MR
5887
5888 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
5889 addition to output_termcap.
5890
5891 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
5892
5893 * termchar.h (FRAME_TTY): Support output_msdos_raw.
5894 (struct tty_display_info) [MSDOS]: Add fields related to mouse
5895 highlight.
5896
5897 * process.c [!subprocesses]: Define QCname.
5898 (syms_of_process): Intern and staticpro it.
5899
5900 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
5901 Adjust for changes in encoding/decoding routines.
5902 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
5903 encode_coding and decode_coding.
5904
b8ff72fa 5905 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
5906
5907 * dosfns.c: Include frame.h before termhooks.h.
5908 (dos_cleanup): Use CURTTY ()->termscript instead of a global
5909 variable termscript.
5910
5911 * s/msdos.h (USER_FULL_NAME): Define.
5912 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
5913
5914 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
5915 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
5916 pw->pw_gecos.
5917
5918 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
5919 SELECTED_FRAME as additional (1st) argument.
5920 (tty_read_avail_input): Handle output_msdos_raw in
5921 addition to output_termcap.
5922
5923 * msdos.c: Include frame.h before termhooks.h.
5924 (mouse_on, mouse_off, mouse_moveto, mouse_init)
5925 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
5926 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
5927 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
5928 (IT_set_terminal_modes, IT_reset_terminal_modes)
5929 (IT_set_frame_parameters): Use tty->termscript instead of a global
5930 variable termscript.
5931 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
5932 global variable terminal_coding. Don't refer to
5933 Vnonascii_translation_table.
5934 (internal_terminal_init): Set Vwindow_system in current_kboard.
5935 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
5936 Announce date and time of session start, if termscript is open.
5937 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
5938 term.c:init_tty). Open termscript only of not already open.
5939 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
5940 here instead of dos_ttraw. Don't initialize display if this is an
5941 initial tty. Don't set FRAME_FONT.
5942 (Vwindow_system_version): Bump to 23.
5943 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
5944 is available, set up mouse_position_hook.
5945 (dos_ttraw, IT_set_terminal_modes): If called with initial
5946 terminal, do nothing.
5947 (IT_set_frame_parameters): Handle the Qtty_type frame
5948 parameter by calling internal_terminal_init.
5949 (dos_set_window_size, show_mouse_face)
5950 (clear_mouse_face, IT_note_mode_line_highlight)
5951 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
5952 (dos_rawgetc): Use tty_display_info instead of x_display_info.
5953 (initialize_msdos_display): New function.
5954 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
5955 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
5956 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
5957 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 5958 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
5959 (request_sigio, unrequest_sigio): Don't define, now defined on
5960 sysdep.c.
5961 (IT_write_glyphs): Rewrite to use encode_terminal_code.
5962
5963 * term.c [MSDOS]: Include msdos.h.
5964 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
5965 conditional to DOS_NT. Allow only one call to this function in a
5966 session. Don't allocate a new struct tty_display_info; instead,
5967 reuse the_only_display_info. Call get_tty_size to get screen
5968 dimensions. Call init_baud_rate to set bad_rate.
5969 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
5970 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 5971 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
5972 (get_tty_terminal, get_named_tty, Ftty_type)
5973 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
5974 output_termcap.
b8ff72fa
SM
5975 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
5976 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 5977 only when subprocesses are supported.
aac0c6e3
MR
5978
5979 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
5980 f->output_data.x.
5981 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
5982 terminal devices.
5983
5582fbc7 5984 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
5985 x_output.
5986 (FRAME_FONT): Use output_data.tty.
5987 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
5988 (struct x_display_info): Rename from display_info. Update all users in
5989 msdos.c.
aac0c6e3 5990 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 5991 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
5992 (dos_ttraw): Update prototype.
5993
5994 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
5995 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
5996
59972008-08-23 Jason Rumney <jasonr@gnu.org>
5998
5999 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6000 (fn_TIFFSetDirectory): New library function used.
6001 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6002 (tiff_load): Use :index to select among multiple images. Set count
6003 property when multiple images exist.
6004 (gif_format): Use :index, not :image.
6005
60062008-08-23 Chong Yidong <cyd@stupidchicken.com>
6007
6008 * xdisp.c (try_scrolling): Check INT_MAX instead of
6009 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6010 to obtain INT_MAX.
6011
60122008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6013
6014 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6015
60162008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6017
6018 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6019 GNUstep library location.
6020
60212008-08-21 Chong Yidong <cyd@stupidchicken.com>
6022
6023 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6024 before using it.
6025
6026 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6027
60282008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6029
6030 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6031 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6032 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6033 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6034 (EmacsApp-cursor_blink_handler): Remove declaration.
6035 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6036 match 01 Feb 2008 changes in xterm.c.
6037 (ns_read_socket): Add cast to avoid warning.
6038 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6039 GNUstep.
6040
60412008-08-20 Chong Yidong <cyd@stupidchicken.com>
6042
6043 * xselect.c (x_get_foreign_selection): Return nil if desired
6044 selection could not be obtained, instead of signalling an error.
6045
60462008-08-20 David Reitter <david.reitter@gmail.com>
6047
6048 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6049 * nsterm.m: Remove ns-specific code for cursor blinking.
6050 (ns_draw_window_cursor): Clear cursor properly rather than
6051 redrawing the area. Respect width of bar cursors.
6052 These changes enable the use of generic blink-cursor-mode and
6053 generic cursor types in NS and support smooth cursor movements (do
6054 not blink off after command).
6055 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6056 Nextstep, too.
6057
60582008-08-19 Kenichi Handa <handa@m17n.org>
6059
6060 * font.c (Vfont_log_deferred): New variable.
6061 (font_add_log): Check Vfont_log_deferred.
6062 (font_deferred_log): New function.
6063
6064 * font.h (font_deferred_log): Extern it.
6065
6066 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6067 for sorting.
6068 (face_for_char): Use deferred log.
6069
60702008-08-18 Kenichi Handa <handa@m17n.org>
6071
6072 * fontset.c (face_for_char): Add font log.
6073
6074 * font.c (font_add_log): Add the font properties :script, :lang,
6075 and :otf in the log.
6076
60772008-08-17 Chong Yidong <cyd@stupidchicken.com>
6078
6079 * xdisp.c: Remove dead code.
6080 (handle_invisible_prop, next_overlay_string): Defer call to
6081 setup_for_ellipsis.
6082 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6083
60842008-08-15 Chong Yidong <cyd@stupidchicken.com>
6085
6086 * xfaces.c (lookup_derived_face): Properly handle possible zero
6087 return value of get_lface_attributes.
6088 (merge_faces): Don't tell lookup_derived_face to signal an error
6089 if face is not found.
6090
6091 * dired.c (Fdirectory_files): Doc fix.
6092
6093 * process.c (make_process): Initialize kill_without_query struct
6094 member.
6095
60962008-08-15 Eli Zaretskii <eliz@gnu.org>
6097
6098 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6099 Alternative calculation of totphys for Visual Studio 6.
6100
6101 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6102
6103 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6104 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6105 All users changed.
6106 (stat): Only root directory passed to GetDriveType. Allow RAM
6107 disk as well as local fixed disk when w32-get-true-file-attributes
6108 is set to `local'.
6109 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6110 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6111 (w32_cached_id, w32_add_to_cache): New functions.
6112 (get_name_and_id): Look account names in the cache before calling
6113 lookup_account_sid.
6114 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6115 New initialization flags.
6116 (globals_of_w32): Initialize them to zero.
6117 (w32_system_process_attributes): Use w32_cached_id and
6118 w32_add_to_cache.
6119
61202008-08-14 Lawrence Mitchell <wence@gmx.li>
6121
6122 * lread.c (Fread_char, Fread_char_exclusive): If no character
6123 event is read before timeout is reached, return nil, rather than
6124 converting to a number.
6125
61262008-08-14 Chong Yidong <cyd@stupidchicken.com>
6127
6128 * fns.c (use_dialog_box): Doc fix.
6129
6130 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6131 on OS X.
6132
61332008-08-13 Chong Yidong <cyd@stupidchicken.com>
6134
6135 * frame.c (Qns_parse_geometry): New var.
6136 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6137
61382008-08-11 Chong Yidong <cyd@stupidchicken.com>
6139
6140 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6141 space character in calculating tabs.
6142
61432008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6144
6145 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6146
61472008-08-10 Glenn Morris <rgm@gnu.org>
6148
6149 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6150 silence gcc "limited range of data type" warnings in some
6151 make_fixnum_or_float calls.
6152
61532008-08-09 Eli Zaretskii <eliz@gnu.org>
6154
6155 * w32.c (w32_system_process_attributes): If the process does not
6156 exist, return nil.
6157
6158 * w32.c: Include thelp32.h, psapi.h and coding.h.
6159 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6160 declarations.
6161 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6162 (Process32Next_Proc): New typedefs.
6163 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6164 (g_b_init_process32_next, g_b_init_open_thread_token)
6165 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6166 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6167 (g_b_init_get_process_working_set_size)
6168 (g_b_init_global_memory_status_ex): New static variables.
6169 (globals_of_w32): Initialize them.
6170 (create_toolhelp32_snapshot, process32_first, process32_next)
6171 (open_thread_token, impersonate_self, revert_to_self)
6172 (get_process_memory_info, get_process_working_set_size)
6173 (global_memory_status, global_memory_status_ex): New wrapper
6174 functions.
6175 (w32_list_system_processes, w32_system_process_attributes)
6176 (enable_privilege, restore_privilege, ltime, process_times):
6177 New functions.
6178 (convert_time_raw): New function.
6179 (convert_time): Remove conversion of FILETIME into time in 100
6180 nsec units, call convert_time_raw instead.
6181
6182 * process.h (w32_list_system_processes, w32_system_process_attributes):
6183 Add prototypes.
6184 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6185 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6186 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6187 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6188
6189 * process.c (Fsystem_process_attributes): Doc fix.
6190
61912008-08-08 Chong Yidong <cyd@stupidchicken.com>
6192
6193 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6194 a continued multi-char glyph; if so, advance to the actual glyph.
6195
61962008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6197
6198 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6199
6200 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6201 (.m.o): Use it.
6202 * config.in: Regenerate.
6203
62042008-08-07 Chong Yidong <cyd@stupidchicken.com>
6205
6206 * xdisp.c (redisplay_window): Revert last change.
6207 (try_window): Check bottom scroll margin too.
6208
62092008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6210
6211 * config.in: Regenerate.
6212
6213 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6214 -list-load-path-shadows'.
6215 (nsgui.h): Reduce number of things depending on it.
6216
62172008-08-06 Chong Yidong <cyd@stupidchicken.com>
6218
6219 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6220 instead of window-end which does the wrong thing at eob.
6221 (try_cursor_movement): Minor optimization.
6222 (redisplay_window): If scroll margin is defined, don't assume
6223 window doesn't need scrolling.
6224
62252008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6226
6227 * config.in: Regenerate.
6228
6229 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6230 (mostlyclean): Don't delete *.d under NS.
6231
6232 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6233
62342008-08-06 Kenichi Handa <handa@m17n.org>
6235
6236 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6237
62382008-08-06 Andreas Schwab <schwab@suse.de>
6239
6240 * config.in: Regenerate.
6241
62422008-08-05 Chong Yidong <cyd@stupidchicken.com>
6243
6244 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6245 forcing a window start.
6246
6247 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6248 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6249
62502008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6251
6252 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6253 argument.
6254
62552008-08-05 Juanma Barranquero <lekktu@gmail.com>
6256
6257 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6258 <scroll-down-aggressively, before-change-functions>:
6259 <after-change-functions>: Reflow docstrings.
6260
62612008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6262 Ken Raeburn <raeburn@gnu.org>
6263
6264 Dock menu customization, based on a patch by Ken Raeburn, plus some
6265 other fixes.
6266 * nsmenu.m (dockMenu): New variable.
6267 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6268
6269 * nsterm.h (dockMenu): Declare.
6270
6271 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6272 (ns_term_init): Initialize dockMenu.
6273 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6274 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6275 left.
6276
6277 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6278
62792008-08-04 Chong Yidong <cyd@stupidchicken.com>
6280
6281 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6282
6283 * config.in: Regenerate.
6284
62852008-08-04 Seiji Zenitani <zenitani@mac.com>
6286
6287 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6288
62892008-08-04 Chong Yidong <cyd@stupidchicken.com>
6290
6291 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6292
62932008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6294
6295 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6296
6297 * keyboard.h: Comment an #endif.
6298
6299 * lisp.h (have_menus_p): Adjust comment.
6300
6301 * menu.c (find_and_return_menu_selection): Fix comparison with
6302 client_data.
6303
6304 * nsmenu.m (popup_activated_flag): New variable.
6305 (popup_activated): New function.
6306 (menu-or-popup-active-p): New exported lisp definition.
6307 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6308 when popup done.
6309 (ns_popup_dialog): Set popup_activated_flag.
6310
6311 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6312 version for GNUstep (handled by conditional typedef in nsterm.m).
6313 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6314 in rgb.txt).
6315
6316 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6317
6318 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6319
6320 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6321
6322 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6323 shortcircuit if popup_activated like GTK and X toolkit.
6324
6325 * m/inter386.h: Change DARWIN to DARWIN_OS.
6326
6327 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6328 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6329 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6330 comment on NO_SOCK_SIGIO.
6331
63322008-08-03 Chong Yidong <cyd@stupidchicken.com>
6333
6334 * nsterm.m (windowDidResize): Remove stopModal call.
6335
63362008-08-03 Andreas Schwab <schwab@suse.de>
6337
6338 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6339 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6340
63412008-08-02 Chong Yidong <cyd@stupidchicken.com>
6342
6343 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6344 Don't use uninitialized pointer variable when using getrlimit.
6345
63462008-08-02 Jason Rumney <jasonr@gnu.org>
6347
6348 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6349
63502008-08-02 Eli Zaretskii <eliz@gnu.org>
6351
6352 * alloc.c (NSTATICS): Bump to 0x640.
6353
6354 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6355
6356 * lisp.h: Add prototype for directory_files_internal.
6357
6358 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6359 New functions.
6360 (syms_of_process): Defsubr them. Add initializations for various
6361 Q* symbols used in procfs_system_process_attributes.
6362 (procfs_list_system_processes, procfs_system_process_attributes)
6363 [HAVE_PROCFS]: New functions.
6364 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6365 (procfs_get_total_memory): New functions.
6366
63672008-08-01 Juanma Barranquero <lekktu@gmail.com>
6368
6369 * xfaces.c (Fx_load_color_file): Fix previous change;
6370 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6371
63722008-08-01 Michael Albinus <michael.albinus@gmx.de>
6373
6374 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6375
63762008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6377
6378 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6379
63802008-08-01 Chong Yidong <cyd@stupidchicken.com>
6381
6382 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6383
6384 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6385 define NSApplicationDelegateReplySuccess.
6386 (EmacsView -converstationIdentifier): Use long instead of
6387 NSInteger for GNUstep, since it doesn't have NSInteger.
6388
6389 * xmenu.c: Revert last change.
6390
6391 * keyboard.h: Fix last change.
6392
63932008-08-01 Juanma Barranquero <lekktu@gmail.com>
6394
6395 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6396 on Windows.
6397
63982008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6399
6400 Warning clearing and clean-up in NS port.
6401 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6402 Add prototypes.
6403 * nsgui.h (FACE_DEFAULT): Remove, unused.
6404 (XGCValues): Change colors to unsigned long.
6405 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6406 nsterm.m.
6407 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6408 (ns_list_fonts): Remove, unused.
6409 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6410 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6411 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6412 (nsfont_draw): Compare face colors to 0, not nil.
6413 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6414 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6415 (-addSubmenuWithTitle:): Use NSMenuItem class.
6416 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6417 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6418 (ns_clip_to_row): Make gc arg a BOOL.
6419 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6420 ns_clip_to_row() call.
6421 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6422 used). Cast FRAME_FONT assignments.
6423 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6424 (ns_string_to_lispmod): Change arg to const char.
6425 (ns_term_init): Use NSMenuItem class.
6426 (EmacsApp -openFile:): Move to different section of file.
6427 (EmacsApp -application:openFiles:): Don't return a value, call
6428 -replyToOpenOrPrint:.
6429 (EmacsView -keyDown:): Fix up cast.
6430 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6431 (EmacsView -menuDown:): Cast tag in call to
6432 find_and_call_menu_selection().
6433 (ns_list_fonts): Remove, unused.
6434 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
6435 (ns_fontname_to_xlfd): Make static.
6436 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
6437 Remove prototypes (now in keyboard.h).
6438 (next_menubar_widget_id): Remove, unused.
6439 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
6440 Remove prototypes (now in keyboard.h).
6441 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
6442
64432008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
6444
6445 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
6446 (floatfns.o): Depend on syssignal.h.
6447 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
6448
6449 * systty.h: Fix previous change that removed BSD_TERMIOS.
6450 Add comments to #ifdefs.
6451
64522008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6453
6454 * w32fns.c (w32-load-color-file): Remove.
6455 (x-open-connection): Use renamed Fx_load_color_file.
6456 * xfaces.c (x-load-color-file): Add.
6457 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
6458 Emacs.clr.
6459 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
6460
64612008-07-31 Michael Albinus <michael.albinus@gmx.de>
6462
6463 * dbusbind.c (Fdbus_call_method_asynchronously)
6464 (Fdbus_method_error_internal): New defuns.
6465 (xd_read_message): Handle also reply messages.
6466 (Vdbus_registered_functions_table): Extend docstring.
6467
64682008-07-31 Juanma Barranquero <lekktu@gmail.com>
6469
6470 * keyboard.c (gobble_input): Fix previous change.
6471
64722008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6473
6474 * bitmaps/README:
6475 * xfns.c:
6476 * termcap.c:
6477 * term.c:
6478 * syswait.h:
6479 * systty.h:
6480 * systime.h:
6481 * syssignal.h:
6482 * sysdep.c:
6483 * process.h:
6484 * process.c:
6485 * print.c:
6486 * ndir.h:
6487 * lread.c:
6488 * keyboard.c:
6489 * getpagesize.h:
6490 * floatfns.c:
6491 * fileio.c:
6492 * emacs.c:
6493 * doc.c:
6494 * dispnew.c:
6495 * dired.c:
6496 * data.c:
6497 * callproc.c:
6498 * buffer.c:
6499 * README:
6500 * Makefile.in:
6501 * s/template.h:
6502 * s/msdos.h:
6503 * m/vax.h: Remove VMS support.
6504 * s/vms.h:
6505 * vlimit.h:
6506 * uaf.h:
6507 * temacs.opt:
6508 * param.h:
6509 * ioctl.h: Remove file.
6510
65112008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6512
6513 * s/ms-w32.h (MULTI_KBOARD): Remove.
6514 * xterm.c:
6515 * xselect.c:
6516 * xfns.c:
6517 * window.c:
6518 * w32term.c:
6519 * w32fns.c:
6520 * terminal.c:
6521 * termhooks.h:
6522 * term.c:
6523 * sysdep.c:
6524 * keyboard.h:
6525 * keyboard.c:
6526 * frame.h:
6527 * frame.c:
6528 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
6529 * config.in: Regenerate.
6530
65312008-07-30 Jason Rumney <jasonr@gnu.org>
6532
6533 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
6534
6535 * w32font.c (w32font_encode_char): Leave as unicode if in range.
6536 (w32font_open_internal): Get unicode version of textmetrics.
6537 Don't enable or disable glyph indices here.
6538 (w32font_open): Disable use of glyph indices.
6539
6540 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
6541
65422008-07-30 Chong Yidong <cyd@stupidchicken.com>
6543
6544 * minibuf.c (Vread_buffer_function): Doc fix.
6545
65462008-07-30 John Paul Wallington <jpw@pobox.com>
6547
6548 * minibuf.c (read_buffer_completion_ignore_case): New var.
6549 (Fread_buffer): Use it.
6550
65512008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
6552
6553 * systty.h (sensemode): Remove empty #if. Remove reference to
6554 BSD_TERMIOS, unused.
6555
6556 * sysdep.c: Remove reference to DGUX.
6557 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
6558
6559 * config.in: Regenerate.
6560
65612008-07-30 Jason Rumney <jasonr@gnu.org>
6562
6563 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
6564
65652008-07-29 Jason Rumney <jasonr@gnu.org>
6566
6567 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
6568 is populated.
6569 (uniscribe_encode_char): Always use uniscribe.
6570 Avoid using context if cache is populated.
6571
65722008-07-29 Jan Djärv <jan.h.d@swipnet.se>
6573
6574 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
6575 open menu.
6576
6577 * gtkutil.c (menu_nav_ended): Remove.
6578 (create_menus): Remove signal connect for menu_nav_ended.
6579
65802008-07-28 Chong Yidong <cyd@stupidchicken.com>
6581
6582 * xdisp.c (redisplay_window): Check return value of
6583 compute_window_start_on_continuation_line before forcing a window
6584 start.
6585
65862008-07-28 Jason Rumney <jasonr@gnu.org>
6587
6588 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
6589
6590 * w32term.c (w32_enable_unicode_output, cleartype_active):
6591 Remove obsolete display options.
6592 (x_draw_glyph_string_background): Don't use old cleartype_active
6593 workaround.
6594 (w32_initialize): Remove cleartype_active initialization.
6595 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
6596
65972008-07-28 Andreas Schwab <schwab@suse.de>
6598
6599 * lisp.h (init_weak_hash_tables, syms_of_font)
6600 (xd_read_queued_messages, syms_of_dbusbind): Declare.
6601 (remove_hash_entry): Don't declare.
6602 * eval.c (maybe_call_debugger): Make static and move before use.
6603 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
6604 * xdisp.c: Include "gtkutil.h" if USE_GTK.
6605 * xterm.h (x_set_frame_alpha): Declare.
6606
66072008-07-28 Jan Djärv <jan.h.d@swipnet.se>
6608
6609 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
6610 (create_menus): Connect selection-done to menu_nav_ended.
6611
66122008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6613
6614 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
6615 Set Vx_resource_name to a fallback. Replace read of 'buffered'
6616 parameter with read of 'alpha' one.
6617 (Qns_frame_parameter): Remove.
5582fbc7 6618 * nsselect.m (selection-coding-system)
aac0c6e3
MR
6619 (next-selection-coding-system, Vselection_coding_system)
6620 (Vnext_selection_coding_system): Drop.
6621
66222008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6623
6624 * nsfns.m (do-applescript, do_applescript): Rename to
6625 ns-do-applescript, ns_do_applescript, and move within file.
6626
66272008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
6628
6629 Remove support for Mac Carbon.
6630 * mactoolbox.c:
6631 * macterm.h:
6632 * macterm.c:
6633 * macselect.c:
6634 * macmenu.c:
6635 * macgui.h:
6636 * macfns.c:
6637 * mac.c: Remove file.
6638 * s/darwin.h:
6639 * m/intel386.h:
6640 * xfaces.c:
6641 * xdisp.c:
6642 * window.c:
6643 * tparam.c:
6644 * termhooks.h:
6645 * termcap.c:
6646 * term.c:
6647 * syssignal.h:
6648 * sysselect.h:
6649 * sysdep.c:
6650 * process.c:
6651 * lread.c:
6652 * lisp.h:
6653 * keyboard.c:
6654 * image.c:
6655 * fringe.c:
6656 * frame.h:
6657 * frame.c:
6658 * fontset.c:
6659 * font.h:
6660 * font.c:
6661 * fns.c:
6662 * fileio.c:
6663 * emacs.c:
6664 * dispnew.c:
6665 * dispextern.h:
6666 * config.in:
6667 * atimer.c:
2ae37cf0 6668 * Makefile.in: Remove code for Carbon.
aac0c6e3 6669
f0131492 66702008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
6671
6672 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
6673
66742008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6675
6676 * macterm.h (kCGBitmapByteOrder32Host): New define for
6677 non-universal SDKs.
6678
6679 * image.c (mac_create_cg_image_from_image, image_load_image_io)
6680 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6681
6682 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
6683 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6684
66852008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
6686
6687 * w32inevt.c: Include dispextern.h.
6688
66892008-07-26 Andreas Schwab <schwab@suse.de>
6690
6691 * print.c (print_object): Fix off-by-one in last change.
6692
66932008-07-25 Juanma Barranquero <lekktu@gmail.com>
6694
6695 * term.c (syms_of_term): Don't initialize default_orig_pair,
6696 default_set_foreground and default_set_background on Windows.
6697
66982008-07-25 Jason Rumney <jasonr@gnu.org>
6699
6700 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
6701 ScriptItemize. Clean up return value checking. Remove unused
6702 variables.
6703 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
6704 shaping engine.
6705
6706 * w32font.c (w32font_has_char): Handle the case where we can't
6707 determine the script for a character.
6708
67092008-07-25 Chong Yidong <cyd@stupidchicken.com>
6710
6711 * term.c (syms_of_term): Initialize default_orig_pair,
6712 default_set_foreground, and default_set_background.
6713
6714 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
6715 clash (bug#86).
6716 (getloadavg): Callers changed.
6717
6718 * image.c (svg_load_image): Fix last change.
6719 (svg_load_image): Use rsvg_handle_get_dimensions to check that
6720 image size is valid. Use g_object_unref instead of deprecated
6721 rsvg_handle_free to free rsvg handle.
6722 (x_from_xcolors): Don't initialize pixmap (silence compiler).
6723
67242008-07-25 Jason Rumney <jasonr@gnu.org>
6725
6726 * w32font.c (w32font_encode_char): Encode characters outside BMP as
6727 surrogates before looking up glyph index.
6728 (w32font_text_extents): Encode as surrogates if falling back to
6729 functions that need UTF-16 wide chars.
6730
6731 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
6732 BMP as surrogates before looking up glyph index.
6733
67342008-07-25 Chong Yidong <cyd@stupidchicken.com>
6735
6736 * image.c (svg_load_image): Check for failure in return value of
6737 rsvg_handle_get_pixbuf. Free rsvg handle when done.
6738
67392008-07-25 Jason Rumney <jasonr@gnu.org>
6740
6741 * w32font.c (Fx_select_font): Reverse sense of second arg.
6742
67432008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
6744
6745 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
6746 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
6747
6748 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
6749 (PURESIZE): Use it.
6750
67512008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
6752
6753 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
6754 * m/alpha.h (TEXT_END):
6755 * m/ibmrs6000.h (TEXT_END):
6756 * m/macppc.h (TEXT_END):
6757 * s/darwin.h (TEXT_END):
6758 * s/msdos.h (TEXT_END): Remove, unused.
6759 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
6760 * s/cygwin.h: Remove comment.
6761
6762 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
6763 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
6764 * m/intel386.h (DOT_GLOBAL_START):
6765 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
6766 (USG): Remove, file not used on USG platforms.
6767
6768 * Makefile.in (HAVE_X11): Remove empty #else.
6769
67702008-07-24 Andreas Schwab <schwab@suse.de>
6771
6772 * fileio.c (Finsert_file_contents): Properly adjust undo list
6773 after format conversion.
6774
67752008-07-24 Jan Djärv <jan.h.d@swipnet.se>
6776
6777 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
6778 (menu_nav_ended): Remove.
6779 (create_menus): Remove signal connect for menu_nav_ended.
6780 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
6781 create_menus.
6782 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
6783
67842008-07-23 Jason Rumney <jasonr@gnu.org>
6785
6786 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
6787 with opened font.
6788 (w32font_open): Set font type to gdi.
6789
6790 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
6791
67922008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
6793
6794 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
6795 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
6796 defines it.
6797 * unexec.c (ADDR_CORRECT): Define unconditionally.
6798
6799 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
6800
6801 * unexec.c: Remove code depending on !COFF and USG, the file is
6802 not used for such systems.
6803
6804 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
6805 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
6806 (LD_SWITCH_SYSTEM_1): Remove, update users.
6807
6808 * s/darwin.h (DATA_END):
6809 * m/intel386.h (DATA_END):
6810 * m/ibmrs6000.h (DATA_END):
6811 * m/alpha.h (DATA_END): Remove, unused.
6812
6813 * config.in: Regenerate.
6814 * s/ms-w32.h (subprocesses): Define unconditionally.
6815 * s/template.h (subprocesses): Update comment.
6816 * s/vms.h (subprocesses):
6817 * s/usg5-4.h (subprocesses):
6818 * s/hpux10-20.h (subprocesses):
6819 * s/gnu-linux.h (subprocesses):
6820 * s/cygwin.h (subprocesses):
6821 * s/bsd-common.h (subprocesses):
6822 * s/aix4-2.h (subprocesses):
6823 * s/darwin.h (subprocesses): Do not define, defined by default now.
6824
6825 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
6826 Remove all references.
6827 (temacs): Add GNUstep specific ld flags.
6828
6829 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
6830 similarly to what X does.
6831
68322008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6833
6834 * nsfns.m (x-list-fonts): Remove.
6835 (syms_of_nsfns): Drop the x-list-fonts declaration.
6836 * nsterm.m: Get rid of remaining "//" comments.
6837
68382008-07-22 Chong Yidong <cyd@stupidchicken.com>
6839
6840 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
6841
6842 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
6843 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
6844 (Fns_own_selection_internal, Fx_disown_selection_internal)
6845 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
6846
6847 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
6848 ... */' style of docstrings. Doc fixes.
6849
68502008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6851
6852 * terminfo.c (UP, BC, PC): Undo previous change.
6853
6854 * nsfns.m: Rename ns prefixed functions/variables to the
6855 corresponding x versions. Update references.
6856
68572008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
6858
6859 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
6860
68612008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6862
6863 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
6864 Remove forwarding functions.
6865 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
6866 non-static.
6867 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
6868 non-static.
6869 (ns_frame_parm_handlers): Use the new names.
6870 (syms_of_nsfns): Move to the end of file.
6871
6872 * nsterm.m (syms_of_nsterm): Move to the end of file.
6873
6874 * dispnew.c (init_display): Remove code for X10.
6875
68762008-07-22 Jason Rumney <jasonr@gnu.org>
6877
6878 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
6879 bare drive.
6880
68812008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6882
6883 * nsterm.m (syms_of_nsterm): Remove debugging println.
6884
68852008-07-22 David Reitter <david.reitter@gmail.com>
6886
6887 * nsfns.m (do_applescript, F_do_applescript): NS version of the
6888 Carbon implementation of the same functionality: execute arbitrary
6889 AppleScript code.
6890
68912008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6892
6893 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
6894 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
6895 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
6896 (Fx_display_mm_height, Fx_display_mm_width)
6897 (Fx_display_backing_store, Fx_display_visual_class)
6898 (Fx_display_save_under, Fx_open_connection)
6899 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
6900 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
6901 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6902 (Fx_display_pixel_width, Fx_display_pixel_height)
6903 (Fx_display_usable_bounds, Fx_display_planes)
6904 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
6905 ... */' style of docstrings.
6906
69072008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
6908
6909 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
6910 on this platform.
6911 (mips):
6912 * m/iris4d.h (mips): Do not define.
6913 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
6914
6915 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
6916
6917 * image.c:
6918 * nsfns.m:
6919 * nsselect.m:
6920 * nsterm.h:
6921 * nsterm.m: Rename ns prefixed functions/variables to the
6922 corresponding x versions. Update references.
6923
6924 * m/ibms390x.h (NO_REMAP): Do not undefine.
6925
6926 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
6927
69282008-07-21 Chong Yidong <cyd@stupidchicken.com>
6929
6930 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
6931 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
6932 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
6933 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
6934 (Fns_display_mm_height, Fns_display_mm_width)
6935 (Fns_display_backing_store, Fns_display_visual_class)
6936 (Fns_display_save_under, Fns_open_connection)
6937 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
6938 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
6939 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6940 (Fns_display_pixel_width, Fns_display_pixel_height)
6941 (Fns_display_usable_bounds, Fx_display_planes)
6942 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
6943
69442008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
6945
6946 * print.c (print_object): Check print_depth before searching for
6947 circularities.
6948
69492008-07-21 Michael Albinus <michael.albinus@gmx.de>
6950
6951 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
6952 only sprintf.
6953
69542008-07-21 Kenichi Handa <handa@m17n.org>
6955
6956 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
6957
69582008-07-20 Andreas Schwab <schwab@suse.de>
6959
6960 * syntax.c (find_start_pos, find_start_value)
6961 (find_start_value_byte, find_start_begv, find_defun_start)
6962 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
6963
69642008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6965
6966 * s/sol2-3.h: Insert contents of s/sol2.h.
6967 (LD_SWITCH_SYSTEM): Remove redundant definition.
6968 * s/sol2.h: Remove, unused.
6969
69702008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6971
6972 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
6973
69742008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6975
6976 * Makefile.in (ns_appdir): Fix typo in find command.
6977
69782008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6979
6980 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
6981
6982 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
6983 added not supported anymore.
6984
6985 * s/usg5-4-2.h (LIBS_SYSTEM):
6986 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
6987
6988 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6989 * s/lynxos.h (GETPGRP_NO_ARG):
6990 * s/hpux10-20.h (NO_SIOCTL_H):
6991 * s/gnu.h (GETPGRP_NO_ARG):
6992 * s/gnu-linux.h (NO_SIOCTL_H):
6993 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6994 * s/cygwin.h (GETPGRP_NO_ARG):
6995 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
6996 (C_DEBUG_SWITCH): Remove duplicate definition.
6997
6998 * m/ibms390.h: Remove boilerplate comments.
6999
7000 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7001
7002 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7003 (wait_reading_process_output): Remove code for SunOS, platform not
7004 supported anymore. Use SOLARIS2 instead of sun.
7005
70062008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7007
7008 * font.c (font_open_by_name): Under NS, default lface height to zero.
7009 (font_open_for_lface): Under NS, set size based on frame fontsize.
7010 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7011 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7012
70132008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7014
7015 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7016 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7017 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7018 YES/NO.
7019 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7020 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7021 * Makefile.in (clean): Clear out build destination dir.
7022
70232008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7024
7025 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7026 xterm, xselect.
7027 * lisp.h: Remove declaration of hash_remove.
7028 * nsgui.h: Remove redefinitions of hash_remove.
7029 * fns.c (hash_remove): Rename to hash_remove_from_table.
7030
70312008-07-19 Seiji Zenitani <zenitani@mac.com>
7032
7033 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7034 strdup() the family UTF8String before modifying it.
7035
70362008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7037
7038 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7039 NS_FACE_BACKGROUND with 0 instead of nil.
7040 * nsfont.m (nsfont_draw): Same.
7041
70422008-07-19 Chong Yidong <cyd@stupidchicken.com>
7043
7044 * nsfns.m (ns_set_background_color): Fix crash.
7045
70462008-07-18 Chong Yidong <cyd@stupidchicken.com>
7047
7048 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7049
70502008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7051
7052 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7053
70542008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7055
7056 * gtkutil.c: Include <config.h> instead of "config.h".
7057
7058 * lisp.h (Foverlay_buffer): Add EXFUN.
7059
7060 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7061 child process to complete child_setup. Undo 2005-09-21 change.
7062
7063 * s/darwin.h: Mention setsid after vfork.
7064
70652008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7066
7067 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7068 Depend on macgui.h.
7069
7070 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7071 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7072
7073 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7074 and f19.
7075 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7076
7077 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7078 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7079 Remove enumerators.
7080
7081 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7082 Check if FACE_FROM_ID returns NULL.
7083
70842008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7085
7086 * w32inevt.c (change_frame_size): Remove extern declaration.
7087 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7088 change_frame_size.
7089
70902008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7091
7092 * getloadavg.c: Revert last change (2008-07-15).
7093
70942008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7095
7096 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7097 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7098 from configure.
7099
71002008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7101
7102 * s/sol2.h:
7103 * s/sol2-4.h: Reorganize conditionals.
7104
7105 * ecrt0.c: Remove code depending on m68000, not used anymore.
7106
7107 * fns.c (hash_remove): Make static.
7108 * lisp.h (hash_remove): Don't prototype.
7109
7110 * m/ibmrs6000.h:
7111 * m/ibms390x.h:
7112 * m/macppc.h: Remove boilerplate comments.
7113
7114 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7115 Solaris, which does not need them.
7116
7117 * m/vax.h: Remove comments about unsupported systems.
7118
7119 * s/darwin.h: Reorganize ifdefs.
7120
71212008-07-17 Andreas Schwab <schwab@suse.de>
7122
7123 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7124
71252008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7126
7127 Use SDATA. Follow coding convention of placing operators at
7128 beginning of next line rather than end of previous line, and placing
7129 spaces around infix operators.
7130
7131 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7132 in case it was defined already.
7133 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7134 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7135 ns_default.
7136 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7137 Lisp_Objects.
7138 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7139 (ns_defined_color, ns_color_to_lisp): Declare.
7140 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7141 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7142 it's accepted even with USE_LISP_UNION_TYPE.
7143 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7144 (update_frame_tool_bar): Remove apparently obsolete tests for
7145 non-integerness of f->tool_bar_lines.
7146 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7147 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7148 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7149 (nsfont_open): Don't confuse NULL for Qnil.
7150 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7151 * menu.h (find_and_call_menu_selection):
7152 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7153 (find_and_return_menu_selection): Always return something.
7154 * frame.h: Include dispextern.h for Display_Info.
7155 (display_x_get_resource): Declare.
7156
71572008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7158
7159 * syntax.c: Remove stdio.h include accidentally introduced in
7160 Emacs.app commit.
7161 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7162 NS_IMPL_COCOA.
7163 * keyboard.c (handle_async_input, input_available_signal): Remove
7164 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7165
71662008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7167
7168 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7169 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7170 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7171 Use SDATA.
7172
7173 * keymap.c: Remove all NS-specific code.
7174 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7175 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7176 where_is_preferred_modifier, return a different value depending on how
7177 preferred is the binding.
7178 (where_is_internal): Adjust accordingly.
7179 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7180 Adjust to new preferred_sequence_p.
7181 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7182 * keyboard.c (parse_solitary_modifier): Not static any more.
7183 * keyboard.h (parse_solitary_modifier): Declare.
7184
71852008-07-16 Andreas Schwab <schwab@suse.de>
7186
7187 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7188 of easymenu.
7189
71902008-07-16 Chong Yidong <cyd@stupidchicken.com>
7191
7192 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7193 that we don't move off the line.
7194
71952008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7196
7197 * keyboard.c (Qsuper): Remove.
7198 (parse_menu_item): Don't call where_is_internal specially for NS.
7199
72002008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7201
7202 * s/gnu-linux.h: Remove boilerplate comments.
7203
7204 * m/alpha.h (__ELF__): Consolidate conditions.
7205
7206 * m/m68k.h (linux): Use GNU_LINUX instead.
7207 Remove boilerplate comments.
7208
7209 * m/intel386.h: Undo refactoring from previous change.
7210 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7211 too, remove dead code.
7212 (linux): Use GNU_LINUX instead.
7213
72142008-07-16 Jason Rumney <jasonr@gnu.org>
7215
7216 * w32gui.h: Repeat 26 June changes lost by last change.
7217
72182008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7219
7220 * systty.h: Remove code for Aix on 386, unsupported platform.
7221
7222 * s/ms-w32.h: Remove boilerplate comments.
7223 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7224
7225 * s/gnu-linux.h (TERM): Remove support.
7226 (HAVE_SYSVIPC): Remove, unused.
7227 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7228 for this system.
7229
7230 * process.c: Remove support for IRIS, unused.
7231 Remove support for TERM, not relevant anymore.
7232
7233 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7234 used with the definition.
7235
7236 * s/aix4-2.h (static): Do not undef.
7237
7238 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7239 only used on Aix.
7240 (HAVE_SYSVIPC): Remove, unused.
7241
7242 * m/hp800.h (CANNOT_DUMP): Do not undef.
7243
7244 * m/alpha.h: Fix comment.
7245
7246 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7247 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7248 used by this configuration.
7249 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7250 * unexec.c: Remove code depending on HPUX and
7251 USG_SHARED_LIBRARIES, not used with this file. Remove code
7252 depending on IRIS, unused. Remove if 0-ed code.
7253
7254 * s/template.h: Remove comments about static.
7255
7256 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7257 Remove if 0-ed code.
7258 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7259 were the same as the default.
7260 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7261 Remove boilerplate comments.
7262 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7263 (HAVE_SYSVIPC): Remove, unused.
7264 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7265
7266 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7267 Remove boilerplate comments.
7268 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7269 Remove boilerplate comments.
7270 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7271 Remove boilerplate comments.
7272 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7273
7274 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7275 USG systems which do not use DATA_SEG_BITS.
7276 Refactor code. Remove boilerplate comments.
7277
7278 * m/ibms390.h:
7279 * m/m68k.h:
7280 * s/bsd-common.h:
7281 * s/cygwin.h:
7282 * s/darwin.h:
7283 * s/freebsd.h:
7284 * s/gnu.h:
7285 * s/msdos.h: Remove boilerplate comments.
7286
7287 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7288 do not use this file.
aac0c6e3
MR
7289 (IRIS_4D): Remove, unused.
7290
7291 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7292 do not use this file.
aac0c6e3
MR
7293 (SIGN_EXTEND_CHAR):
7294 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7295 * unexmips.c: Remove file, unused.
7296
7297 * editfns.c (Fuser_full_name): Replace the only use of
7298 USER_FULL_NAME with its value.
7299 * config.in: Regenerate.
7300
73012008-07-16 David Reitter <david.reitter@gmail.com>
7302
7303 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7304 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7305
73062008-07-16 Glenn Morris <rgm@gnu.org>
7307
7308 * emacs.c (system-type): Doc fix.
7309
73102008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7311
7312 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7313 If the cache doesn't work, let's fix it, rather than work around it.
7314
73152008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7316
7317 * Makefile.in: Correct additions for nsfont.o in last commit.
7318 * nsfont.m: New file (forgot last commit).
7319
73202008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7321
7322 * callproc.c (set_initial_environment): Initialize
7323 Vprocess_environment under CANNOT_DUMP (fixes crash when
7324 batch-compiling for bootstrap).
7325
73262008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7327 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7328
7329 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7330 fix crash due to different init order.
7331
73322008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7333
7334 Changes and additions for NeXTstep windowing system (Cocoa and
7335 GNUstep) support.
7336
7337 * Makefile.in:
7338 * config.in: Support defines and build commands for NS port.
7339 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7340 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7341 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7342 windowing.
7343 (struct face): Add synth_ital field.
7344 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7345 (init_display): Initialize Vinitial_window_system to "ns" when so
7346 compiled.
7347 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7348 (display_arg): Use under NS.
7349 (main): Under NS, allocate autorelease pool and handle command line
7350 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7351 (standard_args): Add NS-specific args.
7352 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7353 * font.c (DEFAULT_ENCODING): New variable.
7354 (font_find_for_lface): Use it.
7355 (syms_of_font): Load syms_of_nsfont under NS.
7356 * font.h: Declare nsfont_driver when compiled under NS.
7357 * fontset.c: When compiling under NS, include nsterm.h.
7358 (fontset_from_font): Autoconstruct fontset under NS.
7359 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7360 symbol, document and use it.
7361 (do_switch_frame): When for_deletion under Cocoa, add
7362 Fraise_frame(Qnil).
7363 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7364 (x_get_arg): Allow "yes" and "no" as boolean values.
7365 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7366 Qright under Cocoa.
7367 (focus-follows-mouse): Default to 0 under NS.
7368 * frame.h (enum output_method): Add output_ns.
7369 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7370 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7371 (FRAME_WINDOW_P): NS-specific definition.
7372 * fringe.c (max_used_fringe_bitmap): Make public.
7373 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7374 (getloadavg): Use NeXT code under descendant OS's.
7375 * image.c (includes and header section, x_create_bitmap_from_data)
7376 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7377 (image_background_transparent, x_clear_image_1)
7378 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7379 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7380 (x_to_xcolors, x_from_xcolors, x_disable_image)
7381 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7382 other GUIs, including XPM support using code originally written for
7383 Carbon GUI.
7384 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7385 using NS API.
7386 (image_ascent): Use font metrics macros instead of direct struct field
7387 access.
7388 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7389 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7390 Also, handle NS as GTK for menu bar purposes.
7391 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7392 toolkit where they differ.
7393 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7394 use cachelist, still needed under NS.
7395 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7396 (struct widget_value): Define it here for menu.c.
7397 * keymap.c (includes): Include modifier internals.
7398 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7399 NS.
7400 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7401 support for preferring sequences using certain modifiers, specified by
7402 the FIRSTONLY argument.
7403 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7404 under NS GNUstep implementation.
7405 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7406 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7407 * menu.c: Include nsterm.h under NS.
7408 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7409 (free_menubar_widget_tree_value, update_submenu_strings)
7410 (find_and_call_menu_selection): Treat NS as X and NT.
7411 (find_and_return_menu_selection): New function, used for popup menus.
7412 * nsgui.h:
7413 * nsterm.h:
7414 * nsfns.m:
7415 * nsimage.m:
7416 * nsmenu.m:
7417 * nsselect.m:
7418 * nsterm.m: New files.
7419 * process.c (wait_reading_process_output): Under NS, call ns_select()
7420 instead of plain select().
7421 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7422 beginning of buffer.
7423 * sysselect.h (init_process): Rename when compiling under Cocoa to
7424 avoid name conflict.
7425 * termhooks.h (display_info): Add ns_display_info to union.
7426 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7427 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7428 COCOA environment.
7429 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7430 unexec() signature. (Note, this will dump, but the resulting file
7431 crashes; unexosx is used instead; keeping around for reference and
7432 possible aid in getting dump working under GNUstep.)
7433 * w32gui.h (button_type, widget_value): Remove definitions (now in
7434 keyboard.h).
7435 * window.c: Include nsterm.h when compiling under NS.
7436 * xdisp.c (includes): Include nsterm.h when compiling under NS.
7437 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
7438 other GUI windowing systems.
7439 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
7440 GTK.
7441 (x_consider_frame_title): Under NS, set icon type and frame
7442 modified-state indicator; use ns_set_name_as_filename() when using
7443 formatted title.
7444 (update_window_cursor): Make public when compiling under NS.
7445 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
7446 (hourglass_atimer, Vhourglass_delay
7447 * xfaces.c (header section, init_frame_faces, clear_font_table)
7448 (defined_color, unload_color, x_face_list_fonts)
7449 (prepare_face_for_display): Add NS support parallel to other GUIs.
7450 Emulate GCs like other non-X GUIs.
7451 (split_font_name): Don't lowercase font name under NS.
7452 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
7453 under NS.
7454 * s/darwin.h: Add support for compilation under NS.
7455
74562008-07-15 Jason Rumney <jasonr@gnu.org>
7457
7458 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
7459 (w32_show_hourglass): Rename from show_hourglass.
7460 (w32_hide_hourglass): Rename from hide_hourglass.
7461 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
7462 (Vhourglass_delay): Declare extern.
7463 (hourglass_started): Remove.
7464
7465 * xdisp.c (Vhourglass_delay): Remove static.
7466 (hourglass_started, start_hourglass, cancel_hourglass):
7467 Don't include these versions on WINDOWSNT.
7468
74692008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7470
7471 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7472 variables (formerly in xfns.c).
7473 (show_hourglass, hide_hourglass): New prototypes (same).
7474 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
7475 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
7476 in xfns.c).
7477 (syms_of_xdisp): Declare/initialize display-hourglass,
7478 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
7479 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
7480 formerly in xfns.c.
7481 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7482 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7483 (start_hourglass, cancel_hourglass): Remove.
7484 (show_hourglass, hide_hourglass): Remove prototypes and static
7485 modifiers.
7486 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
7487 hourglass_atimer, hourglass_shown_p declaration/initialization.
7488 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7489 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7490 (start_hourglass, cancel_hourglass): Remove.
7491 (show_hourglass, hide_hourglass): Remove prototypes and static
7492 modifiers.
7493 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
7494 hourglass_atimer, hourglass_shown_p declaration/initialization.
7495 * w32fns.c (display_hourglass_p, Vhourglass_delay)
7496 (DEFAULT_HOURGLASS_DELAY): Remove.
7497 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
7498 hourglass_shown_p declaration/initialization.
7499
75002008-07-14 Jason Rumney <jasonr@gnu.org>
7501
7502 * w32fns.c (w32_get_arg): Remove wrapper function.
7503 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
7504 directly.
7505 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
7506
75072008-07-14 Kenichi Handa <handa@m17n.org>
7508
7509 * xfont.c (xfont_open): Add workaround for X's bug.
7510
75112008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7512
7513 * fontset.c: Include <stdio.h> unconditionally.
7514
75152008-07-13 Michael Albinus <michael.albinus@gmx.de>
7516
7517 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
7518 for filtering.
7519
75202008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
7521
7522 * s/vms.h: Use __GNUC__ instead of _GNUC_.
7523
7524 * m/macppc.h:
7525 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
7526
7527 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
7528 (SPECIAL_EMACS_INT):
7529 * m/ia64.h (SPECIAL_EMACS_INT):
7530 * m/amdx86-64.h (SPECIAL_EMACS_INT):
7531 * s/gnu.h (NLIST_STRUCT):
7532 * s/aix4-2.h (X11R5_INHIBIT_I18N):
7533 * s/gnu-linux.h (LINUX):
7534 * s/msdos.h (HAVE_FACES):
7535 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
7536
7537 * systty.h:
7538 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
7539 anymore.
7540
75412008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
7542
7543 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
7544 always defined as int.
7545
7546 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
7547 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
7548 * s/gnu-linux.h (HAVE_WAIT_HEADER):
7549 * s/freebsd.h (HAVE_WAIT_HEADER):
7550 * s/bsd-common.h (HAVE_UNION_WAIT):
7551 * s/aix4-2.h (HAVE_WAIT_HEADER):
7552 * m/mips.h (HAVE_UNION_WAIT):
7553 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
7554 (COFF, static): Do not define, they are undefined later in the file.
7555
7556 * process.c (update_status): Don't use a union.
7557 (status_convert):
7558 (sigchld_handler): Use int instead of WAITTYPE.
7559
75602008-07-12 Chong Yidong <cyd@stupidchicken.com>
7561
7562 * indent.c (Fvertical_motion): Restore hscroll before moving to
7563 goal column.
7564
75652008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7566
7567 * lisp.h: Remove left over code.
7568
75692008-07-11 Andreas Schwab <schwab@suse.de>
7570
7571 * lisp.h: Fix logic in last change.
7572
7573 * menu.h: New file.
7574 * menu.c: Include it.
7575 * xmenu.c: Likewise.
7576 * Makefile.in: Update dependencies.
7577
75782008-07-11 Kenichi Handa <handa@m17n.org>
7579
7580 * fontset.c (fontset_from_font): Cancel the previous change.
7581
75822008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7583
7584 * lisp.h:
7585 * w32heap.c:
7586 * emacs.c:
7587 * alloc.c: Replace all references of NO_UNION_TYPE with
7588 USE_LISP_UNION_TYPE.
7589
7590 * m/xtensa.h (NO_UNION_TYPE):
7591 * m/vax.h (NO_UNION_TYPE):
7592 * m/template.h (NO_UNION_TYPE):
7593 * m/sparc.h (NO_UNION_TYPE):
7594 * m/mips.h (NO_UNION_TYPE):
7595 * m/macppc.h (NO_UNION_TYPE):
7596 * m/m68k.h (NO_UNION_TYPE):
7597 * m/iris4d.h (NO_UNION_TYPE):
7598 * m/intel386.h (NO_UNION_TYPE):
7599 * m/ibms390x.h (NO_UNION_TYPE):
7600 * m/ibms390.h (NO_UNION_TYPE):
7601 * m/ibmrs6000.h (NO_UNION_TYPE):
7602 * m/ia64.h (NO_UNION_TYPE):
7603 * m/hp800.h (NO_UNION_TYPE):
7604 * m/arm.h (NO_UNION_TYPE):
7605 * m/amdx86-64.h (NO_UNION_TYPE):
7606 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
7607 defining it the same.
7608
76092008-07-10 Chong Yidong <cyd@stupidchicken.com>
7610
7611 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
7612
76132008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7614
7615 * fileio.c:
7616 * sysdep.c
7617 * systty.h:
7618 * m/ibmrs6000.h:
7619 * m/iris4d.h:
7620 * s/aix4-2.h:
7621 * s/freebsd.h:
7622 * s/gnu-linux.h:
7623 * s/hpux10-20.h:
7624 * s/hpux11.h:
7625 * s/netbsd.h:
7626 * s/sol2-3.h:
7627 * s/sol2-4.h:
7628 * s/sol2.h:
7629 * s/usg5-4.h:
7630 * s/vms.h: Remove references to unused variables.
7631
76322008-07-10 Andreas Schwab <schwab@suse.de>
7633
7634 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
7635 pattern before matching the generic family.
7636
76372008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7638
7639 * unexec.c:
7640 * s/vms.h:
7641 * s/usg5-4-2.h:
7642 * s/sol2-5.h:
7643 * s/freebsd.h:
7644 * s/darwin.h: Remove dead code.
7645
7646 * m/template.h:
7647 * m/sparc.h:
7648 * m/mips.h:
7649 * m/m68k.h:
7650 * m/iris4d.h:
7651 * m/intel386.h:
7652 * m/ibms390x.h:
7653 * m/ibms390.h:
7654 * m/ia64.h:
7655 * m/hp800.h:
7656 * m/arm.h:
7657 * m/amdx86-64.h: Remove dead code and references to unused
7658 and compiler defined symbols.
7659
7660 * unexmips.c:
7661 * unexelf.c: Remove references to desupported systems.
7662
7663 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
7664
7665 * m/powermac.h: Remove boilerplate comments.
7666 (NO_REMAP): Remove unused definition.
7667
7668 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
7669 define them.
7670
76712008-07-10 Kenichi Handa <handa@m17n.org>
7672
7673 * xfont.c (xfont_open): Log the reason of failure.
7674
76752008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
7676
7677 * fontset.c (fontset_get_font_group):
7678 * font.c (font_check_otf): Specify argument types.
7679
76802008-07-09 Kenichi Handa <handa@m17n.org>
7681
7682 * coding.c (detect_coding_utf_8): Set detect_info->found only when
7683 non-ASCII char is found.
7684
7685 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
7686 (reorder_font_vector): Change the arg preferred_family to font.
7687 Prefer the spec matching with font.
7688 (fontset_get_font_group): New function.
7689 (fontset_find_font): Change the format of an element of a realized
7690 fontset. Use fontset_get_font_group.
7691 (fontset_font): Try the current fontset, the default fontset, the
7692 fallbacks of the current fontset, and the fallbacks of the default
7693 fontset in this order.
7694 (face_for_char): Delete the shortcut to use the current font.
7695 (fontset_from_font): Don't set fonts for Latin in the fontset.
7696
7697 * font.h (font_make_object, font_match_p): Adjust prototypes.
7698
7699 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
7700
7701 * font.c (font_make_object): New arg entity and pixelsize.
7702 (font_check_otf_features, font_check_otf): New functions.
7703 (font_match_p): Check :lang, :script, and :otf properties.
7704
7705 * xfont.c (xfont_open): Adjust it for the change of
7706 font_make_object.
7707 (xfont_text_extents): Fix initial setting of metrics.
7708
7709 * ftfont.c (struct ftfont_info): New member index, delete member
7710 fc_charset_idx. Make the member order compatible with struct
7711 xftfont_info.
7712 (fc_charset_table): Change charset names to registry names.
7713 (ftfont_pattern_entity): Delete the args registry and
7714 fc_charset_idx. Change the value of :font-entity property
7715 to (FONTNAME . INDEX). Always set :registry property to
7716 `iso10646-1'.
7717 (struct ftfont_cache_data): New struct.
7718 (ftfont_lookup_cache): New arg for_face.
7719 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
7720 (ftfont_driver): Set the member otf_capability.
7721 (ftfont_get_charset): Adjust it for the change of
7722 fc_charset_table.
7723 (OTF_TAG_SYM): New macro.
7724 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
7725 for the change of fc_charset_table.
7726 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
7727 ftfont_pattern_entity. Add FC_INDEX to objset.
7728 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
7729 and ftfont_pattern_entity.
7730 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
7731 font_make_object, struct ftfont_info.
7732 (ftfont_has_char): Use ftfont_get_fc_charset.
7733 (ftfont_otf_features, ftfont_otf_capability): New functions.
7734 (ftfont_shape): Use ftfont_get_otf.
7735 (ftfont_text_extents): Fix initial setting of metrics.
7736
7737 * xftfont.c (struct xftfont_info): New member ft_size. Make the
7738 member order compatible with struct ftfont_info.
7739 (xftfont_open): Add FC_CHARSET to the pattern. Set
7740 xftfont_info->ft_size. Don't unlock the face. Check BDF
7741 properties if appropriate.
7742 (xftfont_close): Unlock the face.
7743 (xftfont_anchor_point, xftfont_shape): Deleted.
7744 (syms_of_xftfont): Don't set members anchor_point and shape of
7745 xftfont_driver.
7746
7747 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
7748 font_make_object.
7749
7750 * w32font.c (w32font_open): Adjust it for the change of
7751 font_make_object.
7752 (w32font_open_internal): Don't set properties of font_object here.
7753
77542008-07-08 Chong Yidong <cyd@stupidchicken.com>
7755
7756 * macfns.c (x_create_tip_frame):
7757 * w32fns.c (x_create_tip_frame):
7758 * xfns.c (x_create_tip_frame): Pass parameter argument to
7759 face-set-after-frame-default.
7760
7761 * xfaces.c (Finternal_merge_in_global_face): Save merged
7762 attributes for the default face back into the face vector.
7763
77642008-07-08 Andreas Schwab <schwab@suse.de>
7765
7766 * fontset.h: Declare fontset_from_font. Don't declare
7767 new_fontset_from_font and fontset_from_font_name.
7768 * xterm.c: Include "fontset.h".
7769 * Makefile.in (xterm.o): Update dependencies.
7770
77712008-07-08 Glenn Morris <rgm@gnu.org>
7772
7773 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
7774 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
7775
77762008-07-07 Chong Yidong <cyd@stupidchicken.com>
7777
7778 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
7779 (x_set_frame_parameters): Don't bind it.
7780
77812008-07-07 Juanma Barranquero <lekktu@gmail.com>
7782
7783 * w32fns.c (map_w32_filename): Declare extern.
7784
77852008-07-07 Jason Rumney <jasonr@gnu.org>
7786
7787 * w32term.c (WS_EX_LAYERED): Define if not already.
7788
77892008-07-06 Chong Yidong <cyd@stupidchicken.com>
7790
7791 * xfaces.c (set_font_frame_param): Don't try to set the font
7792 parameter if it is still unspecified in the lface.
7793
77942008-07-05 Chong Yidong <cyd@stupidchicken.com>
7795
7796 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
7797 face if it didn't already exist.
7798
7799 * xdisp.c (try_window_id): Give up if word-wrapping is on.
7800
78012008-07-05 Andreas Schwab <schwab@suse.de>
7802
7803 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
7804
78052008-07-05 Chong Yidong <cyd@stupidchicken.com>
7806
7807 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
7808 word-wrapping.
7809 (IT_DISPLAYING_WHITESPACE): New macro.
7810 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
7811 when word-wrapping. Simplify word-wrapping logic. Use correct
7812 pixel positions when saving copies of the iterator.
7813 (display_line): Use proper wrap point if the last character on a
7814 line was preceded by whitespace.
7815
78162008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
7817
7818 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
7819
78202008-07-04 Kenichi Handa <handa@m17n.org>
7821
7822 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
7823
7824 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
7825
78262008-07-02 Jason Rumney <jasonr@gnu.org>
7827
7828 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 7829 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
7830
7831 * xdisp.c (next_element_from_display_vector): Move assignment out
7832 of if statement.
7833
78342008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
7835
7836 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
7837
7838 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
7839 (syms_of_fileio): Initialize and export them.
7840 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
7841
7842 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
7843 (Fsystem_move_file_to_trash): New function.
7844 (syms_of_w32fns): Export it to lisp.
7845
78462008-07-01 Jason Rumney <jasonr@gnu.org>
7847
7848 * w32font.c (w32font_text_extents): Don't count overhang as part
7849 of width.
7850
78512008-06-30 Miles Bader <miles@gnu.org>
7852
7853 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
7854 Add `avoid_cursor_p' field.
7855
7856 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
7857 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
7858 (append_glyph, append_composite_glyph, produce_image_glyph)
7859 (append_stretch_glyph): Initialize avoid_cursor_p.
7860 (get_it_property): Rename from `get_line_height_property'.
7861 (x_produce_glyphs): Use get_it_property.
7862 (handle_line_prefix, push_display_prop): New functions.
7863 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
7864 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
7865 New variables.
7866 (syms_of_xdisp): Initialize them.
7867
78682008-06-30 Kenichi Handa <handa@m17n.org>
7869
7870 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
7871 XftDefaultSubstitute (they are called in XftFontMatch).
7872 (xftfont_open): Fix args to ftfont_font_format.
7873
7874 * ftfont.c (fc_charset_table): New member lang.
7875 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 7876 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
7877 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
7878 (ftfont_open): Fix args to ftfont_font_format.
7879 (ftfont_font_format): New arg filename.
7880
78812008-06-30 Chong Yidong <cyd@stupidchicken.com>
7882
7883 * xfaces.c (Finternal_merge_in_global_face): If default face was
7884 modified, realize it again. Update the font face attribute.
7885
78862008-06-29 Jason Rumney <jasonr@gnu.org>
7887
7888 * w32term.c (x_set_frame_alpha): Fix logic.
7889
78902008-06-29 Kenichi Handa <handa@m17n.org>
7891
7892 * fontset.c (Finternal_char_font): Return font-object instead of
7893 font-name.
7894
7895 * composite.c (get_composition_id): Fix the width calculation for TAB.
7896
78972008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
7898
7899 * indent.c (Fvertical_motion): Properly handle float column arg.
7900
79012008-06-28 Jason Rumney <jasonr@gnu.org>
7902
7903 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
7904 (pfnSetLayeredWindowAttributes): New function pointer.
7905 (w32_initialize): Initialize it when supported.
7906 (x_set_frame_alpha): New function.
7907
7908 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
7909 (w32_frame_parm_handlers): Set alpha handler.
7910
7911 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
7912
79132008-06-27 Jason Rumney <jasonr@gnu.org>
7914
7915 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
7916 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
7917 (w32_to_x_charset, x_to_w32_charset)
7918 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7919 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7920 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7921 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7922 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7923 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7924 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
7925 (Qw32_charset_unicode): Remove.
7926 (syms_of_w32fns): Update for above changes.
7927
7928 * w32font.c (w32_to_x_charset, x_to_w32_charset)
7929 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7930 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7931 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7932 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7933 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7934 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7935 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
7936 (syms_of_w32font): Update for above changes.
7937
79382008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
7939
7940 * s/usg5-4.h: Fix previous change: keep the correct branch of a
7941 removed #if.
7942 (USG_SHARED_LIBRARIES): Remove duplicate definition.
7943
79442008-06-26 Juanma Barranquero <lekktu@gmail.com>
7945 Eli Zaretskii <eliz@gnu.org>
7946
7947 * makefile.w32-in (LOCAL_FLAGS):
7948 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
7949
7950 * sysdep.c (_spawnlp, _getpid):
7951 Declare with explicit _cdecl instead of _CRTAPI1.
7952
7953 * editfns.c (Fget_internal_run_time):
7954 Check for WINDOWSNT with #ifdef, not #if.
7955
79562008-06-26 Jason Rumney <jasonr@gnu.org>
7957
7958 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
7959
7960 * w32term.c (x_draw_glyph_string_foreground)
7961 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
7962 Use FONT_HANDLE macro.
7963 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
7964
7965 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7966 (uniscribe_encode_char): Use FONT_HANDLE macro.
7967
7968 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
7969 (w32font_text_extents): Use precast w32_font.
7970 (w32font_close): Free cached metrics.
7971 (w32font_open_internal): Allocate space for name on stack.
7972
79732008-06-26 Chong Yidong <cyd@stupidchicken.com>
7974
7975 * xdisp.c (extend_face_to_end_of_line): Fix last change.
7976
79772008-06-26 Jason Rumney <jasonr@gnu.org>
7978
7979 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
7980 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
7981
79822008-06-26 Juanma Barranquero <lekktu@gmail.com>
7983
7984 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
7985
79862008-06-26 Jason Rumney <jasonr@gnu.org>
7987
7988 * w32bdf.c, w32bdf.h: Remove obsolete files.
7989
7990 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
7991
7992 * w32gui.h: Don't include w32bdf.h.
7993 (XCharStruct, enum w32_char_font_type, W32FontStruct):
7994 Remove obsolete font support.
7995
7996 * w32font.h (struct w32font_info): Remove compat_w32_font.
7997 Add hfont member.
7998 (FONT_COMPAT): Remove obsolete macro.
7999
8000 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8001 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8002 (w32font_open_internal): Remove compat code. Set new hfont member.
8003 (Fx_select_font): Use new hfont member.
8004
8005 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8006 (uniscribe_encode_char): Use new hfont member.
8007
8008 * w32term.c (x_draw_glyph_string_foreground)
8009 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8010 (x_draw_glyph_string): Use metrics in w32font_info.
8011
80122008-06-26 Kenichi Handa <handa@m17n.org>
8013
8014 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8015
80162008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8017
8018 * unexnext.c:
8019 * m/ews4800.h:
8020 * m/hp9000s300.h:
8021 * m/ibm370aix.h:
8022 * m/mips-siemens.h:
8023 * m/ncr386.h:
8024 * m/next.h:
8025 * m/pmax.h:
8026 * m/powerpcle.h:
8027 * m/tandem-s2.h:
8028 * s/386bsd.h:
8029 * s/bsd386.h:
8030 * s/bsd4-1.h:
8031 * s/bsd4-2.h:
8032 * s/bsdos2-1.h:
8033 * s/bsdos2.h:
8034 * s/bsdos3.h:
8035 * s/bsdos4.h:
8036 * s/nextstep.h:
8037 * s/ultrix4-3.h:
8038 * s/usg5-0.h:
8039 * s/usg5-2-2.h:
8040 * s/usg5-2.h:
8041 * s/usg5-4-3.h:
8042 * s/ux4800.h:
8043 * s/uxpds.h:
8044 * s/uxpv.h: Remove support for obsolete systems.
8045 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8046 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8047 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8048 Remove, insert contents in s/aix4-2.h.
8049 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8050 * s/bsd4-3.h: Rename to ...
8051 * s/bsd-common.h: ... this.
8052 * data.c:
8053 * doc.c:
8054 * ecrt0.c:
8055 * emacs.c:
8056 * fileio.c:
8057 * floatfns.c:
8058 * keyboard.c:
8059 * mem-limits.h:
8060 * print.c:
8061 * process.c:
8062 * sysdep.c:
8063 * syssignal.h:
8064 * systty.h:
8065 * syswait.h:
8066 * term.c:
8067 * unexec.c:
8068 * unexelf.c:
8069 * unexhp9k800.c:
8070 * m/hp800.h:
8071 * m/ibmrs6000.h:
8072 * m/mips.h:
8073 * m/vax.h:
8074 * s/darwin.h:
8075 * s/freebsd.h:
8076 * s/gnu.h:
8077 * s/ms-w32.h:
8078 * s/msdos.h:
8079 * s/netbsd.h:
8080 * s/template.h: Remove references to obsolete variables.
8081
8082 * Makefile.in: Add dependencies for all unexec files.
8083 (admindir): Remove unused variable.
8084 (UNEXEC_SRC): Remove references.
8085
80862008-06-25 Chong Yidong <cyd@stupidchicken.com>
8087
8088 * xfns.c (x_default_font_parameter): If Xft is available, first
8089 try Monospace-12 for the default font.
8090
80912008-06-25 Jason Rumney <jasonr@gnu.org>
8092
8093 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8094
80952008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8096
8097 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8098
8099 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8100
81012008-06-25 Juanma Barranquero <lekktu@gmail.com>
8102
8103 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8104 <scroll-conservatively>: Fix typo in docstring.
8105
8106 * xselect.c (Fx_send_client_event): Doc fix.
8107
81082008-06-25 Kenichi Handa <handa@m17n.org>
8109
8110 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8111
8112 * font.c (font_parse_fcname): Remove unused variables.
8113 (font_sort_entites): Delete the arg SPEC. Caller changed.
8114 Fix for the case of ! best_only.
8115 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8116
8117 * lisp.h (Fstring_to_unibyte): EXFUN it.
8118
8119 * character.h (str_to_unibyte): Extern it.
8120
8121 * character.c (str_to_unibyte): New function.
8122
8123 * fns.c (Fstring_to_unibyte): New function.
8124 (syms_of_fns): Defsubr it.
8125
81262008-06-24 Kenichi Handa <handa@m17n.org>
8127
8128 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8129 DPI too.
8130 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8131
81322008-06-24 Andreas Schwab <schwab@suse.de>
8133
8134 * Makefile.in (${lispsource}loaddefs.el): Rename from
8135 ../lisp/loaddefs.el.
8136 (bootstrap-clean): Do what distclean does but don't remove
8137 Makefile.
8138 (distclean): Depend on bootstrap-clean and remove Makefile.
8139
81402008-06-24 Chong Yidong <cyd@stupidchicken.com>
8141
8142 * buffer.h (struct buffer): New member word_wrap.
8143
8144 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8145 word-wrap.
8146 (init_buffer_once): Initialize them.
8147
8148 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8149 line_wrap enum possessing three possible values.
8150
8151 * termopts.h: Replace truncate_partial_width_windows with
8152 Vtruncate_partial_width_windows.
8153
8154 * dispnew.c (direct_output_for_insert): Avoid direct output when
8155 inserting a space with word wrap on.
8156
8157 * indent.c (compute_motion): Obey integer values of
8158 truncate-partial-width-windows.
8159
8160 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8161 replacing truncate_partial_width_windows.
8162 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8163 truncate only if the window width is below that integer.
8164 (start_display, resize_mini_window, produce_stretch_glyph)
8165 (display_string, move_it_in_display_line_to): Use line_wrap.
8166 (back_to_previous_visible_line_start, reseat_1): Reset
8167 string_from_display_prop_p.
8168 (display_line): Extend default face to end of line when wrapping.
8169
81702008-06-24 Kim F. Storm <storm@cua.dk>
8171
8172 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8173 to wrap continued lines at word boundaries.
8174
81752008-06-24 Jason Rumney <jasonr@gnu.org>
8176
8177 * font.c (Ffont_face_attributes): Multiply pixel size before point
8178 conversion to avoid multiplying rounding error.
8179
81802008-06-23 Jason Rumney <jasonr@gnu.org>
8181
8182 * w32term.c (x_draw_glyph_string_background)
8183 (x_draw_glyph_string): Remove old bdf font code.
8184
8185 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8186
81872008-06-22 Kenichi Handa <handa@m17n.org>
8188
8189 * font.c (font_find_for_lface): Try the adstyle specified in
8190 the property of LFACE_FONT of LFACE (if any).
8191
81922008-06-21 Seiji Zenitani <zenitani@mac.com>
8193 Ryo Yoshitake <ryo@shiftmode.net>
8194
8195 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8196
81972008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8198
8199 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8200 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8201 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8202 (witness-emacs): Remove.
8203 (lisp, shortlisp): Move loaddefs.el earlier.
8204 (mostlyclean): Forget about witness-emacs.
8205
82062008-06-22 Glenn Morris <rgm@gnu.org>
8207
8208 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8209 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8210
82112008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8212
8213 * Makefile.in (PRECOMP): Remove.
8214 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8215 (witness-emacs): Run `compile-first'.
8216 (.el.elc): Use the new compile-onefile target.
8217
82182008-06-21 Kenichi Handa <handa@m17n.org>
8219
8220 * xftfont.c (xftfont_open): Handle QCembolden only when
8221 FC_EMBOLDEN is defined.
8222
82232008-06-21 Andreas Schwab <schwab@suse.de>
8224
8225 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8226 (.el.elc): Likewise.
8227
82282008-06-21 Miles Bader <miles@gnu.org>
8229
8230 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8231 build dir, not the lisp source dir.
8232
82332008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8234
8235 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8236 (bootstrapclean): Remove.
8237 (.el.elc): New rule.
8238 (PRECOMP): New var.
8239 (../lisp/subdirs.el): Remove.
8240 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8241 (witness-emacs): New target.
8242 (mostlyclean): Remove witness-emacs as well.
8243 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8244 Add witness-emacs dependency.
8245
82462008-06-20 Chong Yidong <cyd@stupidchicken.com>
8247
8248 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8249 defined by the font.
8250
82512008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8252
8253 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8254 (bootstrap-clean): New target that keeps TAGS around.
8255 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8256 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8257
82582008-06-20 Jason Rumney <jasonr@gnu.org>
8259
8260 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8261 Remove obsolete font code.
8262
8263 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8264 to determine language support.
8265
82662008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8267
8268 * sysdep.c (cfsetspeed): New fun extracted from the code.
8269 (cfmakeraw): Move before first use.
8270
82712008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8272
8273 * sysdep.c (cfmakeraw): Provide fallback implementation.
8274 (serial_configure): Provide fallback implementation of cfsetspeed.
8275
82762008-06-20 Kenichi Handa <handa@m17n.org>
8277
8278 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8279 the pattern.
8280
8281 * fontset.c (fontset_from_font): Copy font_spec before changing
8282 the elements.
8283
8284 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8285
82862008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8287
8288 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8289 for explicit `font' parameters.
8290
8291 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8292
82932008-06-19 Kenichi Handa <handa@m17n.org>
8294
8295 * frame.c: Include <ctype.h>.
8296 (x_set_font_backend): Allow spacing characters in the X resource
8297 for FontBackend.
8298
82992008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8300
8301 * w32fns.c, xfns.c (Qfont_param): New var.
8302 (syms_of_w32fns): Initialize it.
8303 (x_default_font_parameter): Record explicit `font' into
8304 `font-parameter'.
8305
83062008-06-18 Kenichi Handa <handa@m17n.org>
8307
8308 * font.c (font_parse_xlfd): Fix previous change.
8309 (font_parse_fcname): Don't use :fc-unknown-spec.
8310 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8311 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8312 (font_add_log): Prepend the driver name to the resulting fonts.
8313
8314 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8315 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8316 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8317
8318 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8319 (QCembolden): New variables.
8320 (syms_of_xftfont): DEFSYM them.
8321 (xftfont_open): Call XftFontMatch. Don't trust the result of
8322 XftTextExtents8 if the pixel_size is less than 5.
8323
83242008-06-18 Andreas Schwab <schwab@suse.de>
8325
8326 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8327 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8328
83292008-06-18 Jason Rumney <jasonr@gnu.org>
8330
8331 * w32font.c (w32font_list, w32font_match): Add logging.
8332
8333 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8334
83352008-06-17 Chong Yidong <cyd@stupidchicken.com>
8336
8337 * font.c (font_parse_fcname): Store divider characters for
8338 unknown-spec list. For known key symbols, intern using correct
8339 symbol name.
8340
83412008-06-17 Kenichi Handa <handa@m17n.org>
8342
8343 * xfaces.c (realize_default_face): If the frame is not on window
8344 system, set the fontset of face to nil.
8345
83462008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8347
8348 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8349
83502008-06-16 Juanma Barranquero <lekktu@gmail.com>
8351
8352 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8353 (build_font_name_from_vector): Delete externs.
8354
8355 * xfaces.c (struct font_name): Don't declare.
8356
83572008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8358
8359 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8360
83612008-06-16 Chong Yidong <cyd@stupidchicken.com>
8362
8363 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8364
83652008-06-16 Juanma Barranquero <lekktu@gmail.com>
8366
8367 * font.c (Ffont_spec): Fix usage in docstring.
8368 (Ffont_face_attributes): Doc fix.
8369
83702008-06-16 Andreas Schwab <schwab@suse.de>
8371
8372 * font.c (Ffont_face_attributes): Fix definition.
8373
83742008-06-16 Jason Rumney <jasonr@gnu.org>
8375
8376 * font.h (font_style_symbolic_from_value): Remove.
8377
8378 * font.c (font_style_symbolic_from_value): Remove.
8379 (font_style_symbolic): Revert to pre 2008-06-13 version.
8380
8381 * w32font.c (w32_to_fc_weight): New function.
8382 (w32font_full_name, logfont_to_fcname): Use it.
8383
83842008-06-16 Kenichi Handa <handa@m17n.org>
8385
8386 * font.c (font_check_object): Delete it.
8387 (font_clear_cache): Check if a font-object is alive.
8388 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8389 font-object to nil.
8390 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8391 (font_at): Don't call font_check_object.
8392 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8393
83942008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8395
8396 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8397
83982008-06-16 Chong Yidong <cyd@stupidchicken.com>
8399
8400 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8401
84022008-06-15 Chong Yidong <cyd@stupidchicken.com>
8403
8404 * font.c (font_parse_fcname): Only one decimal point.
8405 (font_unparse_fcname): Handle data in family and foundry indices
8406 as symbols, not strings.
8407 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8408
8409 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8410
8411 * font.h (font_unparse_gtkname): Add prototype.
8412
84132008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8414
8415 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8416
84172008-06-15 Andreas Schwab <schwab@suse.de>
8418
8419 * font.c (font_update_drivers): Fix crash when no drivers match.
8420
84212008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8422
8423 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8424 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8425
84262008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8427
8428 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8429
84302008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8431
8432 * process.c (Fserial_process_configure, Fprocess_send_eof):
8433 Use EQ to compare Lisp_Objects.
8434
84352008-06-13 Jason Rumney <jasonr@gnu.org>
8436
8437 * w32fns.c (Fw32_select_font): Remove old font API function.
8438
8439 * w32font.c (logfont_to_fcname): New function.
8440 (Fx_select_font): New font dialog function compatible with
8441 GTK/fontconfig version.
8442
8443 * font.c (font_style_symbolic_from_value): New function.
8444 (font_style_symbolic): Use it.
8445
8446 * font.h (font_style_symbolic_from_value): Declare new function.
8447
84482008-06-13 Juanma Barranquero <lekktu@gmail.com>
8449
8450 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
8451 <font-width-table>: Fix typos in docstrings.
8452
84532008-06-13 Daniel Engeler <engeler@gmail.com>
8454
8455 These changes add serial port access.
8456 * process.c: Add HAVE_SERIAL.
8457 (Fdelete_process, Fprocess_status, Fset_process_buffer)
8458 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
8459 (list_processes_1, select_wrapper, Fstop_process)
8460 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
8461 (status_notify): Modify to handle serial processes.
8462 [HAVE_SERIAL] (Fserial_process_configure)
8463 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
8464 New functions.
8465 * process.h (struct Lisp_Process): Add `type'.
8466 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8467 New functions.
8468 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8469 serial ports.
b71ac3dd 8470 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8471 * w32.h: Add FILE_SERIAL.
8472 (struct _child_process): Add ovl_read, ovl_write.
8473
84742008-06-13 Kenichi Handa <handa@m17n.org>
8475
8476 * dispextern.h (enum lface_attribute_index): New member
8477 LFACE_FOUNDRY_INDEX.
8478
8479 * font.c (font_score): Delete arg alternate_families. Check only
8480 weight, slant, width, and size. Ignore the difference of alias
8481 style symbols.
8482 (font_sort_entites): Adjust for the above change. Reflect the
8483 order of font-driver to scores.
8484 (font_list_entities): Don't check alternate_familes here.
8485 (font_clear_prop): Handle foundry.
8486 (font_update_lface): Don't parse "foundry-family" form here.
8487 Handle FONT_FOUNDRY_INDEX.
8488 (font_find_for_lface): Likewise. Handle alternate families here.
8489 If registry is nil, try iso8859-1 and ascii-0.
8490 (font_open_for_lface): Pay attention to size in ENTITY.
8491 (font_open_by_name): Simplify by calling font_load_for_lface.
8492 (free_font_driver_list): Delete it.
8493 (font_update_drivers): Preserve the order of backends.
8494 (syms_of_font): Setting of sort_shift_bits adjusted for the change
8495 of font_score and font_sort_entites.
8496 (font_update_sort_order): Likewise.
8497
8498 * xfaces.c (LFACE_FOUNDRY): New macro.
8499 (check_lface_attrs): Check foundry.
8500 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
8501 (merge_face_vectors): Check foundry.
8502 (merge_face_ref): Likewise.
8503 (Finternal_set_lisp_face_attribute): Likewise.
8504 (x_update_menu_appearance): Likewise.
8505 (Finternal_get_lisp_face_attribute): Likewise.
8506 (lface_hash): Likewise.
8507 (lface_same_font_attributes_p): Likewise.
8508 (x_supports_face_attributes_p): Likewise.
8509 (tty_supports_face_attributes_p): Likewise.
8510 (Finternal_set_alternative_font_family_alist): Intern strings.
8511 (Finternal_set_alternative_font_registry_alist): Downcase strings.
8512 (realize_default_face): Set LFACE_FOUNDRY (lface).
8513
8514 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
8515 font-driver at first.
8516
8517 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
8518
85192008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8520
8521 * lread.c (Fload): Use xfree, not free on saved_doc_string.
8522
85232008-06-12 Jim Meyering <meyering@redhat.com>
8524
8525 Make unexec_free handle NULL the same way free does.
8526 * unexmacosx.c (unexec_free): Ignore a NULL argument.
8527
85282008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
8529
8530 * character.h (CHAR_TO_BYTE_SAFE): New macro.
8531 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
8532 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
8533 (WEAK_ALIAS): Simplify.
8534 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
8535 when searching a unibyte buffer.
8536
85372008-06-12 Chong Yidong <cyd@stupidchicken.com>
8538
8539 * xfns.c (Fx_select_font): Rename from x-font-dialog.
8540
85412008-06-12 Juanma Barranquero <lekktu@gmail.com>
8542
8543 * w32font.c: Include ctype.h.
8544
85452008-06-11 Jason Rumney <jasonr@gnu.org>
8546
8547 * w32font.c (w32font_encode_char): Detect missing glyphs that are
8548 misreported as space.
8549 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
8550 as aliases for registry iso10646-1.
8551
85522008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
8553
8554 * buffer.c (clone_per_buffer_values): Skip `name'.
8555
85562008-06-11 Chong Yidong <cyd@stupidchicken.com>
8557
8558 * font.c (font_parse_fcname): Fix last change; accept decimal
8559 points in font size.
8560
85612008-06-10 Jason Rumney <jasonr@gnu.org>
8562
8563 * w32uniscribe.c (add_opentype_font_name_to_list):
8564 Skip non unicode fonts.
8565
85662008-06-10 Chong Yidong <cyd@stupidchicken.com>
8567
8568 * xfns.c (Fx_font_dialog): New function.
8569
8570 * gtkutil.c (xg_dialog_response_cb): Rename from
8571 xg_file_response_callback.
8572 (pop_down_dialog): Rename from pop_down_file_dialog.
8573 (xg_get_file_name): Callers changed.
8574 (xg_get_font_name): New function.
8575
8576 * gtkutil.h (xg_get_font_name): Insert prototype.
8577
85782008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8579
8580 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
8581 x_underline_minimum_display_offset.
8582 (syms_of_xdisp): Declare it here rather than in xterm.c.
8583 * dispextern.h (underline_minimum_offset): Declare it.
8584 * w32term.c (x_draw_glyph_string): Use it.
8585 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
8586 (syms_of_xterm): Don't declare it any more.
8587 (x_draw_glyph_string): Adjust to the new name.
8588
85892008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
8590
8591 * xterm.c (x_underline_minimum_display_offset): New var.
8592 (x_draw_glyph_string): Use it.
8593 (syms_of_xterm): Declare it.
8594
85952008-06-10 Chong Yidong <cyd@stupidchicken.com>
8596
8597 * font.c (font_parse_fcname): Accept GTK-style font names too.
8598
85992008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8600
8601 * dired.c (file_name_completion): Don't return t if the match is exact
8602 but with different capitalization.
8603 * minibuf.c (Ftry_completion): Simplify.
8604
8605 * window.c (Vwindow_point_insertion_type): New var.
8606 (set_window_buffer): Use it.
8607 (syms_of_window): Init and export it to Lisp.
8608
86092008-06-10 Kenichi Handa <handa@m17n.org>
8610
8611 * font.h (font_intern_prop): Prototype adjusted.
8612
8613 * font.c (font_intern_prop): New arg force_symbol.
8614 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
8615 Adjust for the change of font_intern_prop.
8616
8617 * ftfont.c (ftfont_pattern_entity):
8618 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
8619 (w32_registry):
8620 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
8621 the change of font_intern_prop.
8622
86232008-06-09 Juanma Barranquero <lekktu@gmail.com>
8624
8625 * w32menu.c (digest_single_submenu): Declare extern.
8626
86272008-06-09 Jason Rumney <jasonr@gnu.org>
8628
8629 * w32term.c (x_make_frame_visible): Use alternate restore flags.
8630
8631 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
8632 (parse_single_submenu): Remove.
8633 (digest_single_submenu): Remove.
8634 (syms_of_w32menu): Don't initialise variables that have moved
8635 to menu.c.
8636 (set_frame_menubar): Sync with version in xmenu.c.
8637 (w32_menu_show): Sync with xmenu_show in xmenu.c.
8638
8639 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
8640 Make static again.
8641
86422008-06-09 Jason Rumney <jasonr@gnu.org>
8643
8644 Changes to w32 files related to the move of common menu code
8645 to menu.c on 2008-06-08 by Chong Yidong.
8646
8647 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
8648 defs to w32gui.h.
8649 (single_keymap_panes, push_menu_item, push_menu_pane):
8650 Make globally visible.
8651
8652 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
8653 (local_free, malloc_widget_value, free_widget_value)
8654 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
8655 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
8656 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
8657 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
8658 (menu_items, menu_items_allocated, menu_items_used)
8659 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
8660 (init_menu_items, finish_menu_items, discard_menu_items)
8661 (grow_menu_items, push_submenu_start, push_submenu_end)
8662 (push_left_right_boundary, push_menu_pane, push_menu_item)
8663 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
8664 (free_menubar_widget_tree_value, parse_single_submenu)
8665 (update_submenu_strings): Remove functions.
8666 (xmalloc_widget_value): Remove and declare extern.
8667
8668 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
8669 (OBJ1): Build it.
8670
8671 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
8672 (local_heap, local_alloc, local_free, malloc_widget_value)
8673 (free_widget_value): Define here.
8674
86752008-06-09 Kenichi Handa <handa@m17n.org>
8676
8677 * font.h (Qascii_0): Extern it.
8678
8679 * font.c (Qascii_0): New variable.
8680 (syms_of_font): DEFSYM it.
8681 (font_open_by_name): If the registry "iso8859-1" fails, try also
8682 "ascii-0".
8683
8684 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
8685
86862008-06-08 Kenichi Handa <handa@m17n.org>
8687
8688 * .gdbinit (xfont): New command.
8689
86902008-06-08 Andreas Schwab <schwab@suse.de>
8691
8692 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
8693 * Makefile.in (menu.o): Update dependencies.
8694
8695 * Makefile.in (obj): Always add menu.o.
8696 * emacs.c (main): Always call syms_of_menu.
8697 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
8698
86992008-06-08 Chong Yidong <cyd@stupidchicken.com>
8700
8701 * Makefile.in: Compile menu.c.
8702
8703 * lisp.h: Declare syms_of_menu.
8704
8705 * emacs.c (main): Call syms_of_menu.
8706
8707 * keyboard.h: Relocate platform-independent menu definitions from
8708 xmenu.c.
8709
8710 * menu.c: New file. Relocate platform-independent menu
8711 definitions from xmenu.c. Suggested by Adrian Robert.
8712
8713 * xmenu.c: Remove platform-independent menu definitions.
8714 (menu_items menu_items_inuse, menu_items_allocated)
8715 (menu_items_used, menu_items_n_panes)
8716 (menu_items_submenu_depth): Move to keyboard.h.
8717 (init_menu_items, finish_menu_items, unuse_menu_items)
8718 (discard_menu_items, restore_menu_items, save_menu_items)
8719 (grow_menu_items, push_submenu_start, push_submenu_end)
8720 (push_left_right_boundary, push_menu_pane, push_menu_item)
8721 (keymap_panes, single_keymap_panes, single_menu_item)
8722 (list_of_panes, list_of_items, find_and_call_menu_selection)
8723 (xmalloc_widget_value, free_menubar_widget_value_tree)
8724 (parse_single_submenu, digest_single_submenu)
8725 (update_submenu_strings): Move to menu.c.
8726
87272008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
8728
8729 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
8730
87312008-06-06 Miles Bader <miles@gnu.org>
8732
8733 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
8734 face, not frame default.
8735
87362008-06-05 Martin Rudalics <rudalics@gmx.at>
8737
8738 * window.c (pop_up_windows, pop_up_frames)
8739 (display_buffer_reuse_frames, Vpop_up_frame_function)
8740 (Vdisplay_buffer_function, Veven_window_heights)
8741 (Vspecial_display_buffer_names, Vspecial_display_regexps)
8742 (Vspecial_display_function, Vsame_window_buffer_names)
8743 (Vsame_window_regexps, split_height_threshold)
8744 (Vsplit_window_preferred_function): Move those vars to window.el.
8745 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
8746 (Fdisplay_buffer): Move those functions to window.el.
8747 (syms_of_window): Remove corresponding declarations.
8748 (display_buffer): New function.
8749 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
8750 * dispnew.c (Flast_nonminibuf_frame): New function.
8751 * buffer.c (Fpop_to_buffer): Move to window.el.
8752
87532008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8754
8755 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
8756
87572008-06-05 Kenichi Handa <handa@m17n.org>
8758
8759 * coding.c (detect_coding): Fix previous change.
8760 (detect_coding_system): Likewise.
8761
87622008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8763
8764 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
8765
8766 * keymap.c (Vminibuffer_local_filename_must_match_map):
8767 Rename from Vminibuffer_local_must_match_filename_map.
8768 (syms_of_keymap):
8769 * minibuf.c (Fcompleting_read): Adjust accordingly.
8770 * commands.h: Rename declaration as well.
8771
87722008-06-05 Kenichi Handa <handa@m17n.org>
8773
8774 * font.c (Ffont_spec): Don't use font_parse_family_registry for
8775 family name.
8776 (Ffont_put): Likewise.
8777
8778 * fontset.c (fontset_find_font): Call font_open_for_lface with the
8779 current font-spec.
8780
8781 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
8782 is unspecified.
8783
8784 * xfaces.c (realize_x_face): If the font-related face attributes
8785 are the same as those of default face, realize a new fontset from
8786 default->fontset.
8787 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
8788
87892008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8790
8791 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
8792 (move_it_in_display_line): New wrapper.
8793
8794 * window.c (window_scroll_pixel_based_preserve_x)
8795 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
8796 (window_scroll_pixel_based, window_scroll_line_based):
8797 Use them to preserve column positions.
8798 (syms_of_window): Initialize them.
8799
8800 * indent.c (Fvertical_motion): Extend first arg to allow passing an
8801 (HPOS . VPOS) pair.
8802
8803 * dispextern.h (move_it_in_display_line): Declare.
8804
88052008-06-05 Juanma Barranquero <lekktu@gmail.com>
8806
8807 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
8808 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
8809 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
8810
88112008-06-04 Juanma Barranquero <lekktu@gmail.com>
8812
8813 * window.c (Fset_window_parameter): Doc fix.
8814 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
8815
88162008-06-04 Joakim Verona <joakim@verona.se>
8817
8818 * window.h (struct window): Add new member window_parameters.
8819
8820 * window.c (Fwindow_parameters, Fwindow_parameter)
8821 (Fset_window_parameter): New defuns.
8822 (syms_of_window): Defsubr the new defuns.
8823 (make_window): Initialize window_parameters to nil.
8824
88252008-06-04 John Paul Wallington <jpw@pobox.com>
8826
8827 * eval.c (Fdefmacro): Doc fix.
8828
88292008-06-04 Kenichi Handa <handa@m17n.org>
8830
8831 * coding.c (detect_coding): Fix handling of coding->head_ascii.
8832 Be sure to call setup_coding_system when we find a proper coding system.
8833 (detect_coding_system): Fix handling of coding->head_ascii.
8834
88352008-06-03 Andreas Schwab <schwab@suse.de>
8836
8837 * font.c (font_prop_validate_spacing): Fix last change.
8838
88392008-06-03 Kenichi Handa <handa@m17n.org>
8840
8841 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
8842 (font_parse_fcname): Fix handling of unknown key.
8843
8844 * xfont.c (xfont_list): Try an alias.
8845
8846 * charset.c (char_charset): Return NULL if the arg charset_list is
8847 specified and C doesn't belong to any of them.
8848
88492008-06-02 Chip Coldwell <coldwell@redhat.com>
8850
8851 * font.c (font_pixel_size): Don't take cdr of an integer.
8852
88532008-06-02 Jim Meyering <meyering@redhat.com>
8854
8855 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
8856 * alloc.c (xfree): Return right away for a NULL arg.
8857 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
8858 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
8859 * mac.c (create_apple_event_from_event_ref): Likewise.
8860 (create_apple_event_from_drag_ref, cfstring_create_normalized):
8861 Likewise.
8862 * doprnt.c (doprnt1): Likewise.
8863 * frame.c (frame): Likewise.
8864 * keyboard.c (wipe_kboard): Likewise.
8865 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
8866 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
8867 * term.c (tty_default_color_capabilities, maybe_fatal)
8868 (delete_tty): Likewise.
8869 * w16select.c (string): Likewise.
8870 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
8871 * w32bdf.c (w32_free_bdf_font): Likewise.
8872 * w32fns.c (w32_unload_font): Likewise.
8873 * w32font.c (w32font_close): Likewise.
8874 * window.c (size_window): Likewise.
8875 * xselect.c (receive_incremental_selection): Likewise.
8876 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
8877 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
8878 * w32.c (stat): Likewise.
8879
8880 Remove useless if-before-free tests.
8881 * editfns.c (Fset_time_zone_rule): Likewise.
8882 * lread.c (nosuffix): Likewise.
8883 * ralloc.c (get_bloc): Likewise.
8884 * regex.c (reg_free): Likewise.
8885 * xftfont.c (xftfont_open, xftfont_close): Likewise.
8886 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
8887 * xsmfns.c (smc_save_yourself_CB): Likewise.
8888
88892008-06-02 Kenichi Handa <handa@m17n.org>
8890
8891 * font.c (font_find_for_lface): Handle float font size.
8892 (font_open_for_lface): Likewise.
8893
8894 * xfaces.c (x_supports_face_attributes_p): Check face->font before
8895 comparing the properties.
8896
88972008-06-01 Jason Rumney <jasonr@gnu.org>
8898
8899 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
8900 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
8901 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
8902 Don't add empty script list.
8903 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
8904
89052008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
8906
8907 * Makefile.in (dot, dotdot): Remove, update users.
8908 ".." has been used elsewhere in the file for a long time.
8909 (LIBXT_STATIC): Remove conditional based on unused variable.
8910
89112008-06-01 Miles Bader <miles@gnu.org>
8912
8913 * xfaces.c (Vface_remapping_alist): New variable.
8914 (syms_of_xfaces): Initialize it.
8915 (enum named_merge_point_kind): New type.
8916 (struct named_merge_point): Add `named_merge_point_kind' field.
8917 (push_named_merge_point): Make cycle detection respect different
8918 named-merge-point kinds.
8919 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
8920 Remove face-name alias resolution.
8921 (lface_from_face_name): New definition using
8922 `lface_from_face_name_no_resolve'.
8923 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
8924 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
8925 (get_lface_attributes): New definition that layers face-remapping on
8926 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
8927 (lookup_basic_face): New function.
8928 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
8929 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
8930 `get_lface_attributes'.
8931 (face_at_buffer_position): Use `lookup_basic_face' to lookup
8932 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
8933 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
8934
8935 * xdisp.c (init_iterator): Pass base_face_id through
8936 `lookup_basic_face' when we actually use it as a face-id.
8937 (handle_single_display_prop): Use `lookup_basic_face' to lookup
8938 DEFAULT_FACE_ID.
8939
8940 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
8941 lookup the initial face-id.
8942
8943 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
8944
89452008-06-01 Juanma Barranquero <lekktu@gmail.com>
8946
8947 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
8948 (Fremove_text_properties): Fix typos in docstrings.
8949
89502008-05-31 Kenichi Handa <handa@m17n.org>
8951
8952 * font.c (font_list_entities): Fix the car part of data to be
8953 stored in the cache.
8954
8955 * ftfont.c (ftfont_font_format): Don't use strcasestr.
8956
89572008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8958
8959 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
8960 Add a `test' argument so another predicate than `equal' can be used.
8961 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
8962 (map_char_table): Remove unused vars `c' and `i'.
8963 * lisp.h (Foptimize_char_table): Adjust declaration.
8964 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
8965
89662008-05-30 Kenichi Handa <handa@m17n.org>
8967
8968 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
8969 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
8970 defined.
8971
89722008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8973
8974 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
8975 (Fmake_variable_frame_local): Disallow mixing buffer-local and
8976 frame-local settings for the same variable.
8977
89782008-05-30 Kenichi Handa <handa@m17n.org>
8979
8980 * fontset.c (Ffont_info): Move to font.c.
8981 (syms_of_fontset): Delete defsubr of Sfont_info.
8982
8983 * font.c (font_style_to_value, font_score): Delete casting of the
8984 args to xstcasecmp.
8985 (register_font_driver): Increment num_font_drivers only when
8986 registering the driver globally.
8987 (Ffont_info): Move from fontset.c. Handle a font object too.
8988 (syms_of_font): Defsubr Sfont_info.
8989
89902008-05-29 Kenichi Handa <handa@m17n.org>
8991
8992 * coding.h (enum define_coding_utf8_arg_index): New enum.
8993 (enum coding_attr_index): Change coding_attr_utf_16_bom to
8994 coding_attr_utf_bom.
8995 (enum utf_bom_type): Rename from utf_16_bom_type.
8996 (struct utf_16_spec): Adjust for the above change.
8997 (struct coding_system): Add utf_8_bom in `spec' union.
8998
8999 * coding.c (CODING_UTF_8_BOM): New macro.
9000 (enum coding_category): Delete coding_category_utf_8, add
9001 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9002 coding_category_utf_8_sig.
9003 (CATEGORY_MASK_UTF_8): Delete it.
9004 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9005 (CATEGORY_MASK_UTF_8_SIG): New macros.
9006 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9007 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9008 CATEGORY_MASK_UTF_8_SIG.
9009 (CATEGORY_MASK_UTF_8): New macro.
9010 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9011 (detect_coding_utf_8): Check BOM.
9012 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9013 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9014 (encode_coding_utf_16): Likewise.
9015 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9016 (detect_coding, detect_coding_system): Handle utf-8-auto.
9017 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9018 (syms_of_coding): Fix setting up of Vcoding_category_table.
9019
90202008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9021
9022 * process.c (Faccept_process_output): If `millisec' is non-nil,
9023 `seconds' default to 0.
9024 (wait_reading_process_output): Also return non-nil if we read output
9025 from a non-running process.
9026
90272008-05-29 Jason Rumney <jasonr@gnu.org>
9028
9029 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9030 `raster' specified.
9031 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9032 in the uniscribe backend, but disallow any font that has no
9033 unicode subrange support.
9034
90352008-05-29 Juanma Barranquero <lekktu@gmail.com>
9036
9037 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9038 Fix typos in docstrings.
9039
90402008-05-29 Kenichi Handa <handa@m17n.org>
9041
9042 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9043 (Fx_family_fonts): Set frame correctly.
9044
90452008-05-28 Jason Rumney <jasonr@gnu.org>
9046
9047 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9048
90492008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9050
9051 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9052 calling build_annotations.
9053
90542008-05-28 Juanma Barranquero <lekktu@gmail.com>
9055
9056 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9057 (Fencode_coding_string):
9058 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9059 <latin-extra-code-table>: Fix typos in docstrings.
9060 (syms_of_coding) <coding-system-alist>: Doc fix.
9061 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9062
90632008-05-28 Kenichi Handa <handa@m17n.org>
9064
9065 * fontset.c (Ffont_info): Don't call font_close_object.
9066
9067 * font.c (font_parse_family_registry): Use Ffont_put to validate
9068 foundry and family.
9069 (font_delete_unmatched): Don't check spacing.
9070 (font_list_entities): Add spacing to the spec to list fonts.
9071
9072 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9073 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9074
9075 * coding.c (encode_coding_raw_text): Fix previous change.
9076 (encode_coding_object): When the dst_object is a buffer and is
9077 different from src_object, move gap to PT.
9078
90792008-05-27 Chong Yidong <cyd@stupidchicken.com>
9080
9081 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9082
90832008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9084
9085 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9086 all branches. Compute it differently.
9087
9088 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9089
90902008-05-27 Juanma Barranquero <lekktu@gmail.com>
9091
9092 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9093 into "else if () ... else ...".
9094
90952008-05-27 Jason Rumney <jasonr@gnu.org>
9096
9097 * w32font.c (w32font_open_internal): Determine if glyph indices
9098 are likely to work here.
9099
91002008-05-27 Chong Yidong <cyd@stupidchicken.com>
9101
9102 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9103 draw overlap glyphs with appropriate highlighting.
9104
91052008-05-27 Kenichi Handa <handa@m17n.org>
9106
9107 * xfont.c (xfont_open): Fix calculation of font->average_width.
9108
91092008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9110
9111 * casefiddle.c (casify_object): Try to guess better whether the
9112 argument is a byte or a char.
9113
91142008-05-26 Andreas Schwab <schwab@suse.de>
9115
9116 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9117 Always send multiples of format size.
9118
9119 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9120
91212008-05-26 Jason Rumney <jasonr@gnu.org>
9122
9123 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9124 (compute_metrics): Don't set failure if we just cleared the cache.
9125 (w32_weight_table): Remove unused variable.
9126 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9127 backwards compatibility.
9128
91292008-05-25 Kenichi Handa <handa@m17n.org>
9130
9131 * w32term.c (x_draw_glyph_string):
9132 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9133
9134 * xfaces.c: Delete unused function prototypes.
9135 (xstrlwr, font_frame): Delete them.
9136 (clear_face_cache): Delete unused variable.
9137
9138 * xftfont.c (xftfont_open): Delete unused variable.
9139 If underline_thickness is not 1, adjust underline_position.
9140
9141 * ftxfont.c (ftxfont_open): Delete unused variable.
9142
9143 * fontset.c (face_for_char): Optimize for the case of no charset
9144 property.
9145
9146 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9147 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9148 (otf_open, font_otf_capability, generate_otf_features)
9149 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9150 Comment out by surrounding "#if 0" and "#endif" for the moment.
9151 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9152 (syms_of_font): Codes for accessing above commented out.
9153
91542008-05-24 Eli Zaretskii <eliz@gnu.org>
9155
9156 * w32proc.c: Include dispextern.h.
9157
9158 * w32.c: Include dispextern.h.
9159
91602008-05-23 Juanma Barranquero <lekktu@gmail.com>
9161
9162 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9163 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9164 Fix typos in docstrings.
9165
91662008-05-23 Jason Rumney <jasonr@gnu.org>
9167
9168 * xsmfns.c: Remove includes that are already included by config.h.
9169
91702008-05-23 Kenichi Handa <handa@m17n.org>
9171
9172 * charset.c (Qemacs, charset_emacs): New variables.
9173 (char_charset): Fix for non-Unicode characters.
9174 (syms_of_charset): Define charset_emacs.
9175
9176 * w32term.c (x_draw_glyph_string): Be sure to update
9177 s->underline_thickness and s->underline_position. Be sure to draw
9178 underline within the current line area.
9179
9180 * xterm.c (x_draw_glyph_string): Be sure to update
9181 s->underline_thickness and s->underline_position. Be sure to draw
9182 underline within the current line area.
9183
9184 * fontset.c: Delete unused variables and add casting for char *
9185 throughout the file.
9186 (fontset_font): Try the fallback fonts of the current fontset
9187 before consulting the default fontset.
9188
9189 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9190
9191 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9192
91932008-05-22 Jason Rumney <jasonr@gnu.org>
9194
9195 * font.c: Don't include strings.h.
9196
9197 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9198
9199 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9200 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9201 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9202 to call xstrcasecmp.
9203
9204 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9205
9206 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9207
9208 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9209
9210 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9211
92122008-05-22 Kenichi Handa <handa@m17n.org>
9213
9214 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9215
9216 * font.c (font_prop_validate_style): Adjust for the format
9217 change of font_style_table.
9218
9219 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9220 two args.
9221
9222 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9223 two args.
9224
92252008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9226
9227 * minibuf.c (keys_of_minibuf): Delete.
9228 * lisp.h (keys_of_minibuf): Delete.
9229 * emacs.c (main): Don't call keys_of_minibuf.
9230
92312008-05-22 Kenichi Handa <handa@m17n.org>
9232
9233 * ftfont.c (ftfont_resolve_generic_family): Rename from
9234 ftfont_list_generic_family. Return a single family for each
9235 generic family.
9236 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9237 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9238 Call font_add_log.
9239 (ftfont_match): Call font_add_log.
9240
9241 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9242 (FONT_DEBUG): Define it.
9243 (font_add_log): Extern it.
9244 (font_assert): Rename from xassert.
9245
9246 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9247 (xfont_list_family): Call font_add_log.
9248 (xfont_match): Likewise.
9249 (memq_no_quit): Delete.
9250
9251 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9252 call of Ffont_xlfd_name.
9253
9254 * xfaces.c (struct table_entry, slant_table, weight_table)
9255 (swidth_table): Move to font.c.
9256
9257 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9258 xassert are changed to font_assert. Delete many unused variables.
9259 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9260 New variables.
9261 (struct table_entry): Move from xfaces.c and modified.
9262 (weight_table, slant_table, width_table): Move from xfaces.c and
9263 contents adjusted for the change of struct table_entry.
9264 (font_style_to_value, font_style_symbolic): Adjust for the
9265 format change of font_style_table.
9266 (font_parse_family_registry): Don't overwrite existing foundry and
9267 family of font_spec.
9268 (font_score): Fix calculation of diff for sizes.
9269 (font_sort_entites): Call font_add_log.
9270 (font_delete_unmatched): Return a newly created list.
9271 (font_list_entities): Fix previous change. Call font_add_log.
9272 (font_matching_entity, font_open_entity, font_close_entity):
9273 Call font_add_log.
9274 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9275 (Finternal_set_font_style_table): Delete.
9276 (BUILD_STYLE_TABLE): New macro.
9277 (build_style_table): New function.
9278 (Vfont_log, font_log_env_checked): New variables.
9279 (font_add_log): New function.
9280 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9281 Declare Lisp variables "font-weight-table", "font-slant-table",
9282 "font-width-table", and "font-log". Initialize font_style_table.
9283
92842008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9285
9286 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9287
92882008-05-21 Seiji Zenitani <zenitani@mac.com>
9289 Ryo Yoshitake <ryo@shiftmode.net>
9290
9291 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9292 (Vframe_alpha_lower_limit): New variable.
9293 (x_set_alpha): New function.
9294
9295 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9296
9297 * xfns.c (x-create-frame, Qalpha):
9298 Initialize the frame parameter `alpha'.
9299 * xterm.c (OPAQUE, OPACITY): New.
9300 (x_set_frame_alpha): New function.
9301 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9302
9303 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9304 * w32fns.c (w32_frame_parm_handlers): Likewise.
9305
93062008-05-20 Jason Rumney <jasonr@gnu.org>
9307
9308 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9309 truetype fonts to opentype list.
9310
93112008-05-20 Juanma Barranquero <lekktu@gmail.com>
9312
9313 * fontset.c (Ffontset_info): Doc fix.
9314 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9315 <ignore-relative-composition>: Fix typos in docstrings.
9316
9317 * font.c (syms-of-font) <font-encoding-alist>:
9318 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9319 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9320 (Ffont_otf_alternates): Doc fixes.
9321
93222008-05-20 Kenichi Handa <handa@m17n.org>
9323
9324 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9325 font.h through out the file.
9326 (FONT_DRIVERS): Rename from FONTOBJ.
9327 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9328 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9329
9330 * emacs.c (main): Call syms_of_font unconditionally.
9331
9332 * font.h (find_font_encoding): Extern it.
9333
9334 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9335 fontset.c.
9336 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9337 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9338 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9339 only when HAVE_WINDOW_SYSTEM is defined.
9340 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9341 when HAVE_WINDOW_SYSTEM is defined.
9342
9343 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9344 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9345
9346 * xfaces.c: Include font.h unconditionally.
9347 (merge_face_ref, merge_face_vectors)
9348 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9349
93502008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9351
9352 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9353 indirect_variable.
9354 * eval.c (lisp_indirect_variable): New fun.
9355 (Fuser_variable_p): Use it.
9356
93572008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9358
9359 * lisp.h (indirect_variable):
9360 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9361 Use Lisp_Symbol pointers rather than Lisp_Object.
9362 Adjust callers.
9363 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9364 To this end, change calling-convention.
9365
9366 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9367 if some non-hidden buffers are selected by string&pred.
9368
93692008-05-19 Chong Yidong <cyd@stupidchicken.com>
9370
9371 * process.c (wait_reading_process_output): Always check status
9372 when in batch mode.
9373
93742008-05-19 Kenichi Handa <handa@m17n.org>
9375
9376 * font.c (font_list_entities): Fix handling of cache.
9377 (font_matching_entity): Likewise.
9378
9379 * ftfont.c (cs_iso8859_1): Delete.
9380 (ft_face_cache): New variable.
9381 (struct ftfont_info): New member fc_charset_idx.
9382 (ftfont_build_basic_charsets): Delete.
9383 (fc_charset_table): New variable.
9384 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9385 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9386 Callers changed.
9387 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9388 (ftfont_spec_pattern): New argument fc_charset_idx.
9389 Check registry more rigidly. Change callers.
9390 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9391 change of :font-entity property of the font.
9392
9393 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9394 property of the font.
9395
93962008-05-18 Juanma Barranquero <lekktu@gmail.com>
9397
9398 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9399 (Funencodable_char_position, Fcheck_coding_systems_region)
9400 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9401 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9402 (Ffind_operation_coding_system, Fset_coding_system_priority)
9403 (Fcoding_system_eol_type): Doc fixes.
9404
94052008-05-17 Glenn Morris <rgm@gnu.org>
9406
9407 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9408
94092008-05-16 Eli Zaretskii <eliz@gnu.org>
9410
9411 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9412 and st_gid.
9413
9414 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9415 HAVE_WINDOW_SYSTEM is not defined.
9416
9417 * xfaces.c (merge_face_ref, merge_face_vectors)
9418 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9419 HAVE_WINDOW_SYSTEM is defined.
9420 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9421
94222008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9423
9424 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9425
94262008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9427
9428 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9429
94302008-05-15 Kenichi Handa <handa@m17n.org>
9431
9432 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
9433 preference.
9434
94352008-05-15 Glenn Morris <rgm@gnu.org>
9436
9437 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
9438
94392008-05-15 Chong Yidong <cyd@stupidchicken.com>
9440
9441 * fns.c (init_fns): Don't initialize weak_hash_tables here.
9442 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
9443
9444 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
9445
94462008-05-15 Kenichi Handa <handa@m17n.org>
9447
9448 * ftfont.c (ftfont_list): Downcase family name to check generic
9449 families.
9450
9451 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
9452 font-spec for QCfont value.
9453
9454 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
9455 buffer. Check the return value of it.
9456
94572008-05-14 Jason Rumney <jasonr@gnu.org>
9458
9459 * w32term.c (w32_get_glyph_overhangs): Remove.
9460 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
9461
94622008-05-14 Kenichi Handa <handa@m17n.org>
9463
9464 * font.c (font_prop_validate): Make nil a valid value.
9465 (font_clear_cache): Check if the cached vector of entities is nil
9466 or not.
9467
94682008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9469
9470 * emacs.c (main_thread): Conditionalize on
9471 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9472 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9473
9474 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
9475 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
9476 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9477
94782008-05-14 Kenichi Handa <handa@m17n.org>
9479
9480 * coding.c (detect_coding_iso_2022): Ignore a coding category that
9481 has no corresponding coding system.
9482
94832008-05-14 Jason Rumney <jasonr@gnu.org>
9484
9485 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
9486
9487 * w32font.h (w32font_open_internal): Update declaration.
9488
9489 * w32font.c (w32font_open_internal): Change last argument from
9490 w32font_info struct to font object. Fill in font object from
9491 font_entity. Get Outline metrics if possible. Use them to
9492 calculate underline position and thickness. Use xlfd name as name
9493 property. Don't set codepage.
9494 (w32font_open): Pass font_object to w32font_open_internal. Don't
9495 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
9496 (w32font_draw): Use s->font.
9497 (clear_cached_metrics): Don't clear non-existent blocks.
9498
9499 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
9500 font was not found.
9501 (x_draw_glyph_string): Use underline position and thickness from font.
9502
9503 * w32uniscribe.c (uniscribe_open): Pass font_object to
9504 w32font_open_internal.
9505
95062008-05-14 Kenichi Handa <handa@m17n.org>
9507
9508 These changes are to delete all legacy font-handling codes, and
9509 make Emacs use only font-backends.
9510
9511 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
9512 (frame.o, image.o, print.o): Depend on $(FONTSRC).
9513
9514 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
9515
9516 * charset.h (Vcharset_non_preferred_head)
9517 (Vcurrent_iso639_language): Extern them.
9518
9519 * charset.c (Vcharset_non_preferred_head): New variable.
9520 (Vcurrent_iso639_language): New variable.
9521 (syms_of_charset): Declare it as a Lisp variable.
9522 (char_charset): Don't check non preferred charsets. As a last
9523 resort, return charset_unicode.
9524 (Fset_charset_priority): Update Vcharset_non_preferred_head.
9525
9526 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
9527 conditionals. Don't check enable_font_backend. Delete all codes
9528 used only when USE_FONT_BACKEND is not defined.
9529
9530 * dispextern.h (struct glyph_string): Change type of `font' to
9531 `struct font *'.
9532 (struct glyph_string): New member underline_position and
9533 underline_thickness.
9534 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
9535 (struct face): Change type of `font' to `struct font *'. Remove
9536 members `font_name', `font_info_id'.
9537 (per_char_metric, encode_char): Delete externs.
9538 (calc_pixel_width_or_height): Adjust the prototype.
9539
9540 * emacs.c (enable_font_backend): Delete extern.
9541 (main): Don't set enable_font_backend. Don't check the command
9542 line argument "-disable-font-backend".
9543
9544 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
9545 (enum font_property_index): New members FONT_DPI_INDEX,
9546 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
9547 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
9548 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
9549 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
9550 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
9551 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
9552 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
9553 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
9554 (struct font_spec, struct font_entity): New structs.
9555 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
9556 (struct font): Many members from old "struct font_info" moved to
9557 here. Members font and entity deleted.
9558 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
9559 the new font-related objects.
9560 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
9561 (CHECK_FONT_GET_OBJECT): Likewise.
9562 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
9563 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
9564 (struct font_driver): New members case_sensitive anc check. Type
9565 of the member list and open changed.
9566 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
9567 (font_symbolic_width, font_find_object, font_get_spec)
9568 (font_set_lface_from_name): Delete extern.
9569 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
9570
9571 * font.c: Include <strings.h>.
9572 (enable_font_backend): Delete it.
9573 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
9574 (CHECK_VALIDATE_FONT_SPEC): Delete it.
9575 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
9576 (null_string): Delete it.
9577 (null_vector): Make it static.
9578 (font_family_alist): Delete it.
9579 (Qnormal): Extern it.
9580 (QCextra, QClanguage): Delete it.
9581 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
9582 (font_make_spec, font_make_entity, font_make_object)
9583 (font_intern_prop): Renamed from intern_downcase. Don't downcase
9584 the string. Callers changed.
9585 (font_pixel_size): Adjusted for the format change of font-related
9586 objects.
9587 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
9588 (font_style_to_value, font_style_symbolic): New function.
9589 (build_font_family_alist): Delete it.
9590 (font_registry_charsets): Use Fassoc_string instead of
9591 assq_no_quit.
9592 (font_prop_validate_symbol): Don't return null_string.
9593 (font_prop_validate_style): Adjusted for the change of
9594 style-related values in a font vector.
9595 (font_property_table): Delete entries for QClanguage and
9596 QCantialias, add entries for QCavgwidth.
9597 (get_font_prop_index): Delete the 2nd argument FROM.
9598 (font_prop_validate): Arguments changed.
9599 (font_put_extra): Adjusted for the change of font-related objects.
9600 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
9601 (font_parse_fcname, font_unparse_fcname)
9602 (font_prepare_composition): Likewise.
9603 (font_parse_family_registry): Renamed from font_merge_old_spec.
9604 (otf_open): Delete the 1st arg entity.
9605 (font_otf_capability): Adjusted for the above change.
9606 (font_score): New arg alternate_families. Adjusted for the change
9607 of font-related objects.
9608 (font_sort_entites): New arg best_only.
9609 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
9610 Delete them.
9611 (font_match_p): Check alternate families.
9612 (font_find_object): Delete it.
9613 (font_check_object): New function.
9614 (font_clear_cache): Adjusted for the change of font-related objects.
9615 (font_delete_unmatched): New arg.
9616 (font_list_entities): Call font_driver->list with a spec that
9617 doesn't specify style-related properties.
9618 (font_matching_entity): Arguments changed. Caller changed.
9619 (font_open_entity): Adjusted for the change of font-related objects.
9620 (font_close_object, font_has_char, font_encode_char)
9621 (font_get_name, font_get_spec): Likewise.
9622 (font_spec_from_name, font_clear_prop, font_update_lface):
9623 New functions.
9624 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
9625 (font_prepare_for_face, font_done_for_face, font_open_by_name)
9626 (font_at): Adjusted for the change of font-related objects.
9627 (font_range): New function.
9628 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
9629 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
9630 (Fcopy_font_spec, Fmerge_font_spec): New function.
9631 (Ffont_family_list): Renamed from list-families.
9632 (Finternal_set_font_style_table): Arguments changed.
9633 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
9634 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
9635 change of font-related objects.
9636 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
9637
9638 * fontset.h (struct font_info): Delete it. Most members go to
9639 struct font.
9640 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
9641 (enum FONT_SPEC_INDEX): Delete it.
9642 (font_info, list_fonts_func, load_font_func, query_font_func)
9643 (set_frame_fontset_func, find_ccl_program_func)
9644 (get_font_repertory_func, new_fontset_from_font_name): Delete
9645 externs.
9646 (fontset_from_font_name): Extern it.
9647 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
9648 (FONT_INFO_FROM_FACE): Deleted.
9649 (face_for_font): Adjust prototype.
9650
9651 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
9652 conditionals. Don't check enable_font_backend. Delete all codes
9653 used only when USE_FONT_BACKEND is not defined.
9654 (get_font_info_func, list_font_func, load_font_func)
9655 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
9656 (get_font_repertory_func): Delete them.
9657 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
9658 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
9659 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
9660 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
9661 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
9662 (fontset_compare_rfontdef): New function.
9663 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
9664 rfont-defs by qsort. Adjusted for the change of font-group vector.
9665 (load_font_get_repertory): Deleted.
9666 (fontset_find_font): Use new macros to ref/set elements of
9667 font-def and rfont-def.
9668 (fontset_font): Fix the timing of remembering that no font for C.
9669 (free_face_fontset): Do nothing if the face has no fontset.
9670 (face_suitable_for_char_p): Use new macros to ref/set elements of
9671 rfont-def.
9672 (face_for_char): Likewise. Call face_for_char with font_object.
9673 (fs_load_font): Delete. Delete #pragma surrounding it.
9674 (fs_query_fontset): Use strcasecmp instead of strcmp.
9675 (generate_ascii_font_name): Adjusted for the format change of
9676 font-spec.
9677 (Fset_fontset_font): Likewise. Use new macros to set elements of
9678 font-def.
9679 (Fnew_fontset): Use font_unparse_xlfd to generate
9680 FONTSET_ASCII (fontset).
9681 (new_fontset_from_font_name): Deleted.
9682 (fontset_from_font): Renamed from new_fontset_from_font. Check if
9683 a fontset is already created for the font. FIx updating of
9684 Vfontset_alias_alist.
9685 (fontset_ascii_font): Deleted.
9686 (Ffont_info): Adjusted for the format change of font-spec.
9687 (Finternal_char_font): Likewise.
9688 (Ffontset_info): Likewise.
9689 (syms_of_fontset): Don't check load_font_func.
9690
9691 * fns.c (internal_equal): Handle PREV_FONT.
9692
9693 * frame.h: Delete USE_FONT_BACKEND conditional.
9694
9695 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
9696 conditionals. Don't check enable_font_backend. Delete all codes
9697 used only when USE_FONT_BACKEND is not defined.
9698 (x_set_font): Call x_new_font, not x_new_fontset2.
9699 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
9700 already set for the frame.
9701
9702 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
9703 a font-entity by font_make_entity. Use font_intern_prop instead
9704 of intern_downcase. Use FONT_SET_STYLE to set a style-related
9705 font property. If a font is scalable, set avgwidth property to 0.
9706 Set font-entity property by font_put_extra.
9707 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
9708 (ffont_driver): Adjusted for the change of struct font_driver.
9709 (ftfont_spec_pattern): New function.
9710 (ftfont_list): Return a list, not vector.
9711 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
9712 (ftfont_list_family): Don't downcase names.
9713 (ftfont_free_entity): Deleted.
9714 (ftfont_open): Return a font-object. Adjusted for the change of
9715 struct font. Get underline_thickness and underline_position from
9716 font property. Don't update dpyinfo->smallest_font_height and
9717 dpyinfo->smallest_char_width.
9718 (ftfont_close): Don't free `struct font'.
9719 (ftfont_has_char): Adjusted for the format change of font-entity.
9720 (ftfont_encode_char, ftfont_text_extents): Likewise.
9721
9722 * ftxfont.c (ftxfont_list): Return a list, not vector.
9723 (ftxfont_open): Return a font-object. Adjusted for the change of
9724 struct font. Get underline_thickness and underline_position from
9725 font property. Don't update dpyinfo->smallest_font_height and
9726 dpyinfo->smallest_char_width.
9727 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
9728 (ftxfont_draw): Adjusted for the change of struct font.
9729
9730 * image.c (image_ascent): Don't include "charset.h". Include
9731 "character.h" and "font.h".
9732
9733 * lisp.h (enum pvec_type): New member PREV_FONT.
9734 (Fassoc_string): EXFUN it.
9735
9736 * print.c: Include font.h.
9737 (print_object): Handle font-related objects.
9738
9739 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
9740 conditionals. Don't check enable_font_backend. Delete all codes
9741 used only when USE_FONT_BACKEND is not defined.
9742 (handle_auto_composed_prop): Do nothing if it->f is not on a
9743 window system. Check how many following characters can be
9744 displayed by the same font.
9745 (calc_pixel_width_or_height): Type of the 4th arg is changed to
9746 'struct font *'.
9747 (get_char_face_and_encoding): Assign the whole encoding task to
9748 the `encode-char' method of a font driver.
9749 (fill_composite_glyph_string): Adjusted for the change of `struct
9750 face' and `struct glyph_string'.
9751 (fill_glyph_string): Likewise.
9752 (get_per_char_metric): Arguments changed.
9753 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
9754 and `struct glyph_string'.
9755 (produce_stretch_glyph, calc_line_height_property)
9756 (x_produce_glyphs): Likewise.
9757
9758 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
9759 conditionals. Don't check enable_font_backend. Delete all codes
9760 used only when USE_FONT_BACKEND is not defined. Use
9761 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
9762 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
9763 (Qp): Extern them.
9764 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
9765 Deleted.
9766 (struct font_name): Deleted.
9767 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
9768 (compare_fonts_by_sort_order): New function.
9769 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
9770 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
9771 Deleted.
9772 (Fx_family_fonts): Use font_list_entities, and sort fonts by
9773 compare_fonts_by_sort_order.
9774 (Fx_font_family_list): Call Ffont_family_list.
9775 (face_numeric_value, face_numeric_weight, face_numeric_slant)
9776 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
9777 (face_symbolic_slant, face_symbolic_swidth)
9778 (split_font_name_into_vector, build_font_name_from_vector)
9779 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
9780 (font_rescale_ratio, split_font_name, build_font_name)
9781 (free_font_names, sort_fonts, x_face_list_fonts)
9782 (face_font_available_p, sorted_font_list, cmp_font_names)
9783 (font_list_1, concat_font_list, font_list, remove_duplicates):
9784 Deleted.
9785 (Fx_list_fonts): Use Ffont_list.
9786 (LFACE_AVGWIDTH): Deleted.
9787 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
9788 by FONTP.
9789 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
9790 (set_lface_from_font_name): Delete it.
9791 (set_lface_from_font): Renamed from
9792 set_lface_from_font_and_fontset. Caller changed. Don't set
9793 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
9794 for face.
9795 (merge_face_vectors): Copy font-spec if necessary.
9796 Clear properties of the font-spec if necessary.
9797 (merge_face_ref): Clear properties of the font-spec if necessary.
9798 (Finternal_set_lisp_face_attribute): Likewise.
9799 (set_font_frame_param): Use font_load_for_lface to load a
9800 font-object, and call Fmodify_frame_parameters with it.
9801 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
9802 font name by Ffont_xlfd_name.
9803 (Finternal_lisp_face_attribute_values): Don't check QCweight,
9804 QCslant, and QCwidth.
9805 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
9806 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
9807 Compare fonts by EQ.
9808 (lookup_non_ascii_face): Deleted.
9809 (face_for_font): The 2nd argument changed.
9810 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
9811 Check atomic font properties by case insensitive.
9812 (realize_non_ascii_face): Set face->overstrike correctly.
9813 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
9814 (dump_realized_face): Get font name from
9815 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
9816
9817 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
9818 conditionals. Don't check enable_font_backend. Delete all codes
9819 used only when USE_FONT_BACKEND is not defined.
9820 (xic_create_xfontset): Original code deleted and renamed from
9821 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
9822 (x_make_gc): Don't set GCFont in GCs.
9823 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
9824 opened by "fixed".
9825 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
9826 find_ccl_program_func, query_font_func, set_frame_fontset_func,
9827 get_font_repertory_func.
9828
9829 * xfont.c: Include <stdlib.h> and "ccl.h".
9830 (struct xfont_info): New structure.
9831 (xfont_query_font): Deleted.
9832 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
9833 moved from xterm.c.
9834 (xfont_driver): Adjusted for the change of struct font_driver.
9835 (compare_font_names): New function.
9836 (xfont_list_pattern): Sort font names case insensitively. Make
9837 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
9838 (xfont_list): Return a list, not vector.
9839 (xfont_match): If the font doesn't have QCname property, generate
9840 a name from the other font properties.
9841 (xfont_open): Return a font-object. Adjusted for the change of
9842 struct font. Get underline_thickness and underline_position from
9843 font property. Don't update dpyinfo->smallest_font_height and
9844 dpyinfo->smallest_char_width.
9845 (xfont_close): Don't free struct font.
9846 (xfont_prepare_face): Adjusted for the change of struct font.
9847 (xfont_done_face): Deleted.
9848 (xfont_has_char): Adjusted for the change of struct font.
9849 (xfont_encode_char, xfont_draw): Likewise.
9850 (xfont_check): New function.
9851
9852 * xftfont.c (xftfont_list): Adjusted for the change of `list'
9853 callback function.
9854 (xftfont_match): Adjusted for the format change of font-entity.
9855 (xftfont_open): Adjusted for the format change of font-entity and
9856 font-object. Adjusted for the change of struct font. Return a
9857 font-object. Don't update dpyinfo->smallest_font_height and
9858 dpyinfo->smallest_char_width.
9859 (xftfont_close): Block input while calling XftFontClose.
9860 (xftfont_prepare_face): Don't block input while calling
9861 xftfont_get_colors. Adjusted for the change of struct font.
9862 (xftfont_shape): Return value of error case fixed.
9863
9864 * xrdb.c (x_load_resources): Don't setup a fontset resource.
9865
9866 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
9867 conditionals.
9868 (FONT_WIDTH): Return (f)->max_width.
9869 (struct x_display_info): Delete member `font'.
9870 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
9871 (x_find_ccl_program, x_get_font_repertory): Delete externs.
9872 (struct x_output): Change type of `font' to `struct font *'.
9873
9874 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
9875 conditionals. Don't check enable_font_backend. Delete all codes
9876 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
9877 (x_per_char_metric, x_encode_char): Deleted.
9878 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
9879 (x_compute_glyph_string_overhangs): Adjusted for the change of
9880 `struct face'.
9881 (x_draw_glyph_string_foreground)
9882 (x_draw_composite_glyph_string_foreground): Likewise.
9883 (x_draw_glyph_string): Likewise. Use font->underline_position and
9884 font->underline_thickness.
9885 (x_new_font): Renamed from x_new_fontset2.
9886 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
9887 (x_check_font): Call `check' method of a font driver.
9888 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
9889 (x_query_font, x_get_font_repertory): Deleted.
9890 (x_find_ccl_program): Renamed and moved to xfont.c.
9891 (x_redisplay_interface): Adjusted for the change of `struct
9892 redisplay_interface'.
9893
9894 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
9895 conditionals. Don't check enable_font_backend. Delete all codes
9896 used only when USE_FONT_BACKEND is not defined. Surround non-used
9897 code by "#ifdef OLD_FONT" and "endif".
9898 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
9899
9900 * w32font.h (struct w32font_info): New member.
9901 (FONT_COMPAT): New macro.
9902 (w32font_open_internal): Prototype adjusted.
9903
9904 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
9905 OLD_FONT" and "endif".
9906
9907 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
9908 conditionals. Don't check enable_font_backend. Delete all codes
9909 used only when USE_FONT_BACKEND is not defined.
9910 (w32font_open): Return a font-object. Make a font-object by
9911 font_make_object. Adjusted for the change of struct w32font_info.
9912 (w32font_close): Don't free struct font. Adjusted for the change
9913 of struct w32font_info.
9914 (w32font_encode_char, w32font_text_extents, w32font_draw):
9915 Adjusted for the change of struct w32font_info.
9916 (w32font_draw): Likewise.
9917 (w32font_list_internal): Return a list, not vector.
9918 (w32font_open_internal): Change the 4th arg to font-object.
9919 Adjusted for the change of struct w32font_info and font-object format.
9920 (add_font_name_to_list): Don't downcase names.
9921 (w32_enumfont_pattern_entity): Make a font-entity by
9922 font_make_entity. Adjusted for the format change of font-entity.
9923 Use FONT_SET_STYLE to set a style-related font property. If a
9924 font is scalable, set avgwidth property to 0. Set font-entity
9925 property by font_put_extra.
9926 (font_matches_spec): Adjusted for the format change of font-entity.
9927 (w32_weight_table, w32_decode_weight): New variables.
9928 (w32_encode_weight): New function.
9929 (fill_in_logfont): Adjusted for the format change of font-spec.
9930 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
9931 weight value.
9932 (w32font_driver): Adjusted for the change of struct font_driver.
9933
9934 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
9935 conditionals. Don't check enable_font_backend. Surround non-used
9936 code by "#ifdef OLD_FONT" and "endif".
9937 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
9938 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
9939
9940 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
9941 conditionals. Don't check enable_font_backend. Delete all codes
9942 used only when USE_FONT_BACKEND is not defined. Surround non-used
9943 code by "#ifdef OLD_FONT" and "endif".
9944
9945 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
9946 (uniscribe_open): Return value changed to font-object.
9947 Adjusted for the format change of font-object.
9948 (uniscribe_otf_capability): Adjusted for the change of struct font.
9949 (add_opentype_font_name_to_list): Don't downcase names.
9950 (uniscribe_font_driver): Adjusted for the change of struct
9951 font_driver.
9952
99532008-05-13 Chong Yidong <cyd@stupidchicken.com>
9954
9955 * dispnew.c (update_frame_1): Check if tty output is still valid
9956 before flushing it.
9957
99582008-05-13 Jan Djärv <jan.h.d@swipnet.se>
9959
9960 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
9961 to Gtk+ menus.
9962
99632008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
9964
9965 * dired.c (file_name_completion): Tweak the code so as to always do it
9966 in a single pass. Tighten the scope of some variables.
9967
9968 * dired.c (Qdefault_directory): New var.
9969 (file_name_completion): Use it instead of Fexpand_file_name.
9970 (syms_of_dired): Initialize it.
9971
99722008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
9973
9974 * fileio.c (double_dollars): Remove dead code.
9975
99762008-05-10 Eli Zaretskii <eliz@gnu.org>
9977
9978 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
9979 Mention w32-get-true-file-attributes in doc string.
9980
9981 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
9982
99832008-05-09 Glenn Morris <rgm@gnu.org>
9984
9985 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
9986 2008-04-23.
9987
99882008-05-09 Eli Zaretskii <eliz@gnu.org>
9989
9990 Support for reporting owner and group of each file on MS-Windows:
9991 * dired.c (stat_uname, stat_gname): New functions, with special
9992 implementation for w32.
9993 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
9994
9995 * w32.c: Rename the_passwd_* to dflt_passwd_*.
9996 (dflt_group_name): New static variable.
9997 (dflt_group): Rename from the_group.
9998 (init_user_info): Init dflt_group fields. Get user's group name
9999 from LookupAccountSid.
10000 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10001 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10002 New initialization states.
10003 (globals_of_w32): Initialize them to zero. Initialize the default
10004 group name to "None".
10005 (GetFileSecurity_Name): New global var, the name of the function
10006 to call for GetFileSecurity.
10007 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10008 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10009 (get_file_security, get_security_descriptor_owner)
10010 (get_security_descriptor_group, is_valid_sid)
10011 (get_file_security_desc, get_rid, get_name_and_id)
10012 (get_file_owner_and_group): New functions.
10013 (stat): Use get_file_security_desc and get_file_owner_and_group to
10014 report the owner and primary group of each file. Don't ignore the
10015 high 32 bits of file's size, now that st_size is 64-bit wide.
10016 Fix test when to get true file attributes.
10017 (init_user_info): Use get_rid instead of equivalent inline code.
10018 (fstat): Don't ignore the high 32 bits of file's size.
10019
100202008-05-09 Chong Yidong <cyd@stupidchicken.com>
10021
10022 * image.c (png_load): Use correct bit-depth for setting background
10023 color.
10024
100252008-05-08 Eli Zaretskii <eliz@gnu.org>
10026
10027 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10028 epa-hook.elc.
10029
100302008-05-08 Juanma Barranquero <lekktu@gmail.com>
10031
10032 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10033
100342008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10035
10036 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10037 because the original parameters are in pure storage now.
10038 (mac_window): Remove unused params. Update callers.
10039
100402008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10041
10042 * lread.c (substitute_object_recurse): Use lower-level primitives.
10043 Don't signal errors when traversing sub-char-tables.
10044 Don't loop over all the possible characters when traversing char-tables.
10045
10046 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10047 just like we do in print.c.
10048
100492008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10050
10051 * minibuf.c (Ftry_completion): Remove code left over from when we used
10052 scmp instead of Fcompare_strings.
10053
100542008-05-04 Juanma Barranquero <lekktu@gmail.com>
10055
10056 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10057
100582008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10059
10060 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10061 Create bitmap context in native byte order.
10062
10063 * macterm.c (XDrawLine)
10064 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10065 context in native byte order.
10066
100672008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10068
10069 * config.in: Regenerate.
10070
10071 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10072 New definitions for Image I/O support.
10073 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10074 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10075 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10076 (mac_data_provider_release_data, image_load_image_io)
10077 [USE_MAC_IMAGE_IO]: New functions.
10078 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10079 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10080 (init_image_func_pointer) [MAC_OSX]: Remove function.
10081 (image_load_quartz2d) [MAC_OSX]: Check availability of
10082 CGImageCreateWithPNGDataProvider at compile time.
10083 Use lowercase `false' for boolean constant.
10084 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10085 Use image_load_image_io.
10086 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10087 Don't check MyCGImageCreateWithPNGDataProvider.
10088 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10089 Don't call init_image_func_pointer.
10090
10091 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10092
10093 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10094 Make variable non-static.
10095 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10096 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10097
10098 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10099 (RED_FROM_ULONG): Mask off higher bits.
10100 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10101
10102 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10103 Include AvailabilityMacros.h.
10104 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10105 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10106
101072008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10108
10109 * chartab.c (Fset_char_table_range): If range is t, really set all
10110 chars to that value.
10111
101122008-05-03 Eli Zaretskii <eliz@gnu.org>
10113
10114 * dired.c (Ffile_attributes): Don't allow the device number become
10115 negative.
10116
101172008-05-02 Daiki Ueno <ueno@unixuser.org>
10118
10119 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10120
101212008-05-02 Juri Linkov <juri@jurta.org>
10122
10123 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10124 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10125 DEFAULT argument as a list of default values in docstrings.
10126
101272008-05-01 Chong Yidong <cyd@stupidchicken.com>
10128
10129 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10130
101312008-05-01 Martin Rudalics <rudalics@gmx.at>
10132
10133 * dispnew.c (change_frame_size_1): Preserve small windows when
10134 shrinking frames by calling set_window_height|width with third
10135 arg 2.
10136
10137 * window.h (struct window): Replace field too_small_ok by field
10138 resize_proportionally.
10139
10140 * window.c (make_window): Initialize resize_proportionally.
10141 (enlarge_window): Temporarily set resize_proportionally to make
10142 sure that shrink_windows does scale the window proportionally.
10143 (shrink_windows): When window has resize_proportionally set try
10144 to shrink it proportionally by stealing from other windows.
10145 (struct saved_window, Fset_window_configuration)
10146 (compare_window_configurations): Handle resize_proportionally.
10147 (WINDOW_TOTAL_SIZE): New macro.
10148 (window_min_size, shrink_windows, size_window): Use it.
10149 (check_min_window_sizes): Remove. Invalid values of
10150 window-min-height|width are handled by window_min_size_2 now.
10151 (size_window, Fsplit_window, enlarge_window)
10152 (adjust_window_trailing_edge, grow_mini_window): Don't call
10153 check_min_window_sizes.
10154 (window_min_size_2, window_min_size_1, window_min_size):
10155 New argument safe_p for retrieving "safe" minimum sizes.
10156 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10157 (adjust_window_trailing_edge, grow_mini_window):
10158 Adjust arguments of window_min_size... functions.
10159 (shrink_windows): Argument min_size removed. New argument
10160 safe_p allows shrinking windows to their safe minimum sizes.
10161 Calculate minimum size and decide whether a window shall be
10162 deleted for each window individually.
10163 (size_window): When nodelete_p equals 2, tell shrink_windows to
10164 delete windows only if their new minimum size is no more safe.
10165 (shrink_window_lowest_first): Call window_min_size_1 to make
10166 sure to preserve modeline of bottom-most window when resizing
10167 the minibuffer.
10168 (Fset_window_configuration, Fcurrent_window_configuration)
10169 (compare_window_configurations): Do not handle
10170 window-min-height|width any more.
10171 (syms_of_window): Clarify window-min-height|width doc-strings.
10172
101732008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10174
10175 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10176 some more. Copy some of the code from Ftry_completions.
10177 Remove special case code that dates back to initial revision when the
10178 slash was only added when necessary and that can't trigger nowadays.
10179
101802008-04-27 Kenichi Handa <handa@m17n.org>
10181
10182 * font.c (font_prop_validate): Signal `error' instead of `font'.
10183
101842008-04-29 Jason Rumney <jasonr@gnu.org>
10185
10186 * w32fns.c (Fw32_battery_status): New defun.
10187 (syms_of_w32fns): Defsubr it.
10188
101892008-04-28 Andreas Schwab <schwab@suse.de>
10190
10191 * dired.c (file_name_completion): Fix another mixing of encoded
10192 and decoded names.
10193
101942008-04-28 Juanma Barranquero <lekktu@gmail.com>
10195
10196 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10197
101982008-04-27 Juanma Barranquero <lekktu@gmail.com>
10199
10200 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10201
102022008-04-27 Andreas Schwab <schwab@suse.de>
10203
10204 * dired.c (file_name_completion): Fix inappropriate mixing of
10205 encoded and decoded names.
10206
10207 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10208
10209 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10210
102112008-04-26 Eli Zaretskii <eliz@gnu.org>
10212
10213 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10214 2008-03-31, it's not needed anymore with `struct stat' definition
10215 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10216 for the same reasons.
10217
102182008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10219
10220 * m/sparc.h: Additional redefinitions for GNU/Linux.
10221
102222008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10223
10224 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10225 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10226 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10227 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10228 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10229 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10230 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10231 Likewise.
10232
10233 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10234 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10235 (mac_ax_number_of_characters): Add externs.
10236 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10237 [USE_MAC_TSM]: Likewise.
10238 (mac_handle_text_input_event) [MAC_OSX]:
10239 Handle kEventTextInputOffsetToPos for no active input area case.
10240 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10241 (mac_handle_document_access_event)
10242 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10243 (install_application_handler) [MAC_OSX]: Register handlers for
10244 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10245 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10246 Register mac_handle_document_access_event.
10247
10248 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10249 Make functions non-static.
10250
102512008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10252
10253 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10254 (read_file_name_completion_ignore_case, insert_default_directory)
10255 (Qdefault_directory): Move to minibuffer.el.
10256 (Fread_file_name): Call the new `read-file-name' instead.
10257
102582008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10259
10260 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10261 Make function non-static.
10262 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10263 Remove function.
10264 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10265 Move to mactoolbox.c.
10266 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10267
10268 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10269 (mac_rect_make): New macro.
10270
10271 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10272 instead of float.
10273 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10274 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10275 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10276 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10277 CGRectMake.
10278 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10279 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10280 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10281 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10282 instead of WindowRef in argument type.
10283 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10284 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10285 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10286 instead of DISPLAY. All uses changed.
10287 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10288 (x_calc_absolute_position): Simplify so as not to use
10289 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10290
10291 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10292 instead of WindowRef in argument type.
10293 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10294 [TARGET_API_MAC_CARBON]: Remove externs.
10295 (create_apple_event, mac_event_parameters_to_lisp)
10296 [TARGET_API_MAC_CARBON]: Add externs.
10297
10298 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10299 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10300 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10301 is clicked.
10302 (x_activate_menubar): Remove extern for saved_menu_event_location.
10303 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10304 Move from mac.c.
10305
103062008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10307
10308 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10309 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10310
103112008-04-23 Jason Rumney <jasonr@gnu.org>
10312
10313 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10314 attributes only for local files.
10315
10316 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10317 default to Qlocal.
10318
103192008-04-22 Juri Linkov <juri@jurta.org>
10320
10321 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10322 read-buffer-to-switch instead of using the letter "B".
10323
103242008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10325
10326 * fileio.c (Qdefault_directory): New variable.
10327 (Fread_file_name): Use it to pass `dir' to the completion functions.
10328
103292008-04-20 Chong Yidong <cyd@stupidchicken.com>
10330
10331 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10332
103332008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10334
10335 * keyboard.c (Vpre_help_message): Remove.
10336 (show_help_echo): Remove default C code.
10337
10338 * dired.c (directory_files_internal, file_name_completion):
10339 Only call ENCODE_FILE if the string is indeed decoded.
10340
103412008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10342
10343 * Makefile.in (TOOLKIT_DEFINES): Remove.
10344 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10345
103462008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10347
10348 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10349 (mactoolbox.o): New target.
10350
10351 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10352 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10353
10354 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10355 Use mac_set_frame_window_background instead of XSetWindowBackground.
10356 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10357 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10358 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10359 instead of SetWindowTitleWithCFString.
10360 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10361 Move function to mactoolbox.c.
10362 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10363 Use mac_set_window_modified instead of SetWindowModified.
10364 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10365 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10366 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10367 FrontNonFloatingWindow. Use mac_activate_window instead of
10368 ActivateWindow. Use mac_active_non_floating_window instead of
10369 ActiveNonFloatingWindow.
10370 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10371 Use mac_show_hourglass and mac_hide_hourglass.
10372 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10373 instead of GetGlobalMouse.
10374 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10375 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10376 Use mac_bring_window_to_front instead of BringToFront.
10377 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10378 mactoolbox.c.
10379 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10380 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10381 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10382 mactoolbox.c.
10383
10384 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10385 (XtPointer): Move typedef from macmenu.c.
10386 (enum button_type): Move enum from macmenu.c.
10387 (widget_value): Move typedef from macmenu.c.
10388 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10389 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10390 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10391 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10392 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10393 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10394 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10395 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10396 (Selection): Move typedef from macselect.c.
10397 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10398 macterm.c.
10399 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10400 (mac_is_window_collapsed, mac_bring_window_to_front)
10401 (mac_send_window_behind, mac_hide_window, mac_show_window)
10402 (mac_collapse_window, mac_front_non_floating_window)
10403 (mac_active_non_floating_window, mac_activate_window)
10404 (mac_move_window_structure, mac_move_window, mac_size_window)
10405 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10406
10407 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10408 (enum mac_menu_kind): Move enum to mactoolbox.c.
10409 (min_menu_id): Move variable to mactoolbox.c.
10410 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10411 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10412 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10413 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10414 [TARGET_API_MAC_CARBON]: Likewise.
10415 (XtPointer): Move typedef to macgui.h.
10416 (enum button_type): Move enum to macgui.h.
10417 (widget_value): Move typedef to macgui.h.
10418 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10419 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10420 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10421 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10422 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10423 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10424 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10425 (popup_activated_flag): Make variable non-static.
10426 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10427 (add_menu_item, fill_menu, dispose_menus):
10428 Move functions to mactoolbox.c.
10429 (restore_show_help_function, menu_target_item_handler)
10430 (install_menu_target_item_handler, mac_handle_dialog_event)
10431 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10432 [TARGET_API_MAC_CARBON]: Likewise.
10433 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
10434 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10435 (find_and_call_menu_selection, name_is_separator): Make function
10436 non-static.
10437 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
10438 to mactoolbox.c.
10439 (set_frame_menubar): Don't call install_menu_quit_handler.
10440 (menu_item_selection): New variable.
10441 (mac_menu_show): Use create_and_show_popup_menu.
10442 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
10443 selection but set variable menu_item_selection. All uses changed.
10444 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
10445 Call install_menu_quit_handler. Move to mactoolbox.c.
10446
10447 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
10448 (Selection): Move typedef to macgui.h.
10449 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
10450 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
10451 Make variables non-static.
10452 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10453 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
10454 Make functions non-static.
10455 (Vmac_service_selection) [MAC_OSX]: Likewise.
10456 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
10457 (mac_valid_selection_target_p, mac_clear_selection)
10458 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10459 (mac_put_selection_value, mac_selection_has_target_p)
10460 (mac_get_selection_value, mac_get_selection_target_list)
10461 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
10462 Move functions to mactoolbox.c.
10463 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
10464 Likewise.
10465 (copy_scrap_flavor_data, mac_handle_service_event)
10466 (install_service_handler) [MAC_OSX]: Likewise.
10467 (syms_of_macselect) <Vmac_dnd_known_types>:
10468 Use mac_dnd_default_known_types.
10469
10470 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10471 Move to mactoolbox.c.
10472 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10473 (Fx_selection_owner_p): Add EXFUN.
10474 (install_window_handler, remove_window_handler, XSetWindowBackground):
10475 Remove externs.
10476 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
10477 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
10478 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
10479 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
10480 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
10481 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
10482 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
10483 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
10484 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
10485 (create_and_show_popup_menu, mac_get_selection_from_symbol)
10486 (mac_valid_selection_target_p, mac_clear_selection)
10487 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10488 (mac_put_selection_value, mac_selection_has_target_p)
10489 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
10490 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
10491 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
10492 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10493 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
10494 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10495 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
10496 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10497 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10498
10499 * mactoolbox.c: New file.
10500
105012008-04-18 Jason Rumney <jasonr@gnu.org>
10502
10503 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
10504
105052008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10506
10507 * character.c (Fmultibyte_char_to_unibyte):
10508 Return latin1 chars unchanged.
10509
10510 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
10511 relocated if it points to `name'.
10512
105132008-04-17 Kenichi Handa <handa@m17n.org>
10514
10515 * data.c (Faset): Allow setting a multibyte character in an
10516 ASCII-only unibyte string.
10517
10518 * lisp.h (STRING_SET_MULTIBYTE): New macro.
10519
105202008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
10521
10522 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
10523 done in config.h.
10524
105252008-04-16 Juanma Barranquero <lekktu@gmail.com>
10526
10527 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
10528 (Fchar_direction): Add usage in the docstring.
10529
105302008-04-15 Chong Yidong <cyd@stupidchicken.com>
10531
10532 * keyboard.c (read_key_sequence): Remove always-true checks.
10533
105342008-04-14 Jason Rumney <jasonr@gnu.org>
10535
10536 * w32font.c (w32font_open_internal): Set max_bounds.descent in
10537 compatibility struct, for better underline positioning.
10538
105392008-04-13 David Hansen <david.hansen@gmx.net>
10540
10541 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
10542 string.
10543
105442008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
10545
10546 * m/hp800.h (XUINT, XSET): Remove.
10547
105482008-04-12 Juanma Barranquero <lekktu@gmail.com>
10549
10550 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
10551 previous change.
10552
105532008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
10554
10555 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
10556 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
10557
105582008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10559
10560 * keymap.h (map_keymap_canonical): Declare.
10561 * xmenu.c (single_keymap_panes): Use it.
10562
105632008-04-11 Glenn Morris <rgm@gnu.org>
10564
10565 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
10566 set the target's value to that of the alias.
10567
105682008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10569
10570 * term.c (set_tty_color_mode): Left over typo.
10571
105722008-04-10 Michael Albinus <michael.albinus@gmx.de>
10573
10574 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
10575 only after check for file name handler functions. Signal, when
10576 native functionality is not supported.
10577 (syms_of_fileio): Declare it unconditionally.
10578
105792008-04-10 Jason Rumney <jasonr@gnu.org>
10580
10581 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
10582 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
10583
10584 * w32.c (logon_network_drive): Also logon to remote drives that
10585 are mapped to drive letters.
10586
105872008-04-10 Glenn Morris <rgm@gnu.org>
10588
10589 * xdisp.c (truncate-partial-width-windows): Doc fix.
10590
105912008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
10592
10593 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
10594 Move functions to minibuffer.el.
10595 (syms_of_fileio): Don't declare them.
10596
105972008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10598
10599 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
10600 (syms_of_minibuf): Remove its initialization.
10601
10602 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
10603
106042008-04-09 Juanma Barranquero <lekktu@gmail.com>
10605
10606 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
10607
106082008-04-09 Jason Rumney <jasonr@gnu.org>
10609
10610 * makefile.w32-in (distclean): Delete makefile too.
10611 (maintainer-clean): New target.
10612
10613 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
10614
10615 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
10616 for new font backend and composite cases.
10617
106182008-04-09 Jan Djärv <jan.h.d@swipnet.se>
10619
10620 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
10621 Most of the code moved to run_timers.
10622 (do_pending_atimers): Call run_timers.
10623 (run_timers): New function.
10624
10625 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
10626 run atimers.
10627
10628 * process.c (wait_reading_process_output): The same as above.
10629
106302008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10631
10632 * minibuf.c (last_exact_completion): Remove variable.
10633 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
10634 (complete_and_exit_1, complete_and_exit_2)
10635 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
10636 (Fdisplay_completion_list, display_completion_list_1)
10637 (Fminibuffer_completion_help, Fself_insert_and_exit)
10638 (Fexit_minibuffer, Fminibuffer_message): Move functions to
10639 minibuffer.el.
10640 (syms_of_minibuf): Remove corresponding initializations.
10641
10642 * keyboard.c (Qdeactivate_mark): New var.
10643 (command_loop_1): Use it to call `deactivate-mark'.
10644 (syms_of_keyboard): Initialize it.
10645
10646 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
10647 to another frame.
10648 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
10649 Don't call set_tty_color_mode.
10650 (store_frame_param): Reset previous_frame rather than call
10651 set_tty_color_mode.
10652 * term.c (set_tty_color_mode): Rewrite.
10653 * dispextern.h (set_tty_color_mode): New type.
10654 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
10655
106562008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
10657
10658 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
10659 for generic chars, which do not exist any more in emacs-unicode.
10660
106612008-04-08 Michael Albinus <michael.albinus@gmx.de>
10662
10663 * coding.c (detect_coding_emacs_mule)
10664 (Ffind_operation_coding_system): Fix typo.
10665
106662008-04-08 Jason Rumney <jasonr@gnu.org>
10667
10668 * w32uniscribe.c (SNAME): Extract only symbol name.
10669
10670 * w32font.h (struct w32_metric_cache): New struct.
10671 (w32font_info): Use it.
10672 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
10673 (CACHE_BLOCKSIZE): New constants.
10674
10675 * w32font.c (Qja, Qko, Qzh): New symbols.
10676 (syms_of_w32font): Initialise them.
10677 (font_matches_spec): Use them to filter by language.
10678 (recompute_cached_metrics): Remove function.
10679 (compute_metrics, clear_cached_metrics): New functions.
10680 (w32font_encode_char): Use them to manage metric cache.
10681 (w32font_text_extents): Cache metrics for all glyphs on demand.
10682 Delay converting glyph indices to WORD until needed.
10683 (w32font_open_internal): Initialize metric cache to empty.
10684 (registry_to_w32_charset): Charset should always be a symbol.
10685 (fill_in_logfont, list_all_matching_fonts): Family should
10686 always be a symbol.
10687
106882008-04-06 Jason Rumney <jasonr@gnu.org>
10689
10690 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
10691 Give up if glyph indices not supported. Use uniscribe obtained
10692 ABC widths for individual metrics. Map glyph clusters back to
10693 characters using fClusterStart flag. Return number of glyphs
10694 produced, not chars processed.
10695 (uniscribe_shape): Map char at FROM to current glyph.
10696
106972008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10698
10699 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
10700 Use SetMenuItemHierarchicalMenu.
10701
107022008-04-05 Jason Rumney <jasonr@gnu.org>
10703
10704 * image.c (pbm_load): Allow color values up to 65535.
10705 Throw an error if max_color_idx is outside the supported range.
10706 Report an error when image size is invalid.
10707 Read two bytes at a time when raw images have max_color_idx above 255.
10708
107092008-04-05 Eli Zaretskii <eliz@gnu.org>
10710
10711 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10712 cFileName a file name that includes `?' characters, use the 8+3
10713 alias in cAlternateFileName instead.
10714
107152008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
10716
10717 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
10718 append "CCL: Quitted" when the CCL program is quitted.
10719 (setup_ccl_program): Initialize ccl->quit_silently to zero.
10720
10721 * ccl.h (struct ccl_program): New member quit_silently.
10722
107232008-04-05 Chong Yidong <cyd@stupidchicken.com>
10724
10725 * search.c (compile_pattern_1): Treat non-nil and non-string of
10726 search-spaces-regexp as nil.
10727
10728 * minibuf.c (Fassoc_string): Tweak docstring.
10729
107302008-04-05 Eli Zaretskii <eliz@gnu.org>
10731
10732 * dired.c (Ffile_attributes): Support inode numbers wider than 32
10733 bits. Remove ugly WINDOWSNT-specific kludge introduced on
10734 2008-03-14 to force inode be positive.
10735
10736 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
10737 _S_* ones, since we now use our own sys/stat.h.
10738 (stat, fstat): Don't mangle the inode number.
10739 (init_user_info): Don't restrict UID and GID to 0-60000 range.
10740
107412008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
10742
10743 * frame.h (struct frame): Give one more bit to `visible' since we use
10744 values larger than 1 to indicate obscured frames on ttys.
10745
10746 * keymap.c (Qkeymap_canonicalize): New var.
10747 (Fmap_keymap_internal): New fun.
10748 (describe_map): Use keymap-canonicalize.
10749
10750 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
10751 (Fundo_boundary): Set them.
10752 (syms_of_undo): Initialize them.
10753 (record_point): Use them instead of last_point_position*.
10754 (last_undo_buffer): Change type.
10755
107562008-04-04 Jason Rumney <jasonr@gnu.org>
10757
10758 * w32font.c (w32font_text_extents): Use font's ascent and descent.
10759 (recompute_cached_metrics): Don't set ascent and descent per char.
10760
10761 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
10762 (uniscribe_check_otf): Add GC protection before consing.
10763 Rearrange loop for counting features.
10764
107652008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10766
10767 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
10768 buffer with byte-size of source buffer.
10769
107702008-04-03 Chong Yidong <cyd@stupidchicken.com>
10771
10772 * callint.c (Fcall_interactively): Handle temporary region even
10773 when shift-select-mode is off.
10774
107752008-04-03 Jason Rumney <jasonr@gnu.org>
10776
10777 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
10778
107792008-04-03 Kenichi Handa <handa@m17n.org>
10780
10781 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
10782 (CATEGORY_MASK_UTF_16): Likewise.
10783 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
10784 binary file.
10785 (detect_coding): Add null-byte detection for a binary file.
10786 (detect_coding_system): Likewise.
10787
107882008-04-03 Jason Rumney <jasonr@gnu.org>
10789
10790 * w32uniscribe.c: New file.
10791
10792 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
10793
10794 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
10795
10796 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
10797 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
10798 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
10799 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
10800 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
10801 (Qphonetic): New symbols.
10802 (syms_of_w32font): Initialize them.
10803 (font_supported_scripts): Use them.
10804 (w32font_list_family): List all charsets.
10805 (w32font_text_extents, recompute_cached_metrics): Fix metric
10806 calculations.
10807 (w32_enumfont_pattern_entity): Make full_type a DWORD.
10808 Give opentype fonts their own format.
10809 (font_matches_spec): New arguments backend and logfont.
10810 Handle :otf spec for uniscribe backend.
10811 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
10812 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
10813
10814 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
10815 font backend.
10816 (globals_of_w32fns): Initialize uniscribe font backend.
10817
10818 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
10819 dependencies.
10820 (w32uniscribe.$(O)): New file to build.
10821 (FONT_OBJ): Include w32uniscribe.$(O).
10822 (LIBS): Add uniscribe libraries.
10823
10824 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
10825
108262008-04-02 Chong Yidong <cyd@stupidchicken.com>
10827
10828 * callint.c (Vshift_select_mode): New var.
10829 (Finteractive): Document new ^ spec.
10830 (Fcall_interactively): Call handle-shift-selection if the ^ spec
10831 is present.
10832
10833 * keyboard.c (Vthis_command_keys_shift_translated): New var.
10834 (command_loop_1): Avoid running the direct display versions of
10835 forward-char and backward-char if shift-selection may occur.
10836 (read_key_sequence): Set Vthis_command_keys_shift_translated if
10837 shift-translation takes place.
10838
10839 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
10840 avoid clobbering by define-minor-mode.
10841
10842 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
10843 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
10844
10845 * syntax.c (Fforward_word): Add ^ interactive spec.
10846
10847 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
10848 (Fscroll_right): Add ^ interactive spec.
10849
108502008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
10851
10852 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
10853
10854 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
10855
10856 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
10857
108582008-03-31 Juri Linkov <juri@jurta.org>
10859
10860 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
10861
108622008-03-30 Jan Djärv <jan.h.d@swipnet.se>
10863
10864 * gtkutil.c (xg_set_geometry): Fix indentation.
10865 (xg_resize_outer_widget): Remove.
10866 (x_wm_size_hint_off): Fix indentation.
10867 (xg_frame_set_char_size): Call flush_and_sync after
10868 gtk_window_resize.
10869 (x_wm_set_size_hint): Pass NULL as geometry window to
10870 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
10871 Add menu bar and tool bar height to base height.
10872 (xg_update_frame_menubar, free_frame_menubar)
10873 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
10874 (update_frame_tool_bar, free_frame_tool_bar):
10875 Change xg_resize_outer_widget to xg_frame_set_char_size.
10876
108772008-03-30 Michael Albinus <michael.albinus@gmx.de>
10878
10879 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
10880 (Fdbus_call_method): New parameter TIMEOUT.
10881 (dbus-send-signal): Optimize UNGCPRO call.
10882
108832008-03-29 Juri Linkov <juri@jurta.org>
10884
10885 * window.c (Fdisplay_buffer): Move call to
10886 Vsplit_window_preferred_function out of conditions that check
10887 if window is eligible for vertical splitting.
10888 When Vsplit_window_preferred_function is non-nil, call it and use
10889 its non-nil return value as window. Otherwise, continue doing
10890 vertical splitting using Fsplit_window with arg horflag=nil.
10891 (syms_of_window) <Vsplit_window_preferred_function>: Change the
10892 default value from `split-window' to nil.
10893
108942008-03-29 Juri Linkov <juri@jurta.org>
10895
10896 * callint.c (Fcall_interactively): Revert 2008-03-16 change
10897 for interactive code letters 'b' and 'B'.
10898
108992008-03-29 Eli Zaretskii <eliz@gnu.org>
10900
10901 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
10902 multibyte string.
10903
109042008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
10905
10906 * keyboard.c (pending_funcalls): New var.
10907 (timer_check): Run it.
10908 (syms_of_keyboard): Initialize it.
10909 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
10910 (Vdelete_terminal_functions): New vars.
10911 (syms_of_terminal): Initialize them.
10912 (Fdelete_terminal): Run delete-terminal-functions.
10913 * xdisp.c (safe_eval): Rewrite.
10914 (safe_call2): New fun.
10915 * frame.c (Qdelete_frame_functions): New var.
10916 (syms_of_frame): Initialize it.
10917 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
10918 * lisp.h (safe_call2, pending_funcalls): Declare.
10919
109202008-03-28 Andreas Schwab <schwab@suse.de>
10921
10922 * indent.c (Fmove_to_column): Move declaration before statements.
10923
109242008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
10925
10926 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
10927 (struct frame): Use bit fields for boolean vars.
10928
10929 * process.c (server_accept_connection): Simplify naming.
10930 (emacs_get_tty_pgrp): Use SDATA.
10931
10932 * coding.c (decode_coding_object): Fix last change.
10933
109342008-03-27 Jason Rumney <jasonr@gnu.org>
10935
10936 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
10937
109382008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
10939
10940 * charset.c (Fdefine_charset_internal): Change the way of
10941 registering charsets in Vcharset_order_list.
10942 (syms_of_charset): Make the charset `eight-bit' supplementary.
10943
109442008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
10945
10946 * regex.c (EXTEND_BUFFER): Change order of pointer addition
10947 operations, to avoid having the difference between pointers
10948 overflow.
10949
109502008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
10951
10952 * indent.c (check_display_width): New fun.
10953 (scan_for_column): Use it.
10954
10955 * data.c (syms_of_data): Mark most-positive-fixnum and
10956 most-negative-fixnum as constants.
10957
10958 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
10959
10960 * indent.c (scan_for_column): Extract from current_column_1.
10961 Merge with the same code from Fmove_to_column.
10962 (current_column_1, Fmove_to_column): Use it.
10963
109642008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
10965
10966 * keymap.c (map_keymap_internal): New fun.
10967 (map_keymap): Use it.
10968 (Fmap_keymap_internal): New fun.
10969 (Fmap_keymap): Remove left-out test from before make_save_value.
10970
10971 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
10972
10973 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
10974 Use XCAR/XCDR.
10975
10976 * process.h (struct Lisp_Process): Remove filter_multibyte.
10977 * process.c (QCfilter_multibyte): Remove.
10978 (setup_process_coding_systems): Don't use filter_multibyte.
10979 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
10980 (read_process_output): Don't adjust multibyteness to filter_multibyte.
10981 (Fset_process_filter_multibyte): Change the coding-system to
10982 approximate the previous behavior.
10983 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
10984 coding-system.
10985
10986 * coding.c (decode_coding_object): When not decoding into a buffer,
10987 obey the coding system's preference of (uni|multi)byte.
10988
109892008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
10990
10991 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
10992 every char is changed and has a different byte-length.
10993 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
10994 Fix int -> EMACS_INT.
10995
109962008-03-23 David Hansen <david.hansen@gmx.net>
10997
10998 * dbusbind.c (xd_read_message): Remove extra copying of message
10999 strings. Check for NULL `interface' or `member'.
11000
110012008-03-22 Eli Zaretskii <eliz@gnu.org>
11002
11003 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11004 cFileName a file name that includes `?' characters, use the 8+3
11005 alias in cAlternateFileName instead.
11006
110072008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11008
11009 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11010
110112008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11012
11013 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11014 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11015 work on current_buffer only instead (that was already the case
11016 for some of the code anyway).
11017 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11018 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11019 (SET_PT, SET_PT_BOTH): Adjust.
11020 * intervals.h (set_point, temp_set_point, set_point_both)
11021 (temp_set_point_both): Remove redundant declarations.
11022
110232008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11024
11025 * fileio.c (Finsert_file_contents):
11026 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11027 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11028 when buffer != current_buffer anyway.
11029
110302008-03-20 Andreas Schwab <schwab@suse.de>
11031
11032 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11033 as default.
11034
110352008-03-19 Jason Rumney <jasonr@gnu.org>
11036
11037 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11038 (syms_of_w32fns): Initialize them.
11039 (HOURGLASS_ID): New constant.
11040 (x_window_to_frame): Don't check hourglass_window.
11041 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11042 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11043 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11044 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11045 Only change the cursor if hourglass is not active.
11046 (Fx_create_frame): Initialize frame's current_cursor.
11047 (hourglass_atimer): Remove.
11048 (hourglass_started): New function.
11049 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11050 (show_hourglass): Adapt to w32, changing argument to frame.
11051
11052 * w32term.h (struct w32_output): Remove hourglass_window.
11053 Add current_cursor.
11054
11055 * eval.c (call_debugger, Fsignal):
11056 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11057 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11058 (Fexecute_extended_command, cancel_hourglass_unwind):
11059 * minibuf.c (read_minibuf):
11060 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11061
110622008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11063
11064 * window.c (run_funs): New fun.
11065 (run_window_configuration_change_hook): Use it to run the buffer-local
11066 and the global part of the hook.
11067
11068 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11069 (unwind_format_mode_line): Restore selected window.
11070 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11071
110722008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11073
11074 * editfns.c (Fchar_equal): Check they are valid characters.
11075
11076 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11077
110782008-03-17 Andreas Schwab <schwab@suse.de>
11079
11080 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11081 against a charset.
11082
11083 * lisp.h (Fbuffer_list): Declare.
11084
110852008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11086
aac0c6e3
MR
11087 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11088 handlebox_widget is != 0.
11089
110902008-03-16 Juri Linkov <juri@jurta.org>
11091
11092 * callint.c (Fcall_interactively): For interactive code letters
11093 'b' and 'B' put the buffer list into the list of default "future"
11094 values of the minibuffer.
11095
110962008-03-16 Andreas Schwab <schwab@suse.de>
11097
11098 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11099 modifiers.
11100
11101 * regex.c (re_match_2_internal): Correct matching of a charset
11102 against latin-1 characters.
11103
111042008-03-16 Kenichi Handa <handa@m17n.org>
11105
11106 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11107 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11108 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11109 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11110 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11111 CHAR_STRING_ADVANCE.
11112 (produce_chars): Fix for the case that the source and the
11113 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11114 instead of CHAR_STRING_ADVANCE.
11115 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11116 STRING_CHAR_ADVANCE.
11117
111182008-03-15 Andreas Schwab <schwab@suse.de>
11119
11120 * regex.c (re_match_2_internal): Correct matching of eight bit
11121 characters in unibyte strings.
11122
111232008-03-15 Martin Rudalics <rudalics@gmx.at>
11124
11125 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11126 at end of range when it coincides with the end of the buffer.
11127
111282008-03-14 Eli Zaretskii <eliz@gnu.org>
11129
11130 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11131
11132 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11133
111342008-03-14 Jason Rumney <jasonr@gnu.org>
11135
11136 * editfns.c (initial_tz): New variable.
11137 (syms_of_editfns): Initialize it.
11138 (Fset_time_zone_rule): Set it when first called.
11139 Use it when TZSTRING is nil.
11140
11141 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11142 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11143 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11144 (globals_of_w32fns): Initialize them.
11145 (compute_tip_xy): Use them to position tooltips.
11146
111472008-03-14 Glenn Morris <rgm@gnu.org>
11148
11149 * emacs.c (main): Revert previous change.
11150 (standard_args): Revert -internal-script back to -scriptload,
11151 and remove the long-option form.
11152
111532008-03-13 Glenn Morris <rgm@gnu.org>
11154
11155 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11156 Remove option -enable-font-backend.
11157
111582008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11159
11160 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11161
111622008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11163
11164 * xterm.c (x_connection_closed): For GTK: If this is the last
11165 terminal just exit without closing the display.
11166
111672008-03-11 Jason Rumney <jasonr@gnu.org>
11168
11169 * w32font.c (w32font_full_name): Use floor to round.
11170
f0131492 111712008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11172
11173 * sound.c (alsa_configure): Declare vol at beginning of block.
11174
11175 * fontset.c (Ffontset_info): Remove extra semicolon.
11176
111772008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11178
11179 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11180 size of resulting string.
11181
111822008-03-10 Jason Rumney <jasonr@gnu.org>
11183
11184 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11185
111862008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11187
11188 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11189 Don't pretend as if characters with display property haven't been
11190 consumed for string-replacing-string case.
11191
111922008-03-08 Kim F. Storm <storm@cua.dk>
11193
11194 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11195 (get_next_display_element, next_element_from_string)
11196 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11197
111982008-03-08 Andreas Schwab <schwab@suse.de>
11199
11200 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11201
112022008-03-06 Jason Rumney <jasonr@gnu.org>
11203
11204 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11205 when charset not specified. Only translate ANSI to unicode when
11206 font_type is truetype.
11207 (w32font_coverage_ok): New function.
11208 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11209
112102008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11211
11212 * lread.c (Fread_char): Resolve modifiers.
11213 (Fread_char_exclusive): Likewise.
11214
11215 * character.c (char_resolve_modifier_mask): New function.
11216 (char_string): Use char_resolve_modifier_mask.
11217 (Fchar_resolve_modifiers): New function.
11218 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11219 function.
11220
112212008-03-04 Jason Rumney <jasonr@gnu.org>
11222
11223 * makefile.w32-in: Always include w32font.c in the build.
11224 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11225
112262008-03-04 Andreas Schwab <schwab@suse.de>
11227
11228 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11229 (versionclean): Likewise.
11230
112312008-03-04 Juanma Barranquero <lekktu@gmail.com>
11232
11233 * .cvsignore: Add oo.
11234
112352008-03-03 Andreas Schwab <schwab@suse.de>
11236
11237 * coding.c (decode_coding_object): Inhibit gap shrinking while
11238 decoding in place.
11239
112402008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11241
11242 * w32term.c: Remove unused include "gnu.h".
11243 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11244
11245 * gnu.h: Rename to ...
11246 * emacs-icon.h: ... this.
11247 * xterm.c: Use emacs-icon.h instead of gnu.h.
11248 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11249
112502008-03-03 Juanma Barranquero <lekktu@gmail.com>
11251
11252 * w32font.c: Include math.h.
11253
112542008-03-03 Jason Rumney <jasonr@gnu.org>
11255
11256 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11257 Compute options separately.
11258 (w32font_open_internal): Set glyph_idx before caching metrics.
11259
11260 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11261 Define if system headers don't.
11262 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11263 (w32font_encode_char): Don't declare here.
11264
11265 * w32font.c (Quniscribe, QCformat): New symbols.
11266 (syms_of_w32font): Define them.
11267 (w32font_has_char): Indicate uncertainty.
11268 (w32font_encode_char): Encode as glyph point. Make static.
11269 (recompute_cached_metrics): New function.
11270 (w32font_open_internal): Use it. Set font to use glyph points
11271 initially. Set format based on type of font.
11272 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11273 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11274 on it. Set format based on information available here.
11275 (add_font_entity_to_list): Identify backend based on opentype_only.
11276
112772008-03-02 Andreas Schwab <schwab@suse.de>
11278
11279 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11280
11281 * coding.c (decode_coding_big5, produce_chars):
11282 Fix typos in last change.
11283
112842008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11285
11286 * gnu.h: New icon.
11287
112882008-03-02 Kenichi Handa <handa@m17n.org>
11289
11290 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11291 `dos', don't decode '\r' if that is the last in the source.
11292 (decode_coding_utf_16, decode_coding_emacs_mule)
11293 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11294 (decode_coding_raw_text, decode_coding_charset): Likewise.
11295 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11296
112972008-03-01 Jason Rumney <jasonr@gnu.org>
11298
11299 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11300
113012008-03-01 Kim F. Storm <storm@cua.dk>
11302
11303 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11304
113052008-03-01 Jason Rumney <jasonr@gnu.org>
11306
11307 * w32font.c (w32font_full_name): New function.
11308 (w32font_open_internal): Use it.
11309
113102008-03-01 Kim F. Storm <storm@cua.dk>
11311
11312 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11313
113142008-03-01 Jason Rumney <jasonr@gnu.org>
11315
11316 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11317
113182008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11319
11320 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11321 xg_frame_resized when the event is for the edit widget.
11322
11323 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11324
11325 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11326 set_char_size.
11327 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11328 operations on widgets here. Just set frame size if needed.
11329 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11330 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11331 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11332 the whole frame.
11333 (xg_create_tool_bar): Move attachment of the tool bar to
11334 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11335 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11336
113372008-03-01 Jason Rumney <jasonr@gnu.org>
11338
11339 * w32fns.c (w32_msg_pump): Disable debug code.
11340
113412008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11342
11343 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11344
113452008-02-29 Chong Yidong <cyd@stupidchicken.com>
11346
11347 * xdisp.c (next_overlay_string): Don't set
11348 overlay_strings_at_end_processed_p if we're currently reading from
11349 a display string.
11350
113512008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11352
11353 * xdisp.c (get_overlay_strings_1): Fix typo.
11354
113552008-02-29 Chong Yidong <cyd@stupidchicken.com>
11356
11357 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11358
113592008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11360
11361 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11362
11363 * xdisp.c (display_mode_element): Cancel the previous change.
11364 (decode_mode_spec): Likewise.
11365 (handle_auto_composed_prop): Don't make composition if it->string
11366 is a string.
11367
113682008-02-27 Kim F. Storm <storm@cua.dk>
11369
11370 * lisp.h (GLYPH): Change type from int to struct with separate char
11371 and face_id members.
11372 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11373 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11374 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11375 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11376 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11377 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11378 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11379 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11380 handle new Lisp glyph code encoding, either an integer or a cons.
11381
11382 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11383 (GLYPH_ALIAS): Delete.
11384 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11385 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11386 (GLYPH_FROM_CHAR): Replace macro by ...
11387 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11388
11389 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11390 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11391 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11392 (GLYPH_INVALID_P): New macro.
11393 (spec_glyph_lookup_face): Update prototype.
11394
11395 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11396 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11397 new glyph code encoding.
11398 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11399 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11400
11401 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11402 Adapt to new glyph type and new glyph code encoding.
11403
11404 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11405
11406 * indent.c (current_column, current_column_1, Fmove_to_column)
11407 (compute_motion): Adapt to new glyph code encoding.
11408
11409 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11410
114112008-02-27 Chong Yidong <cyd@stupidchicken.com>
11412
11413 * process.c (wait_reading_process_output): Check for window
11414 changes caused by timers.
11415 Suggested by Johan Bockgård.
11416
114172008-02-27 Glenn Morris <rgm@gnu.org>
11418
11419 * emacs.c (USAGE1): Add `--disable-font-backend'.
11420
114212008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11422
11423 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11424 is made to the buffer.
11425
114262008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11427
11428 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11429 (face_at_string_position):
11430 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11431 (face_at_string_position):
11432 * xdisp.c (display_string, next_overlay_change):
11433 * buffer.h (overlays_at):
11434 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
11435 Update callers.
11436
114372008-02-26 Chong Yidong <cyd@stupidchicken.com>
11438
11439 * editfns.c (Fformat): Doc fix.
11440
114412008-02-26 Juanma Barranquero <lekktu@gmail.com>
11442
11443 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
11444 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
11445 (Ffont_otf_alternates, Fquery_font): Doc fixes.
11446
114472008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11448
11449 * buffer.c (Fbuffer_swap_text): New function.
11450 (syms_of_buffer): Defsubr it.
11451
114522008-02-25 Chong Yidong <cyd@stupidchicken.com>
11453
11454 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
11455
114562008-02-25 Jason Rumney <jasonr@gnu.org>
11457
11458 * w32font.c (w32font_draw): Draw one character at a time when padding.
11459
114602008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11461
11462 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
11463 Handle a nil arg. Use run_window_configuration_change_hook.
11464 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11465 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11466 Use run_window_configuration_change_hook.
11467
114682008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11469
11470 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11471 1-pixel width.
11472
114732008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11474
11475 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
11476 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
11477 if the glyph in the font is zero pixel with.
11478
11479 * dispextern.h (struct glyph_string): New member padding_p.
11480
11481 * w32font.c (w32font_draw): Pay attention to s->padding_p.
11482
11483 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
11484
11485 * xfont.c (xfont_draw): Pay attention to s->padding_p.
11486
11487 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
11488
11489 * font.c: If the font driver doesn't have `shape' function, return Qnil.
11490
114912008-02-25 Jason Rumney <jasonr@gnu.org>
11492
11493 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
11494
114952008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
11496
11497 Allow fine-grained image-cache flushing.
11498 * dispextern.h (struct image): Add `dependencies' field.
11499 (clear_image_caches): Change arg to Lisp_Object.
11500 * image.c (make_image): Initialize `dependencies' field.
11501 (clear_image_cache): Change arg to allow fine-grained flushing.
11502 Perform the flush even if image-cache-eviction-delay is nil.
11503 (clear_image_caches): Change arg to Lisp_Object.
11504 (Fclear_image_cache): Expand meaning of the argument.
11505 (mark_image): Mark `dependencies' field.
11506 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
11507 (lface_hash): Use XHASH rather than XFASTINT.
11508 (face_at_buffer_position): Fix int -> EMACS_INT position.
11509 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
11510 (select_frame_for_redisplay): Remove code duplication.
11511 (redisplay_internal): Adapt arg to call to clear_image_caches.
11512
115132008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
11514
11515 * s/vms4-0.h:
11516 * s/vms4-2.h:
11517 * s/vms4-4.h:
11518 * s/vms5-5.h: Remove, unused.
11519
11520 * s/irix5-2.h:
11521 * s/irix6-0.h:
11522 * s/riscos5.h:
11523 * s/mach-bsd4-3.h:
11524 * m/mips4.h: Remove files for obsolete systems.
11525
11526 * Makefile.in:
11527 * filelock.c:
11528 * unexmips.c:
11529 * m/hp9000s300.h:
11530 * m/iris4d.h:
11531 * s/aix3-1.h:
11532 * s/hpux.h:
11533 * s/msdos.h:
11534 * s/usg5-0.h:
11535 * s/usg5-2-2.h:
11536 * s/usg5-2.h:
11537 * s/usg5-3.h: Remove references to obsolete variables.
11538
11539 * s/irix5-0.h: Remove, move all the contents ...
11540 * s/irix6-5.h: ... here. Simplify.
11541 * config.in: Regenerate.
11542
115432008-02-24 Jason Rumney <jasonr@gnu.org>
11544
11545 * w32term.c (x_draw_glyph_string_background): Clear the background
11546 manually when cleartype is in use.
11547 (x_draw_glyph_string_foreground): Draw text transparently when
11548 cleartype is in use.
11549
11550 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
11551 a font into it unless we have to.
11552
115532008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11554
11555 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
11556 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 11557
aac0c6e3
MR
115582008-02-18 Jason Rumney <jasonr@gnu.org>
11559
11560 * w32fns.c (Fw32_shell_execute): Encode parameters.
11561
115622008-02-09 Eli Zaretskii <eliz@gnu.org>
11563
11564 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
11565
115662008-02-05 Juanma Barranquero <lekktu@gmail.com>
11567
11568 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
11569
115702008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
11571
11572 * xterm.c (x_set_offset): Don't change the gravity if
11573 CHANGE_GRAVITY is -1.
11574
115752008-02-23 Chong Yidong <cyd@stupidchicken.com>
11576
11577 * fileio.c (auto_save_error_occurred): New var.
11578 (auto_save_error): Set it.
11579 (Fdo_auto_save): Don't overwrite the error message if an auto-save
11580 error occurred.
11581
115822008-02-23 Eli Zaretskii <eliz@gnu.org>
11583
11584 * w32.c (globals_of_w32): Add initializations for
11585 g_b_init_get_sid_sub_authority and
11586 g_b_init_get_sid_sub_authority_count.
11587
115882008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
11589
11590 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
11591 (font_parse_xlfd): Use them for sanity check.
11592 (Finternal_set_font_style_table): Make sure the table is bijective.
11593
11594 Consolidate the image_cache to the terminal struct.
11595 * termhooks.h (P_): Remove redundant def.
11596 (struct terminal): New field `image_cache'.
11597 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
11598 of FRAME_X_IMAGE_CACHE.
11599 * xterm.h (struct x_display_info): Remove image_cache field.
11600 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11601 * w32term.h (struct w32_display_info): Remove image_cache field.
11602 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11603 * macterm.h (struct mac_display_info): Remove image_cache field.
11604 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11605 * xterm.c (x_term_init):
11606 * w32term.c (w32_term_init):
11607 * macterm.c (mac_term_init): Set the image_cache in the terminal.
11608 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
11609 Remove declarations.
11610 (clear_image_caches, mark_image_cache): New declarations.
11611 * xfaces.c (clear_face_cache):
11612 * xdisp.c (redisplay_internal): Use clear_image_caches.
11613 * image.c (clear_image_cache): Don't check that a frame is on
11614 a window-system before checking if it shares the same cache.
11615 (clear_image_caches): New function.
11616 (Fclear_image_cache): Use it.
11617 (mark_image): Move from allo.c.
11618 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
11619 * alloc.c (mark_image, mark_image_cache): Move to image.c.
11620 (mark_object): Don't call mark_image_cache for frames.
11621 (mark_terminals): Call mark_image_cache.
11622
11623 * lisp.h (Fdelete_terminal): Declare.
11624
11625 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
11626 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
11627 wrong_type_argument.
11628
116292008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
11630
11631 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
11632 malayalam.el, and tamil.el. Add sinhala.el.
11633
116342008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
11635
11636 * xterm.c (x_connection_closed): Consolidate identical tests.
11637 (x_delete_terminal): Don't crash if called via x_connection_closed.
11638
116392008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
11640
11641 * xdisp.c (decode_mode_spec): New arg string.
11642 (display_mode_element): Adjust for the above change.
11643
116442008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11645
11646 * callint.c (Fcall_interactively): Use AREF.
11647
116482008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
11649
11650 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
11651
116522008-02-18 Jan Djärv <jan.h.d@swipnet.se>
11653
11654 * xfns.c (Fx_show_tip): Set string to " " if empty.
11655
116562008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
11657
11658 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
11659 with Qt.
11660
116612008-02-17 Kenichi Handa <handa@m17n.org>
11662
11663 * ftfont.c (ftfont_shape): Return Lispy number.
11664
11665 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
11666 for GCs.
11667 (Finternal_set_font_selection_order): Call font_update_sort_order
11668 only when enable_font_backend is set.
11669 (realize_x_face): Set face->font_info to that of default face only
11670 when enable_font_backend is set.
11671
11672 * xdisp.c (handle_composition_prop): Set it->c to the fist
11673 character of the composed region.
11674 (fill_composite_glyph_string): Set base_face->font_info to
11675 s->font_info. Get a face for ascii from base_face->ascii_face.
11676 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
11677 with a face already decided.
11678 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
11679 non-negative.
11680 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
11681 call font_prepare_composition unconditionally.
11682
11683 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
11684
11685 * xterm.h (struct x_display_info): New member font.
11686
11687 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
11688 (x_set_mouse_face_gc, x_new_font): Likewise.
11689 (x_term_init): Setup display_info->font.
11690 (x_delete_terminal): Free display_info->font.
11691
11692 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
11693
11694 * ftxfont.c (ftxfont_default_fid): Delete it.
11695 (ftxfont_open): Set xfont->fid to 0.
11696 (ftxfont_end_for_frame): Clear data specific to the frame and the
11697 font-driver.
11698
11699 * xftfont.c (xftfont_default_fid): Delete it.
11700 (xftfont_open): Set xfont->fid to 0.
11701
11702 * fontset.c (FONTSET_OBJLIST): New macro.
11703 (fontset_find_font): Update font-object list of the fontset.
11704 (free_realized_fontset): New function.
11705 (free_face_fontset): Call free_realized_fontset.
11706 (Ffont_info): Call font_close_object only when enable_font_backend
11707 is set.
11708
11709 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
11710 [HAVE_NTGUI]: Include w32term.h.
11711 [MAC_OS]: Include macterm.ch.
11712 (font_otf_ValueRecord): Use make_number.
11713 (font_finish_cache): Fix handling of reference count.
11714 (font_clear_cache): Update num_fonts.
11715 (font_open_entity): Update smallest_char_width and
11716 smallest_font_height of the frame.
11717 (font_close_object): Update num_fonts.
11718 (Fclear_font_cache): Fix finding the target cache data.
11719
117202008-02-16 Glenn Morris <rgm@gnu.org>
11721
11722 * fontset.c (Finternal_char_font): Fix compilation warning.
11723
117242008-02-16 Eli Zaretskii <eliz@gnu.org>
11725
11726 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
11727 instead of char arrays. Enlarge the size of array passed to
11728 get_token_information.
11729
11730 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
11731 warnings.
11732
117332008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
11734
11735 * .gdbinit: Don't set `args', it breaks gdb --args.
11736
117372008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
11738
11739 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
11740 within a narrowed buffer.
11741
117422008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
11743
11744 * coding.c (decode_coding_object, encode_coding_object):
11745 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
11746
117472008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
11748
11749 * coding.c (coding_set_destination): Use BEG_BYTE rather than
11750 hardcoding 1.
11751 (detect_coding_system):
11752 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
11753 (string_char_to_byte, string_byte_to_char, insert_from_gap):
11754 * insdel.c (insert_from_gap):
11755 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
11756 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
11757 (string_to_multibyte):
11758 * character.c (chars_in_text, multibyte_chars_in_text):
11759 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
11760
11761 * character.h (FETCH_STRING_CHAR_ADVANCE)
11762 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
11763 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
11764 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
11765
11766 * casefiddle.c (casify_region): Only call after-change and composition
11767 functions on the part of the region that was changed.
11768
11769 * keyboard.c (read_avail_input):
11770 * frame.c (Fdelete_frame): Call Fdelete_terminal.
11771
117722008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11773
11774 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
11775 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
11776
117772008-02-11 Juanma Barranquero <lekktu@gmail.com>
11778
11779 * w32menu.c (push_submenu_start, push_submenu_end)
11780 (push_left_right_boundary, push_menu_pane, push_menu_item):
11781 * keyboard.c (read_key_sequence): Don't pass args with side effects
11782 to AREF, it fails when compiling with -DENABLE_CHECKING.
11783
117842008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
11785
11786 * Makefile.in (${lispsource}international/charprop.el):
11787 Delete this target.
11788
11789 * search.c (boyer_moore): Fix incorrect synching of the trunk and
11790 emacs-unicode-2.
11791
117922008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11793
11794 * terminal.c (Fdelete_terminal): Clean up the `force' path.
11795
117962008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11797
11798 * frame.c (Qnoelisp): New symbol.
11799 (syms_of_frame): Initialize it.
11800 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
11801 harmless Elisp code, from a strong `force' from x_connection_closed.
11802 * frame.h (Qnoelisp): Declare.
11803 * xterm.c (x_connection_closed): Pass `noelisp'.
11804
11805 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
11806 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
11807 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
11808 rather than `int' for the type of `type'.
11809
118102008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
11811
11812 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
11813
11814 * Makefile.in (GNUC): Remove support for gcc-1.x.
11815
118162008-02-10 Richard Stallman <rms@gnu.org>
11817
11818 * lisp.h (ASET): Use AREF, not ASLOT.
11819
118202008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11821
11822 * lisp.h (ASET): Check bounds.
11823
118242008-02-10 Glenn Morris <rgm@gnu.org>
11825
11826 * buffer.c (mode-name): Doc fix.
11827
118282008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11829
11830 * Makefile.in:
11831 * emacs.c:
11832 * gmalloc.c:
11833 * keyboard.c:
11834 * lisp.h:
11835 * m/ibm370aix.h:
11836 * process.c:
11837 * regex.c:
11838 * s/hpux.h:
11839 * sysdep.c:
11840 * sysselect.h:
11841 * systty.h:
11842 * unexec.c:
11843 * w32term.c:
11844 * xsmfns.c:
11845 * xterm.c: Remove code that deals with obsolete variables.
11846
11847 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
11848
11849 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
11850 nothing else needs it anymore.
11851
118522008-02-09 Eli Zaretskii <eliz@gnu.org>
11853
11854 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
11855 instead of unibyte_char_to_multibyte.
11856
118572008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11858
11859 * s/gnu-linux.h: Remove commented out code.
11860
11861 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
11862
11863 * Makefile.in: Update what RMS says about using autoconf.
11864 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
11865 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
11866 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
11867 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
11868
118692008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
11870
11871 * keymap.c (Fkey_description): Move side effect outside of macro call.
11872
11873 * xfaces.c (Finternal_make_lisp_face):
11874 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
11875
11876 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
11877 (syms_of_fontset): Use ASET.
11878
11879 * fns.c (concat): Move side effect outside of macro call.
11880 (hash_clear): Use ASET.
11881
118822008-02-08 Richard Stallman <rms@gnu.org>
11883
11884 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
11885 If FORCE, and frame has a surrogate minibuffer for another frame,
11886 delete the other frame first.
11887
118882008-02-07 Timo Savola <timo.savola@iki.fi>
11889
11890 * xterm.c (x_detect_focus_change): Handle embed client message.
11891 (handle_one_xevent): Ditto.
11892 (handle_one_xevent): If embedded and we get a button press/release,
11893 request focus.
11894 (xembed_set_info, xembed_send_message): New functions.
11895 (x_make_frame_visible): Call xembed_set_info if embedded.
11896 (x_make_frame_invisible): Call xembed_set_info if embedded.
11897 (x_term_init): Initialize Xatom_XEMBED.
11898 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
11899 (x_iconify_frame): Ditto.
11900
11901 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
11902 (enum xembed_info, enum xembed_message, enum xembed_focus)
11903 (enum xembed_modifier, enum xembed_accelerator): New.
11904 (xembed_set_info, xembed_send_message): Declare.
11905 (FRAME_X_EMBEDDED_P): New.
11906
11907 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
11908 gtk_plug_new.
11909
11910 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
11911 window ID of a frame.
11912 (x_window): Reparent frame if embedded.
11913 (Fx_create_frame): Don't set border width if embedded.
11914
11915 * emacs.c (USAGE3): Add --parent-id.
11916 (standard_args): Ditto.
11917
119182008-02-07 Jan Djärv <jan.h.d@swipnet.se>
11919
11920 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
11921
119222008-02-07 Jim Meyering <meyering@redhat.com>
11923
11924 Use "do...while (0)", not "if (1)...else" in macro definitions.
11925 The latter provokes a warning from gcc about the empty else, when
11926 followed by ";". Also, without that trailing semicolon, it would
11927 silently swallow up any following statement.
11928 * syntax.h (SETUP_SYNTAX_TABLE)
11929 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
11930 * buffer.h (DECODE_POSITION): Likewise.
11931 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
11932 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
11933 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
11934 (FETCH_CHAR_ADVANCE): Likewise.
11935 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
11936
119372008-02-07 Jim Meyering <meyering@redhat.com>
11938
11939 * lread.c [lint]: Don't include <sys/inode.h>.
11940
119412008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
11942
11943 * xselect.c (x_handle_dnd_message):
11944 * xmenu.c (digest_single_submenu, xmenu_show):
11945 * xdisp.c (with_echo_area_buffer_unwind_data)
11946 (format_mode_line_unwind_data, unwind_format_mode_line)
11947 (display_menu_bar):
11948 * eval.c (Ffetch_bytecode):
11949 * doc.c (store_function_docstring):
11950 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
11951 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
11952 * buffer.c (add_overlay_mod_hooklist): Use ASET.
11953
119542008-02-07 Kenichi Handa <handa@m17n.org>
11955
11956 * ftxfont.c (ftxfont_open): Don't set
11957 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
11958
11959 * ftfont.c (ftfont_open): Fix previous change.
11960
119612008-02-06 Jason Rumney <jasonr@gnu.org>
11962
11963 * w32font.c (w32font_text_extents): Fill in lbearing metric.
11964 Use cached metrics for ASCII characters.
11965 (w32font_open_internal): Don't set font's owning_frame.
11966 Cache metrics for ASCII characters.
11967
11968 * w32font.h (struct w32font_info): Add ascii_metrics.
11969 Remove owning_frame.
11970
119712008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
11972
11973 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
11974 to negative value.
11975
11976 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
11977
11978 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
11979
11980 * charset.c (syms_of_charset): Set QCtest and Qeq.
11981
119822008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
11983
11984 * process.c (Fstart_process):
11985 * callproc.c (Fcall_process): Handle the case where
11986 Funhandled_file_name_directory returns nil.
11987
11988 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
11989 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
11990 * font.c (check_gstring): Use them and AREF to access the vector before
11991 we know it's really a gstring.
11992 (Ffont_shape_text): Fix typo.
46e722a9 11993 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
11994
11995 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
11996 Declare.
11997
11998 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
11999
120002008-02-05 Jason Rumney <jasonr@gnu.org>
12001
12002 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12003 Set smallest_font_height and smallest_char_width in display info.
12004
120052008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12006
12007 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12008
120092008-02-05 Miles Bader <miles@gnu.org>
12010
12011 * xfaces.c (get_lface_attributes, merge_named_face)
12012 (lookup_named_face, lookup_derived_face, realize_named_face):
12013 Revert 2008-02-01 change by cyd@stupidchicken.com.
12014
120152008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12016
12017 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12018 fallback fonts.
12019 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12020
120212008-02-04 Jason Rumney <jasonr@gnu.org>
12022
12023 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12024 set full_name.
12025 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12026
120272008-02-03 Jason Rumney <jasonr@gnu.org>
12028
12029 * makefile.w32-in (OBJ1): Include font.o here.
12030 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12031
120322008-02-02 Jason Rumney <jasonr@gnu.org>
12033
12034 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12035
120362008-02-01 Jason Rumney <jasonr@gnu.org>
12037
12038 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12039
12040 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12041
120422008-02-01 Andreas Schwab <schwab@suse.de>
12043
12044 * Makefile.in (shortlisp, lisp): Update for rename of
12045 ../lisp/language/myanmar.el.
12046
120472008-02-01 Chong Yidong <cyd@stupidchicken.com>
12048
12049 * xfaces.c (get_lface_attributes): Delete function.
12050 (merge_named_face, lookup_named_face, lookup_derived_face)
12051 (realize_named_face): Call lface_from_face_name directly, and use
12052 the fact that merge_face_vectors does not alter its FROM argument.
12053
120542008-02-01 Jason Rumney <jasonr@gnu.org>
12055
12056 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12057 input in the default locale. Handle non-Unicode multibyte input.
12058
120592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12060
12061 * fontset.c (reorder_font_vector): Exclude nil elements from the
12062 font group. Don't try multiple fonts.
12063 (fontset_font): Adjust for the above change.
12064 (Finternal_char_font): Return nil if the found font doesn't
12065 contain the character ch.
12066
12067 * Makefile.in (lisp, shortlisp): Add cham.el.
12068
120692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12070
12071 * font.h (FONTP): Make it return 1 also for a font-object.
12072
12073 * .gdbinit (xfontset): New function.
12074
12075 * font.c (font_find_for_lface): Check if the character C is
12076 supported or not only for the first font.
12077
12078 * fontset.c (reorder_font_vector): Fix typo.
12079 (fontset_find_font): Don't add a font-spec specifying a script.
12080 Use 0 (not Qt) for the indication of empty font-group. Change the
12081 format of RFONT-DEF. Return Qt if no font in the font-group
12082 support the character.
12083 (fontset_font): Adjust for the above change. If no font was
12084 found the character, remember that.
12085 (face_for_char): Adjust for the change of RFONT-DEF.
12086 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12087 no font for the target.
12088 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12089
120902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12091
12092 * font.c (font_load_for_face): Handle the case that the font in
12093 face->lface is a string.
12094
120952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12096
12097 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12098
120992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12100
12101 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12102 Fix previous change. If the frame is not on a window system,
12103 signal an error.
12104
121052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12106
12107 * coding.c (decode_coding_object, encode_coding_object): Adjust
12108 marker positions after conversion.
12109
12110 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12111
121122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12113
12114 * font.c (font_find_for_lface): Fix the handling of the return
12115 value of font_has_char.
12116 (Ffont_shape_text): Fix previous change.
12117
12118 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12119 (fontset_ref_and_range): Delete it.
12120 (fontset_find_font): Call char_table_ref_and_range instead of
12121 FONTSET_REF_AND_RANGE.
12122 (make_fontset): Don't setup font groups of Latin here.
12123 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12124 (new_fontset_from_font): Make the specified font the default for
12125 all Latin characters.
12126
121272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12128
12129 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12130 is on a window system before accessing the fontset of the frame.
12131
121322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12133
12134 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12135
12136 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12137 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12138
12139 * font.c (Ffont_shape_text): If the font driver doesn't have a
12140 shaper function, make zero-width glyphs to have at least one-pixel
12141 width. Fix setting of `to' field of glyphs.
12142
121432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12144
12145 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12146 glyphs.
12147
12148 * font.h (struct font_driver): Improve docstring of member `shape'.
12149
121502008-02-01 Kenichi Handa <handa@m17n.org>
12151
12152 * composite.c (syms_of_composite): Fix docstring of
12153 auto-composition-function.
12154
12155 * font.h (LGLYPH_SIZE): New macro.
12156
12157 * font.c (Ffont_fill_gstring): Stop filling when a character not
12158 supported by the font is found.
12159 (Ffont_shape_text): When a shape callback function returns nil,
12160 try at most two more times with larger gstring.
12161 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12162
12163 * xdisp.c (handle_auto_composed_prop): Change the argument to
12164 auto-composition-function.
12165
12166 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12167 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12168 Lispy glyph and store it in the lgstring.
12169
12170 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12171
12172 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12173
121742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12175
12176 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12177
12178 * fontset.c (Vfont_encoding_charset_alist): New variable.
12179 (syms_of_fontset): DEFVAR it.
12180 (reorder_font_vector, fontset_find_font): Optimize for the case of
12181 no need of reordering.
12182 (face_for_char): Map the charset property by
12183 Vfont_encoding_charset_alist.
12184
121852008-02-01 Jason Rumney <jasonr@gnu.org>
12186
12187 * w32font.c (logfonts_match): Don't check adstyle here.
12188 (font_matches_spec): Check here against physical font instead.
12189 (add_font_entity_to_list): Avoid some substitutions.
12190
12191 * font.c (font_parse_fcname): Default weight and slant to normal.
12192 (font_score): Prefer normal fonts if weight or slant unspecified.
12193 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12194 match freetype scores.
12195
121962008-02-01 Jason Rumney <jasonr@gnu.org>
12197
12198 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12199 font, as it may have been deleted.
12200 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12201 most common hyphenless variation.
12202 (logfonts_match): Check generic family.
12203 (font_matches_spec): Don't check generic family here.
12204 (fill_in_logfont): Set generic family based on adstyle.
12205
12206 * w32font.h (w32font_get_cache): Update declaration.
12207
122082008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12209
12210 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12211
12212 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12213 If none of the new drivers are available, call font_update_drivers
12214 with the old drivers.
12215
12216 * w32font.c (w32font_get_cache): Adjust the argument type.
12217
12218 * xfont.c (xfont_get_cache): Adjust the argument type.
12219
12220 * font.h (struct font_driver): Change argument type of get_cache.
12221
12222 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12223
12224 * font.c (Ffont_get): Fix arguments to Fassoc.
12225 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12226 (font_clear_cache): New function.
12227 (font_list_entities, font_matching_entity): Use font_get_cache.
12228 (font_update_drivers): Call font_clear_cache when finishing a driver.
12229
12230 * fontset.c (fontset_find_font): Fix previous change.
12231
122322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12233
12234 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12235 dpyinfo->font_table.
12236 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12237 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12238
12239 * font.c (font_at): Handle the case that the arg C is negative.
12240 Handle the unibyte case.
12241 (Ffont_at): Call font_at with the arg C -1.
12242
12243 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12244 the position here, and call font_at with the arg C -1.
12245 Don't check the range of the existing composition at the point.
12246
122472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12248
12249 * fontset.c (fontset_add): New args charset_id and family.
12250 Change caller.
12251 (load_font_get_repertory, fontset_find_font): Assume that
12252 font_spec is always a font-spec object.
12253 (Fset_fontset_font): Always store a font-spec object in a fontset.
12254
12255 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12256 instead of get_property_and_range.
12257
122582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12259
12260 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12261 (xftfont_open): Don't keep locking face.
12262 (xftfont_close): Don't unlock face.
12263 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12264
12265 * fontset.c (fontset_find_font): Don't prefer a font of
12266 supplementary charset.
12267
122682008-02-01 Kenichi Handa <handa@m17n.org>
12269
12270 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12271 script, langsys_tag to langsys, new member script.
12272 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12273 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12274 listing to the script specified in that property. Fix arg to
12275 OTF_check_features.
12276
122772008-02-01 Jason Rumney <jasonr@gnu.org>
12278
12279 * w32font.h: New file.
12280
12281 * w32font.c: Include it.
12282 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12283 (w32font_open): Set owning_frame.
12284 (w32font_text_extents): Use owning_frame.
12285 (struct font_callback_data): Add opentype_only field.
12286 (add_font_entity_to_list): Use it to filter fonts.
12287 Don't check against full name.
12288 (w32font_list_internal): New function.
12289 (w32font_list): Use it.
12290 (w32font_match_internal): New function.
12291 (w32font_match): Use it.
12292 (w32font_open_internal): New function.
12293 (w32font_open): Use it.
12294 (w32font_get_cache, w32font_close, w32font_has_char)
12295 (w32font_encode_char, w32font_text_extents, w32font_draw):
12296 Make non-static.
12297
12298 * makefile.w32-in (w32font.o): Depend on w32font.h.
12299
123002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12301
12302 * charset.c (Fdefine_charset_internal): Record a supplementary
12303 charset at the tail of Vcharset_order_list.
12304
12305 * font.c (Ffont_shape_text): Fix the return value.
12306
12307 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12308
12309 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12310
123112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12312
12313 * ftfont.c (struct OpenTypeSpec): New struct.
12314 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12315 (ftfont_get_open_type_spec): New function.
12316 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12317
12318 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12319
123202008-02-01 Jason Rumney <jasonr@gnu.org>
12321
12322 * w32font.c (add_font_entity_to_list): Compare only the beginning
12323 of full name.
12324
123252008-02-01 Kenichi Handa <handa@m17n.org>
12326
12327 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12328 Never return HANDLED_RECOMPUTE_PROPS.
12329
123302008-02-01 Kenichi Handa <handa@m17n.org>
12331
12332 * font.c (font_gstring_produce): Delete it.
12333
12334 * composite.h (COMPOSITION_METHOD):
12335 Handle COMPOSITION_WITH_GLYPH_STRING.
12336
123372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12338
12339 * xfont.c (Qx): Delete.
12340 (syms_of_xfont): Don't initialize Qx.
12341
12342 * composite.h (enum composition_method):
12343 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12344
123452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12346
12347 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12348 (choose_face_font): Accept new form of font-spec.
12349
12350 * frame.h (font_driver_list): Declare it unconditionally.
12351 (struct frame): Define members font_driver_list and font_data_list
12352 unconditionally.
12353
12354 * fontset.c: Include "font.h" unconditionally.
12355 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12356 (Fset_fontset_font): Accept a font-spec object.
12357
12358 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12359 PIXEL_SIZE part a wild card.
12360
12361 * dispextern.h (struct glyph_string): Define members clip and
12362 num_clips unconditionally.
12363 (struct face): Define members font_info and extra unconditionally.
12364
12365 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12366 ftfont_info only when HAVE_LIBOTF is defined.
12367
123682008-02-01 Andreas Schwab <schwab@suse.de>
12369
12370 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12371 and end.
12372
123732008-02-01 Jason Rumney <jasonr@gnu.org>
12374
12375 * w32font.c (w32font_driver): Add new fields.
12376
123772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12378
12379 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12380 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12381 (LIBES): Add @M17N_FLT_CFLAGS@.
12382
12383 * composite.c (compose_text): Don't treat the new style
12384 composition specially.
12385
12386 * emacs.c (main): Call syms_of_font unconditionally.
12387
12388 * font.h (FONT_ENTITY_NOT_LOADABLE)
12389 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12390 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12391 (struct font_driver): New member shape.
12392 (font_registry_charsets): Extern it.
12393 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12394 (font_otf_capability, font_drive_otf): Delete their externs.
12395
12396 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12397 (font_charset_alist, font_registry_charsets): Move from xfont.c
12398 and rename.
12399 (font_prop_validate_otf): New function.
12400 (font_property_table): Register it for QCotf.
12401 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12402 (font_drive_otf): Delete.
12403 (font_prepare_composition): New arg F. Adjust for the change of
12404 lispy gstring.
12405 (font_find_for_lface): New arg C.
12406 (font_load_for_face): Adjust for the change of font_find_for_lface.
12407 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12408 lispy gstring.
12409 (Ffont_shape_text): New function.
12410 (Fopen_font): If the font size is not given, use 12-pixel.
12411 (Ffont_at): New arg STRING.
12412 (syms_of_font): Initalize font_charset_alist.
12413 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12414 conditionally.
12415
12416 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12417 fonts of the same font-spec. Change the format of RFONT-DEF.
12418 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12419 Adjust for the change of RFONT-DEF.
12420 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12421
12422 * ftfont.h: New file.
12423
12424 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12425 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12426 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12427 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12428 font_otf_capability and font_drive_otf, set ftfont_shape.
12429 (ftfont_list): Adjust for the change of :otf property value.
12430 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12431 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12432 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
12433 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12434 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
12435 (otf_gstring, gstring, m17n_flt_initialized): New variables.
12436
12437 * w32term.c (x_draw_composite_glyph_string_foreground):
12438 Adjust for the change of lispy gstring.
12439
12440 * xdisp.c (handle_composition_prop): Adjust for the change of
12441 lispy gstring. Call a function for auto-composition with the
12442 third arg it->window.
12443 (fill_composite_glyph_string): Adjust for the change of lispy string.
12444 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
12445
12446 * xfaces.c (set_font_frame_param): Adjust for the change of
12447 font_find_for_lface.
12448
12449 * xfont.c (x_font_charset_alist): Move to font.c and rename.
12450 (xfont_registry_charsets): Likewise. Change caller.
12451 (syms_of_xfont): Don't handle x_font_charset_alist.
12452
12453 * xftfont.c: Include "ftfont.h".
12454 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12455 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12456 (xftfont_close) [HAVE_LIBOTF]: Close otf.
12457 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12458 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
12459 Set xftfont_driver.shape to xftfont_shape.
12460
12461 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12462 the change of lispy gstring.
12463
124642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12465
12466 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12467
124682008-02-01 Jason Rumney <jasonr@gnu.org>
12469
12470 * w32font.c (w32font_draw): Fill background manually.
12471
124722008-02-01 Jason Rumney <jasonr@gnu.org>
12473
12474 * font.c (Qfontp): Remove unused symbol.
12475 (QCantialias): New symbol.
12476 (syms_of_font): Define it.
12477 (font_property_table): Set a validator for QCantialias.
12478
12479 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
12480 Define if not already.
12481 (QCfamily): Share with xfaces.c.
12482 (Qstandard, Qsubpixel, Qnatural): New symbols.
12483 (syms_of_w32font): Define them. Don't define QCfamily here.
12484 (w32_antialias_type, lispy_antialias_type): New functions.
12485 (w32_enumfont_pattern_entity): New arg requested_font.
12486 Set antialias parameter if non-default was requested.
12487 (fill_in_logfont): Fill in lfQuality if :antialias specified.
12488
124892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12490
12491 * lread.c (read1): Undo the previous change.
12492
124932008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
12494
12495 * frame.c (Fdelete_frame): Call font_update_drivers only when
12496 USE_FONT_BACKEND is defined.
12497
124982008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12499
12500 * font.h (struct font_bitmap): New member bits_per_pixel.
12501 (struct font_driver): New members start_for_frame and end_for_frame.
12502 (struct font_data_list): New struct.
12503 (font_put_frame_data, font_get_frame_data): Extern them.
12504
12505 * frame.h (struct frame): New member font_data_list.
12506
12507 * font.c (font_update_drivers): Call driver->start_for_frame and
12508 driver->end_for_frame at proper timings.
12509 (font_put_frame_data, font_get_frame_data): New functions.
12510 (Ffont_spec): Add usage in the docstring.
12511
12512 * frame.c (make_frame): Initialize f->font_data_list to NULL.
12513 (Fdelete_frame): Call font_update_drivers.
12514
12515 * xftfont.c (struct xftface_info): Delete the member xft_draw.
12516 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
12517 (xftfont_get_xft_draw): New function.
12518 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
12519 (xftfont_end_for_frame): New function.
12520 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
12521
12522 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
12523 Change argument. Cache GCs in the per-frame data.
12524 (struct ftxfont_frame_data): New struct.
12525 (ftxfont_draw_bitmap): New arg gc_fore and flush.
12526 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
12527 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
12528 (ftxfont_end_for_frame): New function.
12529 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
12530
12531 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
12532
125332008-02-01 Kenichi Handa <handa@m17n.org>
12534
12535 * xselect.c (Vselection_coding_system)
12536 (Vnext_selection_coding_system): Delete them.
12537 (syms_of_xselect): Don't declare selection-coding-system and
12538 next-selection-coding-system. They are declared in select.el.
12539
125402008-02-01 Jason Rumney <jasonr@gnu.org>
12541
12542 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
12543
12544 * w32fns.c: Include imm.h.
12545 (get_composition_string_fn, get_ime_context_fn): New optional
12546 system functions.
12547 (globals_of_w32fns): Load them from imm32.dll.
12548 (ignore_ime_char): New flag.
12549 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
12550 WM_IME_ENDCOMPOSITION messages.
12551
12552 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
12553 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
12554
125552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12556
12557 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
12558 (READCHAR_REPORT_MULTIBYTE): New macro.
12559 (readchar): New 2nd arg MULTIBYTE.
12560 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
12561 Make symbol's name multibyte according to the multibyteness of the
12562 source.
12563
125642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12565
12566 * xfaces.c (face_for_overlay_string): Call lookup_face with
12567 correct arguments (fix of synching with the trunk).
12568
125692008-02-01 Kenichi Handa <handa@m17n.org>
12570
12571 * font.c (font_prop_validate_symbol, font_prop_validate_style)
12572 (font_prop_validate_non_neg, font_prop_validate_spacing):
12573 Delete argument prop_index.
12574 (font_property_table): Change arguments to validater. Change Callers.
12575 (font_lispy_object): Delete.
12576 (font_at): Use font_find_object instead fo font_lispy_object.
12577
125782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12579
12580 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
12581 and file names.
12582
125832008-02-01 Jason Rumney <jasonr@gnu.org>
12584
12585 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
12586 (font_matches_spec): Remove debug output.
12587 (add_font_entity_to_list): Avoid using substituted fonts.
12588
125892008-02-01 Jason Rumney <jasonr@gnu.org>
12590
12591 * doc.c (Fsnarf_documentation):
12592 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
12593
125942008-02-01 Miles Bader <miles@gnu.org>
12595
12596 * dispextern.h (struct glyph_row): Only define "clip" field if
12597 HAVE_WINDOW_SYSTEM is defined.
12598
125992008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12600
12601 Fix up multi-tty merge.
12602
12603 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
12604 and indentation.
12605
12606 * xfaces.c (free_realized_face, clear_face_gcs):
12607 Include font_done_for_face in the input_blocked section, just in case.
12608
12609 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
12610 (get_char_face_and_encoding): Undo last change and remove the *other*
12611 duplicate definition (i.e. keep the one that's better scoped and that
12612 includes code for the font-backend).
12613
12614 * terminal.c (create_terminal): Default keyboard_coding to
12615 `no-conversion' and terminal_coding to `undecided'.
12616
12617 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
12618
12619 * fontset.c (free_realized_fontsets): Check that the table entry does
12620 contain a fontset before trying to compare it to `base'.
12621
12622 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
12623 syms_of_charset, and syms_of_coding earlier because init_window_once
12624 now needs Vcoding_system_hash_table to be setup.
12625
12626 * coding.h (default_buffer_file_coding): Remove.
12627
12628 * coding.c (default_buffer_file_coding): Remove.
12629 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
12630 than ->symbol, and use the terminal-local coding system.
12631 (syms_of_coding): Don't setup the coding-systems that are not
12632 terminal-local.
12633 (Fdefine_coding_system_internal): Use XCAR/XCDR.
12634
12635 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
12636 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
12637
12638 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
12639 in chartab.c and were re-added here by mistake.
12640 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
12641
12642 * doc.c (Fsnarf_documentation):
12643 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
12644 src to etc.
12645
12646 * ChangeLog.10: Add mistakenly removed entry.
12647
126482008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
12649
12650 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
12651
126522008-02-01 Miles Bader <miles@gnu.org>
12653
12654 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
12655 Add extra args to FACE_FOR_CHAR.
12656
126572008-02-01 Kenichi Handa <handa@m17n.org>
12658
12659 * keymap.c (where_is_internal_1): If key is a cons, store the copy
12660 in sequence.
12661
12662 * chartab.c (map_sub_char_table, map_char_table): If the range
12663 contains just one character, call the function with that character
12664 even if the depth is not 3.
12665
126662008-02-01 Jason Rumney <jasonr@gnu.org>
12667
12668 * w32font.c (w32font_text_extents): Calculate metrics for the
12669 whole string.
12670
126712008-02-01 Jason Rumney <jasonr@gnu.org>
12672
12673 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
12674
126752008-02-01 Jason Rumney <jasonr@gnu.org>
12676
12677 * w32term.c (x_set_glyph_string_clipping): Use
12678 get_glyph_string_clip_rects.
12679 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12680 Adjust for the change of struct glyph_string.
12681
12682 * w32font.c (w32font_draw): Do clipping here.
12683
126842008-02-01 Kenichi Handa <handa@m17n.org>
12685
12686 * xftfont.c (xftfont_draw): Adjust for the change of struct
12687 glyph_string.
12688
12689 * xterm.c (x_set_glyph_string_clipping): Use
12690 get_glyph_string_clip_rects.
12691 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12692 Adjust for the change of struct glyph_string.
12693
12694 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
12695 the resulting clip(s}.
12696 (expose_overlaps): Add arg r. Change callers. Set it to
12697 row->clip temporarily.
12698 (expose_window): Redraw rows overlapping the exposed area.
12699
12700 * dispextern.h (struct glyph_row): New member clip.
12701 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
12702 clip_height, new member clip, and num_clips.
12703
127042008-02-01 Kenichi Handa <handa@m17n.org>
12705
12706 * data.c (Fchar_or_string_p): Fix docstring.
12707
127082008-02-01 Kenichi Handa <handa@m17n.org>
12709
12710 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
12711 create a temporary XftDraw object.
12712
127132008-02-01 Kenichi Handa <handa@m17n.org>
12714
12715 * font.c (Ffontp): Fix docstring.
12716
12717 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
12718 strong evidence of ISO-2022.
12719
127202008-02-01 Kenichi Handa <handa@m17n.org>
12721
12722 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
12723 SYNTAX_ENTRY_FOLLOW_PARENT.
12724
127252008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12726
12727 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
12728 its type.
12729 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
12730 Update to the new type of weak_hash_tables and next_weak.
12731
12732 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
12733 a plain C pointer to Lisp_Hash_Table.
12734
12735 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
12736 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
12737 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
12738 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
12739 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
12740 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
12741 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
12742 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
12743 (GC_EQ): Remove since they've been identical to their non-GC_
12744 alter-egos ever since the markbit was eradicated.
12745
12746 * alloc.c:
12747 * buffer.c:
12748 * buffer.h:
12749 * data.c:
12750 * fileio.c:
12751 * filelock.c:
12752 * fns.c:
12753 * frame.h:
12754 * lisp.h:
12755 * macterm.c:
12756 * print.c:
12757 * process.c:
12758 * w32fns.c:
12759 * w32menu.c:
12760 * w32term.c:
12761 * xfns.c:
12762 * xmenu.c:
12763 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
12764
127652008-02-01 Kenichi Handa <handa@m17n.org>
12766
12767 * chartab.c (map_sub_char_table): Make it work for the top-level
12768 char-table. Fix handling of parent char-table.
12769 (map_char_table): Adjust for the above change.
12770
127712008-02-01 Jason Rumney <jasonr@gnu.org>
12772
12773 * w32font.c (Qgdi): Rename from Qw32.
12774
127752008-02-01 Jason Rumney <jasonr@gnu.org>
12776
12777 * w32bdf.c (get_quoted_string): Make function static.
12778
127792008-02-01 Kenichi Handa <handa@m17n.org>
12780
12781 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
12782 bigger ascent and descent than those of the font, use them as
12783 font's ascent and descent.
12784
127852008-02-01 Kenichi Handa <handa@m17n.org>
12786
12787 * Makefile.in (${lispsource}international/charprop.el): Move this
12788 target within "#ifdef HAVE_UNIDATA" and "#endif".
12789
127902008-02-01 Kenichi Handa <handa@m17n.org>
12791
12792 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
12793 (shortlisp): Add ../lisp/language/tai-viet.el.
12794
127952008-02-01 Ulrich Mueller <ulm@gentoo.org>
12796
12797 * Makefile.in (${lispsource}international/charprop.el): Depend on
12798 temacs${EXEEXT}.
12799
128002008-02-01 Jason Rumney <jasonr@gnu.org>
12801
12802 * w32font.c (w32font_close): Delete the GDI font object.
12803
12804 * w32menu.c: Include character.h.
12805
12806 * w32proc.c: Likewise.
12807
12808 * w32select.c: Likewise.
12809
12810 * makefile.w32-in (w32proc.o): Depend on character.h.
12811
128122008-02-01 Jason Rumney <jasonr@gnu.org>
12813
12814 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
12815
12816 * w32menu.c (syms_of_w32menu): Likewise.
12817
12818 * w32proc.c (syms_of_ntproc): Likewise.
12819
12820 * w32select.c (syms_of_w32select): Likewise.
12821
12822 * w32term.c (syms_of_w32term): Likewise.
12823
128242008-02-01 Jason Rumney <jasonr@gnu.org>
12825
12826 * w32font.c (w32font_draw): Delete brush after using it.
12827
128282008-02-01 Jason Rumney <jasonr@gnu.org>
12829
12830 * w32font.c (w32font_open): Don't set font_idx.
12831 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
12832 to font settings.
12833 (w32font_draw): Fill background explicitly.
12834
128352008-02-01 Jason Rumney <jasonr@gnu.org>
12836
12837 * w32term.c (w32_initialize): Don't call w32font_initialize.
12838
12839 * w32font.c (w32font_info): Remove subranges.
12840 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
12841 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
12842 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
12843 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
12844 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
12845 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
12846 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
12847 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
12848 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
12849 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
12850 New symbols.
12851 (font_callback_data): New struct.
12852 (w32font_list, w32font_match): Use it.
12853 (w32font_open): Don't populate subranges.
12854 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
12855 (w32font_encode_char): Always return unicode code-point as-is.
12856 (w32font_text_extents): Supply a transformation matrix to
12857 GetGlyphOutline. Never look up by glyph index. Avoid looping
12858 twice. Use unicode version of GetTexExtentPoint32 instead of
12859 glyph index version.
12860 (set_fonts_frame): Remove.
12861 (w32_enumfont_pattern_entity): Add frame parameter, use it to
12862 set frame parameter. Use backward compatible fake foundries.
12863 Save generic family in extra slot under QCfamily. Make width slot
12864 constant. Save QCspacing value. Save list of scripts instead of
12865 binary subranges.
12866 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
12867 (add_font_entity_to_list): Use font_callback_data struct. Filter
12868 unwanted fonts.
12869 (add_one_font_entity_to_list): Use font_callback_data struct.
12870 (w32_registry): Default to iso10646_1.
12871 (fill_in_logfont): Use dpi from extra slot. Don't bother with
12872 string font registries. Don't fill in font name if it is a generic
12873 family name, fill family instead. Use spacing, family and script
12874 extra info to fill pitch, family and charset fields.
12875 (list_all_matching_fonts): Use font_callback_data struct.
12876 (unicode_range_for_char): Remove.
12877 (font_supported_scripts): New function.
12878 (w32font_initialize): Remove.
12879 (syms_of_w32font): Update which symbols are defined.
12880
128812008-02-01 Jason Rumney <jasonr@gnu.org>
12882
12883 * font.c (font_pixel_size): Reverse assq_no_quit args.
12884
12885 * w32term.h (FONT_WIDTH): Report max width, not average.
12886 (FONT_MAX_WIDTH): Remove.
12887 (FONT_AVG_WIDTH): New macro.
12888
12889 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
12890 redefinition of FONT_WIDTH.
12891
12892 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
12893 (w32_cache_char_metrics): Use FONT_WIDTH.
12894
12895 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
12896
128972008-02-01 Jason Rumney <jasonr@gnu.org>
12898
12899 * w32font.c (w32font_open): Make lfHeight negative.
12900
12901 * w32fns.c (x_default_font_parameter): Use new style font name.
12902 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
12903
129042008-02-01 Jason Rumney <jasonr@gnu.org>
12905
12906 * w32font.c (QCsubranges): New symbol.
12907 (w32font_open, w32font_has_char): Get subranges from subproperty
12908 of extra.
12909 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
12910 (syms_of_w32font): Define :subranges symbol.
12911
12912 * font.c (font_put_extra): Expose externally.
12913
12914 * font.h (font_put_extra): Move declaration from font.c.
12915
12916 * font.c (Ffont_get): Use font driver to determine otf capability.
12917 (adjust_anchor): Check if driver defines anchor_point before using.
12918
12919 * w32font.c (w32font_open): Handle size, height and pixel_size better.
12920 (w32font_draw): Use options.
12921 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
12922 Fix detection of truetype fonts.
12923 (registry_to_w32_charset): Handle charsets other than iso8859-1
12924 expressed as lisp symbols.
12925 (w32_registry): Express charset as lisp symbol.
12926 (fill_in_logfont): Reverse pixel and point height logic.
12927 Don't set width here. Set quality to default.
12928
12929 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
12930 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
12931
12932 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12933 Remove redundant loop and allocation.
12934
12935 * makefile.w32-in (font.o, w32font.o): New objects.
12936 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
12937 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
12938
12939 * xdisp.c (fill_composite_glyph_string): Make the first arg to
12940 STORE_XCHARB a valid l-value.
12941
12942 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
12943 calculations for non-Truetype fonts.
12944 (x_draw_glyph_string): Sync with xterm.c.
12945 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12946 Remove redundant code.
12947 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
12948
12949 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
12950 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
12951
12952 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
12953 (x_to_w32_charset, w32_to_x_charset): Expose externally.
12954
12955 * w32font.c: New file for w32 font backend.
12956
129572008-02-01 Kenichi Handa <handa@m17n.org>
12958
12959 * term.c: Don't include "buffer.h" twice.
12960
129612008-02-01 Kenichi Handa <handa@m17n.org>
12962
12963 * character.c (Funibyte_string): New function.
12964 (syms_of_character): Defsubr it.
12965
129662008-02-01 Jason Rumney <jasonr@gnu.org>
12967
12968 * w32term.c [USE_FONT_BACKEND]:
12969 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
12970 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
12971 (x_draw_glyph_string, x_draw_glyph_string_foreground)
12972 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
12973 (x_free_frame_resources): Sync with xterm.c.
12974
129752008-02-01 Andreas Schwab <schwab@suse.de>
12976
12977 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
12978 char-table size.
12979
129802008-02-01 Kenichi Handa <handa@m17n.org>
12981
12982 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
12983
129842008-02-01 Kenichi Handa <handa@m17n.org>
12985
12986 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
12987 font_otf_gpos, add font_drive_otf.
12988
12989 * fontset.c (fontset_find_font): Pay attention to font size
12990 specified for a font.
12991 (reorder_font_vector): Check contents of font_def.
12992
12993 * font.c (struct otf_list): Delete it.
12994 (otf_list): Make it a lisp variable.
12995 (otf_open): Use lispy otf_list.
12996 (generate_otf_features): Rename from parse_gsub_gpos_spec.
12997 (check_otf_features): New function.
12998 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12999 New functions.
13000 (font_drive_otf): New function merging font_otf_gsub and
13001 font_otf_gpos.
13002 (font_open_for_lface): New arg spec. Change argument order.
13003 (font_load_for_face): Adjust for the change of font_open_for_lface.
13004 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13005 Ffont_otf_gpos.
13006 (syms_of_font): Staticpro otf_list. Delete defsubr of
13007 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13008
13009 * xfaces.c (set_font_frame_param): Adjust for the change of
13010 font_open_for_lface.
13011
13012 * font.h (font_open_for_lface): Adjust prototype.
13013 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13014 member otf_drive.
13015 (font_otf_gsub, font_otf_gpos): Delete externs.
13016 (font_drive_otf): Extern it.
13017
130182008-02-01 Kenichi Handa <handa@m17n.org>
13019
13020 * font.c (font_at): If the window W is not on a window system,
13021 return Qnil.
13022
13023 * coding.c (produce_chars, encode_coding): Don't call
13024 insert_from_gap if no characters to produce.
13025
130262008-02-01 Kenichi Handa <handa@m17n.org>
13027
13028 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13029 Fclear_face_cache.
13030
13031 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13032
130332008-02-01 Miles Bader <miles@gnu.org>
13034
13035 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13036 Parse "--disable-font-backend" option.
13037 (standard_args): Add "--disable-font-backend" option.
13038
130392008-02-01 Kenichi Handa <handa@m17n.org>
13040
13041 * fontset.c (fontset_find_font): New function.
13042 (fontset_font): Use fontset_find_font.
13043 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13044 Register the specified font for all Latin characters.
13045 (new_fontset_from_font): Register the specified font for all Latin
13046 characters.
13047 (dump_fontset): For a realized fontset, include the base fontset
13048 name in the returned vector.
13049
130502008-02-01 Kenichi Handa <handa@m17n.org>
13051
13052 * character.h (CHAR_STRING): Cast C to unsigned on calling
13053 char_string.
13054
13055 * character.c (char_string): Type of arg C changed to unsigned.
13056 Signal an error if C is an invalid character code.
13057
13058 * editfns.c (general_insert_function, Fchar_to_string):
13059 Use CHARACTERP, not INTEGERP.
13060
130612008-02-01 Kenichi Handa <handa@m17n.org>
13062
13063 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13064 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13065
13066 * regex.c (analyse_first): Fix for multibyte characters in "case
13067 charset:" and "case categoryspec:".
13068
130692008-02-01 Andreas Schwab <schwab@suse.de>
13070
13071 * Makefile.in (LIBES): Move standard libraries to the end.
13072
130732008-02-01 Kenichi Handa <handa@m17n.org>
13074
13075 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13076 nonzero, don't shrink the buffer nextb.
13077
13078 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13079
13080 * coding.c (coding_alloc_by_making_gap): New arg offset.
13081 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13082 offset.
13083 (decode_coding_iso_2022): Update coding->safe_charsets.
13084 (decode_coding_gap): Temporarily set
13085 current_buffer->text->inhibit_shrinking to 1.
13086
130872008-02-01 Kenichi Handa <handa@m17n.org>
13088
13089 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13090 indexing into elements of s->cmp and s->char2b.
13091
130922008-02-01 Juanma Barranquero <lekktu@gmail.com>
13093
13094 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13095
130962008-02-01 Kenichi Handa <handa@m17n.org>
13097
13098 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13099 target_multibyte instead of multibyte.
13100 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13101 (bcmp_translate): Change the argument name from multibyte to
13102 target_multibyte.
13103
131042008-02-01 Kenichi Handa <handa@m17n.org>
13105
13106 These changes are to compile a regexp into a pattern that can be
13107 used both for multibyte and unibyte targets.
13108
13109 * Makefile.in (search.o): Depend on charset.h.
13110
13111 * character.c (multibyte_char_to_unibyte_safe): New function.
13112
13113 * search.c: Include "charset.h".
13114 (compile_pattern_1): Delete argument multibyte. Don't set
13115 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13116 (compile_pattern): Don't compare cp->buf.target_multibyte.
13117 Compare cp->buf.charset_unibyte.
13118 (compile_pattern): Set cp->buf.target_multibyte.
13119
13120 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13121
13122 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13123
13124 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13125 multibyte. Change callers.
13126 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13127 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13128 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13129 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13130 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13131 (regex_compile): Make the compiled pattern usable both for
13132 multibyte and unibyte targets.
13133 (analyse_first): Make the fastmap usable both for multibyte and
13134 unibyte targets.
13135 (TRANSLATE_VIA_MULTIBYTE): Delete.
13136 (re_match_2_internal): Pay attention to the case that the
13137 multibyteness of bufp and target may be different.
13138
131392008-02-01 Kenichi Handa <handa@m17n.org>
13140
13141 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13142 empty box occupy at least one column width.
13143
131442008-02-01 Miles Bader <miles@gnu.org>
13145
13146 * Makefile.in: Remove redundant HAVE_XFT clause.
13147
131482008-02-01 Kenichi Handa <handa@m17n.org>
13149
13150 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13151
131522008-02-01 Kenichi Handa <handa@m17n.org>
13153
13154 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13155 being nil.
13156
131572008-02-01 Kenichi Handa <handa@m17n.org>
13158
13159 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13160
131612008-02-01 Kenichi Handa <handa@m17n.org>
13162
13163 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13164
131652008-02-01 Kenichi Handa <handa@m17n.org>
13166
13167 * search.c (simple_search): Fix previous change.
13168
131692008-02-01 Kenichi Handa <handa@m17n.org>
13170
13171 * xftfont.c (ftfont_font_format): Extern declaration.
13172
13173 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13174
13175 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13176 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13177
13178 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13179 (ftfont_font_format): Fix previous change.
13180
13181 * font.h (Ffont_xlfd_name): EXFUN it.
13182
13183 * font.c (font_parse_xlfd): Fix the array size of `f'.
13184 (register_font_driver): Use EQ to compare driver->type.
13185
13186 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13187 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13188 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13189
131902008-02-01 Kenichi Handa <handa@m17n.org>
13191
13192 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13193 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13194
131952008-02-01 Kenichi Handa <handa@m17n.org>
13196
13197 * xfont.c (xfont_open): Set font->format.
13198
13199 * xftfont.c (xftfont_open): Set font->format.
13200
13201 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13202 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13203 (ftfont_open): Set font->format.
13204 (ftfont_font_format): New function.
13205
13206 * font.h (struct font): New member format.
13207
13208 * font.c (Qopentype): New variable.
13209 (syms_of_font): Defsym it.
13210 (Fquery_font): Change the format of the last element of the return
13211 value.
13212
132132008-02-01 Kenichi Handa <handa@m17n.org>
13214
13215 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13216 last resort.
13217
132182008-02-01 Kenichi Handa <handa@m17n.org>
13219
13220 * coding.c (detect_coding_charset): Fix detection of multi-byte
13221 charset.
13222
132232008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13224
13225 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13226
132272008-02-01 Kenichi Handa <handa@m17n.org>
13228
13229 * xdisp.c (get_next_display_element): Set it->face_id for the
13230 first component of a composition.
13231 (x_produce_glyphs): Check if the font is changed or not for composition.
13232
132332008-02-01 Kenichi Handa <handa@m17n.org>
13234
13235 * fontset.c (Qlatin): New variable.
13236 (syms_of_fontset): Define it as a lisp symbol.
13237 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13238
132392008-02-01 Kenichi Handa <handa@m17n.org>
13240
13241 * font.c (font_unparse_fcname): Pay attention to the case that
13242 some of font property is a null string.
13243
132442008-02-01 Kenichi Handa <handa@m17n.org>
13245
13246 * term.c: Include "composite.h".
13247 (encode_terminal_code): Output all components of composition.
13248 Check the size of encode_terminal_src.
13249 (produce_glyphs): For composition, call produce_composite_glyph.
13250 (append_composite_glyph, produce_composite_glyph): New functions.
13251
13252 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13253 is not found, get font_info from the current ascii face.
13254
132552008-02-01 Kenichi Handa <handa@m17n.org>
13256
13257 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13258 buffer-file-name to Qnil before calling insert_from_buffer.
13259
13260 * font.c (font_unparse_fcname): Pay attention to the case that
13261 foundry is a null string.
13262
132632008-02-01 Kenichi Handa <handa@m17n.org>
13264
13265 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13266
13267 * font.c (Qunicode_sip): New variable.
13268 (syms_of_font): Declare it as a Lisp symbol.
13269
13270 * font.h (Qunicode_sip): Extern it.
13271
132722008-02-01 Kenichi Handa <handa@m17n.org>
13273
13274 * composite.c (get_composition_id): Pay attention to TAB component.
13275
13276 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13277 TAB. Adjust for the change of s->char2b which always points to
13278 the first element of allocated memory.
13279
13280 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13281
13282 * xdisp.c (handle_composition_prop): Set it->c to the first
13283 non-TAB component.
13284 (fill_composite_glyph_string): Change argument.
13285 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13286 (x_produce_glyphs): Fix handling of left/right padding.
13287
132882008-02-01 Kenichi Handa <handa@m17n.org>
13289
13290 * coding.c (detect_coding_system): Fix for handling off
13291 inhibit_iso_escape_detection. Fix for the case that no coding
13292 system is defined for a specific coding category.
13293
132942008-02-01 Kenichi Handa <handa@m17n.org>
13295
13296 * font.c (font_matching_entity): Delete unused local var.
13297
13298 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13299 opening a font.
13300
13301 * fileio.c (Finsert_file_contents): On recovering a file, assume
13302 Unix-like eol.
13303 (choose_write_coding_system): On auto-saving a file, force
13304 Unix-like eol.
13305
13306 * coding.c (setup_coding_system): Fix setting of
13307 coding->common_flags based on eol_type.
13308 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13309 inherit from it.
13310
133112008-02-01 Kenichi Handa <handa@m17n.org>
13312
13313 * alloc.c (NSTATICS): Increas to 0x600.
13314
133152008-02-01 Kenichi Handa <handa@m17n.org>
13316
13317 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13318 (ftfont_list): Don't check :name property.
13319 (ftfont_match): New function.
13320 (ftfont_pattern_entity): If the pattern doesn't contain
13321 FC_SPACING, don't assume FC_MONO.
13322
13323 * font.h (struct font_driver): New member `match'.
13324 (font_update_drivers): Adjust prototype.
13325
13326 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13327 property of FONT.
13328 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13329 them unconditionally.
13330 (font_matching_entity): New function.
13331 (font_open_by_name): Try font_matching_entity if exact match is
13332 not found.
13333 (font_update_drivers): Delete the arg FONT. Return a list of
13334 actually used backends. Don't free faces, font caches here.
13335 Don't store data in frame parameters. Don't call x_set_font.
13336 (Ffont_spec): Store :name property as is.
13337 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13338 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13339 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13340 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13341 Call font->driver->otf_gsub instead of font_otf_gsub.
13342
13343 * frame.c (x_set_font_backend): Do more works that were done in
13344 font_update_drivers before.
13345
13346 * xfont.c (xfont_match): New function.
13347 (xfont_driver): Set xfont_driver.match to xfont_match.
13348 (xfont_draw): Set font in GC if necessary.
13349
13350 * ftxfont.c (ftxfont_match): New function.
13351 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13352
13353 * xftfont.c (xftfont_match): New function.
13354 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13355
133562008-02-01 Kenichi Handa <handa@m17n.org>
13357
13358 * font.h (struct font): New member scalable.
13359 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13360 (font_otf_gsub): Adjust prototype.
13361
13362 * font.c (font_otf_capability): Fix handling of the default langsys.
13363 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13364 Check the contents of SPEC.
13365 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13366 (check_gstring): New function.
13367 (REPLACEMENT_CHARACTER): New macro.
13368 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13369 glyph codes of GSTRING.
13370 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13371 (font_prepare_composition): Set cmp->glyph_len.
13372 (font_open_entity): Set font->scalable.
13373 (Ffont_get): Handle :otf property.
13374 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13375 functions.
13376 (Fquery_font): Use font->font.full_name.
13377 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13378 Sfont_otf_alternates.
13379
13380 * ftfont.c (ftfont_open): Set font->font.full_name and
13381 font->font.name properly. Fix calculation of font->font.height
13382 and font->min_width.
13383
13384 * ftxfont.c (ftxfont_create_gcs): New function.
13385 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13386 (ftxfont_draw_backgrond): Fix filling region.
13387 (ftxfont_default_fid): New function.
13388 (ftxfont_open): Set xfont->fid to the return value of
13389 ftxfont_default_fid.
13390 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13391 (ftxfont_done_face): Free only GCs that are created by
13392 ftxfont_create_gcs.
13393 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13394
13395 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13396 Clip to src->width, etc (not src->clip_XXX).
13397
13398 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13399 FontBackend frame parameter.
13400
134012008-02-01 Kenichi Handa <handa@m17n.org>
13402
13403 * font.h (struct font_driver_list): New member `on'.
13404 (Fclear_font_cache): EXFUN it.
13405 (font_update_drivers): Extern it.
13406
13407 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13408 (font_list_entities): Check driver_list->on.
13409 (register_font_driver): Initalize `on' member to 0.
13410 (font_update_drivers): New function.
13411 (Fclear_font_cache): Check driver_list->on.
13412
13413 * frame.h (Qfont_backend): Extern it.
13414 (x_set_font_backend): Extern it.
13415
13416 * frame.c (Qfont_backend): New variable.
13417 (frame_parms): New element for font-backend.
13418 (x_set_font_backend): New function.
13419
13420 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13421 FontBackend frame parameter.
13422 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13423 x_set_font_backend.
13424
13425 * xfont.c (xfont_list): Don't try listing by :name property if the
13426 name is not for XLFD.
13427
134282008-02-01 Kenichi Handa <handa@m17n.org>
13429
13430 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13431 (LGLYPH_SET_TO): New macros.
13432 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
13433 element of G is vector or not.
13434 (font_at): Extern it.
13435
13436 * font.c: Include window.h.
13437 (font_lispy_object): New function.
13438 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
13439 end of valid glyph.
13440 (font_close_object): Fix getting (struct font *).
13441 (font_at): New function.
13442 (Ffont_get): If FONT is a font-object, get entity from it.
13443 (Ffont_make_gstring): Initialize elements of glyphs with nil.
13444 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
13445 range check.
13446 (Ffont_at): New function.
13447 (syms_of_font): Defsubr Sfont_at.
13448
13449 * xdisp.c (it_props): Move the entry for Qauto_composed to just
13450 before the entry for Qcomposition.
13451 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
13452 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
13453 the font in gstring.
13454 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
13455 LGLYPH_FORM (g) to detect the end of valid glyph.
13456 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
13457 we are composing with gstring.
13458
13459 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
13460 Check if adjustment is vector or not.
13461
13462 * Makefile.in (font.o): Make it depends on window.h.
13463
134642008-02-01 Kenichi Handa <handa@m17n.org>
13465
13466 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13467 adjustment is vector or not.
13468
134692008-02-01 Miles Bader <miles@gnu.org>
13470
13471 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13472
134732008-02-01 Kenichi Handa <handa@m17n.org>
13474
13475 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
13476 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
13477 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
13478
13479 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
13480 (DEVICE_DELTA): Fix typo.
13481 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
13482 LGLYPH format.
13483
13484 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13485 the change of LGLYPH format.
13486
134872008-02-01 Kenichi Handa <handa@m17n.org>
13488
13489 * ftfont.c (ftfont_list): Fix typo.
13490 (ftfont_build_basic_charsets): Don't include letters with diacritics.
13491
134922008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13493
13494 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
13495
13496 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
13497 xftface_info is non-NULL.
13498
134992008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13500
13501 * ftfont.c (ftfont_list): Move misplaced #endif.
13502
135032008-02-01 Kenichi Handa <handa@m17n.org>
13504
13505 * ftfont.c (ftfont_list): Pay attention to the case that
13506 FC_CAPABILITY is not defined.
13507
135082008-02-01 Kenichi Handa <handa@m17n.org>
13509
13510 * xftfont.c (xftfont_open): Set charset related members to -1.
13511
13512 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
13513 QCname.
13514 (ftfont_open): Set charset related members to -1.
13515
13516 * fontset.c (Votf_script_alist): New variable.
13517 (syms_of_fontset): Initialize it.
13518 (fontset_font): Delete unused variable.
13519
13520 * fontset.h (Votf_script_alist): Extern it.
13521
13522 * font.c (font_find_for_lface): Optimize code.
13523
13524 * font.h (font_close_object, font_merge_old_spec): Extern them.
13525
135262008-02-01 Kenichi Handa <handa@m17n.org>
13527
13528 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
13529 (syms_of_font): Initialize them.
13530 (font_pixel_size): Allow float value in dpi.
13531 (font_prop_validate_type): Delete.
13532 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
13533 Change caller.
13534 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
13535 (font_prop_validate_extra): Delete.
13536 (font_prop_validate_spacing): New function.
13537 (font_property_table): Add elements for all known properties.
13538 (get_font_prop_index): Rename from check_font_prop_name. New
13539 argument FROM. Change caller.
13540 (font_prop_validate): Validate all known properties.
13541 (font_put_extra): Delete argument force. Change caller.
13542 (font_expand_wildcards): Make it static. Fix the way of shrinking
13543 the possible range.
13544 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
13545 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
13546 Change caller.
13547 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
13548 (font_parse_fcname): Delete argument merge. Fix parsing of point
13549 size. Don't validate properties values here. Change caller.
13550 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
13551 (font_open_by_name): Delete unused variable.
13552 (Ffont_spec): Likewise. Validate property values.
13553 (Ffont_match_p): New function.
13554
13555 * font.h (QCscalable): Extern it.
13556 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
13557
13558 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
13559
13560 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
13561 (xfont_list_pattern): New function.
13562 (xfont_list): Use xfont_list_pattern.
13563
135642008-02-01 Kenichi Handa <handa@m17n.org>
13565
13566 * font.h (Flist_fonts): EXFUN it.
13567
135682008-02-01 Jason Rumney <jasonr@gnu.org>
13569
13570 * w32term.c (w32_initialize): Add back smoothing_type and
13571 smoothing_enabled definitions.
13572
135732008-02-01 Kenichi Handa <handa@m17n.org>
13574
13575 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
13576 s->face->font on determining underline position.
13577
135782008-02-01 Kenichi Handa <handa@m17n.org>
13579
13580 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
13581 (font_has_char): Accept font-object too.
13582 (font_find_for_lface): Try at first with a size specified in face.
13583
135842008-02-01 Kenichi Handa <handa@m17n.org>
13585
13586 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
13587 font_open_by_name.
13588
135892008-02-01 Kenichi Handa <handa@m17n.org>
13590
13591 * font.h (QCspacing, QCdpi): Extern them.
13592 (enum font_spacing): New enum.
13593 (FONT_PIXEL_SIZE_QUANTUM): New macro.
13594
13595 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
13596 (QCspacing, QCdpi): New variables.
13597 (syms_of_font): Initialize them.
13598 (font_pixel_size): New function.
13599 (font_put_extra): New function.
13600 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
13601 in FONT_EXTRA.
13602 (font_parse_fcname): Handle enumerated values (e.g. bold).
13603 Fix handling font size. Add QCname property that contains only
13604 unknown properties.
13605 (font_score): Change argument. Change caller. Pay attention to
13606 FONT_PIXEL_SIZE_QUANTUM.
13607 (font_sort_entites, font_list_entities, font_find_for_lface)
13608 (font_open_for_lface, font_open_by_name): Fix handling of font size.
13609 (Ffont_spec): Add QCname property that contains only unknown properties.
13610
13611 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
13612 include weight in listing pattern, instead check weight of each
13613 listed font. Don't include scalable in pattern. Pay attention to
13614 FONT_PIXEL_SIZE_QUANTUM.
13615
136162008-02-01 Kenichi Handa <handa@m17n.org>
13617
13618 * font.c (font_parse_fcname): Fix parsing of point-size.
13619 (font_unparse_fcname): Produce symbolic names for style properties.
13620 (font_list_entities): Handle float size correctly.
13621 (font_open_by_name): Prefer `normal' property values if the name
13622 doesn't specify them.
13623
13624 * fontset.c (Finternal_char_font): Use font_get_name, not
13625 Ffont_xlfd_name.
13626
13627 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
13628 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
13629 pattern. Don't force scalable.
13630
13631 * xftfont.c (xftfont_open): For generating a name, start from
13632 96-byte buffer.
13633
136342008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13635
13636 * frame.h (x_new_fontset2): Fix prototype.
13637
136382008-02-01 Kenichi Handa <handa@m17n.org>
13639
13640 * font.h (struct font_driver): Delete member parse_name.
13641 (font_match_p, font_get_spec, font_parse_fcname)
13642 (font_unparse_fcname): Extern them.
13643 (font_get_name): Adjust prototype.
13644
13645 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
13646 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
13647 (font_expand_wildcards): Fix handling ENCODING field. Avoid
13648 unnecessary checks for weight, slant, and swidth.
13649 (font_parse_fcname): New function.
13650 (font_unparse_fcname): New function.
13651 (font_parse_name): New function.
13652 (font_match_p): New function.
13653 (font_get_name): Change return value to Lisp string.
13654 (font_get_spec): New function.
13655 (Qunspecified, Qignore_defface): Don't extern them.
13656 (font_find_for_lface): Assume that LFACE is fully specified.
13657 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
13658 object, use it for FACE.
13659 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
13660 driver->parse_name.
13661 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
13662
13663 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
13664 prototype.
13665
13666 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
13667 argument F. Don't call Fnew_fontset. Instead, directly call
13668 make_fontset.
13669
13670 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
13671
13672 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
13673 of x_new_fontset2.
13674
13675 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
13676 (Qsans__serif): New variables.
13677 (ftfont_generic_family_list): New variable.
13678 (syms_of_ftfont): Initialize the above variables.
13679 (ftfont_pattern_entity): Delete argument NAME.
13680 (ftfont_list_generic_family): New function.
13681 (ftfont_parse_name): Delete this function.
13682 (ftfont_list): Try generic family only when FcFontList found no font.
13683 (ftfont_list_family): Fix args to FcObjectSetBuild.
13684
13685 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
13686 object in attrs[LFACE_FONT_INDEX].
13687 (set_lface_from_font_name): Cancel all changes for font-backend.
13688 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
13689 function.
13690 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
13691 font object in QCfont attribute.
13692 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
13693 (realize_default_face) [USE_FONT_BACKEND]: Call
13694 set_lface_from_font_and_fontset.
13695
13696 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
13697 "fixed", and signal error here if no suitable font was found.
13698
13699 * xfont.c (xfont_parse_name): Delete this function.
13700
13701 * xftfont.c (xftfont_open): Change coding style of error
13702 handling. Generate fontconfig's fontname pattern.
13703
13704 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
13705 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
13706
13707 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
13708 Both args FONTSET and FONT_OBJECT must be existing ones.
13709
137102008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13711
13712 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
13713
137142008-02-01 Kenichi Handa <handa@m17n.org>
13715
13716 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
13717
13718 * font.h (struct font): Fix typo.
13719
13720 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
13721 XLFD_XXX_INDEX.
13722 (enum xlfd_field_mask): New enum.
13723 (intern_font_field): Changed argument. Change caller. If digits
13724 are followed by non-digits, return a symbol.
13725 (font_expand_wildcards): New function.
13726 (font_parse_xlfd): Fix wildcard handling.
13727 (Ffont_spec): If :name is specified, reflect the info in the other
13728 properties.
13729
13730 * ftfont.c (ftfont_pattern_entity): Fix typo.
13731 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
13732 locale.
13733
137342008-02-01 Kenichi Handa <handa@m17n.org>
13735
13736 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
13737
13738 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
13739 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
13740 registry doesn't specify encoding part.
13741 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
13742 (font_open_by_name): At first try parsing the name.
13743 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
13744 as Lisp symbols.
13745
13746 * fontset.c (reorder_font_vector): Pay attention to the case that
13747 the 3rd element of font_def is nil.
13748 (fontset_font): For the default fontset, append one more fontset
13749 elements for a script-based font specification. Don't add script
13750 attribute on finding a font.
13751 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
13752 font name.
13753 (fontset_ascii_font): If a font can't be opened, return nil.
13754
13755 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
13756 (ftfont_pattern_entity): New function.
13757 (ftfont_get_cache): Assume that freetype_font_cache is already
13758 initialized.
13759 (ftfont_list): Handle the case that a file is specified in font
13760 name. Use ftfont_pattern_entity to generate entities.
13761 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
13762 (syms_of_ftfont): Initialize freetype_font_cache.
13763
13764 * xftfont.c (xftfont_open): Make the font name fontconfig's
13765 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
13766 (xftfont_close): Free font->font.name if not NULL.
13767
13768 * xfont.c (xfont_list): If script is specified for a font, return
13769 null_vector.
13770 (xfont_list_family): Declare argument type.
13771
13772 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
13773 name, set LFACE_FONT (lface) to nil.
13774
13775 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
13776 return Qnil.
13777
137782008-02-01 Kenichi Handa <handa@m17n.org>
13779
13780 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
13781 (standard_args): Add "-enable-font-backend".
13782
137832008-02-01 Kenichi Handa <handa@m17n.org>
13784
13785 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
13786 (struct xftdraw_list, xftdraw_list): Delete them.
13787 (register_xftdraw, check_xftdraw): Delete them.
13788 (xftfont_prepare_face): Don't call register_xftdraw.
13789 (xftfont_done_face): Don't call check_xftdraw.
13790 (xftfont_draw): Get background color only when with_background is
13791 nonzero.
13792
13793 * xfont.c (xfont_encode_char): Fix calculation of char2b.
13794
137952008-02-01 Kenichi Handa <handa@m17n.org>
13796
13797 These changes are for the new font handling codes.
13798
13799 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
13800 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
13801 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
13802 (FONTSRC, FONTOBJ): New variables.
13803 (obj): Add $(FONTOBJ).
13804 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
13805 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
13806 @LIBOTF_LIBS@.
13807 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
13808 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
13809
13810 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
13811
13812 * character.h (Vscript_representative_chars): Extern it.
13813
13814 * character.c (Vscript_representative_chars): New variable.
13815 (syms_of_character): Declare it as a Lisp variable.
13816
13817 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
13818 enable_font_backend is nonzero, accept the composition method
13819 COMPOSITION_WITH_GLYPH_STRING.
13820
13821 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
13822 enumeration COMPOSITION_WITH_GLYPH_STRING.
13823
13824 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
13825 members clip_x, clip_y, clip_width, and clip_height.
13826 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
13827
13828 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
13829 --enable-font-backend. Call syms_of_font.
13830
13831 * fns.c (assoc_no_quit): New function.
13832
13833 * fontset.h (FONT_INFO_FROM_FACE): New macro.
13834 (face_for_font, new_fontset_from_font)
13835 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
13836
13837 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
13838 (fontset_font, fontset_ascii, face_for_char)
13839 (make_fontset_for_ascii_face, Ffont_info)
13840 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
13841 is nonzero, use font-backend mechanism.
13842 (find_font_encoding): Make it non-static.
13843 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
13844 New functions.
13845
13846 * frame.h (struct frame): New members resx and resy.
13847 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
13848 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
13849
13850 * frame.c [USE_FONT_BACKEND]: Include "font.h".
13851 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
13852
13853 * lisp.h (assoc_no_quit): Extern it.
13854
13855 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
13856 Through out the file, use FONT_INFO_FROM_FACE instead of
13857 FONT_INFO_FROM_ID, use get_per_char_metric instead of
13858 rif->per_char_metric.
13859 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
13860 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
13861 (get_glyph_face_and_encoding, fill_composite_glyph_string)
13862 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13863 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
13864 nonzero, use font-backend mechanism.
13865 (get_per_char_metric): New function.
13866
13867 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
13868 (set_lface_from_font_name)
13869 (set_font_frame_param, free_realized_face)
13870 (prepare_face_for_display, clear_face_gcs)
13871 (Finternal_set_font_selection_order, realize_x_face)
13872 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
13873 font-backend mechanism.
13874 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
13875 (load_face_font) [USE_FONT_BACKEND]: Abort.
13876 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
13877 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
13878
13879 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
13880 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
13881 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
13882 nonzero, register all available font drivers. Call
13883 x_default_font_parameter for deciding a font.
13884 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
13885
13886 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
13887 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
13888 (x_set_glyph_string_clipping_exactly)
13889 (x_compute_glyph_string_overhangs)
13890 (x_draw_glyph_string_foreground)
13891 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
13892 (x_free_frame_resources) [USE_FONT_BACKEND]: If
13893 enable_font_backend is nonzero, use font-backend mechanism.
13894 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
13895
138962008-02-01 Kenichi Handa <handa@m17n.org>
13897
13898 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
13899 system_eol_type.
13900 (syms_of_coding): Initialize system_eol_type.
13901
13902 * process.c (Fset_process_coding_system): Inherit system's eol
13903 format if necessary.
13904
139052008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13906
13907 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
13908
139092008-02-01 Kenichi Handa <handa@m17n.org>
13910
13911 * coding.c (decode_eol): Pay attention to buffer relocation in
13912 del_range_2.
13913 (decode_coding): Call decode_eol before restoring undo_list.
13914
139152008-02-01 Kenichi Handa <handa@m17n.org>
13916
13917 * charset.c (Fdefine_charset_internal): Fix setting of
13918 emacs_mule_bytes.
13919
139202008-02-01 Kenichi Handa <handa@m17n.org>
13921
13922 * keyboard.c (read_char): Check if C is a character or not before
13923 looking up Vkeyboard_translate_table.
13924
139252008-02-01 Kenichi Handa <handa@m17n.org>
13926
13927 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
13928 condition to terminate the loop.
13929
139302008-02-01 Kenichi Handa <handa@m17n.org>
13931
13932 * coding.c (produce_composition): Compare charbuf[i] instead of
13933 args[i] against 0.
13934 (Fterminal_coding_system): Use EQ to compare Lisp objects.
13935
139362008-02-01 Kenichi Handa <handa@m17n.org>
13937
13938 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
13939 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
13940 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
13941 detect_coding.
13942 (emacs_mule_char): Handle old style (Emacs 20) component character
13943 of a composition.
13944 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
13945 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
13946 composition rule.
13947 (decode_coding_emacs_mule): Handle invalid bytes correctly.
13948
139492008-02-01 Kenichi Handa <handa@m17n.org>
13950
13951 * coding.c (encode_coding_ccl): Allocate destination dynamically
13952 when necessary.
13953
139542008-02-01 Kenichi Handa <handa@m17n.org>
13955
13956 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
13957 the loop. When quitted, show a proper error message.
13958
139592008-02-01 Kenichi Handa <handa@m17n.org>
13960
13961 * xterm.c (x_set_glyph_string_clipping_exactly): Set
13962 src->clip_head and src->clip_tail temporarily instead of src->hl.
13963
13964 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
13965 character sequence.
13966 (Fccl_execute_on_string): Use ASET, not XSET.
13967
139682008-02-01 Kenichi Handa <handa@m17n.org>
13969
13970 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
13971
139722008-02-01 Kenichi Handa <handa@m17n.org>
13973
13974 * coding.c (decode_coding): Fix the condition of terminating the
13975 decoding loop.
13976
139772008-02-01 Kenichi Handa <handa@m17n.org>
13978
13979 * data.c (Faset): On setting a character bigger than 255 in a
13980 unibyte string, signal an error instead of make the string multibyte.
13981
139822008-02-01 Kenichi Handa <handa@m17n.org>
13983
13984 * charset.c (map_charset_chars): Fix for ascii-compatible charset
13985 made by a mapping table.
13986
139872008-02-01 Kenichi Handa <handa@m17n.org>
13988
13989 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
13990 not.
13991 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
13992 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
13993
13994 * xterm.c (x_draw_composite_glyph_string_foreground): Check
13995 s->face is NULL or not.
13996
139972008-02-01 Kenichi Handa <handa@m17n.org>
13998
13999 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14000 (x_draw_glyph_string): Fix drawing of right_overhang and
14001 left_overhang around/on cursor.
14002
14003 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14004
140052008-02-01 Kenichi Handa <handa@m17n.org>
14006
14007 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14008
140092008-02-01 Kenichi Handa <handa@m17n.org>
14010
14011 * coding.c (Fdefine_coding_system_internal)
14012 (Fdefine_coding_system_alias): Avoid a duplicated element in
14013 Vcoding_system_alist.
14014
140152008-02-01 Kenichi Handa <handa@m17n.org>
14016
14017 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14018
14019 * coding.c (Qcoding_system_define_form): New variable.
14020 (syms_of_coding): Intern and staticpro it.
14021 (Fcoding_system_p): Check Qcoding_system_define_form.
14022 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14023
14024 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14025 Fcoding_system_p.
14026 (CHECK_CODING_SYSTEM): If ID is not available, call
14027 Fcheck_coding_system.
14028 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14029 Try also Fcheck_coding_system.
14030
140312008-02-01 Kenichi Handa <handa@m17n.org>
14032
14033 * coding.c (code_conversion_restore): GCPRO arg.
14034
140352008-02-01 Kenichi Handa <handa@m17n.org>
14036
14037 * character.c (lisp_string_width): Check multibyteness of STRING.
14038
140392008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14040
14041 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14042 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14043 (decode_mac_font_name): Use decode_coding_c_string instead of
14044 decode_coding.
14045 (x_load_font): Initialize fontp->fontset to -1. Set
14046 fontp->encoding_type.
14047
140482008-02-01 Kenichi Handa <handa@m17n.org>
14049
14050 * search.c (search_buffer): Give up BM search on case-fold-search
14051 if one of a target character has a case-equivalence of different
14052 byte length even if that target charcter is an ASCII.
14053 (simple_search): Fix calculation of byte length of matched text.
14054 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14055
140562008-02-01 Kenichi Handa <handa@m17n.org>
14057
14058 * coding.c (decode_coding): Fix handling of invalid bytes.
14059
140602008-02-01 Kenichi Handa <handa@m17n.org>
14061
14062 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14063 Unicode characters.
14064
140652008-02-01 Kenichi Handa <handa@m17n.org>
14066
14067 * coding.c (encode_coding_object): If a pre-write-conversion
14068 function makes a new buffer, kill it.
14069
140702008-02-01 Kenichi Handa <handa@m17n.org>
14071
14072 * coding.c (QCascii_compatible_p): New variable.
14073 (syms_of_coding): Initialize it.
14074 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14075 calling string_char.
14076 (record_conversion_result): Add `default:' case.
14077 (coding_charset_list): Delete unused variable `coding_type'.
14078 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14079 property in the plist of the coding system.
14080 (Fcoding_system_put): Check QCascii_compatible_p.
14081
140822008-02-01 Miles Bader <miles@gnu.org>
14083
14084 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14085 removed calculation of frame `f', as it's now used.
14086
140872008-02-01 Kenichi Handa <handa@m17n.org>
14088
14089 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14090 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14091 (UNIDATA): New variable.
14092 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14093 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14094 $(RUN_TEMACS) unconditionally.
14095
140962008-02-01 Kenichi Handa <handa@m17n.org>
14097
14098 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14099 (admindir): New variable.
14100 ($(lispsource)international/charprop.el): New target.
14101
141022008-02-01 Miles Bader <miles@gnu.org>
14103
14104 * character.c (chars-in-region): Remove obsolete function.
14105 (syms_of_character): Remove its initialization.
14106
141072008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14108
14109 * w32select.c (validate_coding_system)
14110 (setup_windows_coding_system): New functions.
14111 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14112 setup_windows_coding_system.
14113 (setup_config, Fw32_get_clipboard_data): Use
14114 validate_coding_system.
14115 (Fx_selection_exists): Move call to setup_config to a place
14116 where signals are allowed.
14117
14118 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14119 (Fcheck_coding_system): Add declarations.
14120
141212008-02-01 Kenichi Handa <handa@m17n.org>
14122
14123 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14124
141252008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14126
14127 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14128 string as the second argument for x_new_fontset.
14129
141302008-02-01 Kenichi Handa <handa@m17n.org>
14131
14132 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14133 (encode_coding_object): Use safe_call instead of call2.
14134
141352008-02-01 Kenichi Handa <handa@m17n.org>
14136
14137 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14138
14139 * Makefile.in (lisp): Include charprop.el.
14140
141412008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14142
14143 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14144 Not sure if it's unnecessary.
14145
141462008-02-01 Steven Tamm <steventamm@mac.com>
14147
14148 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14149 some possibly unnecessary fontset checking code that crashed
14150 when creating a new frame.
14151
141522008-02-01 Kenichi Handa <handa@m17n.org>
14153
14154 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14155 lookup_face.
14156
14157 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14158
14159 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14160
141612008-02-01 Kenichi Handa <handa@m17n.org>
14162
14163 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14164 (coding_charset_list): New function.
14165
14166 * coding.h (coding_charset_list): Extern it.
14167
141682008-02-01 Kenichi Handa <handa@m17n.org>
14169
14170 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14171 concatenation of family and registry.
14172
141732008-02-01 Kenichi Handa <handa@m17n.org>
14174
14175 * character.h (BYTE8_STRING): Fix typo.
14176
14177 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14178 string to multibyte (sync to HEAD).
14179
14180 * casefiddle.c (casify_region): Handle changes in byte-length
14181 using replace_range_2 (sync to HEAD).
14182
141832008-02-01 Andreas Schwab <schwab@suse.de>
14184
14185 * chartab.c (map_char_table): GCPRO table and arg.
14186
141872008-02-01 Kenichi Handa <handa@m17n.org>
14188
14189 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14190 already at limit.
14191
141922008-02-01 Kenichi Handa <handa@m17n.org>
14193
14194 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14195 instead of fast_c_string_match_ignore_case.
14196 (find_font_encoding): Change argument to Lisp_Object. Use
14197 fast_string_match_ignore_case instead of
14198 fast_c_string_match_ignore_case. Change caller.
14199
142002008-02-01 Kenichi Handa <handa@m17n.org>
14201
14202 * xdisp.c (get_next_display_element): In unibyte case, decide to
14203 display in octal form by checking a character by
14204 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14205
14206 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14207
14208 * character.c (unibyte_has_multibyte_table): New variable.
14209
14210 * character.h (unibyte_has_multibyte_table): Extern it.
14211 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14212
142132008-02-01 Kenichi Handa <handa@m17n.org>
14214
14215 * coding.c (encode_coding_iso_2022): Fix handling of charset
14216 annotation.
14217
142182008-02-01 Kenichi Handa <handa@m17n.org>
14219
14220 * coding.c (setup_coding_system): If coding_system is nil, use
14221 Qundecided.
14222 (Fterminal_coding_system): Return nil if terminal coding system is
14223 `undecided'.
14224 (syms_of_coding): Define coding-system `undecided' here. Setup
14225 terminal_coding as `undecided'.
14226
142272008-02-01 Kenichi Handa <handa@m17n.org>
14228
14229 * xdisp.c (message_dolog, set_message_1): Call
14230 unibyte_char_to_multibyte with arg type int.
14231
14232 * lread.c (read1): Fix reading of a char-table.
14233
14234 * print.c (print_object): Include sub char-table in circularities
14235 detection.
14236
142372008-02-01 Kenichi Handa <handa@m17n.org>
14238
14239 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14240 Append the found sequences in car of ARGS instead of prepending.
14241
142422008-02-01 Kenichi Handa <handa@m17n.org>
14243
14244 * fileio.c (report_file_error): Make a unibyte string from
14245 strerror (errorno).
14246 (Fsubstitute_in_file_name): Fix the arg to
14247 unibyte_char_to_multibyte. It is evaluated twice.
14248
142492008-02-01 Kenichi Handa <handa@m17n.org>
14250
14251 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14252
142532008-02-01 Kenichi Handa <handa@m17n.org>
14254
14255 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14256 BOM is not found.
14257 (detect_coding, detect_coding_system): Optimization for ISO-2022
14258 when no 8-bit data is found.
14259
142602008-02-01 Jason Rumney <jasonr@gnu.org>
14261
14262 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14263
142642008-02-01 Kenichi Handa <handa@m17n.org>
14265
14266 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14267 CHARS.
14268
142692008-02-01 Steven Tamm <steventamm@mac.com>
14270
14271 * macterm.c (mac_encode_char): Add charset argument and update
14272 to use encoding_type.
14273 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14274 switch to pure fontset.
14275 (decode_mac_font_name): Temporarily remove decoding.
14276 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14277 (x_load_font): Temporarily remove encoding.
14278
142792008-02-01 Kenichi Handa <handa@m17n.org>
14280
14281 * xfaces.c (Fface_font): If frame is not on a window system,
14282 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14283 refer to face->font.
14284 (split_font_name_into_vector, build_font_name_from_vector)
14285 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14286 when HAVE_WINDOW_SYSTEM is defined.
14287
142882008-02-01 Kenichi Handa <handa@m17n.org>
14289
14290 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14291 (x_produce_glyphs): Fix setting of members of cmp in case
14292 cmp->glyph_len is zero.
14293
14294 * fontset.c (Fset_fontset_font): Fix docstring.
14295 (Ffontset_info): Make it backward compatible. New arg ALL.
14296
142972008-02-01 Kim F. Storm <storm@cua.dk>
14298
14299 * process.c (read_process_output): Grow decoding_buf when needed;
14300 this could cause a crash in allocate_string and compact_small_strings.
14301
143022008-02-01 Kenichi Handa <handa@m17n.org>
14303
14304 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14305
143062008-02-01 Kenichi Handa <handa@m17n.org>
14307
14308 * coding.c (setup_coding_system): Set coding->common_flags
14309 correctly for raw-text.
14310 (consume_chars): On encoding unibyte text by raw-text, don't check
14311 multibyte form.
14312 (encode_coding): On encoding by raw-text, never use translation tables.
14313
14314 * fileio.c (e_write): Short cut for the case of no encoding.
14315
143162008-02-01 Kenichi Handa <handa@m17n.org>
14317
14318 * coding.c (detect_coding, detect_coding_system): Delete unused
14319 variables.
14320
143212008-02-01 Kenichi Handa <handa@m17n.org>
14322
14323 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14324 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14325
143262008-02-01 Kenichi Handa <handa@m17n.org>
14327
14328 * coding.c (Ffind_coding_systems_region_internal): Include
14329 raw-text and no-conversion in the result.
14330
143312008-02-01 Kenichi Handa <handa@m17n.org>
14332
14333 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14334 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14335 FONT_DEF.
14336 (font_def_arg, add_arg, from_arg, to_arg): New args.
14337 (set_fontset_font): Change argument.
14338 (Fset_fontset_font): Fix for the case that TARGET is a script
14339 name and charset name.
14340 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14341
143422008-02-01 Kenichi Handa <handa@m17n.org>
14343
14344 * fontset.c (fontset_font): Rename from fontset_face. Change return
14345 value.
14346 (face_suitable_for_char_p, face_for_char): Adjust for the change
14347 of fontset_font.
14348 (make_fontset_for_ascii_face): Fix setting of the fontset element
14349 for ASCII.
14350 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14351 to get a font name.
14352 (Ffontset_info): Adjust for the change of fontset_font.
14353
14354 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14355
14356 * character.h (LEADING_CODE_LATIN_1_MIN)
14357 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14358
143592008-02-01 Kenichi Handa <handa@m17n.org>
14360
14361 * editfns.c (check_translation): New function.
14362 (Ftranslate_region_internal): Handle M:N mapping.
14363
143642008-02-01 Kenichi Handa <handa@m17n.org>
14365
14366 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14367
143682008-02-01 Kenichi Handa <handa@m17n.org>
14369
14370 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14371 goto invalid_code.
14372 (decode_coding_iso_2022): Fix handling of invalid designation.
14373
14374 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14375 after calling code_conversion_save.
14376
143772008-02-01 Kenichi Handa <handa@m17n.org>
14378
14379 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14380
14381 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14382
14383 * fontset.c: Include "intervals.h".
14384 (fontset_face): Fix comparing of Lisp_Objects.
14385 (free_face_fontset, new_fontset_from_font_name): Fix
14386 Lisp_Object/int mixup.
14387
14388 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14389
14390 * coding.c: Add many prototypes for static functions.
14391 (get_translation_table): Allow max_lookup to be NULL.
14392 (decode_coding, Ffind_coding_systems_region_internal)
14393 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14394 get_translation_table with max_lookup NULL.
14395
143962008-02-01 Kenichi Handa <handa@m17n.org>
14397
14398 * coding.c (get_translation_table): Declare it as Lisp_Object.
14399 (LOOKUP_TRANSLATION_TABLE): New macro.
14400 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14401 instead of CHAR_TABLE_REF.
14402
144032008-02-01 Kenichi Handa <handa@m17n.org>
14404
14405 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14406 annotation data format.
14407 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14408 Change arguments FROM and TO to single argument NCHARS. Change caller.
14409 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14410 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14411 (decode_coding_ccl, decode_coding_charset): Pay attention to
14412 coding->charbuf_used.
14413 (get_translation): New function.
14414 (produce_chars): New arguments translation_table and last_block.
14415 Translate characters here. Return number of carryover chars.
14416 Change caller.
14417 (produce_composition): New argument pos. Change caller.
14418 Adjust for the change of annotation data format.
14419 (produce_charset, produce_annotation): Likewise.
14420 (decode_coding, encode_coding): Don't call translate_chars.
14421 (consume_chars): New arg translation_table. Change caller.
14422 (translate_chars): Delete.
14423 (syms_of_coding): Make translation-table's number of extra slots 2.
14424
144252008-02-01 Kenichi Handa <handa@m17n.org>
14426
14427 * search.c (simple_search): Fix setting this_pos_byte in backward
14428 search.
14429
14430 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14431 byte sequence.
14432 (detect_coding_ccl): Fix setting of the variable valids.
14433
144342008-02-01 Kenichi Handa <handa@m17n.org>
14435
14436 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
14437
14438 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
14439
14440 * editfns.c (Ftranslate_region_internal): Rename from
14441 Ftranslate_region. Accept a char-table in TABLE.
14442 (syms_of_editfns): Defsubr Stranslate_region_internal.
14443
14444 * xfaces.c (set_lface_from_font_name): If a font is specified for
14445 a frame, generate a fontset from the font.
14446 (build_scalable_font_name): If the scalable font is requested for
14447 a specific size, don't change that size.
14448 (try_font_list): Try a scalable font also in the case that a
14449 pattern string is specified.
14450
144512008-02-01 Kenichi Handa <handa@m17n.org>
14452
14453 * xfaces.c (Fface_font): New optional arg CHARACTER.
14454
144552008-02-01 Kenichi Handa <handa@m17n.org>
14456
14457 * charset.h (CHARSET_OFFSET): New macro.
14458
144592008-02-01 Kenichi Handa <handa@m17n.org>
14460
14461 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
14462
14463 * fontset.c (fontset_face): Handle the case that repertory is a
14464 char-table.
14465 (find_font_encoding): Return nil for unknown encoding.
14466 (Fset_fontset_font): Ignore a font of unknown encoding.
14467
144682008-02-01 Kenichi Handa <handa@m17n.org>
14469
14470 * keymap.c (describe_vector): Handle default value of a char table.
14471
14472 * fontset.c (fontset_face): Handle fallback fonts correctly.
14473 (Ffontset_info): Return infomation about fallback fonts.
14474
144752008-02-01 Kenichi Handa <handa@m17n.org>
14476
14477 * fontset.c (FONTSET_DEFAULT): New macro.
14478 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
14479 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
14480 the case that it is nil.
14481 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
14482 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
14483
14484 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
14485 subset or superset.
14486
144872008-02-01 Kenichi Handa <handa@m17n.org>
14488
14489 * emacs.c (main): Call init_charset after syms_of_XXX.
14490
14491 * charset.c (Vcharset_map_directory): Delete.
14492 (Vcharset_map_path): New variable.
14493 (load_charset_map_from_file): Use Vcharset_map_path instead.
14494 (init_charset): Initialize Vcharset_map_path.
14495 (syms_of_charset): Delete declaration of "charset-map-directory",
14496 add declaration of "charset-map-path".
14497
144982008-02-01 Kenichi Handa <handa@m17n.org>
14499
14500 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
14501 ASCII only string.
14502
14503 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
14504
14505 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
14506 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
14507
145082008-02-01 Kenichi Handa <handa@m17n.org>
14509
14510 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
14511
14512 * coding.c (QCmnemonic, QCdefalut_char)
14513 (QCdecode_translation_table, QCencode_translation_table)
14514 (QCpost_read_conversion, QCpre_write_conversion): New variables.
14515 (get_translation_table): Return a list of translation tables if
14516 necessary.
14517 (decode_coding): Call get_translation_table with ENCODEP 0.
14518 (char_encodable_p): If translation_table is non-nil, always call
14519 translate_char.
14520 (Fdefine_coding_system_internal): Accept list of translation
14521 tables as :encode-translation-table and :decode-translation-table.
14522 (Fcoding_system_put): New function.
14523 (syms_of_coding): Declare new symbols. Defsubr
14524 Scoding_system_put.
14525 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
14526 typically JISX0212.
14527
14528 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
14529 when the charset is superset type.
14530
14531 * character.c (translate_char): Accept list of translation tables.
14532
145332008-02-01 Kenichi Handa <handa@m17n.org>
14534
14535 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
14536 (CODING_ATTR_TRANS_TBL): New macro.
14537
14538 * coding.c (get_translation_table): New function.
14539 (translate_chars): Fix the bug of skipping annotation data.
14540 (decode_coding, encode_coding): Utilize get_translation_table.
14541 (char_encodable_p, Funencodable_char_position): Translate char if
14542 necessary.
14543 (Ffind_coding_systems_region_internal)
14544 (Fcheck_coding_systems_region): Setup translation table for encode
14545 in a coding system attribute vector in advance.
14546 (Fdefine_coding_system_internal): Allow a symbol as translation
14547 table. For shift-jis type coding system, allow 4th charset.
14548
145492008-02-01 Kenichi Handa <handa@m17n.org>
14550
14551 * coding.c (decode_coding_sjis): Check the first byte rigidly.
14552
14553 * xdisp.c (get_next_display_element): Pass -1 as POS to
14554 FACE_FOR_CHAR if displaying a C-string.
14555
145562008-02-01 Kenichi Handa <handa@m17n.org>
14557
14558 * composite.c (get_composition_id): Handle xoff and yoff in a
14559 composition rule.
14560
14561 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
14562 (struct composition): New member lbearing and rbearing.
14563
14564 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
14565 (x_get_glyph_overhangs): Handle a composition glyph.
14566 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
14567
14568 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
14569 composition glyph.
14570
145712008-02-01 Kenichi Handa <handa@m17n.org>
14572
14573 * print.c: Include charset.h.
14574 (Vprint_charset_text_property): New variable.
14575 (Qdefault): Extern it.
14576 (PRINT_STRING_NON_CHARSET_FOUND)
14577 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
14578 (print_check_string_result): New variable.
14579 (print_check_string_charset_prop): New function.
14580 (print_prune_charset_plist): New variable.
14581 (print_prune_string_charset): New function.
14582 (print_object): Call print_prune_string_charset if
14583 Vprint_charset_text_property is not t.
14584 (print_interval): Print nothing if interval->plist is nil.
14585 (syms_of_print): Declare Vprint_charset_text_property as a lisp
14586 variable. Init and staticpro print_prune_charset_plist.
14587
145882008-02-01 Kenichi Handa <handa@m17n.org>
14589
14590 * fontset.c (new_fontset_from_font_name): Use the specified font
14591 for all characters in the new fontset.
14592
14593 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14594 OBJECT args.
14595
14596 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
14597 OBJECT args for composition too.
14598
14599 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14600 OBJECT args.
14601
146022008-02-01 Kenichi Handa <handa@m17n.org>
14603
14604 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
14605
14606 * fontset.c (reorder_font_vector): Adjust for the change of
14607 FONT_DEF format.
14608 (fontset_face): New arg id. Change caller.
14609 (face_for_char): New args pos and object.
14610 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
14611 (fs_query_fontset): Check NAME by Fassoc too.
14612 (Fset_fontset_font): Allow non-XLFD font name.
14613 (Ffontset_info): Adjust for the change of FONT_DEF format.
14614
14615 * fontset.h (face_for_char): Adjust prototype.
14616
14617 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
14618 (append_space, extend_face_to_end_of_line)
14619 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14620 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
14621
14622 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
14623 POS and OBJECT args.
14624
14625 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
14626 POS and OBJECT args.
14627
146282008-02-01 Jason Rumney <jasonr@gnu.org>
14629
14630 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
14631 of GlobalAlloc'ed memory.
14632
146332008-02-01 Kenichi Handa <handa@m17n.org>
14634
14635 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
14636
14637 * charset.h (charset_table_used): Delete extern.
14638
14639 * charset.c (charset_table_used): Make it static.
14640 (map_charset_chars): Fix args to c_function with.
14641
14642 * chartab.c (map_sub_char_table_for_charset): Fix args to
14643 c_function with.
14644
14645 * coding.h (enum coding_result_code): Delete
14646 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
14647
14648 * coding.c (Qinsufficient_source, Qinconsistent_eol)
14649 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
14650 (Vlast_code_conversion_error): New variables.
14651 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
14652 (ONE_MORE_BYTE): Record error if any instead of signaling an
14653 error. If non-ASCII multibyte char is found, return the negative
14654 value of the code. All callers changed to check it.
14655 (ONE_MORE_BYTE_NO_CHECK): Likewise.
14656 (record_conversion_result): New function. Change all codes setting
14657 coding->result to call this function.
14658 (detect_coding_utf_8, decode_coding_utf_8)
14659 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
14660 Don't use the local variable incomplete.
14661 (emacs_mule_char): Change the second arg to `const'.
14662 (decode_coding): Fix of flushing out unprocessed data.
14663 (make_conversion_work_buffer): Fix making of a work buffer.
14664 (decode_coding_object): Return coding->dst_object.
14665
14666 * fontset.c (set_fontset_font): Fix args.
14667
14668 * lisp.h (CHARACTERBITS): Define as 22.
14669
14670 * process.c (send_process): Be sure to set coding->src_multibyte.
14671
14672 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
14673
146742008-02-01 Kenichi Handa <handa@m17n.org>
14675
14676 * xdisp.c (handle_auto_composed_prop): Give limit to
14677 Fnext_single_char_property_change.
14678
146792008-02-01 Kenichi Handa <handa@m17n.org>
14680
14681 * composite.c (syms_of_composite): Don't make the composition hash
14682 table weak.
14683
14684 * fontset.c (Fset_fontset_font): Fix docstring.
14685
14686 * lisp.h (detect_coding_system): Adjust prototype.
14687
14688 * fileio.c (kill_workbuf_unwind): Delete this function.
14689 (Finsert_file_contents): Adjust the call of detect_coding_system.
14690 Get conversion_buffer by code_conversion_save. Use the macro
14691 CODING_MAY_REQUIRE_DECODING. After decoding, update
14692 coding_system.
14693
14694 * coding.h (make_conversion_work_buffer): Delete extern.
14695 (code_conversion_save): Extern it.
14696
14697 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
14698 (CODING_GET_INFO): Delete argument eol_type. Change callers.
14699 (decode_coding_utf_8): Don't do eol converion.
14700 (detect_coding_utf_16): Check coding->src_chars, not
14701 coding->src_bytes. Add heuristics for those that have no signature.
14702 (decode_coding_emacs_mule, decode_coding_iso_2022)
14703 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14704 Don't do eol converion.
14705 (adjust_coding_eol_type): Return a new coding system.
14706 (detect_coding): Don't detect eol. Fix for utf-16 detection.
14707 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
14708 each change.
14709 (decode_coding): Pay attention to undo_list. Do eol conversion for
14710 all types of coding-systems (if necessary).
14711 (Vcode_conversion_work_buf_list): Delete it.
14712 (Vcode_conversion_reused_workbuf): Rename from
14713 Vcode_conversion_reused_work_buf.
14714 (Vcode_conversion_workbuf_name): New variable.
14715 (reused_workbuf_in_use): New variable.
14716 (make_conversion_work_buffer): Delete the arg DEPTH.
14717 (code_conversion_restore): Change argument to cons.
14718 (code_conversion_save): Delete the argument BUFFER. Change callers.
14719 (detect_coding_system): New argument src_chars. Change callers.
14720 Fix for utf-16 detection.
14721 (init_coding_once): Don't use ISO_carriage_return.
14722 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
14723 reused_workbuf_in_use.
14724
147252008-02-01 Kenichi Handa <handa@m17n.org>
14726
14727 * keymap.c (store_in_keymap): Pay attention to the case that idx
14728 is a cons specifying a character range.
14729
147302008-02-01 Kenichi Handa <handa@m17n.org>
14731
14732 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
14733 HANDLED_RECOMPUTE_PROPS.
14734
14735 * coding.c (Fdefine_coding_system_internal): Fix checking of
14736 ascii compatibility.
14737
147382008-02-01 Kenichi Handa <handa@m17n.org>
14739
14740 * charset.c (find_charsets_in_text): Delete unused locale variable.
14741 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
14742
14743 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
14744 Resync charset_list to Vemacs_mule_charset_list.
14745
14746 * keymap.c (store_in_keymap): Pay attention to the case that idx
14747 is a cons specifying a character range.
14748
147492008-02-01 Kenichi Handa <handa@m17n.org>
14750
14751 * composite.c (update_compositions): Bind inhibit-read-only, etc
14752 to t before calling remove-list-of-text-properties.
14753
14754 * print.c (print_object): Always print ASCII chars as is.
14755
147562008-02-01 Kenichi Handa <handa@m17n.org>
14757
14758 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
14759
14760 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
14761 is a char table.
14762
147632008-02-01 Kenichi Handa <handa@m17n.org>
14764
14765 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
14766
147672008-02-01 Kenichi Handa <handa@m17n.org>
14768
14769 * xfaces.c (set_lface_from_font_name): Fix for the case that
14770 FONTNAME is not fontset name.
14771
147722008-02-01 Kenichi Handa <handa@m17n.org>
14773
14774 * fns.c (base64_encode_1): Fix previous change.
14775
147762008-02-01 Kenichi Handa <handa@m17n.org>
14777
14778 * fontset.c (set_fontset_font): New function.
14779 (Fset_fontset_font): If a font is specified for a charset, use
14780 map_charset_chars to store the font spec in a fontset.
14781
147822008-02-01 Kenichi Handa <handa@m17n.org>
14783
14784 * fontset.c (fontset_face): Create a fallback fontset on demand.
14785 (make_fontset): Don't create a fallback fontset here.
14786 (free_face_fontset): Free a fallback fontset (if any) too.
14787 (n_auto_fontsets): Delete this variable.
14788 (auto_fontset_alist): New variable.
14789 (new_fontset_from_font_name): Check auto_fontset_alist.
14790 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
14791 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
14792 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
14793 Defsubr Sfontset_list_all.
14794
147952008-02-01 Kenichi Handa <handa@m17n.org>
14796
14797 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
14798
147992008-02-01 Kenichi Handa <handa@m17n.org>
14800
14801 * fontset.c (Fnew_fontset): Check NAME more rigidly.
14802
148032008-02-01 Kenichi Handa <handa@m17n.org>
14804
14805 * editfns.c (Fgoto_char): Fix docstring.
14806
148072008-02-01 Kenichi Handa <handa@m17n.org>
14808
14809 * insdel.c (insert_from_gap): Adjust intervals correctly.
14810
148112008-02-01 Jason Rumney <jasonr@gnu.org>
14812
14813 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
14814 (pfnGetFontUnicodeRanges): New dynamically loaded function.
14815 (w32_initialize): Try to load it.
14816 (x_get_font_repertory): Use it if available.
14817 (w32_encode_char): Add shortcut for unicode output.
14818
14819 * w32fns.c (w32_load_system_font): Default charset to -1.
14820 (x_to_w32_charset): Match all fonts for unicode.
14821 (w32_to_x_charset): New parameter matching. Don't return partial
14822 or wildcard charsets.
14823 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
14824 (w32_codepage_for_font): Return CP_UNICODE for unicode.
14825 (w32_to_x_font): Match charset to real charset.
14826 (enum_font_cb2): Always list unicode versions.
14827
14828 * makefile.w32-in (temacs): Increase EMHEAP.
14829
148302008-02-01 Jason Rumney <jasonr@gnu.org>
14831
14832 * w32term.c (w32_encode_char): New charset parameter.
14833 font_info.encoding becomes encoding_type.
14834 (x_get_font_repertory): New function. Warning: stub only!
14835 (x_new_font): Return quickly if font already set.
14836 (x_new_fontset): fontsetname parameter is Lisp_Object.
14837 Use new fs_query_fontset. Try new_fontset_from_font_name.
14838 Use fontset_name for return value.
14839
14840 * w32term.h: Declare x_get_font_repertory.
14841
14842 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
14843 place of find_charset_in_text. Use encode_coding_object in place
14844 of encode_coding.
14845 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
14846 decode_coding.
14847
14848 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
14849 of x_new_fontset.
14850 (w32_load_system_font): Initialize charset as unicode.
14851 font_info.encoding becomes encoding_type.
14852 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
14853 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
14854 (syms_of_w32fns): Set get_font_repertory_func.
14855
14856 * w32console.c: Include character.h. Use terminal_encode_buffer
14857 from term.c.
14858 (write_glyphs): Use new version of encode_terminal_code. Use
14859 encode_coding_object in place of encode_coding.
14860
14861 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
14862 encoding becomes encoding_type.
14863
14864 * term.c (terminal_encode_buffer): Make externally visible.
14865
14866 * makefile.w32-in: Add character.h dependancies.
14867 (character.o, chartab.o): New targets.
14868
148692008-02-01 Kenichi Handa <handa@m17n.org>
14870
14871 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
14872 CODING_ID_EOL_TYPE.
14873
148742008-02-01 Andreas Schwab <schwab@suse.de>
14875
14876 * coding.c (produce_chars): Revert last change.
14877
148782008-02-01 Kenichi Handa <handa@m17n.org>
14879
14880 * charset.h (charset_unicode): Extern it.
14881
14882 * charset.c (string_xstring_p): Check by (C >= 0x100).
14883 (find_charsets_in_text): Change format of the arc CHARSETS. New
14884 arg MULTIBYTE.
14885 (Ffind_charset_region, Ffind_charset_string): Adjust for the
14886 change of find_charsets_in_text.
14887 (Fsplit_char): Fix doc. Never return unknown.
14888
14889 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
14890
14891 * coding.c (Fdefine_coding_system_alias): Update
14892 Vcoding_system_list.
14893
14894 * fontset.c (load_font_get_repertory): Pay attention to the case
14895 that ENCODING of a font is specified by a char-table.
14896
14897 * xterm.c (x_get_font_repertory): Handle the case that the
14898 encoding of font is other than Unicode.
14899
149002008-02-01 Kenichi Handa <handa@m17n.org>
14901
14902 * term.c (encode_terminal_code): Don't handle glyph-table. Check
14903 if a character is encodable by the terminal coding system. If
14904 not, produces proper number of `?'s. Update
14905 terminal_encode_buffer and terminal_encode_buf_size if necessary.
14906 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
14907
149082008-02-01 Kenichi Handa <handa@m17n.org>
14909
14910 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
14911 variables.
14912 (encode_terminal_code): Change argument. Encode multiple
14913 characters at once. Store the result of encoding in
14914 terminal_encode_buffer.
14915 (write_glyphs, insert_glyphs): Adjust for the change of
14916 encode_terminal_code.
14917 (term_init): Initialize terminal_encode_buffer and
14918 terminal_encode_buf_size.
14919
14920 * coding.c (consume_chars): If coding->src_object is nil, don't
14921 check annotation.
14922
149232008-02-01 Kenichi Handa <handa@m17n.org>
14924
14925 * character.c (char_string): Use ASCII_CHAR_P instead of
14926 SINGLE_BYTE_CHAR_P.
14927
149282008-02-01 Kenichi Handa <handa@m17n.org>
14929
14930 * xdisp.c (handle_auto_composed_prop): Check if the last
14931 characters of auto-composed region is newly composed with the
14932 following characters.
14933 (handle_composition_prop): Fix checking of point being inside
14934 composition.
14935
149362008-02-01 Kenichi Handa <handa@m17n.org>
14937
14938 * fns.c (concat): Don't change multibyteness of the result by
14939 concatenating an 8-bit character.
14940
14941 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
14942 multibyteness of the result when newelt is an 8-bit character.
14943
149442008-02-01 Dave Love <fx@gnu.org>
14945
14946 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
14947 EMACS_INT.
14948
14949 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
14950
14951 * xfaces.c (face_numeric_value): Declare dim size_t.
14952 (Finternal_lisp_face_equal_p): Remove unused f.
14953
14954 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
14955 (MATRIX_ROW): Remove unused vars.
14956 (draw_glyphs, x_insert_glyphs, fast_find_position)
14957 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
14958 byte/char counts.
14959
14960 * regex.c (regex_compile): Remove unused var.
14961
14962 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14963
14964 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14965 (Faccessible_keymaps, where_is_internal): Remove unused vars.
14966
14967 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
14968
14969 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
14970
14971 * fileio.c (Fwrite_region): Remove unused var.
14972
14973 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
14974 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
14975
14976 * composite.c (Fremove_list_of_text_properties): Declare.
14977
14978 * coding.c (inhibit_pre_post_conversion): Remove (unused).
14979 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
14980 (coding_inherit_eol_type): Remove unused attrs.
14981 (detect_coding): Cast arg of detect_eol.
14982
14983 * charset.c (syms_of_charset): Remove unused var p.
14984 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
14985 byte/char counts.
14986
14987 * casetab.c (set_case_table): Remove unused var.
14988
14989 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
14990 unused vars.
14991
149922008-02-01 Dave Love <fx@gnu.org>
14993
14994 * xterm.c (x_bitmap_mask): Declare.
14995
149962008-02-01 Dave Love <fx@gnu.org>
14997
14998 * xterm.c (x_term_init): Fix type error.
14999
15000 * lisp.h: Add Funibyte_char_to_multibyte.
15001
15002 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15003 (Fset_coding_system_priority): Doc fix.
15004
15005 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15006
15007 * indent.c (check_composition): Make start and end EMACS_INT.
15008
15009 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15010
15011 * xdisp.c (handle_composition_prop, check_point_in_composition):
15012 Make buffer positions EMACS_INT.
15013
15014 * composite.c (find_composition, run_composition_function)
15015 (update_compositions, Ffind_composition_internal): Make buffer
15016 positions EMACS_INT.
15017
15018 * composite.h (find_composition, update_compositions): Make
15019 position args EMACS_INT.
15020
15021 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15022
15023 * intervals.c (get_property_and_range):
15024 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15025
15026 * unexalpha.c: Don't include varargs.h.
15027
150282008-02-01 Dave Love <fx@gnu.org>
15029
15030 * coding.h (ENCODE_UTF_8): New.
15031
15032 * Makefile.in (gtkutil.o): Depend on coding.h.
15033
15034 * coding.c (Fset_coding_system_priority): Doc fix.
15035
150362008-02-01 Kenichi Handa <handa@m17n.org>
15037
15038 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15039 the case of auto saving.
15040
150412008-02-01 Andreas Schwab <schwab@suse.de>
15042
15043 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15044 `range' from GC.
15045
150462008-02-01 Kenichi Handa <handa@m17n.org>
15047
15048 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15049
150502008-02-01 Kenichi Handa <handa@m17n.org>
15051
15052 * fileio.c (choose_write_coding_system): Return a decided coding system.
15053 (Fwrite_region): Set Vlast_coding_system_used to the return value
15054 of choose_write_coding_system.
15055
150562008-02-01 Kenichi Handa <handa@m17n.org>
15057
15058 * charset.c (Fset_charset_priority): Pay attention to duplicated
15059 arguments.
15060
15061 * coding.c (QCcategory): New variable.
15062 (syms_of_coding): Defsym it. Set all elements of
15063 Vcoding_category_table and their symbol values.
15064 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15065 coding-category-XXX, and coding-category-list.
15066 (Fdefine_coding_system_internal): Add category in the plist.
15067
150682008-02-01 Kenichi Handa <handa@m17n.org>
15069
15070 * callproc.c (Fcall_process): Handle carryover correctly.
15071
15072 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15073 (raw_text_coding_system): Check NILP (coding_system).
15074 (coding_inherit_eol_type): Check NILP (coding_system) and
15075 NILP (parent).
15076 (consume_chars): Fix for the case of raw-text.
15077
15078 * process.c (read_process_output): Handle carryover correctly.
15079
150802008-02-01 Dave Love <fx@gnu.org>
15081
15082 * regex.c (re_search_2): Fix last change.
15083
150842008-02-01 Kenichi Handa <handa@m17n.org>
15085
15086 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15087 target_multibyte. Even in a unibyte case, return a converted
15088 multibyte char.
15089 (GET_CHAR_AFTER): New macro.
15090 (PATFETCH): Translate via multibyte char.
15091 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15092 (SETUP_MULTIBYTE_RANGE): New macro.
15093 (regex_compile): Setup compiled code so that its multibyteness
15094 matches that of a target. Fix the handling of "[X-YZ]" using
15095 SETUP_MULTIBYTE_RANGE.
15096 (analyse_first) <charset>: For filling fastmap for all multibyte
15097 characters, don't check by BASE_LEADING_CODE_P.
15098 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15099 the same as RE_MULTIBYTE_P (bufp) now.
15100 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15101 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15102 (TRANSLATE_VIA_MULTIBYTE): New macro.
15103 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15104 It is the same as RE_MULTIBYTE_P (bufp) now.
15105 <exactn>: Translate via multibyte.
15106 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15107 translate it.
15108 <charset, charset_not>: Fetch a character by
15109 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15110 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15111 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15112 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15113 by GET_CHAR_AFTER.
15114 (bcmp_translate): Likewise.
15115
15116 * search.c (compile_pattern): Check the member target_multibyte,
15117 not the member multibyte of buf.
15118
15119 * lread.c (read1): While reading a string, set force_singlebyte
15120 and force_multibyte correctly.
15121
15122 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15123 up of unibyte_to_multibyte_table.
15124
151252008-02-01 Kenichi Handa <handa@m17n.org>
15126
15127 * coding.c (setup_coding_system): If coding has
15128 post-read-conversion or pre-write-conversion, set
15129 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15130 respectively.
15131 (decode_coding_gap): Run post-read-conversion if any.
15132
15133 * fileio.c (Finsert_file_contents): Even if we read into a
15134 unibyte buffer, check if we must decode the result or not.
15135
151362008-02-01 Kenichi Handa <handa@m17n.org>
15137
15138 * coding.c (make_conversion_work_buffer): Change the work buffer
15139 name to the same one as that of Emacs 21.
15140
151412008-02-01 Kenichi Handa <handa@m17n.org>
15142
15143 * coding.h (make_conversion_work_buffer): Adjust prototype.
15144 (code_conversion_restore): Don't extern it.
15145
15146 * coding.c (detected_mask): Delete unused variable.
15147 (decode_coding_iso_2022): Pay attention to the byte sequence of
15148 CTEXT extended segment, and retain those bytes as is.
15149 (decode_coding_ccl): Delete unused variable `valids'.
15150 (setup_coding_system): Delete unused variable `category'.
15151 (consume_chars): Delete unused variable `category'. Make it work
15152 for non-multibyte case.
15153 (make_conversion_work_buffer): Change argument.
15154 (saved_coding): Delete unused variable.
15155 (code_conversion_restore): Don't check saved_coding->destination.
15156 (code_conversion_save): New function.
15157 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15158 instead of record_unwind_protect.
15159 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15160 (detect_coding_system): Delete unused variable `mask'.
15161 (Fdefine_coding_system_internal): Delete unused variable id.
15162
15163 * fileio.c (kill_workbuf_unwind): New function.
15164 (Finsert_file_contents): On replacing, call
15165 make_conversion_work_buffer with correct args, and call
15166 record_unwind_protect with the first arg kill_workbuf_unwind.
15167
15168 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15169
151702008-02-01 Kenichi Handa <handa@m17n.org>
15171
15172 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15173 (fontset_add): Fix for the case that TO is less than TO1.
15174 (Ffontset_info): Don't use fallback fontset on checking the
15175 default fontset.
15176 (dump_fontset): New function for debugging.
15177
15178 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15179 coding_type is Qcharset.
15180
151812008-02-01 Kenichi Handa <handa@m17n.org>
15182
15183 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15184 (map_char_table): Don't inherit the value from the parent on
15185 initializing VAL. Adjust for the above change.
15186
151872008-02-01 Kenichi Handa <handa@m17n.org>
15188
15189 * coding.c (Qsignature, Qendian): Delete these variables.
15190 (syms_of_coding): Don't initialize them.
15191 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15192 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15193 detect_info->found.
15194 (decode_coding_utf_16): Don't detect BOM here.
15195 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15196 is NOT utf_16_without_bom.
15197 (setup_coding_system): For a coding system of type utf-16, check
15198 if the attribute :endian is Qbig or not (not nil or not), and set
15199 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15200 (detect_coding): If coding type is utf-16 and BOM detection is
15201 required, detect it.
15202 (Fdefine_coding_system_internal): For a coding system of type
15203 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15204
152052008-02-01 Kenichi Handa <handa@m17n.org>
15206
15207 * coding.c (coding_set_source): Fix for the case that the current
15208 buffer is different from coding->src_object.
15209 (decode_coding_object): Don't use the conversion work buffer if
15210 DST_OBJECT is a buffer.
15211
152122008-02-01 Dave Love <fx@gnu.org>
15213
15214 * lread.c (read_emacs_mule_char) [len==2]: Index
15215 emacs_mule_charset correctly.
15216
152172008-02-01 Dave Love <fx@gnu.org>
15218
15219 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15220 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15221 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15222 treated specially.)
15223 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15224 (detected_mask): Remove Big5 bits.
15225
152262008-02-01 Kenichi Handa <handa@m17n.org>
15227
15228 The following changes are to make the font rescaling facility
15229 compatible with Emacs 21.
15230
15231 * xfaces.c (Vface_font_rescale_alist): Rename from
15232 Vface_resizing_fonts.
15233 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15234 (font_rescale_ratio): Rename from font_resizing_ratio.
15235 (split_font_name): Set font->rescale_ratio.
15236 (better_font_p): Pay attention to font->rescale_ratio.
15237 (build_scalable_font_name): Likewise. Change RESX, and RESY
15238 fields.
15239 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15240
152412008-02-01 Kenichi Handa <handa@m17n.org>
15242
15243 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15244 (Qutf_16_le): Remove these variables.
15245 (syms_of_coding): Don't DEFSYM them.
15246 (decode_coding_utf_16): Fix handling of BOM.
15247 (encode_coding_utf_16): Fix handling of BOM.
15248
152492008-02-01 Kenichi Handa <handa@m17n.org>
15250
15251 * fileio.c (Finsert_file_contents): On replacing, before decoding
15252 the file into the work buffer, set point of the work buffer to the end.
15253
152542008-02-01 Dave Love <fx@gnu.org>
15255
15256 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15257
152582008-02-01 Dave Love <fx@gnu.org>
15259
15260 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15261 and fix C types.
15262
152632008-02-01 Kenichi Handa <handa@m17n.org>
15264
15265 * xdisp.c (SKIP_GLYPHS): New macro.
15266 (set_cursor_from_row): Pay attention to string display properties.
15267
15268 * category.c (copy_category_entry): Fix for the case that RANGE
15269 is an integer.
15270
15271 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15272
15273 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15274
152752008-02-01 Kenichi Handa <handa@m17n.org>
15276
15277 * charset.c (Fcharset_id_internal): New function.
15278 (syms_of_charset): Defsubr it.
15279
15280 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15281 with the last arg charset_list acquired from coding.
15282 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15283 the attribute coding_attr_ccl_valids.
15284
15285 * coding.h (enum define_coding_ccl_arg_index): Set the first
15286 member coding_arg_ccl_decoder to coding_arg_max.
15287
15288 * ccl.h (ccl_driver): Adjust prototype.
15289
15290 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15291 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15292 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15293 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15294 last arg Qnil.
15295
152962008-02-01 Kenichi Handa <handa@m17n.org>
15297
15298 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15299 call encode_char.
15300
15301 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15302
153032008-02-01 Dave Love <fx@gnu.org>
15304
15305 * composite.c (syms_of_composite): Make composition_hash_table weak.
15306
153072008-02-01 Kenichi Handa <handa@m17n.org>
15308
15309 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15310 (font_name_registry): Don't extern them.
15311 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15312
15313 * fontset.h (Qfontset): Don't extern it.
15314 (new_fontset_from_font_name): Extern it.
15315
15316 * fontset.c: Give 8 extra slots to fontset objects.
15317 (Qfontset_info): New variable.
15318 (syms_of_fontset): Defsym it.
15319 (FONTSET_FALLBACK): New macro.
15320 (fontset_face): Try also the default fontset.
15321 (make_fontset): Realize a fallback fontset from the default fontset.
15322 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15323 using split_font_name_into_vector and build_font_name_from_vector.
15324 (Fset_fontset_font): Access the elements of font_spec by enum
15325 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15326 name by using split_font_name_into_vector.
15327 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15328 generate a proper font name from the fontset name. Update
15329 Vfontset_alias_alist.
15330 (n_auto_fontsets): New variable.
15331 (new_fontset_from_font_name): New function.
15332 (Ffont_info): Store the information about fonts generated from the
15333 default fontset in the first extra slot of the returned char-table.
15334
15335 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15336 (font_name_registry): Delete function.
15337 (split_font_name_into_vector): New function.
15338 (build_font_name_from_vector): New function.
15339 (font_list): The argument REGISTRY is now a list of registry names.
15340 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15341 specifies an explicit font name, return the name as is. Make a
15342 list of registy names.
15343
15344 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15345 of x_new_fontset.
15346 (Fx_create_frame): Don't call x_new_fontset here. Just use
15347 x_list_fonts to check the existence of fonts.
15348
15349 * xterm.h (x_new_fontset): Adjust prototype.
15350
15351 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15352 string. Use new_fontset_from_font_name to create a fontset from a
15353 font name.
15354
153552008-02-01 Kenichi Handa <handa@m17n.org>
15356
15357 * syntax.c (Vfind_word_boundary_function_table): New name for
15358 Vnext_word_boundary_function_table.
15359 (find-word-boundary-function-table): New name for
15360 next-word-boundary-function-table.
15361
153622008-02-01 Dave Love <fx@gnu.org>
15363
15364 * Makefile.in: Fix some dependencies.
15365
15366 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15367 set it to nil before returning.
15368
15369 * composite.c (update_compositions): Fix type error.
15370
15371 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15372
153732008-02-01 Kenichi Handa <handa@m17n.org>
15374
15375 * xterm.c (x_new_font): Optimize for the case that the font is
15376 already set for the frame.
15377
153782008-02-01 Kenichi Handa <handa@m17n.org>
15379
15380 * chartab.c (char_table_ascii): Check if the char table contents
15381 is sub-char-table or not.
15382 (char_table_set, char_table_set_range): Fix argument to
15383 char_table_ascii.
15384
15385 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15386 (detect_coding_utf_8, detect_coding_utf_16)
15387 (detect_coding_emacs_mule, detect_coding_iso_2022)
15388 (detect_coding_sjis, detect_coding_big5)
15389 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15390 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15391 sequence is valid in this coding system. Change callers.
15392 (MAX_ANNOTATION_LENGTH): New macro.
15393 (ADD_ANNOTATION_DATA): New macro.
15394 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15395 ADD_ANNOTATION_DATA. Change the format of annotation data.
15396 (ADD_CHARSET_DATA): New macro.
15397 (emacs_mule_char): New argument ID. Change callers.
15398 (decode_coding_emacs_mule, decode_coding_iso_2022)
15399 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15400 Produce charset annotation data in coding->charbuf.
15401 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15402 to charset annotation data in coding->charbuf.
15403 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15404 coding->common_flags if the coding system is iso-2022 based and
15405 uses designation.
15406 (produce_composition): Adjust for the new annotation data format.
15407 (produce_charset): New function.
15408 (produce_annotation): Handle charset annotation.
15409 (handle_composition_annotation, handle_charset_annotation): New
15410 functions.
15411 (consume_chars): Handle charset annotation. Utilize the above two
15412 functions.
15413 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15414 buffer, get the deleted text as a string and set
15415 coding->src_object to that string.
15416 (detect_coding, detect_coding_system): Use the new struct
15417 coding_detection_info.
15418
15419 * coding.h (struct coding_detection_info): New structure.
15420 (struct coding_system): Adjust prototype of the member `detector'.
15421 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15422
154232008-02-01 Kenichi Handa <handa@m17n.org>
15424
15425 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15426
154272008-02-01 Dave Love <fx@gnu.org>
15428
15429 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15430 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15431 to new local and nullify apropos_accumulate before returning.
15432 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
15433
154342008-02-01 Kenichi Handa <handa@m17n.org>
15435
15436 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
15437 correctly.
e3eea1fc 15438
aac0c6e3
MR
154392008-02-01 Dave Love <fx@gnu.org>
15440
15441 * fns.c (Flanginfo): Call synchronize_system_time_locale.
15442
154432008-02-01 Kenichi Handa <handa@m17n.org>
15444
15445 The following changes are to make character composition happen
15446 automatically on displaying.
15447
15448 * Makefile.in (lisp, shortlisp): Add composite.elc.
15449
15450 * composite.h (Qauto_composed, Vauto_composition_function)
15451 (Qauto_composition_function): Extern them.
15452
15453 * composite.c (Vcomposition_function_table)
15454 (Qcomposition_function_table): Delete variables.
15455 (Qauto_composed, Vauto_composition_function)
15456 (Qauto_composition_function): New variables.
15457 (run_composition_function): Don't call
15458 compose-chars-after-function.
15459 (update_compositions): Clear `auto-composed' text property.
15460 (compose_chars_in_text): Delete this function.
15461 (syms_of_composite): Staticpro Qauto_composed and
15462 Qauto_composition_function. Declare Vauto_composition_function as
15463 a Lisp variable.
15464
15465 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15466
15467 * xdisp.c (it_props): Add an entry for Qauto_composed.
15468 (handle_auto_composed_prop): New function.
15469
15470 * xselect.c (selection_data_to_lisp_data): Don't call
15471 compose_chars_in_text.
15472
154732008-02-01 Dave Love <fx@gnu.org>
15474
15475 * keyboard.c (read_char): Modify checking around use of
15476 Vkeyboard_translate_table.
15477
15478 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15479 and fix C types.
15480
154812008-02-01 Kenichi Handa <handa@m17n.org>
15482
15483 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
15484 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15485 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
15486 the case that the last byte is '\r' correctly.
15487 (decode_coding): Flush out the unprocessed data correctly.
15488 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
15489
154902008-02-01 Dave Love <fx@gnu.org>
15491
15492 * xterm.c (XTread_socket): Fix changes for defined keysyms.
15493 Add XK_ISO... case.
15494 (xaw_scroll_callback): Revert last change.
15495
154962008-02-01 Kenichi Handa <handa@m17n.org>
15497
15498 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
15499
155002008-02-01 Kenichi Handa <handa@m17n.org>
15501
15502 * xfaces.c (Vface_resizing_fonts): New variable.
15503 (struct font_name): New member `resizing_ratio'.
15504 (font_resizing_ratio): New function.
15505 (split_font_name): Set font->resizing_ratio.
15506 (better_font_p): Pay attention to font->resizing_ratio.
15507 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
15508 RESX, and RESY fields.
15509 (try_alternative_families): Try scalable fonts if
15510 Vscalable_fonts_allowed is not Qt.
15511 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
15512
155132008-02-01 Dave Love <fx@gnu.org>
15514
15515 * xterm.c (xaw_scroll_callback): Cast correctly.
15516
155172008-02-01 Dave Love <fx@gnu.org>
15518
15519 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
15520 (lispy_kana_keys): Comment out.
15521 (make_lispy_event) [XK_kana_A]: Comment out.
15522
15523 * xterm.c (xaw_scroll_callback): Cast call_data.
15524 (XTread_socket): Deal with ASCII keysyms.
15525 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
15526
155272008-02-01 Dave Love <fx@gnu.org>
15528
15529 * xterm.c (Vx_keysym_table): New.
15530 (syms_of_xterm): Initialize it.
15531 (XTread_socket): Use it.
15532 From head: Eliminate incorrect optimization that tried to avoid
15533 decoding the output of X*LookupString.
15534 (x_get_font_repertory): Delete charset declaration.
15535
155362008-02-01 Kenichi Handa <handa@m17n.org>
15537
15538 * coding.c (detect_coding_charset): If only ASCII bytes are found,
15539 return 0.
15540 (Fdefine_coding_system_internal): Setup
15541 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
15542
155432008-02-01 Dave Love <fx@gnu.org>
15544
15545 * coding.c (Fcheck_coding_system): Doc fix.
15546
15547 * editfns.c (Finsert_byte): Return a proper value.
15548
155492008-02-01 Kenichi Handa <handa@m17n.org>
15550
15551 * coding.c (decode_coding): Fix args to translate_chars. Pay
15552 attention to Vstandard_translation_table_for_decode.
15553 (encode_coding): Fix args to translate_chars. Pay attention to
15554 Vstandard_translation_table_for_encode.
15555
15556 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
15557 SINGLE_BYTE_CHAR_P.
15558
15559 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
15560 not by SINGLE_BYTE_CHAR_P.
15561
15562 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
15563 SINGLE_BYTE_CHAR_P.
15564
15565 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
15566 SINGLE_BYTE_CHAR_P.
15567
15568 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
15569 by SINGLE_BYTE_CHAR_P.
15570
15571 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
15572 SINGLE_BYTE_CHAR_P.
15573
155742008-02-01 Dave Love <fx@gnu.org>
15575
15576 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
15577
155782008-02-01 Dave Love <fx@gnu.org>
15579
15580 * fns.c (Flanginfo): Fix typo.
15581
15582 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
15583
155842008-02-01 Kenichi Handa <handa@m17n.org>
15585
15586 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
15587 (detect_coding_emacs_mule, detect_coding_iso_2022)
15588 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
15589 incomplete byte sequence. Don't update *mask when correctly detected.
15590 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
15591 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
15592 (detect_coding, detect_coding_system): Adjust for the changes above.
15593
155942008-02-01 Kenichi Handa <handa@m17n.org>
15595
15596 * character.c (char_string): Rename from
15597 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
15598 (string_char): Rename from string_char.
15599
15600 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
15601 if C is greater than MAX_3_BYTE_CHAR.
15602 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
15603 string_char instead of string_char_with_unification.
15604
156052008-02-01 Dave Love <fx@gnu.org>
15606
15607 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
15608
156092008-02-01 Kenichi Handa <handa@m17n.org>
15610
15611 * keymap.c (push_key_description): Pay attention to force_multibyte.
15612
15613 * regex.c (re_search_2): Fix for the case of unibyte buffer.
15614
156152008-02-01 Dave Love <fx@gnu.org>
15616
15617 * charset.c (define_charset_internal): Rename `supprementary'.
15618
15619 * Makefile.in (lisp, shortlisp): Remove latin-N.
15620
156212008-02-01 Dave Love <fx@gnu.org>
15622
15623 * xfns.c (x_window, x_window): Use use_xim.
15624
15625 * xterm.c (use_xim): Initialize.
15626 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
15627 (x_term_init): Maybe set use_xim.
15628
15629 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
15630
156312008-02-01 Kenichi Handa <handa@m17n.org>
15632
15633 * search.c (search_buffer): Fix case-fold-search of multibyte
15634 characters.
15635 (boyer_moore): Rename the last argument to char_high_bits.
15636
156372008-02-01 Kenichi Handa <handa@m17n.org>
15638
15639 * xdisp.c (display_string): Fix for the case of zero width glyph.
15640
15641 * xfns.c (x_set_font): Change the error message of the case that
15642 x_new_fontset returns Qt.
15643
15644 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
15645 (Finternal_set_lisp_face_attribute): Use signal_error for the
15646 error of invalid fontset.
15647
15648 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
15649 fontset, return Qt.
15650
156512008-02-01 Dave Love <fx@gnu.org>
15652
15653 * unexelf.c (unexec): Make .got handling not SGI-specific.
15654
15655 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
15656
15657 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
15658
15659 * keyboard.c (read_key_sequence): Fix type error.
15660
15661 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
15662 type error.
15663
15664 * fontset.c (fontset_add): Return Lisp_Object.
15665
156662008-02-01 Dave Love <fx@gnu.org>
15667
15668 * charset.h (charset_ordered_list_tick): Declare extern.
15669
156702008-02-01 Kenichi Handa <handa@m17n.org>
15671
15672 The following changes (and some of 2008-02-01 changes of mine) are
15673 for handling syntax, category, and case conversion for unibyte
15674 characters by converting them to multibyte on the fly. With these
15675 changes, we don't have to setup syntax and case tables for unibyte
15676 characters in each language environment.
15677
15678 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
15679 multibyte if necessary.
15680
15681 * bytecode.c (Fbyte_code): Likewise.
15682
15683 * character.h (LEADING_CODE_LATIN_1_MIN)
15684 (LEADING_CODE_LATIN_1_MAX): New macros.
15685 (unibyte_to_multibyte_table): Extern it.
15686 (unibyte_char_to_multibyte): New macro.
15687 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
15688 (CHAR_LEADING_CODE): New macro.
15689 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
15690
15691 * character.c (unibyte_to_multibyte_table): New variable.
15692 (unibyte_char_to_multibyte): Move to character.h and define as macro.
15693 (multibyte_char_to_unibyte): If C is an eight-bit character,
15694 convert it to the corresponding byte value.
15695
15696 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
15697 not 1, signals an error. Update the elements of
15698 unibyte_to_multibyte_table.
15699 (init_charset_once): Initialize unibyte_to_multibyte_table.
15700 (syms_of_charset): Define the charset `iso-8859-1'.
15701
15702 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
15703 as is without converting it to unibyte. In a unibyte buffer,
15704 convert C to multibyte before checking the syntax.
15705
15706 * lisp.h (unibyte_char_to_multibyte): Delete extern.
15707
15708 * minibuf.c (Fminibuffer_complete_word): Use the macro
15709 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
15710
15711 * regex.h (struct re_pattern_buffer): New member target_multibyte.
15712
15713 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
15714 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
15715 that is zero, convert an eight-bit char to multibyte.
15716 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
15717 non-emacs case.
15718 (PATFETCH): Convert an eight-bit char to multibyte.
15719 (HANDLE_UNIBYTE_RANGE): New macro.
15720 (regex_compile): Setup the compiled pattern for multibyte chars
15721 even if the given regex string is unibyte. Use PATFETCH_RAW
15722 instead of PATFETCH in many places. To handle `charset'
15723 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
15724 only for ASCII chars.
15725 (analyse_first) <exactn>: Simplify because the compiled pattern
15726 is multibyte.
15727 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
15728 <charset>: Use CHAR_LEADING_CODE to get leading codes.
15729 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
15730 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
15731 multibyte always 1.
15732 (re_search_2): In emacs, set the locale variable multibyte to 1,
15733 otherwise to 0. New local variable target_multibyte. Check it
15734 to decide the multibyteness of STR1 and STR2. If
15735 target_multibyte is zero, convert unibyte chars to multibyte
15736 before translating and checking fastmap.
15737 (TARGET_CHAR_AND_LENGTH): New macro.
15738 (re_match_2_internal): In emacs, set the locale variable multibyte
15739 to 1, otherwise to 0. New local variable target_multibyte. Check
15740 it to decide the multibyteness of STR1 and STR2. Use
15741 TARGET_CHAR_AND_LENGTH to fetch a character from D.
15742 <charset, charset_not>: If multibyte is nonzero, check fastmap
15743 only for ASCII chars. Call bcmp_translate with
15744 target_multibyte, not with multibyte.
15745 <begline>: Declare the local variable C as `unsigned'.
15746 (bcmp_translate): Change the last arg name to target_multibyte.
15747
15748 * search.c (compile_pattern_1): Don't adjust the multibyteness of
15749 the regexp pattern and the matching target. Set cp->buf.multibyte
15750 to the multibyteness of the regexp pattern. Set
15751 cp->but.target_multibyte to the multibyteness of the matching target.
15752 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
15753 FETCH_STRING_CHAR_ADVANCE.
15754 (Freplace_match): Convert unibyte chars to multibyte.
15755
15756 * syntax.c (char_quoted, back_comment, scan_words)
15757 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
15758 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
15759 unibyte chars to multibyte.
15760 (skip_chars): Delete the arg syntaxp, and move the code for
15761 handling syntaxes to skip_syntaxes. Change callers.
15762 Fix the case that the multibyteness of STRING and the current
15763 buffer doesn't match.
15764 (skip_syntaxes): New function.
15765 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
15766 SINGLE_BYTE_CHAR_P.
15767
157682008-02-01 Kenichi Handa <handa@m17n.org>
15769
15770 * xfaces.c (QCfontset): New variable.
15771 (LFACE_FONTSET): New macro.
15772 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
15773 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
15774 (Finternal_set_lisp_face_attribute)
15775 (Finternal_get_lisp_face_attribute): Handle QCfontset.
15776 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
15777 check also LFACE_FONTSET_INDEX.
15778 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
15779 attrs[LFACE_FONT_INDEX].
15780 (syms_of_xfaces): Intern and staticpro QCfontset.
15781
15782 * dispextern.h (enum lface_attribute_index): New member
15783 LFACE_FONTSET_INDEX.
15784
15785 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
15786
157872008-02-01 Kenichi Handa <handa@m17n.org>
15788
15789 * coding.c (coding_set_destination): Fix coding->destination for
15790 the case converting a region.
15791 (encode_coding_utf_8): Encode eight-bit chars as single byte.
15792 (encode_coding_object): Fix coding->dst_pos and
15793 coding->dst_pos_byte for the case converting a region.
15794
15795 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
15796
15797 * character.h (BYTE8_STRING): New macro.
15798
15799 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
15800
158012008-02-01 Kenichi Handa <handa@m17n.org>
15802
15803 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
15804 characters by octal form.
15805
15806 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15807
15808 * buffer.h (_fetch_multibyte_char_len): Delete extern.
15809 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
15810 _fetch_multibyte_char_len.
15811 (FETCH_CHAR_AS_MULTIBYTE): New macro.
15812
15813 * casetab.c (set_canon, set_identity, shuffle): Simplify.
15814
15815 * casefiddle.c (casify_object): Simplify. Handle the case that
15816 the case conversion change the byte length.
15817 (casify_region): Likewise.
15818
15819 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
15820
15821 * character.c (_fetch_multibyte_char_len): Delete this variable.
15822 (syms_of_character): Setup Vprintable_chars.
15823
15824 * editfns.c (Fchar_equal): Fix for the unibyte case.
15825 (Finsert_byte): New function.
15826 (syms_of_editfns): Defsubr it.
15827
15828 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
15829 of direct code 0x3ffff.
15830
15831 * search.c (Freplace_match): Fix for the unibyte case.
15832
158332008-02-01 Kenichi Handa <handa@m17n.org>
15834
15835 * lread.c (safe_to_load_p): Fix the logic.
15836
15837 * syntax.c (scan_words): Don't treat characters belonging to
15838 different scripts as constituting a word.
15839
15840 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15841
15842 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
15843
15844 * emacs.c (main): In the case of --unibyte, instead of aborting on
15845 finding non-empty buffer, make it unibyte.
15846
158472008-02-01 Kenichi Handa <handa@m17n.org>
15848
15849 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
15850 to create a fontset.
15851
158522008-02-01 Dave Love <fx@gnu.org>
15853
15854 * character.c (Funibyte_char_to_multibyte): Doc fix.
15855
15856 * xfns.c [HAVE_STDLIB_H]: Fix last change.
15857
158582008-02-01 Kenichi Handa <handa@m17n.org>
15859
15860 * fontset.c (fontset_add): Make the type `int'.
15861 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
15862
15863 * character.c (unibyte_char_to_multibyte)
15864 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
15865 charset_unibyte, not charset_primary.
15866
15867 * charset.h (charset_unibyte): Extern it instead of charset_primary.
15868
15869 * charset.c (charset_unibyte): Rename from charset_primary.
15870 (Funibyte_charset): Rename from Fprimary_charset.
15871 (Fset_unibyte_charset): Rename from Fset_primary_charset.
15872 (syms_of_charset): Adjust for the above changes.
15873
15874 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15875 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15876 it->multibyte_p is zero.
15877
15878 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
15879 Delete extern.
15880
158812008-02-01 Kenichi Handa <handa@m17n.org>
15882
15883 * coding.c (Fdefine_coding_system_internal): Fix category setting
15884 for a coding system of type iso-2022.
15885
158862008-02-01 Kenichi Handa <handa@m17n.org>
15887
15888 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
15889
158902008-02-01 Kenichi Handa <handa@m17n.org>
15891
15892 * syntax.c (Vnext_word_boundary_function_table): New variable.
15893 (next-word-boundary-function-table): Declare it as a Lisp variable
15894 in syms_of_syntax.
15895 (scan_words): Call functions in Vnext_word_boundary_function_table
15896 if any.
15897
15898 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
15899
15900 * fontset.c (fs_load_font): If fontp->charset is not negative,
15901 return fontp without setting its members.
15902
159032008-02-01 Dave Love <fx@gnu.org>
15904
15905 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
15906
15907 * m/sparc.h (HAVE_ALLOCA): Delete.
15908
15909 * s/irix6-5.h: Don't include strings.h.
15910 (bcopy, bzero, bcmp): Don't undef.
15911
15912 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
15913
15914 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
15915 (TIOCSIGSEND): Don't test IRIX6.
15916 (bcopy, bzero, bcmp): Define conditionally.
15917
159182008-02-01 Kenichi Handa <handa@m17n.org>
15919
15920 * buffer.c (Qas, Qmake, Qto): New variables.
15921 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
15922 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
15923
15924 * callproc.c (Fcall_process): Don't call insert_1_both directly if
15925 we are inserting a process output into a multibyte buffer.
15926
15927 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
15928 multibyte_char_to_unibyte.
15929
15930 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
15931 by the primary charset, make it eight-bit char.
15932 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
15933
15934 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
15935 (charset_8_bit__control, charset_8_bit_graphic)
15936 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
15937 (define_charset_internal): New function.
15938 (syms_of_charset): Call define_charset_internal for pre-defined
15939 charsets.
15940
15941 * charset.h (charset_8_bit): Extern it.
15942
15943 * coding.c (make_conversion_work_buffer): Adjust for the change
15944 of Fset_buffer_multibyte.
15945 (encode_coding_raw_text): Increment p0 in the loop.
15946
15947 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
15948
15949 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
15950 for the change of Fset_buffer_multibyte.
15951
15952 * fns.c (Fstring_to_multibyte): New function.
15953 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
15954
159552008-02-01 Dave Love <fx@gnu.org>
15956
15957 * xfns.c (x_put_x_image): Declare args.
15958
15959 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
15960 (try_font_list): Declare an arg.
15961
15962 * xdisp.c (message2_nolog, set_message): Declare an arg.
15963
15964 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
15965
15966 * syntax.c (scan_sexps_forward): Declare an arg.
15967
15968 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15969 Declare an arg.
15970
15971 * lisp.h (Fnew_fontset): Declare.
15972
15973 * keymap.c (push_key_description): Call CHARACTERP correctly.
15974
15975 * fontset.c (fontset_add): Declare args. Call make_number correctly.
15976 (face_for_char): Delete unused vars.
15977 (Fset_fontset_font): Doc fix. Delete unused vars.
15978
15979 * doc.c (Fsubstitute_command_keys): Delete unused vars.
15980
15981 * composite.c (update_compositions): Declare arg.
15982
15983 * cm.c (calccost, cmgoto): Declare args.
15984
15985 * charset.c: Remove `emacs' conditional. Doc fixes.
15986 (map_char_table_for_charset): Declare.
15987
15988 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
15989
15990 * ccl.c: Remove `emacs' conditional.
15991
159922008-02-01 Kenichi Handa <handa@m17n.org>
15993
15994 The following changes are to allow specifying multiple font
15995 patterns for a character range (specified by script or charset).
15996
15997 * Makefile.in (abbrev.o): Depend on syntax.h.
15998 (xfaces.o): Depend on charset.h.
15999
16000 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16001 SINGLE_BYTE_CHAR_P.
16002
16003 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16004
16005 * character.h (Vchar_script_table): Extern it.
16006
16007 * character.c (Vscript_alist): Delete.
16008 (Vchar_script_table, Qchar_script_table): New variable.
16009 (syms_of_character): Declare Vchar_script_table as a lisp variable
16010 and initialize it.
16011
16012 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16013 have property char-table-extra-slots, make no extra slot.
16014
16015 * dispextern.h (struct face): Delete member `charset'.
16016 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16017 SINGLE_BYTE_CHAR_P.
16018 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16019 Add prototypes.
16020 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16021 (generate_ascii_font_name): Rename from generate_ascii_font.
16022
16023 * fontset.h (get_font_repertory_func): New prototype.
16024 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16025 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16026
16027 * fontset.c (Qprepend, Qappend): New variables.
16028 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16029 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16030 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16031 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16032 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16033 (load_font_get_repertory): New functions.
16034 (fontset_set): Delete.
16035 (fontset_face): New arg FACE. Return face ID, not face.
16036 Complete re-write to handle new fontset structure. Change caller.
16037 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16038 (face_for_char): Don't call lookup_face.
16039 (make_fontset_for_ascii_face): New arg FACE.
16040 (fs_load_font): New arg CHARSET_ID. Don't check
16041 Vfont_encoding_alist here.
16042 (find_font_encoding): New function.
16043 (list_fontsets): Use STRINGP, not ! NILP.
16044 (accumulate_script_ranges): New function.
16045 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16046 re-written to handle new fontset structure.
16047 (Ffontset_font): Return a copy of element.
16048 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16049 docstring of font-encoding-alist.
16050
16051 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16052 (Fset_fotset_font): Fix arguments to 5.
16053
16054 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16055
16056 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16057 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16058 (highlight_trailing_whitespace): Adjust for the change of
16059 lookup_named_face.
16060
16061 * xfaces.c: Include charset.h.
16062 (load_face_font): Delete argument C. Change caller.
16063 (generate_ascii_font_name): Rename from generate_ascii_font.
16064 (font_name_registry): New function.
16065 (cache_face): Store ascii faces before non-ascii faces in buckets.
16066 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16067 Lookup only ascii faces.
16068 (lookup_non_ascii_face): New function.
16069 (lookup_named_face): Delete argument C. Change caller.
16070 (lookup_derived_face): Delete argument C. Change caller.
16071 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16072 a string, just call font_list with it.
16073 (choose_face_font): Delete arguments FACE and C. New arg
16074 FONT_SPEC. Change caller.
16075 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16076 Change caller.
16077 (realize_non_ascii_face): New function.
16078 (realize_x_face): Call load_face_font here.
16079 (realize_tty_face): Delete argument C. Change caller.
16080 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16081 get a face ID.
16082 (dump_realized_face): Don't print charset of FACE.
16083
16084 * xfns.c (x_set_font): Always call x_new_fontset and
16085 store_frame_parameter.
16086 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16087 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16088
16089 * xterm.h (x_get_font_repertory): Extern it.
16090
16091 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16092 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16093 it->multibyte_p is zero.
16094 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16095 (x_new_fontset): If FONTSETNAME doesn't match any existing
16096 fontsets, create a new one.
16097 (x_get_font_repertory): New function.
16098
160992008-02-01 Kenichi Handa <handa@m17n.org>
16100
16101 * coding.c (Ffind_coding_systems_region_internal): Detect an
16102 ASCII only string correctly.
16103
16104 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16105 version is 0.
16106
161072008-02-01 Kenichi Handa <handa@m17n.org>
16108
16109 * lread.c: Include "coding.h".
16110 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16111 (load_each_byte, unread_char): New variables.
16112 (readchar_backlog): Delete.
16113 (readchar): Return a character unless load_each_byte is nonzero.
16114 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16115 cons. If unread_char is not -1, simply return it.
16116 (unreadchar): Handle the case that readcharfun is
16117 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16118 (read_multibyte): Delete.
16119 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16120 (read_emacs_mule_char): New functions.
16121 (Fload): Even if the file doesn't have the extension ".elc", if
16122 safe_to_load_p returns a positive version number, assume that the
16123 file contains bytecompiled code. If the version is less than 22,
16124 load the file while decoding multibyte sequences by emacs-mule.
16125 (readevalloop): Don't use readchar_backlog.
16126 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16127 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16128 (read_escape): Delete the arg BYTEREP.
16129 (read1): Set load_each_byte to 1 temporarily while handling
16130 #@NUMBER. Don't call read_multibyte.
16131 (read_vector): Call Fread with a cons. If readcharfun is
16132 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16133 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16134 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16135 and Qload_force_doc_strings.
16136
161372008-02-01 Kenichi Handa <handa@m17n.org>
16138
16139 * xdisp.c (face_before_or_after_it_pos): Call
16140 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16141
161422008-02-01 Kenichi Handa <handa@m17n.org>
16143
16144 * character.h (TRAILING_CODE_P): New macro.
16145 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16146 (string_char_with_unification): Fix prototype.
16147 (Vscript_alist): Extern it.
16148
16149 * character.c (Vscript_alist): New variable.
16150 (string_char_with_unification, str_as_unibyte)
16151 (string_escape_byte8): Add `const' to local variables.
16152 (syms_of_character): Declare script-alist as a Lisp variable.
16153
16154 * charset.h (Vcharset_ordered_list): Extern it.
16155 (charset_ordered_list_tick): Extern it.
16156 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16157 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16158 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16159 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16160 (Funify_charset): Adjust for the change of Funify_charset.
16161
16162 * charset.c (charset_ordered_list_tick): New variable.
16163 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16164 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16165 deunify intead of unify a charset.
16166 (string_xstring_p): Add `const' to local variables.
16167 (find_charsets_in_text): Add `const' to arguments and local variables.
16168 (encode_char): Adjust for the change of Funify_charset. Fix
16169 detecting of invalid code.
16170 (Fset_charset_priority): Increment charset_ordered_list_tick.
16171 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16172 and TO_CODE.
16173
16174 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16175 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16176 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16177 (decode_coding_ccl, consume_chars)
16178 (Ffind_coding_systems_region_internal)
16179 (Fcheck_coding_systems_region): Add `const' to local variables.
16180
16181 * print.c (print_object): Use octal form for printing the
16182 contents of a bool vector.
16183
161842008-02-01 Dave Love <fx@gnu.org>
16185
16186 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16187 <version == 20>: Refuse to load.
16188
161892008-02-01 Dave Love <fx@gnu.org>
16190
16191 * fns.c: Move coding.h.
16192 (Qcodeset, Qdays, Qmonths): New.
16193 (concat): Use CHARACTERP instead of INTEGERP.
16194 (Flocale_codeset): Delete.
16195 (Flanginfo): New function.
16196 (syms_of_fns): Change accordingly.
16197
16198 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16199
162002008-02-01 Dave Love <fx@gnu.org>
16201
16202 * casetab.c (init_casetab_once, init_casetab_once): Fix
16203 CHAR_TABLE_SET call.
16204
16205 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16206
16207 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16208
16209 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16210 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16211 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16212
16213 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16214
16215 * coding.c (ENCODE_DESIGNATION, decode_eol)
16216 (make_conversion_work_buffer, code_conversion_restore)
16217 (Fdefine_coding_system_internal): Convert Lisp types.
16218 (code_conversion_restore): Use EQ, not ==.
16219 (Fencode_coding_string): Fix code_convert_string call.
16220
16221 * coding.h (code_convert_region): Fix prototype.
16222
16223 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16224
16225 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16226 (Ffontset_info): Convert Lisp types.
16227
16228 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16229
16230 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16231
16232 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16233
16234 * chartab.c: Include "...h", not <...h> in some cases.
16235
16236 * callproc.c (Fcall_process): Remove unused variables.
16237
162382008-02-01 Dave Love <fx@gnu.org>
16239
16240 * coding.c (Fset_coding_system_priority): Allow null arg list.
16241
162422008-02-01 Dave Love <fx@gnu.org>
16243
16244 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16245 (Fself_insert_and_exit): Use CHARACTERP.
16246
16247 * callproc.c (Fcall_process): Remove unused vars.
16248
16249 * xterm.c (XTread_socket): Add extra dead keysyms.
16250
16251 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16252
16253 * dispextern.h: Remove prototypes for redraw_frame,
16254 redraw_garbaged_frames.
16255
16256 * cmds.c (Fself_insert_command): Use CHARACTERP.
16257
16258 * chartab.c (make_sub_char_table): Remove unused var.
16259 (Fset_char_table_default, Fmap_char_table): Doc fix.
16260
16261 * keymap.c (access_keymap): Remove generic char code.
16262 (push_key_description): Use CHARACTERP.
16263
162642008-02-01 Dave Love <fx@gnu.org>
16265
16266 * charset.c: Doc fixes.
16267 (Funify_charset): Extra checking.
16268
162692008-02-01 Dave Love <fx@gnu.org>
16270
16271 * lread.c: Remove some unused variables.
16272 (safe_to_load_p): If safe, return the magic number version byte.
16273 (Fload): Maybe use load-with-code-conversion.
16274
162752008-02-01 Kenichi Handa <handa@m17n.org>
16276
16277 * category.c (Fmodify_category_entry): Don't modify the contents
16278 of category_set for characters out of the range. Avoid
16279 unnecessary modification.
16280
16281 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16282 Vchar_unify_table. The default value of the table is now nil.
16283
16284 * character.c (syms_of_character): Setup Vchar_width_table for
16285 eight-bit-control and raw-byte chars.
16286
16287 * charset.h (enum define_charset_arg_index): Delete
16288 charset_arg_parents and add charset_arg_subset and
16289 charset_arg_superset.
16290 (enum charset_attr_index): Delete charset_parents and add
16291 charset_subset and charset_superset.
16292 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16293 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16294 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16295 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16296 (CHARSET_SUPERSET): New macros.
16297 (charset_work): Extern it.
16298 (ENCODE_CHAR): Use charset_work.
16299 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16300 (map_charset_chars): Extern it.
16301
16302 * charset.c (load_charset_map): Set the default value of encoder
16303 and deunifier char-tables to nil.
16304 (map_charset_chars): Change argument. Change callers. Use
16305 map_char_table_for_charset instead of map_char_table.
16306 (Fmap_charset_chars): New optional args from_code and to_code.
16307 (Fdefine_charset_internal): Adjust for the change of
16308 `define-charset' (:parents -> :subset or :superset).
16309 (charset_work): New variable.
16310 (encode_char, syms_of_charset): Adjust for the change of
16311 Fdefine_charset_internal.
16312 (Ffind_charset_string): Setup the vector `charsets' correctly.
16313
16314 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16315 the previous change.
16316 (char_table_ref_and_range): Adjust for the above change.
16317 (map_sub_char_table_for_charset): New function.
16318 (map_char_table_for_charset): New function.
16319
16320 * keymap.c (describe_vector): Handle a char-table directly here.
16321 (describe_char_table): Delete.
16322
16323 * lisp.h (map_charset_chars): Delete.
16324
163252008-02-01 Dave Love <fx@gnu.org>
16326
16327 * fns.c (count_combining): Comment out (unused).
16328 (Flocale_codeset): New.
16329 (syms_of_fns): Defsubr it.
16330
16331 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16332 (size_t): Remove.
16333
163342008-02-01 Dave Love <fx@gnu.org>
16335
16336 * Makefile.in (chartab.o): Depend on charset.h.
16337
163382008-02-01 Kenichi Handa <handa@m17n.org>
16339
16340 * character.c (syms_of_character): Set the default value of
16341 Vprintable_chars to Qnil.
16342
163432008-02-01 Dave Love <fx@gnu.org>
16344
16345 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16346
163472008-02-01 Kenichi Handa <handa@m17n.org>
16348
16349 * charset.c (load_charset_map): Handle the case that from < to
16350 correctly.
16351
16352 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16353 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16354 Pay attention to raw-8-bit chars.
16355
163562008-02-01 Kenichi Handa <handa@m17n.org>
16357
16358 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16359 It is not bytecompiled now.
16360
16361 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16362 (charset_jisx0208): New variables.
16363 (Fdefine_charset_internal): Setup them if appropriate.
16364 (init_charset_once): Initialize them to -1.
16365
16366 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16367 (charset_jisx0208): Extern them.
16368
16369 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16370 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16371 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16372 (setup_iso_safe_charsets): Fix arguments to Fassq.
16373 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16374 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16375 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16376 (encode_coding_iso_2022): Change the 1st arg to
16377 ENCODE_ISO_CHARACTER to a variable.
16378
163792008-02-01 Kenichi Handa <handa@m17n.org>
16380
16381 * charset.h (enum define_charset_arg_index): New enums
16382 charset_arg_min_code and charset_arg_max_code.
16383 (struct charset): New member char_index_offset.
16384
16385 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16386 Take charset->char_index_offset into account.
16387 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16388 args[charset_arg_max_code]. Setup charset.char_index_offset.
16389 (syms_of_charset): Fix args to Fdefine_charset_internal.
16390
163912008-02-01 Dave Love <fx@gnu.org>
16392
16393 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16394
163952008-02-01 Dave Love <fx@gnu.org>
16396
16397 * coding.c: Doc fixes.
16398 (Fcoding_system_aliases): Fix return value.
16399 (Qmac): Remove (duplicated) definition.
16400
164012008-02-01 Dave Love <fx@gnu.org>
16402
362654a6
JB
16403 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16404 New functions.
aac0c6e3
MR
16405
16406 * character.c (Fstring): Doc fix.
16407
16408 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16409
362654a6 16410 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16411 (font-encoding-alist): Doc fix.
16412
164132008-02-01 Dave Love <fx@gnu.org>
16414
16415 * term.c (costs_set): Declare static, non-initialized for pcc.
16416 (encode_terminal_code): Remove unused var.
16417
16418 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16419 for K&R.
16420
16421 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16422
16423 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16424 (suffixes): Move out of make_subsidiaries for K&R.
16425
16426 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16427
16428 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16429
164302008-02-01 Dave Love <fx@gnu.org>
16431
16432 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
16433
16434 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
16435
164362008-02-01 Yong Lu <lyongu@asia-infonet.com>
16437
16438 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
16439
16440 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
16441
164422008-02-01 Kenichi Handa <handa@m17n.org>
16443
16444 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
16445 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
16446
164472008-02-01 Kenichi Handa <handa@m17n.org>
16448
16449 * coding.c (decode_coding_charset): Adjust for the change of
16450 Fdefine_coding_system_internal.
16451 (Fdefine_coding_system_internal): For a coding system of
16452 `charset' type, store a list of charset IDs in
16453 `charset_attr_charset_valids' element of coding attributes.
16454
164552008-02-01 Kenichi Handa <handa@m17n.org>
16456
16457 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
16458 (emacs_mule_char): New arg src. Delete arg `composition'. Change
16459 caller. Handle 2-byte and 3-byte charsets correctly.
16460 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
16461 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
16462 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
16463 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16464 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16465 sequence.
16466 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16467 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16468 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16469 and alt&rule composition.
16470 (decode_coding_iso_2022): Handle composition correctly.
16471 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16472
16473 * charset.c (Fdefine_charset_internal): Fix bug for the case of
16474 re-defining a charset. If the charset has :emacs-mule-id, setup
16475 emacs_mule_bytes.
16476 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
16477
164782008-02-01 Kenichi Handa <handa@m17n.org>
16479
16480 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
16481 (encode_coding_big5, encode_coding_charset): If coding requires safe
16482 encoding, produce a character specified by
16483 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
16484
164852008-02-01 Dave Love <fx@gnu.org>
16486
16487 * xterm.c (XSetIMValues): Declare.
16488
16489 * process.c: Conditionally include sys/wait.h, pty.h.
16490
16491 * print.c (print_object): Fix print format for 64-bit systems.
16492
16493 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
16494
16495 * buffer.c (emacs_strerror): Declare.
16496
16497 * fontset.c (Fclear_face_cache): Declare.
16498 (accumulate_font_info): Comment-out (unused).
16499 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
16500 variables.
16501
16502 * character.h (string_escape_byte8): Declare.
16503
16504 * charset.c (load_charset_map, load_charset_map_from_file): Remove
16505 unused vars.
16506 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
16507 (Fmap_charset_chars): Doc fix.
16508
16509 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
16510 (Fset_coding_system_priority, Fset_coding_system_priority)
16511 (Fdefine_coding_system_internal): Doc fix.
16512
165132008-02-01 Dave Love <fx@gnu.org>
16514
16515 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
16516
165172008-02-01 Kenichi Handa <handa@m17n.org>
16518
16519 * character.c (string_escape_byte8): Make multibyte string with
16520 correct size.
16521
16522 * charset.c (Fmake_char): Delete unnecessary code.
16523
165242008-02-01 Kenichi Handa <handa@m17n.org>
16525
16526 * xfns.c (x_encode_text): Allocate coding.destination here, and
16527 call encode_coding_object with dst_object Qnil.
16528
16529 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
16530 multibyte form correctly.
16531
16532 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
16533 against Vfont_encoding_alist.
16534
16535 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
16536 handling of charset list.
16537 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
16538 (decode_coding_object): Move point to coding->dst_pos before
16539 calling post-read-conversion function.
16540 (encode_coding_object): Give correct arguments to
16541 pre-write-conversion. Ignore the return value of
16542 pre-write-conversion function. Pay attention to the case that
16543 pre-write-conversion changes the current buffer. If dst_object is
16544 Qt, even if coding->src_bytes is zero, allocate at least one byte
16545 to coding->destination.
16546
16547 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
16548
16549 * charset.c (Fmake_char): Make it more backward compatible.
16550 (Fmap_charset_chars): Fix docstring.
16551
165522008-02-01 Dave Love <fx@gnu.org>
16553
16554 * coding.c: Doc fixes.
16555 (Fdefine_coding_system_alias): Use names, not symbols, in
16556 coding-system-alist.
16557
165582008-02-01 Kenichi Handa <handa@m17n.org>
16559
16560 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
16561 of calling free_realized_face.
16562
165632008-02-01 Yong Lu <lyongu@asia-infonet.com>
16564
16565 * charset.c (read_hex): Don't treat SPC as a comment starter.
16566 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
16567 (Fdecode_char): Fix typo.
16568
165692008-02-01 Kenichi Handa <handa@m17n.org>
16570
16571 * charset.h (struct charset): New member `code_space_mask'.
16572
16573 * coding.c (coding_set_source): Delete the local variable beg_byte.
16574 (encode_coding_charset, Fdefine_coding_system_internal):
16575 Delete the local variable charset.
16576 (Fdefine_coding_system_internal): Setup
16577 attrs[coding_attr_charset_valids] correctly.
16578
16579 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
16580 member to check if CODE is valid or not.
16581 (Fdefine_charset_internal): Initialize `code_space_mask' member.
16582 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
16583 is within the range of charset->min_code and carset->max_code.
16584
165852008-02-01 Dave Love <fx@gnu.org>
16586
16587 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
16588
16589 * dispextern.h (generate_ascii_font): Fix return type.
16590
16591 * xfaces.c (generate_ascii_font): Fix arg declaration.
16592
16593 * coding.c (coding_inherit_eol_type)
16594 (Fset_terminal_coding_system_internal)
16595 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
16596
165972008-02-01 Kenichi Handa <handa@m17n.org>
16598
16599 * coding.c (decode_coding_charset, encode_coding_charset): Handle
16600 multiple charsets correctly.
16601
166022008-02-01 Kenichi Handa <handa@m17n.org>
16603
16604 * search.c (boyer_moore): Fix handling of multibyte character
16605 translation.
16606
16607 * xdisp.c (display_mode_element): When the variable `elt' is
16608 changed, update `this' and `lisp_string'.
16609
166102008-02-01 Kenichi Handa <handa@m17n.org>
16611
16612 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
16613
16614 * callproc.c (Fcall_process): Be sure to give the current buffer
16615 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
16616
16617 * charset.c (struct charset_map_entries): New struct.
16618 (load_charset_map): Rename from parse_charset_map. New args
16619 entries and n_entries. Change caller.
16620 (load_charset_map_from_file): Rename from load_charset_map.
16621 Change caller. New arg control_flag. Call load_charset_map at
16622 the tail.
16623 (load_charset_map_from_vector): New function.
16624 (Fdefine_charset_internal): Setup charset.compact_codes_p.
16625 (encode_char): If the charset is compact, change a character index
16626 to a code point.
16627
16628 * coding.c (coding_alloc_by_making_gap): Check the case that the
16629 source and destination are the same correctly.
16630 (decode_coding_raw_text): Set coding->consumed_char and
16631 coding->consumed to 0.
16632 (produce_chars): If coding->chars_at_source is nonzero, update
16633 coding->consumed_char and coding->consumed before calling
16634 alloc_destination.
16635 (Fdefine_coding_system_alias): Register ALIAS in
16636 Vcoding_system_alist.
16637 (syms_of_coding): Define `no-conversion' coding system at the tail.
16638
16639 * fileio.c (Finsert_file_contents): Set coding_system instead of
16640 val. If the current buffer is multibyte, always call
16641 decode_coding_gap.
16642
16643 * xfaces.c (try_font_list): Give higher priority to fontset's
16644 family than face's family.
16645
166462008-02-01 Kenichi Handa <handa@m17n.org>
16647
16648 * callproc.c (Fcall_process): Be sure to give the current buffer
16649 to decode_coding_c_string.
16650
16651 * xfaces.c (try_font_list): Give a family specified in a fontset
16652 higher priority than a family specified in a face.
16653
166542008-02-01 Kenichi Handa <handa@m17n.org>
16655
16656 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
16657 Fix arguments to insert_from_buffer.
16658
16659 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
16660
166612008-02-01 Kenichi Handa <handa@m17n.org>
16662
16663 * coding.c (produce_chars): Set the variable `multibytep' correctly.
16664 (decode_coding_gap): Set coding->dst_multibyte correctly.
16665
166662008-02-01 Kenichi Handa <handa@m17n.org>
16667
16668 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
16669 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
16670 (encode_coding_utf_16): Substitute coding->default_char for
16671 non-Unicode characters.
16672 (decode_coding): Don't call record_insert here.
16673 (setup_coding_system): Initialize `surrogate' of
16674 coding->spec.utf_16 to 0.
16675 (EMIT_ONE_BYTE): Fix for multibyte case.
16676
16677 * insdel.c (insert_from_gap): Call record_insert.
16678
166792008-02-01 Kenichi Handa <handa@m17n.org>
16680
16681 * casefiddle.c (casify_region): Fix multibyte case.
16682
16683 * character.c (c_string_width): Add return type `int'.
16684 (char_string_with_unification): Delete arg ADVANCED.
16685
16686 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
16687 (CHAR_STRING): Adjust for the change of char_string_with_unification.
16688 (CHAR_STRING_ADVANCE): Make it do-while statement.
16689
16690 * chartab.c (sub_char_table_set_range): Optimize for the case
16691 DEPTH == 3. Add workaround code for a GCC optimization bug.
16692
16693 * charset.c (parse_charset_map): Remove an unused variable.
16694
16695 * coding.c: Delete unused variables.
16696
16697 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
16698 earlier. If inserted is zero and the coding system doesn't
16699 require flushing, don't call decode_coding_gap.
16700
16701 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
16702
167032008-02-01 Kenichi Handa <handa@m17n.org>
16704
16705 The following changes are for using Unicode as an internal
16706 character model, and use UTF-8 format for buffer/string
16707 representation.
16708
16709 * .gdbinit (xchartable): Adjust for the change of char table structure.
16710 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
16711
16712 * Makefile.in (obj): Add character.o and chartab.o.
16713 (lisp, shortlisp): Remove utf-8.elc.
16714 (*.o): For many files, change dependency on charset.h to
16715 character.h, and add dependency on character.h.
16716 (character.o, chartab.o): New targets.
16717
16718 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
16719 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
16720 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
16721 of "charset.h".
16722
16723 * dired.c, filelock.c: Include "character.h".
16724
16725 * alloc.c: Include "character.h" instead of "charset.h".
16726 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
16727 (syms_of_alloc): Remove defsubr for Smake_char_table.
16728
16729 * buffer.c: Include "character.h" instead of "charset.h", don't
16730 include "coding.h".
16731 (Fset_buffer_multibyte): Adjust for UTF-8.
16732
16733 * buffer.h: EXFUN Fbuffer_live_p.
16734
16735 * callproc.c: Include "character.h" instead of "charset.h".
16736 (Fcall_process): Big change for the new code-conversion APIs.
16737
16738 * casetab.c: Include "character.h" instead of "charset.h".
16739 (set_canon, set_identity, shuffle): Adjust for the new
16740 map_char_table spec.
16741 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
16742 accessing the char table structure.
16743
16744 * chartab.c: New file that implements char table.
16745
16746 * category.c: Include "character.h".
16747 (copy_category_entry): New function.
16748 (copy_category_table): Call map_char_table and copy_category_entry.
16749 (Fmake_category_table): Initialize all top-level slots.
16750 (char_category_set): New function.
16751 (modify_lower_category_set): Delete.
16752 (Fmodify_category_entry): Call char_table_ref_and_range.
16753
16754 * category.h (CATEGORY_SET): Just call char_category_set.
16755
16756 * ccl.c: Include "character.h".
16757 (Qccl, Qcclp): New variables.
16758 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
16759 it's less than 256.
16760 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
16761 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
16762 and DST type.
16763 (ccl_driver): Change types of argument, adjust code accordingly.
16764 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
16765 ccl_driver.
16766 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
16767
16768 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
16769 New members src_multibyte, dst_multibyte, consumed, and produced.
16770 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
16771 (CODING_SPEC_CCL_PROGRAM): New macro.
16772 (ccl_driver): Update prototype.
16773 (Qccl, Qcclp, Fccl_program_p): Extern them.
16774 (CHECK_CCL_PROGRAM): New macro.
16775
16776 * character.c, character.h, chartab.c: New files.
16777
16778 * charset.c: Mostly re-written. Move character and multibyte sequence
16779 handling codes to character.c.
16780
16781 * charset.h: Mostly re-written. Move character and multibyte sequence
16782 handling codes to character.h.
16783
16784 * coding.c, coding.h: Mostly re-written.
16785
16786 * composite.c: Include "character.h" instead of "charset.h".
16787 (CHAR_WIDTH): Move to character.h.
16788 (HASH_KEY, HASH_VALUE): Delete.
16789
16790 * composite.h (enum composition_method): Change order of enumeration
16791 symbols.
16792
16793 * data.c: Include "character.h" instead of "charset.h".
16794 (Faref): Call CHAR_TABLE_REF for a char table.
16795 (Faset): Call CHAR_TABLE_SET for a char table.
16796
16797 * dispextern.h (free_realized_face, check_face_attribytes)
16798 (generate_ascii_font): Extern them.
16799 (free_realized_multibyte_face): Delete extern.
16800
16801 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
16802 table structure.
16803
16804 * editfns.c: Include "character.h" instead of "charset.h".
16805 (Fchar_to_string): Always call CHAR_STRING.
16806
16807 * emacs.c (main): Call init_charset_once, init_charset,
16808 syms_of_chartab, and syms_of_character.
16809
16810 * fileio.c: Include "character.h" instead of "charset.h".
16811 (Finsert_file_contents): Big change for the new code-conversion API.
16812 (choose_write_coding_system, Fwrite_region): Likewise.
16813 (build_annotations_2): Delete.
16814 (e_write): Big change for the new code-conversion API.
16815
16816 * fns.c: Include "character.h" instead of "charset.h".
16817 (copy_sub_char_table): Move to chartab.c.
16818 (Fcopy_sequence): Call copy_char_table for a char table.
16819 (concat): Delete codes calling count_multibyte.
16820 (string_char_to_byte, string_byte_to_char): Adjust for the new
16821 multibyte form.
16822 (internal_equal): Adjust for the change of char table structure.
16823 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
16824 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
16825 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
16826 (char_table_translate, optimize_sub_char_table)
16827 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
16828 chartab.c.
16829 (char_table_ref_and_index): Delete.
16830 (HASH_KEY, HASH_VALUE): Move to lisp.h.
16831 (Fmd5): Call preferred_coding_system instead of accessing
16832 Vcoding_category_list. Adjust for the new code-conversion API.
16833 (syms_of_fns): Move defsubr for char table related functions to
16834 chartab.c.
16835
16836 * fontset.c: Mostly re-written.
16837
16838 * fontset.h (struct font_info): Change type of the member encoding_type.
16839 (enum FONT_SPEC_INDEX): New enum.
16840 (fontset_font_pattern, fs_load_font): Update prototype.
16841 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
16842
16843 * indent.c: Include "character.h" instead of "charset.h".
16844 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
16845
16846 * insdel.c: Include "character.h" instead of "charset.h".
16847 (copy_text): Don't refer to Vnonascii_translation_table.
16848 (insert_from_gap): New function.
16849
16850 * keyboard.c: Include "character.h" instead of "charset.h".
16851 (command_loop_1): Never call direct_output_forward_char before
16852 a non-ASCII character.
16853 (read_char): If Vkeyboard_translate_table is a char table, always
16854 translate a character.
16855
16856 * keymap.c: Include "character.h".
16857 (store_in_keymap): Handle the case that IDX is a cons.
16858 (Fdefine_key): Handle the case that KEY is a cons and the car part
16859 is also a cons (range).
16860 (push_key_description): Adjust for the new character code.
16861 (describe_vector): Call describe_char_table for a char table.
16862 (describe_char_table): New function.
16863
16864 * keymap.h (describe_char_table): Extern it.
16865
16866 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
16867 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
16868 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
16869 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
16870 Delete.
16871 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
16872 structure.
16873 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
16874 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
16875 (CHARTAB_SIZE_BITS_3): New macros.
16876 (chartab_size): Extern it.
16877 (struct Lisp_Char_Table): Re-design.
16878 (struct Lisp_Sub_Char_Table): New structure.
16879 (HASH_KEY, HASH_VALUE): Move from fns.c.
16880 (CHARACTERBITS): Define as 22.
16881 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
16882 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
16883 (GC_SUB_CHAR_TABLE_P): New macro.
16884 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
16885 (code_convert_string_norecord): Deleted extern.
16886 (init_character_once, syms_of_character, init_charset)
16887 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
16888
16889 * lread.c: Include "character.h".
16890 (read_multibyte): New arg NBYTES.
16891 (read_escape): Change the meaning of returned *BYTEREP.
16892 (to_multibyte): Delete.
16893 (read1): Adjust the handling of char table and string.
16894
16895 * print.c: Include "character.h" instead of "charset.h".
16896 (print_string): Convert 8-bit raw bytes to octal form by
16897 string_escape_byte8.
16898 (print_object): Adjust for the new multibyte form. Print 8-bit
16899 raw bytes always in octal form. Handle sub char table correctly.
16900
16901 * process.c: Include "character.h" instead of "charset.h".
16902 (read_process_output, send_process): Adjust for the new
16903 code-conversion API.
16904
16905 * puresize.h (BASE_PURESIZE): Increase.
16906
16907 * regex.c: Include "character.h" instead of "charset.h".
16908 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
16909 (regex_compile): Accept a range whose starting and ending
16910 character have different leading bytes.
16911 (analyse_first): Adjust for the above change.
16912
16913 * search.c: Include "character.h" instead of "charset.h".
16914 (search_buffer, boyer_moore): Adjust for the new multibyte form.
16915 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
16916
16917 * syntax.c: Include "character.h" instead of "charset.h".
16918 (syntax_parent_lookup): Delete.
16919 (Fmodify_syntax_entry): Accept a cons as CHAR.
16920 (skip_chars): Adjust for the new multibyte form.
16921 (init_syntax_once): Call char_table_set_range instead of directly
16922 accessing the structure of a char table.
16923
16924 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
16925 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
16926 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
16927 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
16928
16929 * term.c: Include "buffer.h" and "character.h".
16930 (encode_terminal_code, write_glyphs): Adjust for the new
16931 code-conversion API.
16932 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
16933
16934 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
16935
16936 * xdisp.c: Include "character.h".
16937 (get_next_display_element): Adjust for the new multibyte form.
16938 (disp_char_vector): Adjust for the new char table structure.
16939 (decode_mode_spec_coding): Adjust for the new structure of
16940 coding system.
16941 (decode_mode_spec): Adjust for the new code-conversion API.
16942
16943 * xfaces.c: Include "character.h" instead of "charset.h".
16944 (load_face_font): Adjust for the change of choose_face_font and
16945 FS_LOAD_FONT.
16946 (generate_ascii_font): New function.
16947 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
16948 (set_font_frame_param): Adjust for the change of choose_face_font.
16949 (free_realized_face): Make it public.
16950 (free_realized_faces_for_fontset): Rename from
16951 free_realized_multibyte_face. Free also faces realized for ASCII.
16952 (choose_face_font): Change arguments. Adjust for the change of
16953 fontset_font_pattern and FS_LOAD_FONT.
16954
16955 * xfns.c: Include "character.h".
16956 (x_encode_text): Adjust for the new code-conversion API.
16957
16958 * xselect.c: Don't include "charset.h".
16959 (selection_data_to_lisp_data): Adjust for the new code conversion API.
16960
16961 * xterm.c: Include "character.h".
16962 (x_encode_char): New argument CHARSET. Change caller.
16963 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
16964 Call ENCODE_CHAR instead of SPLIT_CHAR.
16965 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
16966 CHAR_WIDTH instead of CHARSET_WIDTH.
16967 (XTread_socket): Adjust for the new code-conversion API.
16968 (x_new_font): Adjust for the change of FS_LOAD_FONT.
16969 (x_load_font): Adjust for the change of struct font.
16970
169712008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16972
16973 * xfaces.c (face_at_buffer_position): Remove unused vars.
16974
169752008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16976
16977 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
16978 Fix overflow checking.
16979
169802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16981
16982 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
16983 Cancel previous change.
16984
169852008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16986
16987 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
16988 ccl->eight_bit_control. Fix check for buffer overflow.
16989 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
16990 (ccl_driver): Initialize extra_bytes to 0.
16991
169922008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16993
16994 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
16995 return it ORed with ctrl_modifier.
16996
169972008-01-29 Miles Bader <miles@gnu.org>
16998
16999 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17000
170012008-01-28 Jason Rumney <jasonr@gnu.org>
17002
17003 * w32.c (stat): Don't double check for networked drive.
17004
170052008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17006
17007 * window.c (run_window_configuration_change_hook): New function.
17008 Code extracted from set_window_buffer. Set the selected frame.
17009 (set_window_buffer): Use it.
17010 * window.h (run_window_configuration_change_hook): Declare.
17011 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17012
17013 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17014
170152008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17016
17017 * Makefile.in: Remove references to unused macros.
17018
170192008-01-26 Eli Zaretskii <eliz@gnu.org>
17020
17021 * w32.c (g_b_init_get_sid_sub_authority)
17022 (g_b_init_get_sid_sub_authority_count): New static variables.
17023 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17024 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17025 (init_user_info): Use them to retrieve uid and gid.
17026 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17027 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17028 st_uid and st_gid of the file.
17029
170302008-01-26 Jason Rumney <jasonr@gnu.org>
17031
17032 * w32.c (logon_network_drive): New function.
17033 (stat): Use it.
17034
170352008-01-26 Chong Yidong <cyd@stupidchicken.com>
17036
17037 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17038 invisible text covered with an ellipsis.
17039
170402008-01-25 Richard Stallman <rms@gnu.org>
17041
17042 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17043 jump back to beginning. Move some other initializations after that.
17044 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17045 New variables.
17046 (syms_of_xdisp): Init them.
17047
17048 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17049
17050 * buffer.c (reset_buffer_local_variables):
17051 Implement `permanent-local-hook'.
17052 (Qpermanent_local_hook): New variable.
17053 (syms_of_buffer): Init and staticpro it.
17054
170552008-01-25 Michael Albinus <michael.albinus@gmx.de>
17056
17057 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17058
170592008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17060
17061 * fns.c (Fclrhash): Return TABLE.
17062
170632008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17064
17065 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17066 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17067 is set even without positional changes.
17068 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17069
17070 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17071
170722008-01-23 Jason Rumney <jasonr@gnu.org>
17073
17074 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17075
17076 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17077 the unicode range available in MULE by locale-coding-system.
17078 Improve dbcs lead byte detection. Set event timestamp and modifiers
17079 earlier.
17080
170812008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17082
17083 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17084 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17085 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17086 when used on child processes.
17087
170882008-01-21 Michael Albinus <michael.albinus@gmx.de>
17089
17090 * dbusbind.c (Fdbus_method_return_internal): Rename from
17091 Fdbus_method_return.
17092 (Fdbus_unregister_object): Move to dbus.el.
17093 (Fdbus_call_method, Fdbus_method_return_internal)
17094 (Fdbus_send_signal): Improve debug messages.
17095
170962008-01-20 Martin Rudalics <rudalics@gmx.at>
17097
17098 * undo.c (undo_inhibit_record_point): New variable.
17099 (syms_of_undo): Initialize it.
17100 (record_point): Don't record point when undo_inhibit_record_point
17101 is set.
17102
171032008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17104
17105 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17106
17107 * xdisp.c (Qauto_hscroll_mode): New var.
17108 (syms_of_xdisp): Initialize it.
17109 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17110 window's buffer.
17111 (hscroll_windows): Don't check automatic_hscrolling_p here.
17112
17113 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17114 vscroll if we're setting window-buffer to the value it already has.
17115
171162008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17117
17118 * m/intel386.h: Remove references to XENIX.
17119
171202008-01-17 Andreas Schwab <schwab@suse.de>
17121
17122 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17123 instead of HAVE_X86_64_LIB64_DIR.
17124 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17125
171262008-01-17 Glenn Morris <rgm@gnu.org>
17127
17128 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17129 to HAVE_X86_64_LIB64_DIR.
17130
171312008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17132
17133 * s/irix3-3.h:
17134 * s/irix4-0.h:
17135 * s/386-ix.h:
17136 * s/domain.h:
17137 * s/hpux9-x11r4.h:
17138 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17139
17140 * sysdep.c: Remove code containing references to symbols defined
17141 by unsupported systems.
17142
171432008-01-16 Glenn Morris <rgm@gnu.org>
17144
17145 * coding.c (select-safe-coding-system-function): Doc fix.
17146
171472008-01-15 Glenn Morris <rgm@gnu.org>
17148
17149 * config.in: Revert 2008-01-13 change: this is a generated file.
17150
171512008-01-13 Tom Tromey <tromey@redhat.com>
17152
17153 * lisp.h: Fix typo.
17154
171552008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17156
17157 * m/sequent-ptx.h:
17158 * m/sequent.h:
17159 * s/ptx.h:
17160 * s/ptx4-2.h:
17161 * s/ptx4.h: Remove files for systems no longer supported.
17162
17163 * callproc.c (Fcall_process): Fix previous change.
17164
171652008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17166
17167 * unexsunos4.c: Remove file, system not supported anymore.
17168
17169 * m/mips.h:
17170 * m/intel386.h:
17171 * callproc.c:
17172 * config.in:
17173 * ecrt0.c:
17174 * emacs.c:
17175 * fileio.c:
17176 * frame.c:
17177 * getpagesize.h:
17178 * keyboard.c:
17179 * lread.c:
17180 * process.c:
17181 * puresize.h:
17182 * sysdep.c:
17183 * systty.h:
17184 * syswait.h:
17185 * unexec.c:
17186 * xdisp.c:
17187 * alloc.c: Remove code containing references to symbols defined by
17188 unsupported systems.
17189
171902008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17191
17192 * coding.c (detect_coding_mask): Fix previous change.
17193
171942008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17195
17196 * coding.c (detect_coding_iso2022): New arg
17197 latin_extra_code_state. Allow Latin extra codes only
17198 when *latin_extra_code_state is nonzero.
17199 (detect_coding_mask): If there is a NULL byte, detect the encoding
17200 as UTF-16 or binary. If Latin extra codes exist, detect the
17201 encoding as ISO-2022 only when there's no other proper encoding is
17202 found.
17203
172042008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17205
17206 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17207 #ifdef MAC_OS.
17208
172092008-01-08 Richard Stallman <rms@gnu.org>
17210
17211 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17212
172132008-01-06 Nick Roberts <nickrob@snap.net.nz>
17214
17215 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17216 menu bar in parentheses.
17217
172182008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17219
17220 * m/7300.h:
17221 * m/acorn.h:
17222 * m/alliant-2800.h:
17223 * m/alliant.h:
17224 * m/alliant1.h:
17225 * m/alliant4.h:
17226 * m/altos.h:
17227 * m/amdahl.h:
17228 * m/apollo.h:
17229 * m/att3b.h:
17230 * m/aviion-intel.h:
17231 * m/aviion.h:
17232 * m/celerity.h:
17233 * m/clipper.h:
17234 * m/cnvrgnt.h:
17235 * m/convex.h:
17236 * m/cydra5.h:
17237 * m/delta88k.h:
17238 * m/dpx2.h:
17239 * m/dual.h:
17240 * m/elxsi.h:
17241 * m/f301.h:
17242 * m/gould-np1.h:
17243 * m/gould.h:
17244 * m/i860.h:
17245 * m/ibmps2-aix.h:
17246 * m/ibmrt-aix.h:
17247 * m/ibmrt.h:
17248 * m/irist.h:
17249 * m/is386.h:
17250 * m/isi-ov.h:
17251 * m/mega68.h:
17252 * m/mg1.h:
17253 * m/news-r6.h:
17254 * m/news-risc.h:
17255 * m/news.h:
17256 * m/nh3000.h:
17257 * m/nh4000.h:
17258 * m/ns16000.h:
17259 * m/ns32000.h:
17260 * m/nu.h:
17261 * m/orion.h:
17262 * m/orion105.h:
17263 * m/paragon.h:
17264 * m/pfa50.h:
17265 * m/plexus.h:
17266 * m/pyramid.h:
17267 * m/pyrmips.h:
17268 * m/sh3el.h:
17269 * m/sps7.h:
17270 * m/sr2k.h:
17271 * m/stride.h:
17272 * m/sun1.h:
17273 * m/sun2.h:
17274 * m/sun3-68881.h:
17275 * m/sun3-fpa.h:
17276 * m/sun3-soft.h:
17277 * m/sun3.h:
17278 * m/sun386.h:
17279 * m/symmetry.h:
17280 * m/tad68k.h:
17281 * m/tahoe.h:
17282 * m/targon31.h:
17283 * m/tek4300.h:
17284 * m/tekxd88.h:
17285 * m/tower32.h:
17286 * m/tower32v3.h:
17287 * m/ustation.h:
17288 * m/wicat.h:
17289 * m/xps100.h:
17290 * s/cxux.h:
17291 * s/cxux7.h:
17292 * s/dgux.h:
17293 * s/dgux4.h:
17294 * s/dgux5-4-3.h:
17295 * s/dgux5-4r2.h:
17296 * s/esix.h:
17297 * s/esix5r4.h:
17298 * s/hiuxmpp.h:
17299 * s/hiuxwe2.h:
17300 * s/iris3-5.h:
17301 * s/iris3-6.h:
17302 * s/isc2-2.h:
17303 * s/isc3-0.h:
17304 * s/isc4-0.h:
17305 * s/isc4-1.h:
17306 * s/newsos5.h:
17307 * s/newsos6.h:
17308 * s/osf1.h:
17309 * s/osf5-0.h:
17310 * s/riscix1-1.h:
17311 * s/riscix12.h:
17312 * s/sco4.h:
17313 * s/sco5.h:
17314 * s/sunos4-0.h:
17315 * s/sunos4-1.h:
17316 * s/sunos413.h:
17317 * s/sunos4shr.h:
17318 * s/umax.h:
17319 * s/unipl5-2.h:
17320 * s/xenix.h:
17321 * cxux-crt0.s:
17322 * unexapollo.c:
17323 * unexconvex.c:
17324 * unexenix.c:
17325 * unexsni.c: Remove files for systems no longer supported.
17326
17327 * m/intel386.h: Remove references to unsupported systems.
17328
17329 * w32.c (get_emacs_configuration): Remove reference to i860.
17330
17331 * sysdep.c: Remove dead code.
17332
173332008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17334
17335 * s/rtu.h:
17336 * m/masscomp.h: Remove files. Platform is obsolete.
17337
173382008-01-04 Michael Albinus <michael.albinus@gmx.de>
17339
17340 * dbusbind.c (Fdbus_method_return): New function.
17341 (xd_read_message): Add the serial number to the event.
17342 (Fdbus_register_method): Activate the function.
17343
173442008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17345
17346 * keyboard.c (read_key_sequence): Fix typo.
17347
173482008-01-03 Michael Albinus <michael.albinus@gmx.de>
17349
17350 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17351 (xd_signature, xd_append_arg): Handle element type detection for
17352 empty arrays.
17353 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17354 SDATA () calls; this must be solved more general.
17355 (Fdbus_register_signal): Use SBYTES instead of strlen.
17356
173572008-01-03 Magnus Henoch <magnus@zemdatav>
17358
17359 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17360 unsigned int for byte values (necessary for big-endian platform).
17361 (Fdbus_call_method): Handle the case of no returned arguments.
17362
173632007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17364
17365 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17366
173672007-12-31 Magnus Henoch <mange@freemail.hu>
17368
17369 * dbusbind.c (xd_signature): Signature of variant is just "v".
17370
173712007-12-30 Michael Albinus <michael.albinus@gmx.de>
17372
17373 * dbusbind.c: Fix several errors and compiler warnings.
17374 Reported by Tom Tromey <tromey@redhat.com>.
17375 (XD_ERROR, XD_DEBUG_MESSAGE)
17376 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17377 (xd_append_arg): Part for basic D-Bus types rewritten.
17378 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17379 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17380 appropriate.
17381 (xd_read_message): Return Qnil. Don't signal an error; it is not
17382 useful during event reading.
17383 (Fdbus_register_signal): Signal an error if the check for
17384 FUNCTIONP fails.
17385 (Fdbus_register_method): New function. The implementation is not
17386 complete, the call of the function signals an error therefore.
17387 (Fdbus_unregister_object): New function, renamed from
17388 Fdbus_unregister_signal. The initial check signals an error, if
17389 the object is not well formed.
17390
173912007-12-30 Richard Stallman <rms@gnu.org>
17392
17393 * textprop.c (get_char_property_and_overlay):
17394 Signal error if POSITION is out of range in a buffer.
17395
173962007-12-29 Martin Rudalics <rudalics@gmx.at>
17397
17398 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17399 because the original parameters are in pure storage now.
17400
174012007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17402
17403 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17404
174052007-12-22 Eli Zaretskii <eliz@gnu.org>
17406
17407 * callint.c (syms_of_callint) <command-history>: Add reference to
17408 history-length in the doc string.
17409
174102007-12-17 Jason Rumney <jasonr@gnu.org>
17411
17412 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17413 before passing as wParam.
17414
174152007-12-22 Michael Albinus <michael.albinus@gmx.de>
17416
17417 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17418 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17419 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17420 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17421 as number.
17422 (Fdbus_call_method): Fix docstring.
17423
174242007-12-21 Michael Albinus <michael.albinus@gmx.de>
17425
17426 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17427 New macros.
17428 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17429 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17430 Simplify.
17431 (xd_signature): New function.
17432 (xd_append_arg): Compute also signatures. Major rewrite.
17433 (xd_retrieve_arg): Make debug messages friendly.
17434 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
17435 Check for signatures of arguments.
17436
174372007-12-19 Michael Albinus <michael.albinus@gmx.de>
17438
17439 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
17440 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
17441 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
17442 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
17443 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
17444 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
17445 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
17446 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
17447 (xd_retrieve_value): Remove. Functionality included in ...
17448 (xd_append_arg): New function.
17449 (Fdbus_call_method, Fdbus_send_signal): Apply it.
17450
174512007-12-16 Michael Albinus <michael.albinus@gmx.de>
17452
17453 * dbusbind.c (top): Include <stdio.h>.
17454 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
17455 dbus_message_new_method_call and dbus_message_new_signal.
17456 (Fdbus_register_signal): Rename unique_name to uname.
17457 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
17458 non-existing unique name. Fix typos in matching rule. Return an
17459 object which is useful in Fdbus_unregister_signal.
17460 (Fdbus_unregister_signal): Reimplementation, in order to remove
17461 only the corresponding entry.
17462 (Vdbus_registered_functions_table): Change the order of entries.
17463 Apply these changes in xd_read_message and Fdbus_register_signal.
17464
174652007-12-16 Andreas Schwab <schwab@suse.de>
17466
17467 * fileio.c (Finsert_file_contents): Fix overflow check to not
17468 depend on undefined integer overflow.
17469
174702007-12-14 Jason Rumney <jasonr@gnu.org>
17471
17472 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17473 for characters above 127.
17474
174752007-12-13 Jason Rumney <jasonr@gnu.org>
17476
17477 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
17478 before dereferencing array.
17479 (lookup_vk_code): Remove zero comparison.
17480
174812007-12-14 Michael Albinus <michael.albinus@gmx.de>
17482
17483 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
17484 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
17485 Use `unsigned int' instead of `uint'.
17486 (xd_read_message, Fdbus_register_signal): Split expressions into
17487 multiple lines before operators "&&" and "||", according to the
17488 GNU Coding Standards.
17489
174902007-12-14 Eli Zaretskii <eliz@gnu.org>
17491
17492 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
17493
174942007-12-12 Juri Linkov <juri@jurta.org>
17495
17496 * buffer.c (Frename_buffer): In interactive spec replace
17497 `read-buffer' with `read-string' that uses `buffer-name-history'
17498 as history, and the current buffer's name as default.
17499
175002007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
17501
17502 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
17503 manipulating the backtrace manually.
17504 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
17505 (struct backtrace, backtrace_list): Remove.
17506 (command_loop_1): Remove dead var `no_direct'.
17507
17508 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
17509 preserve non-built-in buffer-local variables.
17510 (Fkill_all_local_variables): Don't re-create&re-set permanent
17511 buffer-local variables.
17512
175132007-12-09 Juri Linkov <juri@jurta.org>
17514
17515 * buffer.c (Frename_buffer): Change interactive spec from "s" to
17516 Lisp code that uses `read-buffer' with current buffer as default.
17517
175182007-12-08 Michael Albinus <michael.albinus@gmx.de>
17519
17520 * dbusbind.c (xd_read_message): Generate an event for every
17521 registered handler. There might be several handlers registered
17522 for the same signal.
17523 (Fdbus_register_signal): Don't overwrite a registration for the
17524 same signal. Add a new registration if handlers are different.
17525 (Vdbus_registered_functions_table): Rework doc string.
17526
175272007-12-07 Michael Albinus <michael.albinus@gmx.de>
17528
17529 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
17530 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
17531 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
17532 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
17533 Unify argument lists.
17534 (xd_read_message, Fdbus_register_signal): Reorder and extend event
17535 arguments and hash table keys. Use unique name for service.
17536 (Fdbus_unregister_signal): Remove checks.
17537 (Vdbus_registered_functions_table): Fix doc string.
17538
175392007-12-05 Magnus Henoch <mange@freemail.hu>
17540
17541 * process.c (make_process): Initialize pty_flag to 0.
17542
175432007-12-05 Jason Rumney <jasonr@gnu.org>
17544
17545 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
17546 specified XBMs.
17547
175482007-12-05 Richard Stallman <rms@gnu.org>
17549
17550 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
17551
175522007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17553
17554 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
17555 New variable.
17556 (mac_try_close_socket) [MAC_OSX]: New function.
17557 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
17558 Update cfsockets_for_select. Replace invalid CFRunLoop source.
17559
17560 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
17561 Use mac_try_close_socket.
17562
175632007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17564
17565 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
17566 reloc_base.
17567 (copy_dysymtab): Compute relocation base here.
17568 (rebase_reloc_address) [__ppc64__]: New function.
17569 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
17570 changed.
17571
175722007-12-05 Jason Rumney <jasonr@gnu.org>
17573
17574 * w32proc.c (sys_spawnve): Quote args with wildcards.
17575
175762007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17577
17578 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
17579 __objc_* sections.
17580 (unrelocate) [_LP64]: Set relocation base to address of data segment.
17581
175822007-12-05 Michael Albinus <michael.albinus@gmx.de>
17583
17584 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
17585 Move check for Vdbus_registered_functions_table to
17586 xd_read_queued_messages.
17587 (xd_read_queued_messages): Protect xd_read_message calls by
17588 internal_condition_case_1.
17589
175902007-12-04 Michael Albinus <michael.albinus@gmx.de>
17591
17592 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
17593 Qdbus_system_bus and Qdbus_session_bus, respectively.
17594 (Vdbus_intern_symbols): Remove.
17595 (Vdbus_registered_functions_table): New hash table.
17596 (XD_SYMBOL_INTERN_SYMBOL): Remove.
17597 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
17598 Rewrite in order to manage registered functions by hash table
17599 Vdbus_registered_functions_table.
17600
176012007-12-03 Jan Djärv <jan.h.d@swipnet.se>
17602
17603 * xterm.c: Update URL to Window Manager Specification in comment.
17604
176052007-12-02 Michael Albinus <michael.albinus@gmx.de>
17606
17607 * config.in (HAVE_DBUS): Add.
17608
17609 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
17610 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
17611 (obj): Add $(DBUS_OBJ).
17612 (LIBES): Add $(DBUS_LIBS).
17613 (dbusbind.o): New target.
17614
17615 * dbusbind.c: New file.
17616
17617 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
17618
17619 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
17620 (Qdbus_event): New Lisp symbol.
17621 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
17622 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 17623 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
17624
17625 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
17626
176272007-12-01 Richard Stallman <rms@gnu.org>
17628
17629 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
17630
176312007-11-30 Jason Rumney <jasonr@gnu.org>
17632
17633 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
17634 (w32con_reset_terminal_modes): Clear screen buffer.
17635 (w32_face_attributes): Don't use color indexes that are out of range.
17636 Only reverse the default colors.
17637
17638 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
17639 WINDOWSNT.
17640
17641 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
17642
176432007-11-29 Jason Rumney <jasonr@gnu.org>
17644
17645 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
17646 (w32_face_attributes): Use Vtty_defined_color_alist to determine
17647 if the terminal colors are initialized.
17648 (unspecified_fg, unspecified_bg): Remove unused declarations.
17649
176502007-11-29 Andreas Schwab <schwab@suse.de>
17651
17652 * keyboard.c (apply_modifiers): Fix typo.
17653
176542007-11-29 Richard Stallman <rms@gnu.org>
17655
17656 * keymap.c (Fcurrent_local_map): Doc fix.
17657
176582007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
17659
17660 * s/gnu-kfreebsd.h: New file.
17661
176622007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
17663
17664 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
17665 Don't cast redundantly.
17666
17667 * keyboard.c (KEY_TO_CHAR): New macro.
17668 (parse_modifiers, apply_modifiers): Accept integer arguments.
17669 (read_key_sequence): Use them to unify the "shift->unshift" mapping
17670 for chars and symbol keys.
17671 After doing such remapping, apply function-key-map again.
17672
176732007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
17674
17675 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
17676 compiled anymore.
17677
176782007-11-26 Andreas Schwab <schwab@suse.de>
17679
17680 * process.c (list_processes_1): Fix indentation level of the
17681 command column.
17682
176832007-11-23 Andreas Schwab <schwab@suse.de>
17684
17685 * editfns.c (Fformat): Handle %c specially since it requires the
17686 argument to be of type int.
17687
176882007-11-23 Markus Triska <markus.triska@gmx.at>
17689
17690 * emacs.c (main): Call init_editfns before init_process, since
17691 init_process sets Vprocess_connection_type depending on OS release.
17692
176932007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
17694
17695 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
17696 (find_symbol_value): Use do_symval_forwarding.
17697
17698 * data.c (set_internal): Set the value in the `cons-cell' (for
17699 Buffer_Local_values) not only for frame-local variables.
17700
177012007-11-22 Andreas Schwab <schwab@suse.de>
17702
17703 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
17704 values to sprintf.
17705 * keymap.c (Fsingle_key_description): Likewise.
17706 * print.c (print_object): Likewise.
17707
177082007-11-22 Jan Djärv <jan.h.d@swipnet.se>
17709
17710 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
17711 file for image is nil.
17712
177132007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
17714
17715 * term.c: Include stdarg.h.
17716 (fatal): Implement using varargs.
17717 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
17718
177192007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17720
17721 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
17722 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
17723 Update call to buffer_slot_type_mismatch.
17724 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
17725 (buffer_slot_type_mismatch): Update.
17726 * buffer.c (buffer_local_types): Remove.
17727 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
17728 (defvar_per_buffer): Set the type in the buffer_objfwd.
17729
177302007-11-21 Jason Rumney <jasonr@gnu.org>
17731
17732 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
17733 CreateFileMapping returns NULL on failure.
17734
177352007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17736
17737 * search.c (Fset_match_data): Remove the `evaporate' feature.
17738 (unwind_set_match_data): Don't use the `evaporate' feature.
17739
177402007-11-21 Jason Rumney <jasonr@gnu.org>
17741
17742 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
17743
17744 * w32console.c (w32con_write_glyphs): Remove unused variables.
17745
177462007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
17747
17748 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
17749
17750 * s/darwin.h (MULTI_KBOARD): Remove.
17751
17752 * macfns.c (x_create_tip_frame, Fx_create_frame)
17753 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
17754
177552007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
17756
17757 * buffer.c (Fbuffer_local_value): Remove redundant test.
17758 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
17759 than in `current-buffer' to match the comment.
17760 Do the swap using swap_in_global_binding.
17761
17762 * data.c (store_symval_forwarding, set_internal):
17763 * eval.c (specbind): Remove dead code.
17764
17765 * coding.c (detect_coding, Fupdate_coding_systems_internal):
17766 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
17767 Since we do not want to see internal Lisp_*fwd objects here.
17768
177692007-11-18 Jan Djärv <jan.h.d@swipnet.se>
17770
17771 * sysdep.c (init_system_name): Use getaddrinfo if available.
17772
17773 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
17774 (x_scroll_bar_note_movement): start, end, with, height in struct
17775 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
17776
177772007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
17778
17779 * puresize.h (BASE_PURESIZE): Increase to 1190000.
17780
177812007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
17782
17783 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
17784 This undoes Richard's change of 14-Oct-2002.
17785
17786 * alloc.c (allocate_other_vector):
17787 * lisp.h (allocate_other_vector): Remove.
17788
17789 * window.c (struct save_window_data): Move non-lisp data to the end
17790 and make it `int' rather than Lisp_Object.
17791 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
17792 Done wrap/unwrap integer values.
17793 (Fset_window_configuration, compare_window_configurations):
17794 Update use of fields to their new types.
17795
17796 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
17797 Turn integer fields into `int'. Merge x_window_low and x_window_high.
17798 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
17799 (SET_SCROLL_BAR_X_WINDOW): Remove.
17800 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
17801 Access the new x_window field directly.
17802 * xterm.c (x_scroll_bar_create): Use a pseudovector.
17803 Don't wrap/unwrap integers into Lisp_Objects.
17804 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
17805 (x_scroll_bar_report_motion):
17806 Don't wrap/unwrap integers into Lisp_Objects.
17807 (x_term_init): Use SDATA.
17808 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
17809 (x_scroll_bar_set_handle, x_scroll_bar_remove)
17810 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
17811 (x_scroll_bar_report_motion, x_scroll_bar_clear):
17812 * xfns.c (x_set_background_color):
17813 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
17814 Access the new x_window field directly.
17815
17816 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
17817 (allocate_pseudovector): Make non-static.
17818
17819 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
17820 (allocate_pseudovector): Declare.
17821 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
17822
178232007-11-15 Andreas Schwab <schwab@suse.de>
17824
17825 * editfns.c (Fformat): Correctly format EMACS_INT values.
17826 Also take precision into account when formatting an integer.
17827
17828 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
17829
178302007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
17831
17832 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
17833 (syms_of_keyboard): Defsubr it.
17834
17835 * data.c (swap_in_global_binding): Fix longstanding bug where
17836 store_symval_forwarding was not called with the right second argument,
17837 thus causing objfwd-ing from being dropped.
17838
178392007-11-14 Juanma Barranquero <lekktu@gmail.com>
17840
17841 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
17842 (Fx_display_pixel_height, Fx_display_planes)
17843 (Fx_display_color_cells, Fx_server_max_request_size)
17844 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17845 (Fx_display_visual_class, Fx_display_save_under):
17846 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
17847 (Fx_display_pixel_height, Fx_display_planes)
17848 (Fx_display_color_cells, Fx_server_max_request_size)
17849 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
17850 (Fx_display_mm_height, Fx_display_mm_width)
17851 (Fx_display_backing_store, Fx_display_visual_class)
17852 (Fw32_select_font, Fx_display_save_under):
17853 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
17854 (Fx_display_pixel_height, Fx_display_planes)
17855 (Fx_display_color_cells, Fx_server_max_request_size)
17856 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17857 (Fx_display_save_under): Fix typos in docstrings.
17858
178592007-11-14 Juanma Barranquero <lekktu@gmail.com>
17860
17861 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
17862 corresponding to deleted entries; they are an implementation detail.
17863 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
17864 Remove variables.
17865 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
17866 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
17867 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
17868 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
17869 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
17870 (Fw32_define_rgb_color, Fw32_load_color_file)
17871 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
17872 Fix typos in docstrings.
17873 (Fx_server_version): Reflow docstring.
17874 (Fw32_shell_execute): Doc fixes.
17875
178762007-11-13 Juanma Barranquero <lekktu@gmail.com>
17877
17878 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
17879 if w32_parse_hot_key returned nil.
17880
178812007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
17882
17883 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
17884
178852007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 17886
aac0c6e3
MR
17887 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
17888
17889 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
17890
17891 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
17892 Remove W32_SCROLL_BAR_CLICK_EVENT.
17893
17894 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
17895 Add MULTIMEDIA_KEY_EVENT.
17896
17897 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
17898 (lispy_multimedia_keys) [WINDOWSNT]: New array.
17899 (make_lispy_event) [WINDOWSNT]: Use it to translate
17900 MULTIMEDIA_KEY_EVENT.
17901
17902 * w32term.h (WM_APPCOMMAND): Define if not already.
17903 (GET_APPCOMMAND_LPARAM): Likewise.
17904
17905 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
17906 WM_APPCOMMAND.
17907
17908 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
17909 (syms_of_w32fns): Export and initialize it.
17910 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
17911
179122007-11-09 Chong Yidong <cyd@stupidchicken.com>
17913
17914 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
17915 twice.
17916
17917 * xdisp.c (handle_face_prop): Fix last change.
17918
179192007-11-09 Richard Stallman <rms@gnu.org>
17920
17921 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
17922 not just for after-strings and before-strings.
17923 Call face_for_overlay_string and pass the overlay to it.
17924 (handle_display_prop): Determine whether property came from an overlay.
17925 Pass OVERLAY arg to handle_single_display_spec.
17926 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
17927 (load_overlay_strings): Fill in it->string_overlays.
17928 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
17929
17930 * xfaces.c (face_for_overlay_string): Function renamed from
17931 face_at_buffer_position_no_overlays, and add arg OVERLAY.
17932
17933 * dispextern.h (struct it): New elt string_overlays.
17934 New elt from_overlay, also in stack.
17935 Rearrange a few elements.
17936 (face_for_overlay_string): Decl renamed from
17937 face_at_buffer_position_no_overlays, and add argument.
17938
179392007-11-09 Richard Stallman <rms@gnu.org>
17940
17941 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
17942 to get the base face for an overlay string.
17943
17944 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
17945
17946 * xfaces.c (face_at_buffer_position_no_overlays): New function.
17947
17948 * xdisp.c (handle_stop): Move some code out of loop.
17949
179502007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17951
17952 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
17953 Fix conversion from Lisp object to ATSUFontID.
17954
179552007-11-09 Jason Rumney <jasonr@gnu.org>
17956
17957 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
17958
179592007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17960
17961 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
17962 Don't assume regions are aligned to page boundary.
17963 (print_load_command_name): Add LC_UUID if defined.
17964
179652007-11-09 Richard Stallman <rms@gnu.org>
17966
17967 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
17968
179692007-11-07 Jason Rumney <jasonr@gnu.org>
17970
17971 * s/windows95.h: Remove.
17972
179732007-11-06 Jan Djärv <jan.h.d@swipnet.se>
17974
17975 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
17976 abort with a message on unhandled store_type values.
17977
179782007-11-01 Jan Djärv <jan.h.d@swipnet.se>
17979
17980 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
17981 Remove HAVE_X11R5 and HAVE_X11R4.
17982
179832007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17984
17985 * Makefile.in: Remove references to sunfns.c and sunfns.o.
17986
179872007-11-01 Johan Bockgård <bojohan@gnu.org>
17988
17989 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
17990 Don't set s->stippled_p here, since it has already been set by
17991 x_set_glyph_string_gc from x_draw_glyph_string.
17992
179932007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17994
17995 * sunfns.c: Remove file.
17996
17997 * m/sun386.h:
17998 * m/sun2.h:
17999 * m/sparc.h: Remove Sun windows code.
18000
180012007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18002
18003 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18004 (init_keyboard): Set current_kboard's window-system to nil.
18005 (tty_read_avail_input): Typo.
18006 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18007
180082007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18009
18010 * s/usg5-4.h:
18011 * s/usg5-3.h:
18012 * s/ptx.h:
18013 * m/is386.h:
18014 * m/ibmps2-aix.h:
18015 * Makefile.in: Remove all mentions of X10.
18016
18017 * dispnew.c (syms_of_display): Don't mention version 10.
18018
180192007-10-28 Juanma Barranquero <lekktu@gmail.com>
18020
18021 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18022 ($(BLD)/abbrev.$(O)): Remove.
18023
180242007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18025
18026 Rewrite abbrev.c in Elisp.
18027 * image.c (Qcount): Don't declare as extern.
18028 (syms_of_image): Initialize and staticpro `Qcount'.
18029 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18030 * emacs.c (main): Don't call syms_of_abbrev.
18031 * Makefile.in (obj): Remove abbrev.o.
18032 (abbrev.o): Remove.
18033 * abbrev.c: Remove.
18034
180352007-10-26 Martin Rudalics <rudalics@gmx.at>
18036
18037 * window.c (window_min_size_2): Don't count header-line.
18038
180392007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18040
18041 * frame.h (struct frame): Move all bit fields after the first bit
18042 field to take advantage of the available space. Group all the
18043 chars together to reduce wasted space due to padding.
18044
180452007-10-26 Juanma Barranquero <lekktu@gmail.com>
18046
18047 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18048
18049 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18050 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18051 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18052 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18053 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18054 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18055 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18056 (last_marked, mark_object_loop_halt): Make static.
18057
18058 * frame.c (syms_of_frame) <delete-frame-functions>:
18059 Fix typo in docstring.
18060
180612007-10-25 Juanma Barranquero <lekktu@gmail.com>
18062
18063 * w32.c (init_environment): Fix tiny memory leak.
18064 (w32_get_resource): Remove unused variable `ok'.
18065
180662007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18067
18068 Make `window-system' into a keyboard-local variable (rather than
18069 frame-local as done originally by multi-tty).
18070
18071 * keyboard.h (struct kboard): Add Vwindow_system.
18072 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18073 (mark_kboards): Mark Vwindow_system.
18074
18075 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18076 (init_display): Don't set the obsolete `window-system' frame-param.
18077
18078 * xterm.c (x_term_init):
18079 * w32term.c (w32_create_terminal):
18080 * term.c (init_tty): Set Vwindow_system.
18081 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18082 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18083
18084 * xfns.c (Fx_create_frame, x_create_tip_frame):
18085 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18086 * macfns.c (Fx_create_frame):
18087 Don't set the obsolete `window-system' frame-param.
18088
18089 * frame.h (Qwindow_system): Remove.
18090 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18091 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18092
180932007-10-24 Richard Stallman <rms@gnu.org>
18094
18095 * frame.c (x_figure_window_size): For fullscreen case,
18096 set USPosition | PPosition without clobbering rest of window_prompting.
18097
18098 * keyboard.c (Fcurrent_idle_time): Doc fix.
18099
18100 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18101
181022007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18103
18104 * process.c (unwind_request_sigio): Only define if __ultrix__.
18105
18106 * callproc.c (child_setup): Remove spurious *.
18107
18108 * lisp.h (Fget_text_property): Declare.
18109 (have_menus_p): Declare it here rather than in sys-dep header files.
18110 * macterm.h (have_menus_p):
18111 * msdos.h (have_menus_p):
18112 * xterm.h (have_menus_p): Remove.
18113
18114 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18115 (Fmake_variable_frame_local): Just check the variable's const-ness
18116 rather than checking nil or t.
18117
181182007-10-22 Jason Rumney <jasonr@gnu.org>
18119
18120 * w32fns.c: Include math.h.
18121 (w32_abort): Declaration moved to nt/config.nt.
18122
18123 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18124 (abort): Redefinition moved to nt/config.nt.
18125
18126 * m/windowsnt.h: Remove.
18127
181282007-10-22 Juanma Barranquero <lekktu@gmail.com>
18129
18130 * emacs.c (Fdump_emacs): Fix typo in message.
18131 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18132 <installation-directory>: Reflow docstring.
18133
181342007-10-22 Juri Linkov <juri@jurta.org>
18135
18136 * minibuf.c: Allow minibuffer default to be a list of default values.
18137 With empty input use the first element of this list as returned default.
18138 (string_to_object)
18139 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18140 (read_minibuf): If defalt is cons, set histstring to its car.
18141 (Fread_string): If default_value is cons, set val to its car.
18142 (Fread_buffer): If def is cons, use its car.
18143 (Fcompleting_read): If defalt is cons, set val to its car.
18144
181452007-10-21 Michael Albinus <michael.albinus@gmx.de>
18146
18147 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18148
181492007-10-20 Juanma Barranquero <lekktu@gmail.com>
18150
18151 * doc.c (Fdocumentation): Check for advice in all cases.
18152
181532007-10-19 Chong Yidong <cyd@stupidchicken.com>
18154
18155 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18156
181572007-10-19 Richard Stallman <rms@gnu.org>
18158
18159 * doc.c (Fdocumentation): Check for and handle an advised function.
18160
181612007-10-19 Juanma Barranquero <lekktu@gmail.com>
18162
18163 * process.c (Fset_process_filter): Doc fix.
18164
181652007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18166
18167 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18168 which caused key-translation-map to applied repeatedly (thus breaking
18169 double-mode).
18170
181712007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18172
18173 * xselect.c (x_own_selection, x_handle_selection_clear)
18174 (x_clear_frame_selections):
18175 * w32menu.c (list_of_panes, list_of_items):
18176 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18177 * textprop.c (validate_plist, interval_has_all_properties)
18178 (interval_has_some_properties, interval_has_some_properties_list)
18179 (add_properties, text_property_list):
18180 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18181 * minibuf.c (Fassoc_string):
18182 * macselect.c (x_own_selection, x_clear_frame_selections)
18183 (Fx_disown_selection_internal):
18184 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18185 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18186
181872007-10-17 Chong Yidong <cyd@stupidchicken.com>
18188
18189 * process.c: Link to libs for calling res_init() if available.
18190 (Fmake_network_process): Call res_init() before getaddrinfo or
18191 gethostbyname, if possible.
18192
181932007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18194
18195 * lread.c (read1): Set pvectype for char_tables.
18196
18197 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18198 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18199 Add type checks.
18200 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18201
18202 * alloc.c (free_misc): Use XMISCTYPE.
18203 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18204
182052007-10-17 Glenn Morris <rgm@gnu.org>
18206
18207 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18208 (syms_of_minibuf): Add Qcompletion_ignore_case.
18209 * dired.c (Qcompletion_ignore_case): Change to external.
18210 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18211 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18212 (Fread_file_name): Use it rather than intern'ing.
18213
18214 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18215 (Fread_coding_system): Ignore case of user input.
18216
182172007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18218
18219 * xdisp.c (handle_display_prop): Ignore display specs after
18220 replacing one when string text is being replaced.
18221 (handle_single_display_spec): Pretend as if characters with display
18222 property haven't been consumed only when buffer text is being replaced.
18223
182242007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18225
18226 * xfns.c (Fx_create_frame, Fx_display_list):
18227 * window.c (window_fixed_size_p, enlarge_window)
18228 (shrink_window_lowest_first):
18229 * macterm.c (init_font_name_table):
18230 * macfns.c (Fx_create_frame, Fx_display_list):
18231 * lread.c (close_load_descs):
18232 * keyboard.c (read_char_x_menu_prompt):
18233 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18234 * coding.c (code_convert_region_unwind): Test the type of an object
18235 rather than just !NILP before extracting data from it.
18236
18237 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18238
18239 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18240 (XMISCANY): New macro.
18241 (XMISCTYPE): Use it.
18242 (struct Lisp_Misc_Any): New type.
18243 (union Lisp_Misc): Use it.
18244 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18245 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18246 (find_symbol_value, set_internal, default_value, Fset_default)
18247 (Fmake_variable_buffer_local, Fmake_local_variable)
18248 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18249 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18250 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18251 * alloc.c (allocate_buffer): Set the size and tag.
18252 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18253 Use XMISCANY.
18254 (die): Follow the GNU convention for error messages.
18255 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18256 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18257 tag any more.
18258 (set_buffer_internal_1):
18259 * frame.c (store_frame_param):
18260 * eval.c (specbind):
18261 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18262
18263 * doc.c (Fsnarf_documentation): Simplify.
18264
182652007-10-14 Juanma Barranquero <lekktu@gmail.com>
18266
18267 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18268 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18269
182702007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18271
18272 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18273
182742007-10-14 Juanma Barranquero <lekktu@gmail.com>
18275
18276 * eval.c (do_autoload): Don't save autoloads.
18277
18278 * data.c (Ffset): Save autoload of the function being set.
18279
182802007-10-07 John Paul Wallington <jpw@pobox.com>
18281
18282 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18283 parameter before setting up faces.
18284
182852007-10-13 Eli Zaretskii <eliz@gnu.org>
18286
18287 * ccl.c (Fregister_code_conversion_map):
18288 * keyboard.c (append_tool_bar_item): Reformat last change.
18289
18290 * lisp.h (eabs): Rename from `abs'. All callers changed.
18291
182922007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18293
18294 * buffer.c (add_overlay_mod_hooklist):
18295 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18296 * fontset.c (make_fontset):
18297 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18298 (append_tool_bar_item):
18299 * macmenu.c (grow_menu_items):
18300 * w32menu.c (grow_menu_items):
18301 * xmenu.c (grow_menu_items): Use larger_vector.
18302
183032007-10-13 Eli Zaretskii <eliz@gnu.org>
18304
18305 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18306 selected frame'' on MSDOS).
18307
183082007-10-12 Martin Rudalics <rudalics@gmx.at>
18309
18310 * frame.c (Qexplicit_name): New variable.
18311 (x_report_frame_params): Report it in parameter alist.
18312 (syms_of_frame): Intern and staticpro it.
18313
183142007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18315
18316 * macfns.c (x_create_tip_frame): Set terminal for frame.
18317
183182007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18319
18320 * frame.c (Qenvironment): Remove.
18321 (syms_of_frame) <Qenvironment>: Don't initialize.
18322 (Fdelete_frame): Don't treat the `environment' param specially.
18323 * frame.h (Qenvironment): Don't declare.
18324 * callproc.c (set_initial_environment): Don't set unused frame param.
18325
18326 * frame.c (Fframe_with_environment): Remove.
18327 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18328
18329 * lisp.h (Fframe_with_environment): Don't declare.
18330
183312007-10-10 Juanma Barranquero <lekktu@gmail.com>
18332
18333 * indent.c (indent_tabs_mode, last_known_column)
18334 (last_known_column_modified): Make static.
18335 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18336
183372007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18338
18339 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18340
183412007-10-09 Jason Rumney <jasonr@gnu.org>
18342
18343 * w32term.c (x_set_window_size): Disable code that attempts to tell
18344 Lisp code about a size change before it actually happens.
18345
183462007-10-09 Richard Stallman <rms@gnu.org>
18347
18348 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18349 return HANDLED_RETURN.
18350
183512007-10-08 Martin Rudalics <rudalics@gmx.at>
18352
18353 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18354 when there's an unread command event.
18355
18356 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18357 window autoselection act appropriately when leaving selected frame.
18358 (syms_of_frame): Initialize focus_follows_mouse.
18359 * frame.h (focus_follows_mouse): Extern it.
18360 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18361 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18362 * msdos.c (dos_rawgetc): Likewise.
18363 * w32term.c (w32_read_socket): Likewise.
18364 * xterm.c (handle_one_xevent): Likewise.
18365 * xdisp.c (syms_of_xdisp): In doc-string of
18366 mouse-autoselect-window mention focus-follows-mouse.
18367
183682007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18369
18370 * macterm.c (mac_load_query_font): Fix missing return value.
18371 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18372 Add BLOCK_INPUT.
18373
183742007-10-08 Richard Stallman <rms@gnu.org>
18375
18376 * xdisp.c (get_window_cursor_type): Implement documented behavior
18377 for cursor-in-non-selected-windows = t.
18378
183792007-10-08 Jason Rumney <jasonr@gnu.org>
18380
18381 * w32.c (w32_get_resource): Always close registry keys.
18382
183832007-10-08 Jason Rumney <jasonr@gnu.org>
18384
18385 * makefile.w32-in (LIBS): Add COMCTL32.
18386
18387 * w32fns.c (globals_of_w32fns): Init common controls.
18388
183892007-10-08 Richard Stallman <rms@gnu.org>
18390
18391 * image.c (our_memory_buffer): Rename from omfib_buffer.
18392
183932007-10-08 Richard Stallman <rms@gnu.org>
18394
18395 * buffer.c (Foverlays_at): Doc fix.
18396
183972007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18398
18399 * fns.c (Fplist_put): Preserve uneven tail data.
18400
184012007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18402
18403 * termhooks.h (enum event_kind): Remove trailing comma.
18404
18405 * frame.h (enum): Remove trailing comma.
18406
184072007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18408
18409 * w32proc.c (delete_child): Don't terminate threads of zombies.
18410
184112007-10-08 Martin Rudalics <rudalics@gmx.at>
18412
18413 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18414
18415 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18416 last-repeatable-command.
18417 (init_kboard): Initialize Vlast_repeatable_command.
18418 (command_loop_1): Set it to real_this_command unless that was
18419 bound to an input event.
18420 (mark_kboards): Mark it.
18421
184222007-10-08 Richard Stallman <rms@gnu.org>
18423
18424 * eval.c (condition-case): Doc fix.
18425
184262007-10-08 Masatake YAMATO <jet@gyve.org>
18427
18428 * xfaces.c (tty_supports_face_attributes_p): Fix code
18429 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18430 was copied and not edited.
18431
184322007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
18433
18434 Add new `input-decode-map' keymap and use it for terminal
18435 escape sequences.
18436 * keyboard.h (struct kboard): Add Vinput_decode_map.
18437 Remove Vlocal_key_translation_map.
18438 * keyboard.c (read_key_sequence): Add support for input-decode-map.
18439 (init_kboard): Init input-decode-map.
18440 Replace local-key-translation-map back with key-translation-map.
18441 (syms_of_keyboard): Declare input-decode-map.
18442 Remove local-key-translation-map. Update docstrings.
18443 (mark_kboards): Mark Vinput_decode_map.
18444 Don't mark Vlocal_key_translation_map.
18445 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
18446 Replace local-key-translation-map back with key-translation-map.
18447 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
18448 Bind in input-decode-map rather than function-key-map.
18449
18450 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
18451 This was made redundant by the previous introduction of XSETPVECTYPE.
18452
184532007-10-09 Richard Stallman <rms@gnu.org>
18454
18455 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
18456
184572007-09-29 Richard Stallman <rms@gnu.org>
18458
18459 * eval.c (internal_condition_case_2, internal_condition_case_1)
18460 (internal_condition_case): Reenable abort if x_catching_errors ()
18461 to see if that really happens and why.
18462
184632007-10-06 Andreas Schwab <schwab@suse.de>
18464
18465 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18466
184672007-10-04 Juanma Barranquero <lekktu@gmail.com>
18468
18469 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18470
184712007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18472
18473 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
18474
184752007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
18476
18477 * window.h (struct window):
18478 * window.c (struct save_window_data, struct saved_window):
18479 * termhooks.h (struct terminal):
18480 * process.h (struct Lisp_Process):
18481 * frame.h (struct frame):
18482 * buffer.h (struct buffer):
18483 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
18484 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
18485 The size field of (pseudo)vectors is now unsigned.
18486 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
18487
18488 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
18489 Turn `count' into an integer.
18490
18491 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
18492 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
18493 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
18494 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
18495 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
18496
18497 * alloc.c (allocate_pseudovector): New fun.
18498 (ALLOCATE_PSEUDOVECTOR): New macro.
18499 (allocate_window, allocate_terminal, allocate_frame)
18500 (allocate_process): Use it.
18501 (mark_vectorlike): New function.
18502 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
18503 (mark_terminals): Use it.
18504 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
18505 (Fmake_byte_code): Use XSETPVECTYPE.
18506
18507 * frame.c (Fframe_parameters): Minor simplification.
18508
18509 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
18510
18511 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
18512
18513 * buffer.c (Fget_buffer_create, init_buffer_once):
18514 * lread.c (defsubr):
18515 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
18516
18517 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
18518 defined differently in the m/*.h files.
18519 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
18520 (XSETPVECTYPE): New macro.
18521 (XSETPSEUDOVECTOR): Use it.
18522
18523 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
18524 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
18525
18526 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
18527 * lread.c (defvar_per_buffer):
18528 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
18529
18530 * window.c (candidate_window_p): Only consider as visible frames that
18531 are on the same terminal.
18532
18533 * m/ibms390x.h (MARKBIT): Remove unused macro.
18534
185352007-10-01 Juanma Barranquero <lekktu@gmail.com>
18536
18537 * lread.c (Fload): Fix typo in docstring.
18538
185392007-10-01 Michaël Cadilhac <michael@cadilhac.name>
18540
18541 * floatfns.c (Fexpt): Manually check for overflows, so that a power
18542 of a non-zero value can't yield zero.
18543
185442007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
18545
18546 * term.c (term_clear_mouse_face, term_mouse_highlight)
18547 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
18548
18549 * print.c (safe_debug_print): Use XHASH.
18550
18551 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
18552 Lisp elements such as tags.
18553 (XHASH): New macro.
18554 (EQ): Use it.
18555 (SREF, SSET, STRING_COPYIN): Use SDATA.
18556 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
18557
18558 * alloc.c (mark_terminal): Remove left-over declaration.
18559 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
18560 (allocate_vectorlike): Remove type argument. Adjust callers.
18561 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
18562 Only handle the one remaining MEM_TYPE_VECTORLIKE.
18563
18564 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
18565 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
18566 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
18567 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
18568 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
18569 Use them.
18570
18571 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
18572 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
18573 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
18574
185752007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
18576
18577 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
18578 loaded by default.
18579
185802007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
18581
18582 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
18583 on this tty.
18584 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
18585
18586 * term.c (mouse_face_window): Rename from Qmouse_face_window.
18587 Update all users.
18588 (handle_one_term_event): Use Gpm_DrawPointer.
18589 (Fgpm_mouse_start): Rename from Fterm_open_connection.
18590 Signal errors instead of returning nil. Always return nil.
18591 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
18592 Make it a noop if gpm-mouse was not activated.
18593 (syms_of_term): Update names.
18594
185952007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
18596
18597 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
18598 (init_sys_modes): Check that gpm_tty is the current tty.
18599
18600 * alloc.c (allocate_terminal): Set the vector size to only count the
18601 lisp fields. Initialize those to nil.
18602 (mark_object): Don't treat terminals specially.
18603 (mark_terminal): Remove.
18604 (mark_terminals): Use mark_object instead.
18605
18606 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
18607 the GC to the beginning.
18608
18609 * indent.h:
18610 * indent.c: Use EMACS_INT for ints coming from Elisp data.
18611
18612 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
18613
186142007-09-25 Jason Rumney <jasonr@gnu.org>
18615
18616 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
18617
18618 * w32console.c (create_w32cons_output): Remove.
18619
18620 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
18621
18622 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
18623 (reset_sys_modes): Use reset_terminal_modes_hook.
18624
186252007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
18626
18627 * eval.c (do_autoload): Don't output any message.
18628
186292007-09-24 Juri Linkov <juri@jurta.org>
18630
18631 * emacs.c (standard_args): Change priority of "--no-splash"
18632 from 40 to 3. Add "--no-desktop" with the same priority.
18633
186342007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
18635
18636 * alloc.c (gc_sweep): Check cons cell mark bits word by word
18637 and optimize the case where they are all 1.
18638
186392007-09-23 Johannes Weiner <hannes@saeurebad.de>
18640
18641 * lisp.h (abs): Define if not defined.
18642 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
18643 Don't define `abs', since it's defined in lisp.h.
18644
186452007-09-22 Eli Zaretskii <eliz@gnu.org>
18646
18647 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
18648 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
18649 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
18650 (init_tty): Use DEV_TTY instead of "/dev/tty".
18651 [WINDOWSNT]: No need to protect from NAME arg being null.
18652
186532007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
18654
18655 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
18656 up the tty state.
18657
186582007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18659
18660 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
18661 (gpm_tty): Change its type.
18662 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
18663 (gpm_tty): Change its type and initialize it.
18664 (Fterm_open_connection): Check the frame is indeed a tty.
18665 Use the new gpm_tty.
18666 (Fterm_close_connection): Use the new gpm_tty.
18667 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
18668 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
18669
186702007-09-21 Juanma Barranquero <lekktu@gmail.com>
18671
18672 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
18673 underline_color, to draw strike-through.
18674
186752007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18676
18677 * lisp.h (allocate_terminal): Declare.
18678
18679 * window.c (candidate_window_p): Consider frames that are being placed
18680 by the user as somewhere between visible and iconified.
18681 (window_loop): Prefer windows on the current frame.
18682 (Fselect_window): Move the use of select-frame to the beginning so we
18683 can just delegate all the work (it'll call us back anyway).
18684
18685 * frame.c (Qdisplay_environment_variable):
18686 * frame.h (Qdisplay_environment_variable): Delete.
18687
18688 * .gdbinit (xbacktrace): Print the arg's address rather than the value
18689 of the first arg, since that value may be a union.
18690
18691 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
18692 parameter rather than Qdisplay_environment_variable. If all else
18693 fails, look for DISPLAY in initial-environment.
18694
186952007-09-21 Glenn Morris <rgm@gnu.org>
18696
18697 * Makefile.in (emacstool): Remove target.
18698 (lisp, shortlisp): Remove termdev.elc.
18699
187002007-09-21 Markus Triska <markus.triska@gmx.at>
18701
18702 * xterm.c (x_delete_display): Compile session management conditionally.
18703
187042007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
18705
18706 * callproc.c (getenv_internal_1): New function.
18707 (getenv_internal): Use it.
18708 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
18709
18710 * terminal.c (get_terminal): Don't accept ints to represent terminals.
18711 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
18712 (Fset_terminal_parameter): Work with dead terminals as well.
18713 (Fmodify_terminal_parameters): Remove.
18714
18715 * terminal.c (get_terminal): Handle terminals.
18716 Make sure the terminal returned is live.
18717 (create_terminal): Use allocate_terminal.
18718 (mark_terminals): Move to alloc.c.
18719 (delete_terminal): Use terminal->name as liveness status.
18720 NULL out fields after freeing their contents.
18721 Don't deallocate the object.
18722 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
18723 rather than an int.
18724 (Fterminal_live_p): Accept non-integer arguments.
18725 (Fterminal_list): Return terminal objects rather than an ints.
18726
18727 * alloc.c (enum mem_type): New member for `terminal' objects.
18728 (allocate_terminal): New function.
18729 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
18730 Handle terminals.
18731 (mark_terminal): New fun.
18732 (mark_terminals): Move from terminal.c.
18733
18734 * term.c (get_tty_terminal): Don't treat output_initial specially.
18735 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
18736 (delete_tty): Use terminal->name as liveness status.
18737
18738 * termhooks.h (struct terminal): Make it into a pseudovector.
18739 Remove `deleted' replaced by checking `name's nullness.
18740
18741 * print.c (print_object): Handle terminals.
18742
18743 * lisp.h (enum pvec_type): New `terminal' pseudovector.
18744 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
18745
18746 * frame.c (make_terminal_frame):
18747 * keyboard.c (tty_read_avail_input):
18748 * w32term.c (x_delete_terminal):
18749 * xfns.c (Fx_create_frame, x_create_tip_frame):
18750 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
18751
187522007-09-20 Glenn Morris <rgm@gnu.org>
18753
18754 * process.c (Fmake_network_process): Doc fix.
18755
187562007-09-19 Jason Rumney <jasonr@gnu.org>
18757
18758 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
18759
187602007-09-19 Michaël Cadilhac <michael@cadilhac.name>
18761
18762 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
18763 Fix a C warning regarding variable constness.
18764
18765 * xterm.c (handle_one_xevent): Fix a C warning.
18766
187672007-09-18 Jason Rumney <jasonr@gnu.org>
18768
18769 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
18770
187712007-09-17 Jan Djärv <jan.h.d@swipnet.se>
18772
18773 * gtkutil.c (gdpy_def): New variable.
18774 (xg_initialize): Initialize gdpy_def.
18775 (xg_display_close): If no other display exists, set gdpy_def to a
18776 new connection.
18777
187782007-09-16 Jan Djärv <jan.h.d@swipnet.se>
18779
18780 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
18781 when we have no file name for the icon.
18782 (xg_tool_bar_expose_callback): Remove.
18783 (xg_create_tool_bar): Don't connect expose signal to
18784 xg_tool_bar_expose_callback.
18785 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
18786
187872007-09-16 Andreas Schwab <schwab@suse.de>
18788
18789 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
18790 values instead of zapping them.
18791
187922007-09-14 Glenn Morris <rgm@gnu.org>
18793
18794 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
18795 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
18796 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
18797 scope and rename to omfib_buffer for clarity.
18798 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
18799
188002007-09-14 Kenichi Handa <handa@m17n.org>
18801
18802 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
18803
188042007-09-13 Jason Rumney <jasonr@gnu.org>
18805
18806 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
18807
18808 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
18809
18810 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
18811 (mac_term_init): Call here instead, passing rif.
18812
188132007-09-13 Glenn Morris <rgm@gnu.org>
18814
18815 * s/hpux.h: No longer define `static' as nothing.
18816
188172007-09-13 Johan Bockgård <bojohan@gnu.org>
18818
18819 * callint.c (Fcall_interactively): Remove unused var `fun'.
18820
188212007-09-12 Romain Francoise <romain@orebokech.com>
18822
18823 * window.c (prefer_window_split_horizontally, display_buffer):
18824 Revert 2007-09-08 change.
18825
188262007-09-12 Glenn Morris <rgm@gnu.org>
18827
18828 * alloca.c: Remove file.
18829 * Makefile.in (alloca): Do not undef.
18830 (allocaobj, alloca.o): Remove.
18831 (otherobj): Remove allocaobj.
18832 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
18833 * regex.c (C_ALLOCA): Remove all references and code that was only
18834 used when this was defined.
18835 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
18836 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
18837 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
18838
18839 * Makefile.in (SOURCES, unlock, relock): Delete.
18840
18841 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
18842 (menu_grab_callback): All uses changed.
18843
18844 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
18845 (x_reply_selection_request): All uses changed.
18846
188472007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
18848
18849 * lread.c (load_warn_old_style_backquotes): Change message to look
18850 better when it appears in the middle of byte-compiler messages.
18851
188522007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
18853
18854 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
18855
18856 * xterm.c (x_create_terminal): Add comment.
18857
18858 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
18859
188602007-09-10 Richard Stallman <rms@gnu.org>
18861
18862 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
18863
188642007-09-10 Michaël Cadilhac <michael@cadilhac.name>
18865
18866 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
18867 (DEFUN): Document `intspec', use it instead of `prompt'.
18868
18869 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
18870
18871 * data.c (Finteractive_form): If the interactive specification starts
18872 with a `(', use it as a Lisp form.
18873
18874 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
18875 name and file modes.
18876
18877 * callint.c (Fcall_interactively): Comment fixes.
18878
188792007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
18880
18881 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
18882 and compiled functions.
18883
188842007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
18885
18886 * window.c (prefer_window_split_horizontally): New variable.
18887 (display_buffer): Consider splitting window horizontally depending
18888 on prefer_window_split_horizontally.
18889
188902007-09-08 Eli Zaretskii <eliz@gnu.org>
18891
18892 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
18893
188942007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18895
18896 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
18897
18898 * frame.c (x_set_frame_parameters): Check number is positive before
18899 using XFASTINT.
18900
18901 * window.c (freeze_window_start): Don't presume selected_window holds
18902 a window object.
18903 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
18904
189052007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
18906
18907 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
18908
189092007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18910
18911 * window.c (Vsplit_window_preferred_function): New var.
18912 (Fdisplay_buffer): Use it.
18913 (syms_of_window): Export, and initialize it.
18914
189152007-09-06 Pixel <pixel@mandriva.com> (tiny change)
18916
18917 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
18918
189192007-09-06 Glenn Morris <rgm@gnu.org>
18920
18921 * gtkutil.c (menu_grab_callback) <cnt>:
18922 * xselect.c (x_reply_selection_request) <cnt>: Move static
18923 variable to file scope.
18924
189252007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
18926
18927 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
18928 consistent values of selected_frame and selected_window.
18929
189302007-09-04 Jason Rumney <jasonr@gnu.org>
18931
18932 * w32console.c (initialize_w32_display): Zero unused hooks.
18933
189342007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18935
18936 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
18937 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
18938
189392007-09-04 Jason Rumney <jasonr@gnu.org>
18940
18941 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
18942 in w32console.c. Set up input. Remove XXX comments that have been
18943 confirmed as correct.
18944
18945 * s/ms-w32.h (MULTI_KBOARD): Define.
18946
18947 * w32console.c (one_and_only_w32cons): Remove.
18948 (initialize_w32_display): Take terminal argument.
18949
18950 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
18951 initialize_w32_display.
18952 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
18953
18954 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
18955
18956 * keyboard.c (discard_mouse_events): Discard it.
18957 (make_lispy_event): Translate it to a lisp event.
18958 (lispy_wheel_names): Add wheel-left and right events.
18959 (syms_of_keyboard): Enlarge wheel_syms.
18960
18961 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
18962 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
18963
18964 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
18965
18966 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
18967 from WM_MOUSEHWHEEL.
18968 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
18969
18970 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
18971 terminal.
18972
18973 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
18974 keyboard for the terminal.
18975
189762007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18977
18978 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
18979 (Vresume_tty_hook): Rename from Vresume_tty_functions.
18980 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
18981 and resume-tty-function to resume-tty-hook.
18982 (Fsuspend_tty, Fresume_tty): Use new names.
18983
189842007-09-02 Jan Djärv <jan.h.d@swipnet.se>
18985
18986 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
18987 if it starts with "n:".
18988
189892007-08-31 Jan Djärv <jan.h.d@swipnet.se>
18990
18991 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
18992
189932007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
18994
18995 * frame.h:
18996 * frame.c (Qterm_environment_variable): Remove.
18997 (syms_of_frame): Don't init and staticpro it.
18998
18999 * callproc.c (getenv_internal): Remove special case for $TERM.
19000
19001 * callproc.c (Vinitial_environment): New variable.
19002 (set_initial_environment): Initialize it.
19003 (syms_of_callproc): Declare it.
19004 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19005 TERM under which a process runs is never related to the TERM in which
19006 Emacs is running.
19007
190082007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19009
19010 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19011 * s/darwin.h: ... do it here.
19012
190132007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19014
19015 * lisp.h (set_initial_environment): Rename from set_global_environment.
19016
19017 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19018 removed by mistake on the multi-tty branch.
19019
19020 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19021 (Fmodify_frame_parameters): Return a value.
19022
19023 * image.c (png_load): Comment-out var only used in commented-out code.
19024
19025 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19026 before passing it to mark_object.
19027
19028 * xfaces.c (internal_resolve_face_name): Return a value.
19029 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19030
19031 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19032 (x_icon): Comment-out var only used in commented-out code.
19033
190342007-08-29 Romain Francoise <romain@orebokech.com>
19035
19036 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19037 QUIT hasn't been provided.
19038
190392007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19040
19041 * callproc.c (child_setup, getenv_internal): Use the
19042 display-environment-variable and term-environment-variable frame params.
19043 (set_initial_environment): Initialise Vprocess_environment.
19044
19045 * config.in: Disable multi-keyboard support on a mac.
19046
19047 * frame.c (Qterm_environment_variable)
19048 (Qdisplay_environment_variable): New variables.
19049 (syms_of_frame): Intern and staticpro them.
19050 (Fmake_terminal_frame): Disable output method test.
19051
19052 * frame.h: Declare them here.
19053
19054 * macfns.c (x_set_mouse_color): Get rif from the frame.
19055 (x_set_tool_bar_lines): Don't use updating_frame.
19056 (mac_window): Add 2 new parameters for consistency with other systems.
19057 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19058 frame parameters following what is done in X11 and w32. Don't use
19059 FRAME_MAC_DISPLAY_INFO.
19060 (Fx_open_connection, start_hourglass): Remove window-system check.
19061 (x_create_tip_frame): Get the keyboard from the terminal.
19062
19063 * macmenu.c: Reorder includes.
19064 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19065
19066 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19067 terminal parameter.
19068 (x_clear_frame): Add a frame parameter.
19069 (note_mouse_movement): Get rif from the frame.
19070 (mac_term_init): Initialize the terminal.
19071 (mac_initialize): Make static and move terminal initialization ...
19072 (mac_create_terminal): ... to this new function.
19073
19074 * macterm.h (struct mac_display_info): Add terminal.
19075 (mac_initialize): Delete declaration.
19076
19077 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19078
19079 * sysdep.c: Comment out text after #endif.
19080
19081 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19082 is defined. Better initialize ttys in windows. Use terminal
19083 specific mouse_position_hook.
19084
19085 * termhooks.h (union display_info): Add mac_display_info.
19086
19087 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19088 Set the default minibuffer frame, window_system and the rest of the
19089 frame parameters following what is done in X11.
19090
19091 * w32term.c (w32_initialize): Make static.
19092
19093 * xselect.c (x_handle_selection_clear): Only access
19094 terminal->kboard when MULTI_KBOARD is defined.
19095
19096 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19097 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19098
190992007-08-29 Jason Rumney <jasonr@gnu.org>
19100
19101 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19102 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19103
19104 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19105 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19106
19107 * keyboard.c (restore_kboard_configuration): Only define when
19108 MULTI_KBOARD defined.
19109
19110 * makefile.w32-in: Update dependancies from Makefile.in.
19111 (OBJ1): Add terminal.$(O)
19112
19113 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19114 Don't define function body.
19115 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19116
19117 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19118
19119 * w32.c (request_sigio, unrequest_sigio): Remove.
19120
19121 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19122 (w32con_clear_frame, w32con_clear_end_of_line)
19123 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19124 (w32con_delete_glyphs, w32con_set_terminal_window)
19125 (scroll_line, w32_sys_ring_bell): Add frame arg.
19126 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19127 Add terminal arg.
19128 (PICK_FRAME): Remove.
19129 (w32con_write_glyphs): Use frame specific terminal coding.
19130 (one_and_only_w32cons): New global variable.
19131 (initialize_w32_display): Use it for storing hooks.
19132 (create_w32cons_output): New function.
19133
19134 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19135 arg a frame.
19136
19137 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19138 Set window_system.
19139 (x_set_tool_bar_lines): Don't use updating_frame.
19140 (Fx_create_frame): Set terminal and ref count.
19141 (Fx_open_connection): Remove window-system check.
19142
19143 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19144
19145 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19146 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19147 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19148 Add frame arg.
19149 (x_delete_terminal, w32_create_terminal): New functions.
19150 (w32_term_init): Create a terminal.
19151 (w32_initialize): Move terminal specific initialization to
19152 w32_create_terminal.
19153
19154 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19155 (w32_clear_rect, w32_clear_area): Use background from frame.
19156 (w32_display_info): Add terminal.
19157 (w32_sys_ring_bell, x_delete_display): Declare here.
19158
19159 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19160
19161 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19162
191632007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19164
19165 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19166 Fix get_named_tty calls for the controlling tty.
19167
191682007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19169
19170 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19171
191722007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19173
19174 * term.c (tty_insert_glyphs): Add missing first parameter.
19175
191762007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19177
19178 * buffer.c (Fbuffer_list, Fbury_buffer):
19179 Take frame->buried_buffer_list into account.
19180
19181 * cm.c (current_tty): New variable, for cmputc().
19182 (cmputc): Use it.
19183 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19184 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19185 (cmgoto): Add tty parameter. Pass it on to calccost().
19186 Use emacs_tputs() instead of tputs().
19187
19188 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19189 tputs().
19190 (current_tty): New variable, for cmputc().
19191 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19192
19193 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19194 (internal_condition_case, internal_condition_case_1)
19195 (internal_condition_case_2): Don't abort when x_catching_errors.
19196
19197 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19198 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19199 prevent crashes caused by bogus longjmps in read_char.
19200
19201 * keymap.h (Fset_keymap_parent): Add EXFUN.
19202
19203 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19204 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19205 Remove redundant definition.
19206
19207 * macfns.c (x_set_mouse_color, x_make_gc):
19208 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19209
19210 * w32term.c (x_free_frame_resources):
19211 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19212 (w32_initialize): Use the accessor macros for terminal characteristics.
19213
19214 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19215 Use the accessor macros for terminal characteristics.
19216 * msdos.c (internal_terminal_init): Use the accessor macros for
19217 terminal characteristics.
19218 (ScreenVisualBell, internal_terminal_init):
19219 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19220
19221 * termopts.h (no_redraw_on_reenter): Declare.
19222
19223 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19224 (mark_terminals, mark_ttys): Declare.
19225 (Fgarbage_collect): Call them.
19226 (mark_object): Mark buried_buffer_list.
19227
19228 * prefix-args.c: Include stdlib.h for exit.
19229
19230 * syssignal.h: Add comment.
19231
19232 * indent.c: Include stdio.h.
19233
19234 * window.h (Vinitial_window_system): Declare.
19235 (Vwindow_system): Delete declaration.
19236
19237 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19238
19239 * image.c (lookup_image): Don't initialize `c' until the xasserts
19240 have been run.
19241
19242 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19243 FRAME_FOREGROUND_PIXEL.
19244
19245 * print.c (print_preprocess): Don't lose print_depth levels while
19246 iterating.
19247
19248 * widget.c (update_from_various_frame_slots):
19249 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19250
19251 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19252 frames.
19253 (window_internal_height): Remove bogus make_number call.
19254 (init_window_once): Call make_terminal_frame with two zero parameters.
19255
19256 * fileio.c (Fread_file_name): Update comment.
19257
19258 * callint.c (Fcall_interactively):
19259 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19260 Make sure it is correctly unwound.
19261
19262 * xsmfns.c (x_session_close): New function.
19263
19264 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19265 Delete declarations.
19266
19267 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19268 (x_output): Remove background_pixel and foreground_pixel fields.
19269 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19270 (x_delete_device, x_session_close): Declare.
19271
19272 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19273 (read_filtered_event): Call `read_char' with a local
19274 `wrong_kboard_jmpbuf'.
19275
19276 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19277 Don't call single_kboard_state. Use FRAME_RIF.
19278
19279 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19280 systems.
19281
19282 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19283 (Fframe_with_environment, Fset_input_meta_mode)
19284 (Fset_quit_char): EXFUN.
19285 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19286 (init_sys_modes, reset_sys_modes): Update prototypes.
19287 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19288
19289 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19290 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19291 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19292 Delete declarations.
19293 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19294 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19295 New declarations.
19296
19297 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19298 already does that during init_display(). Call syms_of_keymap
19299 before syms_of_keyboard. Call `syms_of_terminal'.
19300 Call set_initial_environment, not set_process_environment.
19301 (shut_down_emacs): Call reset_all_sys_modes() instead of
19302 reset_sys_modes().
19303
19304 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19305 (internal_resolve_face_name, resolve_face_name_error): New functions.
19306 (resolve_face_name): Protect against loops and errors thrown by Fget.
19307 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19308 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19309
19310 * scroll.c: Replace CURTTY() with local variables throughout the
19311 file (where applicable).
19312 (calculate_scrolling, calculate_direct_scrolling)
19313 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19314 characteristics.
19315
19316 * keymap.c (Vfunction_key_map): Remove.
19317 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19318 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19319 (Vkey_translation_map): Remove.
19320 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19321 (Fdescribe_buffer_bindings)
19322 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19323 Update for terminal-local key-translation-map.
19324
19325 * Makefile.in (callproc.o): Update dependencies.
19326 (lisp, shortlisp): Add termdev.elc.
19327 (obj): Add terminal.o.
19328 (terminal.o): Add dependencies.
19329 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19330 (data.o, fns.o): Add termhooks.h dependency.
19331 (SOME_MACHINE_LISP): Add dnd.elc.
19332 (minibuf.o): Fix typo.
19333 Update dependencies.
19334
19335 * data.c (do_symval_forwarding, store_symval_forwarding)
19336 (find_symbol_value): Use the selected frame's keyboard, not
19337 current_kboard.
19338
19339 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19340 Vwindow_system.
19341
19342 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19343 Fmenu_bar_open.
19344 (syms_of_xmenu): Update defsubr.
19345 (mouse_position_for_popup, Fx_popup_menu)
19346 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19347 (set_frame_menubar, free_frame_menubar)
b97439ce 19348 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19349 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19350 an X frame.
19351
19352 * xselect.c (x_own_selection): Abort if not an X frame.
19353 (some_frame_on_display): Check if it is an X frame.
19354 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19355
19356 * coding.c: Include frame.h and termhooks.h.
19357 (terminal_coding, keyboard_coding): Delete.
19358 (Fset_terminal_coding_system_internal)
19359 (Fset_keyboard_coding_system_internal)
19360 (Fkeyboard_coding_system)
19361 (Fterminal_coding_system): Add a terminal parameter.
19362 Get terminal_coding from the terminal.
19363 (init_coding_once): Don't call setup_coding_system here.
19364
19365 * dispextern.h (set_scroll_region, turn_off_insert)
19366 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19367 (tty_clear_end_of_line, tty_setup_colors)
19368 (delete_tty, updating_frame)
19369 (produce_special_glyphs, produce_glyphs, write_glyphs)
19370 (insert_glyphs): Remove.
19371 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19372 (tty_turn_off_highlight, get_tty_size): Add declaration.
19373 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19374
19375 * frame.h (enum output_method): Add output_initial.
19376 (struct x_output): Delete.
19377 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19378 Access foreground_pixel and background_pixel directly from the frame.
19379 (tty_display): Delete.
19380 (struct frame): Add buried_buffer_list, foreground_pixel,
19381 background_pixel and terminal. Delete kboard.
19382 (union output_data): Add tty.
19383 (FRAME_KBOARD): Get the kboard from the terminal.
19384 (FRAME_INITIAL_P): New macro.
19385 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19386 (Qterm_environment_variable, Qdisplay_environment_variable)
19387 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19388 New declarations.
19389
19390 * termchar.h (tty_output, tty_display_info): New structures.
19391 (tty_list): Declare.
19392 (FRAME_TTY, CURTTY): New macros.
19393 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19394 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19395 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19396 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19397
19398 * callproc.c: Include frame.h and termhooks.h, for terminal
19399 parameters.
19400 (add_env): New function.
19401 (child_setup): Use it.
19402 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19403 (getenv_internal): Fix get_terminal_param call.
19404 (Fgetenv_internal, egetenv): Update doc.
19405 (syms_of_callproc): Initialize Vprocess_environment to nil.
19406 Register and initialize them. Remove obsolete defvars. Update doc
19407 strings.
19408 (child_setup): Handle Vlocal_environment_variables.
19409 (getenv_internal): Add terminal parameter.
19410 Handle Vlocal_environment_variables.
19411 (Fgetenv_internal): Add terminal parameter.
19412 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19413 environment in a frame (not terminal) parameter. Update doc strings.
19414 (set_initial_environment): Rename from set_global_environment.
19415 Store Emacs environment in initial frame parameter.
19416
19417 * xdisp.c (redisplay_internal): Update references to
19418 `previous_terminal_frame'.
19419 (display_mode_line, Fformat_mode_line): Replace calls to
19420 `push_frame_kboard' with `push_kboard'.
19421 (get_glyph_string_clip_rects): Add extra parentheses and
19422 braces to prevent compiler warnings.
19423 (calc_pixel_width_or_height): Add xassert to check that the
19424 frame is alive. Don't call `lookup_image' on a termcap frame.
19425 (message2_nolog, message3_nolog, redisplay_internal)
19426 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19427 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19428 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19429 (Fx_display_pixel_width, Fx_display_pixel_height)
19430 (Fx_display_planes, Fx_display_color_cells)
19431 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19432 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
19433 (Fx_display_backing_store, Fx_display_visual_class)
19434 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
19435 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
19436
19437 * xfns.c (x_set_foreground_color x_set_background_color)
19438 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
19439 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19440 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
19441 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
19442 terminal that is being deleted.
19443 (Fx_create_frame): Use `store_frame_param' to set `window-system'
19444 frame parameter, and make sure it overrides any user-supplied setting.
19445 (Fx_close_connection, Fx_synchronize): Unify argument names with
19446 the rest of the DEFUNs.
19447
19448 * dispnew.c (Fsend_string_to_terminal): Update call to
19449 `get_tty_terminal'.
19450 (Fredraw_frame, Fsend_string_to_terminal)
19451 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
19452 FRAME_TERMCAP_P and FRAME_TTY.
19453 (window_change_signal): Don't believe width/height values that are
19454 impossibly small.
19455 (Vinitial_window_system): Rename from Vwindow_system.
19456 (termscript, Wcm, rif): Delete.
19457
19458 * termhooks.h (struct terminal): New struct containing the
19459 previously global text display hooks and new members NAME,
19460 DELETED and PARAM_ALIST.
19461 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
19462 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
19463 (FRAME_RIF): New macros.
19464 (get_terminal_param, get_device): New declarations.
19465 (termscript): Delete declaration.
19466
19467 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19468 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19469 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19470 FRAME_FOREGROUND_PIXEL.
19471 (x_fully_uncatch_errors): Disable definition.
19472 (x_scroll_bar_expose): Fix reference to foreground pixel.
19473 (XTread_socket): Disable loop on all X displays.
19474 (x_delete_terminal): Don't set terminal->deleted and let
19475 delete_terminal delete the frames on the terminal.
19476 (x_delete_display): Doc update to reflect changes in
19477 delete_terminal.
19478 (x_display_info) <terminal>: Move member earlier in the struct.
19479 (deleting_tty): Remove old variable.
19480 (Fsuspend_tty): Call clear_tty_hooks.
19481 (Fresume_tty, init_tty): Call set_tty_hooks.
19482 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
19483 errors on X frames.
19484 (x_catch_errors_unwind): Abort if x_error_message is NULL.
19485 (handle_one_xevent): Initialize `f' to NULL.
19486 (x_delete_terminal, x_create_terminal): New functions.
19487 (XTset_terminal_modes, XTreset_terminal_modes)
19488 (XTread_socket, x_connection_closed, x_term_init)
19489 (x_term_init, x_delete_display): Add terminal parameter.
19490 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
19491 X connections.
19492
19493 * frame.c: Include termchar.h.
19494 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
19495 (Qwindow_system, Qenvironment, Qterm_environment_variable)
19496 (Qdisplay_environment_variable): New vars.
19497 (Fframep): Deal with output_initial.
19498 (Fframe-live-p): Doc fix.
19499 (Fwindow-system): New function.
19500 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
19501 (make_terminal_frame): Don't create frames on a terminal that is
19502 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19503 (store_frame_param): Check for found_for_frame before calling XFRAME.
19504 (Fmake_terminal_frame): Handle NULL tty names correctly.
19505 (syms_of_frame): Enhance doc string of `default-frame-alist'.
19506 (Fdelete_frame): Remove unused variable `count'. Don't allow other
19507 frames to refer to a deleted frame in their 'environment parameter.
19508 (Fframe_with_environment): New function.
19509 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
19510 (get_future_frame_param): New function.
19511 (Fmake_terminal_frame): Use it.
19512 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
19513
19514 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
19515 * sysdep.c (reset_sys_modes): Update for renames.
19516
19517 * keyboard.c (tty_read_avail_input): New function.
19518 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
19519 (syms_of_keyboard): Defsubr them.
19520 (Fset_input_meta_mode, Fset_quit_char): New functions.
19521 (Fset_input_mode): Split to above functions.
19522 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
19523 parameter. Use it in call to `read_char'.
19524 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
19525 Set wrong_kboard_jmpbuf correctly in recursive calls.
19526 Use current_kboard to access Vkeyboard_translate_table.
19527 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
19528 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
19529 Update longjmp invocations. Remember the original current_kboard,
19530 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
19531 changes it. Comment out unnecessary calls to
19532 `record_single_kboard_state' and `any_kboard_state'.
19533 Update recursive calls.
19534 (wrong_kboard_jmpbuf): Remove global variable.
19535 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
19536 Handle deleted interrupted_kboards correctly; that is a legal
19537 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
19538 and read_char calls. Abort if interrupted_kboard died in read_char.
19539 (any_kboard_state, single_kboard_state)
19540 (push_frame_kboard): Remove function.
19541 (pop_kboard): Switch out of single_kboard mode if the kboard has
19542 been deleted. Remove unused variable. Help debugging by not
19543 changing current_kboard unnecessarily. Set current_kboard to the
19544 kboard of the selected frame when the stored kboard object has
19545 been deleted before pop_kboard.
19546 (temporarily_switch_to_single_kboard): Change first parameter to a
19547 frame pointer. Throw an error when caller wants to change kboards
19548 while in single_kboard mode. Don't push_kboard if we weren't in
19549 single kboard state. Don't pop_kboard if we popped into any
19550 kboard state.
19551 (restore_kboard_configuration): Abort if pop_kboard changed the
19552 kboard in single_kboard mode. Call pop_kboard only after setting
19553 up single_kboard mode.
19554 (Frecursive_edit): Switch to single_kboard mode only in nested
19555 command loops.
19556 (cmd_error, command_loop, command_loop_1, timer_check):
19557 Comment out unnecessary call to `any_kboard_state' and
19558 `record_single_kboard_state'.
19559 (delete_kboard): Exit single_kboard mode if we have just deleted
19560 that kboard. Use FRAME_KBOARD.
19561 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
19562 `fatal_error_signal'.
19563 (record_single_kboard_state): Don't push_kboard if we weren't in
19564 single kboard state. Don't pop_kboard if we popped into any
19565 kboard state.
19566 (push_frame_kboard): Rename to push_kboard.
19567 (kbd_buffer_get_event): Use FRAME_TERMINAL.
19568 (read_avail_input): Read input from all terminals.
19569 (mark_kboards): Also mark Vkeyboard_translate_table.
19570 (kbd_buffer_store_event_hold): Simplify condition.
19571 (read_key_sequence): Reinitialize fkey and keytran at each replay.
19572 (Vkeyboard_translate_table): Move to struct kboard.
19573 (init_kboard): Initialize Vkeyboard_translate_table.
19574 (syms_of_keyboard): Use DEFVAR_KBOARD to define
19575 Vkeyboard_translate_table. Update doc strings. Update docs of
19576 local-function-key-map and function-key-map.
19577
19578 * terminal.c: New file.
19579
19580 * term.c: Include errno.h.
19581 (Vring_bell_function, device_list, initial_device)
19582 (next_device_id, ring_bell, update_begin, update_end)
19583 (set_terminal_window, cursor_to, raw_cursor_to)
19584 (clear_to_end, clear_frame, clear_end_of_line)
19585 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
19586 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
19587 (syms_of_term): Move their initialization to terminal.c.
19588 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
19589 (Ftty_display_color_cells)
19590 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
19591 (clear_tty_hooks, set_tty_hooks)
19592 (init_tty, maybe_fatal): New functions.
19593 (Ftty_type): Return nil if terminal is not on a tty instead of
19594 throwing an error. Doc update.
19595 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
19596 Doc update. Initialize new subrs and variables.
19597 (delete_tty): Use terminal->deleted.
19598 (tty_set_terminal_modes): Rename from set_terminal_modes.
19599 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
19600 (set_scroll_region): Rename to `tty_set_scroll_region'.
19601 (turn_on_insert): Rename to `tty_turn_on_insert'.
19602 (turn_off_insert): Rename to `tty_turn_off_insert'.
19603 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
19604 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
19605 (toggle_highligh): Rename to `tty_toggle_highlight'.
19606 (background_highlight): Rename to `tty_background_highlight'.
19607 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
19608 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
19609 (tty_set_scroll_region, tty_background_highlight)
19610 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
19611 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
19612 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
19613 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
19614 Add static modifier.
19615 (tty_reset_terminal_modes, tty_set_terminal_window)
19616 (tty_set_scroll_region, tty_background_highlight)
19617 (tty_highlight_if_desired, tty_cursor_to)
19618 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
19619 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
19620 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
19621 renames.
19622
196232007-08-28 Jan Djärv <jan.h.d@swipnet.se>
19624
19625 * keyboard.c: Qrtl is new.
19626 (parse_tool_bar_item): Handle :rtl keyword.
19627 (syms_of_keyboard): Intern :rtl keyword.
19628
19629 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
19630
19631 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
19632 so no Lisp code is executed.
19633 (file_for_image, find_rtl_image): New functions.
19634 (xg_get_image_for_pixmap): Use file_for_image.
19635 (update_frame_tool_bar): If direction is RTL, use RTL image if
19636 defined. Use Gtk stock images if defined.
19637
196382007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19639
19640 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
19641 for nonexistent or zero-width glyph in composition glyph.
19642
196432007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
19644
19645 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
19646
19647 * xdisp.c (Finvisible_p): New function.
19648 (syms_of_xdisp): defsubr it.
19649
196502007-08-24 Juanma Barranquero <lekktu@gmail.com>
19651
19652 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
19653 Doc fixes.
19654
196552007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19656
19657 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
19658
196592007-08-24 Martin Rudalics <rudalics@gmx.at>
19660
19661 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
19662 whether decoding has modified buffer contents.
19663
196642007-08-24 Jason Rumney <jasonr@gnu.org>
19665
19666 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
19667 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
19668 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
19669 (init_svg_functions) [HAVE_NTGUI]: New function.
19670 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
19671 (svg_load_image): Use them.
19672 (svg_load_image) [HAVE_NTGUI]: Implement background.
19673
196742007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19675
19676 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
19677 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
19678 (LIBX): Remove @RSVG_LIBS@.
19679 (LIBES): Add $(RSVG_LIBS).
19680
19681 * image.c (svg_load_image): Blend with specified background if exists.
19682 Use IMAGE_BACKGROUND. Add Mac OS Support.
19683
19684 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
19685 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
19686 Remove macros.
19687 [MAC_OSX] (socket_callback): Do nothing.
19688 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
19689 ReceiveNextEvent.
19690 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
19691 socket_callback.
19692 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
19693
196942007-08-22 Glenn Morris <rgm@gnu.org>
19695
19696 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
19697
196982007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
19699
19700 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
19701
19702 * image.c: Add support for SVG images. Some additional comments
19703 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
19704 (svg_image_p): New function to test for SVG image.
19705 (svg_load): New function to load SVG image.
19706 (svg_load_image): New function, helper for svg_load.
19707 (Qsvg): New Lisp_object.
19708 (svg_keyword_index): New enum.
19709 (svg_format): New static `image_keyword' struct.
19710 (svg_type): New static `image_type' struct.
19711 (librsvg/rsvg.h): Include it.
19712
197132007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
19714
19715 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
19716
197172007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
19718
19719 * lread.c (Qold_style_backquotes): New var.
19720 (syms_of_lread): Init and staticpro it.
19721 (load_warn_old_style_backquotes): New fun.
19722 (Fload): Use them to warn about old style backquotes.
19723 (end_of_file_error, Fload): Remove unused vars.
19724
19725 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
19726
19727 * lread.c (Vold_style_backquotes): New var.
19728 (syms_of_lread): Init and export it to Elisp.
19729 (read1): Set it when we find an old-style (back)quote.
19730
197312007-08-22 Jason Rumney <jasonr@gnu.org>
19732
19733 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
19734
197352007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
19736
19737 * puresize.h (BASE_PURESIZE): Increase to 1140000.
19738
197392007-08-19 Richard Stallman <rms@gnu.org>
19740
19741 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
19742
197432007-08-19 Andreas Schwab <schwab@suse.de>
19744
19745 * alloc.c (pure): Round PURESIZE up.
19746
197472007-08-17 Jan Djärv <jan.h.d@swipnet.se>
19748
19749 * xterm.c (handle_one_xevent): Remove check that mouse click is in
19750 active frame.
19751
197522007-08-16 Richard Stallman <rms@gnu.org>
19753
19754 * eval.c (Fcommandp): Add parens to clarify.
19755
19756 * minibuf.c (Fall_completions): Use enum for type of table.
19757
19758 * emacs.c (USAGE2): Improve text.
19759
197602007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
19761
19762 * term.c (tty_default_color_capabilities): Declare static
19763 variables in file scope, to avoid HPUX compiler problem.
19764
197652007-08-13 Jan Djärv <jan.h.d@swipnet.se>
19766
19767 * gtkutil.c (update_frame_tool_bar): Use -1 as index
19768 to gtk_toolbar_insert.
19769
197702007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
19771
19772 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
19773
19774 * insdel.c (reset_var_on_error): New fun.
19775 (signal_before_change, signal_after_change):
19776 Use it to reset (after|before)-change-functions to nil in case of error.
19777 Bind inhibit-modification-hooks to t.
19778 Don't bind (after|before)-change-functions to nil while they run.
19779
197802007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19781
19782 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
19783 filling pixmap with stippled background.
19784
197852007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19786
19787 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
19788 Don't use invisible frame as parent window for repositioning.
19789
197902007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
19791
19792 * print.c (new_backquote_output): Rename from old_backquote_output.
19793 (print): Inverse its logic (according to its name) so as to match the
19794 behavior of new_backquote_flag in lread.c.
19795
197962007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19797
19798 * gmalloc.c (posix_memalign): New function.
19799
19800 * macterm.c (frame_highlight, frame_unhighlight): Don't call
19801 ActivateControl/DeactivateControl here.
19802 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
19803 frame-notice-user-settings is non-nil.
19804 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
19805 for kEventParamFMFontStyle.
19806 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
19807 mac_pass_command_to_system and mac_pass_control_to_system here.
19808 (XTread_socket): Call ActivateControl/DeactivateControl here.
19809 (XTread_socket) [TARGET_API_MAC_CARBON]:
19810 Check mac_pass_command_to_system and mac_pass_control_to_system here.
19811 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
19812 for window repositioning.
19813
198142007-08-08 Glenn Morris <rgm@gnu.org>
19815
19816 * Replace `iff' in doc-strings and comments.
19817
198182007-08-07 Chong Yidong <cyd@stupidchicken.com>
19819
19820 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
19821
198222007-08-07 Martin Rudalics <rudalics@gmx.at>
19823
19824 * fileio.c (Finsert_file_contents): Run format-decode and
19825 after_insert_file_functions on entire buffer when REPLACE is
19826 non-nil and inhibit modification_hooks and point_motion_hooks.
19827 For consistency, run after_insert_file_functions iff something
19828 got inserted. Move signal_after_change and update_compositions
19829 after code running after_insert_file_functions. Make sure that
19830 undo_list doesn't record intermediate steps of the decoding process.
19831
198322007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19833
19834 * emacs.c (main)
19835 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
19836 Call malloc_enable_thread on interactive startup.
19837
19838 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
19839 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
19840 [USE_PTHREAD]: Conditionalize with it.
19841 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
19842 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
19843 New functions.
19844
198452007-08-06 Chong Yidong <cyd@stupidchicken.com>
19846
19847 * xdisp.c (redisplay_window): When restoring original buffer
19848 position, make sure it is still valid.
19849
19850 * image.c (png_load): Ignore png-supplied background color.
19851
198522007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19853
19854 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
19855 Use kCFAbsoluteTimeIntervalSince1970.
19856
19857 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
19858 New variable.
19859 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
19860 event loop should be quit.
19861 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
19862 Quit dialog event loop if quit_dialog_event_loop is set.
19863
19864 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
19865 (Selection): New typedef. Use instead of ScrapRef.
19866 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
19867 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
19868 (mac_clear_selection): Rename from clear_scrap.
19869 (get_flavor_type_from_symbol): New argument SEL and subsume function of
19870 scrap_has_target_type. All uses changed.
19871 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
19872 (mac_selection_has_target_p): New functions.
19873 (mac_put_selection_value): Rename from put_scrap_string.
19874 (mac_get_selection_value): Rename from get_scrap_string.
19875 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
19876 (put_scrap_private_timestamp, scrap_has_target_type)
19877 (get_scrap_private_timestamp): Remove functions.
19878 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
19879 (x_own_selection, x_get_local_selection):
19880 Use mac_valid_selection_value_p.
19881 (x_own_selection): Don't use put_scrap_private_timestamp.
19882 Record OWNERSHIP-INFO into Vselection_alist instead.
19883 (x_get_local_selection): Don't check type if request is local.
19884 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
19885 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
19886
198872007-08-04 Jan Djärv <jan.h.d@swipnet.se>
19888
19889 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
19890 add comment explaining why.
19891
198922007-08-03 Richard Stallman <rms@gnu.org>
19893
19894 * fileio.c (Fvisited_file_modtime): Use make_time.
19895
198962007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
19897
19898 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
19899 build.
19900
199012007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
19902
19903 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
19904
199052007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
19906
19907 * puresize.h (BASE_PURESIZE): Increase to 1130000.
19908
199092007-07-30 Richard Stallman <rms@gnu.org>
19910
19911 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
19912
199132007-07-29 Jan Djärv <jan.h.d@swipnet.se>
19914
19915 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
19916
199172007-07-28 Nick Roberts <nickrob@snap.net.nz>
19918
19919 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
19920 remote default-directory.
19921
19922 * buffer.c (mode-line-format): Update doc string.
19923
199242007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19925
19926 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
19927 scroll bar gap.
19928 (x_scroll_bar_create): Set bar->fringe_extended_p.
19929 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
19930 on frame edge. Check fringe background extension. Don't clear
19931 extended fringe background area.
19932
19933 * w32term.h (struct scroll_bar): New member fringe_extended_p.
19934 (w32_fill_area): Enclose multiple statements with do ... while (0).
19935
19936 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
19937 Extend fringe background to scroll bar gap.
19938 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
19939 Set bar->fringe_extended_p.
19940 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19941 Put leftmost/rightmost scroll bars on frame edge. Check fringe
19942 background extension. Don't clear extended fringe background area.
19943
19944 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19945 New member fringe_extended_p.
19946
199472007-07-25 Glenn Morris <rgm@gnu.org>
19948
19949 * Relicense all FSF files to GPLv3 or later.
19950
19951 * COPYING: Switch to GPLv3.
19952
199532007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
19954
19955 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
19956
19957 * data.c (Finteractive_form): Check for the presence of an
19958 `interactive-form' symbol property more thoroughly.
19959
19960 * data.c (Finteractive_form): Use an `interactive-form' property if
19961 present, analogous to the function-documentation property.
19962
199632007-07-24 Jason Rumney <jasonr@gnu.org>
19964
19965 * w32fns.c (x_real_positions): Get real position from OS instead of
19966 calculating it.
19967
199682007-07-23 Jason Rumney <jasonr@gnu.org>
19969
19970 * filelock.c (current_lock_owner): Allow for @ sign in username.
19971
199722007-07-22 Nick Roberts <nickrob@snap.net.nz>
19973
19974 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
19975 remote default-directory.
19976
19977 * buffer.c (mode-line-format): Describe above case in doc string.
19978
199792007-07-20 Eli Zaretskii <eliz@gnu.org>
19980
19981 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
19982 Define if not defined.
19983
199842007-07-18 Jason Rumney <jasonr@gnu.org>
19985
19986 * w32proc.c (w32_executable_type): Handle 64 bit executables.
19987
199882007-07-18 Richard Stallman <rms@gnu.org>
19989
19990 * data.c (Fsetq_default): Doc fix.
19991
19992 * eval.c (Fsetq): Doc fix.
19993
199942007-07-18 Juanma Barranquero <lekktu@gmail.com>
19995
19996 * coding.c (Ffind_operation_coding_system):
19997 * eval.c (For, Fand): Doc fixes.
19998 Reported by Johan Bockgård.
19999
200002007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20001
20002 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20003
20004 * xterm.h: Declare x_ewmh_activate_frame.
20005
20006 * xterm.c (x_ewmh_activate_frame): New function.
20007 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20008
200092007-07-17 Martin Rudalics <rudalics@gmx.at>
20010
20011 * window.c (Fdisplay_buffer): If largest or LRU window is the
20012 only window, split it even if it is not eligible for splitting.
20013 This restores the original behavior broken by the 2007-07-15
20014 change.
20015
200162007-07-17 Glenn Morris <rgm@gnu.org>
20017
20018 * abbrev.c (abbrev_check_chars): New function.
20019 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20020 Call abbrev_check_chars to check abbrev characters are word
20021 constituents. Doc fix.
20022
200232007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20024
20025 * process.c (Fstart_process, Fmake_network_process)
20026 (read_process_output): Fix up last changes.
20027
200282007-07-16 Eli Zaretskii <eliz@gnu.org>
20029
20030 * makefile.w32-in (clean): Don't delete *~.
20031
200322007-07-16 Andreas Schwab <schwab@suse.de>
20033
20034 * window.c (Fdisplay_buffer): Use NILP.
20035 (Fset_window_scroll_bars): Likewise.
20036
200372007-07-15 Martin Rudalics <rudalics@gmx.at>
20038
20039 * window.c (window_min_size_2): New function.
20040 (window_min_size_1, size_window, Fdisplay_buffer)
20041 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20042 windows without mode- or header-lines when window-min-height is
20043 too small.
20044 (size_window): Reset nodelete_p after testing it, following an
20045 earlier note by Kim F. Storm.
20046 (display_buffer): Do not set split_height_threshold to twice the
20047 value of window_min_height to avoid changing the value of a
20048 customizable variable. Rather explicitly check whether the
20049 height of the window that shall be splitted is at least as large
20050 as split_height_threshold.
20051 (Fwindow_full_width_p): New defun.
20052 (syms_of_window): Defsubr it.
20053
20054 * window.h: Add EXFUN for Fwindow_full_width_p.
20055
200562007-07-14 Jason Rumney <jasonr@gnu.org>
20057
20058 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20059
200602007-07-14 Richard Stallman <rms@gnu.org>
20061
20062 * eval.c (maybe_call_debugger): New function.
20063 (find_handler_clause): Use maybe_call_debugger.
20064 Call it when the handler says `debug'.
20065 Eliminate DEBUGGER_VALUE_PTR.
20066 (Fsignal): Eliminate debugger_value.
20067 (Qdebug): New variable.
20068 (syms_of_eval): Initialize it.
20069
200702007-07-14 Juanma Barranquero <lekktu@gmail.com>
20071
20072 * eval.c (Fprogn):
20073 * keyboard.c (Ftrack_mouse):
20074 * print.c (Fwith_output_to_temp_buffer):
20075 * window.c (Fsave_window_excursion): Doc fix.
20076
200772007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20078
20079 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20080
200812007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20082
20083 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20084 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20085 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20086 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20087 Remove unused encoding_carryover.
20088 * process.c: Adjust all functions accordingly.
20089
200902007-07-12 Richard Stallman <rms@gnu.org>
20091
20092 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20093
200942007-07-11 Jason Rumney <jasonr@gnu.org>
20095
20096 * makefile.w32-in (LIBS): Include OLE32.
20097
20098 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20099 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20100
201012007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20102
20103 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20104 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20105 from a Lisp_Object into a bare pointer.
20106 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20107 Adjust the code correspondingly.
20108
20109 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20110
20111 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20112 (term_show_mouse_face): Remove unused var `j'.
20113 (handle_one_term_event): Remove unused vars `i' and `j'.
20114 Don't cast return value of ttyname since it's not necessary.
20115
201162007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20117
20118 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20119 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20120
20121 * fns.c (map_char_table): Use an array of int for `indices' rather than
20122 an array of Lisp_Objects (which are only ever integers anyway).
20123 (Fmap_char_table): Update caller.
20124 * lisp.h: Update prototype.
20125 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20126 * fontset.c (Ffontset_info):
20127 * casetab.c (set_case_table): Update callers.
20128
20129 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20130
20131 * keymap.c (struct accessible_keymaps_data)
20132 (struct where_is_internal_data): New structures.
20133 (accessible_keymaps_1, where_is_internal_1): Use them to change
20134 interface to adhere to the one used by map_keymap.
20135 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20136 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20137
20138 * keymap.h (map_keymap_function_t): More informative prototype.
20139
201402007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20141
20142 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20143 (looking_at_1): Don't change search_regs and last_thing_searched
20144 if `inhibit-changing-match-data' is non-nil.
20145 (string_match_1, search_buffer, set_search_regs): Likewise.
20146 (syms_of_search): Add Lisp level definition for
20147 `inhibit-changing-match-data' and set it to nil.
20148 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20149 start and end of the match, instead of using values in search_regs.
20150
201512007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20152
20153 * minibuf.c (Fcompleting_read): New value `confirm-only'
20154 for `require-match'.
20155
201562007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20157
20158 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20159 part of the 2007-06-27 change to syms_of_fileio.
20160
201612007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20162
20163 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20164 Check WINDOWP before using XWINDOW. Consolidate return statements.
20165
201662007-06-27 Richard Stallman <rms@gnu.org>
20167
20168 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20169
201702007-06-27 Juanma Barranquero <lekktu@gmail.com>
20171
20172 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20173
201742007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20175
20176 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20177 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20178 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20179 (_free_internal, memalign): Use them.
20180 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20181 Initialize to PTHREAD_MUTEX_INITIALIZER.
20182 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20183 (morecore_nolock): Rename from morecore. All uses changed.
20184 Use only nolock versions of internal allocation functions.
20185 (_malloc_internal_nolock, _realloc_internal_nolock)
20186 (_free_internal_nolock): New functions created from
20187 _malloc_internal, _realloc_internal, and _free_internal.
20188 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20189 Copy hook value to automatic variable before its use.
20190 (memalign): Copy hook value to automatic variable before its use.
20191
201922007-06-26 Kenichi Handa <handa@m17n.org>
20193
20194 * coding.c (Ffind_operation_coding_system): Docstring improved.
20195 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20196
201972007-06-25 David Kastrup <dak@gnu.org>
20198
20199 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20200 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20201 cater for additional parameter.
20202
20203 * keymap.h: Adjust number of parameters to `current-active-maps'.
20204
20205 * doc.c (Fsubstitute_command_keys): Adjust call of
20206 `current-active-maps'.
20207
202082007-06-25 David Kastrup <dak@gnu.org>
20209
20210 * callint.c (Fcall_interactively): Make the parsing of interactive
20211 specs somewhat more readable.
20212
202132007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20214
20215 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20216 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20217 if extended background has already been filled.
20218
202192007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20220
20221 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20222 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20223
20224 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20225 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20226 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20227 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20228 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20229 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20230 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20231 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20232 Run timers during dialog popup.
20233 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20234
202352007-06-21 Jason Rumney <jasonr@gnu.org>
20236
20237 * image.c (convert_mono_to_color_image): Swap fore and background.
20238
202392007-06-20 Jason Rumney <jasonr@gnu.org>
20240
20241 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20242 (w32_free_bdf_font): Unmap memory not handle.
20243
202442007-06-20 Sam Steingold <sds@gnu.org>
20245
20246 * gmalloc.c (__morecore): Fix the declaration to comply with the
20247 definition.
20248
202492007-06-20 Juanma Barranquero <lekktu@gmail.com>
20250
20251 * w32term.c (w32_delete_display): Remove leftover declaration.
20252 (w32_define_cursor, w32_initialize): Make static.
20253
20254 * w32.c (_wsa_errlist): Fix typo in error message.
20255 (init_environment): Ignore any environment variable from the
20256 registry having a null value.
20257
202582007-06-20 Glenn Morris <rgm@gnu.org>
20259
20260 * Makefile.in (LIBGIF): Default to -lgif.
20261
202622007-06-17 Jason Rumney <jasonr@gnu.org>
20263
20264 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20265 unicode strings.
20266
202672007-06-16 Juanma Barranquero <lekktu@gmail.com>
20268
20269 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20270 Fix typo in docstring.
20271
202722007-06-16 Eli Zaretskii <eliz@gnu.org>
20273
20274 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20275 and their keybindings.
20276
202772007-06-15 Chong Yidong <cyd@stupidchicken.com>
20278
20279 * composite.c (update_compositions): Fix last fix.
20280
202812007-06-14 Jason Rumney <jasonr@gnu.org>
20282
20283 * w32.c (get_process_times_fn): New function pointer.
20284 (globals_of_w32): Intialize it if present in kernel32.dll.
20285 (w32_get_internal_run_time): New function.
20286
20287 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20288
202892007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20290
20291 * composite.c (update_compositions): Check the validness of
20292 compositions.
20293
202942007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20295
20296 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20297 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20298
20299 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20300 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20301
20302 * macgui.h (USE_MAC_TOOLBAR): New define.
20303
20304 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20305 Return immediately unless popup is activated.
20306
20307 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20308 background to scroll bar gap.
20309 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20310 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20311 scroll bars on frame edge. Check fringe background extension.
20312 Don't clear extended fringe background area.
20313 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20314 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20315 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20316 [USE_MAC_TOOLBAR]: New macros.
20317 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20318 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20319 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20320 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20321 [USE_MAC_TOOLBAR]: New functions.
20322 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20323 manually if previous repositioning has failed.
20324 (mac_handle_keyboard_event): Use precomputed event kind.
20325 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20326 as tool bar item click. Handle mouse movement over tool bar items.
20327
20328 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20329 toolbar_win_gravity.
20330 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20331 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20332 Add externs.
20333
20334 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20335 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20336
203372007-06-14 Chong Yidong <cyd@stupidchicken.com>
20338
20339 * image.c (search_image_cache): Remove unused variable.
20340
203412007-06-13 Chong Yidong <cyd@stupidchicken.com>
20342
20343 * xfns.c, xmenu.c: Link to xaw3d if available.
20344
203452007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20346
20347 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20348 frame_foreground and frame_background.
20349
20350 * image.c (lookup_image): Save frame foreground and background colors.
20351 (search_image_cache): Check if saved and current frame colors match.
20352
203532007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20354
20355 * regex.c (regex_compile): Remove the `regnum' counter.
20356 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20357
203582007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20359
20360 * term.c: Include intervals.h to declare Fget_text_property.
20361
203622007-06-10 Jason Rumney <jasonr@gnu.org>
20363
20364 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20365
203662007-06-08 Juanma Barranquero <lekktu@gmail.com>
20367
20368 * callint.c (Fcall_interactively):
20369 * editfns.c (Fdelete_and_extract_region):
20370 * fileio.c (Fread_file_name):
20371 * fns.c (Fmapconcat):
20372 * keyboard.c (cmd_error_internal):
20373 * keymap.c (Fkey_description):
20374 * lread.c (openp):
20375 * minibuf.c (read_minibuf):
20376 * search.c (wordify):
20377 * sunfns.c (sel_read):
20378 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20379 * xfns.c (x_default_scroll_bar_color_parameter):
20380 * xmenu.c (menu_help_callback):
20381 * xselect.c (Fx_get_atom_name):
20382 * xterm.c (x_term_init): Use empty_unibyte_string.
20383
203842007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20385
20386 * alloc.c (init_strings): Initialize canonical empty strings.
20387 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20388 canonical empty string when the requested size is 0.
20389
20390 * emacs.c (empty_unibyte_string): Rename from empty_string.
20391 (empty_multibyte_string): New canonical empty string.
20392 (syms_of_emacs): Don't initialize empty_string.
20393
20394 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20395 string, if appropriate.
20396 (empty_unibyte_string, empty_multibyte_string): New externs.
20397 (empty_string): Remove extern.
20398
20399 * lread.c (syms_of_lread): Use empty_unibyte_string.
20400
204012007-06-07 Jason Rumney <jasonr@gnu.org>
20402
20403 * s/ms-w32.h: Don't define HAVE_TZNAME.
20404
20405 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20406
204072007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20408
20409 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20410
20411 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20412 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20413
20414 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20415 Don't call next handler.
20416 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20417 Remove argument. Install handler to application.
20418 (set_frame_menubar): Don't change deep_p.
20419 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20420 FRAME_OUTER_TO_INNER_DIFF_Y.
20421 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20422 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20423 [HAVE_DIALOGS]: New macros.
20424 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20425 Use them.
20426 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20427
20428 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20429 init_service_handler. All callers changed. Return OSStatus value.
20430
20431 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20432 All callers changed so as not to call SetPortWindowPort.
20433 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
20434 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
20435 mac_draw_string_common.
20436 (mac_draw_image_string_qd): Likewise.
20437 (mac_draw_string_common): Use them. Add INLINE.
20438 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
20439 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
20440 GetGlobalMouse.
20441 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
20442 and FRAME_OUTER_TO_INNER_DIFF_Y.
20443 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
20444 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
20445 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
20446 repositioning window to mac_handle_window_event.
20447 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
20448 saving window location to mac_handle_window_event
20449 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
20450 (install_menu_target_item_handler): Remove argument in extern.
20451 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
20452 Also accept command events.
20453 (do_keystroke): New function created from XTread_socket.
20454 (init_command_handler): Remove functions.
20455 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
20456 and save window location by kEventWindowShowing and kEventWindowHiding
20457 handlers here. Don't call next handler for window state change and
20458 focus events.
20459 (mac_handle_application_event, mac_handle_keyboard_event)
20460 [TARGET_API_MAC_CARBON]: New functions.
20461 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
20462 kEventWindowShowing and kEventWindowHiding events. Move installation
20463 of mouse, font, text input and menu target item handlers to
20464 install_application_handler.
20465 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20466 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20467 New function.
20468 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20469 Register it.
20470 (XTread_socket) [TARGET_API_MAC_CARBON]:
20471 Consolidate SendEventToEventTarget calls.
20472 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20473 Move application activation handler to mac_handle_application_event.
20474 Move keyboard handler to mac_handle_keyboard_event.
20475 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
20476 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
20477 init_command_handler. Call install_application_handler.
20478
20479 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
20480 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
20481
204822007-06-07 Glenn Morris <rgm@gnu.org>
20483
20484 * emacs.c (main): Use `emacs-copyright' in --version output.
20485
204862007-06-06 Chong Yidong <cyd@stupidchicken.com>
20487
20488 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
20489
204902007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20491
20492 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20493
20494 * macgui.h: Replace WindowPtr with WindowRef.
20495
20496 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20497 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20498 Replace ControlHandle with ControlRef.
20499 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
20500
20501 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20502 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20503 Replace ControlHandle with ControlRef.
20504 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
20505 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
20506
20507 * macterm.h (struct scroll_bar): Rename member control_handle_low
20508 and control_handle_high to control_ref_low and control_ref_high.
20509 All uses changed.
20510 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
20511 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
20512 respectively. All uses changed.
20513 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
20514 (install_window_handler, remove_window_handler): Replace WindowPtr
20515 with WindowRef in externs.
20516
205172007-06-05 Juanma Barranquero <lekktu@gmail.com>
20518
20519 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
20520
205212007-06-03 Nick Roberts <nickrob@snap.net.nz>
20522
20523 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
20524
20525 * frame.c (Fmouse_position, Fmouse_pixel_position):
20526 Condition on HAVE_GPM too.
20527
20528 * term.c (term_mouse_highlight): Remove unused variables.
20529 (Fterm_open_connection): Set gpm_zerobased to 1.
20530 (term_mouse_movement, term_mouse_click, handle_one_term_event):
20531 Use zero based co-ordinates.
20532 (handle_one_term_event): Report a drag as mouse movement too.
20533
20534 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
20535
205362007-06-03 Chong Yidong <cyd@stupidchicken.com>
20537
20538 * image.c (search_image_cache): New function. Require background
20539 color match if background color is unspecified in the image spec.
20540 (uncache_image, lookup_image): Use it.
20541
205422007-06-01 Juanma Barranquero <lekktu@gmail.com>
20543
20544 * window.c (Fshrink_window): Reflow docstring.
20545
205462007-06-02 Chong Yidong <cyd@stupidchicken.com>
20547
20548 * Version 22.1 released.
20549
205502007-06-01 Richard Stallman <rms@gnu.org>
20551
20552 * xfns.c (x_encode_text): Add GCPRO.
20553
205542007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20555
20556 * xfns.c (x_set_name_internal): Save encoded name before
20557 x_encode_text in case string data is relocated.
20558
205592007-05-31 Richard Stallman <rms@gnu.org>
20560
20561 * buffer.c (syms_of_buffer): Doc fix.
20562
205632007-05-30 Nick Roberts <nickrob@snap.net.nz>
20564
20565 * sysdep.c (init_sys_modes): Add rather than replace with
20566 O_NONBLOCK.
20567
20568 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
20569 term_mouse_moveto.
20570
20571 * termhooks.h (term_mouse_moveto): New extern.
20572
20573 * term.c (mouse_face_window): Rename...
20574 (Qmouse_face_window): ...to this.
20575 (term_show_mouse_face, term_clear_mouse_face)
20576 (term_mouse_highlight): Use Qmouse_face_window.
20577 (term_mouse_moveto): New function.
20578 (term_mouse_position): Make it work.
20579 (syms_of_term): Uncomment assignment to mouse_position_hook.
20580 Staticpro Qmouse_face_window.
20581
205822007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20583
20584 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
20585 around current_column call.
20586
205872007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
20588
20589 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
20590 * xdisp.c (next_element_from_buffer):
20591 * window.c (delete_window):
20592 * term.c (term_mouse_highlight):
20593 * msdos.c (getdefdir):
20594 * macterm.c (mac_create_bitmap_from_bitmap_data)
20595 (init_font_name_table):
20596 * fns.c (Fsxhash):
20597 * data.c (Fmake_local_variable):
20598 * ccl.c (ccl_driver): Likewise.
20599
206002007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20601
20602 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
20603 Call mac_wakeup_from_rne on window size change.
20604
206052007-05-25 Chong Yidong <cyd@stupidchicken.com>
20606
20607 * image.c (uncache_image): Fix typo.
20608
206092007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
20610
20611 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
20612
206132007-05-22 Richard Stallman <rms@gnu.org>
20614
20615 * xterm.c (x_connection_closed): Remove NO_RETURN.
20616
206172007-05-22 Martin Rudalics <rudalics@gmx.at>
20618
20619 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
20620
206212007-05-21 Chong Yidong <cyd@stupidchicken.com>
20622
20623 * image.c (uncache_image): New function.
20624 (Fimage_refresh): New function.
20625
206262007-05-20 Jan Djärv <jan.h.d@swipnet.se>
20627
20628 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
20629
206302007-05-20 Nick Roberts <nickrob@snap.net.nz>
20631
20632 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
20633 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
20634
206352007-05-20 Nick Roberts <nickrob@snap.net.nz>
20636
20637 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
20638 conditional on [HAVE_GPM_H].
20639
206402007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
20641
20642 * syntax.c (skip_chars): Update syntax-table only after we checked that
20643 the new location is valid.
20644
206452007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20646
20647 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
20648 mac_get_window_bounds.
20649
206502007-05-20 Nick Roberts <nickrob@snap.net.nz>
20651
20652 * Makefile.in (LIBGPM): Allow it to be set from configure.
20653 If set then link Emacs with it.
20654
20655 * config.in: Regenerate.
20656
20657 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
20658 New externs.
20659
20660 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
20661 Include gpm.h.
20662 (handle_one_term_event, term_gpm): New externs.
20663
20664 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
20665 and allow it to be interrupted by SIGIO.
20666
20667 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
20668 (wait_reading_process_output): Wait on gpm_fd too.
20669 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
20670 (add_gpm_wait_descriptor_called_flag): New variable.
20671 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
20672
20673 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
20674 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
20675 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
20676 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
20677 (make_lispy_event): Add case GPM_CLICK_EVENT.
20678 (read_avail_input): Handle mouse input.
20679
20680 * term.c (write_glyphs_with_face): New function.
20681 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
20682 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
20683 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
20684 (mouse_face_face_id, term_gpm, pos_x, pos_y)
20685 (last_mouse_x, last_mouse_y): New variables.
20686 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
20687 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
20688 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
20689 (Fterm_close_connection): New functions.
20690 (term_init): Initialise mouse_face_window.
20691
206922007-05-19 Chong Yidong <cyd@stupidchicken.com>
20693
20694 * xdisp.c (redisplay_window): If first window line is a
20695 continuation line, recompute the new window start instead of
20696 recentering.
20697
206982007-05-18 Glenn Morris <rgm@gnu.org>
20699
20700 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
20701 Suggested by Alfred M. Szmidt <ams@gnu.org>.
20702
207032007-05-17 Glenn Morris <rgm@gnu.org>
20704
20705 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
20706
207072007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20708
20709 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
20710 dead key repeat and up events.
20711
207122007-05-14 Chong Yidong <cyd@stupidchicken.com>
20713
20714 * image.c (pbm_load): Check image size for monochrome pbm.
20715
207162007-05-13 Chong Yidong <cyd@stupidchicken.com>
20717
20718 * xterm.c (XTread_socket): Revert last change.
20719
207202007-05-12 Chong Yidong <cyd@stupidchicken.com>
20721
20722 * image.c (pbm_load): Correctly check image size for greyscale pbm.
20723
20724 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
20725
207262007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20727
20728 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
20729 mixup (YAILOM).
20730
207312007-05-07 Andreas Schwab <schwab@suse.de>
20732
20733 * keymap.c (Flookup_key): Fix typo in last change.
20734
207352007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20736
20737 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
20738 mapping for unibyte strings.
20739
207402007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20741
20742 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
20743 (Fx_popup_dialog) [MAC_OSX]: Likewise.
20744
207452007-04-29 Richard Stallman <rms@gnu.org>
20746
20747 * insdel.c (replace_range): For undo, record insertion first.
20748
207492007-04-29 Andreas Schwab <schwab@suse.de>
20750
20751 * lisp.h (VECSIZE): Use OFFSETOF.
20752
207532007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20754
20755 * xdisp.c (try_window_reusing_current_matrix): Fix number of
20756 disabled lines.
20757
207582007-04-28 Richard Stallman <rms@gnu.org>
20759
20760 * lread.c (read_escape): In a string, \s is always space.
20761
207622007-04-27 Jan Djärv <jan.h.d@swipnet.se>
20763
20764 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
20765
20766 * gtkutil.c (xg_update_menubar, create_menus): Create empty
20767 submenu for menu bar items.
20768
20769See ChangeLog.10 for earlier changes.
20770
20771;; Local Variables:
20772;; coding: utf-8
20773;; add-log-time-zone-rule: t
aac0c6e3
MR
20774;; End:
20775
76b6f707 20776 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
20777
20778 This file is part of GNU Emacs.
20779
20780 GNU Emacs is free software: you can redistribute it and/or modify
20781 it under the terms of the GNU General Public License as published by
20782 the Free Software Foundation, either version 3 of the License, or
20783 (at your option) any later version.
20784
20785 GNU Emacs is distributed in the hope that it will be useful,
20786 but WITHOUT ANY WARRANTY; without even the implied warranty of
20787 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20788 GNU General Public License for more details.
20789
20790 You should have received a copy of the GNU General Public License
20791 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20792
20793;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40